Lingo带约束的目标函数优化,如何对式子中的参数循环赋值并输出结果?
目前的程序如下:min=y;y=p*p*(2*n1*x1+2*t1-2*x1*n1*n1)+2*p*(1-p)*(n2*(x1+x2)+2*t2-(x1+x2)*n2*n...
目前的程序如下:
min=y;
y=p*p*(2*n1*x1+2*t1-2*x1*n1*n1)+2*p*(1-p)*(n2*(x1+x2)+2*t2-(x1+x2)*n2*n2)+(1-p)*(1-p)*(2*n3*x2+2*t3-2*x2*n3*n3);
@free(y);
p*(n1*x1+t1-(@pow(2,n1)-1)*x1)+(1-p)*(n2*x1+t2-(@pow(2,n2)-1)*x1)>=p*(n2*x2+t2-(@pow(2,n2)-1)*x1)+(1-p)*(n3*x2+t3-(@pow(2,n3)-1)*x1);
p*(n2*x2+t2-(@pow(2,n2)-1)*x2)+(1-p)*(n3*x2+t3-(@pow(2,n3)-1)*x2)>=p*(n1*x1+t1-(@pow(2,n1)-1)*x2)+(1-p)*(n2*x1+t2-(@pow(2,n2)-1)*x2);
p*(n1*x1+t1-(@pow(2,n1)-1)*x1)+(1-p)*(n2*x1+t2-(@pow(2,n2)-1)*x1)>=0;
p*(n2*x2+t2-(@pow(2,n2)-1)*x2)+(1-p)*(n3*x2+t3-(@pow(2,n3)-1)*x2)>=0;
(@pow(2,n2)-1)/(@pow(2,2*n2)-@pow(2,n2))<=x2/x1;
x1=84;
x2=35;
p=0.7;
n1>=1;
n2>=1;
n3>=1;
@free(t1);
@free(t2);
@free(t3);
@gin(n1);
@gin(n2);
@gin(n3);
而我希望x1和x2的取值在1到100循环,p在0.1到0.9循环,每组都输出一个目标函数最优解,应该怎么修改程序? 展开
min=y;
y=p*p*(2*n1*x1+2*t1-2*x1*n1*n1)+2*p*(1-p)*(n2*(x1+x2)+2*t2-(x1+x2)*n2*n2)+(1-p)*(1-p)*(2*n3*x2+2*t3-2*x2*n3*n3);
@free(y);
p*(n1*x1+t1-(@pow(2,n1)-1)*x1)+(1-p)*(n2*x1+t2-(@pow(2,n2)-1)*x1)>=p*(n2*x2+t2-(@pow(2,n2)-1)*x1)+(1-p)*(n3*x2+t3-(@pow(2,n3)-1)*x1);
p*(n2*x2+t2-(@pow(2,n2)-1)*x2)+(1-p)*(n3*x2+t3-(@pow(2,n3)-1)*x2)>=p*(n1*x1+t1-(@pow(2,n1)-1)*x2)+(1-p)*(n2*x1+t2-(@pow(2,n2)-1)*x2);
p*(n1*x1+t1-(@pow(2,n1)-1)*x1)+(1-p)*(n2*x1+t2-(@pow(2,n2)-1)*x1)>=0;
p*(n2*x2+t2-(@pow(2,n2)-1)*x2)+(1-p)*(n3*x2+t3-(@pow(2,n3)-1)*x2)>=0;
(@pow(2,n2)-1)/(@pow(2,2*n2)-@pow(2,n2))<=x2/x1;
x1=84;
x2=35;
p=0.7;
n1>=1;
n2>=1;
n3>=1;
@free(t1);
@free(t2);
@free(t3);
@gin(n1);
@gin(n2);
@gin(n3);
而我希望x1和x2的取值在1到100循环,p在0.1到0.9循环,每组都输出一个目标函数最优解,应该怎么修改程序? 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询