シンプルな最適化を行うアルゴリズムを設計する必要がありますが、「最小限の変更」機能を備えています。容量が 10 個のコンテナーが 3 つあり、その中に次のアイテムがあるとします。
Container 1: 2 3 3
Container 2: 4 4
Container 3: 1 5 1 1
すべてのコンテナは 8/10 まで満たされています。次に、サイズ 3 の次のアイテムを配置します。全体の空き容量は 6 ですが、空き容量が 3 のコンテナーはありません。ここで、最初のコンテナーのサイズ 2 のアイテムは別の場所に配置されるため、新しいアイテムをコンテナー 1 に配置できます。これは、このソリューションでは (コンテナー 3 の 2 つのアイテムを置き換えるのではなく) 変更が 1 つしか必要ないためです。したがって、必要な結果は次のようになります。
Container 1: 3 3 3(new item)
Container 2: 4 4 2(moved from Container 1)
Container 3: 1 5 1 1
私はすでにいくつかの調査を行いました.ナップザックの問題またはバディアルゴリズムのいずれかしか見つかりませんでしたが、これらが本当に私が探しているものであるかどうかはわかりません.
このアルゴリズムをできるだけシンプルに設計するのを手伝ってくれる人はいますか? 少量の大きなコンテナと大量のアイテムが含まれる状況を解決しているため、すべての可能性を列挙することは最適ではありません。
どうもありがとう!
更新私が何を求めているのかを明確にするために-1つの変更のみを行うことで状況を解決できるかどうかを判断することは問題ありません。問題は、「一手」が不可能な場合に、どのようにして最小限の代替品を見つけるかということです。