用动态规划求解下列非线性规划问题。

2024-05-17 18:38

1. 用动态规划求解下列非线性规划问题。

设 MAX Z=x1*(x2^2)*x3
s.t{ x1+x2*2+x3<=8
x1,x2,x3>=0

将该问题分为三个阶段,令S0,S1,S2,S3分别表示状态变量,且S3<=8,取x1,x2,x3为各阶段决策变量,最优值函数Fk(Sk)表示第k阶段结束状态为Sk时从第1至第k阶段的最大值,故
x1=s1,2*x2+S1=S2,x3+S2=S3<=8
所以 x1=S1,0=<x2<=S2/2,0=<x3<=S3
且 S1=S2-2*x2,S2=S3-x3
用逆序递推法可知:
F1(S1)=max(x1)[其中 x1=s1]
则 (x1)* =S1 , F1(S1)=S1
F2(S2)=max(x2^2*F1(S1))
=max[x2^2*(S2-2*x2)]
(其中 0=<x2<=S2/2)
则 (x2)* =S2/3 , F2(S2)=(S2^3)/27
F3(S3)=max(x3*F2(S2))
=max[x3*(S2^3)/27]
(其中 0=<x3<=S3)
则 (x3)* =S3/4 , F3(S3)=(S3^4)/256
经分析可知,当S3=8时,F3(S3)=(S3^2)/4=16
此时达最大。故反推得:
(x3)* =S3/4=2 ,S2=S3-x3=8-2=6
(x2)* =S2/3=2 ,S1=S2-2*x2=6-4=2
(x1)* =S1=2.
MAX Z=x1*(x2^2)*x3=16

用动态规划求解下列非线性规划问题。

2. 用动态规划求解非线性规划问题: max X1(X2^2 )X3 s.t.X1+2X2+X3=0

设 MAX Z=x1*(x2^2)*x3
  s.t{ x1+x2*2+x3=0
  将该问题分为三个阶段,令S0,S1,S2,S3分别表示状态变量,且S3

3. 解下列线性规划问题:

线性规划手解的步骤:
根据规划条件画出可行域,你第一题的右边已经画两条了,还差y=x这一条(取其上方为可行域)
将z=2x+y写成y=-2x+z的形式
这时规划问题变成找y=-2x的最大截距问题了
画出y=-2x,找到其在可行域内,且截距最大的点。
可以发现该点为x=2,y=-1.此时z=3
第二题类似,我就不手动给你解了。
最小值时,x=-2,y=-1;Z=-11
最大值时,x=1.5,y=2.5,Z=17
这里我直接用matlab给你解出来,并将程序给你附上。
我不知道你是几年级的学生,不过我希望你除了手动解决问题以外,也学会使用科学计算工具。将来是信息时代,掌握现代科学计算工具能大幅提高我们的效率。在外国,较优秀的高中生都会通过编程解决问题。中国可能教育制度的问题,学生在这方面的能力比较弱。如果你是高中生我希望你能掌握这些计算工具的简单用法,比如解方程和解线性规划等,你学过的数学问题。
clear
clc
%第一题
%化成标准型
%f=2*x1+x2
%-x1+x2<=0
%x1+x2<=1
%-inf=-1
c=[-2;-1];
A=[-1 1;1 1];
b=[0;1];
aeq=[];beq=[];
vlb=[-Inf;-1];
vub=[Inf;Inf];
%-(最大值)
[x,fval]=linprog(c,A,b,aeq,beq,vlb,vub)
%第二题
%化成标准型
%f=3x1+5x2
%5x1+3x2<=15
%-x1+x2<=1
%x1-5x2<=3
%-Inf<=x1<=Inf,-Inf<=x2<=Inf
c=[3;5];
A=[5 3;-1 1;1 -5];
b=[15;1;3];
aeq=[];beq=[];
vlb=[-Inf,-Inf];
vub=[Inf,Inf];
%最小值
[x,fval]=linprog(c,A,b,aeq,beq,vlb,vub)
c=[-3;-5];
%-(最大值)
[x,fval]=linprog(c,A,b,aeq,beq,vlb,vub)

解下列线性规划问题:

4. 非线性规划问题

这是一个条件极值问题,可用拉格朗日方法解决
约束条件是:10000*10*(v1-5)^2+20000*15*(v2-8)^2+50000*5*(v3-6)^2=10000
目标函数是:Z=10000/v1+20000/v2+50000/v3
方法是:引进一个拉格朗日函数
 w=10000/v1+20000/v2+50000/v3+λ(10000*10*(v1-5)^2+20000*15*(v2-8)^2+50000*5*(v3-6)^2-10000)
把v1,v2,v3,λ看作独立变量,对它们分别求偏导,并令其为0,得到方程组,解之得驻点,代入目标函数即得条件极值。计算工作量极大,一般不做判断。
       我只能作此介绍,不能也不必要详细解出,请谅解。还是自己动手吧。祝您胜利!

5. 非线性规划问题

在优化问题中,把目标函数或约束条件中至少有一个是非线性函数的数学规划问题称为非线性规划。
4.2.1.1 等式约束的非线性规划

含有协变量的地下水动态规划管理模型研究

式中:x={x1,x2,…,xn}T。将m个约束方程分别乘以λ1、λ2、…、λm,然后把它们加到目标函数中得到:

含有协变量的地下水动态规划管理模型研究

这种形式的目标函数称为拉格朗日函数,并用L表示,如果把L看作为带有m+n个变量的目标函数,并令L对m+n个变量的导数等于零,得到:

含有协变量的地下水动态规划管理模型研究

联立解m+n个方程即得到所求的解。这样,有约束的问题(4.7)式转化为无约束问题,然后利用无约束最优化方法,对函数L求极小值,即得原问题最优解。
4.2.1.2 不等式约束的非线性规划

含有协变量的地下水动态规划管理模型研究

在约束条件中加入非负松弛变量,将不等式约束变换成等式约束。则问题变为:

含有协变量的地下水动态规划管理模型研究

式中:y=[y1,y2,…,ym]T是松弛变量向量。该问题可方便地利用拉格朗日乘子法求解。为此,构造拉格朗日函数L为:

含有协变量的地下水动态规划管理模型研究

式中λ=[λ1,λ2,…,λm]T为拉格朗日乘子向量。拉格朗日函数驻点可由下列方程(必要条件)求解得到:

含有协变量的地下水动态规划管理模型研究

式(4.15)保证了约束gj(x)≤0(j=1,2,…,m),而式(4.16)表明λj=0或者yj=0。若λj=0,意味着该约束不起作用(gj<0),故可略去;若yj=0,则表明该约束在最优点是起作用的(gj=0)。考虑把约束分为两个集J1和J2,J1+J2表示约束全集。设集合J1表示在最优点起作用约束的集合,集合J2为全部不起作用约束集合。
这样,对于j∈J1,yj=0(约束起作用),而对于j∈J2,λj=0(约束不起作用)。此时,式(4.14)可简化为:

含有协变量的地下水动态规划管理模型研究

类似地,式(4.15)可写为:

含有协变量的地下水动态规划管理模型研究

此外还可证明,在求问题极小值时,λj(j∈J1)必为正,相反,对于极大值问题,λj(j∈J1)必为负。

非线性规划问题

6. 求解下列线性规划问题

min=x1+x2+x3;
4*x1+3*x2+2*x3+x4+x5>=50;
x2+2*x4+x5+3*x6>=20;
x3+x5+2*x7>=15;
lingo求解 代码如上   结果如下:
                                      X1        0.000000            
                                      X2        0.000000            
                                      X3        0.000000            
                                      X4        0.000000            
                                      X5        50.00000           
                                      X6        0.000000            
                                      X7        0.000000

7. 运筹学用动态规划求解下列线性规划问题

动态规划(dynamic programming)是运筹学的一个分支,是求解决策过程(decision process)最优化的数学方法。20世纪50年代初美国数学家R.E.Bellman等人在研究多阶段决策过程(multistep decision process)的优化问题时,提出了著名的最优化原理(principle of optimality),把多阶段过程转化为一系列单阶段问题,利用各阶段之间的关系,逐个求解,创立了解决这类过程优化问题的新方法——动态规划。
动态规划是一种在数学和计算机科学中使用的,用于求解包含重叠子问题的最优化问题的方法。其基本思想是,将原问题分解为相似的子问题,在求解的过程中通过子问题的解求出原问题的解。动态规划的思想是多种算法的基础,被广泛应用于计算机科学和工程领域。比较著名的应用实例有:求解最短路径问题,背包问题,项目管理,网络流优化等。

运筹学用动态规划求解下列线性规划问题

8. 线性规划问题,求解答,讲解