Matlab中linprog函数的用法总结

Matlab中 linprog函数的用法总结

1.简介

在matlab中,linprog函数可以求解线性规划问题,用于寻找目标函数的最小值

matlab中,规划模型的标注写法如下

\[min\ f\,^Tx\;\; such \ that \begin{equation} \left\{ \begin{array}{**lr**} A \cdot x \leq b \\ Aeq\cdot x =beq\\ lb \leq x \leq ub \end{array} \right. \end{equation} \]

\[f,x,b,beq,lb,ub是向量;A和Aeq是矩阵 \]

2.语法

2.1 x=linprog(f,A,b)

用于求解

\[min\ f\ ^Tx\; such\ that\ A\cdot x \]

2.2 x=linprog(f,A,b,Aeq,beq)

用于求解

\[min\ f\,^Tx\;\; such \ that \begin{equation} \left\{ \begin{array}{**lr**} A \cdot x \leq b \\ Aeq\cdot x =beq\\ \end{array} \right. \end{equation} \]

如果没有等式存在,就用[]代替Aeq和beq

2.3 x=linprog(f,A,b,Aeq,beq,lb,ub)

用于求解

\[min\ f\,^Tx\;\; such \ that \begin{equation} \left\{ \begin{array}{**lr**} A \cdot x \leq b \\ Aeq\cdot x =beq\\ lb \leq x \leq ub \end{array} \right. \end{equation} \]

可以约束决策变量的范围在[lb,ub]内

2.4 [x,fval]=linprog(f,A,b,Aeq,beq,lb,ub)

用法和2.3一致,不同的是,这种写法会返回目标函数的值fval

posted @ 2019-07-06 11:04  Goodtwo  阅读(32377)  评论(0编辑  收藏  举报