§18运用目标达到法求解多目标规划

上传人:人*** 文档编号:478740923 上传时间:2024-02-23 格式:DOCX 页数:5 大小:14.92KB
返回 下载 相关 举报
§18运用目标达到法求解多目标规划_第1页
第1页 / 共5页
§18运用目标达到法求解多目标规划_第2页
第2页 / 共5页
§18运用目标达到法求解多目标规划_第3页
第3页 / 共5页
§18运用目标达到法求解多目标规划_第4页
第4页 / 共5页
§18运用目标达到法求解多目标规划_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《§18运用目标达到法求解多目标规划》由会员分享,可在线阅读,更多相关《§18运用目标达到法求解多目标规划(5页珍藏版)》请在金锄头文库上搜索。

1、18.运用目标达到法求解多目标规划用目标达到法求解多目标规划的计算过程,可以通过调用Matlab软件系统优化工具箱中的fgoalattain函数实现。在Matlab的优化工具箱中,fgoalattain函数用于解决此类问题。其数学模型形式为:min丫F(x)-weight丫三goalc(x)0ceq(x)=0AxbAeqx=beqlbxub其中,x,weight,goal,b,beq,lb和ub为向量;A和Aeq为矩阵;c(x),ceq(x)和F(x)为函数。调用格式:x=fgoalattain(F,x0,goal,weight)x=fgoalattain(F,x0,goal,weight,A

2、,b)x=fgoalattain(F,xO,goal,weight,A,b,Aeq,beq)x=fgoalattain(F,xO,goal,weight,A,b,Aeq,beq,lb,ub)x=fgoalattain(F,xO,goal,weight,A,b,Aeq,beq,lb,ub,nonlcon)x=fgoalattain(F,xO,goal,weight,A,b,Aeq,beq,lb,ub,nonlcon,options)x=fgoalattain(F,x0,goal,weight,A,b,Aeq,beq,lb,ub,nonlcon,options,P1,P2)x,fval=fgoal

3、attain()x,fval,attainfactor=fgoalattain()x,fval,attainfactor,exitflag,output=fgoalattain)x,fval,attainfactor,exitflag,output,lambda=fgoalattain()说明:F为目标函数;x0为初值;goal为F达到的指定目标;weight为参数指定权重;A、b为线性不等式约束的矩阵与向量;Aeq、beq为等式约束的矩阵与向量;lb、ub为变量x的上、下界向量;nonlcon为定义非线性不等式约束函数c(x)和等式约束函数ceq(x);options中设置优化参数。x返回最

4、优解;fval返回解x处的目标函数值;attainfactor返回解x处的目标达到因子;exitflag描述计算的退出条件;output返回包含优化信息的输出参数;lambda返回包含拉格朗日乘子的参数。例1:教材第6章第4节第二小节,即生产计划问题:某企业拟生产A和B两种产品,其生产投资费用分别为2100元/t和4800元/toA、B两种产品的利润分别为3600元/t和6500元/t。A、B产品每月的最大生产能力分别为5t和8t;市场对这两种产品总量的需求每月不少于9t。试问该企业应该如何安排生产计划,才能既能满足市场需求,又节约投资,而且使生产利润达到最大最。该问题是一个线性多目标规划问题

5、。如果计划决策变量用Xi和X2表示,它们分别代表A、B产品每月的生产量(单位:t);fi(Xi,X2)表示生产A、B两种产品的总投资费用(单位:元);f2(Xi,X2)表示生产A、B两种产品获得的总利润(单位:元)。那么,该多目标规划问题就是:求Xi和X2,使:minf1(X1,x22100x14800x2maxf2(xx2)=3606500x2而且满足:Xi兰5x2兰8x1x2丄9Xi%一0求解程序如下:编辑目标函数M文件ffi2.mfunctionf=ff12(x)f(1)=2100*x(1)+4800*x(2);f(2)=-3600*x(1)-500*x(2); 按给定目标取:goal=

6、30000,-45000;weight=30000,-45000; 给出:x0=2,2;A=10;01;-1-1;b=5,8,-9;lb=zeros(2,1); 调用fgoalattain函数:x,fval,attainfactor,exitflag=fgoalattain(ff12,xO,goal,weight,A,b,lb,)运行后,输出结果为:X=54-44000fval=29700attainfactor=-0.0100exitflag=1例2:教材第6章第4节第三小节,即投资问题:某企业拟用1000万元投资于A、B两个项目的技术改造。设X!、X2分别表示分配给A、B项目的投资(万元)

7、。据估计,投资项目A、B的年收益分别为投资的60%和70%;但投资风险损失,与总投资和单项投资均有关系:0.001x20.002x|0.001XM2。据市场调查显示,A项目的投资前景好于B项目,因此希望A项目的投资额不小B项目。试问应该如何在A、B两个项目之间分配投资,才能既使年利润最大,又使风险损失为最小?该问题是一个非线性多目标规划问题,将它用数学语言描述出来,就是:求X1、X2,使:max右区)=0.60x10.70x222minf2(xX2)=0.001x10.002x20.001x1X2而且满足:x-ix2=1000*_捲+x2兰0凶,x2兰0求解程序如下:首先编辑目标函数M文件ff

8、13.mfunctionf=ff13(x)f(1)=-0.6*x(1)-0.7*x(2);f(2)=0.001*x(1)A2+0.002*x(2)A2+0.001*x(1)*x(2); 按给定目标取:goal=-625,875;weight=-625,875; 给出:x0=200,200;A=-1,1;b=0;Aeq=1,1;beq=1000;lb=zeros(2,1); 调用fgoalattain函数:x,fval,attainfactor,exitflag=fgoalattain(ff13,xO,goal,weight,A,b,Aeq,beq,lb,)运行后,输出结果为:x=750.0000250.0000fval=-625.0000875.0000attainfactor=-5.4254e-016exitflag=1

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号