2.多目标规划问题.ppt.ppt

上传人:仙人指路1688 文档编号:2998188 上传时间:2023-03-07 格式:PPT 页数:56 大小:682KB
返回 下载 相关 举报
2.多目标规划问题.ppt.ppt_第1页
第1页 / 共56页
2.多目标规划问题.ppt.ppt_第2页
第2页 / 共56页
2.多目标规划问题.ppt.ppt_第3页
第3页 / 共56页
2.多目标规划问题.ppt.ppt_第4页
第4页 / 共56页
2.多目标规划问题.ppt.ppt_第5页
第5页 / 共56页
点击查看更多>>
资源描述

《2.多目标规划问题.ppt.ppt》由会员分享,可在线阅读,更多相关《2.多目标规划问题.ppt.ppt(56页珍藏版)》请在三一办公上搜索。

1、第二讲 多目标规划方法,多目标规划解的讨论非劣解 多目标规划及其求解技术简介效用最优化模型 罚款模型约束模型 目标规划模型目标达到法目标规划方法目标规划模型目标规划的图解法 求解目标规划的单纯形方法多目标规划应用实例,多目标规划是数学规划的一个分支。研究多于一个的目标函数在给定区域上的最优化。又称多目标最优化。通常记为 MOP(multi-objective programming)。在很多实际问题中,例如经济、管理、军事、科学和工程设计等领域,衡量一个方案的好坏往往难以用一个指标来判断,而需要用多个目标来比较,而这些目标有时不甚协调,甚至是矛盾的。因此有许多学者致力于这方面的研究。1896年

2、法国经济学家V.帕雷托最早研究不可比较目标的优化问题,之后,J.冯诺伊曼、H.W.库恩、A.W.塔克、A.M.日夫里翁等数学家做了深入的探讨,但是尚未有一个完全令人满意的定义。,3,求解多目标规划的方法大体上有以下几种:一种是化多为少的方法,即把多目标化为比较容易求解的单目标或双目标,如主要目标法、线性加权法、理想点法等;另一种叫分层序列法,即把目标按其重要性给出一个序列,每次都在前一目标最优解集内求下一个目标最优解,直到求出共同的最优解。对多目标的线性规划除以上方法外还可以适当修正单纯形法来求解;还有一种称为层次分析法,是由美国运筹学家沙旦于70年代提出的,这是一种定性与定量相结合的多目标决

3、策与分析方法,对于目标结构复杂且缺乏必要的数据的情况更为实用。,多目标规划模型,(一)任何多目标规划问题,都由两个基本部分组成:(1)两个以上的目标函数;(2)若干个约束条件。,(二)对于多目标规划问题,可以将其数学模型一般地描写为如下形式:,一 多目标规划及其非劣解,式中:为决策变量向量。,缩写形式:,有n个决策变量,k个目标函数,m个约束方程,则:Z=F(X)是k维函数向量,(X)是m维函数向量;G是m维常数向量;,(1),(2),对于线性多目标规划问题,可以进一步用矩阵表示:,式中:X 为n 维决策变量向量;C 为kn 矩阵,即目标函数系数矩阵;B 为mn 矩阵,即约束方程系数矩阵;b

4、为m 维的向量,即约束向量。,多目标规划的非劣解,多目标规划问题的求解不能只追求一个目标的最优化(最大或最小),而不顾其它目标。对于上述多目标规划问题,求解就意味着需要做出如下的复合选择:每一个目标函数取什么值,原问题可以得到最满意的解决?每一个决策变量取什么值,原问题可以得到最满意的解决?,在图1中,max(f1,f2).就方案和来说,的 f2 目标值比大,但其目标值 f1 比小,因此无法确定这两个方案的优与劣。在各个方案之间,显然:比好,比好,比好,比好。,非劣解可以用图1说明。,图1 多目标规划的劣解与非劣解,9,而对于方案、之间则无法确定优劣,而且又没有比它们更好的其他方案,所以它们就

5、被称为多目标规划问题的非劣解或有效解,其余方案都称为劣解。所有非劣解构成的集合称为非劣解集。,当目标函数处于冲突状态时,就不会存在使所有目标函数同时达到最大或最小值的最优解,于是我们只能寻求非劣解(又称非支配解或帕累托解)。,效用最优化模型 罚款模型 约束模型 目标达到法 目标规划模型,二 多目标规划求解技术简介,为了求得多目标规划问题的非劣解,常常需要将多目标规划问题转化为单目标规划问题去处理。实现这种转化,有如下几种建模方法。,是与各目标函数相关的效用函数的和函数。,方法一 效用最优化模型(线性加权法),(1),(2),思想:规划问题的各个目标函数可以通过一定的方式进行求和运算。这种方法将

