MATLAB求多目标线性规划

2024-12-03 17:33:34
推荐回答(2个)
回答1:

多目标线性规划的求解方法及MATLAB实现,参照此例子,自己修改一下就可以!

4.1理想点法
在(3)中,先求解 个单目标问题: ,设其最优值为 ,称 为值域中的一个理想点,因为一般很难达到。于是,在期望的某种度量之下,寻求距离 最近的 作为近似值。一种最直接的方法是最短距离理想点法,构造评价函数

然后极小化 ,即求解

并将它的最优解 作为(3)在这种意义下的“最优解”。

例1:利用理想点法求解

解:先分别对单目标求解:
①求解 最优解的MATLAB程序为
>> f=[3;-2]; A=[2,3;2,1]; b=[18;10]; lb=[0;0];
>> [x,fval]=linprog(f,A,b,[],[],lb)
结果输出为:x = 0.0000 6.0000
fval = -12.0000
即最优解为12.
②求解 最优解的MATLAB程序为
>> f=[-4;-3]; A=[2,3;2,1]; b=[18;10]; lb=[0;0];
>> [x,fval]=linprog(f,A,b,[],[],lb)
结果输出为:x =3.0000 4.0000
fval =-24.0000
即最优解为24.
于是得到理想点:(12,24).
然后求如下模型的最优解

MATLAB程序如下:
>> A=[2,3;2,1]; b=[18;10]; x0=[1;1]; lb=[0;0];
>> x=fmincon('((-3*x(1)+2*x(2)-12)^2+(4*x(1)+3*x(2)-24)^2)^(1/2)',x0,A,b,[],[],lb,[])
结果输出为:x = 0.5268 5.6488
则对应的目标值分别为 , .

回答2:

MATLAB多目标线性规划求法如下:

  1. 理想点法

    先分别对单目标求解,得到理想点,后求模型的最优解;

  2. 线性加权和法 

    具有多个指标的问题中,人们总希望对那些相对重要的指标给予较大的权系数,因而将多目标向量问题转化为所有目标的加权求和的标量问题;

  3. 最大最小法

    决策的时候,采取保守策略是稳妥的,即在最坏的情况下,寻求最好的结果,按照此想法,可以构造最大最小评价函数。

多目标规划是数学规划的一个分支。研究多于一个的目标函数在给定区域上的最优化。又称多目标最优化。