(57)【特許請求の範囲】
【請求項１】
予め設定された少なくとも納期を含む作業条件を充足するように複数種別の作業工程のスケジューリングを行うスケジューリング手段を有するスケジューリング装置であって，
前記作業工程のいずれか一つ又は複数について作業者を教育するために該作業工程を連続して実行する連続作業時間を少なくとも含む教育実行項目を設定する教育実行項目設定手段を備えてなり，
前記スケジューリング手段が，前記作業条件が充足可能な範囲で，前記教育実行項目に基づいて前記作業工程のいずれか一つ又は複数について作業者を教育するための前記連続作業時間を設けるようにスケジューリングを行うものであることを特徴とするスケジューリング装置。
【請求項２】
前記教育実行項目に，前記作業工程各々の教育の優先度が含まれてなる請求項１に記載のスケジューリング装置。
【請求項３】
前記スケジューリング手段が，
前記作業条件が充足するように前記作業工程各々をスケジューリングして仮スケジュールを作成する仮スケジュール作成手段と，前記仮スケジュール作成手段によって作成された前記仮スケジュールにおける前記作業工程各々の実行順序を前記教育実行項目に基づいて並べ替えるスケジュール更新手段と，前記スケジュール更新手段によって変更された後の仮スケジュールが前記作業条件を充足するか否かを判定する作業条件充足判定手段とを含んでなり，
前記作業条件充足判定手段により前記作業条件を充足することを条件に前記スケジュール更新手段による並び替えを有効にするものである請求項１又は２のいずれかに記載のスケジューリング装置。
【請求項４】
前記スケジューリング手段が，前記作業工程各々について予め設定された順で段階的に前記連続作業時間を設けるようにスケジューリングを行うものである請求項１〜３のいずれかに記載のスケジューリング装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，複数種別の作業工程のスケジューリングを行うスケジューリング装置に関し，特に，現場作業者の教育機会を考慮したスケジューリングを行うための技術に関するものである。
【背景技術】
【０００２】
従来から，例えば製品の生産に係る複数種別の作業工程を，予め設定された納期などの作業条件を充足するようにスケジューリングするスケジューリング装置が知られている（例えば，特許文献１，２参照）。このようなスケジューリング装置によって作成されたスケジュールに従えば，製品の納期を遵守して生産を実施することができる。特に，例えば特許文献２では，複数種別の作業工程の平準化を図ることによる負荷を分散させることを主眼においてスケジューリングを行う技術が開示されている。
ところで，生産現場では，作業者の技能レベルを向上させるべく，熟練者による非熟練者への教育が行われる。このとき，ある作業工程についての教育を効果的に行うためには，その作業工程についてある程度の時間連続した教育の機会を設けることが望ましい。
【特許文献１】特開２００５−１４８７９２号公報
【特許文献２】特開２００６−１０６８２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら，従来のスケジューリング手法では，例えば複数種別の作業工程の平準化が主眼に置かれており，作業者の教育の機会を考慮したスケジューリングが行われていない。そのため，予め設定された作業条件を充足するように作成されたスケジュールに合わせて教育を行う必要があり，各作業工程についての教育の機会が分散されるため，教育機会の集中化による効率的な教育を行うことができないという問題があった。
もちろんスケジュールを無視して，ある作業工程を作業者の教育のために連続して実行することは可能であるが，この場合には製品納期を遵守することができないという問題が生じる。なお，製品納期を遵守するために，スケジュールの時間外で教育を行うことも考えられるが，この場合には，熟練者や非熟練者に勤務時間外の勤務が強いられることになってしまうという問題点がある。
従って，本発明は上記事情に鑑みてなされたものであり，その目的とするところは，作業者の教育機会を考慮して複数種別の作業工程のスケジューリングを行うことのできるスケジューリング装置を提供することにある。
【課題を解決するための手段】
【０００４】
上記目的を達成するために本発明は，予め設定された少なくとも納期を含む作業条件を充足するように複数種別の作業工程のスケジューリングを行うスケジューリング手段を有するスケジューリング装置に適用されるものであって，前記作業工程のいずれか一つ又は複数について作業者を教育するために該作業工程を連続して実行する連続作業時間を少なくとも含む教育実行項目を設定する教育実行項目設定手段を備えてなり，前記スケジューリング手段が，前記作業条件が充足可能な範囲で，前記教育実行項目に基づいて前記作業工程のいずれか一つ又は複数について作業者を教育するための前記連続作業時間を設けるようにスケジューリングを行うものであることを特徴とするスケジューリング装置として構成される。
本発明によれば，前記作業条件に余裕があるときには，その余裕の範囲内で前記連続作業時間を意図的に教育機会として設けることで作業者の教育の効率化を図ることができる。即ち，本発明は，複数種別の作業工程の平準化を図ることに主眼を置くのではなく，前記作業条件が充足可能な範囲で教育機会を設けることに主眼を置いている。
さらに，前記教育実行項目に，前記作業工程各々の教育の優先度を含めておけば，例えば前記優先度の高い作業工程の教育機会を優先的に設けることが可能となる。
【０００５】
本発明の具体的な構成としては，前記スケジューリング手段が，前記作業条件が充足するように前記作業工程各々をスケジューリングして仮スケジュールを作成する仮スケジュール作成手段と，前記仮スケジュール作成手段によって作成された前記仮スケジュールにおける前記作業工程各々の実行順序を前記教育実行項目に基づいて並べ替えるスケジュール更新手段と，前記スケジュール更新手段によって変更された後の仮スケジュールが前記作業条件を充足するか否かを判定する作業条件充足判定手段とを含んでなることが考えられる。そして，前記スケジューリング手段は，前記作業条件充足判定手段により前記作業条件を充足することを条件に前記スケジュール更新手段による並び替えを有効にする。
このような構成によれば，少なくとも前記作業条件を充足しつつ，前記教育実行項目を考慮して前記作業工程各々のスケジューリングを行うことが可能となる。
また，前記スケジューリング手段が，前記作業工程各々について予め設定された順で段階的に前記連続作業時間を設けるようにスケジューリングを行うものであることも考えられる。これにより，例えば技能レベルの低い作業者に対して，難易度や危険度の高い作業工程についての教育を行わないようにスケジューリングを行うことができる。
【発明の効果】
【０００６】
本発明によれば，前記作業条件に余裕があるときには，その余裕の範囲内で前記連続作業時間を意図的に教育機会として設けることで作業者の教育の効率化を図ることができる。即ち，本発明は，複数種別の作業工程の平準化を図ることに主眼を置くのではなく，前記作業条件が充足可能な範囲で教育機会を設けることに主眼を置いている。
また，前記教育実行項目に，前記作業工程各々の教育の優先度を含めておけば，例えば前記優先度の高い作業工程の教育機会を優先的に設けることが可能となる。
さらに，前記作業工程各々について予め設定された順で段階的に前記連続作業時間を設けるようにスケジューリングを行えば，例えば技能レベルの低い作業者に対して，難易度や危険度の高い作業工程についての教育を行わないようにスケジューリングを行うことができる。
【発明を実施するための最良の形態】
【０００７】
以下添付図面を参照しながら，本発明の実施の形態について説明し，本発明の理解に供する。なお，以下の実施の形態は，本発明を具体化した一例であって，本発明の技術的範囲を限定する性格のものではない。
ここに，図１は本発明の実施の形態に係るスケジューリング装置Ｘが適用される作業現場の一例を示すブロック図，図２は前記スケジューリング装置Ｘの概略構成を示すブロック図，図３は生産スケジュールの一例を示す図，図４は前記スケジューリング装置Ｘにおいて実行されるスケジューリング処理の手順の一例を説明するためのフローチャート，図５は教育実行項目設定処理を説明するための図，図６は仮スケジュール作成処理を説明するための図，図７は作業開始時刻算出処理を説明するための図，図８は作業終了時刻算出処理を説明するための図，図９は作業条件充足判定処理処理を説明するための図，図１０及び図１１はスケジュール更新処理を説明するための図である。
【０００８】
本発明の実施の形態に係るスケジューリング装置Ｘは，例えば図１に示す作業現場で行われる複数種別の作業工程のスケジューリングを行う。なお，ここで説明する作業現場や作業工程などは単なる一例に過ぎず，複数種別の作業工程を連続的に実行する一連の生産工程などにも適用可能である。
図１に示すように，本実施の形態で例示する作業現場では，コイル入荷上に入荷されたコイルが，クレーンでベルトコンベアに移動され，該ベルトコンベアによって作業場まで搬送される。そして，作業場では作業者によってコイルの梱包が行われ，その梱包後のコイルは，ベルトコンベアで搬送される。ベルトコンベアで搬送されたコイルはクレーンによってコイル出荷場に移動される。
ここで，作業者が作業場で行うコイルの梱包方法には複数種別の梱包方法Ｐ１〜Ｐ３（複数種別の作業工程の一例）が存在するものとする。そして，作業者は，前記梱包方法Ｐ１〜Ｐ３のうち予め定められたスケジュールで設定された梱包方法でコイルを梱包する。また，前記梱包方法Ｐ１〜Ｐ３は，その梱包方法の違いから作業に要する時間が異なる。以下では，前記梱包方法Ｐ１〜Ｐ３各々に対応する作業時間がＫ１〜Ｋ３であるとする。
【０００９】
次に，図２を用いて，本発明の実施の形態に係るスケジューリング装置Ｘの概略構成について説明する。
図２に示すように，前記スケジューリング装置Ｘは，各種の演算処理を実行するＣＰＵ，ＲＡＭ，ＲＯＭなどの制御機器を有する制御部１と，後述する教育実行項目などの各種の情報が記憶される記憶部２と，後述の教育実行項目を設定するための操作が行われるキーボードなどを含む操作部３と，各種の情報を表示出力する液晶ディスプレイや各種の情報を印字出力するプリンタ装置などを含む出力部４とを備えて概略構成されている。なお，前記スケジューリング装置Ｘは，例えばパーソナルコンピュータなどの情報処理装置である。また，前記記憶部２や前記操作部３，前記出力部４などは，前記制御部１との間で通信が可能であれば，前記スケジューリング装置Ｘとは異なる外部装置に設けられたものであってもよい。
前記制御部１は，教育実行項目設定機能１０（教育実行項目設定手段の一例），仮スケジュール作成機能１１（仮スケジュール作成手段の一例），作業開始時刻算出機能１２，作業終了時刻算出機能１３，作業条件充足判定機能１４（作業条件充足判定手段の一例），スケジュール更新機能１５（スケジュール更新手段の一例），教育実行項目充足判定機能１６（教育実行項目充足判定手段の一例）などの各種の機能を有している。
これらの機能は，前記制御部１においてＣＰＵがＲＯＭに記憶された所定の制御プログラムに従って後述のスケジューリング処理（図４のフローチャート参照）が実行されることにより具現されるものであって，該機能各々については後段で詳述する。また，前記各機能は電気回路などのハードウェアで構成されてもよい。
【００１０】
そして，前記スケジューリング装置Ｘでは，ホストコンピュータＹから送信される生産スケジュールに含まれた複数種別の作業工程を，予め設定された作業条件を充足するように並び替えるスケジューリング処理が前記制御部１によって実行される。なお，前記ホストコンピュータＹから送信された前記生産スケジュールは前記記憶部２に記憶される。また，前記ホストコンピュータＹでは，予めユーザ操作により前記生産スケジュールが設定される。もちろん，前記生産スケジュールは，前記スケジューリング装置Ｘで設定されたものであってもよい。
ここで，図３を用いて，前記ホストコンピュータＹに記憶された生産スケジュールの一例について説明する。
図３に示すように，前記生産スケジュールでは，コイル番号Ａ１〜Ａ１０各々について，入荷時刻Ｂ１〜Ｂ１０や出荷時刻Ｃ１〜Ｃ１０（納期の一例），前記梱包方法Ｐ１〜Ｐ３のいずれの方法で梱包を行うかなどの作業条件が設定されている。ここに，前記コイル番号Ａ１〜Ａ１０は，複数のコイルごとに付されたロット番号を示すものである。
前記入荷時刻Ｂ１〜Ｂ１０は，前記コイル番号Ａ１〜Ａ１０のコイルが図１に示すコイル入荷場に搬入される時刻を示しており，前記入荷時刻Ｂ１〜Ｂ１０がその順に時刻が早いものとする。また，前記出荷時刻Ｃ１〜Ｃ１０は，前記コイル番号Ａ１〜Ａ１０のコイルを出荷する時刻，即ち図１に示すコイル出荷場にコイルが納入されているべき時刻（納期）を示しており，前記出荷時刻Ｃ１〜Ｃ１０がその順に時刻が早いものとする。
以下では，図３に示した前記生産スケジュールが設定されている場合を例に挙げて，前記スケジューリング装置Ｘにおいて実行されるスケジューリング処理について説明する。
【００１１】
まず，図４のフローチャートを用いて，前記スケジューリング装置Ｘにおいて前記制御部１によって実行されるスケジューリング処理の概要について説明する。なお，図中のＳ１，Ｓ２，…は処理手順（ステップ）の番号を表している。ここに，当該スケジューリング処理を実行するときの前記制御部１がスケジューリング手段に相当する。
図４に示すように，前記制御部１は，教育実行項目を設定するための教育実行項目設定処理（ステップＳ１），仮スケジュールを作成するための仮スケジュール作成処理（ステップＳ２），各作業工程の作業を開始するべき時刻を算出するための開始時刻算出処理（ステップＳ３），各作業工程の作業の終了時刻を算出するための作業終了時刻算出処理（ステップＳ４），仮スケジュールが作業条件を充足しているか否かを判定するための作業条件充足判定処理（ステップＳ５），作業者の教育機会を考慮して仮スケジュールを更新するためのスケジュール更新処理（ステップＳ６），更新された後のスケジュールを前記出力部４に出力するスケジュール出力処理（ステップＳ７）を実行する。前記スケジュール出力処理（ステップＳ７）は，前記ステップＳ６で更新された後のスケジュールを前記出力部４に出力することにより，該出力部４において表示出力や印字出力を実行するものである。
以下，図５〜図１１を用いて，前記ステップＳ１〜Ｓ６の各処理について詳述する。
【００１２】
（ステップＳ１）
まず，前記ステップＳ１の教育実行項目設定処理では，前記制御部１は，前記操作部３に対するユーザ操作に応じて，前記梱包方法Ｐ１〜Ｐ３について教育実行項目を設定する。ここに，係る教育実行項目設定処理は，前記制御部１の前記教育実行項目設定機能１０によって実行される。なお，前記梱包方法Ｐ１〜Ｐ３のうち教育の機会を設ける必要のある一つ又は複数の梱包方法についてのみ前記教育実行項目の設定を行ってもよい。
ここで，前記教育実行項目には，前記梱包方法Ｐ１〜Ｐ３各々について作業者への教育を効果的に行うために必要な連続した作業工程数（以下，「連続作業回数」という）や，前記梱包方法Ｐ１〜Ｐ３各々の教育機会を設ける優先順位を定める優先度が含まれる（図５（ｂ）参照）。なお，前記連続作業回数は，前記梱包方法Ｐ１〜Ｐ３各々について作業者への教育を効果的に行うために必要な連続した連続作業時間を，コイルの１ロット分の作業回数で示すものである。なお，連続作業回数に換えて時間やコイルの個数などを用いてもよい。
【００１３】
具体的に，前記制御部１は，図５（ａ）に示すように，まず，前記操作部３に対するユーザ操作に応じて，前記梱包方法Ｐ１〜Ｐ３各々について前記連続作業回数を設定する（ステップＳ１１）。ここでは，図５（ｂ）に示すように，前記梱包方法Ｐ１〜Ｐ３各々の前記連続作業回数が２回に設定されたものとする。
続いて，前記制御部１は，前記操作部３に対するユーザ操作に応じて，前記梱包方法Ｐ１〜Ｐ３各々についての優先度を設定する（ステップＳ１２）。ここでは，図５（ｂ）に示すように，前記梱包方法Ｐ１〜Ｐ３各々の優先度が「１」，「２」，「３」に設定されたものとする。
その後，前記制御部１は，前記梱包方法Ｐ１〜Ｐ３各々について設定した前記連続作業回数及び優先度を教育実行項目として前記記憶部２に記憶する（ステップＳ１３）。ここで記憶された前記教育実行項目は，後述のステップＳ６におけるスケジュール更新処理で用いられる。
【００１４】
（ステップＳ２）
次に，前記ステップＳ２の仮スケジュール作成処理では，前記制御部１は，前記ホストコンピュータＹから送信された前記生産スケジュール（図３参照）に基づいて，該生産スケジュールに含まれた作業工程のスケジューリングを行うことにより仮スケジュールを作成する。ここに，係る仮スケジュール作成処理は，前記制御部１の前記仮スケジュール作成機能１１によって実行される。
具体的に，前記制御部１は，図６（ａ）に示すように，まず，前記記憶部２に記憶された前記生産スケジュールを読み出す（ステップＳ２１）。
続いて，前記生産スケジュールに含まれた前記コイルＡ１〜Ａ１０に関する作業工程を，前記入荷時刻Ｃ１〜Ｃ１０の早い順に並び替えて仮スケジュールを作成する（ステップＳ２２）。このとき，前記入荷時刻Ｂ１〜Ｂ１０の早い順に作業工程を並べているため，図１に示す入荷場のコイル収容可能量の超過防止を図ることができる。なお，これに限られず，前記出荷時刻Ｃ１〜Ｃ１０の早い順に作業工程を並べることも他の実施例として考えられる。
そして，前記制御部１は，前記仮スケジュールを前記記憶部２に記憶する（ステップＳ２３）。
当該ステップＳ２では，図６（ｂ）に示すように，前記コイルＡ１〜Ａ１０各々に関する作業工程が，その入荷時刻Ｂ１〜Ｂ１０の順に並べられた仮スケジュールが作成される。また，前記仮スケジュールでは，前記コイルＡ１〜Ａ１０に関する作業工程に，その実行の順番に対応する作業番号１〜１０が付される。
【００１５】
（ステップＳ３）
続いて，前記ステップＳ３の作業開始時刻算出処理では，前記制御部１は，前記仮スケジュールにおける前記コイルＡ１〜Ａ１０の作業工程ごとに作業開始時刻を算出する。ここに，係る作業開始時刻算出処理は，前記制御部１の前記作業開始時刻算出機能１２によって実行される。
ここで，前記作業開始時刻とは，前記出荷時刻Ｃ１〜Ｃ１０を遵守することが可能である最も遅い作業工程の開始時刻を示すものである。即ち，前記作業開始時刻は，前記出荷時刻Ｃ１〜Ｃ１０から，前記作業時間Ｋ１〜Ｋ３と，図１におけるコイル出荷場から作業場の間及び作業場からコイル出荷場の間のクレーンやベルトコンベアによる搬送時間とを差し引いた時刻である。従って，前記作業開始時刻通りに各作業工程を開始すると，前記出荷時刻Ｃ１〜Ｃ１０に間に合うように作業工程を終えることができる。
【００１６】
具体的に，前記制御部１は，図７（ａ）に示すように，まず，前記作業開始時刻を算出する対象となる作業工程の作業番号を設定する（ステップＳ３１）。ここでは，前記制御部１は，作業番号をＬとして，初期値０から一つずつ加算する（Ｌ＝Ｌ＋１）。
続いて，前記制御部１は，前記ステップＳ３１で指定された作業番号の作業工程について前記作業開始時刻を算出し（ステップＳ３２），その算出された作業開始時刻を前記仮スケジュールに追記する（ステップＳ３３）。
そして，前記制御部１は，次のステップＳ３４において，前記作業番号１〜１０の全ての作業工程について作業開始時刻の算出が終了したか否かを判断する。具体的に，ここでは，前記制御部１は，前記作業番号Ｌが１０に達したか否かを判断する。前記ステップＳ３４において，前記作業番号１〜１０の全ての作業工程について作業開始時刻の算出が終了したと判断されると，当該ステップＳ３は終了される。
これにより，前記ステップＳ３では，前記作業番号１〜１０の全ての作業工程について作業開始時刻が算出される。ここでは，図７（ｂ）に示すように，前記作業番号１〜１０について作業開始時刻ＴＳ１〜ＴＳ１０が算出されたものとする。
【００１７】
（ステップＳ４）
次に，前記ステップＳ４の作業終了時刻算出処理では，前記制御部１は，前記仮スケジュールにおける前記コイルＡ１〜Ａ１０の作業工程ごとに作業終了時刻を算出する。ここに，係る作業終了時刻算出処理は，前記制御部１の前記作業終了時刻算出機能１３によって実行される。
ここで，前記作業終了時刻とは，前記コイルＡ１〜Ａ１０の作業工程各々が終了する時刻を示している。具体的に，前記コイルＡ２〜Ａ１０の作業終了時刻は，一つ前の作業工程の作業終了時刻に，自己の作業時間Ｋ１〜Ｋ３と，図１におけるコイル出荷場から作業場の間及び作業場からコイル出荷場の間のクレーンやベルトコンベアによる搬送時間とを足した時刻である。
一方，作業番号が１である前記コイルＡ１には，前の作業工程がないため，前記作業終了時刻は，該コイルＡ１の入荷時刻Ｂ１を始期として作業が行われたものとして算出するものとする。即ち，前記コイルＡ１の作業終了時刻は，前記入荷時刻Ｂ１に，前記作業時間Ｋ１と，図１におけるコイル出荷場から作業場の間及び作業場からコイル出荷場の間のクレーンやベルトコンベアによる搬送時間とを足した時刻である。
【００１８】
具体的に，前記制御部１は，図８（ａ）に示すように，まず，前記作業終了時刻を算出する対象となる作業工程の作業番号を設定する（ステップＳ４１）。ここでは，前記制御部１は，作業番号をＬとして，初期値０から一つずつ加算する（Ｌ＝Ｌ＋１）。
続いて，前記制御部１は，前記ステップＳ４１で指定された作業番号の作業工程について前記作業終了時刻を算出し（ステップＳ４２），その算出された作業終了時刻を前記仮スケジュールに追記する（ステップＳ４３）。
そして，前記制御部１は，次のステップＳ４４において，前記作業番号１〜１０の全ての作業工程について作業終了時刻の算出が終了したか否かを判断する。具体的に，ここでは，前記制御部１は，前記作業番号Ｌが１０に達したか否かを判断する。前記ステップＳ４４において，前記作業番号１〜１０の全ての作業工程について作業終了時刻の算出が終了したと判断されると，当該ステップＳ４は終了される。
これにより，前記ステップＳ４では，前記作業番号１〜１０の全ての作業工程について作業終了時刻が算出される。ここでは，図８（ｂ）に示すように，前記作業番号１〜１０について作業終了時刻ＴＥ１〜ＴＥ１０が算出されたものとする。
【００１９】
（ステップＳ５）
その後，前記ステップＳ５の作業条件充足判定処理では，前記制御部１は，前記ステップＳ３及び前記ステップＳ４で算出された前記作業開始時刻ＴＳ１〜ＴＳ１０及び前記作業終了時刻ＴＥ１〜ＴＥ１０に基づいて，前記作業番号１〜１０の作業工程各々が，前記出荷時刻Ｃ１〜Ｃ１０に間に合うようにスケジューリングされているか否かを判定する（ステップＳ５）。
即ち，前記ステップＳ５では，前記生産スケジュールで設定された作業条件である前記出荷時刻Ｃ１〜Ｃ１０（納期の一例）を充足することが可能であるか否かを判定している。ここに，係る作業条件充足判定処理は，前記制御部１の前記作業条件充足判定機能１４によって実行される。
【００２０】
具体的に，前記制御部１は，図９（ａ）に示すように，まず，判定の対象となる作業工程の作業番号を設定する（ステップＳ５１）。ここでは，前記制御部１は，作業番号をＬとして，初期値０から一つずつ加算する（Ｌ＝Ｌ＋１）。
続いて，前記制御部１は，前記ステップＳ５１で指定された作業番号の作業工程について前記作業開始時刻と前記作業終了時刻との時間差を算出する（ステップＳ５２）。
そして，前記制御部１は，前記ステップＳ５２で算出された時間差が０以上であるか否かを判定する（ステップＳ５３）。これにより，前記制御部１は，前記作業番号１〜１０の作業工程各々が前記出荷時刻Ｃ１〜Ｃ１０に間に合うか否か，即ち作業条件を充足しているか否かを判定している。
ここで，本実施の形態では，前記作業開始時刻ＴＳ１〜ＴＳ１０の算出の際（図７（ａ）参照）と，前記作業終了時刻ＴＥ１〜ＴＥ１０の算出の際（図８（ａ）参照）との両方で前記作業時間Ｋ１〜Ｋ３を考慮している。
これにより，当該ステップＳ５では，実際の作業時間として前記作業時間Ｋ１〜Ｋ３の２倍の時間が確保されていることを条件に，前記出荷時刻Ｃ１〜Ｃ１０を充足するものと判定されることになる。即ち，当該スケジューリング処理では，２倍の作業時間が確保されるように処理されている。
【００２１】
そして，前記出荷時刻Ｃ１〜Ｃ１０を充足すると判定された場合には（ステップＳ５３のＹｅｓ側），その作業工程についての判定結果として，「ＯＫ」を前記仮スケジュールに追記する（ステップＳ５４）。一方，前記出荷時刻Ｃ１〜Ｃ１０を充足しないと判定された場合には（ステップＳ５３のＮｏ側），その作業工程についての判定結果として，「ＮＧ」を前記仮スケジュールに追記する（ステップＳ５５）。
その後，前記制御部１は，前記作業番号１〜１０の全ての作業工程についての判定が終了したか否かを判断し（ステップＳ５６），終了したと判断されると（ステップＳ５６のＹｅｓ側），処理はステップＳ５７に移行する。
ステップＳ５７では，前記制御部１は，前記作業番号１〜１０の全ての作業工程についての判定結果が「ＯＫ」であるか否かを判断する。ここで，全ての作業工程についての判定結果が「ＯＫ」であると判断された場合には（ステップＳ５７のＹｅｓ側），当該ステップＳ５は終了される。一方，作業工程のいずれか一つだけでも判定結果が「ＮＧ」であると判断された場合には（ステップＳ５７のＮｏ側），処理はステップＳ５８に移行して，前記制御部１によるスケジューリングエラー処理が実行される。前記スケジューリングエラー処理では，例えば，次のステップＳ６に移行することなく当該スケジューリング処理を終了させ，前記出力部４に対するエラー表示などが行われる。
【００２２】
（ステップＳ６）
そして，前記ステップＳ６のスケジュール更新処理では，前記制御部１は，前記仮スケジュールにおける作業番号１〜１０の作業工程の実行順序を，前記教育実行項目に基づいて並べ替え，該仮スケジュールを更新するスケジュール更新処理が実行される。ここに，係るスケジュール更新処理は，前記制御部１の前記スケジュール更新機能１５によって実行される。
本発明に係る前記スケジューリング装置Ｘは，前記スケジュール更新処理の手法に特徴を有しており，具体的には，前記仮スケジュールにおける作業番号１〜１０の作業工程を，前記出荷時刻Ｃ１〜Ｃ１０を満たすことのできる範囲（作業条件が充足可能な範囲）で，前記教育実行項目に基づいて前記作業工程のいずれか一つ又は複数について作業者を教育するための前記連続作業時間を設けるようにスケジューリングを行うものである。
以下，図１０及び図１１を用いて前記スケジュール更新処理について説明する。
【００２３】
図１０に示すように，まず，前記制御部１は，前記教育実行項目（図５（ｂ）参照）及び前記仮スケジュール（図９（ｂ））を前記記憶部２から読み出す（ステップＳ６１）。前述したように，前記教育実行項目には，前記連続作業回数及び前記優先度が含まれている。
次に，ステップＳ６２では，前記制御部１は，優先度をＮとして，初期値０から一つずつ加算する（Ｎ＝Ｎ＋１）。これにより，優先度の高い作業工程から順に並び替えの対象となる。
【００２４】
続いて，前記制御部１は，作業番号をＬとして，初期値０から一つずつ加算し（ステップＳ６３），該作業番号Ｌの作業工程の優先度が前記優先度Ｎと一致するか否かを判定する（ステップＳ６４）。即ち，前記作業番号１〜１０の作業工程の中から優先度が前記優先度Ｎである作業工程が検索される。
前記ステップＳ６４において，前記作業番号Ｌの作業工程の優先度が前記優先度Ｎと一致しないと判定された場合には（ステップＳ６４のＮｏ側），処理はステップＳ６４１に移行する。ステップＳ６４１では，前記作業番号１〜１０の全ての作業工程についての検索が終了したか否かが前記制御部１によって判断される。具体的に，ここでは，前記制御部１は，前記作業番号Ｌが１０に達したか否かを判断する。前記ステップＳ６４１において，前記作業番号１〜１０の全ての作業工程についての検索が終了したと判断されると（ステップＳ６４１のＹｅｓ側），処理は後述のステップＳ７８に移行する。なお，前記作業番号１〜１０の全ての作業工程についての検索が終了するまでの間は（ステップＳ６４１のＮｏ側），処理は前記ステップＳ６３に戻される。
【００２５】
一方，前記ステップＳ６４において，前記作業番号Ｌの作業工程の優先度が前記優先度Ｎと一致すると判定された場合には（ステップＳ６４のＹｅｓ側），処理はステップＳ６５に移行する。
そして，前記制御部１は，前記ステップＳ６４で優先度が前記優先度Ｎであると判定された作業工程の前記作業番号Ｌを，作業工程を並び替える際の基準作業番号ＬＳとして前記記憶部２に記憶する（ステップＳ６５）。
【００２６】
次に，前記制御部１は，前記基準作業番号ＬＳの次の作業番号以降の作業工程の中に，前記優先度Ｎの作業工程が存在するか否かを検索するべく，前記作業番号Ｌを一つずつ加算する（ステップＳ６６）。
そして，続くステップＳ６７で，前記制御部１は，前記作業番号Ｌの作業工程の優先度が前記優先度Ｎと一致するか否かを判定する。即ち，前記基準作業番号ＬＳ以降の作業番号に係る作業工程の中から優先度が前記優先度Ｎである作業工程が検索される。
前記ステップＳ６７において，前記作業番号Ｌの作業工程の優先度が前記優先度Ｎと一致しないと判定された場合には（ステップＳ６７のＮｏ側），処理はステップＳ６７１に移行する。ステップＳ６７１では，前記作業番号１〜１０の全ての作業工程についての検索が終了したか否かが前記制御部１によって判断される。具体的に，ここでは，前記制御部１は，前記作業番号Ｌが１０に達したか否かを判断する。前記ステップＳ６７１において，前記作業番号１〜１０の全ての作業工程についての検索が終了したと判断されると（ステップＳ６７１のＹｅｓ側），処理は後述のステップＳ７８に移行する。なお，前記作業番号１〜１０の全ての作業工程についての検索が終了するまでの間は（ステップＳ６７１のＮｏ側），処理は前記ステップＳ６６に戻される。
【００２７】
一方，前記ステップＳ６７において，前記作業番号Ｌの作業工程の優先度が前記優先度Ｎと一致すると判定された場合には（ステップＳ６７のＹｅｓ側），処理はステップＳ６８に移行する。
そして，ステップＳ６８では，前記制御部１によって，前記作業番号Ｌの作業工程を，前記基準作業番号ＬＳの作業工程の次に挿入するように，前記仮スケジュールにおける作業工程が並び替えられる。
【００２８】
ここで，これまでの並び替えについて具体例を説明する。図５（ｂ）に示す教育実行項目では，前記梱包方法Ｐ１の優先度が「１」に設定されており，図９（ｂ）に示した仮スケジュールでは，優先度が「１」である前記梱包方法Ｐ１を用いる前記コイル番号Ａ１の作業工程が作業番号１である。従って，初めの前記基準作業番号ＬＳは，前記コイル番号Ａ１の作業工程が作業番号である「１」となる。
そして，作業番号１以降で優先度が「１」である作業工程，即ち前記梱包方法Ｐ１を用いる作業工程は，作業番号４の前記コイル番号Ａ４に係る作業工程である。
従って，前記ステップＳ６８では，図１１（ａ）に示すように，作業番号４の前記コイル番号Ａ４に係る作業工程が，作業工程１の前記コイル番号Ａ１に係る作業工程の次に挿入される。なお，元の作業番号２以降の作業工程は，その作業番号が繰り下げられる。
これにより，前記梱包方法Ｐ１の作業工程が２回連続して実行されることになり，該梱包方法Ｐ１に係る作業工程の作業者の教育を効率的に行うことが可能となる。
【００２９】
ところで，前記ステップＳ６８において前記仮スケジュールの作業工程を並び替えると，該作業工程のいずれか一つ又は複数が前記出荷時刻を充足しなくなるおそれがある。そこで，前記ステップＳ６８の時点では，前記仮スケジュールの並び替え（更新）を確定させることなく，続くステップＳ６９に移行する。このとき，前記制御部１のＲＡＭには，一時的に前記ステップＳ６８で並び替えを行う前の仮スケジュールと，並び替え後の仮スケジュールとの両方のデータが記憶されている。
そして，ステップＳ６９〜Ｓ７１では，前記制御部１によって，前記ステップＳ６８において更新された後の前記仮スケジュールにおいて全ての作業工程が前記出荷時刻Ｃ１〜Ｃ１０の作業条件を充足するか否かを判定している。係る判定は，前記制御部１の前記作業開始時刻算出機能１２，前記作業終了時刻算出機能１３及び前記作業条件充足判定機能１４によって実行される前記ステップＳ３〜Ｓ５（図７〜図９参照）と同様の処理であるため，ここでは説明を省略する。なお，図１１（ａ）〜（ｄ）には，各々の状態に変更された仮スケジュールについて算出された作業開始時刻各々をＴＳ１１〜ＴＳ２０，ＴＳ２１〜ＴＳ３０，ＴＳ３１〜ＴＳ４０，ＴＳ４１〜ＴＳ５０とし，作業終了時刻各々をＴＥ１１〜ＴＥ２０，ＴＥ２１〜ＴＥ３０，ＴＥ３１〜ＴＥ４０，ＴＥ４１〜ＴＥ５０としており，そのときの判定結果（「ＯＫ」又は「ＮＧ」）を示している。
【００３０】
そして，前記制御部１は，ステップＳ７２において，前記ステップＳ７１でなされた全ての作業工程について判定結果が「ＯＫ」であるか否かを判断する。
ここで，前記ステップＳ７２において，全ての作業工程について判定結果が「ＯＫ」であると判断されると（ステップＳ７２のＹｅｓ側），処理はステップＳ７３に移行する。
ステップＳ７３では，前記制御部１は，前記仮スケジュールにおける作業工程の並び替えを有効にして，該仮スケジュールの更新を確定する。具体的には，前記制御部１のＲＡＭに記憶された並び替え後の仮スケジュールが前記記憶部２に記憶された仮スケジュールに上書きされる。このように，当該スケジューリング装置Ｘにおけるスケジューリング処理では，全ての作業工程で作業条件を充足することを条件に前記仮スケジュールの更新が行われる。その後，処理はステップＳ７４に移行する。
【００３１】
ステップＳ７４では，前記制御部１によって，前記優先度Ｎの作業工程が連続している回数を示すカウンタＭ（初期値は「１」）が１つ加算される（Ｍ＝Ｍ＋１）。
次にステップＳ７５で，前記制御部１は，前記カウンタＭが，現在選択されている作業工程で用いられる梱包方法の教育実行項目として設定された前記連続作業回数に達しているか否かを判定する。ここで，前記カウンタＭが前記連続作業回数に達していないと判断されると（ステップＳ７５のＮｏ側），処理は前記ステップＳ７５１に移行し，前記制御部１によって前記作業番号Ｌが基準作業番号ＬＳとして記憶される。その後，処理は前記ステップＳ６６に戻される。
【００３２】
一方，前記カウンタＭが前記連続作業回数に達していると判定されると（ステップＳ７５のＹｅｓ側），処理は前記ステップＳ７６に移行して，前記制御部１によって前記カウンタＭがリセットされる（カウンタＭ＝１）。
そして，ステップＳ７７では，作業番号１〜１０の全ての作業工程について検索処理が終了したか否かが前記制御部１によって判断される。具体的に，前記制御部１は，前記作業番号Ｌが１０に達したか否かを判断することにより，全ての作業工程について検索処理が終了したか否かを判断する。
ここで，前記作業番号１〜１０の全ての作業工程について検索処理が終了していないと判断されている間は（ステップＳ７７のＮｏ側），処理はステップＳ７２３を経由した後，前記ステップＳ６３に戻され，次の作業番号以降について同様の処理が実行される。
前記ステップＳ７２３では，前記基準作業番号ＬＳが前記作業番号Ｌに代入される。即ち，前記基準作業番号ＬＳよりも後の作業工程について，前記ステップＳ６４以降の処理が再度実行される。これにより，例えば，図１１（ａ）の仮スケジュールでは，前記ステップＳ６３に戻って次の作業番号以降について同様の処理が実行されることにより，図１１（ｂ）に示すように，作業番号６のコイル番号Ａ６に係る作業工程の次に，作業番号８のコイル番号Ａ８に係る作業工程が挿入される。
【００３３】
他方，前記ステップＳ７７において，前記作業番号１〜１０の全ての作業工程について検索処理が終了したと判断されると（ステップＳ７７のＹｅｓ側），処理はステップＳ７８に移行する。
ステップＳ７８では，前記制御部１によって，全ての優先度について検索処理が終了したか否かが判断される。ここでは，前記制御部１は，前記優先度Ｎが「３」であるか否かを判断することにより全ての優先度について検索処理が終了したか否かを判断する。
ここで，全ての優先度について検索処理が終了したと判断されると（ステップＳ７８のＹｅｓ側），前記仮スケジュールが正規のスケジュールとして確定されて前記記憶部２に記憶され（ステップＳ７９），当該ステップＳ６の処理は終了される。なお，前述したように，続くステップＳ７では，前記制御部１によって前記ステップＳ６で更新された後のスケジュールが出力される。
【００３４】
一方，全ての優先度について検索処理が終了していないと判断されると（ステップＳ７８のＮｏ側），処理はステップＳ７８１に移行する。
ステップＳ７８１では，前記制御部１によって前記作業番号Ｌがリセット（作業番号Ｌ＝０）され，処理は前記ステップＳ６２に戻される。これにより，前記ステップＳ６２で前記優先度Ｎが一つ加算され，前記ステップＳ６３以降の処理が再度実行される。これにより，例えば，図１１（ｃ）に示すように，優先度が「２」である前記梱包方法Ｐ２が連続するように前記仮スケジュールが並び替えられる。
【００３５】
ここで，図１１（ｃ）に示すように，前記ステップＳ７１における判定結果に「ＮＧ」が生じたとする。具体的に，図１１（ｃ）に示す例では，作業番号５以降の作業工程が出荷時刻を充足することができないという結果が得られている。
このような場合には，前記ステップＳ７２において，全ての作業工程について判定結果が「ＯＫ」ではないと判断され（ステップＳ７２のＮｏ側），処理はステップＳ７２１に移行する。
ステップＳ７２１では，前記制御部１によって，前記ステップＳ６８における作業工程の並び替えが取り消されて無効となり，該仮スケジュールが並び替えられる前に戻される。例えば，図１１（ｃ）の仮スケジュールは，図１１（ｂ）の仮スケジュールに戻されることになる。具体的には，前記制御部１のＲＡＭに記憶された並び替え後の仮スケジュールが消去され，前記記憶部２に記憶された仮スケジュールの上書きが行われない。
【００３６】
その後，ステップＳ７２２では，全ての作業工程について検索処理が終了したか否かが前記制御部１によって判断される。具体的に，前記制御部１は，前記作業番号Ｌが１０に達したか否かを判断することにより，全ての作業工程について検索処理が終了したか否かを判断する。
ここで，全ての作業工程について検索処理が終了したと判断されると（ステップＳ７２２のＹｅｓ側），処理は前記ステップＳ７８に移行するが，終了していないと判断されると（ステップＳ７２２のＮｏ側），処理は前記ステップＳ７２３を経由して前記ステップＳ６６に戻って次の作業番号以降について同様の処理が実行される。例えば，図１１（ｄ）に示すように，優先度が「２」である前記梱包方法Ｐ２を用いる前記コイル番号Ａ８に係る作業工程の次に，同じく前記梱包方法Ｐ２を用いる前記コイル番号Ａ１０に係る作業工程が挿入される。
【００３７】
以上，説明したように，前記ステップＳ６のスケジュール更新処理では，少なくとも出荷時刻を充足することのできる範囲内で，複数種別の梱包方法Ｐ１〜Ｐ３についての教育実行項目に含まれた優先度の高い作業工程から順に，該作業工程を連続して実行させる教育機会を確保するようにスケジューリングが行われる。
これにより，前記ステップＳ２で作成された仮スケジュールに時間的な余裕がある場合には，その余裕の範囲内で作業工程各々の教育機会を設けて効率的に作業者への教育を行うことができる。
【実施例】
【００３８】
本実施例では，前記制御部１が，複数種別の作業工程各々について予め設定された順で段階的に教育機会を設けるようにスケジューリングを行う場合について説明する。例えば，高次の技能レベルの作業工程についての教育機会が，それよりも低次の技能レベルの作業工程についての教育機会が確保された後でなければ設けられないようにスケジューリングを行うことが考えられる。
具体的に前記実施の形態で説明した構成を例に挙げて説明すると，優先度が「１」である前記梱包方法Ｐ１の教育機会として，該梱包方法Ｐ１の教育に必要な時間が確保された場合には，優先度が次に高い梱包方法Ｐ２についての教育機会を設けるようにスケジューリングを行い，該梱包方法Ｐ１の教育に必要な時間が確保されていない場合には，該梱包方法Ｐ１よりも優先度の低い梱包方法Ｐ２や梱包方法Ｐ３についての教育機会を設けないようにスケジューリングを行うことが考えられる。
【００３９】
このように，前記梱包方法Ｐ１〜Ｐ３の教育機会を，必ず予め設定された優先度の高い順で設けるようにスケジューリングを行うことにより，優先度の高い梱包方法Ｐ１を習得していない作業者に，それよりも優先度が低い梱包方法Ｐ２や梱包方法Ｐ３を教育しないようにすることで，作業者の教育を段階的に進めていくことができる。例えば，優先度を難易度や危険度として捉えると，技能レベルの低い作業者に対して，難易度や危険度の高い作業工程についての教育を行わないようにスケジューリングを行うことができる。
さらに，前記実施の形態で説明したスケジュール更新処理（図１０参照）では，優先度が高い作業工程の教育実行項目が満たされているか否かにかかわらず，その次に優先度の高い作業工程の教育機会を設けるようにスケジューリングが行われていたが，本実施例の構成によれば，優先度の高い作業工程の教育実行項目が満たされていなければ，その次に優先度の高い作業工程についての教育機会を設けるための処理がなされないため処理負担が軽減される。
【００４０】
ところで，前記梱包方法Ｐ１〜Ｐ３各々の教育機会が設けられたか否かの判断は，その教育のための連続作業時間が確保されたか否かに限られず，例えば断続して設けられた教育機会を累積的に判断してもよい。例えば，１週間毎にスケジューリングを行う場合，１週目のスケジューリングによって前記梱包方法Ｐ１の教育機会が該梱包方法Ｐ１の教育に必要な時間の半分確保された場合には，次の２週目のスケジューリング時に，残りの半分を確保するようにスケジューリングを行うことが考えられる。そして，数週にわたるスケジュールの中で前記梱包方法Ｐ１の教育に必要な時間の教育機会が設けられると，その後は，次に優先度の高い前記梱包方法Ｐ２を設けるようにスケジューリングが行われる。
【産業上の利用可能性】
【００４１】
本発明は，生産現場や物流現場などにおいて複数種別の作業工程のスケジューリングを行うスケジューリング装置に利用することができる。
【図面の簡単な説明】
【００４２】
【図１】本発明の実施の形態に係るスケジューリング装置が適用される作業現場の一例を示すブロック図。
【図２】本発明の実施の形態に係るスケジューリング装置の概略構成を示すブロック図。
【図３】生産スケジュールの一例を示す図。
【図４】本発明の実施の形態に係るスケジューリング装置において実行されるスケジューリング処理の手順の一例を説明するためのフローチャート。
【図５】教育実行項目設定処理を説明するための図。
【図６】仮スケジュール作成処理を説明するための図。
【図７】作業開始時刻算出処理を説明するための図。
【図８】作業終了時刻算出処理を説明するための図。
【図９】作業条件充足判定処理処理を説明するための図。
【図１０】スケジュール更新処理を説明するための図。
【図１１】スケジュール更新処理を説明するための図。
【符号の説明】
【００４３】
１…制御部
１０…教育実行項目設定機能（教育実行項目設定手段の一例）
１１…仮スケジュール作成機能（仮スケジュール作成手段の一例）
１２…作業開始時刻算出機能
１３…作業終了時刻算出機能
１４…作業条件充足判定機能（作業条件充足判定手段の一例）
１５…スケジュール更新機能（スケジュール更新手段の一例）
１６…教育実行項目充足判定機能（教育実行項目充足判定手段の一例）
２…記憶部
３…操作部
４…出力部
Ｓ１，Ｓ２，，，…処理手順（ステップ）番号
Ｘ…スケジューリング装置
Ｙ…ホストコンピュータ
【図１】
0004848341.tif 000002
【図２】
0004848341.tif 000003
【図３】
0004848341.tif 000004
【図４】
0004848341.tif 000005
【図５】
0004848341.tif 000006
【図６】
0004848341.tif 000007
【図７】
0004848341.tif 000008
【図８】
0004848341.tif 000009
【図９】
0004848341.tif 000010
【図１０】
0004848341.tif 000011
【図１１】
0004848341.tif 000012