6、一系列的目标函数与效用函数建立相关关系,各目标之间通过效用函数协调,使多目标规划问题转化为传统的单目标规划问题:,在用效用函数作为规划目标时,需要确定一组权值 i 来反映原问题中各目标函数在总体目标中的权重,即:,式中,i 应满足:,向量形式:,方法二 罚款模型(理想点法),思想:规划决策者对每一个目标函数都能提出所期望的值(或称满意值);通过比较实际值 fi 与期望值 fi*之间的偏差来选择问题的解,其数学表达式如下:,或写成矩阵形式:,式中,是与第i个目标函数相关的权重;A是由(i=1,2,k)组成的mm对角矩阵。,理论依据:若规划问题的某一目标可以给出一个可供选择的范围,则该目标就可以作

7、为约束条件而被排除出目标组,进入约束条件组中。假如,除第一个目标外,其余目标都可以提出一个可供选择的范围,则该多目标规划问题就可以转化为单目标规划问题:,方法三 约束模型(极大极小法),方法四 目标达到法,首先将多目标规划模型化为如下标准形式:,在求解之前,先设计与目标函数相应的一组目标值理想化的期望目标 fi*(i=1,2,k),每一个目标对应的权重系数为 i*(i=1,2,k),再设 为一松弛因子。那么,多目标规划问题就转化为:,17,方法五 目标规划模型(多目标转化为线性规划),需要预先确定各个目标的期望值 fi*,同时给每一个目标赋予一个优先因子和权系数,假定有K个目标,L个优先级(L

8、K),目标规划模型的数学形式为:,18,式中:di+和 di分别表示与 fi 相应的、与fi*相比的目标超过值和不足值,即正、负偏差变量;pl表示第l个优先级;lk+、lk-表示在同一优先级 pl 中不同目标的正、负偏差变量的权系数。,目标规划模型,给定若干目标以及实现这些目标的优先顺序,在有限的资源条件下,使总的偏离目标值的偏差最小。,1.基本思想:,2.目标规划的有关概念,例1:某一个企业利用某种原材料和现有设备可生产甲、乙两种产品,其中,甲、乙两种产品的单利润分别为8万元和10万元;生产单位甲、乙两种产品需要消耗的原材料分别为2个单位和1个单位,需要占用的设备分别为1单位台时和2单位台时

9、;原材料拥有量为11个单位;可利用的设备总台时为10单位台时。试问:如何确定其生产方案使得企业获利最大?,由于决策者所追求的唯一目标是使总利润达到最大,这个企业的生产方案可以由如下线性规划模型给出:求x1,x2,使,将上述问题化为标准后,用单纯形方法求解可得最佳决策方案为:(万元)。,生产甲、乙两种产品,有关数据如表所示。试求获利最大的生产方案?,但是,在实际决策时,企业领导者必须考虑市场等一系列其它条件,如:,超过计划供应的原材料,需用高价采购,这就会使生产 成本增加。应尽可能地充分利用设备的有效台时,但不希望加班。应尽可能达到并超过计划产值指标56万元。,这样,该企业生产方案的确定,便成为

10、一个多目标决策问题,这一问题可以运用目标规划方法进行求解。,根据市场信息,甲种产品的需求量有下降的趋势,因 此甲种产品的产量不应大于乙种产品的产量。,22,假定有L个目标,K个优先级(KL),n个变量。在同一优先级pk中不同目标的正、负偏差变量的权系数分别为kl+、kl-,则多目标规划问题可以表示为:,目标规划模型的一般形式,目标函数,目标约束,绝对约束,非负约束,23,在以上各式中,kl+、kl-、分别为赋予pk优先因子的第 l 个目标的正、负偏差变量的权系数,gl为第 l个目标的预期值,xj为决策变量,dl+、dl-、分别为第 l 个目标的正、负偏差变量,,目标函数,目标约束,绝对约束,非

