1.问题
2.目标规范化
3.处理多目标规划的方法
(1)约束法
(2)评价函数法
(3)功效系数法
4.多目标规划的MATLAB求解
(1)理想点法
(2)线性加权和法
(3)最大最小法
在实际问题中,衡量一个设计方案的好坏往往不止一个标准,常常要考虑多个目标。例如研究生产过程时,人们既要提高生产效率,同时还要考虑产品质量,又要考虑成本以降低生产费用,可能还希望生产过程中的环保问题,即废渣、废水、废气造成的污染小。在设计导弹的过程中,既要射程远,又要燃料省,还要重量轻且打击精度高。在进行投资决策时,既希望回报高的同时又希望降低投资风险,如此等等。这就向我们提出了一个多指标最优化问题。我们把在这样的背景下建立起来的最优化称之为多目标规划问题。
1.问题
上述问题可以归结为标准形式:
多目标规划问题域线性规划和非线性规划问题的主要区别就在于,它所追求的目标不止一个,而是多个。
2.目标规范化
由于许多实际问题中,各个目标的量纲一般都是不同的,所以有必要将每个目标事先进行规范化。
3.处理多目标规划的方法
(1)约束法
约束法又称主要目标法,它根据问题的实际情况.确定一个目标为主要目标,而把其余目标作为次要目标,并根据决策者的经验给次要的目标选取—定的界限值,这样就可以把次要目标作为约束来处理,从而就将原有多目标规划问题转化为一个在新的约束下,求主要目标的单目标最优化问题。
(2)评价函数法
多目标问题的各个目标函数构造出来的,称为评价函数。
求解上述问题之后,可以用上述问题的最优解x作为多目标规划问题的最优解,正是由于可以用不同的方法来构造评价函数,因此有各种不同的评价函数方法,下面介绍几种常用的方法。
评价函数法中主要有:理想点法、平方和加权法、线性加权和法、乘除法、最大最小法。
(3)功效系数法
4.多目标规划的MATLAB求解
由于多目标规划中的求解涉及到的方法非常多,故在MATLAB中可以利用不同的函数进行求解,例如在评价函数法中我们所得最后的评价函数为一线性函数,且约束条件也为线性函数,则我们可以利用MATLAB优化工具箱中提供的linprog函数进行求解,如果我们得到的评价函数为非线性函数,则可以利用MATLAB优化工具箱中提供的fmincon函数进行求解,如果我们采用最大最小法进行求解,则可以利用MATLAB优化工具箱中提供的fminimax函数进行求解。下面我们就结合前面各小节中所分析的几种方法,讲解一下典型多目标规划问题的MATLAB求解方法。
(1)理想点法
例1 利用理想点法求解
求解该线性规划的MATLAB的代码和相应的运行结果为:
第一个单目标规划问题
c=[2;-3];
A=[3 2;1 1