|
|
binary integer programming (BIP) - eine Frage |
|
petris |

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 19.10.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 19.10.2008, 13:12
Titel: binary integer programming (BIP) - eine Frage
|
 |
Hallo Zusammen, ich hätte folgende Frage:
Ich hab ein BI-Programm (sehe jpg beigefügt), das ich in matlab lösen möchte..mein Problem ist, dass es Tausende von Variablen und Ungleichungen gibt und ich kann nicht es nicht machen, indem ich wie in den Tutorials-Βeispielen die Funktion bintprog benutze..
hat jemand eine Ahnung, wie das zu machen ist, ohne explizit die Tausende Variablen und Constraints zu definieren ?
ich wäre dankbar.
Beschreibung: |
|
 Download |
Dateiname: |
bip.JPG |
Dateigröße: |
44.99 KB |
Heruntergeladen: |
680 mal |
|
|
|
|
|
Schrank |

Forum-Century
|
 |
Beiträge: 203
|
 |
|
 |
Anmeldedatum: 10.07.08
|
 |
|
 |
Wohnort: Berlin
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 21.10.2008, 16:25
Titel:
|
 |
Hallo petris,
ich habe dein Problem leider nicht verstanden. Könntest du es vielleicht nochmal anders erklären. Insbesondere wäre es hilfreich, wenn du den Mathe-Teil der Aufgabe erledigst und es schaffst eine klar definierte Programmierfrage zu stellen.
Gruß Schrank
|
|
|
petris |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 19.10.08
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 21.10.2008, 17:28
Titel:
|
 |
Hallo Schrank,
vielen Dank für deine Antwort.
wenn man zB f(x) = 9x1 5x2 minimieren will
subject to the constraints
6x1 + 3x2 <=9
x1-x2<=3
dann macht man folgendes im Matlab:
f = [-9; -5;];
A = [6 3; 1 -1];
b = [9; 3; ];
x = bintprog(f,A,b) ..
mein Problem ist, dass ich 100000000constraints und variablen habe und die Matrixen A,b nicht expilizit wie im obigen Beispil definieren will.
ich wollte zB so etwas eingeben koennen (wie in attached file) :
Summe_über_j (Summe_über_i ( Summe_uber_k ( x(ijk) ) ) ) <= 5 fur alle k,
und nicht alle milliionen constraints:
x111+x121 + x131+ x141 + ........................ <=5
x112+x122 + x132+ x142 + ........................ <=5
.......
.....
Grusse
|
|
|
Bijick |

Ehrenmitglied
|
 |
Beiträge: 914
|
 |
|
 |
Anmeldedatum: 18.06.07
|
 |
|
 |
Wohnort: Nürnberg
|
 |
|
 |
Version: R2006b, R2008b
|
 |
|
|
 |
|
Verfasst am: 21.10.2008, 17:56
Titel:
|
 |
Hallo petris,
ich habe schon einiges mit Matlab optimiert und ich denke, um die explizite Formulierung kommt man nicht herum.
Allerdings ist es wohl nicht so aufwändig, wie Du denkst. Denn, da alle Deine Variablen einen Vektor bilden (kein dreidimensionales array), musst Du ja nicht
x111+x121 + x131+ x141 + ........................ <=5
eingeben, sondern
Dabei ist AnzVa die Anzahl der Elemente von V_a, genauso AnzK. Es sieht vielleicht jetzt noch komplizierter aus als Deine Zeile, aber es lässt sich für die anderen Nebenbedingungen leicht anpassen oder sogar in wenigen Schritten zusammenfassen.
Vielleicht solltest Du Dir aber insgesamt überlegen, ob für eine so riesige Anzahl von Variablen und Nebenbedingungen nicht eher CPLEX oder so statt Matlab das geeignete Instrument ist.
Herzliche Grüße
Bijick
_________________
>> why
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|