如何用matlab或lingo求解多元函数的最小值?

求最优成本 minC,minC=X[ ]*P[ ],价格P固定,重量X变动为整数,无法得出整数解,有小数解也可。X[ ]=[x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12]P[ ]=[6900,5330,4800,6500,6270,6200,6700,6200,6700,5000,5080,5470]sumX=x1+x2+x+x4+x5+x6+x7+x8+x9+x10+x1+x12=2000密度M固定,M[ ]=[m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11,m12]=[0.742,0.6667,0.63,0.809,0.695,0.7072,0.88,0.7072,0.88,0.63,0.8693,0.7409]sumM=m1+m2+m3+m4+m5+ m6+ m7+ m8+ m9+ m10+ m11+ m120.73<=sumM<=0.739体积V[ ]=X/M=[v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12]=[x1/m1,x2/m2,x3/m3,x4/m4,x5/m5,x6/m6,x7/m7,x8/m8,x9/m9,x10/m10,x11/m11,x12/m12]sumV= v1+v2+v3+v4+v5+v6+v7+v8+v9+v10+v11+v12Vs=V/sumV=[v1/sumV, v2/sumV, v3/sumV, v4/sumV, v5/sumV, v6/sumV, v7/sumV, v8/sumV, v9/sumV, v10/sumV, v11/sumV, v12/sumV]已知恒量:B[ ]= [b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12]=[116,72,81,101,96,91,109,80,95,116]C[ ]= [c1,c2,c3,c4,c5,c6,c7,c8,c9,c10,c11,c12]=[108,60,70,85,92,85,85,85,85,70,90,108]D[ ]= [d1,d2,d3,d4,d5,d6,d7,d8,d9,d10,d11,d12]=[52,54,125,38,53,83,7,83,7,83,7,120,14,50]E[ ]= [e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11,e12]=[0,5.5,0,1.4,0.9,57.5,1.3,57.5,1.3,0.7,12.7,0]F[ ]= [f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12]=[0,1,2,66,5,12,98,12,98,12,98,2,56,0]G[ ]= [g1,g2,g3,g4,g5,g6,g7,g8,g9,g10,g11,g12]=[18,0.1,0.3,0.1,0.1,0.1,0.1,0.1,0.1,0.3,0.1,18.2]H[ ]= [h1,h2,h3,h4,h5,h6,h7,h8,h9,h10,h11,h12]=[0,0.5,0.7,1.6,0.1,0.1,0.1,0.1,0.1,0.7.0.1.0.1]I[ ]= [i1,i2,i3,i4,i5,i6,i7,i8,i9,i10,i11,i12]=[1,2,5,3,3,10,1,10,1,2,8,88]限制条件:bb=sum(B*Vs)=sum(b1*v1/sumV+b2*v2/sumV+b3*v3/sumV+b4*v4/sumV+b5*v5/sumV+b6*v6/sumV+b7*v7/sumV+b8*v8/sumV+b9*v9/sumV+b10*v10/sumV+b11*v11/sumV+b12*v12/sumV)95<=bb<=96cc=sum(C*Vs)=sum(c1*v1/sumV+c2*v2/sumV+c3*v3/sumV+c4*v4/sumV+c5*v5/sumV+c6*v6/sumV+c7*v7/sumV+c8*v8/sumV+c9*v9/sumV+c10*v10/sumV+c11*v11/sumV+c12*v12/sumV)80<=cc<=100dd=sum(D*Vs)=sum(d1*v1/sumV+d2*v2/sumV+d3*v3/sumV+d4*v4/sumV+d5*v5/sumV+d6*v6/sumV+d7*v7/sumV+d8*v8/sumV+d9*v9/sumV+d10*v10/sumV+d11*v11/sumV+d12*v12/sumV)40<=dd<=55ee=sum(E*Vs)=sum(e1*v1/sumV+e2*v2/sumV+e3*v3/sumV+e4*v4/sumV+e5*v5/sumV+e6*v6/sumV+e7*v7/sumV+e8*v8/sumV+e9*v9/sumV+e10*v10/sumV+e11*v11/sumV+e12*v12/sumV)0<=ee<=16ff=sum(F*Vs)=sum(f1*v1/sumV+f2*v2/sumV+f3*v3/sumV+f4*v4/sumV+f5*v5/sumV+f6*v6/sumV+f7*v7/sumV+f8*v8/sumV+f9*v9/sumV+f10*v10/sumV+f11*v11/sumV+f12*v12/sumV)0<=ff<=32gg=sum(G*Vs)=sum(g1*v1/sumV+g2*v2/sumV+g3*v3/sumV+g4*v4/sumV+g5*v5/sumV+g6*v6/sumV+g7*v7/sumV+g8*v8/sumV+g9*v9/sumV+g10*v10/sumV+g11*v11/sumV+g12*v12/sumV)0<=gg<=2.6hh=sum(H*Vs)=sum(h1*v1/sumV+h2*v2/sumV+h3*v3/sumV+h4*v4/sumV+h5*v5/sumV+h6*v6/sumV+h7*v7/sumV+h8*v8/sumV+h9*v9/sumV+h10*v10/sumV+h11*v11/sumV+h12*v12/sumV)0<=hh<=0.7ii=sum(I*Vs)=sum(i1*v1/sumV+i2*v2/sumV+i3*v3/sumV+i4*v4/sumV+i5*v5/sumV+i6*v6/sumV+i7*v7/sumV+i8*v8/sumV+i9*v9/sumV+i10*v10/sumV+i11*v11/sumV+i12*v12/sumV)0<=ii<=8附图是用EXCEL的规划求解计算使用,方便大侠理解。但EXCEL无法得出最优解,最优解会变化,可能是因为EXCEL规划求解功能没有遍历求解。

你好,答案如下所示。

这种题我可以帮你用lingo进行计算,但需要你给原题和数据,数据要给可以复制黏贴的,免得再输入
希望你能够详细查看。

如果你有不会的,你可以提问

我有时间就会帮你解答。
希望你好好学习。
每一天都过得充实。追问

已用LINGO解决了,多谢!

追答

还是麻烦采纳一下哈

温馨提示:答案为网友推荐,仅供参考