生産管理応用例

ある工場でA、B二つの作業係がある。この二つの作業係がP、P種類の製品を作っている。 A係は経験者がたくさんおるので作業率はB係より上回る。一時間P1製品10kg、P 製品8kgの生産能力がある。一方B係は新入社員が混じっているため、一時間P製品8kg、 P製品5kgしか生産能力がない。A、B二つの作業係とも一日八時間の正常勤務時間が規定される。 この勤務時間内作った各製品の利益は、製品Pが20円/kg、Pが10円/kgである。 また正常時間以外に必要があれば、各係とも一日四時間の残業が許される、残業時間内作った製品利益はPが15円/kg、 Pが7円/kg。少なくとも各作業係とも一日四時間以上働かなければならない。製品販売については、 現在の工場の生産能力を十分上回るだけの需要が見込まれている。

この工場の経営方針を目標重用度の順序にまとめると以下になる。

  1. 一日の利益を3500円にする。
  2. 製品はこれからの主力製品として売り出すことを考えており、潜在的市場は有望であると判断している。 そこで市場獲得のためにも、目標として一日75kg以上を生産したいと思っている。
  3. なるべく残業しないこと、もし残業しなければならない場合、A係に先に残業させる。

この工場の目標分析を目標計画法で表現すると下のようなモデルになる。

  まず変数の設定

<数学モデル>

 目的関数

 制約条件

 GLPS用インプット・データ

インプット・データの与え方はGLPS操作ガイドを参照していただきたい。 実際このモデルのインプット・データはGLPS(DLプログラム)よりの GLPS実行 → ファイル → Sample01 開く を経て、ファイルを開くことによって見ることができます。
実際このモデルのインプット・データは下のようになっています。
TITLE 生産管理応用モデル
MIN Y1-
MIN Y2-
MIN X23 + X24
MIN X13 + X14
ST
200X11 + 160X21 + 80X12 + 50X22 + 150X13 + 120X23 + 56X14 + 35X24 + Y1- - Y1+ = 3500
8X12 + 8X14 + 5X22 + 5X24 + Y2- - Y2+ = 75
4 <= X11 + X12 <= 8
4 <= X21 + X22 <= 8
0 <= X13 + X14 <= 4
0 <= X23 + X24 <= 4
END

 第一回計算結果

 @ 作業時間割り

 A 目標分析

 B モデルの修正

  1. 計算結果第一目標の利益目標は達成したけれど、第二目標の生産目標値はどうしても75kg以上を生産しなければならない、またA,B係とも毎日残業4時間の要求は明らかに適当ではない、これはすべて第一目標の利益目標値が3500円のせい。では、いったい利益をいくらに下げれば良いか?
  2. まず第二目標P2製品の生産目標値75kgの保証を得てから利益の追求は次の目標に考える、つまり第一目標と第二目標の優先順序を交換してモデルを修正する。

実際インプット・データの修正は次のようになる。(赤色部分)

TITLE 生産管理応用モデル
MIN Y2-
MIN Y1-
MIN X23 + X24
MIN X13 + X14
ST
200X11 + 160X21 + 80X12 + 50X22 + 150X13 + 120X23 + 56X14 + 35X24 + Y1- - Y1+ = 3500
8X12 + 8X14 + 5X22 + 5X24 + Y2- - Y2+ = 75
4 <= X11 + X12 <= 8
4 <= X21 + X22 <= 8
0 <= X13 + X14 <= 4
0 <= X23 + X24 <= 4
END

 第二回計算結果

 @ 作業時間割り

 A 目標分析

 B モデルの修正

    第二回計算結果P2製品の生産目標値は達成した。ただし利益は2939以上を要求するのは無理なこともわかった。A、B作業係とも相変わらず毎日4時間の残業が要求されているのはちょっと気になる。一応利益目標を2000まで下げて、もう一度計算して見ることにしよう

    実際インプット・データの修正は次のようになる。(赤色部分)

    TITLE 生産管理応用モデル
    MIN Y2-
    MIN Y1-
    MIN X23 + X24
    MIN X13 + X14
    ST
    200X11 + 160X21 + 80X12 + 50X22 + 150X13 + 120X23 + 56X14 + 35X24 + Y1- - Y1+ = 2000
    8X12 + 8X14 + 5X22 + 5X24 + Y2- - Y2+ = 75
    4 <= X11 + X12 <= 8
    4 <= X21 + X22 <= 8
    0 <= X13 + X14 <= 4
    0 <= X23 + X24 <= 4
    END

     第三回計算結果

     @ 作業時間割り

     A 目標分析

    今回の結果第四目標を除くすべての目標が予定通り達成された、A係の残業時間も最小限に留まり、実行可能だと思う。

    しかし連続変数の最適化計算の結果は残業時間は1.392になるのもやむを得ませんが、実際管理上勤務時間は1時間の整数単位が望ましいです。

    今度はGLPS正式版のGLPSを使って勤務時間の変数だけ(X11,X12,X13,X14,X21,X22,X23,X24)を整数変数に指定してもう一回実施最適化計算。

    実際インプット・データの修正は次のようになる。(赤色部分)

    TITLE 生産管理応用モデル
    MIN Y2-
    MIN Y1-
    MIN X23 + X24
    MIN X13 + X14
    ST
    200X11 + 160X21 + 80X12 + 50X22 + 150X13 + 120X23 + 56X14 + 35X24 + Y1- - Y1+ = 2000
    8X12 + 8X14 + 5X22 + 5X24 + Y2- - Y2+ = 75
    4 <= X11 + X12 <= 8
    4 <= X21 + X22 <= 8
    0 <= X13 + X14 <= 4
    0 <= X23 + X24 <= 4
    END
    GIN X11,X12,X13,X14,X21,X22,X23,X24
    追加部分(GIN)は整数変数指定のパラメータです

    正式版混合整数計算結果

     @ 作業時間割り
      X11 = 0    X12 = 8
      X13 = 1    X14 = 1
      X21 = 7    X22 = 1
      X23 = 0    X24 = 0

     A 目標分析
      第一目標 P2製品=77kg目標達成した。
      第二目標 利益=2016 目標達成した。
      第三目標 B係残業なし、目標達成した。
      第四目標 A係残業2時間。

    [ 最適化ソフトメンページへ]

    Copyright(C)1998 - 2008 M.Shiimori , All Rights Reserved.