--- lang: ja-jp breaks: true --- # `OR-Tools` 積み付けアルゴリズム 2022-12-31 ## ナップザック問題 https://developers.google.com/optimization/bin/knapsack 特定の値とサイズ(重さや体積など)を持つ多数のアイテムの中から、決まった容量をもつコンテナ/箱に収まる値の合計が最大となるアイテムの組み合わせを検出する事を目標とする。 ### 指定するパラメータ * long[] profits * アイテムの値を含むベクトル(配列)。 * values * 値(アイテムの数値) * long[,] weights * アイテムの重みを含むベクトル。 * アイテムの領域にほぼ比例する重み。 * long[] capacities * エントリが 1 つしかないベクトル(配列)。ナップザックの容量。 ## 複数のナップザック問題の解決 https://developers.google.com/optimization/bin/multiple_knapsack 多数のアイテムの中から、複数の容量の決まったコンテナ/箱のそれぞれに収まる最大値となる組み合わせを検出する事を目標とする。 :::info コンテナ/箱の容量はそれぞれ異なっていても良い。 ::: ## ビン パッキングの問題 https://developers.google.com/optimization/bin/bin_packing 複数のアイテム全てを収めることが出来る最小のコンテナ/箱を特定することを目標とする。 ###### tags: `OR-Tools` `積み付けアルゴリズム`