MATLAB är en programmeringsmiljö lämpad för att lösa ett brett spektrum av tekniska och matematiska problem . Ett vanligt problem inom tekniska områden innebär linjär programmering , eller optimering av systemparametrar för att minimera resulterande fel - eller någon annan måttenhet . MATLAB ger ett antal metoder för att enkelt lösa linjära programmeringsproblem med minimal tid att skriva kod . Instruktioner
1
Formatera linjär programmering problem i det format som förväntas av MATLAB " linprog ( ) " -funktion som minimerar värdet av " f ' * x , " där " f " " är införlivat i " f ", uppfyller de villkor :
A ∙ x < = bA_eq ∙ x = b_eqLower_bound < = x < = UPPER_BOUND
variablerna " , f "," x "," b "," b_eq , " " LOWER_BOUND "och" UPPER_BOUND "är alla vektorer . Variablerna " A " och " A_eq " är matriser , eller flerdimensionella vektorer . Det argument " A_eq , " " B_eq , " " LOWER_BOUND " och " UPPER_BOUND " är valfria .
2
Ange alternativ för " linprog ( ) " Problemlösaren använder " optimset ( ) " -funktion . Parameter värde ställs in med hjälp av följande syntax , det andra exemplet läggs en parameter till en befintlig uppsättning alternativ :
my_options = optimset ( ' param1 ' , värde1 , ... ) ; my_new_options = optimset ( my_options , ' param2 ' , värde2 ) ;
p Det finns många alternativ . Vanliga alternativ för att ställa inkluderar " MaxIter " för att ställa in det maximala antalet iterationer av optimeringsförfarandet och " Display " till utgången framsteg efter varje iteration .
3
Utför " linprog ( ) " -funktion med följande syntax :
... = Linprog ( f , A , B , A_eq , b_eq , LOWER_BOUND , UPPER_BOUND , x0 , optioner ) , är
" x0 " variabel startvärde att utvärdera för " x ", men är bara . tillgängliga med medelstora algoritm set med " optimset ( ) " -funktion
4
Direkt utgång " linprog ( ) " till lämpliga utdatavariabler :
[ x , fval , exitflag , utgång, lambda ] = linprog (...);
variabeln "x" är värdet av "x" som optimerar linjär programmering problemet.Den " fval " variabeln är värdet av " f ' * x " i det slutliga värdet av " x " The " exitflag " variabel anger hur optimeringsförfarandet klar : " . 1 " indikerar optimering konvergerade till en lösning för " x ", medan andra värden indikerar ett fel i förfarandet . "Output " variabel är en struktur som innehåller information om optimering förfarandet , och " lambda " variabel är en struktur som innehåller Lagrange multiplikatorer " x ".