ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 饮苦食毒

[求助] 还是靠VBA来帮我计算最少用你多少根棍子吧

  [复制链接]

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-9-15 08:16 | 显示全部楼层
本帖已被收录到知识树中,索引项:其他结构和算法
作为楼主,看到大家的踊跃帮忙,我现在实在没什么好说的了

TA的精华主题

TA的得分主题

发表于 2012-9-15 11:44 | 显示全部楼层
太深了......

TA的精华主题

TA的得分主题

发表于 2012-9-15 14:40 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2012-9-15 19:49 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
确实有难度啊,学习,关注

TA的精华主题

TA的得分主题

发表于 2012-9-17 23:05 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 灰袍法师 于 2012-9-22 04:27 编辑

e?
我这两天写了个vba求解结果很接近go nest 1d,有一个问题的求解结果甚至比go nest 1d还好,
go nest 1d求解结果是1515根,我的程序是1506根
问题就是参数太多,还得好好改良一下。
本附件属于 0.1 beta版,只作性能展示,绝对不宜用于实际工作

对30楼数据的最佳求解结果展示,可以看出黄色区域的参数调整是很关键的。。。。。。

还没有对速度优化,优化后是10秒左右就算完1506

不过目前问题也不是速度快慢,而是参数太多。
0.2 beta 版在58楼

0.3 beta 版在后面楼层,本帖附件删除

评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2012-9-18 16:07 | 显示全部楼层
小倒霉蛋子 发表于 2012-9-14 15:17
简单地说,一根2000的材料,按需要长度由长到短的判断是否需要截取,需要截取的话能否截取,可以截取的 ...

很清晰啊!非常感谢! 我想如果再加强下算法 估计代码就要长多很多浮渣多很多的了!请问是这样吗?

TA的精华主题

TA的得分主题

发表于 2012-9-18 19:14 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 三坛老窖 于 2012-9-23 23:52 编辑
灰袍法师 发表于 2012-9-17 23:05
e?
我这两天写了个vba求解结果很接近go nest 1d,有一个问题的求解结果甚至比go nest 1d还好,
go nest  ...


对这个问题的探究也有一段时间了,在此过程中尝试过:分层+穷举最优、分层+随机+替换、罗列组合+贪婪等各种方法,结果都不太理想(与之前坛中所见的方法相比还是有优势的),在百度文库里查看过这个问题的一些论文,其中有提到用蚁群算法和遗传算法的,但只有数学模型,不见其实现后运行结果的对比。不知用此类先进的算法来解决此问题的实际效果如何?有时间的话,拟将尝试一下。
既然一些先进的算法都存在随机的因素,何不直接来个随机碰运气呢?!基于此,找到一个解决思路:
1.在未加工的零件中随机的选取一个进行“切割”,直到料头短于未加工零件中最短的长度,生成一个切割方式。
2.对此切割方式进行评价,保留最佳的切割方式。
3.循环n次后,将此“最佳”的切割方式添加到方案中,直到完成所有零件的切割,生成一个切割方案。
4.对此切割方案进行评价,保留最佳方案。
5.循环m次,获得最佳方案。
就这么简单!!!
结果如何?呵呵,美不堪言呐。我试了下所能找到的数据,结果是出奇的理想,所得到的解都优于等于已知的最优解!运行速度与你所期望的解的质量有关,要求越高,自然速度就越慢,但测试的结果也令人满意,一般数据量(20~30种规格,200~500个零件),基本在10s内能获得“最优解”,像附件中的SM 798-56-3668的数据,获得此结果也仅需45s左右。
呵呵,老窖在这个问题上的探究,可是跑在您老前面了。
附件为四组数据的运行结果。
-----------------------------------------------
一维下料(运行结果).rar (435.99 KB, 下载次数: 676)

点评

SM 798-56-3668 这组数据真的逆天了。。。。。。  发表于 2012-9-19 01:17

TA的精华主题

TA的得分主题

发表于 2012-9-18 20:09 | 显示全部楼层
我有国外的专业版材优化软件,明天与你们的结果对比一下

TA的精华主题

TA的得分主题

发表于 2012-9-18 21:14 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
sunsoncheng 发表于 2012-9-18 20:09
我有国外的专业版材优化软件,明天与你们的结果对比一下

好极了!期盼有个标杆。
就一维、一种原料规格的下料,我的程序有信心与国外的专业版软件作比试。

TA的精华主题

TA的得分主题

发表于 2012-9-18 21:38 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-16 19:55 , Processed in 0.050221 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表