数模论坛

 找回密码
 注-册-帐-号
搜索
热搜: 活动 交友 discuz
查看: 9972|回复: 5

关于用MATLAB解线性目标规划的问题 急!急!

  [复制链接]
发表于 2009-11-29 17:25:56 | 显示全部楼层 |阅读模式
x0=[1;1;1;1;0;0;0;0;0;0;0;0;0;0]; A=[]; b=[];
Aeq=[80 80 80 80 0 0 1 -1 0 0 0 0 0 0;5 5 5 5 0 0 0 0 1 -1 0 0 0 0 0 0]; %两方程的系数
beq=[1000;80];
lb=[]; ub=[];
[x,fval,exitflag,output,lambda,grad,hessian]=fmincon('myfun',x0,A,b,Aeq,beq,lb,ub,'mycon')

限制函数
function [c,ceq]=mycon(x)
ceq(1)=0.2^2*5^2/x(1)+0.25^2*9^2/x(2)+0.4^2*14^2/x(3)+0.15^2*19^2/x(4)+x(11)-x(12)-5;
ceq(2)=0.2^2*20^2/x(1)+0.25^2*30^2/x(2)+0.4^2*50^2/x(3)+0.15^2*100^2/x(4)+x(13)-x(14)-20;
ceq(3)=0.2^2/x(1)*0.25*0.5+0.25^2/x(2)*0.56*0.5+0.4^2/x(3)*0.88*0.5+0.15^2/x(4)*1.62*0.5+x(5)-x(6)-60;
c=[];

目标函数
function f=myfun(x)
f=3*(x(7)+x(8))+5*(x(9)+x(10))+10*(x(11)+x(12)+x(10)+x(9)+x(5)+x(6));


??? Error using ==> vertcat CAT arguments dimensions are not consistent.

根本没用过CAT这个函数,怎么会这样?
哪位大仙帮帮忙,小弟在这冰天雪地360度翻转裸跪求答案!
发表于 2010-1-18 20:06:38 | 显示全部楼层
用Lingo解呀,Lingo简单……
发表于 2010-6-19 15:15:35 | 显示全部楼层
你把具体的问题写出来啊
发表于 2010-7-13 22:08:16 | 显示全部楼层
哥们,你的Aeq=[80 80 80 80 0 0 1 -1 0 0 0 0 0 0;5 5 5 5 0 0 0 0 1 -1 0 0 0 0 0 0];第二行有16个元素,应该是14个吧。。。我改成14个后就可以运行了,但没得到最优化结果,可能是函数不收敛。。。
发表于 2010-8-31 23:09:23 | 显示全部楼层
顶楼上!!!
发表于 2011-9-21 21:43:46 | 显示全部楼层
是的,楼上说得对!
您需要登录后才可以回帖 登录 | 注-册-帐-号

本版积分规则

小黑屋|手机版|Archiver|数学建模网 ( 湘ICP备11011602号 )

GMT+8, 2024-11-26 21:40 , Processed in 0.071495 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表