lingo可以求解多元多次方程组吗?

lingo可以求解多元多次方程组吗?,第1张

lingo虽有calc段用于计算一些中间数据,但很难将这个功能用于求解方程组

matlab、maple、mathematica、1stopt都可求解方程组,楼主可以考虑这些工具。

第一句model没有什么意思,你就照抄就可以。

接下来的sets与endsets之间称为集。就是定义若干个集,集相当于c++中的类,后面跟上集成员名列表,再后面为其属性。这里定义了work与job两个集。

成员分别为w1到w4,与j1到j4;后面的属性省掉了。links为work与job的派生集。c与x为其属性。

接下来的data与enddata为数据区间。输入c的数据即可。

接下来的min=为目标函数,用了@sum这个循环加和函数计算c与x的积。

后面为限制条件,即每项工作要有一个人做。

每个人要有一项工作做。

x为0-1线性规划。

model:

sets:

firehouse/1..3/:num

fire/1..7/:

link(firehouse,fire):distance,x

endsets

data:

num=3,2,2

enddata

min=@sum(link:distance*x)

@for(firehouse(i):@sum(fire(j):x(i,j))=num(i))

@for(fire(j):@sum(firehouse(i):x(i,j))=1)

@for(link:@gin(x))

end

结果

X( 1, 1)0.0000000.000000

X( 1, 2)1.0000000.000000

X( 1, 3)0.0000000.000000

X( 1, 4)0.0000000.000000

X( 1, 5)0.0000000.000000

X( 1, 6)1.0000000.000000

X( 1, 7)1.0000000.000000

X( 2, 1)0.0000000.000000

X( 2, 2)0.0000000.000000

X( 2, 3)1.0000000.000000

X( 2, 4)1.0000000.000000

X( 2, 5)0.0000000.000000

X( 2, 6)0.0000000.000000

X( 2, 7)0.0000000.000000

X( 3, 1)1.0000000.000000

X( 3, 2)0.0000000.000000

X( 3, 3)0.0000000.000000

X( 3, 4)0.0000000.000000

X( 3, 5)1.0000000.000000

X( 3, 6)0.0000000.000000

X( 3, 7)0.0000000.000000

就是说1号消防站派车到2 6 7

2号到3 4

3号到1 5


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11320584.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存