什么是多目标规划? 在此之前,要了解一下单目标的线性规划
看个例子:
其中,maxz就是单个目标,下面的就是约束条件
如果有其他目标,就是多目标规划问题 比如:
p1,p2,p3代表优先级,没有实际意义,可自行分配权重 d1,d2,d3,d4的意义如下:
求解方法(3种) 1、效用最优化模型(线性加权法)
简单来说,就是两个目标给予不同权重,然后相加合成新的目标
2、罚款模型
简单的说,就是把多个目标拆分成单个目标,最后把各自的结果平方和开方变成新的单目标函数
3、约束模型(极大极小法)
简单来说,就是把其中一个目标的最大最小值求出来把目标变成约束条件 三个方法本质上都是把多目标化为单目标问题求解
matlab求解函数 X=fgoalattain(FUN,X0,GOAL,WEIGHT) X = FGOALATTAIN(FUN,X0,GOAL,WEIGHT)
实例: