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

cplex: extrem kleine Zahlen im Lösungsv. obw. 0 sein sollte

 

jupiter
Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 30.03.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.04.2013, 10:05     Titel: cplex: extrem kleine Zahlen im Lösungsv. obw. 0 sein sollte
  Antworten mit Zitat      
Hallo Zusammen,

ich nutze cplex mit MatLab und habe gerade ein Problem mit cplex, das ich nicht lösen kann. Ursprünglich wollte ich mich im IBM cplex Forum an die dortige Community wenden, allerdings ist jenes Forum bis inkl. 15. April geschlossen und so lange habe ich leider keine Zeit.
Deswegen muss ich leider ausweichen und dieses Forum schien mir erstmal naheliegend zu sein (aber vielleicht könnt ihr mich an eine passenderes Forum verweisen, für so einen Tipp wäre ich dankbar, denn ich bin nicht fündig geworden).

Worum geht es:

Mein Modell ist leider zu komplex, als das ich hier ein Minimalbeispiel liefern könnte aber vielleicht ist das Problem auch so bekannt.

Im Lösungsvektor von cplex haben Variablen, die eigentich Null sein sollten, einen extrem kleinen Wert. Die Größenordnung dieser Werte liegt im Bereich E-14 bis E-15, dass ist Maschinengenaugikeit. Im Lösungsvektor sind diese Werte erstmal nicht tragisch, allerdings ist das Anlagenverhalten beim Solven ganz anders und dies ist fatal. Dieses falsche Anlagenverhalten tritt in Kombination mit diesen kleinen Werten auf, daher meine Vermutung, dass die beiden miteinander zu tun haben.
Das Kuriose dabei ist, dass die Variablen gem. algebraischer Formulierung eigentlich 0 und nichts anderes sein sollten, wenn die entsprechende Binärvariablen ebenfalls Null sind, allerdings bleiben stattdessen diese extrem kleinen Werte "übrig".

Sind diese extrem kleinen Werten in cplex allgemeinhin bekannt und vielleicht gibt es auch eine Abhilfe dafür?

Es scheint mir, als läge die Krux daran, dass Datentypen (in cplex?!) ineinander umgewandelt werden und dabei ein Ungenaugikeitsrest verbleibt.

Eine Lösungsidee von mir ist, die Rechengenauigkeit von cplex so einzustellen, dass Nachkommastellen ab einer bestimmten Anzahl abgeschnitten werden und damit eine Änderung der Datentypen vermieden werden kann. So eine Option habe ich leider nicht gefunden aber vielleicht weiß jemand von euch mehr?

Kann mir jemand weiterhelfen? Smile


Mit besten Grüßen,
jupiter
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 - 2025 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.