(57)【特許請求の範囲】
【請求項１】
物品の個数を前記物品の種類ごとに受け付け、
前記受け付けた物品の個数に基づいて、減算値を前記物品の種類ごとに算出し、
前記算出した減算値に基づいて、各物品に共通の初期値を算出し、
初回処理として、
前記初期値から前記減算値を減算した結果である判定値を前記物品の種類ごとに算出し、
前記判定値が最小となる前記物品の種類を作業対象として決定し、
次回処理として、
前記初回処理又は直前の次回処理において作業対象として決定した物品の種類の判定値に対して前記初期値を加算し、
前記加算後の判定値及び前記作業対象として決定した物品の種類以外の物品の種類の判定値から前記減算値を減算した結果である判定値を前記物品の種類ごとに算出し、
前記加算後の判定値及び前記作業対象として決定した物品の種類以外の物品の種類の判定値から前記減算値を減算した結果である判定値が最小となる前記物品の種類を作業対象として決定し、
前記初回処理の終了後、前記次回処理を所定の回数だけ繰り返す制御部と、
前記決定した作業対象を前記初回処理及び前記次回処理の順序に関連付けて格納する記憶部と、
を備えることを特徴とする作業順序計画装置。
【請求項２】
前記制御部は、
前記順序のうち、変更を要する作業対象に関連付けられた順序を受け付け、
前記受け付けた順序の前記初回処理又は前記次回処理を起点として、前記受け付けた順序以降の前記初回処理又は前記次回処理を繰り返すこと、
を特徴とする請求項１に記載の作業順序計画装置。
【請求項３】
前記制御部は、
前記判定値が最小となる前記物品の種類が複数存在する場合は、
所定の優先順位に基づき、前記作業対象を１つ決定すること、
を特徴とする請求項２に記載の作業順序計画装置。
【請求項４】
前記制御部は、
前記物品の種類ごとの前記物品の個数が前記物品の総数に占める百分率に基づいて、前記減算値を算出すること、
を特徴とする請求項３に記載の作業順序計画装置。
【請求項５】
前記制御部は、
前記物品の種類ごとに算出した減算値の合計値を前記初期値とすること、
を特徴とする請求項４に記載の作業順序計画装置。
【請求項６】
前記制御部は、
変更後の前記減算値又は変更後の前記初期値を受け付け、
前記受け付けた変更後の前記減算値又は変更後の前記初期値に基づき、前記初回処理又は前記次回処理を実行すること、
を特徴とする請求項５に記載の作業順序計画装置。
【請求項７】
前記制御部は、
前記決定した作業対象を前記順序に関連付けて表示すること、
を特徴とする請求項６に記載の作業順序計画装置。
【請求項８】
前記制御部は、
前記算出した判定値を前記順序に関連付けて表示すること、
を特徴とする請求項７に記載の作業順序計画装置。
【請求項９】
前記制御部は、
前記変更を要する作業対象に関連付けられた順序を受け付けた後に決定した作業対象、及び、前記変更を要する作業対象に関連付けられた順序を受け付ける前に決定した作業対象を前記順序ごとに表示すること、
を特徴とする請求項８に記載の作業順序計画装置。
【請求項１０】
制御部は、
物品の個数を前記物品の種類ごとに受け付け、
前記受け付けた物品の個数に基づいて、減算値を前記物品の種類ごとに算出し、
前記算出した減算値に基づいて、各物品に共通の初期値を算出し、
初回処理として、
前記初期値から前記減算値を減算した結果である判定値を前記物品の種類ごとに算出し、
前記判定値が最小となる前記物品の種類を作業対象として決定し、
次回処理として、
前記初回処理又は直前の次回処理において作業対象として決定した物品の種類の判定値に対して前記初期値を加算し、
前記加算後の判定値及び前記作業対象として決定した物品の種類以外の物品の種類の判定値から前記減算値を減算した結果である判定値を前記物品の種類ごとに算出し、
前記加算後の判定値及び前記作業対象として決定した物品の種類以外の物品の種類の判定値から前記減算値を減算した結果である判定値が最小となる前記物品の種類を作業対象として決定し、
前記初回処理の終了後、前記次回処理を所定の回数だけ繰り返し、
記憶部は、
前記決定した作業対象を前記初回処理及び前記次回処理の順序に関連付けて格納すること、
を特徴とする、前記制御部及び前記記憶部を備える作業順序計画装置の作業順序計画方法。
【請求項１１】
作業順序計画装置の制御部に対して、
物品の個数を前記物品の種類ごとに受け付け、
前記受け付けた物品の個数に基づいて、減算値を前記物品の種類ごとに算出し、
前記算出した減算値に基づいて、各物品に共通の初期値を算出し、
初回処理として、
前記初期値から前記減算値を減算した結果である判定値を前記物品の種類ごとに算出し、
前記判定値が最小となる前記物品の種類を作業対象として決定し、
次回処理として、
前記初回処理又は直前の次回処理において作業対象として決定した物品の種類の判定値に対して前記初期値を加算し、
前記加算後の判定値及び前記作業対象として決定した物品の種類以外の物品の種類の判定値から前記減算値を減算した結果である判定値を前記物品の種類ごとに算出し、
前記加算後の判定値及び前記作業対象として決定した物品の種類以外の物品の種類の判定値から前記減算値を減算した結果である判定値が最小となる前記物品の種類を作業対象として決定し、
前記初回処理の終了後、前記次回処理を所定の回数だけ繰り返す処理を実行させ、
前記作業順序計画装置の記憶部に対して、
前記決定した作業対象を前記初回処理及び前記次回処理の順序に関連付けて格納する処理を実行させること、
を特徴とする前記作業順序計画装置を機能させるための作業順序計画プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、作業順序計画装置、作業順序計画方法及び作業順序計画プログラムに関する。
【背景技術】
【０００２】
自動車等の車体は、多くの部品から構成され、組み立て等の工程の数も多い。ある１つの工程の例として、バンパ（緩衝器）を塗装する作業を想定する。例えば、異なる車体の種類のバンパが、１個ずつ作業場に搬出される。すると、工員がバンパに対して塗装を行う。他の例では、異なる車体の種類のバンパが一列になって次々に作業場に流れてくる。すると、産業ロボットが、その流れに対して、車体の種類ごとに異なる仕様で塗装を行う。このとき、複数の車体の種類のバンパを、どのような順序で作業場に搬出するか又は流すかが問題となる。なぜならば、作業順序によっては、作業効率に大きな差が生じるからである。そこで、近時、生産拠点における作業順序をコンピュータで計画することが盛んに行われている。
【０００３】
特許文献１は、“ＰＢＳ(ペインテッド・ボディー・ストレージ）用搬出車体決定方法”を開示している。特許文献１の図２に注目すると、車体の種類ごとに複数本並列にならんだ貯留レーンのいずれかから、車体が１台ずつトリムバッファに搬出される。このとき、当該搬出車体決定方法は、どの種類の車体をどのような順序で搬出するかという搬出順序を“ターリー計算”によって計画する。ターリー計算の詳細については後記するが、ここでは、その決定方法の要点を説明する。
【０００４】
当該搬出車体決定方法は、（i）車体の種類ごとの個数を総数で除算し、車体の種類ごとの出現確率を求める。例えば、車体の種類が３種類（Ａ、Ｂ及びＣ）存在し、Ａの出現確率が“０.２”であり、Ｂの出現確率が“０.３”であり、Ｃの出現確率が“０.５”であるとする。（ii）当該搬出車体決定方法は、３つの種類に共通の初期値を“０.０”に設定し、その初期値に対して、それぞれの出現確率“０.２”、“０.３”及び“０.５”を加算していく。このようにすると、ｎ回目の加算において、加算された値が車体の種類ごとに算出される。この加算された値を“判定値”と呼ぶ。
【０００５】
（iii）そして、例えばｎ回目の加算によって、Ｃの判定値が“１.０”に達した場合、Ｃを搬出するものとする。複数の車体の種類の判定値が“１.０”に達した場合、複数の車体を一度に搬出するものとする。さらに、いずれの車体の種類の判定値も“１.０”に達しない場合、搬出する車体は“なし”とする。（iv）このような処理を繰り返すと、“（なし，Ｃ，なし，Ｂ及びＣ，Ａ，・・・）”という順列型式の作業順序が得られる。この例では、１０回目の加算までに、Ａが２回搬出され、Ｂが３回搬出され、Ｃが５回搬出されることになり、これらの比率は、出現確率に一致している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１１−３４８８５０号公報（段落００１８〜２０、図２）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
実際の現場においては、作業に必要な原材料等の備蓄状態、工員の出勤状態、産業ロボットの利用可能性等の諸条件が日常的に変化する。よって、出現確率を基準にするターリー計算によって計画されていた作業順序を、ユーザ（工場管理者）が手動で変更しなければならない場合が頻繁に生じる。
【０００８】
例えば、車体の種類Ａに対する作業を後回しにしてＣの作業を先に行わなければならない事情が発生したとする。つまり、ユーザは、“ｍ”回目に搬出されるべき車体の種類をＡからＣに変更したい。そのためには、“ｍ”回目のＡの判定値を“ｘ”だけ減少させて、その代わりにＣの判定値を“ｙ”だけ増加させればよい”と考える。しかしながら、ユーザがこのような判断及び実際の操作を直感的に行うことは非常に困難である。なぜならば、前記の“（なし，Ｃ，なし，Ｂ及びＣ，Ａ，・・・）”に再度注目すると、ｎ回目に対応する車体の種類がない場合、及び、複数存在する場合がある。つまり、ｎ回目と車体の種類とが１対１に対応していないからである。
そこで、本発明は、ユーザが直感的に変更しやすい作業順序を作成することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の作業順序計画装置は、物品の個数を物品の種類ごとに受け付け、受け付けた物品の個数に基づいて、減算値を物品の種類ごとに算出し、算出した減算値に基づいて、各物品に共通の初期値を算出し、初回処理として、初期値から減算値を減算した結果である判定値を物品の種類ごとに算出し、判定値が最小となる物品の種類を作業対象として決定し、次回処理として、初回処理又は直前の次回処理において作業対象として決定した物品の種類の判定値に対して初期値を加算し、加算後の判定値及び作業対象として決定した物品の種類以外の物品の種類の判定値から減算値を減算した結果である判定値を物品の種類ごとに算出し、加算後の判定値及び作業対象として決定した物品の種類以外の物品の種類の判定値から減算値を減算した結果である判定値が最小となる物品の種類を作業対象として決定し、初回処理の終了後、次回処理を所定の回数だけ繰り返す制御部と、決定した作業対象を初回処理及び次回処理の順序に関連付けて格納する記憶部と、を備える。
その他の手段については、発明を実施するための形態のなかで説明する。
【発明の効果】
【００１０】
本発明によれば、ユーザが直感的に変更しやすい作業順序を作成することが可能になる。
【図面の簡単な説明】
【００１１】
【図１】作業内容を説明する図である。
【図２】既存技術における作業予定表を説明する図である。
【図３】本実施形態における作業予定表を説明する図である。
【図４】作業内容の他の例を説明する図である。
【図５】（ａ）は、既存技術における出現確率の一例である。（ｂ）、（ｃ）及び（ｄ）は、既存技術における判定値推移表の一例である。
【図６】（ａ）は、本実施形態における減算値の一例である。（ｂ）及び（ｃ）は、本実施形態における判定値推移表の一例である。
【図７】作業順序計画装置の構成を説明する図である。
【図８】作業順序作成処理手順のフローチャートである。
【図９】作業順序再作成処理手順のフローチャートである。
【発明を実施するための形態】
【００１２】
以降、本発明を実施するための形態（“本実施形態”という）を、図等を参照しながら詳細に説明する。本実施形態は、車体に取り付けるバンパを塗装する作業に本発明を適用する例である。もちろん、本発明を他の作業に適用することも可能であるし、車体関連物品以外の物品に対する作業に適用することも可能である。
【００１３】
（作業内容の例）
図１に沿って、作業内容を説明する。未塗装スペースに、１０個のバンパが仮置きされている。これらのバンパは、ある１日において塗装を完了するべきバンパである。バンパの種類は、車体Ａ用のバンパＡ（図１では“バＡ”と略して記載、他のバンパも同様）、車体Ｂ用のバンパＢ及び車体Ｃ用のバンパＣの３種類である。
作業順序１において、未塗装スペースに仮置きされているバンパのうち１個が、作業対象として作業場に搬出される。ここでは、例えば “バンパＣ”が搬出される。すると、工員（図示せず）は、作業場においてバンパＣに対し所定の塗装を施す。その後、塗装済のバンパは、塗装済スペースに移動される。
【００１４】
時間が経過し、作業順序２において、未塗装スペースに仮置きされているバンパのうち１個が、作業対象として作業場に搬出される。ここでは、例えば“バンパＢ”が搬出される。すると、工員は、作業場においてバンパＢに対し所定の塗装を施す。その後、塗装済のバンパは、塗装済スペースに移動される。同様に、さらに時間が経過し、作業順序３においてはバンパＡが、その後、作業順序４においてはバンパＣが作業場において塗装される。当然のことながら、バンパの種類によって、塗装の仕様は異なる。よって、作業場で作業する工員の技能、使用される塗料、塗装の方法、作業時間等の作業内容は、バンパの種類ごとに異なる。
【００１５】
図１では、バンパＡに対して３０分の作業時間、バンパＢに対して４０分の作業時間、バンパＣに対して４５分の作業時間が割り当てられている。ここでは、わかり易さを優先して、作業時間を長めに設定している。実際には、最新鋭の生産現場においては、作業時間はこの例よりも遥かに短い。
【００１６】
図１は、ターリー計算によって、（Ｃ，Ｂ，Ａ，Ｃ，・・・）という作業順序が作成された場合に対応している。この作業順序に含まれるＣ，Ｂ，Ａ，Ｃ，・・・のそれぞれは、一見、 “ｎ回目”の出現確率の加算に関連付けられているように見える。しかしながらそうではない。前記したように、ターリー計算においては、ｎ回目の加算によって、あるバンパの種類の判定値が“１.０”に達した場合、当該種類のバンパを搬出する。
【００１７】
逆にいえば、ｎ回目の加算によって、いずれのバンパの種類の判定値も“１.０”に達しない場合、搬出するべきバンパの種類は決定されない。さらに、ｎ回目の加算によって、複数のバンパの種類の判定値が“１.０”に達した場合、搬出するべきバンパの種類が２つ決定されることになる。つまり、（Ｃ，Ｂ，Ａ，Ｃ，・・・）という作業順序の各成分は、“ｎ回目”の加算の結果という位置座標的な番号に１対１に関連付けられているのではなく、単に、搬出するべきバンパの種類として出力された結果を、出力された順で並べたものに過ぎない。
【００１８】
（Ｃ，Ｂ，Ａ，Ｃ，・・・）という作業順序の各成分が、偶然“ｎ回目”に１対１に関連付けられている場合もある。前記から明らかなように、ｎ回目の出現確率の加算の際に、搬出するべき唯一のバンパの種類が決定されれば、（Ｃ，Ｂ，Ａ，Ｃ，・・・）という作業順序の各成分は、“ｎ回目”に１対１に関連付けられることになる。しかしながら、この結果はあくまでも偶然の所産である。
【００１９】
以降、“ｎ回目”と“バンパの種類”とが１対１に対応している計算結果を “理想型”と呼ぶことがある。一般にターリー計算は、各種のバンパがほぼ同時に未塗装スペースからなくなることを担保する。さらに理想型は、“ｎ回目”と“バンパの種類”が１対１に対応しているので、ユーザによる作業順序の事後変更が行いやすいという特徴も備える（詳細後記）。このような“理想型”の作業順序を必ず決定できるのが本発明の特徴である。
【００２０】
以降では、まず、作業順序を作成・変更することが具体的にどのようなことであるかを、“作業予定表”の例で説明する。次いで、本発明の特徴をさらに明確にするために、作業内容の他の例をもう１つ説明する。その後、実際に作業順序計画装置１（後記の図７参照）が作業順序を作成・変更する処理を“判定値推移表”の例で説明する。
【００２１】
（作業予定表）
図２に沿って、既存技術における作業予定表を説明する。図２の作業予定表５１は、公知のターリー計算により作成された作業順序を示している。作業工程表５１は、１０月３０日の作業予定を示しており、例えば前日夜間のバッチ処理にて作成される。作業予定表５１には、作業順序欄５２に記載された作業順序に関連付けて、作業時間帯欄５３には作業時間帯が、作業対象欄５４には作業対象となるバンパの種類が記載されている。
【００２２】
作業予定表５１は、前記した“（なし，Ｃ，なし，Ｂ及びＣ，Ａ，・・・）”に対応している。つまり、作業順序欄５２の作業順序は、“ｎ回目の出現確率の加算”に対応し、作業対象欄５４の作業対象は、作業場に搬出されるべきものとして決定された“バンパの種類”に対応している。作業時間帯欄５３の作業時間には、その作業順序において作業対象が発生する場合に限り、作業時間（開始時刻と終了時刻）が記載されている。
【００２３】
当該作業順序は、以下の通り、理想型ではない。
・作業順序１、３及び９において、作業対象が記載されていない。よって“遊び時間”が発生してしまい、ユーザは、これらの作業順序に、何らかの作業対象を設定する必要が生じる。もちろん“遊び時間”の作業順序に、次の作業順序のバンパに対する作業を前倒しで当てはめればよいことには違いない。しかしながら、出力結果に対して何らかの加工（手作業）が必要になる。
・作業順序４及び１０において、複数の作業対象が重複して記載されている。よって、作業場の広さに余裕がない場合、ユーザは、これらの作業順序において、いずれか１個の作業対象を選択する必要がある。やはり、出力結果に対して何らかの加工（手作業）が必要になる。
【００２４】
そこで、ユーザは、１０月３０日の朝、作業予定表５１を作業予定表６１に変更する。変更点は、以下の通りである。
・作業順序１、３及び９において、作業対象としてそれぞれ、例えばバンパＣ、バンパＣ及びバンパＢを記載する。
・作業順序４及び１０において、唯一の作業対象としてそれぞれ、例えばバンパＣ及びバンパＡを選択する。
これで一応は、すべての作業順序に対して１つのバンパの種類が対応する理想型が完成することになる。そして、作業順序１〜１０において、バンパＡ、バンパＢ及びバンパＣの出現回数が、それぞれ、２回、３回及び５回となっている。しかしながら、実際にはユーザが試行錯誤することなくこのような理想型に変更することは難しい。
【００２５】
作業予定表６１に変更した後、例えば、１６：３０頃に、“バンパＡ用の塗料が切れ、塗料メーカに緊急発注したが、現場に届くのに６０分かかる“ということが判明したとする。そこで、ユーザは、作業予定表６１を作業予定表７１に変更する。変更点は、以下の通りである。
・作業順序８において、作業対象をパンパＡからバンパＢに変更する。
・作業順序９において、作業対象をパンパＢからバンパＡに変更する。
【００２６】
今度は、図３に沿って、本実施形態における作業予定表を説明する。図３の作業予定表８１は、本実施形態の改良ターリー計算により作成された作業順序を示している。作業工程表８１は、１０月３０日の作業予定を示しており、例えば前日夜間のバッチ処理にて作成される。作業予定表８１においては、作業順序欄５２の作業順序（１，２，・・・，１０）と作業対象欄５４の作業対象（バンパの種類）とが１対１に対応している。したがって、図２における作業予定表５１から作業予定表６１への変更のような処理は不要である。
【００２７】
例えば、１０：３０頃に、“バンパＡ用の塗料が切れ、塗料メーカに緊急発注したが、現場に届くのに６０分かかる”ということが判明したとする。そこで、ユーザは、作業予定表８１を作業予定表９１に変更する。変更点は、“作業順序３において、作業対象をパンパＡからバンパＣに変更する”である。
すると、作業順序計画装置１が、作業順序４〜１０における作業対象を変更する。作業予定表８１及び作業予定表９１の作業順序１〜１０において、作業対象のバンパＡ、バンパＢ及びバンパＣの出現回数が、それぞれ、２回、３回及び５回となっている。
【００２８】
（作業内容の他の例）
図４に沿って、作業内容の他の例を説明する。当該例は、既存技術の問題点及び本実施形態の効果をより明確にする。複数のバンパＡ（図４では“Ａ”と略して記載、他のバンパも同様）、複数のバンパＢ及び複数のバンパＣが未塗装スペースに３列に並べられている。各バンパの個数は任意であるが、個数の比率は、Ａ：Ｂ：Ｃ＝２：３：５であるとする。バンパＡ、バンパＢ又はバンパＣが未塗装スペースから１つずつ、編成ヤードに搬出される。編成ヤードに搬出されたバンパは、左側から順に、あたかも列車のように１行に並べられる。
【００２９】
この列車のような一群のバンパを“編成”と呼ぶ。編成は、１０個のバンパごとにまとめられ、一種の産業ロボットである“塗装プラットフォーム”にベルトコンベアで運搬される。塗装プラットフォームの左右の長さは、編成の長さに等しい。そして、編成の前端（左端）の位置が塗装プラットフォームの左端の位置に揃った時点で、編成は停止する。図４では、“編成”は、編成ヤードを出発した後塗装プラットフォームに停止している。編成を作成するに際して、作業順序計画装置１は、編成ヤードに対して、[Ｃ，Ｂ，Ｃ，Ａ，Ｃ，Ｂ，Ｃ，Ａ，Ｂ，Ｃ]という編成指示を送信している。
【００３０】
塗装プラットフォームは、バンパに対して塗料を噴霧する板状の１０枚のパッケージＰ１〜Ｐ１０が左右方向に１０枚重なった構造を有する。各パッケージＰ１〜Ｐ１０は、上から下に向かって、バンパＡ用の塗料を噴霧するノズルＡ、バンパＢ用の塗料を噴霧するノズルＢ、及び、バンパＣ用の塗料を噴霧するノズルＣを有している。各パッケージの左右方法の位置は固定されている。
【００３１】
しかしながら、塗装プラットフォームは、各パッケージを上下方向に３段階にスライドさせることによって、いずれかのノズルを塗装レベルにあわせる。１０両連結の各編成の左（先頭）から１番目〜１０番目のバンパの塗装プラットフォームでの左右の位置は、それぞれ、パッケージＰ１〜Ｐ１０のノズルの左右の位置に一致している。塗装レベルにあるノズルに信号が送られると、各バンパに対応する塗料がバンパに対して噴霧され、１０個のバンパが同時に塗装される。
【００３２】
編成を塗装するに際して、作業順序計画装置１は、塗装プラットフォームに対して、〈Ｃ，Ｂ，Ｃ，Ａ，Ｃ，Ｂ，Ｃ，Ａ，Ｂ，Ｃ〉という塗装指示を送信している。この塗装指示は、当然のことながら、編成指示[Ｃ，Ｂ，Ｃ，Ａ，Ｃ，Ｂ，Ｃ，Ａ，Ｂ，Ｃ]に対応している。塗装プラットフォームが正常に機能している限り、作業順序計画装置１は、前記のような、バンパの種類の順列だけを示した編成指示及び塗装指示を送信すれば十分である。
【００３３】
いま、作業順序計画装置１は、次の編成（図示せず）のための編成指示[Ｃ，Ｃ，Ｂ，Ａ，Ｃ，Ｂ，Ｃ，Ａ，Ｂ，Ｃ]及び塗装指示〈Ｃ，Ｃ，Ｂ，Ａ，Ｃ，Ｂ，Ｃ，Ａ，Ｂ，Ｃ〉を作成し終わっている（故障前）。しかしながら、作業順序計画装置１は、これらの指示を、編成ヤード及び塗装プラットフォームには未だ送信していない。この段落で、塗装プラットフォームの左から４番目のパッケージＰ４が故障し、ノズルＡが塗料を噴霧できなくなったことが判明したとする。この事態に対処するために、作業順序計画装置１は、変更後の編成指示[Ｃ，Ｃ，Ｂ，Ｂ♭，Ｃ♭，Ａ♭，Ｃ♭，Ａ♭，Ｂ♭，Ｃ♭]及び変更後の塗装指示〈Ｃ，Ｃ，Ｂ，Ｂ♭，Ｃ♭，Ａ♭，Ｃ♭，Ａ♭，Ｂ♭，Ｃ♭〉を、それぞれ編成ヤード及び塗装プラットフォームに送信しなければならない（故障後）。右肩の“♭”は“変更後”を意味する。なお、ここでの変更後の編成指示及び変更後の塗装指示は、その左から４番目が“Ａ”以外であるものであればどのようなものでもよい。
【００３４】
そこで、既存の技術において、パッケージＰ４の故障という事態に対応しなければならないユーザは、変更前の編成指示及び変更前の塗装指示を見て、まず、左から４番目（“４回目” の出現確率の加算を意味しない）の“Ａ”を探し当てる。次いで、その“Ａ”が搬出されるべきであると決定された処理において、代替的に例えば“Ｂ”が搬出されるようにするために、“Ｂ”の判定値を手動で増加させる。仮にユーザが、正しくは左から４番目であるところを、誤って左から８番目の“Ａ”を探し当て、その“Ａ”が搬出されるべきであると決定された処理における“Ｂ”の判定値を手動で増加させてしまうと、不良品が発生する。つまり、左から４番目のパッケージＰ４のノズルＡが故障していることに起因して、左から４番目のバンパＡが全く塗装されない。
【００３５】
このような誤りは、編成指示及び塗装指示がバンパの種類を単純に並べただけの構成になっていることに起因する。例えば、塗装指示が、〈１；Ｃ，２；Ｃ，３；Ｂ，４；Ａ，５；Ｃ，６；Ｂ，７；Ｃ，８；Ａ，９；Ｂ，１０；Ｃ〉のように、パッケージの左からの位置（座標値）にバンパの種類を１対１に関連付ける構成になっていれば、ユーザは間違いなく“４；Ａ”を探し当てることができる。
【００３６】
（作業順序と処理順序）
ここまで説明してきた“作業順序”という語は、もっぱら作業場で作業を行う工員又は産業ロボットの立場から見た順序であるともいえる。工員等は、作業順序作成装置１がどのような情報処理を行っているかには関心がない。そこで、新たに“処理順序”という語を導入する。
【００３７】
処理順序とは、判定値に対する出現確率の加算（既存技術）、又は、判定値からの減算値の減算（本実施形態、詳細後記）という繰り返し処理を実行する作業順序作成装置１が情報処理の観点から見た順序である。端的にいえば、処理順序とは、繰り返し処理の回数を始めからカウントした順番である。つまり、作業順序計画装置１は、１つの“処理順序”に関連付けて、１つのバンパの種類（作業対象）を決定し、それをそのまま“作業順序”としても採用することによって問題を解決する。なお、“作業順序作成装置”という名称は、工員又は産業ロボットの立場から採用されている。そして、請求項における“処理の順序”及び“前記順序”がここでの“処理順序”に相当する。
【００３８】
（判定値推移表）
図５に沿って、既存技術における出現確率及び判定値推移表を説明する。図５（ａ）は、バンパの種類に関連付けて出現確率を記憶している。ある作業期間（例えば１日）に作業を終了しなければならないバンパが全部で１０個あるとする。そして、その内訳は、バンパＡが２個であり、バンパＢが３個であり、バンパＣが５個であるとする。すると、バンパＡの出現確率は０.２（＝２／１０）となり、バンパＢの出現確率は０.３（＝３／１０）となり、バンパＣの出現確率は０.５（＝５／１０）となる。
【００３９】
図５（ｂ）は、バッチ処理によって作成された判定値推移表１０１であり、図２の作業予定表５１に対応する。判定値推移表１０１の横軸のうち、“ｎ回目”と“ｎ＋１回目”の間の“−１.０”（詳細後記）以外は、出現確率の加算回数（何回目であるか）である。この意味で、横軸は、前記した“処理順序”である。しかしながら、当該“処理順序”に対して常に１つのバンパの種類が対応しているとは限らない。したがって、作業予定表５１等において、ユーザの手作業による変更が必要となる。縦軸は、バンパの種類及び選択結果である。選択結果とは、図１において、未塗装スペースから作業場へ搬出されるバンパの種類である。縦軸と横軸の交点に判定値が記憶される。
【００４０】
作業順序計画装置１は、以下の処理を行う（図５（ｂ）参照）。
（１回目）各バンパの初期値に対して、各バンパの出現確率を加算し、１回目の各バンパの判定値とする。各バンパの初期値は、いずれも“０.０”である。よって、１回目のバンパＡの判定値は“０.２”となり、１回目のバンパＢの判定値は“０.３”となり、１回目のバンパＣの判定値は“０.５”となる。３つの判定値のいずれもが“１.０”に達していない。よって、“１回目のすぐ右の−１.０”の列を飛ばして２回目に進む。
【００４１】
（２回目）１回目の各バンパの判定値に対して、各バンパの出現確率を加算し、２回目の各バンパの判定値とする。すると、２回目のバンパＡの判定値は“０.４”となり、２回目のバンパＢの判定値は“０.６”となり、２回目のバンパＣの判定値は“１.０”となる。２回目のバンパＣの判定値は、“１.０”に達している。そこで、バンパＣを搬出すべきバンパとして選択する。なお、選択されたバンパの判定値に網掛けを施している（以下同じ）。
【００４２】
さらに、“２回目のすぐ右の−１.０”の列に進み、当該列に各バンパの判定値を記憶する。このとき、２回目において選択されたバンパＣの判定値については、２回目のバンパＣの判定値“１.０”から“１.０”（各バンパの出現確率の和）を減算した値“０.０”を記憶する。選択されていないバンパＡ及びバンパＢの判定値については、２回目の判定値をそのまま記憶する。よって、“２回目のすぐ右の−１.０”の列においては、バンパＡの判定値は“０.４”のままであり、バンパＢの判定値も“０.６”のままであり、バンパＣの判定値は“０.０”となっている。
【００４３】
（３回目）“２回目のすぐ右の−１.０”の列における各バンパの判定値に対して、各バンパの出現確率を加算し、３回目の各バンパの判定値とする。すると、３回目のバンパＡの判定値は“０.６”となり、３回目のバンパＢの判定値は“０.９”となり、３回目のバンパＣの判定値は“０.５”となる。３つの判定値のいずれもが“１.０”に達していない。よって、“３回目のすぐ右の−１.０”の列を飛ばして４回目に進む。
【００４４】
（４回目）３回目の各バンパの判定値に対して、各バンパの出現確率を加算し、４回目の各バンパの判定値とする。すると、４回目のバンパＡの判定値は“０.８”となり、４回目のバンパＢの判定値は“１.２”となり、４回目のバンパＣの判定値は“１.０”となる。４回目のバンパＢの判定値及び４回目のバンパＣの判定値は、“１.０”に達して（超えて）いる。そこで、バンパＢ及びバンパＣを搬出すべきバンパとして選択する（重複）。
【００４５】
さらに、“４回目のすぐ右の−１.０”の列に進み、当該列に４回目の各バンパの判定値を記憶する。このとき、４回目において選択されたバンパＢの判定値については、４回目のバンパＢの判定値“１.２” から“１.０” （各バンパの出現確率の和）を減算した値“０.２”を記憶する。同様に、４回目において選択されたバンパＣの判定値についても、４回目のバンパＣの判定値“１.０” から“１.０” （各バンパの出現確率の和）を減算した値“０.０”を記憶する。選択されていないバンパＡの判定値については、４回目の判定値をそのまま記憶する。よって、“４回目のすぐ右の−１.０”の列においては、バンパＡの判定値は“０.８”のままであり、バンパＢの判定値は“０.２”となり、バンパＣの判定値は“０.０”となっている。
【００４６】
（５回目以降）５回目以降の処理は、４回目までの処理と同様であるので、詳細な説明は省略する。結果的には、５回目、６回目、７回目及び８回目において、それぞれ１つ（１種類）のバンパが選択されている。９回目においては、バンパは選択されていない。１０回目においては、３つ（３種類）のバンパが選択されている。そして、１０回目までに、バンパＡは２回選択され、バンパＢは３回選択され、バンパＣは５回選択されている。この結果は、出現確率に一致している。
【００４７】
図５（ｃ）は、バッチ処理によって作成された判定値推移表１０１（図５（ｂ））に対して手作業で変更を加えた判定値推移表１０２である。ユーザは、判定値推移表１０１を見て、１回目においてバンパが選択されていないことが問題であると考えている。そして、ユーザは、１回目においていずれかのバンパが選択されるようにいずれかの判定値を変更（手動入力）しようとしている。例えば、ユーザは、１回目のバンパＣの判定値“０.５”に対して“０.５”を手動で加算し、“１.０”とする。なお、変更されたバンパの判定値にやや濃い（ドットがより細かい）網掛けを施している（以下同じ）。
【００４８】
すると、作業順序計画装置１は、１回目においてバンパＣを選択する。作業順序計画装置１は、その後の処理も連続的に実行する。しかしながら、２回目、６回目及び８回目においては、バンパが選択されておらず、５回目、７回目及び１０回目においては２つ（２種類）のバンパが選択されているので、問題の完全解決には至らない。
【００４９】
図５（ｄ）は、判定値推移表１０２（図５（ｃ））に対して手作業で変更を加えた判定値推移表１０３である。ユーザは、判定値推移表１０２を見て、２回目においてバンパが選択されていないことが問題であると考えている。そして、ユーザは、２回目においていずれかのバンパが選択されるようにいずれかの判定値を変更（手動入力）しようとしている。例えば、ユーザは、２回目のバンパＢの判定値“０.６”に“０.４”を手動で加算し、“１.０”とする。すると、作業順序計画装置１は、２回目においてバンパＢを選択する。作業順序計画装置１は、その後の処理も連続的に実行する。しかしながら、４回目及び８回目においては、バンパが選択されておらず、５回目及び９回目においては２つ（２種類）のバンパが選択されているので、問題の完全解決には至らない。
【００５０】
以上で明らかなように、既存の技術は、出現確率を加算する“ｎ回目”と“バンパの種類”とを常に１対１に対応させて決定するとは限らない。このことに起因して、以下の不具合が発生する。
・バッチ処理により作成された作業予定表（判定値推移表）は、ユーザによって手動変更されなければならない場合が多い。
・ユーザが変更する際、何回目のどの判定値をどれだけ増加させればよいかが、直感的に分かりにくい。
・１対１の理想型に至るまでに、ユーザは変更作業を繰り返さざるを得ない。
【００５１】
図６に沿って、本実施形態における減算値及び判定値推移表を説明する。図６（ａ）は、バンパの種類に関連付けて減算値を記憶している。図５の例と同様に、バンパが全部で１０個あり、その内訳は、バンパＡが２個であり、バンパＢが３個であり、バンパＣが５個である。すると、バンパＡの減算値は２０（＝２／１０×１００）となり、バンパＢの減算値は３０（＝３／１０×１００）となり、バンパＣの減算値は５０（＝５／１０×１００）となる。
【００５２】
図６（ｂ）は、バッチ処理によって作成された判定値推移表１１１であり、図３の作業予定表８１に対応する。判定値推移表１１１の横軸のうち、“ｎ回目”と“ｎ＋１回目”の間“＋１００”（詳細後記）以外は、減算値の減算回数（何回目であるか）である。この意味で、横軸は、前記した“処理順序”である。そして、本実施形態においては、１つの処理順序に対して、常に１つのバンパの種類が対応している。すると、処理順序が“作業順序”に一致する。つまり、処理順序は、作業予定表８１等の“作業順序”に一致する。縦軸は、バンパの種類及び選択結果である。縦軸と横軸の交点に判定値が記憶される。
【００５３】
作業順序計画装置１は、以下の処理を行う（図６（ｂ）参照）。
（１回目）各バンパの初期値から、各バンパの減算値を減算し、１回目の各バンパの判定値とする。各バンパの初期値は、いずれも“１００” （初期値＝各バンパの減算値の合計）である。よって、１回目のバンパＡの判定値は“８０”となり、１回目のバンパＢの判定値は“７０”となり、１回目のバンパＣの判定値は“５０”となる。３つの判定値のうち最小であるのは、バンパＣの“５０”である。そこで、バンパＣを搬出すべきバンパとして選択する。
【００５４】
さらに、“１回目のすぐ右の＋１００”の列に進み、当該列に１回目の各バンパの判定値を記憶する。このとき、１回目で選択されたバンパＣの判定値については、１回目のバンパＣの判定値“５０”に対して初期値“１００”（１００＝各バンパの減算値の合計）を加算した値“１５０”を記憶する。選択されていないバンパＡ及びバンパＢの判定値については、１回目の判定値をそのまま記憶する。よって、“１回目のすぐ右の＋１００”の列においては、バンパＡの判定値は“８０”のままであり、バンパＢの判定値も“７０”のままであり、バンパＣの判定値は“１５０”となっている。
【００５５】
（２回目）“１回目のすぐ右の＋１００”の列における各バンパの判定値から、各バンパの減算値を減算し、２回目の各バンパの判定値とする。すると、２回目のバンパＡの判定値は６０となり、２回目のバンパＢの判定値は４０となり、３回目のバンパＣの判定値は１００となる。３つの判定値のうち最小であるのは、バンパＢの“４０”である。そこで、バンパＢを搬出すべきバンパとして選択する。
【００５６】
さらに、“２回目のすぐ右の＋１００”の列に進み、当該列に２回目の各バンパの判定値を記憶する。このとき、２回目で選択されたバンパＢの判定値については、２回目のバンパＢの判定値“４０”に対して初期値“１００”（１００＝各バンパの減算値の合計）を加算した値“１４０”を記憶する。選択されていないバンパＡ及びバンパＣの判定値については、２回目の判定値をそのまま記憶する。よって、“２回目のすぐ右の＋１００”の列においては、バンパＡの判定値は“６０”のままであり、バンパＣの判定値も“１００”のままであり、バンパＢの判定値は“１４０”となっている。
【００５７】
（３回目以降）３回目以降の処理は、２回目までの処理と同様であるので、詳細な説明は省略する。なお、３回目において“Ａ用塗料切れ”は、専ら図６（ｃ）の説明のためのものであるので、図６（ｂ）の説明においては無視する。結果的には、“ｎ回目”と“バンパの種類”が１対１に対応している。１０回目までの選択回数も、バンパＡが２回、バンパＢが３回、バンパＣが５回であり、これらは、バンパの種類ごとの個数と一致している。なお、５回目において、バンパＢの判定値は“５０”であり、バンパＣの判定値も“５０”である。このとき、予め設定した優先順位（例えば優先順位が高い順にＡ→Ｂ→Ｃである場合、ＣよりもＢの方が優先順位が高い）に基づいて、バンパＢが選択されている。因みに、判定値推移表１１１は、減算値を減算する繰り返し処理の順序である“ｎ回目”と“バンパの種類”が１対１に対応している理想型である。
【００５８】
図６（ｃ）は、バッチ処理によって作成された判定値推移表１１１（図６（ｂ））に対して手作業で変更を加えた判定値推移表１１２であり、図３の作業予定表９１に対応する。ユーザは、例えば、１０：３０頃に、“バンパＡ用の塗料が切れ、塗料メーカに緊急発注したが、現場に届くのに６０分かかる”ということを知ったとする。このとき、とりあえずバンパＡの作業を後回しにするために、ユーザは、３回目のバンパＣの判定値“５０”から“２０”を手動で減算し、“３０”とする。すると、作業順序計画装置１は、３回目においてバンパＣを選択する。作業順序計画装置１は、その後の処理も連続的に実行する。判定値推移表１１２もまた理想型であり、ユーザはその後の追加変更を行う必要がない。
【００５９】
（作業順序計画装置）
図７に沿って、作業順序計画装置１の構成を説明する。作業順序計画装置１は、一般的なコンピュータであり、中央制御装置１１、入力装置１２、出力装置１３、主記憶装置１４及び補助記憶装置１５を有する。これらは、バスによって相互に接続されている。補助記憶装置１５は、作業予定表８１（９１）及び判定値推移表１１１（１１２）を記憶している。主記憶装置１４における、作業順序作成部２１及び作業順序再作成部２２はプログラムである。以降、“○○部は”と主体を記した場合は、中央制御装置１１が、補助記憶装置１５から各プログラムを読み出し、主記憶装置１４にロードしたうえで、各プログラムの機能（詳細後記）を実現するものとする。
【００６０】
（処理手順）
以降、本実施形態の処理手順を説明する。処理手順は２つ存在し、それらは、作業順序作成処理手順及び作業順序再作成処理手順である。作業順序作成処理手順は主として夜間のバッチ処理として実行される。作業順序再作成処理手順は、作業順序作成処理手順が既に実行されていることを前提とし、作業計画表及び判定値推移表の変更が必要な場合のみ実行される。
【００６１】
（作業順序作成処理手順）
図８に沿って、作業順序作成処理手順を説明する（適宜図６（ｂ）も参照）。
ステップＳ２０１において、作業順序計画装置１の作業順序作成部２１は、バンパごとに減算値を算出する。具体的には、第１に、作業順序作成部２１は、ユーザが入力装置１２を介して、所定の期間において作業対象となるバンパの個数をバンパの種類ごとに入力するのを受け付ける。ここで作業順序作成部２１は、“（バンパの種類，個数）＝（Ａ，２），（Ｂ，３），（Ｃ，５）”を受け付けたとする。
【００６２】
第２に、作業順序作成部２１は、所定の減算値算出式に基づき、減算値を算出する。ここで所定の減算値算出式は、“減算値＝当該バンパの個数／バンパの総数×１００”であったとする。この場合、バンパＡの減算値は２０となり、バンパＢの減算値は３０となりバンパＣの減算値は５０となる。
【００６３】
ステップＳ２０２において、作業順序作成部２１は、バンパごとに初期値を算出する。具体的には、作業順序作成部２１は、ステップＳ２０１の“第２”において算出した各バンパの減算値の合計を各バンパに共通の初期値とする。すなわち、バンパＡの初期値、バンパＢの初期値及びバンパＣの初期値は、すべて１００となる。作業順序作成部２１は、ユーザが入力装置１２を介して、他の初期値を入力するのを受け付けてもよい。
【００６４】
ステップＳ２０３において、作業順序作成部２１は、“処理順序１”を計算開始順序とする。具体的には、作業順序作成部２１は、処理中の繰り返し処理の順序（ｎ回目）を示すカウンタ変数“ｎ”に“１”を代入する。
【００６５】
ステップＳ２０４において、作業順序作成部２１は、計算開始順序における判定値として初期値を代入する。具体的には、作業順序作成部２１は、（ｎ回目，バンパＡの判定値，バンパＢの判定値，バンパＣの判定値）＝（１，１００，１００，１００）を保持する。
【００６６】
ステップＳ２０５において、作業順序作成部２１は、バンパごとに判定値から減算値を減算する。具体的には、作業順序作成部２１は、（１，１００，１００，１００）を一時的に保持したうえで、（１，１００−２０，１００−３０，１００−５０）＝（１，８０，７０，５０）をさらに一時的に保持する（図６（ｂ）の“１回目”の各判定値に対応）。（１，８０，７０，５０）を以降“１回目判定値ベクトル”と呼ぶことがある。同様にｎ回目の減算結果を “ｎ回目判定値ベクトル”と呼ぶことがある。
【００６７】
ステップＳ２０６において、作業順序作成部２１は、判定値が最小であるバンパを選択する。具体的には、第１に、作業順序作成部２１は、ステップＳ２０５における“１回目判定値ベクトル”の判定値のうち最小であるものに対応するバンパの種類を選択する。判定値“８０”、判定値“７０”及び判定値“５０”のうち最小の判定値は“５０”である。よって、バンパＣが選択される。仮に最小の判定値が複数存在しても、作業順序作成部２１は、所定の優先順位に基づいて、１つのバンパの種類を選択する。
第２に、作業順序作成部２１は、[ｎ回目，選択バンパ]＝[１，Ｃ]を一時的に保持する（図６（ｂ）の“１回目”の選択結果に対応）。[１，Ｃ]を、以降“１回目選択情報”と呼ぶ場合がある。同様にｎ回目の選択結果を “ｎ回目選択情報”と呼ぶことがある。
【００６８】
ステップＳ２０７において、作業順序作成部２１は、判定値が最小であるバンパの判定値に初期値を加算する。具体的には、作業順序作成部２１は、１回目判定値ベクトル（１，８０，７０，５０）のバンパＣの判定値に対して初期値“１００”を加算し、（１*，８０，７０，５０＋１００）＝（１*，８０，７０，１５０）を一時的に保持する（図６（ｂ）の“１回目”のすぐ右の“＋１００”の各判定値に対応）。なお、ここでの初期値“１００”は、各バンパの減算値の合計である。そしてバンパＣの判定値に初期値を加算したのは、バンパＣの判定値が最小であるからである。すなわち、１回目選択情報が、選択バンパ“Ｃ”を含むからである。（１*，８０，７０，１５０）を、以降“１回目右判定値ベクトル”と呼ぶ場合がある。同様にｎ回目の加算結果を “ｎ回目右判定値ベクトル”と呼ぶことがある。処理順序“１”の右上に添付された記号“*”は、自身を含むベクトルが“右判定値ベクトル”であることを示す。
【００６９】
ステップＳ２０７の後、作業順序作成部２１は、カウンタ変数“ｎ”を“１”だけインクリメントした上でステップＳ２０５に戻る。その後、作業順序作成部２１は、ステップＳ２０５〜Ｓ２０７の処理を所定の回数だけ繰り返す。所定の回数は、通常、バンパの総数に等しい。すると、図６（ｂ）の判定値推移表１１１のもとになるデータが次々に生成される。
【００７０】
なお、ｎ（ｎ≧２）回目以降の繰り返しループにおけるステップＳ２０５において、“バンパごとに判定値から減算値を減算する”とあるのは、“ｎ−１回目右判定値ベクトルの判定値から減算値を減算する”と読み替える。そして、最終回の繰り返しループでは、作業順序作成部２１は、ステップＳ２０７を実行しない。
【００７１】
作業順序作成部２１は、繰り返しループの処理を１０回実行した後、ループを抜け出す。この時点で作業順序作成部２１が一時的に保持している情報（“ループ処理取得情報”と呼ぶ）は以下の通りである。
・ｎ回目判定値ベクトル（ｎ＝１，２，・・・，１０）
・ｎ回目右判定値ベクトル（ｎ＝１，２，・・・，９）
・ｎ回目選択情報（ｎ＝１，２，・・・，１０）
【００７２】
ステップＳ２０８において、作業順序作成部２１は、作業対象及び判定値を表示し、登録する。具体的には、第１に、作業順序作成部２１は、ループ処理取得情報に基づいて、作業予定表８１及び判定値推移表１１１を作成し、出力装置１３に表示する。このとき、作業順序作成部２１は、作業対象及び判定値を処理順序に関連付けて表示する。
第２に、作業順序作成部２１は、作業予定表８１及び判定値推移表１１１を補助記憶装置１５に記憶する。このとき、補助記憶装置１５は、作業対象及び判定値を処理順序に関連付けて格納する。
その後、作業順序作成処理手順を終了する。
【００７３】
（作業順序再作成処理手順）
図９に沿って、作業順序再作成処理手順を説明する。
ステップＳ２２１において、作業順序計画装置１の作業順序再作成部２２は、バンパごとに減算値を算出する。当該処理は、ステップＳ２０１と同じである。但し、バンパの種類又は所定の期間において作業対象となるバンパの個数に変更点がある場合に限り当該ステップを経由するものとする。変更点がない場合、作業順序再作成部２２は、ステップＳ２２１を省略する。
【００７４】
ステップＳ２２２において、作業順序再作成部２２は、バンパごとに初期値を設定する。当該処理は、ステップＳ２０２と同じである。但し、バンパの種類又は所定の期間において作業対象となるバンパの個数に変更点がある場合に限り当該ステップを経由するものとする。変更点がない場合、作業順序再作成部２２は、ステップＳ２２２を省略する。
【００７５】
ステップＳ２２３において、作業順序再作成部２２は、計算再開始順序を受け付ける。いま、作業順序再作成部２２は、出力装置１３に、作業予定表８１（図３（ａ））又は判定値推移表１１１（図６（ｂ））を表示している。これらの表は、図４の説明において前記した“変更前の編成指示及び変更前の塗装指示”にも対応する。ユーザはこれらを見ており、“３回目”において選択されているバンパＡを、例えばバンパＣに変更しようとしているとする。このとき、作業順序再作成部２２は、ユーザが入力装置１２を介して“３回目”を入力するのを受け付ける。そして、カウンタ変数“ｎ”に“３”を代入する。なお、この“３回目”は、繰り返し処理の起点となる。
【００７６】
ステップＳ２２４において、作業順序再作成部２２は、計算再開始順序の直前における判定値を取得する。具体的には、作業順序再作成部２２は、（ｎ回目，バンパＡの判定値，バンパＢの判定値，バンパＣの判定値）＝（２*，６０，１４０，１００）を保持する（図６（ｂ）の“２回目”のすぐ右の“＋１００”の各判定値に対応）。当該（２*，６０，１４０，１００）は、ステップＳ２２１及びＳ２２２が省略された場合、すなわちバンパの種類にも、所定の期間において作業対象となるバンパの個数にも変更点がない場合の“２回目右判定値ベクトル”である。
【００７７】
ステップＳ２２１及び／又はＳ２２２を経由する場合は、作業順序再作成部２２は、変更後の減算値及び／又は初期値に基づき、図８のステップＳ２０５〜Ｓ２０７の処理を“２回目のすぐ右の＋１００”の列まで再度実行する。そして、作業順序再作成部２２は、再度実行後の“２回目右判定値ベクトル”を使用する。以降では、単純化のため、ステップＳ２２１及びＳ２２２が省略された場合を説明する。
【００７８】
ステップＳ２２５において、作業順序再作成部２２は、計算再開始順序における変更後の判定値を受け付ける。いま、変更前の３回目判定値ベクトルは、（３，４０，１１０，５０）である。ユーザは、例えばバンパＣの判定値“５０”を例えば“３０”に変更したいと考えている。このとき、作業順序再作成部２２は、ユーザが“バンパＣ”及び“３０”を入力するのを受け付ける（図６（ｃ）の“３回目”のバンパＣの判定値に対応）。そして、変更前後の判定値の差分“２０”（２０＝５０−３０）を一時的に保持する。
【００７９】
ステップＳ２２６において、作業順序再作成部２２は、バンパごとに判定値から減算値を減算する。具体的には、作業順序再作成部２２は、２回目右判定値ベクトルの判定値から減算値を減算する。つまり、（２*，６０，１４０，１００）から減算値を減算した、変更後の３回目判定値ベクトル（３，６０−２０，１４０−３０，１００−７０）＝（３，４０，１１０，３０）を一時的に保持する（図６（ｃ）の“３回目”の各判定値に対応）。ここで、作業順序再作成部２２は、バンパＣの判定値“１００”から“７０”を減算している。この“７０”のうち“５０”は本来減算されるべき減算値であり、残りの“２０”は、ステップＳ２２５において保持された “差分”である。
【００８０】
ステップＳ２２７において、作業順序再作成部２２は、判定値が最小であるバンパを選択する。当該処理は、ステップＳ２０６と同じである。
【００８１】
ステップＳ２２８において、作業順序再作成部２２は、判定値が最小であるバンパの判定値に初期値を加算する。当該処理は、ステップＳ２０７と同じである。
【００８２】
作業順序再作成部２２は、繰り返しループの処理を８（８＝１０−（３−１））回実行した後、ループを抜け出す。この時点で作業順序再作成部２２が一時的に保持しているループ処理取得情報は以下の通りである。
・ｎ回目判定値ベクトル（ｎ＝３，４，・・・，１０）
・ｎ回目右判定値ベクトル（ｎ＝３，４，・・・，９）
・ｎ回目選択情報（ｎ＝３，４，・・・，１０）
【００８３】
ステップＳ２２９において、作業順序再作成部２２は、作業対象及び判定値を表示し、登録する。具体的には、第１に、作業順序再作成部２２は、ループ処理取得情報（ｎ＝３以降については、作業順序再作成処理手順にて更新された値）に基づいて、作業予定表９１及び判定値推移表１１２を作成し、出力装置１３に表示する。このとき、作業順序再作成部２２は、作業対象及び判定値を処理順序に関連付けて表示する。なお、作業順序再作成部２２は、同じ処理順序の作業対象に変更があった場合、変更内容を強調表示してもよい。
【００８４】
第２に、作業順序再作成部２２は、作業予定表９１及び判定値推移表１１２を補助記憶装置１５に記憶する。このとき、補助記憶装置１５は、作業対象及び判定値を処理順序に関連付けて格納する。
その後、作業順序作成再処理手順を終了する。
【００８５】
（減算値及び初期値についての補足説明）
前記したように、本実施形態においては、“各バンパの減算値＝当該バンパの個数／バンパの総数×１００”及び“初期値＝各バンパの減算値の合計”が成立している。当然のことながら、これらの少なくとも一方が成立しなくても作業順序計画装置１は十分機能する。しかしながら、すべてのバンパについて、未塗装のものがほぼ同じタイミングでなくなるという、ターリー計算の長所を活かすためには、これらの両者を成立させることが望ましい。９回目、１０回目という終盤においてユーザが選択される作業対象（バンパの種類）を変更したとする。このとき、１０回目までに選択された各作業対象の数が全数に占める比率は、出現確率と完全に一致しないことはあり得る。しかしながら、さらに選択回数が増えれば、当該比率は出現確率（理論値）に収束していくことが知られている。
【００８６】
（実施形態の効果）
本実施形態の作業順序計画装置１は、以下の効果を奏する。
（１）繰り返し処理の順序と作業対象が１対１に対応するように記憶する。よって、ユーザは、当該記憶内容が表示されると、感覚的に自然にかつ容易に、変更するべき作業対象（その処理順序において作業の対象として選択される物品）を探し当てることができる。
（２）作業対象の変更が必要なときに、その起点となる処理順序を受け付ける。よって、ユーザは、例えば“ｎ回目”というわかりやすい情報をキーにして作業対象の変更ができる。
（３）判定値が最小となる複数の作業対象のうち、所定の優先順位に基づいて１つの作業対象を決定する。よって、処理順序と作業対象が１対１に対応することが担保される。
【００８７】
（４）減算値を、種類ごとの物品の個数が物品の総数に占める百分率に基づいて物品の種類ごとに算出する。よって、公知のターリー計算の長所を活かすことができる。
（５）初期値を、物品の種類ごとに算出した減算値の合計値としている。よって、公知のターリー計算の長所を活かすことができる。
（６）変更後の減算値又は初期値を受け付ける。よって、物品の個数の変更に柔軟に対応できる。
【００８８】
（７）処理順序ごとに作業対象を表示する。よって、作業対象の変更時に、起点となる処理順序を判断しやすい。
（８）処理順序ごとに判定値を表示する。よって、作業対象の変更時に、判定値をどれだけ変化させるべきかがわかりやすい。
（９）変更前後の作業対象を処理順序ごとに表示する。よって、ユーザは、所望の処理順序において作業内容の変更が行われたことを確認しやすい。
【００８９】
なお、本発明は前記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、前記した実施例は、本発明を分かり易く説明するために詳細に説明したものであり、必ずしも説明したすべての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、前記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウエアで実現してもよい。また、前記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウエアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid State Drive）等の記録装置、又は、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしもすべての制御線や情報線を示しているとは限らない。実際には殆どすべての構成が相互に接続されていると考えてもよい。
【符号の説明】
【００９０】
１      作業順序計画装置
１１    中央制御装置（制御部）
１２    入力装置
１３    出力装置
１４    主記憶装置（記憶部）
１５    補助記憶装置（記憶部）
２１    作業順序作成部
２２    作業順序再作成部
８１    作業予定表
１１１  判定値推移表
【図１】
0006339935.tif 000002
【図２】
0006339935.tif 000003
【図３】
0006339935.tif 000004
【図４】
0006339935.tif 000005
【図５】
0006339935.tif 000006
【図６】
0006339935.tif 000007
【図７】
0006339935.tif 000008
【図８】
0006339935.tif 000009
【図９】
0006339935.tif 000010