规划问题的matlab求解

  • 规划问题的求解原理
    假如规划问题有有限个最优解,则一定有某个最优解是可行区域的一个极点。基于此,单纯的解法思路是:先找出一个可行域的一个极点,据一定规则判断其是否可优,否则转换到与之相邻的另一个极点,并使目标函数值最优;如此下去,直到找到某一最优解为止。
  • 线性规划的matlab的标准型式
    线性规划的目标函数可以是求最大值,也可以是求最小值,约束条件的不等号可以 是小于号也可以是大于号。为了避免这种形式多样性带来的不便,Matlab 中规定线性 规划的标准形式为
    规划问题的matlab求解_第1张图片

    由此可看出想利用matalb求线性规划的解的前提,是必须先转化为matlab所需的标准型式:
    规划问题的matlab求解_第2张图片

  • matlab的命令语句

[x,fval]=linprog(c,A,b,Aeq,beq,LB,UB,X0,OPTIONS) 

这里 fval 返回目标函数的值,LB 和 UB 分别是变量 x的下界和上界, 0 x 是x的初始值, OPTIONS 是控制参数。
运用示例:
规划问题的matlab求解_第3张图片

对此题的程序如下:

c=[2;3;-5]; 
a=[-2,5,-1;1,3,1]; 
b=[-10;12]; 
aeq=[1,1,1]; 
beq=7; 
x=linprog(-c,a,b,aeq,beq,zeros(3,1))    %这里省去了,x的上届和下界,还有x的初值
value=c'*x  %返回目标函数的值

你可能感兴趣的:(matlab程序源代码,建模算法)