如何利用Lingo进行非线性规划
来源:网络收集 点击: 时间:2024-02-24卡隆公司的新肥料
问题 卡隆(Carron)化学公司的年轻工程师R 和D 合成了一种轰动一时的新肥料,只用两种基本原料来制造. 公司想利用这个机会生产尽可能多的这种新肥料,公司目前有资金40000美元,可购买单价分别为8000美元的原料A和5000美元的原料B. 当用数量为x1和x2两种原料合成时,肥料的数量Q 由下式给出:
Q =4x1+2x2-0.5x1^2 -0.25x2 ^2
试确定购买原料的计划.
问题分析 计划的目标是用有限的钱购买的原料,生产出最多的新肥料. 肥料的数量与原料数量不是线性关系. 因此这个优化问题是一个非线性规划问题.
模型建立
决策变量:显然是原料A, B的数量x1和x2 .
目标函数:问题中已经给出,即
Q =4x1+2x2-0.5x1^2 -0.25x2 ^2
约束条件:
资金约束 即购买原料的总费用不能超过公司现有资金40000 美元;
非负约束 购买两种原料的数量都是非负数.
综上可得数学模型如下:

模型求解
非线性规划也可以用LINGO 求解. 在LINGO11新建文档中输入如下代码:
model:
init:
x1=0.0;
x2=0.0;
endinit
max=4*x1+2*x2-0.5*x1^2-0.25*x2^2;
8000*x1+5000*x2=40000;
x1=0;
x2=0;
end
得到输出结果如下:

结果分析 由于非线性规划目标函数不一定是线性函数,可行域也不一定是多边形区域,所以最优解很难得到. 现有的理论和算法都不能保证得到整个可行域上的最优解,即全局最优解(Global optimal solution). 只能得到在可行域某个局部的最优解,称为局部最优解(Local optimal solution). LINGO 求解非线性规划也不能保证得到全局最优解. 决策变量初值的不同设定值,可能导致最后的结果不同. 本例模型简单,不同的初值得到的都是同样的最优解x1 =3.157906和x2= 2.947305
注意事项如果对于不同版本的Lingo,其求解操作过程可能有细微的不同,请您自行加以调整。
师者,所以传道受业解惑也。人非生而知之者,孰能无惑?惑而不从师,其为惑也,终不解矣。如对您有帮助,请不吝点击投票转发,如您有任何疑问或建议,请留言评论。
版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_134943.html