1.
用
LP
过程求解线性规划
max z=6*x1-2*x2+3*x3
s.t. 2*x1-x2+2*x3<=2
x1 +4*x3<=4
x1,x2,x3>=0
sas程序如下
data ex1;
input _row_$ x1 x2 x3 _type_$ _rhs_;
cards;
object 6 -2 3 max .
con1 2 -1 2 le 2
con2 1 0 4 le 4
;
proc lp;
run;
求解结果
:x1=4,x2=6,x3=0,z=12
2. 用LP过程求解整数线性规划
max z=-3*x1+x2
s.t. 3*x1-2x2 <=3
-5*x1-4*x2<=-10
2*x1+x2<=5
x1,x2,x3>=0
sas程序如下
data ex2;
input _row_$ x1 x2 _type_$ _rhs_;
cards;
object -3 1 max .
con1 3 -2 le 3
con2 -5 -4 le -10
con3 2 1 le 5
bound 3 5 upperbd .
inbd 1 2 integer .
;
proc lp;
run;
求解结果:x1=0,x2=5,z=5
3. 用NLP过程求解无约束优化问题
min z=x1*x1+x2*x2-3*x1-x1*x2+3
proc nlp;
min y;
parms x1 x2=-1;
bounds 0<=x1,0<=x2;
y=x1*x1+x2*x2-3*x1-x1*x2+3;
run;
求解结果:x1=2,x2=1,z=0
4. 用NLP过程求解非线性规划
min z=-3*x1*x1-x2*x2-2*x3*x3
s.t. x1*x1+x2*x2+x3*x3=3
-x1+x2>=0
x1,x2,x3>=0
proc nlp;
min y;
parms x1 x2 x3=-1;
bounds 0<=x1,0<=x2,0<=x3;
y1=x1*x1;
y2=x2*x2;
y3=x3*x3;
y4=y1+y2+y3;
y5=-x1+x2;
nlincon 2.9999<=y4<=3,0<=y5;
y=-3*y1-y2-2*y3;
run;
求解结果:x1=1,x2=1,x3=1,z=6
5. 用NLP过程求解非线性规划
min z=8*x1+10*x2-x1*x1-x2-x2
s.t. 3*x1+2*x2<=6
x1,x2>=0
proc nlp;
min y;
parms x1 x2=-1;
bounds 0<=x1,0<=x2;
y1=x1*x1;
y2=x2*x2;
y3=8*x1;
y4=10*x2;
y5=3*x1+2*x2;
nlincon 0<=y5<=6;
y=y3+y4-y1-y2;
run;
求解结果:x1=0,x2=0,z=0
6. 求解下面线性目标规划模型
min z=p1*(d11+d12)+p2*d21+p3*d32
s.t. x1+x2+d11-x12=10
3*x1+4*x2+d21-d22=50
8*x1+10*x2+d31-d32=300
x1,x2,d11,d12,d21,d22,d31,d32>=0
data ex6;
input _row_$ x1 x2 d11 d12 d21 d22 d31 d32 _type_$ _rhs_;
cards;
object 0 0 0.495 0.495 0.0099 0 0 0.0001 min .
con1 1 1 1 -1 0 0 0 0 eq 10
con2 3 4 0 0 1 -1 0 0 eq 50
con3 8 10 0 0 0 0 1 -1 eq 300
;
proc lp;
run;
求解结果:x1=0,x2=10,d11=0,d12=0,d21=10,d22=0,d31=200,d32=0,z=0.099
7. 求解下面0-1规划模型
min z=4*x1+3*x2+2*x3
s.t. 2*x1-5*x2+3*x3<=4
4*x1+x2+3*x3>=3
x2+x3>=1
x1,x2,x3=0 或1
data ex7;
input _row_$ x1 x2 x3 _type_$ _rhs_;
cards;
object 4 3 2 min .
con1 2 -5 3 le 4
con2 4 1 3 ge 3
bounds 1 1 1 upperbd .
inbd 1 2 3 integer .
;
proc lp;
run;
求解结果:x1=0,x2=0,x3=1,z=2