前回はソルバーの解答を整数で指定する方法を解説しました
今回は違う指定方法を解説します
プロジェクトなどで人をアサインする場合、前回のような”整数”で指定してシミュレーションを行うとどうなるでしょうか?
シミュレーションする内容はプロジェクトを組成する際に、目安にする予算金額に応じて参加メンバーを決める場合です
詳細な条件は以下です
・目安は4百万円
・人数は5人(2人は決定済み)
・候補者の単価はそれぞれ違う
前回の整数指定で行うとこんな結果になります

鈴木さんが2人アサインされてしまっています
これではシミュレーションとして成り立ちません
では、具体的な解説に入りましょう
1.条件に応じて数式を設定する
・人数の指定:=SUM(F5:F14)

・人件費の計算:=SUMPRODUCT(E5:E14,F5:F14)

・差額の計算:=(G15-G16)^2

2.ソルバーに目的セルと変数セルを設定する

3.ソルバーに制約条件を設定する
まずは5人という条件を設定します

では次にどうしたらいいでしょうか?
こんな時には整数ではなくバイナリで制約条件を指定します
つまり1(アサイン有)か0(アサイン無)で解答が出るようにします

”bin”を指定すれば”バイナリ”が自動的にセットされます
では解答を計算しましょう

これできっちりとした解答が出ました!

最後に今回のポイントですが、以下の2点です
➀人件費のシミュレーションなどで有無(1か0)で解答が必要になるケースがある
②①のケースのように有無でシミュレーションの解答が必要な場合にはソルバーの制約条件をバイナリで指定する
今回は以上です
次回からはソルバーをマクロで自動で動かす方法を解説します


コメントを残す