寻找一个对动态规划算法有研究的大佬,想付费请教个工作上遇到的复杂算法问题

2022-10-25 14:18:59 +08:00
 ceneri

大概是背包问题的衍生,背包问题是有 N 件物品和一个容量为 V 的背包。第 i 件物品的重量是 c[i],价值是 w[i]。求解将哪些物品装入背包可使价值总和最大。

我这边需求是有 N 件物品,每件物品对应不同的数量和大小,有 X 种类型的柜子,柜子可以多台组合,柜子里格口大小均可能不同,不同的柜子成本不同,计算能将所有物品装入柜子且机器成本最低的方案。

因为是工作上遇到的需求还需要结合业务场景讲解,会付费给大佬,给出思路即可,不求代码实现,麻烦有兴趣的大佬加下我微信:Q2VuZXJpaQ==

4438 次点击
所在节点    程序员
33 条回复
dwlovelife
2022-10-25 14:20:00 +08:00
是妹子么
nulIptr
2022-10-25 14:31:23 +08:00
抛个砖,如果是工业或是商业解决方案的话可能不是一个真正纯动态规划问题
古时候在老东家做简单的 aps ,就是有工单人员设备日历,自动排程的问题,看似是动态规划,但是限制条件太多了导致最后发现还是先找最大权重的条件暴力模拟简单。。。
ceneri
2022-10-25 14:35:47 +08:00
@dwlovelife 是的,JAVA 后端
zhaorunze
2022-10-25 14:39:01 +08:00
可以看看美团巨佬写的关于外卖配送的博客,不只是学习算法,还有别人整理的模型,对问题的定义都可以学习学习。

工程级别的算法,不只是要定义问题抽象模型解决问题,还要有仿真模型哦,不然你都没法证明你的算法是有效率的。
ceneri
2022-10-25 14:40:29 +08:00
@nulIptr 这点我也有感觉,这个需求也有一定的限制,我对算法的研究程度不深,所以想问下其他人能否用动态规划求解,如果没办法的话,用暴力求解那如何优化复杂度,这都是我想咨询的。
msg7086
2022-10-25 14:42:51 +08:00
光听需求,可能不是动规。
动规是要能做到局部最优解,然后往上挂状态转移方程。
这里假如已经用 x 个柜子装了 y 件物品,再装入一个新物品的时候,前一个局部解可能就不是最优解了。

比如 y 件物品正好塞满一个柜子,y+1 件商品变成一个柜子+一个小柜子,但是低成本方案可能是平均拆成两个中柜子。
paopjian
2022-10-25 14:56:53 +08:00
试试用 utools?https://developers.google.com/optimization/bin/bin_packing 有现成的解决方案
paopjian
2022-10-25 14:57:43 +08:00
@paopjian OR-Tools 说错了
qwertyzzz
2022-10-25 15:06:38 +08:00
还真有人在讨论算法 我先加微信再说 嘿嘿
zhoudaiyu
2022-10-25 15:12:26 +08:00
YVAN7123
2022-10-25 15:20:03 +08:00
@dwlovelife 你问到重点了 ~ 钱不钱不重要
dwlovelife
2022-10-25 15:31:49 +08:00
@YVAN7123 哈哈,帮兄弟们问的
xuqd
2022-10-25 15:32:52 +08:00
OptaPlanner, 这个好像可以处理复杂规划
dwlovelife
2022-10-25 15:36:46 +08:00
妹子给你推荐一个东西 叫规则引擎 这种业务代码 单纯的算法可以完成 但是代码耦合相当高 正常这种玩意如果是我做 我建议把规则放在存储层 然后指定规则模版 拿规则引擎去撞
aeron
2022-10-25 15:49:41 +08:00
去年做 APS 时研究过,最后扔给 ortools 算了
optional
2022-10-25 16:05:47 +08:00
这是个整数优化问题,上 ortools ,复杂的话再来点启发式算法
XSDo
2022-10-25 16:23:38 +08:00
动态规划的变种,如果看动态规划的算法是解决不了问题的,要做调整才行的
zhaorunze
2022-10-25 17:04:51 +08:00
@zhoudaiyu 是的,我感觉写的很好
MoYi123
2022-10-25 18:35:47 +08:00
十有八九是个 np 问题, 建议凭经验直接搞个启发式得了.
helloworld000
2022-10-25 18:50:52 +08:00
好奇问一下这种 hash 微信号怎么恢复成真正的号码?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/889685

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX