Presentation is loading. Please wait.

Presentation is loading. Please wait.

割り当て問題(assignment problem)

Similar presentations


Presentation on theme: "割り当て問題(assignment problem)"— Presentation transcript:

1 割り当て問題(assignment problem)
2019/8/2 割り当て問題(assignment problem)   n種類の資源(資材、人、設備など)を、   これと同数のn種類の用途(需要、仕事など)に一つずつ割り当て、 全体としての計画を最適化(最大化・最少化)する問題。   有効さ行列 ・・・ n×nの行列 ©ATSUTO NISHIO

2 解法の基本 ハンガリー法 有効さ行列において、損失などを最少にする問題の固有の解法。
   有効さ行列において、損失などを最少にする問題の固有の解法。    行列の各行、または各列に関して、任意の定数を引いても、各行、各列の値の関係は変わらず、適当な割り当て方も変わらない。 ©ATSUTO NISHIO

3 最小化問題の手順 ① 各行の最小値を各行のそれぞれの数値から引く。 ② 各列の最小値を各列のそれぞれの数値から引く。
          → 各行、各列に少なくとも1個の0が存在する。 ③ 出来る限り少ない本数の直線で全ての0を引く。 ④ 列(行)の数(n)=直線の本数ならば、最適割り当てを求める。 ⑤ 列(行)の数(n)≠直線の本数ならば、修正行列をつくる。   直線の引かれていない数値の中の最小値(α)とすると、   ・直線の引かれていない全ての値からαを引く。   ・直線が交差している数値にはαを加える。   ・その他の数値はそのまま。 ⑥ ③~⑤を、最適割り当てが見つかるまで繰り返す。 ©ATSUTO NISHIO

4 最大化問題の手順 最小化問題に直してから解く。 最大化問題 → 最小化問題 ① 有効さ行列の数値の中の最大値(β)を見つける。
  ① 有効さ行列の数値の中の最大値(β)を見つける。   ② 有効さ行列の各数値をβから引く。   ③ 最小化問題を解く。 ©ATSUTO NISHIO

5 m×nの割り当て問題 ダミー(dummy)の行(あるいは列)を加えて、 n×nの有効さ行列にする。
ダミー行(あるいは列)に割り当てがあった場合は、その割り当ては無視する。 ©ATSUTO NISHIO

6 最小化問題の例 3人の作業員を3種類の仕事に就業させる。
  3人の作業員を3種類の仕事に就業させる。   作業員の各仕事に対する作業時間は表の通りである。総作業時間を最少にするような割り当てを考えよ。 仕事 作業員 X11 X12 X13 X21 X22 X23 X31 X32 X33 ©ATSUTO NISHIO

7 最大化問題の例 3人の営業マンを3地域に営業に出す。
  3人の営業マンを3地域に営業に出す。   各営業マンの各地域に対する過去の成果は表の通りである。3人の成果合計を最大にするような割り当てを考えよ。 地域 営業マン X11 X12 X13 X21 X22 X23 X31 X32 X33 ©ATSUTO NISHIO

8 LPの割り当て問題への適用 割り当て問題はLPで解くことも出来る。 3×3の最小化問題の場合 A : a11+a12+a13=1
    A  : a11+a12+a13=1     B  : a21+a22+a23=1     C  : a31+a32+a33=1     Ⅰ : a11+a21+a31=1     Ⅱ : a12+a22+a32=1     Ⅲ : a13+a23+a33=1     aij は 0 or 1 (割り当てがあれば1、割り当てがなければ0)  a11X11+a12X12+a13X13+a21X21+a22X22+a23X23+a31X31+a32X32+a33X33=Z  Zを最少にするような aij を求める。 ©ATSUTO NISHIO


Download ppt "割り当て問題(assignment problem)"

Similar presentations


Ads by Google