(57)【要約】【課題】並行して作業することができない作業工程の組合せを考慮した好適な作業計画を作成することができる作業計画作成システム、作業計画作成方法および作業計画作成プログラムを提供する。【解決手段】作業計画作成システムは、複数の作業工程と、前記作業工程毎に並行して作業できない並行不可作業工程との対応関係を記憶する工程情報蓄積部と、前記作業工程のうちの１つを開始するときに、前記対応関係を参照し、前記並行不可作業工程の作業状況を判定する判定部と、前記判定部が、前記並行不可作業工程が作業中であると判定した場合、前記作業工程のうちの１つを開始しないように前記作業工程の実行順番を示す作業計画を作成する作成部とを備える。【選択図】図１
2018097405.tif 000002
【特許請求の範囲】
【請求項１】
複数の作業工程と、前記作業工程毎に並行して作業できない並行不可作業工程との対応関係を記憶する工程情報蓄積部と、
前記作業工程のうちの１つを開始するときに、前記対応関係を参照し、前記並行不可作業工程の作業状況を判定する判定部と、
前記判定部が、前記並行不可作業工程が作業中であると判定した場合、前記作業工程のうちの１つを開始しないように前記作業工程の実行順番を示す作業計画を作成する作成部と
を備える作業計画作成システム。
【請求項２】
前記作業工程毎に設定された前記作業工程を実行する条件である作業条件に基づいて、前記並行不可作業工程を示す情報を作成する情報生成部
をさらに備えることを特徴とする請求項１に記載の作業計画作成システム。
【請求項３】
前記作業工程は、
作業体が作業する製品に係る作業工程であって、
前記情報生成部は、
前記作業体によって前記製品に係る作業工程が作業可能な姿勢により表された前記作業条件に基づき前記並行不可作業工程の情報を生成する
ことを特徴とする請求項２に記載の作業計画作成システム。
【請求項４】
前記作成部は、
前記並行不可作業工程が作業中である場合、前記作業工程のうちの１つの開始時刻を、作業中である前記並行不可作業工程の完了時刻以降に設定する
ことを特徴とする請求項１から３のいずれか一項に記載の作業計画作成システム。
【請求項５】
前記作成部は、
作業中である前記並行不可作業工程が複数ある場合、前記作業工程のうちの１つの開始時刻を、前記並行不可作業工程の完了時刻の内、最も遅い完了時刻以降に設定する
ことを特徴とする請求項４に記載の作業計画作成システム。
【請求項６】
前記作成部は、
前記作業工程の実行順番を変更した作業計画を複数作成し、コストおよび作業期間のうちの少なくとも一方に基づき前記作業計画を選択することを特徴とする
請求項１から５のいずれか一項に記載の作業計画作成システム。
【請求項７】
複数の作業工程と、前記作業工程毎に並行して作業できない並行不可作業工程との対応関係を記憶し、
前記作業工程のうちの１つを開始するときに、前記対応関係を参照し、前記並行不可作業工程の作業状況を判定し、
前記並行不可作業工程が作業中であると判定した場合、前記作業工程のうちの１つを開始しないように前記作業工程の実行順番を示す作業計画を作成する
ことを特徴とする作業計画作成方法。
【請求項８】
複数の作業工程と、前記作業工程毎に並行して作業できない並行不可作業工程との対応関係を記憶し、
前記作業工程のうちの１つを開始するときに、前記対応関係を参照し、前記並行不可作業工程の作業状況を判定し、
前記並行不可作業工程が作業中であると判定した場合、前記作業工程のうちの１つを開始しないように前記作業工程の実行順番を示す作業計画を作成する
ことをコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の作業工程から構成される作業計画を作成する作業計画作成システム、作業計画作成方法および作業計画作成プログラムに関するものである。
【背景技術】
【０００２】
製品の生産および修理などの作業を効率的に行ったり、製品の納期を保証したりするために、作業開始前に予め作業計画を作成し、作成された作業計画に沿って製品の生産などの作業を行うことが重要である。適切な作業計画を作成するためには、作業に用いる設備の空き状況や、作業を行う作業員の空き状況などを十分に考慮した上で作業計画を作成することが必要である。
【０００３】
特許文献１には、各作業工程で用いる設備および治具などの使用時期、各作業工程で必要な人数の作業員の確保期間などを調整し、最適な作業計画を作成する装置が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１７６３８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ここで、複数の作業工程を実行するときに、同時に作業することができない作業工程の組合せが存在する場合がある。例えば、大型の部品について仕上げ作業をするとき、部品を治具で固定し、仕上げ作業を行う。この際、地面と向かい合っている部分など、作業者の手が届かない部分については仕上げ作業をすることができない。したがって、全ての面について仕上げ作業を完了させるためには、一の面について仕上げ作業を行った後、作業者の手や作業器具が届く位置まで、治具などにより部品を移動させまたは回転させる必要がある。
【０００６】
このような作業工程を含む作業計画を作成する場合、一の作業工程と他の作業工程とが同時に並行して実施できないことを考慮する必要がある。特許文献１に記載された技術では、作業工程の前後関係を考慮して作業計画を作成することはできるが、同時に作業できない作業工程を考慮した作業計画を作成することができない。そのため、作成された作業計画を実際に実施することが難しい場合があり、作業現場で作業員が作業計画を手作業で調整する必要が生じる。
【０００７】
本発明は、このような課題に鑑みてなされたものであって、並行して作業できない作業工程の組合せを考慮して好適な作業計画を作成することができる作業計画作成システム、作業計画作成方法および作業計画作成プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するための本発明の一態様は、以下の手段を採用する。
即ち、本発明の一態様は、作業計画作成システムが、複数の作業工程と、前記作業工程毎に並行して作業できない並行不可作業工程との対応関係を記憶する工程情報蓄積部と、前記作業工程のうちの１つを開始するときに、前記対応関係を参照し、前記並行不可作業工程の作業状況を判定する判定部と、前記判定部が、前記並行不可作業工程が作業中であると判定した場合、前記作業工程のうちの１つを開始しないように前記作業工程の実行順番を示す作業計画を作成する作成部とを備える。
【発明の効果】
【０００９】
本発明に係る作業計画作成システム、作業計画作成方法および作業計画作成プログラムは、並行して作業することができない作業工程の組合せを考慮した好適な作業計画を作成することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態である作業計画作成システムの構成を示すブロック図である。
【図２】本発明の一実施形態である作業計画作成装置の構成を示すブロック図である。
【図３】本発明の一実施形態である作業計画作成装置の機能を示すブロック図である。
【図４】工程情報蓄積部に蓄積される作業工程情報を示す模式図である。
【図５】並行不可作業情報を含む作業工程情報を示す模式図である。
【図６】本発明の一実施形態である作業計画作成処理を示すフローチャートである。
【図７】工程情報蓄積部に蓄積されるイベントリストの模式図である。
【図８】開始イベントの処理を示すフローチャートである。
【図９】工程番号１の完了イベントを生成した後のイベントリストの一例を示す模式図である。
【図１０】工程番号４の開始イベントを再生成した後のイベントリストの一例を示す模式図である。
【図１１】完了イベントの処理を示すフローチャートである。
【図１２】作業計画作成の終了処理を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、本発明の一実施形態の作業計画作成システム１について、詳細に説明する。なお、この実施形態により本発明が限定されるものではなく、また、実施形態が複数ある場合には、各実施形態を組み合わせて構成するものも含むものである。さらに、この実施形態における構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。
【００１２】
図１は、本発明の一実施形態である作業計画作成システム１の構成を示すブロック図である。図１に示すように、本発明の一実施形態である作業計画作成システム１は、入力装置１１と、出力装置１２と、作業計画作成装置１３と、を備える。
【００１３】
入力装置１１は、例えば、マウス、キーボードなどによって実現される。入力装置１１は、操作者の指示を受けてその指示に応じた電気信号を生成し、生成した電気信号を作業計画作成装置１３に出力する。なお、入力装置１１は、出力装置１２と一体となったタッチパネルによって実現され、操作者がパネルをタッチ操作することで、そのタッチ操作に応じた電気信号が作業計画作成装置１３に出力されるよう構成されてもよい。
【００１４】
出力装置１２は、例えば、ＬＣＤ（Ｌｉｑｕｉｄ Ｃｒｙｓｔａｒｌ Ｄｉｓｐｌａｙ）や有機ディスプレイなどの表示装置、または、印刷装置などにより実現される。出力装置１２は、作業計画作成装置１３から入力される処理結果を出力する。
また、入力装置１１は、情報通信装置を備え、作業計画作成装置１３と通信により情報を入出力できるように構成されてもよい。また、出力装置１２は、情報通信装置を備え、作業計画作成装置１３と通信により情報を入出力できるように構成されてもよい。
【００１５】
図２は、本発明の一実施形態である作業計画作成装置１３の構成を示すブロック図である。作業計画作成装置１３は、情報処理装置、例えば一般的なコンピュータ３０を用いて実現することができる。コンピュータ３０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３３、ストレージ装置３４、外部Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３５、および通信Ｉ／Ｆ３６などを有する。
ＣＰＵ３１は、ＲＯＭ３３やストレージ装置３４などに格納されたプログラムやデータをＲＡＭ３２に記憶させ、処理を実行することで、コンピュータ３０の各機能を実現する演算装置である。ＲＡＭ３２は、ＣＰＵ３１のワークエリアなどとして用いられる揮発性のメモリである。ＲＯＭ３３は、電源を切ってもプログラムやデータを保持する不揮発性のメモリである。ストレージ装置３４は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などにより実現され、ＯＳ（Ｏｐｅｒａｔｉｏｎ  Ｓｙｓｔｅｍ）、アプリケーションプログラム、および各種データなどを記憶する。
外部Ｉ／Ｆ３５は、外部装置とのインターフェースである。外部装置には、例えば、記録媒体３７などがある。コンピュータ３０は、外部Ｉ／Ｆ３５を介して、記録媒体３７の読取り、書き込みを行うことができる。記録媒体３７には、例えば、光学ディスク、磁気ディスク、メモリカード、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリなどが含まれる。
通信Ｉ／Ｆ３６は、有線通信または無線通信により、コンピュータ３０をネットワークに接続するインターフェースである。バスＢは、上記各構成装置に接続され、制御装置間で各種制御信号などを送受信する。
【００１６】
図３は、作業計画作成装置１３の機能を示すブロック図である。作業計画作成装置１３は、記憶部４１と、工程情報蓄積部４２と、計画処理部４３と、を有する。記憶部４１は、ＲＯＭなどによって実現され、作業計画作成処理における各ステップをコンピュータ実行命令として記述した作業計画作成プログラム４６を記憶する。
なお、作業計画作成処理とは、一の製品に係る作業工程の実行の順番を示す作業計画を作成する処理であり、後にフローチャートで詳細を示す。
【００１７】
工程情報蓄積部４２は、作業計画を構成する複数の作業工程を示す情報である作業工程情報５１を格納する。作業工程情報５１の内容は、入力装置１１を介して入力される。ここで、複数の作業工程は、人やロボットなど、作業工程の実行主体である作業体が同時に複数で作業する一の製品に係る作業工程である。複数の作業工程には、並行して同時に作業することができる作業工程の組合せと、並行して作業することができない作業工程（以下、「並行不可作業工程」と記載）の組合せとが含まれる。作業工程情報５１の詳細については後述する。また、工程情報蓄積部４２は、作業工程情報５１に基づき作成されるイベントリスト５２を格納する。イベントリスト５２の詳細については後述する。
【００１８】
計画処理部４３は、ＣＰＵ３１などによって実現される。計画処理部４３は、情報生成部４７と、判定部４４と、作成部４５と、を有する。計画処理部４３は、記憶部４１に記憶されている作業計画作成プログラム４６をロードし、実行することによって、情報生成部４７、判定部４４、作成部４５として機能する。計画処理部４３は、工程情報蓄積部４２から作業工程情報５１を取得する。計画処理部４３は、取得した作業工程情報５１に基づいて、好適な作業計画を作成する。計画処理部４３は、作成した作業計画を出力装置１２に出力する。
【００１９】
情報生成部４７は、工程情報蓄積部４２から作業工程情報５１Ａを取得する。作業工程情報５１Ａとは、作業計画の作成前に予め準備される情報であって、一の製品に係る複数の作業工程のそれぞれについて、作業時間、作業条件、および当該作業工程の後に実施すべき作業工程に関する情報を格納する。そして、情報生成部４７は、作業工程情報５１Ａに含まれる予め設定された作業条件に基づき、作業工程毎に並行不可作業工程の情報を特定する。情報生成部４７は、ある作業工程について抽出した並行不可作業工程を、当該作業工程に関連付けて作業工程情報５１Ａを作業工程情報５１Ｂに更新する。
【００２０】
判定部４４は、一の作業工程について作業計画の作成において一の作業工程の実行の順番を決定するとき、工程情報蓄積部４２から作業工程情報５１Ｂを取得する。判定部４４は、一の作業工程に関連付けられた並行不可作業工程を抽出し、参照する。判定部４４は、一の作業工程に関連付けられた並行不可作業工程に基づいて、並行不可作業工程の作業状況を判定する。具体的には、判定部４４は、作業工程情報５１Ｂが示す対応関係における作業計画の割り当ての対象とする作業工程について、並行不可作業工程が作業中であるか否かを確認する。つまり、作業工程が割り当てられる時刻において、並行不可作業工程が割り当てられているか否かを確認する。そして、判定部４４は、対象とする作業工程について並行不可作業工程が複数ある場合には、さらにその並行不可作業工程のすべてについて、並行不可作業工程が作業中であるか否かを確認する。そして、判定部４４は、並行不可作業工程があるか否かを示すすべて、すなわち、作業計画の割り当ての対象とする作業工程についての並行不可作業工程と、さらにその並行不可作業工程のすべてについての並行不可作業工程とが作業中であるか否かを示す確認結果を作成部４５に出力する。
【００２１】
作成部４５は、すべての確認結果が示す並行不可作業工程の組合せを考慮し、一の製品に係る作業工程の実行の順番を示す作業計画を作成する。具体的には、作成部４５は、判定部４４から出力された確認結果が、一の作業工程に対応付けて記憶されている並行不可作業工程が作業中でないことを示す場合、一の作業工程が開始可能と判断し、作業計画における一の作業工程の作業順または作業開始時刻を決定する。また、作成部４５は、判定部４４から出力された確認結果が、一の作業工程に対応付けて記憶されている並行不可作業工程が作業中であることを示す場合、一の作業工程が開始不可能と判断し、一の作業工程の作業計画を作成しない。並行不可作業工程が複数ある場合には、作成部４５は、並行不可作業工程の全てについて、並行不可作業工程が作業中でない場合のみ、一の作業工程が開始可能と判断し、一の作業工程について作業計画を作成する。
作成部４５は、作成した作業計画の中で最適な作業計画を出力装置１２に出力する。
【００２２】
次に、図４、図５を参照して、工程情報蓄積部４２内に格納される作業工程情報５１について説明する。
【００２３】
図４は、工程情報蓄積部４２が記憶する作業工程情報５１Ａを示す模式図である。図４に示すように、作業工程情報５１Ａは、作業工程毎に付与される工程番号、各作業工程で必要となる作業時間、各作業工程の後で行う必要がある他の作業工程（後工程）、および作業条件に関する情報を含んでいる。
【００２４】
ここで、作業条件とは、作業工程を実行する条件のことであり、各作業工程が実行可能な作業対象製品の置かれた姿勢などにより表される。ここでは、作業条件として、各作業工程を実行することができる置かれた作業対象製品を、絶対座標系により示される作業空間における所定の基準（ゼロ度）の視点から見たときの、所定の姿勢からの回転角が各作業工程に対応付けられて記憶されている。例えば、工程番号１には、作業条件（角度）として、ＸｏｒＹと記憶されている。これは、作業対象製品が置かれた姿勢が所定の基準から角度Ｘまたは角度Ｙだけ回転された姿勢に置かれたときにのみ工程番号１が示す作業工程が実行可能であることを表す。
【００２５】
図５は、作業工程情報５１Ａに含まれる作業条件の情報に基づき、並行不可作業工程における並行不可作業の情報が追加された作業工程情報５１Ｂを示す模式図である。例えば、工程番号１が示す作業工程は、作業条件としてＸｏｒＹを記憶されているに関連付けられている。そのため、作業条件としてＸおよびＹのいずれかにも関連付けられていない作業工程（例えば作業条件Ｚでのみ作業可能である作業工程、つまり、作業対象製品が角度Ｚに置かれたときにのみ作業可能である作業工程）である工程番号７、８、９が示す作業工程が、工程番号１が示す作業工程の並行不可作業として記憶されている。
【００２６】
次に、作業計画作成システム１において、作業計画作成装置１３が以下に示す作業計画作成処理を実行することによって、作業計画を作成する。以下、図６に示すフローチャートを参照し、作業計画作成装置１３による作業計画作成処理の流れについて説明する。
【００２７】
図６は、本発明の一実施形態である作業計画作成処理の流れを示すフローチャートである。管理者や作業者などが操作者として、入力装置１１を操作し、作業計画作成処理の実行を指示する。作業計画作成装置１３は、入力装置１１から作業計画作成処理を実行する指示の入力を受け付けると、作業計画作成処理を開始する（ステップＳ１）。
【００２８】
作業計画作成装置１３が作業計画作成処理を開始すると、情報生成部４７は、工程情報蓄積部４２から作業工程情報５１Ａを読み出す。情報生成部４７は、読み出した作業工程情報５１Ａに含まれる作業条件に基づき、並行して作業することができない他の作業工程（並行不可作業）を示す情報を、各作業工程について生成する（ステップＳ２）。例えば、図４で示した作業工程情報を例に説明すると、情報生成部４７は、工程番号１が示す作業工程について、工程番号１についての角度ＸまたはＹと異なる角度Ｚで作業を実施する作業工程、すなわち、工程番号７、８、９が示す作業工程を並行して作業することができないことを示す並行不可作業情報を生成する。
情報生成部４７は、生成した並行不可作業情報と各作業工程とを対応付けた対応関係を、作業工程情報５１Ｂとして、工程情報蓄積部４２に更新させる。
【００２９】
作成部４５は、工程情報蓄積部４２から作業工程情報５１Ｂを取得する（ステップＳ３）。ここでは、作業工程情報５１Ｂが図５に示す工程番号１〜９を有するものとして、以下の処理を説明する。
【００３０】
作成部４５は、シミュレーションにおける時刻の初期値を示すシミュレーション開始時刻を設定する（ステップＳ４）。シミュレーション開始時刻は、管理者や作業者によって入力装置１１を介して入力されることで設定されても良いし、作業者のシフトを示すカレンダーを予め保持し、作業開始日のシフトの開始時刻をシミュレーション開始時刻として設定してもよい。ここでは、例えば、２０１６年１０月１日８時００分をシミュレーション開始時刻として設定する。
【００３１】
作成部４５は、工程情報蓄積部４２から作業工程情報５１Ｂを取得する。作成部４５は、取得した作業工程情報５１Ｂに基づいて、イベントリスト５２を作成する（ステップＳ５）。イベントリスト５２は、各作業工程の開始を示す開始イベントの発生時刻と各作業工程の完了を示す完了イベントの発生時刻とにより製品についての作業計画を示すものである。作成部４５は、まず、各作業工程の開始イベントを生成し、イベントリスト５２を作成する。具体的には、作成部４５は、シミュレーション開始時刻である８時００分に作業開始可能な作業工程の開始イベントについて、発生時刻を８時００分と設定する。ここでは、一の作業工程の開始前に完了していなければならない他の作業工程がない作業工程、つまり、前工程がない工程番号１、２、４、７の開始イベントの発生時刻を８時００分と設定し、イベントリスト５２を作成する。
図７は、イベントリスト５２の一例を示す図である。イベントリスト５２Ａには、各工程番号が示す作業工程について、図５で示した作業工程情報５１Ｂに含まれる情報の外、各作業工程の開始時刻を設定するイベント種別（開始）およびイベントの発生時刻が記憶されている。なお、後述するようにイベントリスト５２Ａは、各作業工程の開始時刻を設定する開始イベント以外に、各作業工程の完了時刻を設定する完了イベントをイベント種別（完了）およびイベントの発生時刻を用いて設定してもよい。
作成部４５は、作成したイベントリスト５２Ａを工程情報蓄積部４２に出力する。工程情報蓄積部４２は、イベントリスト５２Ａを記憶する。
【００３２】
作成部４５は、シミュレーション開始時刻からシミュレーションを実行させる。シミュレーションが実行され、作成部４５は、シミュレーションにおける時刻を示すシミュレーション時刻が所定の時間進んだ現在のシミュレーション時刻において、工程番号１〜９についてのイベントがイベントリスト５２Ａに存在するか否かに基づいて、全てのイベントが完了したかを判定する（ステップＳ６）。作成部４５は、現在のシミュレーション時刻において、工程番号１〜９のいずれかについてのイベントが存在する、すなわち、完了していないイベントがあると判定した場合（ステップＳ６においてＮＯ）、現在のシミュレーション時刻と、イベントリスト５２Ａに含まれる各イベントの発生時刻とを比較する。作成部４５は、比較結果に基づいて、現在のシミュレーション時刻に最も近い将来のイベントの発生時刻を特定する。作成部４５は、現在のシミュレーション時刻を最も近い将来のイベントの発生時刻まで進める（ステップＳ７）。ここでは、８時００分が発生時刻となっている工程番号１、２、４、７の開始イベントがあるため、現在のシミュレーション時刻は８時００分に設定される。
【００３３】
作成部４５は、現在のシミュレーション時刻において完了イベントがあるか否かを判定する（ステップＳ８）。作成部４５は、８時００分が発生時刻となっている完了イベントは存在しないと判定した場合（ステップＳ８においてＮＯ）、現在のシミュレーション時刻が発生時刻となっている開始イベントを処理する（ステップＳ１０）。例えば、作成部４５はまず、８時００分に発生する開始イベントの内、最も工程番号が若い工程番号１について、開始イベントの処理を開始する。
【００３４】
また、作成部４５は、現在のシミュレーション時刻が発生時刻となっている完了イベントがあると判定した場合（ステップＳ８においてＹＥＳ）、完了イベントを処理する（ステップＳ９）。完了イベントの処理の詳細については後述する。
【００３５】
作成部４５は、全ての作業工程について開始イベントおよび完了イベントの処理が完了し、作業計画の作成が完了したと判定した場合（ステップＳ６においてＹＥＳ）、作成した作業計画を新たな作業計画解として、例えば記憶部４１に登録する（ステップＳ１１）。作成部４５は、後述するステップＳ３０１の処理へ進める。
【００３６】
図８は、開始イベントの処理を示すフローチャートである。判定部４４は、作業工程情報５１Ｂにおいて、一の作業工程に関連付けられた並行不可作業情報を抽出する（ステップＳ１０１）。ここでは、図７で示したイベントリスト５２Ａが設定されているものとし、工程番号１について、工程番号７、８、９を並行不可作業として抽出する。
【００３７】
判定部４４は、現在のシミュレーション時刻に作業することが計画されている作業工程に、並行不可作業に含まれる作業工程が含まれているか否かを判定する（ステップＳ１０２）。例えば、処理対象の開始イベントが工程番号１に係る開始イベントである場合、判定部４４は、工程番号７、８、９が示す作業工程が、現在のシミュレーション時刻である８時００分に現在のシミュレーション時刻以前に開始イベントが発生し、かつ現在のシミュレーション時刻までに完了イベントが発生していない状態を示す作業中であるか否かを判定する。具体的には、判定部４４は、まず、工程番号７が示す作業工程についての開始イベントが８時００分に計画されているか否かを判定する。ここで、既に処理されている開始イベントは、工程番号１のみである。そのため、判定部４４は、８時００分に作業が計画されている作業工程はなく、工程番号７が「作業中でない」と判定する。同様に、工程番号８、９についても、現在のシミュレーション時刻に計画されている作業工程には含まれていないため、判定部４４は、工程番号８、９が「作業中でない」と判定する。そして、判定部４４は、作業中の並行不可作業工程があるか否かを示す判定結果を作成部４５に出力する。
【００３８】
作成部４５は、処理対象の工程番号が示す作業工程について「作業中である」と判定された並行作業不可工程があるか確認し（ステップＳ１０３）、並行不可作業工程に含まれる全ての工程番号の作業工程が作業中でない場合（ステップＳ１０３においてＮＯ）、処理対象の工程番号が計画可能と判断し（ステップＳ１０４）、その工程番号の開始イベントの発生時刻とする作業計画を作成する（ステップＳ１０５）。例えば、処理対象の工程番号が工程番号１である場合、作成部４５は、処理対象の工程番号１が計画可能と判断し、その工程番号の開始イベントの発生時刻を８時００分として作業計画を作成する（ステップＳ１０５）。
【００３９】
次に、作成部４５は、処理対象の工程番号の完了イベントを生成する（ステップＳ１０６）。そして、作成部４５は、完了イベントの発生時刻をイベントリスト５２Ａに追加した工程番号の開始イベントは削除する。具体的には、処理対象の工程番号が工程番号１である場合、作成部４５は、工程番号１の作業時間「６０分」を作業工程情報５１Ｂから読み取り、現在のシミュレーション時刻８時００分に「６０分」を加えた「９時００分」を、工程番号１の完了イベントの発生時刻とし、イベントリスト５２Ａに追加する。そして、作成部４５は、完了イベントの発生時刻をイベントリスト５２Ａに追加した工程番号１の開始イベントは削除する。この時点でのイベントリストは図９のようになる（イベントリスト５２Ｂ）。そして、作成部４５は、処理対象の工程番号についての完了イベントの生成を完了する。
作成部４５は、生成した処理対象の工程番号についての完了イベントをイベントリスト５２Ｂに追加する。
【００４０】
計画処理部４３は、次の処理対象の作業工程についても同様の処理を行う。計画処理部４３は、工程番号２についても上述した処理を同様に実行することで、８時００分が発生時刻となっている工程番号２の作業工程の開始イベントを処理する。具体的には、判定部４４は、工程番号２の並行不可作業を抽出する（ステップＳ１０１）。作成部４５は、作業工程情報５１Ｂ（図５）を参照し、工程番号４、５、６、７、８、９を並行不可作業として抽出する。
【００４１】
判定部４４は、現在のシミュレーション時刻に実行することが計画されている作業工程に工程番号４、５、６、７、８、９の作業工程が含まれているかを判定する（ステップＳ１０２）。ここで、作業計画の作成が行われているのは工程番号１と２のみである。そのため、判定部４４は、現在のシミュレーション時刻である８時００分に実行することが計画されている作業は工程番号１のみと判定し、工程４、５、６、７、８、９全てについて「作業中でない」と判定する。この場合、判定部４４は、作業中でないことを示す判定結果を作成部４５に出力する。
【００４２】
作成部４５は、判定部４４の出力を受け、並行不可作業が全て作業中でないと判定された場合（ステップＳ１０３においてＮＯ）、工程番号２を計画可能と判断し（ステップＳ１０４）、工程番号２を８時００分に開始するよう作業計画を作成する（ステップＳ１０５）。つまりここでは、工程番号１と工程番号２を並行して作業するような作業計画が作成される。また、作成部４５は、工程番号２の作業時間「３０分」を作業工程情報５１Ｂから読み取り、現在のシミュレーション時刻８時００分に「３０分」を加え、８時３０分を発生時刻とする工程番号２の完了イベントを生成する（ステップＳ１０６）。
作成部４５は、生成した工程番号２の完了イベントをイベントリスト５２Ｂに追加する。
【００４３】
次に、計画処理部４３は、工程番号４の開始イベントを処理する。判定部４４は、工程番号４の並行不可作業として、工程番号２、３を抽出する（ステップＳ１０１）。そして、判定部４４は、現在のシミュレーション時刻において、工程番号２、３が作業中であるか確認する（ステップＳ１０２）。ここで、現在のシミュレーション時刻８時００分に実行が計画されている作業工程は、工程番号１、２である。そのため、判定部４４は、工程番号２が作業中であることを示す確認結果を作成部４５に出力する。
【００４４】
作成部４５は、判定部４４から確認結果を受け、一の作業工程に対応付けて設定された並行不可作業工程に含まれる作業工程が１つでも作業中である場合（ステップＳ１０３においてＹＥＳ）、一の作業工程の作業開始時刻の作業計画を作成せず、一の作業工程の開始イベントを再生成し、イベントリスト５２Ｂに追加する（ステップＳ１０７）。再生成とは、処理対象の開始イベントの発生時刻を書き替えた新たな開始イベントを生成し、処理対象の開始イベントを削除することである。再生成した開始イベントの発生時刻は、作業中の並行不可作業に含まれる作業工程の完了イベントの発生時刻とする。ここでは、作成部４５は、工程番号２の完了イベントの発生時刻である８時３０分を工程番号４の開始イベントの発生時刻として設定し、工程番号４の開始イベントを再生成する。そして、作成部４５は、再生成した工程番号４の開始イベントをイベントリスト５２Ｂに加える。ここで、作業中の並行不可作業が複数ある場合は、作成部４５は、各並行不可作業の完了イベントの発生時刻の内、最も遅い時刻を開始イベントの発生時刻として再生成する。図１０は、工程番号４の作業工程の開始イベントを再生成した状態のイベントリスト５２Ｃを示している。
【００４５】
作成部４５は、同様に工程番号７の開始イベントを処理する。作成部４５は、現在のシミュレーション時刻８時００分に処理できるイベントがなくなると、現在のシミュレーション時刻を、イベントリスト５２Ｃに含まれる最も近い将来のイベントの発生時刻に進める（ステップＳ７）。ここでは、工程番号２の完了イベントの発生時刻が８時３０分であるため、現在のシミュレーション時刻を、８時００分から８時３０分に進める。
【００４６】
作成部４５は、８時３０分が発生時刻となっている完了イベントがイベントリスト５２Ｃに含まれているか否かを確認する（ステップＳ８）。ここでは、作成部４５は、図１０に示すように、発生時刻が８時３０分である工程番号２の完了イベントがイベントリスト５２Ｃに含まれていることを確認する。そして、作成部４５は、工程番号２の完了イベントを処理する（ステップＳ９）。
【００４７】
図１１は、完了イベントの処理を示すフローチャートである。作成部４５は、工程番号２の作業工程が、完了イベントの発生時刻８時３０分に完了する作業計画を作成する（ステップＳ２０１）。次に、作成部４５は、工程番号２の作業工程に後工程があるか否かを作業工程情報５１Ｂを参照して確認する（ステップＳ２０２）。作成部４５は、工程番号２の作業工程には後工程がないと判定した場合（ステップＳ２０２においてＮＯ）、完了イベントの処理を完了する。作成部４５は、対象とする工程番号の作業工程に後工程があると判定した場合（ステップＳ２０２においてＹＥＳ）、後工程の開始イベントを生成する。そして、作成部４５は、生成した後工程の開始イベントの発生時刻をイベントリスト５２Ｃに追加する（ステップＳ２０３）。
【００４８】
現在のシミュレーション時刻８時３０分に処理できるイベントがなくなると、作成部４５は、現在のシミュレーション時刻を、最も近い将来のイベントの発生時刻に進める（ステップＳ７）。ここでは、作成部４５は、図１０に示すイベントリスト５２Ｃにおいて、最も近い将来のイベントの発生時刻が工程番号１の完了イベントの発生時刻であり、工程番号４の開始イベントの発生時刻である９時００分であることを確認する。そして、作成部４５は、現在のシミュレーション時刻を９時００分に進める。
【００４９】
作成部４５は、工程番号の完了イベントを処理する（ステップＳ９）。作成部４５は、工程番号が、完了イベントの発生時刻に完了する作業計画を作成する（ステップＳ２０１）。次に、作成部４５は、工程番号に後工程があるか否かを作業工程情報５１Ｂを参照して判定する（ステップＳ２０２）。作成部４５は、工程番号の作業工程には後工程がないと判定した場合（ステップＳ２０２においてＮＯ）、完了イベントの処理を完了する。ここでは、作成部４５は、処理対象の工程番号の後工程として工程番号３が作業工程情報５１Ｂに記憶されていると判定した場合（ステップＳ２０２においてＹＥＳ）、処理対象の工程番号が示す作業工程の完了時刻を後工程の開始イベントを生成する。具体的には、処理対象の工程番号が工程番号１である場合、作成部４５は、工程番号１の完了時刻である９時００分を発生時刻とする工程番号３の開始イベントを生成する。そして、作成部４５は、生成した工程番号の開始イベントをイベントリスト５２Ｃに追加する（ステップＳ２０３）。そして、作成部４５は、処理対象の工程番号の完了イベントの処理を完了する。
【００５０】
同様にして、作成部４５は、全ての作業工程について開始イベントと完了イベントの処理を行う。全ての作業工程について計画を完了した場合（ステップＳ６においてＹＥＳ）、作業計画の作成を終了し、作成部４５は、作成した作業計画を作業計画解として例えば記憶部４１に登録する（ステップＳ１１）。
【００５１】
図１２は、作業計画の作成を終了する処理を示すフローチャートである。作成部４５は、新たな作業計画解を例えば記憶部４１に登録すると、作業工程の処理する順番を変更し、ステップＳ１からＳ２０３の処理を繰り返す。例えば、作成部４５は、処理可能な作業工程の内、最も番号が若い工程番号１から作業計画の作成を開始していた作業工程を、工程番号２、４、７の作業工程のいずれかから作業計画の作成を開始するように作業工程の順番を変更し、新たに作業計画解を作成する。また、開始イベントの処理（ステップＳ１０）および完了イベントの処理（ステップＳ９）においても、作業工程の処理する順番を変更し、作業計画を作成する（ステップＳ３０１）。
【００５２】
作成部４５は、記憶部４１に直近に登録した作業計画解と、新たに作成した作業計画解とを比較する（ステップＳ３０２）。そして、新たに作成した作業計画解が改善解である場合（ステップＳ３０２においてＹＥＳ）、つまり、新たに作成した作業計画解が記憶部４１に直近に登録した作業計画解と比べて良い作業計画解である場合、新たに生成した作業計画解を改善解として例えば記憶部４１に登録する（ステップＳ３０３）。ここで、良い作業計画とは、登録された作業計画解よりも短時間で作業が完了する作業計画や、低いコストで作業が完了する作業計画などを指す。
【００５３】
作成部４５は、ステップＳ１からＳ２０３の処理を繰り返し、改善解が見つからなくなった場合（ステップＳ３０２においてＮＯ）、作業計画作成処理を終了する。作成部４５は、最後に作業計画解として登録した作業計画を、最適な作業計画として、出力装置１２に出力する。
なお、作成部４５は、予め設定された終了条件を満たした場合に改善解が見つからなくなったと判断して作業計画作成処理を終了してもよい。例えば、終了条件は、新たな作業計画の作成反復回数や、反復計算時間などに基づいて設定される。また、例えば、処理可能な作業工程が無くなったことを終了条件として設定されてもよい。終了条件を満たさない場合、作成部４５は、作業工程の処理する順番を変更し、ステップＳ１からＳ２０３の処理を繰り返す。
【００５４】
以上の処理によれば、作業計画作成装置１３は、各作業工程について並行して作業することができない工程を考慮しながら、各作業工程の処理する順番を調整して最適な作業計画を作成することができる。そのため、同時に作業することはできないが、処理する順番を任意に決められる複数の作業工程の組合せを含む作業であっても、好適な作業計画を作成することができる。これにより、作業計画作成システム１は、並行して実行することが不可能な作業を同時に作業するような作業計画の作成を回避することができる。その結果、作業計画作成システム１は、作業計画通りに実際の作業を行うことができる。
【００５５】
ここで、並行して作業できない作業工程の組合せについて、作業工程に前後関係を付与することで、並行して作業するような作業計画の作成を防ぐことができる。具体的には、工程番号１と工程番号７は並行して作業することができないが、どちらを先に作業しても良い場合に、さらに上述の実施形態に示した処理を行うことで工程番号１を先に処理する方が良いか、工程番号７を先に処理する方が良いかを判断することができ、並行して作業することができない条件を示す並行作業不可条件を考慮した作業計画が可能となる。
【００５６】
また、工程番号１の後工程として工程番号７を記憶した作業工程情報５１と、工程番号７の後工程が工程番号１を記憶した作業工程情報５１とを用意し、それぞれについて作業計画を作成する処理を行い、より好適な作業計画を採用する方法も考えられる。しかし、最初に入力する作業工程情報５１が複数になることで、作業計画を作成する全体の処理が増え、作業計画の作成に時間がかかってしまう。特に、膨大な数の作業工程を有する作業では、並行してできない作業工程の組合せが多く存在するため、最初に入力する作業工程情報５１の数が膨大になり、作業計画を作成する処理時間が作業工程情報５１の数が増加するにつれさらに長くなってしまう。本実施形態の作業計画作成システム１によれば、情報生成部４７が、一の製品に対する作業工程を作業することが可能な姿勢（例えば、作業対象の製品や部品の上下方向の位置や角度など）により表された作業条件に基づいて、各作業工程について並行して作業することができない作業工程の情報を生成する。これにより、入力する作業工程情報５１の数を増やすことなく、１つの作業工程情報５１に基づく処理で、並行作業不可条件を考慮した作業計画を作成できるため、比較的短時間で作業計画の作成を完了することができる。
【００５７】
なお、作成部４５は、開始イベントの処理（ステップＳ１０）において、並行不可作業情報に加え、他の制約条件を考慮して作業計画を作成することが好ましい。例えば、計画しようとする作業工程に必要なリソースは空いているか、作業者に作業工程を行う力量があるか、クレーンを使用する作業工程の場合に干渉が発生しないか、作業工程に必要な部品が揃っているか、前工程の開始や完了からの一定時間の経過などが作業時間についての制約条件を満たしているか、などである。考慮すべき制約条件に応じ、作業工程情報５１に制約条件に関する情報を付加する。制約条件を１つでも満たさない場合、作成部４５は、当該一の作業工程の作業開始時刻の作業計画を作成せず、開始イベントを再生成し、イベントリスト５２に追加する。再生成した開始イベントの発生時刻は、満たしていなかった制約条件を満たすことができる時刻とする。例えば、作業者に作業工程を行う力量があるか、という制約条件を満たさなかった場合、当該作業工程を行う力量のある作業者が作業可能となる時刻、つまり、当該作業者が現在のシミュレーション時刻において割り当てられている他の作業工程の完了イベントの発生時刻を、当該作業工程の開始イベントの発生時刻として再生成し、イベントリスト５２に加える。
【００５８】
なお、本実施形態では、角度によって作業に制限が生じる例について説明したが、並行作業不可な作業工程の組合せを含む作業計画の作成に広く適用可能である。
【００５９】
例えば、足場を組んで組立を行うような大型製品においては、製品上部で作業している際には、製品下部での作業を行うことは、安全面から禁止される。この場合、作業工程情報５１に含まれる作業条件の情報として、「作業対象製品の置かれた姿勢」を示す情報を作業工程毎に記憶する。作業位置の情報としては、例えば、「上部」または「下部」といった情報が記憶される。このような作業工程情報５１に基づき、上記の作業計画作成処理が行われることにより、並行作業不可条件を考慮した作業計画作成を行うことができる。
【００６０】
また、溶接作業工程と可燃物取扱い作業工程が含まれる作業について作業計画を作成する場合、作業工程情報５１に含まれる作業条件の情報として、「溶接」「可燃物取扱」の情報が作業工程毎に記憶される。そして、「溶接」の情報をもつ作業工程と、「可燃物取扱」の情報をもつ作業工程が並行して作業するような作業計画が作成されないよう、上記の作業計画作成処理が行われる。これにより、安全上の要請から、並行して作業することができない工程を考慮した作業計画を作成することができる。
【００６１】
なお、本発明の一実施形態である作業計画作成システム１は、製品の生産についての作業計画の作成だけでなく、定期点検や補修についての作業計画の作成に適用することもできる。
【符号の説明】
【００６２】
１・・・作業計画作成システム
１１・・・入力装置
１２・・・出力装置
１３・・・作業計画作成装置
３０・・・コンピュータ
３１・・・ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）
３２・・・ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）
３３・・・ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）
３４・・・ストレージ装置
３５・・・外部Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）
３６・・・通信Ｉ／Ｆ
３７・・・記録媒体
４１・・・記憶部
４２・・・工程情報蓄積部
４３・・・計画処理部
４４・・・判定部
４５・・・作成部
４６・・・作業計画作成プログラム
４７・・・情報生成部
５１・・・作業工程情報
５２・・・イベントリスト
【図１】
2018097405.tif 000003
【図２】
2018097405.tif 000004
【図３】
2018097405.tif 000005
【図４】
2018097405.tif 000006
【図５】
2018097405.tif 000007
【図６】
2018097405.tif 000008
【図７】
2018097405.tif 000009
【図８】
2018097405.tif 000010
【図９】
2018097405.tif 000011
【図１０】
2018097405.tif 000012
【図１１】
2018097405.tif 000013
【図１２】
2018097405.tif 000014