MATLAB ist eine Programmierumgebung für die Lösung einer Vielzahl von technischen und mathematischen Problemen geeignet. Ein häufiges Problem in technischen Bereichen umfasst lineare Programmierung , oder die Optimierung der Systemparameter resultierenden Fehler zu minimieren - oder jede andere Metrik. MATLAB bietet eine Reihe von Methoden zur Lösung linearer Programmierung leicht Probleme mit minimalem Zeitaufwand Code zu schreiben. Anleitung
1
Format eurer linearen Programmierung Problem in dem von der MATLAB " linprog () "-Funktion , die den Wert minimiert erwartet " f ' * x ", wobei " f' " ist die Umsetzung von " f ", die die Bedingungen :
A ∙ x <= bA_eq ∙ x = b_eqLower_bound <= x <= upper_bound
die Variablen " f "," x "," b "," b_eq "," Lower_bound "und" upper_bound " sind alle Vektoren . Die Variablen "A" und " A_eq " sind Matrizen oder mehrdimensionalen Vektoren . Die Argumente " A_eq ", " B_eq ", " Lower_bound " und " upper_bound " sind optional.
2
Set Optionen für die " linprog ()" mit dem Solver " optimset () "-Funktion . Parameter Wert werden über die folgende Syntax , das zweite Beispiel wird ein Parameter einer bestehenden Reihe von Optionen :
my_options = optimset ( ' param1 ' , Wert1 , ...); my_new_options = optimset ( my_options " param2 ' , Wert2 );
Es gibt viele Optionen zur Verfügung. Gemeinsame Optionen zu setzen sind " MaxIter ", um die maximale Anzahl von Iterationen des Optimierungsverfahrens und "Display" ausgegeben Fortschritt eingestellt nach jeder Iteration .
3
Führen Sie den " linprog () "-Funktion mit folgender Syntax :
... = Linprog (f, A, b, A_eq , b_eq , Lower_bound , upper_bound , x0, options); ist
" x0 " variable der Startwert für auszuwerten "x ", ist aber nur . verfügbar mit dem Medium - Skalierungs-Algorithmus Satz mit dem " optimset () "-Funktion
4
Direkter die Ausgabe von " linprog ()" , um geeignete Ausgangsgrößen :
< p > [x , fval , exitflag , Ausgang, Lambda ] = linprog (...);
die Variable " x " ist der Wert von "x " , das die lineare Programmierung Problem.Die optimiert " fval " Variable ist der Wert von" f ' * x " auf dem Endwert des " x " der " exitflag " Variable gibt an, wie die Optimierung Prozedur beendet: " . 1 "zeigt die Optimierung konvergiert, um eine Lösung für "x ", während andere Werte einen Fehler in der Prozedur anzuzeigen. Der "Output" Variable ist eine Struktur, die Informationen über die Optimierung Verfahren , und die " Lambda "-Variable ist eine Struktur, die die Lagrange-Multiplikatoren von "x".