WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Opt. Toolbox - linprog/intlinprig -->Intervall MIT Null

 

Lara K
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 10.10.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.10.2014, 13:11     Titel: Opt. Toolbox - linprog/intlinprig -->Intervall MIT Null
  Antworten mit Zitat      
Hallo!

Ich benutze die Funktion intlinprog der Optimierungstoolbox (wobei ich intcon=[] gesetzt habe).
Ich habe mittels lb und ub für x ein Intervall definiert: 0<x<90.

Jetzt würde ich aber sehr gerne erreichen, dass x nur Werte zwischen dem Intervall 10<x<90 EINSCHLIEßLICH der 0 annehmen kann.

Ich möchte nämlich ausschließen, dass x Werte zwischen 0 und 10 annehmen kann, da diese physikalisch keinen Sinn machen. Gibt es irgendeine Möglichkeit, wie ich das realisieren kann? Ich hab in der Hilfe nichts zu dieser Mögluichkeit gefunden.

Vielen Dank!
Lara
Private Nachricht senden Benutzer-Profile anzeigen


Lara K
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 10.10.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.10.2014, 22:44     Titel:
  Antworten mit Zitat      
Weiss hier jemand weiter?

Wär euch wirklich sehr dankbar darum!

Grüße
Lara
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 14.10.2014, 07:19     Titel:
  Antworten mit Zitat      
Hallo,

wieviele Dimensionen hat dein Problem denn?
Bei kleiner Anzahl Dimensionen ist es wohl am besten, alle Kombinationen von (0, nicht 0) durchzutesten und dafür jeweils die Optimierung durchzuführen.

Wenn du intlinprog mit intcon=[] nimmst, dann kannst du doch gleich linprog nehmen?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Lara K
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 10.10.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.10.2014, 10:31     Titel:
  Antworten mit Zitat      
Danke für deine Antwort.

Mein gesuchter Vektor "x" hat die Dimension 3000x1.
Die Matrix "A" hat die Dimension 10x3000.

Wie meinst du das mit Durchtesten? Meinst du erst die Optimierung durchführen und anschließend den Vektor "x" durchtesten, ob er "0" oder "nicht 0" Einträge hat? Was soll dann geschehen, wenn ein Eintrag z.B. den Wert "3" hat (welcher eigentlich nicht erlaubt) ist?

Stimmt, mit linprog hast du recht, ich werde jetzt linprog statt intlinprog benutzen.

Danke Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.495
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 14.10.2014, 19:26     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Wie meinst du das mit Durchtesten?

Ich meinte z.B. im Falle von 2 Dimensionen
0 0
0 10-90
10-90 0
10-90 10-90
Bei 3000 Dimensionen ist das allerdings ein Ding der Unmöglichkeit.

Die einzige Möglichkeit, die ich sehe:
genetischen Algorithmus (ga) mit den Einstellungen
Code:
intcon=1:3000;
lb = zeros(3000,1);
ub = ones(3000,1);

Als Zielfunktion dann ein linprog mit den Variablen, die 1 sind, und diese Variablen auf lb = 10 und ub = 90 beschränken.

Meine Vermutung / Befürchtung ist, dass das recht zeitintensiv wird.
Ansonsten kann ich nur raten zu googeln, ob es speziell auf diese Problemart ausgerichtete Algorithmen gibt.

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Lara K
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 10.10.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.10.2014, 20:33     Titel:
  Antworten mit Zitat      
Danke für deine Hilfe, Harald!
Ich werde es mal mit dem genetischen Algorithmus versuchen. Werde ihn mir mal näher ansehen, hab bisher noch nicht mit ihm gearbeitet.

lg
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.