(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023131859
(43)【公開日】2023-09-22
(54)【発明の名称】テスト支援装置、方法及びプログラムに関する。
(51)【国際特許分類】
G06F 11/36 20060101AFI20230914BHJP
【FI】
G06F11/36 196
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022036846
(22)【出願日】2022-03-10
(71)【出願人】
【識別番号】000003333
【氏名又は名称】ボッシュ株式会社
(71)【出願人】
【識別番号】000002299
【氏名又は名称】清水建設株式会社
(74)【代理人】
【識別番号】100114775
【弁理士】
【氏名又は名称】高岡 亮一
(74)【代理人】
【識別番号】100121511
【弁理士】
【氏名又は名称】小田 直
(74)【代理人】
【識別番号】100154759
【弁理士】
【氏名又は名称】高木 貴子
(72)【発明者】
【氏名】中里 研一
(72)【発明者】
【氏名】鈴木 正憲
(72)【発明者】
【氏名】山本 真哉
(72)【発明者】
【氏名】宮下 裕貴
(72)【発明者】
【氏名】平田 弘達
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042GA19
5B042GA22
5B042HH07
(57)【要約】 (修正有)
【課題】エージェントが無人操作する建設機械をテストするときのコスト及び作業負荷を抑制する。
【解決手段】エージェントプログラムにより操作される建設機械の動作を仮想環境上でシミュレーションし、エージェントプログラムをテストするテスト支援装置は、仮想環境上で建設機械が検出すべき情報をエージェントプログラムに入力し、エージェントプログラムからの応答に基づき仮想環境上で建設機械の動作をシミュレーションするシミュレーション部と、仮想環境の作業条件を変更し、複数の仮想環境を設定する設定部と、複数の仮想環境でのシミュレーション結果に基づき、エージェントプログラムの性能を示す指標を表示装置に表示させる出力処理部と、を備える。出力処理部は、シミュレーションでの作業完了までの時間及びシミュレーションでの建設機械の移動距離の少なくとも一方を用いて、エージェントプログラムによる作業効率の指標を算出する。
【選択図】なし
【特許請求の範囲】
【請求項1】
エージェントプログラムにより操作される建設機械(10)の動作を仮想環境(F)上でシミュレーションし、前記エージェントプログラムをテストするテスト支援装置(20)であって、
前記仮想環境上で前記建設機械が検出すべき情報を前記エージェントプログラムに入力し、前記エージェントプログラムからの応答に基づき前記仮想環境上で前記建設機械の動作をシミュレーションするシミュレーション部(32)と、
前記仮想環境の作業条件を変更し、複数の前記仮想環境を設定する設定部(33)と、
複数の前記仮想環境でのシミュレーション結果に基づき、前記エージェントプログラムの性能を示す指標を表示装置(29)に表示させる出力処理部(35)と、を備え、
前記出力処理部は、前記シミュレーションでの作業完了までの時間および前記シミュレーションでの前記建設機械の移動距離の少なくとも一方を用いて、前記エージェントプログラムによる作業効率の指標を算出する
テスト支援装置。
【請求項2】
前記建設機械(10)は、盛り土の巻き出しを行うドーザーであり、
前記作業条件は、前記仮想環境の形状およびサイズ、盛り土の量および配置、巻き出し厚の目標値の項目を少なくとも含む
請求項1に記載のテスト支援装置。
【請求項3】
前記シミュレーション部(32)は、前記仮想環境での前記ドーザーの位置と前記ドーザーのセンサ部の仕様に応じて、前記検出すべき情報を設定する
請求項2に記載のテスト支援装置。
【請求項4】
前記設定部(33)は、前記仮想環境内に回避対象物を設定可能であり、
前記出力処理部(35)は、前記仮想環境での前記ドーザーと前記回避対象物の最小距離の情報を前記指標として算出する
請求項2または請求項3に記載のテスト支援装置。
【請求項5】
前記出力処理部(35)は、前記回避対象物の存在しない第1の仮想環境のシミュレーションで算出された指標と、前記回避対象物が存在する第2の仮想環境のシミュレーションで算出された指標との差を算出する
請求項4に記載のテスト支援装置。
【請求項6】
前記出力処理部(35)は、複数のシミュレーション結果のうち、前記指標が平均値より所定値以上乖離するシミュレーション結果を抽出する、
請求項2から請求項5のいずれか一項に記載のテスト支援装置。
【請求項7】
エージェントプログラムにより操作される建設機械(10)の動作を仮想環境(F)上でシミュレーションし、前記エージェントプログラムをテストする方法において、
前記仮想環境上で前記建設機械が検出すべき情報を前記エージェントプログラムに入力し、前記エージェントプログラムからの応答に基づき前記仮想環境上で前記建設機械の動作をシミュレーションするステップ(S4)と、
前記仮想環境の作業条件を変更し、複数の前記仮想環境を設定するステップ(S3、S6)と、
複数の前記仮想環境でのシミュレーション結果に基づき、前記エージェントプログラムの性能を示す指標を表示装置(29)に表示させるステップ(S7)と、を含み、
前記表示装置(29)の表示では、前記シミュレーションでの作業完了までの時間および前記シミュレーションでの前記建設機械の移動距離の少なくとも一方を用いて、前記エージェントプログラムによる作業効率の指標が算出される
方法。
【請求項8】
エージェントプログラムにより操作される建設機械(10)の動作を仮想環境(F)上でシミュレーションし、前記エージェントプログラムをテストする方法をコンピュータ(20)に実行させるプログラムであって、前記方法は、
前記仮想環境上で前記建設機械が検出すべき情報を前記エージェントプログラムに入力し、前記エージェントプログラムからの応答に基づき前記仮想環境上で前記建設機械の動作をシミュレーションするステップ(S4)と、
前記仮想環境の作業条件を変更し、複数の前記仮想環境を設定するステップ(S3、S6)と、
複数の前記仮想環境でのシミュレーション結果に基づき、前記エージェントプログラムの性能を示す指標を表示装置(29)に表示させるステップ(S7)と、を含み、
前記表示装置(29)の表示では、前記シミュレーションでの作業完了までの時間および前記シミュレーションでの前記建設機械の移動距離の少なくとも一方を用いて、前記エージェントプログラムによる作業効率の指標が算出される
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、テスト支援装置、方法及びプログラムに関する。
【背景技術】
【0002】
従来、コンピュータに与えられたタスクを達成させるための一手法として強化学習が用いられる。強化学習は、タスクが与えられた環境においてエージェントの一連の行動の累積価値が最大化するように、エージェントに行動を学習させる方法である。例えば、強化学習は、ゲームやモータの制御、又は車両の自動運転制御等に応用されている(特許文献1及び2参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2018-63602号公報
【特許文献2】特開2020-144483号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、建設機械に実装されたエージェントに無人で作業を実行させるときに、強化学習によってエージェントの行動を効率化することが考えられる。この種の強化学習されたエージェントによって無人操作される建設機械を運用する場合、多様な環境でテストを行って建設機械の安全性や施工効率を事前に確認することが不可欠である。しかしながら、建設機械の実機でエージェントのテストを行う場合、テスト用の土木作業現場の準備に多大なコストが必要となり、またテストの実行も煩雑である。
【0005】
本発明は、上記の課題を背景としてなされたものであり、エージェントが無人操作する建設機械をテストするときのコストおよび作業負荷を抑制できるテスト支援装置を提供する。
【課題を解決するための手段】
【0006】
本発明の一態様は、エージェントプログラムにより操作される建設機械(10)の動作を仮想環境(F)上でシミュレーションし、エージェントプログラムをテストするテスト支援装置(20)を提供する。テスト支援装置は、仮想環境上で建設機械が検出すべき情報をエージェントプログラムに入力し、エージェントプログラムからの応答に基づき仮想環境上で建設機械の動作をシミュレーションするシミュレーション部(32)と、仮想環境の作業条件を変更し、複数の仮想環境を設定する設定部(33)と、複数の仮想環境でのシミュレーション結果に基づき、エージェントプログラムの性能を示す指標を表示装置(29)に表示させる出力処理部(35)と、を備える。出力処理部は、シミュレーションでの作業完了までの時間およびシミュレーションでの建設機械の移動距離の少なくとも一方を用いて、エージェントプログラムによる作業効率の指標を算出する。
【0007】
本発明の他の一態様は、エージェントプログラムにより操作される建設機械(10)の動作を仮想環境(F)上でシミュレーションし、エージェントプログラムをテストする方法を提供する。方法は、仮想環境上で建設機械が検出すべき情報をエージェントプログラムに入力し、エージェントプログラムからの応答に基づき仮想環境上で建設機械の動作をシミュレーションするステップ(S4)と、仮想環境の作業条件を変更し、複数の仮想環境を設定するステップ(S3、S6)と、複数の仮想環境でのシミュレーション結果に基づき、エージェントプログラムの性能を示す指標を表示装置(29)に表示させるステップ(S7)と、を含む。表示装置(29)の表示では、シミュレーションでの作業完了までの時間およびシミュレーションでの建設機械の移動距離の少なくとも一方を用いて、エージェントプログラムによる作業効率の指標が算出される。
【0008】
本発明の他の一態様は、エージェントプログラムにより操作される建設機械(10)の動作を仮想環境(F)上でシミュレーションし、エージェントプログラムをテストする方法をコンピュータ(20)に実行させるプログラムを提供する。方法は、仮想環境上で建設機械が検出すべき情報をエージェントプログラムに入力し、エージェントプログラムからの応答に基づき仮想環境上で建設機械の動作をシミュレーションするステップ(S4)と、仮想環境の作業条件を変更し、複数の仮想環境を設定するステップ(S3、S6)と、複数の仮想環境でのシミュレーション結果に基づき、エージェントプログラムの性能を示す指標を表示装置(29)に表示させるステップ(S7)と、を含む。表示装置(29)の表示では、シミュレーションでの作業完了までの時間およびシミュレーションでの建設機械の移動距離の少なくとも一方を用いて、エージェントプログラムによる作業効率の指標が算出される。
【発明の効果】
【0009】
本発明によれば、エージェントが無人操作する建設機械をテストするときのコストおよび作業負荷を抑制できる。
【図面の簡単な説明】
【0010】
【
図1】本実施形態のシステム構成例を示す図である。
【
図2】本実施形態のテスト支援装置のソフトウェア構成例を示す図である。
【
図3】本実施形態のテスト支援装置の動作例を示す流れ図である。
【
図4】仮想環境でのフィールドの設定例を示す模式図である。
【
図5】フィールドに回避対象物が設定された例を示す模式図である。
【
図6】
図4からシミュレーションが進行した状態例を示す模式図である。
【発明を実施するための形態】
【0011】
以下、本発明のテスト支援装置、テスト支援方法及びプログラムの実施形態について、図面を参照して説明する。以下に説明する構成は、本発明の一例(代表例)であり、これに限定されない。
【0012】
図1は、本実施形態のシステム構成例を示す図である。本実施形態のシステムは、自律移動機能を有するドーザー10と、テスト支援装置20を備える。
【0013】
ドーザー10は、土木建設現場で運用される建設機械型のロボットであって、無人操作での盛り土の巻き出し機能を有している。
図1に示すように、ドーザー10は、盛り土を押し出す排土板11と、ドーザー10を走行させるための駆動部12と、センサ部13と、位置検出部14と、制御部15を備える。
【0014】
図1では、ドーザー10の一例として、駆動部12がクローラーで構成された装軌車両を示すが、ドーザー10は装輪車両であってもよい。また、ドーザー10は必要に応じて有人での操縦が可能な構成であってもよい。なお、ドーザー10は、排土板11を上下左右に制御できる構成であってもよく、排土板11を上下のみに制御できる構成であってもよい。
【0015】
センサ部13は、ドーザー10の周囲の情報を取得するためのセンサモジュールである。例えば、センサ部13は、画像を撮像して周囲の物体を検出する物体認識センサを含んでいてもよく、赤外線や超音波等で所定方向の物体の有無を検出する距離センサを含んでいてもよい。
位置検出部14は、ドーザー10の現在位置を検出するためのモジュールであって、例えば、GPS(Global Positioning System)などで構成される。
【0016】
制御部15は、ドーザー10の各部を統括的に制御して無人操作を実行するコンピュータである。例えば、制御部15は、強化学習によって取得されたエージェントプログラムを実行し、土木建設現場内の作業領域においてドーザー10を制御して盛り土の巻き出しを行う。なお、制御部15は、エージェントプログラムを保持する記憶部16をさらに備えている。
【0017】
テスト支援装置20は、強化学習されたエージェントプログラムによって制御されるドーザー10の動作を仮想環境上でテストするコンピュータである。テスト支援装置20によるテストは、例えば、エージェントプログラムをドーザー10に実装する前に実行される。ドーザー10またはテスト支援装置20に対するエージェントプログラムの入力は、例えば記憶媒体を介した受け渡しや、有線または無線による通信などによって実現される。
【0018】
図1に示すように、テスト支援装置20は、CPU(Central Processing Unit)21と、ROM(Read Only Memory)22と、RAM(Random Access Memory)23と、記憶装置24と、入力I/F25および表示I/F26を備えるコンピュータである。テスト支援装置20の各要素は、バス27を介して互いに接続されている。
【0019】
CPU21は、ROM22またはRAM23に格納されたプログラムに従って、各種の演算処理を行うプロセッサである。ROM22は、不揮発性の記憶領域であって、例えばBIOSなどのプログラムが格納される。RAM23は、揮発性の記憶領域であって、CPU21が各種の演算処理を行う際の一時記憶領域として使用される。
【0020】
記憶装置24は、不揮発性の大容量記憶媒体であって、例えば、ハードディスク(HDD)やソリッドステートドライブ(SSD)などが挙げられる。記憶装置24は、オペレーティングシステム(OS)、テスト支援装置20の各種機能を実現するプログラム、および当該プログラムで使用されるデータなどを記憶する。
【0021】
入力I/F25は、外付けの入力装置28と接続され、入力装置28からの入力を受け付けるインターフェースである。入力装置28としては、例えば、キーボードやポインティングデバイスなどが挙げられる。
【0022】
表示I/F26は、外付けの表示装置29と接続され、表示装置29への出力を担うインターフェースである。表示装置29としては、例えば、液晶ディスプレイなどのモニタ装置が挙げられる。
【0023】
テスト支援装置20においては、起動後にCPU21によりBIOSが実行され、記憶装置24からRAM23にOSが実行可能にロードされる。CPU21は、OSの動作に従って、テスト支援装置20のソフトウェアモジュールを記憶装置24からRAM23に随時実行可能にロードする。そして、ロードされたソフトウェアモジュールは、CPU21がプログラムを実行することで動作する。
【0024】
(テスト支援装置のソフトウェア構成)
図2は、本実施形態のテスト支援装置20のソフトウェア構成例を示す図である。
テスト支援装置20は、ソフトウェアモジュールとして、エージェント格納部31と、シミュレーション部32と、設定部33と、記録部34と、出力処理部35とを備える。
【0025】
エージェント格納部31は、テスト対象のエージェントプログラムを1以上格納する。
ここで、エージェントプログラムは、ドーザー10を制御して無人操作を行うプログラムであり、予め強化学習によってアルゴリズムが調整されている。エージェントプログラムの強化学習は、図示しない他のコンピュータによって行われるが、テスト支援装置20内でエージェントプログラムの強化学習が行われてもよい。
【0026】
シミュレーション部32は、テスト対象のエージェントプログラムによるドーザー10の制御を仮想環境上で模擬するシミュレータである。例えば、シミュレーション部32は、仮想環境上でドーザー10が検出すべき各種情報をエージェントプログラムに入力する。また、シミュレーション部32は、エージェントプログラムの応答出力に対し、仮想環境で模擬された結果をエージェントプログラムに返す。これにより、仮想環境においてエージェントプログラムの制御によるドーザー10の動作をシミュレーションできる。
【0027】
設定部33は、シミュレーション部32のテスト時の各種作業条件を設定する。
記録部34は、シミュレーション部32によるシミュレーションの結果を記録する。
出力処理部35は、シミュレーションの結果に基づき、エージェントプログラムのテスト結果を表示装置29に表示させる制御を行う。
【0028】
(テスト支援装置の動作例)
図3は、テスト支援装置の動作例を示す流れ図である。
図3の処理は、入力装置28からのオペレータの開始指示に応じて開始される。
S1にて、シミュレーション部32は、エージェント格納部31からテスト対象のエージェントプログラムを選択する。
【0029】
S2にて、設定部33は、シミュレーション部32に対して、エージェントプログラムが制御するドーザー10の仕様(ドーザーパラメータ)を設定する。例えば、設定部33は、入力装置28からのオペレータの入力に基づき、排土板11のサイズや、排土板11の制御可能な方向、ドーザー10の駆動部12の推力、センサ部13の検出範囲などの初期設定を行う。
【0030】
S3にて、設定部33は、シミュレーション部32のテスト時の各種作業条件を設定する。一例として、設定部33は、以下の作業条件の項目を設定し、仮想環境上で土木作業現場を模擬したテスト用のフィールドFを自動的に生成する。
・フィールドFの形状およびサイズ
・フィールドF内の作業完了領域R1の形状、サイズおよびフィールド内の位置
・作業完了領域R1の巻き出し厚(巻き出し厚の目標値)
・盛り土40の量および配置
・ドーザー10の初期位置
・回避対象物の設定
【0031】
図4は、仮想環境でのフィールドFの設定例を示す模式図である。
フィールドFの形状は、例えば、ドーザー10が整地する土木作業現場の小区画を想定し、全体形状は矩形状に設定される。フィールドFのサイズは2辺の長さによって規定される。また、フィールドFは、所定の巻き出し厚を有する作業完了領域R1と、巻き出しが行われていない未作業領域R2を含む。
【0032】
作業完了領域R1もフィールドFと同様に矩形状に設定され、そのサイズは2辺の長さによって規定される。作業完了領域R1は、フィールドFのいずれかの辺に接する条件を満たした上で任意の位置に設定される。また、ドーザー10の初期位置は、作業完了領域R1上(一例として、作業完了領域R1の縁部)に配置されるものとする。
【0033】
フィールドF内において、作業完了領域R1を除く領域が未作業領域R2となる。未作業領域R2の地面の高さは、例えば、作業完了領域R1の地面の高さから巻き出し厚分だけ低い高さで均一に設定されていてもよく、未作業領域R2の地面の高さが各位置で異なって設定されていてもよい。
【0034】
また、盛り土40は、フィールドF内において、作業完了領域R1と未作業領域R2の境界近傍に配置されるように設定されている。なお、盛り土40は土質(土の密度など)によって同じ重さでも傾斜が変わるので、盛り土40のパラメータとして盛り土40の傾斜角度が含まれていてもよい。
【0035】
回避対象物は、フィールドF内の所定位置に配置された固定障害物と、フィールドF内を移動する移動障害物を含む。固定障害物は、例えば、土木建築現場内に存在する壁や配管、あるいはドーザー10が通行できない寸法の穴、溝、段差などが該当する。移動障害物は、例えば、人や車両(土砂を運搬するダンプカーなど)が該当する。なお、回避対象物の位置、サイズや、移動障害物の移動パターンは設定部33によって適宜設定される。
【0036】
図5は、フィールドFに回避対象物が設定された例を示す模式図である。
図5では、回避対象物として固定障害物Ob1と移動障害物Ob2が配置された例を示している。なお、フィールドF内の回避対象物の設定は必須ではなく、固定障害物Ob1、移動障害物Ob2の一方のみが設定されてもよく、フィールドF内に回避対象物がない設定でもよい。また、フィールド内に固定障害物Ob1が複数設定されていてもよい。
【0037】
S4にて、シミュレーション部32は、仮想環境のフィールドFでのエージェントプログラムによるドーザー10の制御をシミュレーションする。
【0038】
一例として、シミュレーション部32は、エージェントプログラムに予め与えられる情報(例えば、フィールドFの形状、サイズ、巻き出し厚の目標値など)や、仮想環境上でドーザー10が検出すべき情報(センサ部13の出力値)、フィールドFでのドーザー10の現在位置の情報をエージェントプログラムに入力する。
【0039】
ここで、センサ部13の検出範囲は、例えば後述の
図6に示すようにドーザー10から一定距離までの認識半径内となる。このセンサ部13の検出範囲はドーザー10を中心として設定され、ドーザー10の移動に応じてフィールドF内での検出範囲も移動する。この場合、シミュレーション部32は、ドーザー10の位置によって規定されるセンサ部13の検出範囲内におけるフィールドFの情報を、ドーザー10が検出すべき情報としてエージェントプログラムに入力する。
【0040】
なお、ドーザー10の実際の運用では、土木作業現場全体の物体の動きを監視する監視システムを使用し、当該監視システムが検出した物体の情報をドーザー10に無線通信で入力することも想定される。監視システムとしては、例えばドローンにカメラおよびセンサなどを搭載して土木作業現場全体の物体の動きを俯瞰位置から監視する構成や、土木作業現場に複数のLiDAR(light detection and ranging)端末を配置し、土木作業現場全体の物体の動きを監視する構成などが挙げられる。上記の監視システムを使用する場合には、シミュレーション部32は、ドーザー10が検出すべき情報としてフィールドF全体の情報をエージェントプログラムに入力する。
【0041】
エージェントプログラムは、上記の入力を受けるとドーザー10を制御する出力信号を返す。シミュレーション部32は、エージェントプログラムの出力信号を受けると、仮想環境におけるドーザー10の動きとそれに伴う進路上の土砂の変化を演算する。そして、シミュレーション部32は、ドーザー10の現在位置とドーザー10の進路上の巻き出し厚を更新する。また、シミュレーション部32は、仮想環境上でのドーザー10の動きと経過時間とを紐づけたログ情報を生成する。
【0042】
その後、シミュレーション部32は、更新後のセンサ部13の出力値とドーザー10の現在位置の情報をエージェントプログラムに再入力し、上記の動作を繰り返す。これにより、仮想環境上でドーザー10の動作がシミュレーションされ、ドーザー10による巻き出しの進行に伴いフィールドFの作業完了領域R1が順次広がってゆく。なお、シミュレーション部32は、フィールドFの未作業領域R2がなくなった場合や、あるいは例えば経過時間が所定時間になる等の打ち切り条件を満たすときにシミュレーションを終了させる。
【0043】
また、エージェントプログラムは、回避対象物を検出した場合、所定の回避行動を実行する。例えば、回避対象物が移動障害物Ob2の場合、エージェントプログラムはドーザー10を停止または減速させる。一方、回避対象物が固定障害物Ob1の場合、エージェントプログラムはドーザー10を旋回させる。なお、シミュレーション部32は、時間の経過に伴って移動障害物Ob2の位置を更新する。
【0044】
図6は、
図4からシミュレーションが進行した状態例を示す模式図である。
図6ではドーザー10が図中上側に移動し、これに伴って作業完了領域R1が
図4よりも広がっている。なお、
図6では、仮想環境におけるセンサ部13の検出範囲を一例として破線41の円で示している。
【0045】
S5にて、記録部34は、S4で実行されたシミュレーションの結果を記録する。例えば、記録部34は、シミュレーションの結果として、S3の作業条件の設定、作業完了までの時間、ドーザー10の移動距離、回避対象物に最も近づいたときの最小距離などの情報を紐づけて記録する。
【0046】
S6にて、設定部33は、テストの終了条件を満たしているかを判断する。例えば、設定部33は、予め規定された範囲のテストがすべて完了したときに、テストの終了条件を満たすと判断する。
【0047】
テストの終了条件を満たす場合(Yes)、処理はS7に移行する。一方、テストの終了条件を満たさない場合(No)、処理はS3に戻る。S6のループ処理により、設定部33によって仮想環境の作業条件が再設定され、シミュレーション部32でエージェントプログラムのシミュレーションが繰り返し実行される。
【0048】
ここで、ループ後の設定部33は、仮想環境のパラメータのうち、フィールドF、作業完了領域R1、盛り土40の作業条件を変更して異なる仮想環境を設定する。フィールドF、作業完了領域R1、盛り土40の作業条件に関しては、正規分布の範囲内で設定部33がランダムに設定する。これにより、テスト支援装置20は、多様な条件でのエージェントプログラムのテストを実行することができる。
【0049】
また、ループ後の設定部33は、仮想環境のパラメータのうち、回避対象物以外の条件を固定し、同じフィールドFで回避対象物が存在しない第1の仮想環境と、回避対象物が存在する第2の仮想環境をそれぞれ設定してもよい。また、設定部33は、回避対象物の位置、数、種類を変化させて第2の仮想環境を複数設定してもよい。これにより、テスト支援装置20は、回避対象物の有無や回避対象物の位置関係等を考慮したエージェントプログラムの制御をテストできる。
【0050】
S7にて、出力処理部35は、記録部34に記録された複数のシミュレーションの結果に基づき、エージェントプログラムのテスト結果を表示装置29に表示する。
【0051】
例えば、出力処理部35は、各シミュレーションでの作業完了までの時間(または各シミュレーションでのドーザー10の移動距離)を、未作業領域R2の大きさおよび巻き出し厚の積でそれぞれ正規化する。これにより、出力処理部35は、各々のシミュレーションでのエージェントプログラムによるドーザー10の作業効率の指標を算出する。そして、出力処理部35は、複数のシミュレーションで取得された作業効率の指標を表示装置29に表示する。
【0052】
上記の作業効率の指標により、オペレータは、テスト対象のエージェントプログラムの作業効率を客観的に確認することができる。また、オペレータは、例えば異なるエージェントプログラム間で作業効率の指標を比較することで、複数のエージェントプログラムの優劣を客観的に判断することも可能となる。
また、人間がドーザーを操作して整地する場合の作業効率の指標と、複数のシミュレーション結果を統計処理して得たエージェントプログラムによる作業効率の指標とを正規化して比較することで、自律建機システムの効率性の検討に役立てることもできる。
【0053】
また、出力処理部35は、エージェントプログラムの性能の指標として、シミュレーション中でのドーザー10と回避対象物の最小距離を示す表示を含めてもよい。上記の最小距離の表示により、ドーザー10が回避対象物に対して安全マージンを確保した状態で動作しているかをオペレータが確認でき、エージェントプログラムの制御するドーザー10の安全性を検証できる。
【0054】
また、出力処理部35は、回避対象物の有無以外の作業条件を同一にした2つのシミュレーション結果から、回避対象物による作業効率の変化を示す指標を算出してもよい。例えば、出力処理部35は、第1の仮想環境のシミュレーションで算出された第1の作業効率の指標と、第2の仮想環境のシミュレーションで算出された第2の作業効率の指標をそれぞれ取得し、第1および第2の作業効率の指標の差を回避対象物による作業効率の変化を示す指標として算出する。これにより、かかる作業効率の変化を示す指標の表示により、オペレータは、エージェントプログラムの回避対象物への対応性能を判断することが可能となる。
【0055】
また、出力処理部35は、同じエージェントプログラムによって実行された複数のシミュレーションのうち、上記の作業効率の指標が平均値から所定値以上乖離したシミュレーション結果(例えば、平均よりも作業効率の指標が悪い場合)を抽出してもよい。これにより、テスト対象のエージェントプログラムが苦手とする状況を容易に把握でき、エージェントプログラムのアルゴリズムの検証や再学習に役立てることができる。
以上で、
図3の説明を終了する。
【0056】
以上のように、本実施形態において、シミュレーション部32は、仮想環境上でドーザー10が検出すべき情報をエージェントプログラムに入力し、エージェントプログラムからの応答に基づき仮想環境上でドーザー10の動作をシミュレーションする(S4)。設定部33は、仮想環境の作業条件を変更し、複数の仮想環境を設定する(S3、S6)。出力処理部35は、複数の仮想環境でのシミュレーション結果に基づき、エージェントプログラムの性能を示す指標を表示装置29に表示させる(S7)。出力処理部35は、シミュレーションでの作業完了までの時間を用いて、エージェントプログラムによる作業効率の指標を算出する。
【0057】
本実施形態によれば、コンピュータの仮想環境でのシミュレーションにより、エージェントプログラムが制御するドーザー10の動作をテストできる。そのため、ドーザー10の実機を用いたテストに比べ安全性を確保することができる。また、多様な作業条件の仮想環境を容易に準備できるので、ドーザー10の実機を用いたテストに比べテスト時のコストおよび作業負荷を大幅に抑制できる。
【0058】
また、本実施形態によれば、シミュレーションでの作業完了までの時間に基づく作業効率の指標などがオペレータに提示される。上記の指標はいずれも定量的な指標であるので、オペレータはテスト対象のエージェントプログラムの性能を客観的に評価することが容易となる。
【0059】
<実施形態の変形例>
上記実施形態の1以上の機能を実現するプログラムは、ネットワークを介して装置に供給されてもよい。また、上記実施形態の構成は、1以上の機能を実現するハードウェア回路(例えば、ASIC)を用いて実現されてもよい。
【0060】
また、上記実施形態では、ドーザーを制御するエージェントプログラムのテストについて説明したが、エージェントプログラムは他の建設機械を無人操作するものであってもよい。
【0061】
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【符号の説明】
【0062】
10…ドーザー、11…排土板、20…テスト支援装置、21…CPU、24…記憶装置、29…表示装置、31…エージェント格納部、32…シミュレーション部、33…設定部、34…記録部、35…出力処理部、40…盛り土、F…フィールド、R1…作業完了領域、R2…未作業領域、Ob1,Ob2…回避対象物