11、负约束,目标规划数学模型中的有关概念。,(1)偏差变量 在目标规划模型中,除了决策变量外,还需要引入正、负偏差变量 d+、d-。其中,正偏差变量表示决策值超过目标值的部分,负偏差变量表示决策值未达到目标值的部分。因为决策值不可能既超过目标值同时又未达到目标值,故有 d+d-=0成立。,(2)绝对约束和目标约束 绝对约束,必须严格满足的等式约束和不等式约束,譬如,线性规划问题的所有约束条件都是绝对约束,不能满足这些约束条件的解称为非可行解,所以它们是硬约束。,目标约束,目标规划所特有的,可以将约束方程右端项看作是追求的目标值,在达到此目标值时允许发生正的或负的偏差,可加入正负偏差变量,是软约束。

12、线性规划问题的目标函数,在给定目标值和加入正、负偏差变量后可以转化为目标约束,也可以根据问题的需要将绝对约束转化为目标约束。,(3)优先因子(优先等级)与权系数 一个规划问题,常常有若干个目标,决策者对各个目标的考虑,往往是有主次的。凡要求第一位达到的目标赋予优先因子 p1,次位的目标赋予优先因子 p2,并规定 pl pl+1(l=1,2,.)表示 pl 比 pl+1 有更大的优先权。即:首先保证p1 级目标的实现,这时可以不考虑次级目标;而p2级目标是在实现p1 级目标的基础上考虑的;依此类推。,若要区别具有相同优先因子 pl 的目标的差别,就可以分别赋予它们不同的权系数i*(i=1,2,k

13、)。这些优先因子和权系数都由决策者按照具体情况而定。,(3)优先因子(优先等级)与权系数 一个规划问题,常常有若干个目标,决策者对各个目标的考虑,往往是有主次的。凡要求第一位达到的目标赋予优先因子 p1,次位的目标赋予优先因子 p2,并规定 pl pl+1(l=1,2,.)表示 pl 比 pl+1 有更大的优先权。即:首先保证p1 级目标的实现,这时可以不考虑次级目标;而p2级目标是在实现p1 级目标的基础上考虑的;依此类推。,(4)目标函数 目标规划的目标函数(准则函数)是按照各目标约束的正、负偏差变量和赋予相应的优先因子而构造的。当每一目标确定后,尽可能缩小与目标值的偏离。因此,目标规划的

14、目标函数只能是:,a)要求恰好达到目标值,就是正、负偏差变量都要尽可能小,即,b)要求不超过目标值,即允许达不到目标值,就是正偏差变量要尽可能小,即,c)要求超过目标值,也就是超过量不限,但负偏差变量要尽可能小,即,基本形式有三种:,28,例2:在例1中,如果决策者在原材料供应受严格控制的基础上考虑:首先是甲种产品的产量不超过乙种产品的产量;其次是充分利用设备的有限台时,不加班;再次是产值不小于56万元。并分别赋予这三个目标优先因子p1,p2,p3。试建立该问题的目标规划模型。,分析:题目有三个目标层次,包含三个目标值。第一目标:p1d1+;即产品甲的产量不大于乙的产量。第二目标:p2(d2+

15、d2-);即充分利用设备的有限台时,不加班;第三目标:p3d3-;即产值不小于56万元;,例2:在例1中,如果决策者在原材料供应受严格控制的基础上考虑:首先是甲种产品的产量不超过乙种产品的产量;其次是充分利用设备的有限台时,不加班;再次是产值不小于56万元。并分别赋予这三个目标优先因子p1,p2,p3。试建立该问题的目标规划模型。,解:根据题意,这一决策问题的目标规划模型是,30,例3、某厂计划在下一个生产周期内生产甲、乙两种产品,已知资料如表所示。(1)试制定生产计划,使获得的利润最大?,解:设生产甲产品:x1,乙产品:x2,(1),31,若在例3中提出下列要求:1、完成或超额完成利润指标

16、50000元;2、产品甲不超过 200件,产品乙不低于 250件;3、现有钢材 3600吨必须用完。试建立目标规划模型。,分析:题目有三个目标层次,包含四个目标值。第一目标:p1d1-第二目标:有两个要求即甲 d2+,乙 d3-,但两个具有相同的优先因子,因此需要确定权系数。本题可用单件利润比作为权系数即 70:120,化简为7:12。,第三目标:,32,所以目标规划模型为:,33,用目标达到法求解多目标规划的计算过程,可以通过调用Matlab软件系统优化工具箱中的fgoalattain函数实现。该函数的使用方法,如下:,多目标规划的Matlab求解,x=fgoalattain(fun,x0,

17、goal,weight),x=fgoalattain(fun,x0,goal,weight,A,B,Aeq,Beq,LB,UB),x,fval,attainfactor,exitflag,output=fgoalattain(fun,X0,.),目标因子,用来衡量计算结果的好坏,若很小怎结果越好,34,在MATLAB中,多目标问题的标准形式为:,其中:x、b、beq、lb、ub是向量;A、Aeq为矩阵;C(x)、Ceq(x)和F(x)是返回向量的函数;F(x)、C(x)、Ceq(x)可以是非线性函数;weight为权值系数向量,用于控制对应的目标函数与用户定义的目标函数值的接近程度;goal为

