liu_kunlun 发表于 2014-7-19 22:15:44

本帖最后由 liu_kunlun 于 2014-7-20 20:41 编辑

首先要用Excel生成1根钢筋所有可能的几种用法----此例为21种,不太费事
然后利用Excel的规划求解,条件是各种用法的钢筋数大于等于0,698的总根数和518的总根数符合要求,以总钢筋根数最小为规划求解目标
不用编写代码

可以优化一下,
只考虑1根钢筋所有可能的最大使用的几种用法----此例变为6种,但相应要修改部分约束条件,698的总根数和518的总根数大于等于给定数据,各种用法的钢筋数为整数。

风树 发表于 2014-7-19 22:17:14

liu_kunlun 发表于 2014-7-19 22:15 static/image/common/back.gif
首先要用Excel生成1根钢筋所有可能的几种用法----此例为21种,不太费事
然后利用Excel的规划求解,条件是各 ...

谢谢,                           

cable2004 发表于 2014-7-20 16:11:50

如果有200种长度,计算速度是不是慢死了!

风树 发表于 2014-7-20 16:23:15

cable2004 发表于 2014-7-20 16:11 static/image/common/back.gif
如果有200种长度,计算速度是不是慢死了!

对的                     

Q1241274614 发表于 2014-7-20 18:38:00

之前写的东西,算法不是最优,速度也有待改进!

风树 发表于 2014-7-20 19:21:46

Q1241274614 发表于 2014-7-20 18:38 static/image/common/back.gif
之前写的东西,算法不是最优,速度也有待改进!

我们要渔或鱼

这不是相亲啊,不要先看照片吧

xyp1964 发表于 2014-7-20 19:43:49

可能的结果:
'((1200.0 400.0 800.0 (2 5) (4 2))
(1200.0 800.0 400.0 (4 2) (2 5))
(1218.18 290.909 927.273 (1 6) (4 2))
(1218.18 927.273 290.909 (4 2) (1 6))
(1228.57 228.571 1000.0 (0 7) (4 2))
(1228.57 1000.0 228.571 (4 2) (0 7))
(1232.0 720.0 512.0 (2 5) (5 0))
(1232.0 512.0 720.0 (5 0) (2 5))
(1266.67 1066.67 200.0 (3 3) (4 2))
(1266.67 200.0 1066.67 (4 2) (3 3))
(1280.0 600.0 680.0 (1 6) (5 0))
(1280.0 1200.0 80.0 (3 3) (5 0))
(1280.0 680.0 600.0 (5 0) (1 6))
(1280.0 80.0 1200.0 (5 0) (3 3))
(1314.29 514.286 800.0 (0 7) (5 0))
(1314.29 800.0 514.286 (5 0) (0 7))
)

xyp1964 发表于 2014-7-20 19:52:58

优化后结果:
'((1200.0 400.0 800.0 (2 5) (4 2))
   (1218.18 290.909 927.273 (1 6) (4 2))
   (1228.57 228.571 1000.0 (0 7) (4 2))
   (1232.0 720.0 512.0 (2 5) (5 0))
   (1266.67 1066.67 200.0 (3 3) (4 2))
   (1280.0 600.0 680.0 (1 6) (5 0))
   (1280.0 1200.0 80.0 (3 3) (5 0))
   (1314.29 514.286 800.0 (0 7) (5 0))
)

xyp1964 发表于 2014-7-20 20:01:30

直接秒杀了!

xyp1964 发表于 2014-7-20 20:11:47

钢筋由4000变6000的结果:

页: 1 2 [3] 4
查看完整版本: 一维优化下料(一)