(57)【要約】【課題】施工現場における作業員の配置を最適化する。【解決手段】施工シミュレーション装置（１０）は、仮想世界において構造物の施工をシミュレーションする。受付手段（１０１）は、繰り返し訪れる指示機会において、ユーザによる、構造物を施工する作業員キャラクタの配置に関する指示を受け付ける。施工シミュレーション手段（１０２）は、ユーザにより指示された作業員キャラクタの配置に基づいて、構造物の施工をシミュレーションする。評価手段（１０３）は、施工シミュレーション手段（１０２）によるシミュレーションが完了した場合に、構造物の施工に要したコストを評価する。【選択図】図１０
2020071581.tif 000002
【特許請求の範囲】
【請求項１】
仮想世界において構造物の施工をシミュレーションする施工シミュレーション装置であって、
繰り返し訪れる指示機会において、ユーザによる、前記構造物を施工する作業員キャラクタの配置に関する指示を受け付ける受付手段と、
前記ユーザにより指示された前記作業員キャラクタの配置に基づいて、前記構造物の施工をシミュレーションする施工シミュレーション手段と、
前記施工シミュレーション手段によるシミュレーションが完了した場合に、前記構造物の施工に要したコストを評価する評価手段と、
を含むことを特徴とする施工シミュレーション装置。
【請求項２】
前記仮想世界では、複数の前記構造物が施工対象となっており、
前記施工シミュレーション手段は、前記ユーザにより指示された前記作業員キャラクタの配置と、施工中の前記構造物の位置又は施工完了した前記構造物の位置と、に基づいて、前記作業員キャラクタの移動を制御する、
ことを特徴とする請求項１に記載の施工シミュレーション装置。
【請求項３】
前記仮想世界には、複数の前記作業員キャラクタを配置可能であり、
前記受付手段は、前記複数の作業員キャラクタの各々の配置に関する指示を受け付け、
前記施工シミュレーション手段は、前記複数の作業員キャラクタの互いの位置関係に基づいて、各作業員キャラクタの移動を制御する、
ことを特徴とする請求項１又は２に記載の施工シミュレーション装置。
【請求項４】
前記構造物は、複数の工程を経て施工され、
前記複数の工程にそれぞれ対応する複数種類の前記作業員キャラクタが用意されており、
前記受付手段は、前記ユーザによる、作業をさせる前記作業員キャラクタの種類に関する指示を更に受け付け、
前記施工シミュレーション手段は、前記ユーザにより指示された作業員キャラクタの種類に更に基づいて、前記構造物の施工をシミュレーションする、
ことを特徴とする請求項１〜３の何れかに記載の施工シミュレーション装置。
【請求項５】
前記受付手段は、前記ユーザによる、前記仮想世界における資材置場の位置に関する指示を更に受け付け、
前記施工シミュレーション手段は、前記ユーザにより指示された資材置場の位置に更に基づいて、前記構造物の施行をシミュレーションする、
ことを特徴とする請求項１〜４の何れかに記載の施工シミュレーション装置。
【請求項６】
前記受付手段は、前記ユーザによる、複数の前記作業員キャラクタの中で作業をさせる作業員キャラクタに関する指定を受け付け、
各作業員キャラクタには、スキルパラメータが設定されており、
前記施工シミュレーション手段は、前記ユーザにより指示された作業員キャラクタのスキルパラメータに更に基づいて、前記構造物の施工をシミュレーションする、
ことを特徴とする請求項１〜５の何れかに記載の施工シミュレーション装置。
【請求項７】
前記施工シミュレーション装置は、現実の作業現場における作業員の作業状況に基づいて、各作業員キャラクタの前記スキルパラメータを設定する設定手段を更に含む、
ことを特徴とする請求項１〜６の何れかに記載の施工シミュレーション装置。
【請求項８】
前記施工シミュレーション装置は、
前記施工シミュレーション手段によるシミュレーションが完了した場合に、前記ユーザにより指示された前記作業員キャラクタの配置と、前記構造物の施工に要したコストと、に基づいて、前記構造物又は他の構造物の施工に要するコストを抑制可能な前記作業員キャラクタの配置を出力する学習器Ｌの教師データを取得する教師データ取得手段と、
前記教師データに基づいて、前記学習器Ｌを学習させる学習手段と、
を更に含むことを特徴とする請求項１〜７の何れかに記載の施工シミュレーション装置。
【請求項９】
前記施工シミュレーション装置は、前記施工シミュレーション手段によるシミュレーションが完了した場合に、前記ユーザにより指示された前記作業員キャラクタの配置と、前記構造物の施工に要したコストと、に基づいて、前記構造物の施工に要するコストを抑制可能な前記作業員キャラクタの配置を検索する検索手段、
を更に含むことを特徴とする請求項１〜８の何れかに記載の施工シミュレーション装置。
【請求項１０】
仮想世界において構造物の施工をシミュレーションする施工シミュレーション方法であって、
繰り返し訪れる指示機会において、ユーザによる、前記構造物を施工する作業員キャラクタの配置に関する指示を受け付ける受付ステップと、
前記ユーザにより指示された前記作業員キャラクタの配置に基づいて、前記構造物の施工をシミュレーションする施工シミュレーションステップと、
前記施工シミュレーションステップによるシミュレーションが完了した場合に、前記構造物の施工に要したコストを評価する評価ステップと、
を含むことを特徴とする施工シミュレーション方法。
【請求項１１】
仮想世界において構造物の施工をシミュレーションするコンピュータを、
繰り返し訪れる指示機会において、ユーザによる、前記構造物を施工する作業員キャラクタの配置に関する指示を受け付ける受付手段、
前記ユーザにより指示された前記作業員キャラクタの配置に基づいて、前記構造物の施工をシミュレーションする施工シミュレーション手段、
前記施工シミュレーション手段によるシミュレーションが完了した場合に、前記構造物の施工に要したコストを評価する評価手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、施工シミュレーション装置、施工シミュレーション方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、柱や梁等の構造物の施工をシミュレーションする技術が検討されている。例えば、特許文献１には、種々の建物の設計図面が格納された設計図面ファイルと、種々の建材イメージが格納された建材ファイルと、に基づいて、設計図面ファイルに含まれる任意の設計図面に対し、建材ファイルに含まれる任意の建材イメージを適用して、建物の施行イメージを生成する施工シミュレーション技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−２４２８５２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
構造物の施工では、金銭的なコストや時間的なコストを最小化することが求められている。この点、施工現場における作業員の配置によっては、作業員による作業が非効率的になったり過剰な作業員が投入されたりして、無駄なコストが発生することがある。このため、作業員の配置を最適化するための施工シミュレーションを実現できれば、施工現場におけるコストの最小化に貢献することができるが、特許文献１の技術では、建材の選定を支援するだけであり、作業員の配置の最適化することはできない。
【０００５】
本発明は上記課題に鑑みてなされたものであって、その目的は、施工現場における作業員の配置を最適化することが可能な施工シミュレーション装置、施工シミュレーション方法、及びプログラムを提供することである。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の一態様に係る施工シミュレーション装置は、仮想世界において構造物の施工をシミュレーションする施工シミュレーション装置であって、繰り返し訪れる指示機会において、ユーザによる、前記構造物を施工する作業員キャラクタの配置に関する指示を受け付ける受付手段と、前記ユーザにより指示された前記作業員キャラクタの配置に基づいて、前記構造物の施工をシミュレーションする施工シミュレーション手段と、前記施工シミュレーション手段によるシミュレーションが完了した場合に、前記構造物の施工に要したコストを評価する評価手段と、を含むことを特徴とする。
【０００７】
本発明の一態様に係る施工シミュレーション方法は、仮想世界において構造物の施工をシミュレーションする施工シミュレーション方法であって、繰り返し訪れる指示機会において、ユーザによる、前記構造物を施工する作業員キャラクタの配置に関する指示を受け付ける受付ステップと、前記ユーザにより指示された前記作業員キャラクタの配置に基づいて、前記構造物の施工をシミュレーションする施工シミュレーションステップと、前記施工シミュレーションステップによるシミュレーションが完了した場合に、前記構造物の施工に要したコストを評価する評価ステップと、を含むことを特徴とする。
【０００８】
本発明の一態様に係るプログラムは、仮想世界において構造物の施工をシミュレーションするコンピュータを、繰り返し訪れる指示機会において、ユーザによる、前記構造物を施工する作業員キャラクタの配置に関する指示を受け付ける受付手段、前記ユーザにより指示された前記作業員キャラクタの配置に基づいて、前記構造物の施工をシミュレーションする施工シミュレーション手段、前記施工シミュレーション手段によるシミュレーションが完了した場合に、前記構造物の施工に要したコストを評価する評価手段、として機能させる。
【０００９】
また、本発明の一態様では、前記仮想世界では、複数の前記構造物が施工対象となっており、前記施工シミュレーション手段は、前記ユーザにより指示された前記作業員キャラクタの配置と、施工中の前記構造物の位置又は施工完了した前記構造物の位置と、に基づいて、前記作業員キャラクタの移動を制御する、ことを特徴とする。
【００１０】
また、本発明の一態様では、前記仮想世界には、複数の前記作業員キャラクタを配置可能であり、前記受付手段は、前記複数の作業員キャラクタの各々の配置に関する指示を受け付け、前記施工シミュレーション手段は、前記複数の作業員キャラクタの互いの位置関係に基づいて、各作業員キャラクタの移動を制御する、ことを特徴とする。
【００１１】
また、本発明の一態様では、前記構造物は、複数の工程を経て施工され、前記複数の工程にそれぞれ対応する複数種類の前記作業員キャラクタが用意されており、前記受付手段は、前記ユーザによる、作業をさせる前記作業員キャラクタの種類に関する指示を更に受け付け、前記施工シミュレーション手段は、前記ユーザにより指示された作業員キャラクタの種類に更に基づいて、前記構造物の施工をシミュレーションする、ことを特徴とする。
【００１２】
また、本発明の一態様では、前記受付手段は、前記ユーザによる、前記仮想世界における資材置場の位置に関する指示を更に受け付け、前記施工シミュレーション手段は、前記ユーザにより指示された資材置場の位置に更に基づいて、前記構造物の施行をシミュレーションする、ことを特徴とする。
【００１３】
また、本発明の一態様では、前記受付手段は、前記ユーザによる、複数の前記作業員キャラクタの中で作業をさせる作業員キャラクタに関する指定を受け付け、各作業員キャラクタには、スキルパラメータが設定されており、前記施工シミュレーション手段は、前記ユーザにより指示された作業員キャラクタのスキルパラメータに更に基づいて、前記構造物の施工をシミュレーションする、ことを特徴とする。
【００１４】
また、本発明の一態様では、前記施工シミュレーション装置は、現実の作業現場における作業員の作業状況に基づいて、各作業員キャラクタの前記スキルパラメータを設定する設定手段を更に含む、ことを特徴とする。
【００１５】
また、本発明の一態様では、前記施工シミュレーション装置は、前記施工シミュレーション手段によるシミュレーションが完了した場合に、前記ユーザにより指示された前記作業員キャラクタの配置と、前記構造物の施工に要したコストと、に基づいて、前記構造物又は他の構造物の施工に要するコストを抑制可能な前記作業員キャラクタの配置を出力する学習器Ｌの教師データを取得する教師データ取得手段と、前記教師データに基づいて、前記学習器Ｌを学習させる学習手段と、を更に含むことを特徴とする。
【００１６】
また、本発明の一態様では、前記施工シミュレーション装置は、前記施工シミュレーション手段によるシミュレーションが完了した場合に、前記ユーザにより指示された前記作業員キャラクタの配置と、前記構造物の施工に要したコストと、に基づいて、前記構造物の施工に要するコストを抑制可能な前記作業員キャラクタの配置を検索する検索手段、を更に含むことを特徴とする。
【発明の効果】
【００１７】
本発明によれば、施工現場における作業員の配置を最適化することができる。
【図面の簡単な説明】
【００１８】
【図１】実施形態に係る施工シミュレーション装置のハードウェア構成を示す図である。
【図２】仮想世界の一例を示す図である。
【図３】作業員キャラクタの一例を示す図である。
【図４】柱が施工される様子を示す図である。
【図５】梁が施工される工程を示す図である。
【図６】朝礼広場の位置と資材置場の位置が指定される様子を示す図である。
【図７】第１ターン開始時のシミュレーション画面の一例を示す図である。
【図８】第１ターンが開始された場合のシミュレーション画面の一例を示す図である。
【図９】シミュレーションが完了した場合のシミュレーション画面の一例を示す図である。
【図１０】施工シミュレーション装置で実現される機能の一例を示す機能ブロック図である。
【図１１】シミュレーション状況データのデータ格納例を示す図である。
【図１２】施工シミュレーション装置で実行される処理を示すフロー図である。
【図１３】変形例における機能ブロック図である。
【発明を実施するための形態】
【００１９】
［１．施工シミュレーション装置の全体構成］
以下、本発明に係る実施形態について、図面を参照しつつ説明する。図１は、実施形態に係る施工シミュレーション装置のハードウェア構成を示す図である。施工シミュレーション装置１０は、ユーザが操作するコンピュータであり、例えば、パーソナルコンピュータ、携帯情報端末（タブレット型コンピュータを含む）、又は携帯電話機（スマートフォンを含む）等である。図１に示すように、例えば、施工シミュレーション装置１０は、制御部１１、記憶部１２、通信部１３、操作部１４、及び表示部１５を含む。
【００２０】
制御部１１は、少なくとも１つのプロセッサを含む。制御部１１は、記憶部１２に記憶されたプログラムやデータに従って処理を実行する。記憶部１２は、主記憶部及び補助記憶部を含む。例えば、主記憶部はＲＡＭなどの揮発性メモリであり、補助記憶部は、ハードディスクやフラッシュメモリなどの不揮発性メモリである。通信部１３は、有線通信又は無線通信用の通信インタフェースを含み、例えば、ネットワークを介してデータ通信を行う。操作部１４は、入力デバイスであり、例えば、タッチパネルやマウス等のポインティングデバイスやキーボード等である。操作部１４は、操作内容を制御部１１に伝達する。表示部１５は、例えば、液晶表示部又は有機ＥＬ表示部等である。
【００２１】
なお、記憶部１２に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して施工シミュレーション装置１０に供給されるようにしてもよい。また、施工シミュレーション装置１０のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、施工シミュレーション装置１０は、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部（例えば、光ディスクドライブやメモリカードスロット）や外部機器と直接的に接続するための入出力部（例えば、ＵＳＢ端子）を含んでもよい。この場合、情報記憶媒体に記憶されたプログラムやデータが読取部又は入出力部を介して、施工シミュレーション装置１０に供給されるようにしてもよい。
【００２２】
［２．施工シミュレーション装置の概要］
施工シミュレーション装置１０は、仮想世界において構造物の施工をシミュレーションする。仮想世界とは、シミュレーションが行われる架空の世界であり、施工シミュレーション装置１０内に構築される架空の施工現場である。例えば、仮想世界が２次元的な平面で表現される場合には、互いに直交する２つの座標軸が仮想世界に設定され、仮想世界内の位置は、２次元座標によって示される。また例えば、仮想世界が３次元的な空間で表現される場合には、互いに直交する３つの座標軸が仮想世界に設定され、仮想世界内の位置は、３次元座標によって示される。
【００２３】
構造物とは、施工の対象となる物である。別の言い方をすれば、構造物は、シミュレーションの対象となる物であり、施工物、建築物、又は建造物ということもできる。例えば、ビルや住宅等の建物、道路、橋、トンネル、又はダム等が構造物に相当してもよいし、これらを構成する個々の部材（例えば、柱、梁、外壁、路体、路床、路盤等）が構造物に相当してもよい。例えば、仮想世界が２次元的に表現される場合には、構造物は画像によって表現され、仮想世界が３次元的に表現される場合には、構造物は３次元モデルによって表現される。
【００２４】
施工とは、構造物の工事である。シミュレーションとは、仮想世界において模擬的に構造物を施工することであり、施工シミュレーション装置１０内で架空の構造物を施工することである。施工シミュレーション装置１０は、仮想世界における構造物の施工開始から、当該構造物の施工完了までをシミュレーションする。複数の構造物が施工対象となる場合には、施工シミュレーション装置１０は、これら複数の構造物の全ての施工完了までをシミュレーションする。
【００２５】
本実施形態では、仮想世界が３次元的に表現され、建物の柱と梁が構造物に相当する場合を説明する。構造物の設計図は、予め作成されており、施工シミュレーション装置１０は、設計図が示す構造物の施工開始から施工完了までのシミュレーションを実行する。設計図自体は、種々のタイプの設計図を適用可能であり、２次元的な設計図であってもよいし、３次元的な設計図であってもよい。設計図は、記憶部１２や外部の情報記憶媒体に記憶されていてもよいし、通信部１３を介して他のコンピュータから取得されてもよい。施工シミュレーション装置１０は、施工シミュレーションのプログラム（施工シミュレータ）が起動すると、設計図に基づいて、記憶部１２に仮想世界を構築する。
【００２６】
図２は、仮想世界の一例を示す図である。図２に示すように、仮想世界ＶＷには、ワールド座標系の３つの座標軸（Ｘ軸−Ｙ軸−Ｚ軸）が設定され、仮想世界ＶＷ内の位置は、ワールド座標系の３次元座標によって示される。本実施形態では、仮想世界ＶＷがブロック状（マス目状）に区切られており、仮想世界ＶＷ内の位置は、個々のブロックを示す３次元座標によって示される。ブロックとは、仮想世界ＶＷにおいて区切られた個々の立体である。ここでは、ブロックが立方体である場合を説明するが、ブロックは直方体等の他の形状であってもよい。構造物は、ブロック単位で施工され、後述する作業員キャラクタもブロック単位で移動する。
【００２７】
仮想世界ＶＷには、架空の施工現場であるフィールドＦが配置される。フィールドＦは、構造物や作業員キャラクタが配置される平面である。本実施形態では、仮想世界ＶＷがブロック状に区切られているので、フィールドＦは、碁盤の目状に区切られていることになる。構造物は、フィールドＦ上の任意の位置に施工されてよく、図２の例では、フィールドＦに配置された線路Ｒ１，Ｒ２の間に施工されるものとする。なお、図２では省略しているが、線路Ｒ１，Ｒ２は、所定の高さを有しているものとする。
【００２８】
また、フィールドＦ上には、仮想カメラＶＣが設定される。仮想カメラＶＣは、仮想世界ＶＷの様子を表示部１５に表示させるために設定される視点である。仮想世界ＶＷのうち仮想カメラＶＣの視野内の領域が表示部１５に表示される。仮想カメラＶＣは、任意の位置に設定されてよく、例えば、動かないように固定されていてもよいし、ユーザの操作やシミュレーションの状況に応じて動いてもよい。
【００２９】
本実施形態では、構造物として、６本の柱Ｐ１〜Ｐ６と、７本の梁Ｊ１〜Ｊ７と、が施工される。以降の説明では、柱Ｐ１〜Ｐ６を特に区別する必要のないときは単に柱Ｐと記載し、梁Ｊ１〜Ｊ７を特に区別する必要のないときは単に梁Ｊと記載する。柱Ｐの寸法及び配置と、梁Ｊの寸法及び配置と、は設計図に示されているものとする。柱Ｐ及び梁Ｊの寸法は、互いに異なっていてもよいが、説明の簡略化のために、ここでは互いに同じとする。
【００３０】
本実施形態では、仮想世界ＶＷがブロック状に区切られているので、柱Ｐ及び梁Ｊは、ブロック単位で施工される。例えば、柱Ｐは、太さが１ブロック分であり、高さが４ブロック分である。このため、柱Ｐは、ブロックを縦に４個積み上げた形状となる。また例えば、梁Ｊは、太さが１ブロック分であり、長さが４ブロック分である。このため、梁Ｊは、ブロックを横に４個並べた形状となる。柱Ｐ及び梁Ｊは、ユーザの指示に基づいて動作する作業員キャラクタによって施工される。
【００３１】
図３は、作業員キャラクタの一例を示す図である。図３に示すように、作業員キャラクタＣは、作業員を模したキャラクタである。本実施形態では、仮想世界ＶＷがブロック状に区切られているので、作業員キャラクタＣは、ブロック単位で表現される。作業員キャラクタＣの寸法は、任意であってよいが、本実施形態では、作業員キャラクタＣは、太さが１ブロック分であり、高さが２ブロック分である。このため、作業員キャラクタＣは、ブロックを縦に２個並べた形状となる。作業員キャラクタＣが運搬する資材は、作業員キャラクタＣのブロック内に吸収されるものとするが、作業員キャラクタＣとは別に、資材を示すブロックが設定されてもよい。
【００３２】
なお、図３では、説明の簡略化のために、作業員キャラクタＣをブロック状に示しているが、作業員キャラクタＣの形状は、任意であってよく、例えば、人型の３次元モデルが構築されてもよい。また、作業員キャラクタＣは、単独で作業をしてもよいが、チームを組んで集団で作業する場合には、図３に示すように、チーム内の作業員キャラクタＣの人数に応じてフィールドＦ上の占有面積が変わる。例えば、２人チームであれば、４ブロック分の連続した領域を占有し、３人チームであれば、６ブロック分の連続した領域を占有する。チーム全体の形状は、図３の例に限られず、個々の作業員キャラクタＣを示すブロックが連結していればよい。
【００３３】
本実施形態では、柱Ｐ及び梁Ｊは、複数の工程を経て施工され、当該複数の工程にそれぞれ対応する複数種類の作業員キャラクタＣが用意されている。工程や作業員キャラクタＣは、施工対象の構造物に応じたものを用意すればよく、本実施形態では、鉄筋を組み立てる配筋作業、鉄筋を囲むように型枠を設置する型枠作業、型枠内にコンクリートを流し込む打設作業、及び足場を組み立てる仮設作業といった４つの工程があり、それぞれを担当する鉄筋工、型枠工、コンクリート工、及び仮設工の４種類の作業員キャラクタＣが用意されている。なお、作業員キャラクタＣは、任意の種類を用意することができ、例えば、警備員や現場監督といったキャラクタがいてもよい。ユーザは、現在の施工状況に適した作業員キャラクタＣに指示を行い、効率的に柱Ｐ及び梁Ｊを施工することを目指す。
【００３４】
図４は、柱Ｐが施工される様子を示す図である。図４に示すように、柱Ｐは、配筋作業、型枠作業、打設作業、及び仮設作業の順で工程を繰り返し、４ブロック分の高さまで伸びた場合に施工完了となる。例えば、柱Ｐの１ブロック目は、フィールドＦ上にいる作業員キャラクタＣの作業範囲内なので、足場を組む必要がない。このため、仮設作業を要することなく、配筋作業、型枠作業、及び打設作業の順に行われることによって、１ブロック目の施工が完了する。
【００３５】
また例えば、柱Ｐの２ブロック目〜４ブロック目は、フィールドＦ上にいる作業員キャラクタＣの作業範囲外なので、足場を組む必要がある。本実施形態では、仮想世界ＶＷがブロック状に区切られているので、足場もブロック単位で設定される。例えば、作業員キャラクタＣは、足場の下に入ることができ、足場の上に登ることができるものとする。足場は、施工完了までフィールドＦ上に残置する。
【００３６】
例えば、柱Ｐの２ブロック目は、仮設作業により１ブロック目の周囲に足場が組まれたうえで、配筋作業、型枠作業、及び打設作業の順に行われることによって施工される。同様に、３ブロック目は、仮設作業により２ブロック目の周囲に足場が組まれたうえで、配筋作業、型枠作業、及び打設作業の順に行われることによって施工される。４ブロック目の手順も同様であるが、それ以上柱Ｐを高くする必要がないので、最後の仮設作業は省略してもよい。
【００３７】
各工程は、担当の作業員キャラクタＣが柱Ｐの施工場所付近まで移動し、一定時間作業が行われることで完了する。各工程に要する作業時間は同じであってもよいが、本実施形態では、工程ごとに作業時間が設定されているものとする。例えば、作業時間は、ブロック単位で定められており、１ブロック分の柱Ｐを施工するための配筋作業、型枠作業、打設作業、及び仮設作業の各々の作業時間が定められている。
【００３８】
例えば、配筋作業は、鉄筋工の作業員キャラクタＣの作業範囲内（例えば、鉄筋工の作業員キャラクタＣの現在位置を含む周囲１ブロックの範囲内）で自由に行うことができ、１ブロックあたりの作業時間は２４時間である。鉄筋工の作業員キャラクタＣは、鉄筋を設置すべき場所に留まって作業してもよいし、当該場所の周囲を移動しながら作業してもよい。また例えば、型枠作業は、配筋作業が完了し、鉄筋が存在する場合に作業可能となり、１ブロックあたりの作業時間は４時間である。型枠工の作業員キャラクタＣは、型枠を設置すべき場所に留まって作業してもよいし、当該場所の周囲を移動しながら作業してもよい。なお、作業員キャラクタＣは、鉄筋や型枠の上には乗れないものとする。
【００３９】
また例えば、打設作業は、型枠作業が完了し、閉じられた型枠が存在する場合に作業可能となり、１ブロックあたりの作業時間は１時間である。コンクリート工の作業員キャラクタＣは、打設すべき場所に留まって作業してもよいし、当該場所の周囲を移動しながら作業してもよい。作業員キャラクタＣは、複数のブロックの打設作業を同時に行えるようにしてもよい。なお、作業員キャラクタＣは、打設後すぐにコンクリートの上に乗れるようにしてもよいが、ここでは、所定時間（例えば、３日）以上経過しなければ乗れないものとする。
【００４０】
また例えば、仮設作業は、作業範囲を超える上部作業が発生する場合に行われ、１ブロックあたりの作業時間が１時間に設定されている。作業範囲は、作業員キャラクタＣの周囲の任意の領域であってよいが、本実施形態では、作業員キャラクタＣを示す上下２ブロックのうち、下にあるブロックの周囲１ブロック分を作業範囲とする。仮設工の作業員キャラクタＣは、足場を設置すべき場所に留まって作業してもよいし、当該場所の周囲を移動しながら作業してもよい。
【００４１】
なお、上記説明した各工程の作業時間は、１人の作業員キャラクタＣが作業した場合に要する時間である。このため、複数の作業員キャラクタＣがチームを組んで作業をする場合には、その分だけ施工完了を早めることが可能である。ただし、必要以上に多くの作業員キャラクタＣが作業をしても、施工完了を早めることはできないものとする。このため、必要以上に多くの作業員キャラクタＣでチームを組ませると、非効率な作業となりコスト増加の要因となる。
【００４２】
例えば、配筋作業の上限人数を４人とすると、１人の作業員キャラクタＣが配筋作業をする場合、上記の通り１ブロックあたり２４時間要するところ、２人の作業員キャラクタＣであれば１ブロックあたり１２時間で完了する。同様に、３人の作業員キャラクタＣであれば１ブロックあたり８時間で完了し、４人の作業員キャラクタＣであれば１ブロックあたり６時間で完了する。ただし、５人以上の作業員キャラクタＣでチームを組ませても、１ブロックあたり６時間要し、それ以上は早くならない。このため、５人以上の作業員キャラクタＣでチームを組ませると、その分だけ無駄な人件費が発生してコスト増加の要因となる。
【００４３】
施工完了を早めることができる作業員キャラクタＣの上限人数は、各工程で同じであってもよいが、本実施形態では、工程ごとに当該上限人数が定められているものとする。例えば、配筋作業、型枠作業、打設作業、及び仮設作業の各々の上限人数を、４人、２人、１人、２人とする。配筋作業と同様に、型枠作業、打設作業、及び仮設作業についても、上限人数よりも多くの作業員キャラクタＣでチームを組ませても、施工完了を早めることはできない。
【００４４】
また、本実施形態では、各工程を完了させるために必要な資材の量が定められており、作業員キャラクタＣが一度に運搬可能な資材の量（例えば、３０ｋｇ）に上限値が定められているものとする。作業員キャラクタＣは、作業中に資材が不足すると、後述する資材置場まで資材を取りに帰る。このため、少ない作業員キャラクタＣで作業させてしまうと、資材置場と作業現場との間の無駄な往復が発生してしまい、コスト増加の要因となる。
【００４５】
例えば、１ブロックの配筋作業で必要な資材の量を４人で運べる分量（例えば、１２０ｋｇ）とすると、１人の作業員キャラクタＣが配筋作業をする場合、６時間作業をするたびに、資材置場まで資材を取りに帰らなければならず、無駄なコストが発生する。一方、４人の作業員キャラクタＣでチームを組ませると、必要な資材の量を一度に運搬でき、資材置場まで資材を取りに帰ることなく、配筋作業を完了できる。
【００４６】
各工程を完了させるために必要な資材の量は、互いに同じであってもよいが、本実施形態では、工程ごとに資材の必要量が定められているものとする。例えば、配筋作業、型枠作業、打設作業、仮設作業の１ブロックあたりの必要量を、それぞれ４人で運べる分量、２人で運べる分量、１人で運べる分量、２人で運べる分量とする。配筋作業を例に挙げて説明したように、型枠作業、打設作業、及び仮設作業についても、作業途中で資材が不足した場合には、資材置場まで資材を取りに帰らなければならない。
【００４７】
以上の通り、本実施形態では、配筋作業は、４人の鉄筋工の作業員キャラクタＣがチームを組むと、最も効率がよい。型枠作業は、２人の型枠工の作業員キャラクタＣがチームを組むと、最も効率がよい。打設作業は、１人のコンクリート工の作業員キャラクタＣが作業をすると、最も効率がよい。仮設作業は、２人の仮設工の作業員キャラクタＣがチームを組むと、最も効率がよい。ただし、これらの条件はユーザに開示されておらず、ユーザは、試行錯誤してシミュレーションすることになる。
【００４８】
以上のようにして柱Ｐが施工されると、梁Ｊの施工が可能になる。例えば、梁Ｊは、両端に配置される２本の柱Ｐが完成した後に施工可能となる。このため、両端の柱Ｐが完成していないにも関わらず、梁Ｊを施工しようとして作業員キャラクタＣを向かわせると、コスト増加の要因となる。梁Ｊは、柱Ｐと同様に４つの工程を経て施工されるが、その順序が柱Ｐとは異なるものとする。
【００４９】
図５は、梁Ｊが施工される工程を示す図である。図５に示すように、梁Ｊは、フィールドＦから離れた場所に設置されるので、まず初めに、作業員キャラクタＣの作業範囲を確保するために仮設作業をする必要がある。その後、配筋作業と型枠作業をする必要があるが、梁Ｊの全ての型枠の設置が完了しないとコンクリートが流れ出てしまうので、２本の柱Ｐの間の全ての足場、鉄筋、及び型枠が設置された後に、打設作業が行われる。
【００５０】
本実施形態では、梁Ｊは４ブロック分の長さを有するので、仮設作業、配筋作業、及び型枠作業が４回繰り返されて、４ブロック分の足場、鉄筋、及び型枠が設置された後に、４ブロック分の打設作業が一度にまとめて行われるものとする。本実施形態では、梁Ｊの個々の工程に要する作業時間や資材の必要量が柱Ｐと同じである場合を説明するが、これらは異なっていてもよい。
【００５１】
以上説明した条件のもと、作業員キャラクタＣは、ユーザの指示に基づいて、柱Ｐ及び梁Ｊを施工する。本実施形態では、説明の簡略化のために、ユーザが作業員キャラクタＣの配置のみを指示する場合を説明するが、作業員キャラクタＣの作業内容の詳細や作業員キャラクタＣが使用する機材といった他の要素をユーザが指示してもよい。他にも例えば、資材置場への資材の搬入をユーザが指示してもよい。
【００５２】
配置は、作業員キャラクタＣの移動先又は作業場所ということもできる。作業員キャラクタＣは、フィールドＦ上に設定された朝礼広場に待機しており、朝礼広場を出て資材置場を経由し、ユーザが指示した配置先に移動して作業を行う。本実施形態では、作業員キャラクタＣが移動したり作業をしたりするとコストが発生し、作業員キャラクタＣが朝礼広場から出なければコストは発生しないものとする。朝礼広場の位置と資材置場の位置は、予め定められていてもよいが、本実施形態では、シミュレーションの開始時にユーザが指定するものとする。
【００５３】
図６は、朝礼広場の位置と資材置場の位置が指定される様子を示す図である。図６に示すように、施工シミュレーションのプログラムが起動すると、仮想世界ＶＷを仮想カメラＶＣから見た様子を示すシミュレーション画面Ｇが表示部１５に表示される。ここでは、シミュレーションがまだ開始されていないので、シミュレーション画面Ｇには、フィールドＦだけが表示される。なお、図６の例では、フィールドＦ上に、柱Ｐを施工すべき位置が点線で表示されているが、図２と同様に、柱Ｐ及び梁Ｊの全体が点線で表示され、どのような構造物の施工をすべきかをユーザに案内してもよい。
【００５４】
ユーザは、シミュレーション画面Ｇに表示されたフィールドＦ上の任意の位置を指定し、朝礼広場と資材置場を設定する。ただし、柱Ｐ及び梁Ｊが施工される場所の周囲は指定できないものとする。先述したように、作業員キャラクタＣは、朝礼広場を出て資材置場に向かうので、これらはなるべく近い方が、移動時間が短くなるのでコストは低くなる。ただし、朝礼広場と資材置場が柱Ｐ及び梁Ｊの施工場所に近すぎると、作業員キャラクタＣが密集しすぎてしまい、移動が非効率になるので、柱Ｐ及び梁Ｊが施工される場所からはある程度離した方がコストは低くなる。
【００５５】
ユーザが朝礼広場と資材置場の位置を指定すると、シミュレーションが開始する。本実施形態では、シミュレーションはターン制で進行し、ターンが訪れるたびに、ユーザは作業員キャラクタＣの行動を指示する。ターンは、シミュレーション中に繰り返し訪れ、本実施形態では、定期的にターンが訪れるものとするが、不定期的にターンが訪れてもよい。
【００５６】
また、本実施形態では、仮想世界において作業可能な時間帯が定められており、例えば、８時〜１７時の間に作業が行われる。このうち１２時〜１３時は、昼休みである。作業中の作業員キャラクタＣは、昼休みの開始時間である１２時に朝礼広場に帰るものとする。昼休みが終了すると、作業員キャラクタＣは、朝礼広場を出てユーザが指示した位置に向かう。ターンは、作業可能な時間帯である８時〜１２時及び１３時〜１７時において、一定時間（例えば、３０分）が経過するたびに訪れる。シミュレーションが開始すると、最初のターンである第１ターンが訪れる。ユーザは、第１ターンにおける作業員キャラクタＣの行動を指示する。
【００５７】
図７は、第１ターン開始時のシミュレーション画面Ｇの一例を示す図である。図７に示すように、シミュレーション画面Ｇには、現在のターンと、仮想世界における日時と、が表示される。ここでは、シミュレーションを開始したばかりなので、全ての作業員キャラクタＣは、朝礼広場で待機している状態となる。
【００５８】
梁Ｊは、両端の２本の柱Ｐがなければ施工することができないので、ユーザは、まず初めに柱Ｐを施工するために作業員キャラクタＣの配置を指示する。フィールドＦの任意の位置に作業員キャラクタＣを配置して柱Ｐ及び梁Ｊを施工可能としてもよいが、本実施形態では、説明の簡略化のために、柱Ｐ及び梁Ｊの施工場所（図６及び図７の点線で示す場所）の何れかが指定されるものとする。
【００５９】
ユーザが作業員キャラクタＣの配置を指示すると、作業員キャラクタＣは、配置先への移動、資材置場からの資材搬出、配置先での作業、及び朝礼広場への帰還といった行動をする。本実施形態では、説明の簡略化のために、作業員キャラクタＣの行動が自動的に決定されるものとするが、ユーザが作業員キャラクタＣの行動を随時指示してもよい。
【００６０】
図８は、第１ターンが開始された場合のシミュレーション画面Ｇの一例を示す図である。ここでは、ユーザが、３人の鉄筋工の作業員キャラクタＣでチームを組ませ、柱Ｐ１の位置を配置先として指定した場合を説明する。図８に示すように、これら３人の作業員キャラクタＣが朝礼広場を出発して資材置場に向かう。ターン中は、仮想世界ＶＷにおける時間が経過し、シミュレーション画面Ｇの表示が時間経過に応じて変化する。なお、ここでは、時間が徐々に経過し、作業員キャラクタＣの行動がリアルタイムで表示される場合を説明するが、ターンが瞬時に終了し、作業員キャラクタＣが瞬時に移動してもよい。
【００６１】
作業員キャラクタＣの移動経路は、所定の経路探索アルゴリズムに基づいて決定され、本実施形態では、ビデオゲーム等で用いられる影響度マップが用いられるものとする。影響度マップは、フィールドＦ上に設定され、各マスの評価値が設定される。評価値は、作業員キャラクタＣが通行すべきか否かを示す数値であり、例えば、他の作業員キャラクタＣがいる場所付近、施工中の構造物、及び施工完了した構造物の付近は、作業員キャラクタＣが通行しないように評価値が低くなる。
【００６２】
作業員キャラクタＣは、影響度マップに基づいて移動し、例えば、他の作業員キャラクタＣ、施工中の構造物、及び施工完了した構造物を避けるようにして、配置先まで移動する。このため、朝礼広場及び資材置場から見て手前側の柱Ｐ５，Ｐ６を先に施工してしまうと、奥側の柱Ｐ１〜Ｐ４への移動が非効率になってしまい、コスト増加の要因となる。このため、最も奥にある柱Ｐ１，Ｐ２を先に施工した方が、コストを小さくできる。
【００６３】
仮想世界ＶＷにおける時間が経過して第２ターンが訪れると、図７を参照して説明した流れと同様にして、第２ターンにおける作業員キャラクタＣの行動が指示される。第３ターン以降も同様にして、ターンが訪れるたびに作業員キャラクタＣの行動が指示される。ユーザは、６本の柱Ｐ１〜Ｐ６と、７本の梁Ｊ１〜Ｊ７と、を最小のコストで施工することを目指す。
【００６４】
シミュレーションが完了すると、柱Ｐ及び梁Ｊの施工に要したコストが評価される。コストは、金銭的なコストであってもよいし、時間的なコストであってもよい。例えば、コストは、作業員キャラクタＣの人件費や施工に要した資材の料金である。他にも例えば、トラックやクレーン等の機材を使用可能とする場合には、これらの使用状況に応じてコストが発生してもよい。また例えば、コストは、シミュレーションの完了までに要した日時であってもよい。予め定められた工期よりも早く終了した場合には、ボーナスとしてコストが減少してもよい。これとは逆に、予め定められた工期よりも遅れた場合には、ペナルティとしてコストが増加してもよい。
【００６５】
図９は、シミュレーションが完了した場合のシミュレーション画面Ｇの一例を示す図である。図９に示すように、シミュレーション画面Ｇには、シミュレーションが完了した日時やシミュレーションが完了するまでに要したコストが表示される。コストがかかりすぎた場合、ユーザは、初めからシミュレーションをやり直し、コストを抑制可能な他の配置等を試すことができる。ユーザは、シミュレーションを繰り返し、施工完了までに要するコストを最小化することを目指す。シミュレーション画面Ｇには、過去にシミュレーションにおける最小コストや平均コストといった情報が表示されてもよい。
【００６６】
なお、本実施形態では、説明の簡略化のために省略したが、シミュレーションは、他の種々の条件が設定されてもよい。例えば、所定時間間隔で線路Ｒ１，Ｒ２上を電車が走行し、電車が走行する時間帯は、作業員キャラクタＣが作業できないようにしてもよい。また例えば、所定時間間隔で資材置場に資材が補充され、この間は、作業員キャラクタＣが朝礼広場と資材置場の間を移動できないようにしてもよい。
【００６７】
以上のように、本実施形態の施工シミュレーション装置１０では、ユーザにより指示された作業員キャラクタＣの配置に基づいて、柱Ｐ及び梁Ｊ等の構造物の施工をシミュレーションし、シミュレーションが完了した場合に施工に要したコストを評価することで、施工現場における作業員の配置を最適化することを可能としている。以降、本技術の詳細について説明する。
【００６８】
［３．本実施形態で実現される機能］
図１０は、施工シミュレーション装置１０で実現される機能の一例を示す機能ブロック図である。図１０に示すように、施工シミュレーション装置１０では、データ記憶部１００、受付部１０１、施工シミュレーション部１０２、及び評価部１０３が実現される。
【００６９】
［データ記憶部］
データ記憶部１００は、記憶部１２を主として実現される。データ記憶部１００は、シミュレーションの実行に必要なデータを記憶する。ここでは、データ記憶部１００が記憶するデータとして、シミュレーション状況データＤＴ１を説明する。
【００７０】
図１１は、シミュレーション状況データＤＴ１のデータ格納例を示す図である。図１１に示すように、シミュレーション状況データＤＴ１は、実行中のシミュレーションの状況を示すデータであり、施工シミュレーション部１０２のシミュレーション結果に応じて更新される。例えば、シミュレーション状況データＤＴ１には、仮想世界ＶＷの状況が格納される。仮想世界ＶＷの状況として、作業員キャラクタＣに関する情報、構造物の施工状況に関する情報、朝礼広場の位置、及び資材置場の位置がシミュレーション状況データＤＴ１に格納される。
【００７１】
作業員キャラクタＣに関する情報は、作業員キャラクタＣの名前、種類、現在位置、配置、移動経路、及びステータスといった情報である。ステータスは、作業員キャラクタＣの現在の行動内容であり、例えば、「待機」、「移動中」、及び「作業中」といったステータスが用意されている。なお、作業員キャラクタＣに関する情報は、上記の例に限られず、他にも例えば、作業員キャラクタＣが保有する資材の量等が含まれていてもよい。
【００７２】
例えば、ユーザが作業員キャラクタＣに作業を指示しておらず、作業員キャラクタＣが朝礼広場にいる場合には、ステータスは「待機」となる。シミュレーションの開始時点では、全ての作業員キャラクタＣのステータスは「待機」となる。先述したように、作業員キャラクタＣが朝礼広場にいてステータスが「待機」である場合には、作業員キャラクタＣのコストは発生しない。
【００７３】
また例えば、ユーザが作業員キャラクタＣの配置を指示しており、配置先に向けて移動中の場合には、ステータスは「移動中」となる。先述したように、作業員キャラクタＣは、作業中に資材が不足した場合には資材置場まで資材を取りに戻るので、この場合にも、ステータスは「移動中」となる。また、作業員キャラクタＣは、配置先での作業を終えると朝礼広場に戻るので、この場合にも、ステータスは「移動中」となる。作業員キャラクタＣが朝礼広場に戻った場合には、ステータスは「移動中」から「待機」に変わる。
【００７４】
また例えば、作業員キャラクタＣが配置先に到着して作業を開始した場合には、ステータスは「作業中」となる。先述したように、本実施形態では、作業員キャラクタＣが作業を開始するための条件が設定されており、作業員キャラクタＣが配置先に到着しても作業を開始できない場合には、ステータスは「作業中」にはならず、「待機」又は「移動中」となる。
【００７５】
構造物の施工状況に関する情報は、構造物の名前、種類、位置、及びステータスといった情報が格納される。ステータスは、構造物の現在の施工状況であり、例えば、「施工前」、「施工中」、及び「施工完了」といったステータスが用意されている。後述するように、「施工中」のステータスは、「１ブロック目の施工中（配筋作業中）」及び「１ブロック目完成」等の詳細なステータスが用意されている。
【００７６】
図４を参照して説明したように、柱Ｐの１ブロック目は、配筋作業、型枠作業、打設作業の順で施工されるので、最初の配筋作業を担当する鉄筋工の作業員キャラクタＣが到着するまでは、柱Ｐのステータスは「施工前」となる。ステータスが「施工前」の場合、フィールドＦ上の柱Ｐの施工場所には何も配置されない。
【００７７】
鉄筋工の作業員キャラクタＣが柱Ｐの施工場所付近に到着すると、１ブロック目の配筋作業が開始され、ステータスは「１ブロック目の施工中（配筋作業中）」となる。その後、配筋作業の進行状況を示す数値が時間経過に応じて徐々に増加し、配筋作業の進行状況が１００％になると、ステータスは「１ブロック目の施工中（配筋作業完了）」となり、鉄筋を示すブロックが配置される。
【００７８】
ステータスが「１ブロック目の施工中（配筋作業完了）」になると、型枠作業が可能になり、型枠工の作業員キャラクタＣが到着すると、ステータスが「１ブロック目の施工中（型枠作業中）」に変わる。その後、型枠作業の進行状況を示す数値が時間経過に応じて徐々に増加し、型枠作業の進行状況が１００％になると、ステータスは「１ブロック目の施工中（型枠作業完了）」となり、型枠を示すブロックが配置される。
【００７９】
ステータスが「１ブロック目の施工中（型枠作業完了）」になると、打設作業が可能になり、コンクリート工の作業員キャラクタＣが到着すると、ステータスが「１ブロック目の施工中（打設作業中）」に変わる。その後、打設作業の進行状況を示す数値が時間経過に応じて徐々に増加し、打設作業の進行状況が１００％になると、柱Ｐの１ブロック目が完成するので、ステータスは「１ブロック目完成」となり、柱Ｐの１ブロック目が配置される。
【００８０】
柱Ｐの１ブロック目のステータスが「１ブロック目の施工完了」になると、柱Ｐの２ブロック目の作業が可能になる。柱Ｐの２ブロック目は、仮設作業、配筋作業、型枠作業、打設作業の順で施工されるので、仮設工の作業員キャラクタＣが到着すると、ステータスは「２ブロック目の施工中（仮設作業中）」となる。その後、仮設作業の進行状況を示す数値が時間経過に応じて徐々に増加し、仮設作業の進行状況が１００％になると、ステータスは「２ブロック目の施工中（仮設作業完了）」となり、１ブロック目の周囲に足場を示すブロックが配置される。
【００８１】
ステータスが「２ブロック目の施工中（仮設作業完了）」になると、２ブロック目の配筋作業が可能になる。その後の配筋作業、型枠作業、及び打設作業におけるステータスの変化は、１ブロック目と同様である。また、柱Ｐの３ブロック目及び４ブロック目におけるステータスの変化は、２ブロック目と同様である。柱Ｐの４ブロック目の打設作業が完了すると、ステータスは「施工完了」となり、柱Ｐ全体を示す４つのブロックが配置される。
【００８２】
次に、梁Ｊのステータスの変化について説明する。梁Ｊは、両端にある２本の柱Ｐのステータスが「施工完了」になった場合に作業が可能になる。図５を参照して説明したように、梁Ｊは、仮設作業、配筋作業、及び型枠作業が４回繰り返された後に、４ブロック分の打設作業がまとめて行われるので、最初の仮設作業を担当する仮設工の作業員キャラクタＣが到着するまでは、ステータスは「施工前」となる。ステータスが「施工前」の場合、梁Ｊの施工場所には何も配置されない。
【００８３】
仮設工の作業員キャラクタＣが梁Ｊの施工場所の下に到着すると、仮設作業が開始され、ステータスは「１ブロック目の施工中（仮設作業中）」となる。その後、仮設作業の進行状況を示す数値が時間経過に応じて徐々に増加し、仮設作業の進行状況が１００％になると、ステータスは「１ブロック目の施工中（仮設作業完了）」となり、柱Ｐの間に足場を示すブロックが配置される。
【００８４】
ステータスが「１ブロック目の施工中（仮設作業完了）」になると、配筋作業が可能になり、鉄筋工の作業員キャラクタＣが到着すると、ステータスが「１ブロック目の施工中（配筋作業中）」に変わる。その後、配筋作業の進行状況を示す数値が時間経過に応じて徐々に増加し、配筋作業の進行状況が１００％になると、ステータスは「１ブロック目の施工中（配筋作業完了）」となり、鉄筋を示すブロックが配置される。
【００８５】
ステータスが「１ブロック目の施工中（配筋作業完了）」になると、型枠作業が可能になり、型枠工の作業員キャラクタＣが到着すると、ステータスが「１ブロック目の施工中（型枠作業中）」に変わる。その後、型枠作業の進行状況を示す数値が時間経過に応じて徐々に増加し、型枠作業の進行状況が１００％になると、ステータスは「１ブロック目の施工中（型枠作業完了）」となり、型枠を示すブロックが配置される。
【００８６】
梁Ｊの１ブロック目のステータスが「１ブロック目の施工中（型枠作業完了）」になると、梁Ｊの２ブロック目の作業が可能になる。その後の仮設作業、配筋作業、及び型枠作業におけるステータスの変化は、１ブロック目と同様である。また、梁Ｊの３ブロック目及び４ブロック目におけるステータスの変化も同様である。
【００８７】
梁Ｊの４ブロック目の型枠作業が完了し、ステータスが「４ブロック目の施工中（型枠作業完了）」になると、２本の柱Ｐを繋ぐようにして型枠を示すブロックが配置され、打設作業が可能になる。その後、コンクリート工の作業員キャラクタＣが到着すると、ステータスが「１ブロック目の施工中（打設作業中）」に変わる。その後、打設作業の進行状況を示す数値が時間経過に応じて徐々に増加し、打設作業の進行状況が１００％になると、ステータスは「施工完了」となり、梁Ｊ全体を示す４つのブロックが配置される。
【００８８】
また例えば、シミュレーション状況データＤＴ１には、ユーザの指示内容の履歴が格納される。ユーザの指示内容の履歴として、各ターンにおける作業員キャラクタＣの配置が格納される。別の言い方をすれば、ターンごとの作業員キャラクタＣの配置が格納される。また例えば、シミュレーション状況データＤＴ１には、現在のターン及び現在のコストが格納される。
【００８９】
なお、データ記憶部１００に記憶されるデータは、上記の例に限られない。例えば、データ記憶部１００は、作業員キャラクタＣの基本情報が格納された作業員データや構造物の基本情報が格納された構造物データを記憶してもよい。また例えば、データ記憶部１００は、設計図が格納された設計図データを記憶してもよい。また例えば、データ記憶部１００は、資材置場に置かれる資材に関する資材データを記憶してもよい。また例えば、作業員キャラクタＣが機材を使用する場合には、データ記憶部１００は、機材に関する機材データを記憶してもよい。
【００９０】
［受付部］
受付部１０１は、制御部１１を主として実現される。受付部１０１は、繰り返し訪れるターンにおいて、ユーザによる、構造物を施工する作業員キャラクタＣの配置に関する指示を受け付ける。ターンは、指示機会の一例である。指示機会は、ユーザが作業員キャラクタＣの配置を指示する機会であり、シミュレーション中に複数回訪れる。指示機会は、ターンのように定期的に訪れてもよいし、ユーザが所望する任意のタイミングで訪れてもよい。例えば、指示機会は、シミュレーション中にユーザが所定の操作をした場合に訪れてもよい。
【００９１】
受付部１０１は、操作部１４の検出信号に基づいて、ユーザの指示を受け付ける。本実施形態では、シミュレーション画面Ｇにおいて作業員キャラクタＣの配置が指示されるので、受付部１０１は、シミュレーション画面Ｇ上の任意の位置の指示を受け付けることになる。先述したように、フィールドＦ上の任意の位置を指示可能としてもよいが、本実施形態では、説明の簡略化のために、柱Ｐ又は梁Ｊの施工場所の何れかの位置が指示される場合を説明する。このため、受付部１０１は、柱Ｐ又は梁Ｊの施工場所の何れかの指示を受け付ける。
【００９２】
本実施形態では、仮想世界ＶＷには、複数の作業員キャラクタＣを配置可能であり、受付部１０１は、複数の作業員キャラクタＣの各々の配置に関する指示を受け付ける。受付部１０１は、作業員キャラクタＣごとに、ユーザによる指示を受け付ける。例えば、ユーザは、複数の作業員キャラクタＣの中から作業をさせる作業員キャラクタＣを選択し、当該選択した作業員キャラクタＣの配置を指示する。
【００９３】
本実施形態では、構造物は、複数の工程を経て施工され、複数の工程にそれぞれ対応する複数種類の作業員キャラクタＣが用意されており、受付部１０１は、ユーザによる、作業をさせる作業員キャラクタＣの種類に関する指示を更に受け付ける。受付部１０１は、作業員キャラクタＣの種類の指示と、当該作業員キャラクタＣの配置の指示と、を受け付ける。図７の例では、作業員キャラクタＣの種類に応じた名前が設定されているので、ユーザは、作業員キャラクタＣの名前を選択することによって、作業員キャラクタＣの種類を指示する。
【００９４】
本実施形態では、資材置場を任意の場所に配置可能であり、受付部１０１は、ユーザによる、仮想世界における資材置場の位置に関する指示を更に受け付ける。本実施形態では、シミュレーション画面Ｇにおいて資材置場の配置が指示されるので、受付部１０１は、シミュレーション画面Ｇ上の任意の位置の指示を受け付ける。先述したように、フィールドＦ上の任意の位置を指示可能としてもよいが、本実施形態では、柱Ｐ及び梁Ｊの周囲は指定できないものとする。
【００９５】
［施工シミュレーション部］
施工シミュレーション部１０２は、制御部１１を主として実現される。施工シミュレーション部１０２は、ユーザにより指示された作業員キャラクタＣの配置に基づいて、構造物の施工をシミュレーションする。例えば、施工シミュレーション部１０２は、作業員キャラクタＣの移動と、作業員キャラクタＣの作業によって構造物が完成する様子と、をシミュレーションし、仮想世界の現在の状況を更新する。別の言い方をすれば、施工シミュレーション部１０２は、構造物が施工されるまでのコストをシミュレーションする。
【００９６】
施工シミュレーション部１０２は、シミュレーション結果に基づいて、シミュレーション状況データＤＴ１を更新する。例えば、施工シミュレーション部１０２は、作業員キャラクタＣの移動経路を決定して作業員キャラクタＣの現在位置を更新したり、作業員キャラクタＣが配置先に到着した場合にステータスを変更したりする。また例えば、施工シミュレーション部１０２は、作業員キャラクタＣが施工現場にいる場合に時間経過に応じて施工状況を示す数値を更新したり、構造物のステータスを変更したりする。
【００９７】
また例えば、施工シミュレーション部１０２は、シミュレーション状況データＤＴ１に格納された現在のコストを更新する。例えば、施工シミュレーション部１０２は、作業員キャラクタＣのステータスが「移動中」又は「作業中」である場合に、時間経過に応じてコストを増加させる。また例えば、施工シミュレーション部１０２は、仮想世界ＶＷの現在日時が所定の工期を経過した場合に、時間経過に応じてコストを増加させる。
【００９８】
作業員キャラクタＣは、ユーザが指定した配置先に移動して構造物を施工するので、施工シミュレーション部１０２は、ユーザが指定した配置先に、作業員キャラクタＣを移動させる。作業員キャラクタＣの移動経路は、任意の経路探索アルゴリズムで決定されてよく、本実施形態では、ビデオゲームで用いられる影響度マップが利用される場合を説明するが、ナビゲーション分野で用いられるダイクストラ法やエースター探索法等が利用されてもよい。
【００９９】
本実施形態では、仮想世界ＶＷでは、複数の構造物が施工対象となっており、施工シミュレーション部１０２は、ユーザにより指示された作業員キャラクタＣの配置と、施工中の構造物の位置又は施工完了した構造物の位置と、に基づいて、作業員キャラクタＣの移動を制御する。施工シミュレーション部１０２は、施工中の構造物の位置又は施工完了した構造物の位置の付近を通らずに、作業員キャラクタＣを配置先まで移動させる。付近とは、所定距離以内の領域であり、例えば、周囲１マス〜３マス程度であってよい。
【０１００】
例えば、施工シミュレーション部１０２は、施工中の構造物の位置又は施工完了した構造物の位置に基づいて、影響度マップの各マスの評価値を設定する。例えば、施工シミュレーション部１０２は、施工中の構造物の位置又は施工完了した構造物の位置に近いほど評価値を低く設定し、作業員キャラクタＣが通行しないようにする。別の言い方をすれば、施工シミュレーション部１０２は、施工中の構造物の位置又は施工完了した構造物の位置から遠いほど評価値を高く設定し、作業員キャラクタＣが通行するようにする。施工シミュレーション部１０２は、評価値の高いマスを通って配置先に到達するように、作業員キャラクタＣの移動経路を決定する。
【０１０１】
また例えば、施工シミュレーション部１０２は、複数の作業員キャラクタＣの互いの位置関係に基づいて、各作業員キャラクタＣの移動を制御してもよい。施工シミュレーション部１０２は、各作業員キャラクタＣが他の作業員キャラクタＣの現在位置付近を通らないように、作業員キャラクタＣを移動させる。別の言い方をすれば、施工シミュレーション部１０２は、作業員キャラクタＣ同士が近づきすぎたり衝突したりしないように、作業員キャラクタＣを移動させる。
【０１０２】
例えば、施工シミュレーション部１０２は、各作業員キャラクタＣの現在位置に基づいて、影響度マップの各マスの評価値を設定する。例えば、施工シミュレーション部１０２は、作業員キャラクタＣの現在位置に近いほど評価値を低く設定し、他の作業員キャラクタＣが通行しないようにする。別の言い方をすれば、施工シミュレーション部１０２は、作業員キャラクタＣの現在位置から遠いほど評価値を高く設定し、他の作業員キャラクタＣが通行するようにする。施工シミュレーション部１０２は、評価値の高いマスを通って配置先に到達するように、作業員キャラクタＣの移動経路を決定する。
【０１０３】
本実施形態では、複数種類の作業員キャラクタＣが用意されているので、施工シミュレーション部１０２は、ユーザにより指示された作業員キャラクタＣの種類に更に基づいて、構造物の施工をシミュレーションする。先述したように、構造物は複数の工程を経て施工され、各工程を担当する作業員キャラクタＣが予め定められているので、施工シミュレーション部１０２は、個々の工程に適した作業員キャラクタＣが指定された場合に、当該工程を進行させる。別の言い方をすれば、作業員キャラクタＣは自身の種類に応じた作業をするので、施工シミュレーション部１０２は、ユーザにより指示された作業員キャラクタＣに、当該作業員キャラクタＣの種類に応じた作業をさせる。
【０１０４】
本実施形態では、ユーザが資材置場の位置を指定するので、施工シミュレーション部１０２は、ユーザにより指示された資材置場の位置に更に基づいて、構造物の施行をシミュレーションする。例えば、施工シミュレーション部１０２は、資材置場の位置に基づいて、作業員キャラクタＣの移動を制御する。施工シミュレーション部１０２は、作業員キャラクタＣが資材置場を経由して配置先に移動したり、配置先で資材が不足した場合に作業員キャラクタＣが資材置場まで戻らせたりする。別の言い方をすれば、施工シミュレーション部１０２は、資材置場と配置先との間で作業員キャラクタＣを移動させる。
【０１０５】
［評価部］
評価部１０３は、制御部１１を主として実現される。評価部１０３は、施工シミュレーション部１０２によるシミュレーションが完了した場合に、構造物の施工に要したコストを評価する。コストを評価とは、ユーザの指示内容を評価すること、又は、シミュレーション結果を評価することである。本実施形態では、シミュレーション状況データＤＴ１に格納されたコストを表示させることがコストを評価することに相当する場合を説明するが、「コスト大」、「コスト中」、又は「コスト小」のようにコストが属する帯域が表示されてもよいし、コストに応じた点数等が表示されてもよい。
【０１０６】
評価部１０３は、シミュレーション状況データＤＴ１に格納された構造物のステータスが全て「施工完了」になった場合に、シミュレーションが完了したと判定する。評価部１０３は、シミュレーションが完了したと判定された場合のシミュレーション状況データＤＴ１に格納されたコストを取得し、当該コストを表示部１５に表示させることによって、コストを評価する。
【０１０７】
［４．本実施形態において実行される処理］
図１２は、施工シミュレーション装置１０で実行される処理を示すフロー図である。以降説明する処理は、制御部１１が記憶部１２に記憶されたプログラムに従って動作することによって実行される。また、以降説明する処理は、図１０に示す機能ブロックにより実行される処理の一例である。
【０１０８】
図１２に示すように、施工シミュレーション装置１０において、シミュレーションのプログラムが起動すると、制御部１１は、記憶部１２に記憶された設計図に基づいて、仮想世界ＶＷを構築する（Ｓ１）。例えば、設計図には、施工現場の形状やサイズ等が示されており、Ｓ１においては、制御部１１は、設計図に示された施工現場の形状やサイズに基づいて、フィールドＦを配置し、仮想世界ＶＷを構築する。
【０１０９】
制御部１１は、Ｓ１で構築した仮想世界ＶＷに基づいて、シミュレーション画面Ｇを表示部１５に表示させる（Ｓ２）。Ｓ２においては、図６に示す状態のシミュレーション画面Ｇが表示され、ユーザが朝礼広場と資材置場の位置を指定可能な状態となる。
【０１１０】
制御部１１は、操作部１４の検出信号に基づいて、ユーザによる、朝礼広場と資材置場の配置に関する指示を受け付ける（Ｓ３）。Ｓ３においては、制御部１１は、シミュレーション画面Ｇに表示されたフィールドＦ上の位置の指定を受け付ける。制御部１１は、ユーザが指定した朝礼広場と資材置場の位置をシミュレーション状況データＤＴ１に格納し、フィールドＦ上に朝礼広場と資材置場を示す３次元モデルを配置する。
【０１１１】
制御部１１は、シミュレーションを開始し（Ｓ４）、操作部１４の検出信号に基づいて、第１ターンにおける作業員キャラクタＣの配置に関する指示を受け付ける（Ｓ５）。Ｓ５において、制御部１１は、シミュレーション画面Ｇにおいてユーザが指示したフィールドＦ上の位置の指定を受け付ける。制御部１１は、ユーザが指定した配置先をシミュレーション状況データＤＴ１に格納する。
【０１１２】
制御部１１は、ターンを開始して、ユーザにより指示された配置に基づいて、シミュレーションを実行する（Ｓ６）。Ｓ６においては、制御部１１は、作業員キャラクタＣの位置や施工中の構造物の位置等に基づいて、フィールドＦ上に設定された影響度マップの評価値を決定する。制御部１１は、影響度マップの評価値に基づいて、「移動中」のステータスの作業員キャラクタＣの移動を制御し、「作業中」のステータスの作業員キャラクタＣが作業する構造物の作業状況を時間経過に応じて増加させる。制御部１１は、「移動中」又は「作業中」のステータスの作業員キャラクタＣに基づいて、シミュレーション状況データＤＴ１に格納されたコストを更新する。
【０１１３】
制御部１１は、シミュレーション状況データＤＴ１に基づいて、シミュレーションが完了したか否かを判定する（Ｓ７）。Ｓ７においては、制御部１１は、シミュレーション状況データＤＴ１に格納された構造物のステータスが全て「施工完了」になったか否かを判定する。全て「施工完了」になった場合には、シミュレーションが完了したと判定される。
【０１１４】
シミュレーションが完了したと判定されない場合（Ｓ７；Ｎ）、制御部１１は、シミュレーション状況データＤＴ１に基づいて、次のターンが訪れたか否かを判定する（Ｓ８）。Ｓ８においては、制御部１１は、シミュレーション状況データＤＴ１が示す日時がターンの開始時点になったか否かを判定する。
【０１１５】
次のターンが訪れたと判定されない場合（Ｓ８；Ｎ）、Ｓ５の処理に戻り、現在のターンにおけるシミュレーションが継続される。一方、次のターンが訪れたと判定された場合（Ｓ８；Ｙ）、Ｓ５の処理に戻り、次のターンにおける作業員キャラクタＣの配置に関する指示が受け付けられる。
【０１１６】
Ｓ７において、シミュレーションが完了したと判定された場合（Ｓ７；Ｙ）、制御部１１は、シミュレーション状況データＤＴ１に格納された現在のコストをシミュレーション画面Ｇに表示させ（Ｓ９）、本処理は終了する。Ｓ９においては、制御部１１は、シミュレーション状況データＤＴ１に格納されたコストをシミュレーション画面Ｇに表示させる。
【０１１７】
以上説明した施工シミュレーション装置１０によれば、ユーザが指示した作業員キャラクタＣの配置に基づいてシミュレーションが実行され、シミュレーションが完了した場合に、構造物の施工に要したコストが評価されることで、シミュレーションにおけるユーザの指示が的確であるか否かをコストによって把握させ、施工現場における作業員の配置を最適化することができる。
【０１１８】
また、ユーザにより指示された作業員キャラクタＣの配置と、施工中の構造物の位置又は施工完了した構造物の位置と、に基づいて、作業員キャラクタＣの移動が制御されることで、施工現場における作業員の導線を確保した配置であるか否かをユーザに把握させることができる。また、作業員キャラクタＣの移動経路がコストに影響するので、コストによって作業員キャラクタＣの移動が効率的であるか否かを把握させ、施工現場における作業員の配置をより最適化することができる。
【０１１９】
また、複数の作業員キャラクタＣの互いの位置関係に基づいて、各作業員キャラクタＣの移動が制御されることで、施工現場において作業員同士が邪魔にならないような配置であるか否かをユーザに把握させることができる。また、作業員キャラクタＣの移動経路がコストに影響するので、コストによって作業員キャラクタＣの移動が効率的であるか否かを把握させ、施工現場における作業員の配置をより最適化することができる。
【０１２０】
また、ユーザにより指示された作業員キャラクタＣの種類に基づいて、構造物の施工がシミュレーションされることで、各工程に適した作業員キャラクタＣを作業させているか否かをユーザに把握させ、施工現場において適材適所となるように、作業員の配置を最適化することができる。
【０１２１】
また、ユーザにより指示された資材置場の位置に基づいて構造物の施工がシミュレーションされることで、資材置場の位置がコストに影響するので、施工現場における資材置場の配置を最適化することができる。
【０１２２】
［５．変形例］
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
【０１２３】
図１３は、変形例における機能ブロック図である。図１３に示すように、以降説明する変形例では、実施形態で説明した機能に加え、設定部１０４、教師データ取得部１０５、学習部１０６、及び検索部１０７が実現される。
【０１２４】
（１）例えば、実施形態では、全ての作業員キャラクタＣの能力が均等であり、移動速度、資材運搬量、及び作業速度が一定値である場合を説明したが、各作業員キャラクタＣにスキルパラメータが設定されており、作業員キャラクタＣごとに能力が異なってもよい。スキルパラメータは、作業員キャラクタＣの能力の高さを示し、数値が高いほど能力が高く、数値が低いほど能力が低い。スキルパラメータが高いほど、作業量や資材運搬量が多くなったり、移動速度が速くなったりする。スキルパラメータは、作業員キャラクタＣと関連付けられてデータ記憶部１００に予め記憶されているものとする。
【０１２５】
なお、本変形例においても、実施形態で説明したように、受付部１０１は、ユーザによる、複数の作業員キャラクタＣの中で作業をさせる作業員キャラクタＣに関する指定を受け付ける。このため、ユーザは、互いにスキルパラメータが異なる複数の作業員キャラクタＣの中から作業をさせる任意の作業員キャラクタＣを選択することができる。例えば、ターンが訪れるとシミュレーション画面Ｇに作業員キャラクタＣの一覧が表示され、受付部１０１は、シミュレーション画面Ｇに表示された作業員キャラクタＣのうちの少なくとも１つを選択する。
【０１２６】
施工シミュレーション部１０２は、ユーザにより指示された作業員キャラクタＣのスキルパラメータに更に基づいて、構造物の施工をシミュレーションする。例えば、施工シミュレーション部１０２は、作業員キャラクタＣのスキルパラメータに基づいて、構造物の施工完了までの早さを制御する。施工シミュレーション部１０２は、スキルパラメータが高いほど構造物の施工完了を早くし、スキルパラメータが低いほど構造物の施工完了を遅くする。
【０１２７】
また例えば、施工シミュレーション部１０２は、作業員キャラクタＣのスキルパラメータに基づいて、作業員キャラクタＣの移動を制御する。施工シミュレーション部１０２は、スキルパラメータが高いほど作業員キャラクタＣを速く移動させ、スキルパラメータが低いほど作業員キャラクタＣを遅く移動させる。また例えば、施工シミュレーション部１０２は、作業員キャラクタＣのスキルパラメータに基づいて、作業員キャラクタＣの資材の運搬量を決定する。施工シミュレーション部１０２は、スキルパラメータが高いほど作業員キャラクタＣの運搬量を多くし、スキルパラメータが低いほど作業員キャラクタＣの運搬量を少なくする。
【０１２８】
なお、スキルパラメータによって作業員キャラクタＣのコストが変化してもよい。例えば、スキルパラメータが高いほどコストの増加分が大きくなり、スキルパラメータが低いほどコストの増加分が小さくなる。この場合、施工シミュレーション部１０２は、スキルパラメータに基づいて、コストを決定する。
【０１２９】
変形例（１）によれば、作業員キャラクタＣのスキルパラメータに基づいて、構造物の施工がシミュレーションされることで、シミュレーションの精度を高めることができる。
【０１３０】
（２）また例えば、作業員キャラクタＣのスキルパラメータは、シミュレータの作成者が指定したりユーザが設定したりして固定値としてもよいが、現実の作業現場における作業員の作業状況が反映されるようにしてもよい。即ち、作業員キャラクタＣのスキルパラメータは、現実の作業現場における作業員の能力と合うように、動的に変化してもよい。
【０１３１】
本変形例では、設定部１０４が実現される。設定部１０４は、制御部１１を主として実現される。設定部１０４は、現実の作業現場における作業員の作業状況に基づいて、各作業員キャラクタＣのスキルパラメータを設定する。現実の作業員の作業状況は、単位時間あたりの作業員の作業量、資材運搬量、及び移動速度といった情報である。
【０１３２】
例えば、現実の作業現場における作業の監視者が、作業員の作業を監視し、コンピュータに対して作業量、資材運搬量、及び移動速度といった情報を入力する。設定部１０４は、当該入力された情報に基づいて、スキルパラメータを設定する。入力された情報とスキルパラメータとの関係は、予め定めておけばよく、例えば、設定部１０４は、入力された情報が示す数値が高いほどスキルパラメータを高く設定し、入力された情報が低いほどスキルパラメータを低く設定する。
【０１３３】
また例えば、監視者の入力を要することなく、スキルパラメータが設定されてもよい。例えば、現実の作業現場における作業員にスマートフォン等の端末を装着させ、端末から送信された情報に基づいて、スキルパラメータが設定されてもよい。この場合、端末は、ＧＰＳセンサや加速度センサ等のセンサを含み、センサの検出信号によって、作業員の作業量や移動速度を検出する。また例えば、現実の作業現場の資材にＲＦＩＤタグ等を付与しておき、作業現場における資材のタグを読み取ることにより、作業員の資材運搬量が検出されてもよい。他にも例えば、現実の作業現場に配置されたカメラの撮影画像が解析されることで、作業員の作業量、資材運搬量、及び移動速度といった情報が取得されてもよい。このように、現実の作業現場に配置された機器をＩＯＴ化し、設定部１０４は、当該機器から情報を受信することによって、作業員キャラクタＣのスキルパラメータを設定してもよい。
【０１３４】
変形例（２）によれば、現実の作業現場における作業員の能力がスキルパラメータに反映されるので、シミュレーションの精度をより効果的に高めることができる。
【０１３５】
（３）また例えば、シミュレーションにおけるユーザの指示内容と発生したコストを蓄積し、機械学習を利用して、コストを抑制可能な作業員キャラクタＣの配置が探索されるようにしてもよい。
【０１３６】
本変形例では、データ記憶部１００は、学習器Ｌのアルゴリズムを記憶する。学習器Ｌは、いわゆる人工知能で用いられる種々のタイプの学習器Ｌを適用可能であり、例えば、機械学習又は深層学習で利用される学習器Ｌであってよい。学習器Ｌは、入力された設計図に示された構造物の配置を特徴量化し、当該特徴量に基づいて、コストを抑制可能な作業員キャラクタＣの配置を出力する。なお、構造物の配置以外にも、構造物の種類、寸法、及び材質といった情報を設計図に示しておき、これらの情報が特徴量化されてもよい。学習器Ｌのアルゴリズムには、設計図に示された構造物の位置と、コストを抑制可能な作業員キャラクタＣの配置と、の関係が示されていることになる。
【０１３７】
また、本変形例では、教師データ取得部１０５と学習部１０６が実現される。教師データ取得部１０５と学習部１０６は、制御部１１を主として実現される。教師データ取得部１０５は、施工シミュレーション部１０２によるシミュレーションが完了した場合に、ユーザにより指示された作業員キャラクタＣの配置と、構造物の施工に要したコストと、に基づいて、構造物又は他の構造物の施工に要するコストを抑制可能な作業員キャラクタＣの配置を出力する学習器Ｌの教師データＤＴ２を取得する。
【０１３８】
教師データＤＴ２は、学習データとも呼ばれるものであり、学習器Ｌのアルゴリズムの係数を決定するために利用される。例えば、コストが低いユーザの指示内容を学習器Ｌに学習させる場合には、教師データ取得部１０５は、シミュレーションが完了した場合のコストが閾値未満であるユーザの指示内容に基づいて、教師データＤＴ２を取得する。閾値は、予め定められた固定値としてもよいし、上位１０％が選出されるような可変値としてもよい。コストが閾値以上であるユーザの指示内容は、教師データＤＴ２には含まれず、学習器Ｌの学習で使用されない。例えば、教師データ取得部１０５は、シミュレーションで利用した設計図が示す構造物の配置を入力とし、コストが低かったユーザの指示内容が示す作業員キャラクタＣの配置を出力とした教師データＤＴ２を取得する。
【０１３９】
学習部１０６は、教師データＤＴ２に基づいて、学習器Ｌを学習させる。学習器Ｌの学習方法自体は、種々の手法を適用可能であり、教師有り機械学習で用いられる学習方法を利用すればよい。上記のように、コストが低いユーザの指示内容が教師データＤＴ２に含まれている場合には、学習部１０６は、シミュレーションで利用した設計図が入力された場合に、コストが低いユーザの指示内容を出力するように、学習器Ｌのアルゴリズムの係数を決定する。また例えば、学習部１０６は、シミュレーションで利用した設計図と似た設計図が入力された場合に、コストが低いユーザの指示内容と似た指示内容を出力するように、学習器Ｌのアルゴリズムの係数を決定する。本変形例では、シミュレーションで利用した設計図が示す構造物の配置を入力とし、コストが低かったユーザの指示内容が示す作業員キャラクタＣの配置を出力とした教師データＤＴ２が取得されるので、学習部１０６は、これら入出力の関係に基づいて、アルゴリズムの係数を決定する。
【０１４０】
学習部１０６によって学習された学習器Ｌは、シミュレーションで用いられた設計図又は新たな設計図（シミュレーションで用いられたことのない設計図）が入力された場合に、学習済みのユーザ（コストが低かったユーザ）の指示内容に基づいて、入力された設計図が示す構造物を施工するためのコストを抑制可能な作業員キャラクタＣの配置を出力する。学習部１０６が出力する作業員キャラクタＣの配置は、各ターンにおける配置である。なお、学習器Ｌが出力するコストは、必ずしも最小のコストとはならないことがあり、コストが低かったユーザの指示内容を参考にして学習器Ｌが推測した最小と思われるコストである。実施形態で説明したような設計図であれば、柱Ｐを手前側から施工するとコストが高くなり、柱Ｐを奥側から施工するとコストが低くなることが学習器Ｌに学習されているので、学習器Ｌは、入力された設計図が示す構造物の施工に要するコストを抑制する配置として、奥側から作業員キャラクタＣを作業させるような配置を出力する。
【０１４１】
変形例（３）によれば、学習器Ｌによってコストを抑制可能な作業員キャラクタＣの配置が出力されるので、施工現場における作業員の配置をより最適化することができる。また、シミュレーションで用いられた設計図ではない新たな設計図だったとしても、学習器Ｌは、学習済みの設計図を参考にして、当該新たな設計図が示す構造物の施工に要するコストを抑制可能な作業員キャラクタＣの配置を出力することができる。
【０１４２】
（４）また例えば、学習器Ｌを利用せずに、コストが低かったユーザの指示内容を参考にして、コストを最小化するための作業員キャラクタＣの配置が探索されてもよい。この場合、施工シミュレーション装置１０は、コストが低かったユーザの指示内容を改変しながら、自動的にシミュレーションを実行し、ユーザがたたき出した最低コストよりも低いコストを探索する。
【０１４３】
本変形例では、検索部１０７が実現される。検索部１０７は、制御部１１を主として実現される。検索部１０７は、施工シミュレーション部１０２によるシミュレーションが完了した場合に、ユーザにより指示された作業員キャラクタＣの配置と、構造物の施工に要したコストと、に基づいて、構造物の施工に要するコストを抑制可能な作業員キャラクタＣの配置を検索する。
【０１４４】
検索部１０７は、シミュレーションが完了した場合のコストが閾値未満であったユーザの指示内容に基づいて、シミュレーションにおける指示内容のサンプルデータを生成する。サンプルデータは、コストが低かったユーザの指示内容の一部が改変された内容であり、例えば、検索部１０７は、ユーザが指示した配置先を所定距離だけずらした指示内容としたり、ユーザが指示した作業員キャラクタＣの作業順を入れ替えたりすることによって、サンプルデータを作成する。ただし、ユーザの指示内容を改変しすぎると、コストが低いユーザの指示内容を参考にすることができなくなるので、改変量は所定量未満とする。ここでの改変量とは、配置先の位置の差であり、ユーザが指示した配置先とのずれが所定量未満となるようにサンプルデータが作成される。
【０１４５】
検索部１０７は、複数のサンプルデータを取得し、個々のサンプルデータごとに、シミュレーションを自動的に実行してシミュレーション完了までに要したコストを取得する。検索部１０７は、当該取得したコストが過去のユーザの最低コストよりも低かった場合に、当該取得したコストを、構造物の施工に要するコストを抑制可能な作業員キャラクタＣの配置として取得する。
【０１４６】
変形例（４）によれば、構造物の施工に要するコストを抑制可能な作業員キャラクタＣの配置が検索されるので、施工現場における作業員の配置をより最適化することができる。
【０１４７】
（５）また例えば、上記変形例を組み合わせてもよい。
【０１４８】
また例えば、仮想世界ＶＷがブロック状に区切られている場合を説明したが、仮想世界ＶＷはブロック状に区切られていなくてもよく、ブロックの概念が存在しなくてもよい。また例えば、シミュレーションの方法は、実施形態で説明した例に限られず、シミュレーション中にランダムに事故が発生したり、作業員キャラクタＣの資材運搬量に応じて事故が発生したりしてもよい。このようなシミュレーション結果を蓄積し、ユーザの指示内容によって多数の事故が発生した場合には、当該ユーザの指示内容を学習器Ｌに学習させ、安全計画や災害事例等を出力する学習器Ｌを作成してもよい。
【０１４９】
また例えば、実施形態では、施工シミュレーション装置１０によって各機能が実現される場合を説明したが、例えば、データ記憶部１００は、サーバコンピュータによって実現されてもよい。また例えば、施工シミュレーション装置１０は、サーバコンピュータによって実現され、ユーザが操作する端末がネットワークを介して施工シミュレーション装置１０の機能を利用してもよい。
【符号の説明】
【０１５０】
１０  施工シミュレーション装置、１１  制御部、１２  記憶部、１３  通信部、１４  操作部、１５  表示部、Ｃ  作業員キャラクタＣ、Ｆ  フィールド、Ｇ  シミュレーション画面、Ｊ  梁、Ｌ  学習器、Ｐ  柱、ＶＣ  仮想カメラ、ＶＷ  仮想世界、１００  データ記憶部、１０１  受付部、１０２  施工シミュレーション部、１０３  評価部、１０４  設定部、１０５  教師データ取得部、１０６  学習部、１０７  検索部、ＤＴ１  シミュレーション状況データ、ＤＴ２  教師データ。
【図１】
2020071581.tif 000003
【図２】
2020071581.tif 000004
【図３】
2020071581.tif 000005
【図４】
2020071581.tif 000006
【図５】
2020071581.tif 000007
【図６】
2020071581.tif 000008
【図７】
2020071581.tif 000009
【図８】
2020071581.tif 000010
【図９】
2020071581.tif 000011
【図１０】
2020071581.tif 000012
【図１１】
2020071581.tif 000013
【図１２】
2020071581.tif 000014
【図１３】
2020071581.tif 000015