gpt4 book ai didi

algorithm - 这需要什么样的算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:17:52 25 4
gpt4 key购买 nike

我被要求帮一个 friend 做一个基本的 Material 计算器,但我不太确定这是什么算法,因为我只是随便写一些代码,我的数学技能可能远不及某些人这里的人 :) 这是我面临的问题......

我有多个盒子 (A),每个盒子包含特定的 Material 子集 (B)。这些 Material (B) 用于构建项目 (C)。一旦 Material (B) 从盒子 (A) 中取出,它们就必须被使用或丢弃。正在构建的项目 (C) 的要求有时会发生变化,因为此算法必须涵盖多个项目。

盒子 (A) 始终具有相同的 Material 子集 (B),并且这一点永远不会改变。

例子: Boxtype 1 包含 (32 mat1, 30 mat2, 24 mat3, 0 mat4) Boxtype 2 包含(1 mat1、22 mat2、13 mat3、55 mat4) Boxtype 3 包含 (55 mat1, 21 mat2, 1 mat3, 7 mat4)

我需要构建项目 foo5 - 它需要 4,311 mat1、700 mat2、443 mat3、321 mat4。需要多少箱子 (A) 才能以最少的浪费做到这一点。

我尝试四处搜索,但不知道它是哪种算法,我的搜索运气不佳。

编辑:回答一些问题也附上我对这篇文章的回复。是的,您可以选择每个盒子的倍数。订单完成后剩下的所有东西都被扔掉了。带有 Material 的盒子有成本,因此如果可能的话,在该级别进行优化会很好,但这是次要目标。抱歉,如果这不是很清楚,因为我对这部分有点陌生:)

最佳答案

整数规划。编写代码构造一个整数程序,如

Minimize
waste1 + waste2 + waste3 + waste4
Subject To
32 box1 + 1 box2 + 55 box3 - waste1 = 4311
30 box1 + 22 box2 + 21 box3 - waste2 = 700
24 box1 + 13 box2 + 1 box3 - waste3 = 443
0 box1 + 55 box2 + 7 box3 - waste4 = 321
Bounds
0 <= box1
0 <= box2
0 <= box3
0 <= waste1
0 <= waste2
0 <= waste3
0 <= waste4
Integer
box1 box2 box3
End

然后喂给你喜欢的integer program solver . (以上程序为CPLEX格式。)

关于algorithm - 这需要什么样的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41478551/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com