18、用户设计的与目标函数相应的目标函数值向量;,为一个松弛因子标量;F(x)为多目标规划中的目标函数向量。,35,输入部分:,fun是目标函数,x0是初始值,goal是目标函数希望达到的值,,weight是目标权重:,当目标权重为正时,指令fgoalattain试图使对象小于目标值。为了使目标函数大于目标值,可使权重设置为负。一般设置为weight=goal或weight=abs(goal)。a,b给出线性不等式约束;aeq,beq给出线性等式约束;lb,ub为x的上界和下界。如无某类约束,可用代替。,36,exitflag为输出标记。当exitflag0,解收敛,所给出的x,fval有效;当ex

19、itflag0,x称满意解,fval称目标达到值。attainfactor是指目标达到情况:当attainfactor=0,目标达到值fval没有溢出goal;当attainfactor0,fval有溢出goal的情况。,输出部分:,37,C(x)、Ceq(x)是非线性函数时:,x=fgoalattain(fun,x0,goal,weight,A,b,Aeq,beq,.lb,ub,mycon(定义非线性函数),where mycon is a MATLAB function such asfunction c,ceq=mycon(x)c=.%compute nonlinear inequali

20、ties at x.ceq=.%compute nonlinear equalities at x.,38,例:某工厂因生产需要,欲采购一种原料,市场上这种原材料有两个等级,甲级单价2元/kg,乙级单价1元/kg,现要求总费用不超过200元,购得原料总量不少于100kg,其中甲级原料不少于50kg,问如何确定最好的采购方案。,分析:列出方程x150;2x1+x2200;x1+x2100;x1,x20,化为标准形min f1=2x1+x2min f2=x1 x2min f3=x1s.t:2x1+x2200 x1 x2 100 x1 50 x1,x20,39,matlab程序fun=2*x(1)+

21、x(2),-x(1)-x(2),-x(1);a=2 1;-1-1;-1 0;b=200-100-50;goal=200,-100,-50;weight=goal;x0=55,55;lb=0,0;x,fval,attainfactor,exitflag,output,lamda=fgoalattain(fun,x0,goal,weight,a,b,lb,),化为标准形min f1=2x1+x2min f2=x1 x2min f3=x1,s.t:2x1+x2200 x1 x2 100 x1 50 x1,x20,40,Optimization terminated:Search direction

22、less than 2*options.TolXand maximum constraint violation is less than options.TolCon.Active inequalities(to within options.TolCon=1e-006):lower upper ineqlin ineqnonlin 2 2 3x=50.0000 50.0000fval=150.0000-100.0000-50.0000attainfactor=-1.4476e-024exitflag=4,一、土地利用问题 二、生产计划问题 三、投资问题,四 多目标规划应用实例,一、土地利用

23、问题,例:某农场I、II、III等耕地的面积分别为100 hm2、300 hm2和200 hm2,计划种植水稻、大豆和玉米,要求三种作物的最低收获量分别为190000 kg、130000 kg和350000kg。I、II、III等耕地种植三种作物的单产如下表所示。若三种作物的售价分别为水稻1.20元/kg,大豆1.50元/kg,玉米0.80元/kg。那么,(1)如何制订种植计划,才能使总产量最大和总产值最大?,取 xij 决策变量,它表示在第 j 等级的耕地上种植第i种作物的面积。如果追求总产量最大和总产值最大双重目标,那么,目标函数包括:,追求总产值最大,追求总产量最大,根据题意,约束方程包

24、括:,非负约束,对上述多目标规划问题,我们可以采用如下方法,求其非劣解。,耕地面积约束,最低收获量约束,1.用线性加权方法,取1=2=0.5,重新构造目标函数:,这样,就将多目标规划转化为单目标线性规划。,用单纯形方法对该问题求解,可以得到一个满意解(非劣解)方案,结果见表,此方案是:III等耕地全部种植水稻,I等耕地全部种植玉米,II等耕地种植大豆19.1176公顷、种植玉米280.8824公顷。在此方案下,线性加权目标函数的最大取值为6445600。,用单纯形方法对该问题求解,可以得到一个满意解(非劣解)方案,结果见表,2.目标规划方法,实际上,除了线性加权求和法以外,我们还可以用目标规划

25、方法求解上述多目标规划问题。如果我们对总产量f1(X)和总产值f1(X),分别提出一个期望目标值,(kg),(元),并将两个目标视为相同的优先级。,如果d1+、d1-分别表示对应第一个目标期望值的正、负偏差变量,d2+、d2-分别表示对应于第二个目标期望值的正、负偏差变量,而且将每一个目标的正、负偏差变量同等看待(即可将它们的权系数都赋为1),那么,该目标规划问题的目标函数为:,对应的两个目标约束为:,即:,除了目标约束以外,该模型的约束条件,还包括硬约束和非负约束的限制。其中,硬约束包括耕地面积约束式和最低收获量约束式;非负约束,不但包括决策变量的非负约束式,还包括正、负偏差变量的非负约束:

26、,解上述目标规划问题,可以得到一个非劣解方案,详见表:,在此非劣解方案下,两个目标的正、负偏差变量分别为,。,二、生产计划问题,某企业拟生产A和B两种产品,其生产投资费用分别为2100元/t和4800元/t。A、B两种产品的利润分别为3600元/t和6500元/t。A、B产品每月的最大生产能力分别为5t和8t;市场对这两种产品总量的需求每月不少于9t。试问该企业应该如何安排生产计划,才能既能满足市场需求,又节约投资,而且使生产利润达到最大?,分析:该问题是一个线性多目标规划问题。如果计划决策变量用 x1 和 x2表示,它们分别代表A、B产品每月的生产量(单位:t);f1(x1,x2)表示生产A

27、、B两种产品的总投资费用(单位:元);f2(x1,x2)表示生产A、B两种产品获得的总利润(单位:元)。那么,该多目标规划问题就是:求x1 和 x2,使:,分析:该问题是一个线性多目标规划问题。如果计划决策变量用 x1 和 x2表示,它们分别代表A、B产品每月的生产量(单位:t);f1(x1,x2)表示生产A、B两种产品的总投资费用(单位:元);f2(x1,x2)表示生产A、B两种产品获得的总利润(单位:元)。那么,该多目标规划问题就是:求x1 和 x2,使:,而且满足:,对于上述多目标规划问题,如果决策者提出的期望目标是:(1)每个月的总投资不超30000元;(2)每个月的总利润达到或超过4

28、5000元;(3)两个目标同等重要。那么,借助Matlab软件系统中的优化计算工具进行求解,可以得到一个非劣解方案为:,而且满足:,53,而且满足:,x,fval,attainfactor,exitflag,output=fgoalattain(fun,x0,.),x=fgoalattain(fun,x0,goal,weight,A,B,Aeq,Beq,LB,UB),按照此方案进行生产,该企业每个月可以获得利润44000元,同时需要投资29700元。,三、投资问题,某企业拟用1000万元投资于A、B两个项目的技术改造。设x1、x2 分别表示分配给A、B项目的投资(万元)。据估计,投资项目A、B

29、的年收益分别为投资的60%和70%;但投资风险损失,与总投资和单项投资均有关系:,据市场调查显示,A项目的投资前景好于B项目,因此希望A项目的投资额不小B项目。试问应该如何在A、B两个项目之间分配投资,才能既使年利润最大,又使风险损失为最小?,该问题是一个非线性多目标规划问题,将它用数学语言描述出来,就是:求x1、x2,使:,而且满足:,对于上述多目标规划问题,如果决策者提出的期望目标是:(1)每一年的总收益不小于600万元;(2)希望投资风险损失不超过800万元;(3)两个目标同等重要。那么,借助Matlab软件中的优化计算工具进行求解,可以得到一个非劣解方案为:,matlab程序fun=-0.60*x(1)-0.70*x(2),0.001*x(1)2+0.002*x(2)2+0.001*x(1)*x(2);a=-1,1;b=0;Aeq=1,1;beq=1000;goal=-600,800;weight=goal;x0=600,600;lb=0,0;x,fval,attainfactor,exitflag=fgoalattain(fun,x0,goal,weight,a,b,Aeq,beq,lb,),

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号