MATLAB est un environnement de programmation adapté pour résoudre une grande variété de problèmes techniques et mathématiques . Un problème commun dans les domaines techniques implique la programmation linéaire , ou l'optimisation des paramètres du système pour minimiser l'erreur résultante - ou toute autre métrique. MATLAB offre un certain nombre de méthodes pour résoudre facilement les problèmes de programmation linéaire avec un minimum de temps passé à écrire du code . Instructions
1
Format votre problème de programmation linéaire dans le format attendu par la fonction qui minimise la valeur de MATLAB ») linprog (" " f ' * x », où « f » »est la transposition de " f ", satisfaisant aux conditions :
A ∙ x < = bA_eq ∙ x = b_eqLower_bound < = x < = upper_bound
les variables " f »,« x »,« b »,« b_eq »,« lower_bound "et" upper_bound " sont tous des vecteurs. Les variables "A" et " A_eq " sont des matrices ou des vecteurs multidimensionnels. La arguments " A_eq », « B_eq », « lower_bound " et " upper_bound " sont facultatifs.
2
Définir les options de la " linprog ()" en utilisant le solveur fonction " optimset ()" . La valeur du paramètre est définie à l'aide de la syntaxe suivante , le second exemple ajoute un paramètre à un ensemble existant d'options :
my_options = optimset (' param1 ' , valeur1, ... ); my_new_options = optimset ( my_options , ' param2 " , valeur2 ) ;
Il ya beaucoup d'options disponibles . Les options communes à mettre en comprennent " maxiter " pour définir le nombre maximum d'itérations de la procédure d'optimisation et "Display" au progrès de sortie après chaque itération.
3
Lancez le " linprog () "fonction utilisant la syntaxe suivante:
... = Linprog (f, A, B, A_eq , b_eq , lower_bound , upper_bound , x0, options);
La variable " x0 " est la valeur de départ pour évaluer pour "x ", mais est seulement . disponible en utilisant l'ensemble de l'algorithme de moyenne échelle en utilisant le " optimset ()" fonction
4
direct la sortie de " linprog ()" pour les variables de sortie appropriées :
< p > [x, fval , exitflag , sortie , lambda ] = linprog (...);
la variable "x" est la valeur de "x" qui optimise le problem.The de programmation linéaire » fval " variable est la valeur de" f ' * x " à la valeur finale de " x " le " exitflag "variable indique la procédure d'optimisation fini : ." 1 "indique l'optimisation converge vers une solution de "x ", tandis que d'autres valeurs indiquent une erreur dans la procédure . La variable "sortie" est une structure contenant des informations sur la procédure d'optimisation , et la variable " lambda " est une structure contenant les multiplicateurs de Lagrange de «x».