(57)【要約】【課題】非日常的な仮想空間を楽しむという娯楽性を損なわずに、ゲームユーザがゲームプレイ中に入力した操作によってロボットが労働を行う仕組みを提案する。【解決手段】ロボット操作システムは、ゲームコンピュータ、ゲームコントローラ、及び、仮想空間を表示するディスプレイを有するゲーム端末と、ロボット制御データに基づいて実空間で作業を行うロボットと、ゲーム端末とロボットを仲介する情報処理装置とを備える。情報処理装置は、作業の内容に紐付けられたゲームデータをゲーム端末へ供給し、ゲームデータが反影されたゲームのプレイ中にゲームコントローラが受け付けた操作の入力の履歴を含むゲーム操作データを取得し、ゲーム操作データを所定の変換規則に基づいてロボット制御データに変換し、ロボット制御データをロボットへ供給する。【選択図】図１
2020026024.tif 000002
【特許請求の範囲】
【請求項１】
ゲームプログラムを実行するゲームコンピュータ、前記ゲームコンピュータへの操作の入力を受け付けるゲームコントローラ、及び、前記ゲームコンピュータから出力された仮想空間を表示するディスプレイを有するゲーム端末と、ロボット制御データに基づいて実空間で作業を行うロボットとを仲介する情報処理装置であって、
前記作業の内容に紐付けられたゲームデータを前記ゲーム端末へ供給するゲームデータ供給部と、
前記ゲームデータが反影された前記ゲームプログラムが実行されている間に前記ゲームコントローラが受け付けた操作の入力の履歴を含むゲーム操作データを取得するゲーム操作データ取得部と、
前記ゲーム操作データを所定の変換規則に基づいて前記ロボット制御データに変換する第１変換部と、
前記ロボット制御データを前記ロボットへ供給するロボット制御データ供給部と、を備える、
情報処理装置。
【請求項２】
前記第１変換部が、前記ゲーム操作データと前記ロボット制御データとの関係性を学習した第１学習済みモデルに対して前記ゲーム操作データを入力することによって、前記ゲーム操作データを前記ロボット制御データに変換するように構成されている、
請求項１に記載の情報処理装置。
【請求項３】
前記作業の内容に紐付けられた前記ゲーム操作データと前記ロボット制御データとを含む第１学習データを用いて前記ゲーム操作データと前記ロボット制御データとの関係性を学習し、前記第１学習済みモデルを生成する第１学習部を、更に備える、
請求項２に記載の情報処理装置。
【請求項４】
前記作業の内容を所定の変換規則に基づいて前記ゲームデータに変換する第２変換部を、更に備える、
請求項１〜３のいずれか一項に記載の情報処理装置。
【請求項５】
前記第２変換部が、前記作業の内容と前記ゲームデータとの関係性を学習した第２学習済みモデルに対して前記作業の内容を入力することによって、前記作業の内容を前記ゲームデータに変換するように構成されている、
請求項４に記載の情報処理装置。
【請求項６】
前記作業の内容とそれに紐付けられた前記ゲームデータとを含む第２学習データを用いて前記作業の内容と前記ゲームデータとの関係性を学習し、前記第２学習済みモデルを生成する第２学習部を、更に備える、
請求項５に記載の情報処理装置。
【請求項７】
ゲームプログラムを実行するゲームコンピュータ、前記ゲームコンピュータへの操作の入力を受け付けるゲームコントローラ、及び、前記ゲームコンピュータから出力された仮想空間を表示するディスプレイを有するゲーム端末と、
ロボット制御データに基づいて実空間で作業を行うロボットと、
前記ゲーム端末と前記ロボットとを仲介する請求項１〜６のいずれか一項に記載の情報処理装置と、を備える、
ロボット操作システム。
【請求項８】
ゲームプログラムを実行するゲームコンピュータ、前記ゲームコンピュータへの操作の入力を受け付けるゲームコントローラ、及び、前記ゲームコンピュータから出力された仮想空間を表示するディスプレイを有するゲーム端末を用いて、ロボット制御データに基づいて実空間で作業を行うロボットを操作するロボット操作方法であって、
前記作業の内容に紐付けられたゲームデータを、前記ゲーム端末へ供給するゲームプログラム供給ステップ、
前記ゲームデータが反影された前記ゲームプログラムが実行されている間に前記ゲームコントローラが受け付けた操作の入力の履歴を含むゲーム操作データを取得するゲーム操作データ取得ステップ、
前記ゲーム操作データを所定の変換規則に基づいて前記ロボット制御データに変換するロボット制御データ生成ステップ、及び、
前記ロボット制御データを前記ロボットへ供給するロボット制御データ供給ステップ、を含む、
ロボット操作方法。
【請求項９】
前記ロボット制御データ生成ステップが、前記ゲーム操作データと前記ロボット制御データとの関係性を学習した第１学習済みモデルに対して前記ゲーム操作データを入力することによって、前記ゲーム操作データを前記ロボット制御データに変換することを含む、
請求項８に記載のロボット操作方法。
【請求項１０】
前記作業の内容に紐付けられた前記ゲーム操作データと前記ロボット制御データとを含む第１学習データを用いて前記ゲーム操作データと前記ロボット制御データとの関係性を学習し、前記第１学習済みモデルを生成する第１学習ステップを、更に含む、
請求項９に記載のロボット操作方法。
【請求項１１】
前記作業の内容を所定の変換規則に基づいて前記ゲームデータに変換するゲームデータ生成ステップを、更に含む、
請求項８〜１０のいずれか一項に記載のロボット操作方法。
【請求項１２】
前記ゲームデータ生成ステップが、前記作業の内容と前記ゲームデータとの関係性を学習した第２学習済みモデルに対して前記作業の内容を入力することによって、前記作業の内容を前記ゲームデータに変換することを含む、
請求項１１に記載のロボット操作方法。
【請求項１３】
前記作業の内容とそれに紐付けられた前記ゲームデータとを含む第２学習データを用いて前記作業の内容と前記ゲームデータとの関係性を学習し、前記第２学習済みモデルを生成する第２学習ステップを、更に含む、
請求項１２に記載のロボット操作方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータゲームと産業用ロボットとを融合する技術に関する。
【背景技術】
【０００２】
従来、コンピュータゲームと実物体であるロボットとを組み合わせる技術が提案されている。特許文献１，２は、この種の技術を開示する。なお、本明細書における「コンピュータゲーム」とは、コンピュータ上で動作し、コンピュータと実人間の間で行なわれるゲームの総称であり、ビデオゲーム等とも称される。
【０００３】
特許文献１には、溶接用及びレーザー加工用の産業用ロボットが、ティーチング及び操作入力用のコントローラとして、家庭用コンピュータゲーム端末のゲームコントローラを備えることが記載されている。ゲームコントローラと産業用ロボットの関連付けは、一般に市販されているパーソナルコンピュータを用いて周知のプログラム手段を通じて行われる。
【０００４】
特許文献２では、複数の物理エージェント（例えば、車両やそのアクセサリなどのゲーム用ロボット）が存在する実空間と、ユーザ入力による物理エージェントへの動作指令を受け付けるコントローラと、物理エージェントとコントローラの間を仲介するホストデバイスとを備え、実空間で複数の物理エージェントを競争させるゲーム（例えば、カーレースゲーム）を実行するためのシステムが開示されている。ホストデバイスは、ユーザの制御下にある仮想空間と、実空間とがリアルタイム等価性を維持するように、物理エージェントを動作させて実空間の状態を変化させたり、仮想空間の状態を変化させたりする。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１２−１３９７４６号公報
【特許文献２】特表２０１５−５３３５３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
熟練のゲームユーザは、コンピュータゲーム端末のディスプレイに映し出された仮想空間の状態を瞬時に把握し、それに対応して直感的且つ正確にゲームコントローラを操作することにより指令を入力することができる。本願の発明者らは、このようなゲームユーザの優れた技能を、産業のための資源として活用することを検討している。
【０００７】
特許文献１では、ロボットオペレータがゲーム感覚で産業用ロボットを操作できるという効果がうたわれている。しかし、ロボットオペレータは、産業用ロボットが作業をしている実空間を目の当たりにすることから、ゲーム感覚よりも労働しているという感覚が勝る。
【０００８】
特許文献２では、ゲームユーザの制御下にある仮想空間は実空間と等価性を有するため、ゲームユーザが認識する仮想空間は実空間の範疇を超えない。
【０００９】
本来、ゲームは娯楽を目的としたものである。ゲームユーザにとっては、労働しているという感覚を受けるゲームは面白味に欠け、意欲の低下につながるおそれがある。本発明では、非日常的な仮想空間を楽しむという娯楽性を損なわずに、ゲームユーザがゲームプレイ中に入力した操作によってロボットが労働を行う仕組みを提案する。
【課題を解決するための手段】
【００１０】
本発明の一態様に係る情報処理装置は、
ゲームプログラムを実行するゲームコンピュータ、前記ゲームコンピュータへの操作の入力を受け付けるゲームコントローラ、及び、前記ゲームコンピュータから出力された仮想空間を表示するディスプレイを有するゲーム端末と、ロボット制御データに基づいて実空間で作業を行うロボットとを仲介する情報処理装置であって、
前記作業の内容に紐付けられたゲームデータを前記ゲーム端末へ供給するゲームデータ供給部と、
前記ゲームデータが反影された前記ゲームプログラムが実行されている間に前記ゲームコントローラが受け付けた操作の入力の履歴を含むゲーム操作データを取得するゲーム操作データ取得部と、
前記ゲーム操作データを所定の変換規則に基づいて前記ロボット制御データに変換する第１変換部と、
前記ロボット制御データを前記ロボットへ供給するロボット制御データ供給部と、を備えることを特徴としている。
【００１１】
本発明の一態様に係るロボット操作システムは、
ゲームプログラムを実行するゲームコンピュータ、前記ゲームコンピュータへの操作の入力を受け付けるゲームコントローラ、及び、前記ゲームコンピュータから出力された仮想空間を表示するディスプレイを有するゲーム端末と、
ロボット制御データに基づいて実空間で作業を行うロボットと、
前記ゲーム端末と前記ロボットとを仲介する上記の情報処理装置と、を備えることを特徴としている。
【００１２】
本発明の一態様に係るロボット操作方法は、
ゲームプログラムを実行するゲームコンピュータ、前記ゲームコンピュータへの操作の入力を受け付けるゲームコントローラ、及び、前記ゲームコンピュータから出力された仮想空間を表示するディスプレイを有するゲーム端末を用いて、ロボット制御データに基づいて実空間で作業を行うロボットを操作するロボット操作方法であって、
前記作業の内容に紐付けられたゲームデータを、前記ゲーム端末へ供給するゲームプログラム供給ステップ、
前記ゲームデータが反影された前記ゲームプログラムが実行されている間に前記ゲームコントローラが受け付けた操作の入力の履歴を含むゲーム操作データを取得するゲーム操作データ取得ステップ、
前記ゲーム操作データを所定の変換規則に基づいて前記ロボット制御データに変換するロボット制御データ生成ステップ、及び、
前記ロボット制御データを前記ロボットへ供給するロボット制御データ供給ステップ、を含むことを特徴としている。
【００１３】
上記情報処理装置、ロボット操作システム、及びロボット制御方法では、ゲーム操作データが変換規則に基づいてロボット制御データに変換されることから、ゲームユーザが楽しむコンピューティングゲームの内容（即ち、ゲームの仮想空間に現れるキャラクタ、アイテム、効果、ゲームのルールなど）と、ロボットが行う作業の内容とが、直接に関連している必要がない。つまり、ゲーム端末のディスプレイに映し出される仮想空間は、実世界でロボットが行う作業からかけ離れたゲーム独自の世界とすることができ、非日常的な仮想空間を楽しむというゲームの娯楽性は損なわれない。
【００１４】
よって、上記情報処理装置、ロボット操作システム、及びロボット制御方法によれば、ロボットオペレータでもあるゲームユーザは、ゲームの仮想世界を純粋に楽しみつつ、ゲームプレイ中に入力した操作によってロボットに労働をさせることができる。
【発明の効果】
【００１５】
本発明によれば、非日常的な仮想空間を楽しむという娯楽性を損なわずに、ゲームユーザがゲームプレイ中に入力した操作によってロボットが労働を行う仕組みを提案することができる。
【図面の簡単な説明】
【００１６】
【図１】図１は、本発明の一実施形態に係るロボット操作システムの全体的な構成を示すブロック図である。
【図２】図２は、ゲーム端末の構成を示すブロック図である。
【図３】図３は、ゲームコントローラの一例の外観図である。
【図４】図４は、仲介サーバの機能ブロック図である。
【図５】図５は、仲介サーバとして機能するコンピュータの構成を示すブロック図である。
【図６】図６は、学習装置による機械学習の流れを説明する図である。
【図７】図７は、ゲームデータ生成装置の機能を説明する図である。
【図８】図８は、ロボット制御データ生成装置の機能を説明する図である。
【図９】図９は、適用例１においてゲーム端末のディスプレイに表示されるゲーム画面の一例である。
【図１０】図１０は、適用例１における作業データの一例を説明する図である。
【図１１】図１１は、ロボット操作システムによる処理の流れ図である。
【図１２】図１２は、変形例１に係る仲介サーバの機能ブロック図である。
【図１３】図１３は、ロボット操作システムの適用例２を説明する、ロボット操作システムの全体的な構成を示すブロック図である。
【図１４】図１４は、適用例２においてゲーム端末のディスプレイに表示されるゲーム画面の一例である。
【図１５】図１５は、適用例２における作業データの一例を説明する図である。
【発明を実施するための形態】
【００１７】
次に、図面を参照して本発明の実施の形態を説明する。
【００１８】
図１は、本発明の一実施形態に係るロボット操作システム１の構成を説明するブロック図である。ロボット操作システム１は、ゲーム端末３、仲介サーバ２、ロボット５、及び通信手段４を備える。通信手段４は、ゲーム端末３と仲介サーバ２との間を相互に通信可能に接続し、仲介サーバ２とロボット５との間を相互に通信可能に接続する。通信手段４は、例えば、ＬＡＮ、ＷＡＮ、インターネットなどの通信ネットワークであってよい。このロボット操作システム１において、ゲームユーザは、ゲーム端末３を用いてコンピュータゲームを楽しむゲームプレイヤであるとともに、ロボット５を操作するロボットオペレータである。
【００１９】
〔ゲーム端末３〕
ゲーム端末３は、ゲームコンピュータ３１、ゲームコントローラ３８、ディスプレイ３５、及び、スピーカ３７を備える。ゲーム端末３として、業務用ゲーム専用機、テレビをディスプレイとして利用する家庭用ゲーム端末、携帯型液晶ゲーム端末、情報キオスク端末、スマートフォン、タブレットコンピュータ、デスクトップコンピュータ、及び、ラップトップコンピュータなどが使用され得る。ここでは、ゲーム端末３として家庭用ゲーム端末を採用した例を説明する。
【００２０】
図２は、ゲーム端末３の概略構成を示すブロック図である。図２に示すように、ゲーム端末３のゲームコンピュータ３１は、メインプロセッサ３１１、サウンドプロセッサ３１２、Ｉ／Ｏプロセッサ３１３、グラフィックスプロセッサ３１５、及び、メモリ３１６を含む。サウンドプロセッサ３１２及びメモリ３１６は、内部バスを介してＩ／Ｏプロセッサ３１３と接続されている。メインプロセッサ３１１とＩ／Ｏプロセッサ３１３とは互いに接続されている。メインプロセッサ３１１とグラフィックスプロセッサ３１５とは互いに接続されている。Ｉ／Ｏプロセッサ３１３は、図示されないシリアルインターフェースを介してゲームコントローラ３８などの入出力デバイスと接続される。Ｉ／Ｏプロセッサ３１３は、図示されない通信インターフェースを介して仲介サーバ２などの外部装置と通信する。
【００２１】
ゲーム端末３は、仲介サーバ２との間で通信を行うことにより、仲介サーバ２からゲームプログラムをダウンロードすることができる。ダウンロードしたゲームプログラムやセーブデータはメモリ３１６に格納される。ゲームプログラムやセーブデータは、記憶装置３１４に格納されていてもよい。
【００２２】
Ｉ／Ｏプロセッサ３１３は、ゲームユーザが操作するゲームコントローラ３８からの操作信号をメインプロセッサ３１１に供給する。メインプロセッサ３１１は、ゲームプログラムを読み出して実行し、所定の演算を行う。グラフィックスプロセッサ３１５は、メインプロセッサ１４０からの指示に従って描画処理を行い、フレームデータを生成し、ビデオ信号をディスプレイ３５に出力する。サウンドプロセッサ３１２は、メインプロセッサ１４０からの指示に従って音声データを復号して再生し、スピーカ３７に出力する。
【００２３】
メインプロセッサ３１１は、ゲームユーザがゲームコントローラ３８を介して入力した操作信号等からゲーム操作データを作成し、Ｉ／Ｏプロセッサ３１３へ渡す。Ｉ／Ｏプロセッサ３１３は、ゲーム操作データを仲介サーバ２へ送信する。ゲーム操作データは、ゲームプログラムの識別情報と、ゲームユーザの識別情報と、ゲームユーザがゲームプレイ中にゲームコントローラ３８を介して入力した操作の履歴とを少なくとも含む。
【００２４】
ゲームコントローラ３８は、操作子３８１と、操作子３８１の操作量を検出する操作検出器３８２と、操作検出器３８２で検出された操作量を操作信号としてゲームコンピュータ３１へ出力する通信器３８３とを備える。操作子３８１は、例えば、タッチディスプレイ、キーボード、マウス、十字キー、スティック、ボタン、ボール、レバーなどの公知の操作子のうちの１つ、又は、複数の組み合わせであってよい。
【００２５】
図３は、ゲームコントローラ３８の一例の外観図である。図３に示すゲームコントローラ３８は、略Ｕ字形の外形を呈する。ゲームユーザは、両翼部のハンドル１０１Ｌ，１０１Ｒを左右両手で把持して操作する。ゲームコントローラ３８の左右上面には操作ボタン群１１０，１２０、アナログスティック１１２，１２２が設けられており、ゲームコントローラ３８の右前面にはＲボタン１１１、左前面にはＬボタン１２１がそれぞれ設けられている。操作ボタン群１１０及びアナログスティック１１２はゲームユーザの右手親指で操作され、操作ボタン群１２０及びアナログスティック１２２はゲームユーザの左手親指で操作される。また、Ｒボタン１１１、Ｌボタン１２１は、それぞれゲームユーザの右手人指し指、左手人指し指で操作される。ゲームコントローラ３８は、操作ボタン群１１０と操作ボタン群１２０との間にタッチディスプレイ１３０を更に備える。
【００２６】
〔ロボット５〕
ロボット５は、例えば、工場などの現場に設置されて、実空間で作業を行う産業用ロボットである。このような産業用ロボットとして、垂直多関節型ロボット、水平多関節型ロボット、パラレルリンク型ロボット、極座標ロボット、円筒座標型ロボット、直角座標型ロボット等が例示される。なお、図１では１台のロボット５が示されているが、ロボット操作システム１は複数のロボット５を備えてよい。
【００２７】
本実施形態では、ロボット５の一例として、塗装作業を行う塗装用ロボットを用いる。ロボット５は、マニピュレータ２０４と、マニピュレータ２０４の先端に装着されたエンドエフェクタ２０６と、ロボットコントローラ２０１とを備える。ロボット５は、ロボット５（詳細には、マニピュレータ２０４及びエンドエフェクタ２０６）に対する操作の入力を受け付けるロボット操作器２１３を更に備える。ロボット５は、ロボットビジョンを更に備えてもよい（図示略）。ロボットコントローラ２０１は、マニピュレータ２０４、エンドエフェクタ２０６、及び、ロボット操作器２１３と通信可能に接続されている。ロボットコントローラ２０１は、コンピュータを備え、プロセッサで格納されたプログラムやロボット操作器２１３から入力される各種信号の解読や演算処理を行うことにより、マニピュレータ２０４の動作制御、エンドエフェクタ２０６の動作制御、各種出力ポートからの信号出力などを司る。
【００２８】
本実施形態において、エンドエフェクタ２０６は塗装ガン２０６Ａである。塗装ガン２０６Ａは、ノズル２０７と、ノズル２０７へ塗料を供給する塗料供給装置２０２と、ノズル２０７へ圧縮空気を送り出すコンプレッサ２０５と、ノズル２０７からの塗料の吐出量（吐出のＯＮ・ＯＦＦを含む）を調整する弁装置２０３とを備える。弁装置２０３の動作は、ロボットコントローラ２０１によって制御される。
【００２９】
ロボット５の近傍には、ワーク２１１を保持する治具２１０が配置されている。また、ロボット５の近傍には、治具２１０、ワーク２１１、及びロボット５を含むロボット５の作業空間を三次元で撮像する撮像装置ＣＡが設けられている。撮像装置ＣＡは作業空間を二次元で撮像するものであってもよい。撮像装置ＣＡで生成された撮像データは、通信手段４を介して仲介サーバ２へ送信される。
【００３０】
〔仲介サーバ２〕
図４は、仲介サーバ２の構成を示すブロック図である。図４に示すように、仲介サーバ２は、第１学習装置４１と、ゲームデータ生成装置４２と、ロボット制御データ生成装置４３と、記憶装置２４とを備える。第１学習装置４１は、ＡＩ（artificial intelligence）技術を用いて、第１学習済みモデルを作成する。ゲームデータ生成装置４２は、ロボット５の作業データからゲームデータを生成し、それをゲーム端末３へ提供する。ロボット制御データ生成装置４３は、ゲーム端末３から取得したゲーム操作データを用いてロボット制御データを生成し、それをロボット５へ提供する。記憶装置２４は、学習済みモデル、学習データ、教師データ、ゲームプログラム、ゲームパラメータなどの、仲介サーバ２で使用されるデータを格納する。
【００３１】
仲介サーバ２は、演算制御器２０ａと記憶装置２４とを備える。仲介サーバ２の各機能部が少なくとも１つの演算制御器２０ａで構成されていてもよいし、複数の機能部のうち２つ以上が１つの演算制御器２０ａで構成されていてもよい。図５に示すように、仲介サーバ２の各演算制御器２０ａは、プロセッサ２１、ＲＯＭ及びＲＡＭなどのメモリ２２、及び、Ｉ／Ｏ部２５を備える。演算制御器２０ａには、インターフェース２０ｂを介して記憶装置２４が接続されている。演算制御器２０ａは、集中制御を行う単独のプロセッサ２１を備えてもよいし、分散制御を行う複数のプロセッサ２１を備えてもよい。演算制御器２０ａは、例えば、コンピュータ、パーソナルコンピュータ、マイクロコントローラ、マイクロプロセッサ、ＦＰＧＡ（field-programmable gate array）などのＰＬＤ（programmable logic device）、ＰＬＣ（programmable logic controller）、及び、論理回路のうち少なくとも１つ、或いは、２つ以上の組み合わせで構成され得る。メモリ２２や記憶装置２４には、プロセッサ２１が実行する基本プログラムやソフトウエアプログラム等が格納されている。プロセッサ２１がプログラムを読み出して実行することによって、演算制御器２０ａは当該ソフトウエアプログラムに構成された機能を実現する。
【００３２】
第１学習装置４１は、学習データ取得部４１ａ、前処理部４１ｂ、及び、第１学習部４１ｃの各機能部を備える。記憶装置２４には、学習データを格納した学習データＤＢと、教師データを格納した教師データＤＢと、ゲームパラメータを格納したパラメータＤＢとが構成されている。
【００３３】
図６は、学習装置（第１学習装置４１）による機械学習の流れを説明する図である。図６に示すように、学習データ取得部４１ａは、学習データなどの機械学習で用いられるデータを取得する。前処理部４１ｂは、学習データを前処理して、教師データを作成する。前処理は、データ形式の変換、異常の確認、データの抽出、変数名やファイル名の変更などの各種処理のうち少なくとも１つを含む。
【００３４】
第１学習部４１ｃは、機械学習により入力データと出力データとの相関関係を学習する。本実施例では、入力データはゲーム操作データであり、出力データはロボット制御データである。第１学習部４１ｃは、機械学習の学習アルゴリズムの一例として教師あり学習を実行する。一般に、教師あり学習は、入力データとそれに対応する出力データとの既知のデータセット（教師データと称する）が予め大量に与えられ、それら教師データから入力データと出力データとの相関性を暗示する特徴を識別することで、新たな入力データに対する所要の出力データを推定するための相関性モデルを学習する手法である。学習アルゴリズムの開始時には入力データと出力データとの相関性は実質的に未知であるが、第１学習部４１ｃは、学習を進めるに従い徐々に特徴を識別して相関性を解釈する。入力データと出力データとの相関性が、ある程度信頼できる水準まで解釈されると、第１学習部４１ｃが反復出力する学習結果は、入力データに対して、出力データがどのようなものとなるべきかという推定を行うために使用できるものとなる。つまり、第１学習部４１ｃは、学習アルゴリズムの進行に伴い、入力データと出力データとの相関性を最適解に徐々に近づけることができる。
【００３５】
本実施形態において、第１学習部４１ｃは、教師データをニューラルネットワークに入力して、入力データと出力データとの間の関係性を学習する。ニューラルネットワークに設定される各種パラメータはパラメータＤＢに記憶される。例えば、パラメータＤＢは、学習されたニューラルネットワークのシナプスの重みなどを記憶する。記憶される各パラメータを設定したニューラルネットワークが学習済みモデルとなる。
【００３６】
図４に戻って、ゲームデータ生成装置４２は、作業データ取得部４２ａと、変換部４２ｂと、ゲームデータ供給部４２ｃとを備える。
【００３７】
図７は、ゲームデータ生成装置４２の機能を説明する図である。図７に示すように、作業データ取得部４２ａは、ロボット５や撮像装置ＣＡから作業データを取得する。作業データには、作業データは、作業の内容に関する情報と、作業対象であるワーク２１１に関する情報とを含む。作業の内容に関する情報は、例えば、機械加工、搬送、塗装などの作業の種類や、作業に用いられるエンドエフェクタ２０６の種類、螺子や塗料などの作業に用いるパーツなど情報が含まれてよい。ワーク２１１に関する情報には、例えば、ワーク２１１の種類や形状などが含まれてよい。
【００３８】
変換部４２ｂは、作業データを所定の変換規則で変換することによりゲームデータを生成する。変換規則は、記憶装置２４に予め記憶されている。ゲームデータには、ゲーム端末３で実行されるゲームプログラムが含まれ得る。また、ゲームプログラムが予めゲーム端末３にインストールされている場合には、ゲームデータには、ゲームプログラムに適用されるゲームパラメータが含まれ得る。ゲームデータ供給部４２ｃは、生成したゲームデータをゲーム端末３へ供給する。
【００３９】
図４に戻って、ロボット制御データ生成装置４３は、ゲーム操作データ取得部４３ａと、変換部４３ｂと、ロボット制御データを出力するロボット制御データ供給部４３ｃとを備える。
【００４０】
図８は、ロボット制御データ生成装置４３の機能を説明する図である。図８に示すように、ゲーム操作データ取得部４３ａは、ゲーム端末３からゲーム操作データを取得する。変換部４３ｂは、ゲーム操作データを所定の変換規則で変換することによりロボット制御データを生成する。ロボット制御データには、エンドエフェクタ２０６の位置指令情報や、エンドエフェクタ２０６の動作指令情報などが含まれ得る。ロボット制御データ供給部４３ｃは、生成したロボット制御データをロボット５へ供給する。ロボット５では、取得したロボット制御データに基づいて、ロボット５が作業を行う。
【００４１】
〔適用例１〕
以下、上記構成のロボット操作システム１を塗装作業を行うロボット５へ適用した適用例１を説明する。
【００４２】
図１を参照して、塗装作業を行うロボット５は、手先に塗装ガン２０６Ａのノズル２０７を備える。ロボット操作器２１３は、第１レバーＡ、第２レバーＢ、及び、ボタンＣを有する。第１レバーＡ及び第２レバーＢに対し入力された操作に応じて、マニピュレータ２０４が動作してノズル２０７の位置が変化する。
【００４３】
第１レバーＡは、ノズル２０７の左右及び前後方向への移動の指令を入力することができる。第１レバーＡにより入力された操作入力信号値は、第１レバーＡの操作位置によって０から１まで連続的に変化する。第２レバーＢは、ノズル２０７の上下方向への移動の指令を入力することができる。第２レバーＢにより入力された操作入力信号値は、第２レバーＢの操作位置によって０から１まで連続的に変化する。ボタンＣは、塗料の吐出量の指令を入力することができる。ボタンＣにより入力された操作入力信号値は、ボタンＣの操作位置によって０から１まで連続的に変化する。
【００４４】
上記構成のロボット５の作業対象であるワーク２１１は、治具２１０に保持されているものの、個々に姿勢や形状のばらつきがある。ワーク２１１の表面には凹凸があり、この表面にムラなく塗装を行うには、ロボットオペレータに高い技能が要求される。
【００４５】
ゲーム端末３では落下ゲームのゲームプログラムが実行される。図９は、ゲーム端末３のディスプレイ３５に表示されるゲーム画面９２の一例である。ゲーム画面９２には、ロボット５の存在する実空間ではなく、ゲーム固有の仮想空間が表示される。図９に示すゲーム画面９２では、その中央部に２０列のライン９２ａが表示されており、各列の最上部から所定の落下パターンでブロックが落下する。ゲーム画面９２の下部には、ゲームユーザの操作対象アイテムとしてのシューティングガン９２ｂと、スコア９２ｃとが表示されている。ゲームユーザは、ゲームコントローラ３８を操作して、シューティングガン９２ｂの弾の発射方向と発射タイミングとに関する指令をゲームコンピュータ３１へ入力することができる。
【００４６】
ゲームコントローラ３８には、操作子３８１として、ダイヤルＸとボタンＹとが設けられている。ダイヤルＸの操作入力信号値は、ダイヤルＸの回転角度によって、０〜１まで連続的に変化する。ダイヤルＸによってシューティングガン９２ｂをゲーム画面９２上の左右方向に移動させることができる。ダイヤルＸの操作入力信号値とシューティングガン９２ｂの発射方向とは対応している。シューティングガン９２ｂの発射方向は、ダイヤルＸの操作入力信号値０で画面上最左端を向き、操作入力信号値１で画面上最右端を向き、操作入力信号値０．５で画面上左右中央を向く。ボタンＹの操作入力信号値は、ボタンＹが押されているか否かによって、０又は１の値をとる。ボタンＹによって、シューティングガン９２ｂから弾を発射の指令を入力することができる。つまり、ボタンＹの操作入力信号値が０から１に変わったことをトリガとして瞬時に弾が発射される。それ以外のときは弾は発射されない。
【００４７】
ゲーム画面９２に表示された仮想空間において、シューティングガン９２ｂから発射した弾で落下中のブロックが撃ち落とされる。弾が落下物に命中すれば、落下物はゲーム画面９２から消滅する。全てのブロックを撃ち落とすことができれば、ミッションは成功である。ゲームユーザは、ミッションの成否、撃ち落としたブロックの数、及び、シューティングガン９２ｂの左右移動総量の少なさに応じた得点を得て、高得点を競う。
【００４８】
ゲームにおけるブロックの落下パターンは、ゲームパラメータによって定まる。ゲームパラメータは、変換部４２ｂで作業データがゲームパラメータに変換されることによって生成される。本適用例では、作業データには、作業の内容としての塗装、塗料の種類、撮像装置ＣＡで得られたワーク２１１及びその周辺を含む三次元画像が含まれる。変換部４２ｂは、ワーク２１１の表面形状を所定の変換規則によってゲームプレイ中のブロックの落下パターンに変換して、この落下パターンを再現するゲームパラメータを生成する。
【００４９】
図１０は、作業データの一例を説明する図である。例えば、図１０に示すように、撮像装置ＣＡで得られたワーク２１１及びその周辺を含む三次元画像（又は、二次元画像）が、所定数（図１０の例では２０×３０）のドットからなる平面的なマップ９１に変換される。マップ９１において、ワーク２１１の存在するドット（図１０中の９１ａ）には１が与えられ、存在しないドット（図１０中の９１ｂ）には０が与えられる。更に、マップ９１の各行が切り出され、連続する複数行（図１０の例では３０行）の行データとされる。そして、各行データにおいて１が割り当てられたドットにのみブロックが出現するような、ゲームパラメータが生成される。
【００５０】
上記のようにゲームデータ生成装置４２で生成されたゲームパラメータは、ゲーム端末３へ送信される。ゲーム端末３のゲームコンピュータ３１は、ゲームプログラムにゲームパラメータを適用させて、ディスプレイ３５のゲーム画面９２に表示されるブロックの出現箇所及び出現タイミングを決定する。ゲームコンピュータ３１には、予め取得したゲームユーザの技能レベルに応じて、ゲームパラメータを修正するフィルタが設定されていてもよい。ゲームが開始すると、先ず、第１行に対応するブロック群が画面の最上部に出現する。出現したブロックは、所定の速度で落下する。ブロックの落下速度は、ゲームユーザの技能レベルに応じて異なっていてもよい。第１行に対応するブロック群が出現してから所定時間が経過すると、第２行に対応するブロック群が画面の最上部に出現する。このようにして、最初の行から最後の行まで行番号を一定時間間隔で１ずつ増加させながら、行番号に対応した行のブロック群が画面の最上部に出現し、出現したブロックが次々と落下してくる。
【００５１】
＜学習方法＞
まず、仲介サーバ２の第１学習装置４１で行われる学習の方法について説明する。
【００５２】
学習のために、複数のワーク２１１が用意される。学習用のワーク２１１の表面形状は各々に異なる。熟練のロボットオペレータは、ロボット操作器２１３を用いて、学習用の複数のワーク２１１の各々について、自らの経験から表面形状に最適な作業手順で操作を入力する。ロボットコントローラ２０１は、熟練のロボットオペレータがロボット操作器２１３に対して行った操作入力信号を取得し、操作入力信号の履歴をワーク２１１ごとに当該ワーク２１１に紐づけて記憶する。例えば、或るワーク２１１に対する操作入力信号の履歴は、第１レバーＡの操作入力信号値が単位時間間隔で記録された数値列Ａnと、第２レバーＢの操作入力信号値が単位時間間隔で記録された数値列Ｂnと、ボタンＣの操作入力信号値が単位時間間隔で記録された数値列Ｃnとを含む。
【００５３】
ゲーム端末３のゲームコンピュータ３１は、ゲーム開始から終了までのゲームプレイ中にゲームユーザが入力した操作の履歴を記憶する。ミッションが成功し、且つ、高得点を得たゲームユーザ（以下、「ハイスコアユーザ」と称する）の操作の履歴から、ダイヤルＸの操作入力信号値が単位時間間隔で記録された数値列Ｘnが作成され、ボタンＹの操作入力信号値が単位時間間隔で記録された数値列Ｙnが作成される。
【００５４】
或るワークＷmについて、熟練のロボットオペレータの操作の履歴から得られた数値列が｛Ａnm、Ｂnm、Ｃnm｝である。また、このワークＷmに紐付けられたゲームパラメータが反影されたゲームプレイ中において、ハイスコアユーザの操作の履歴から得られた数値列が｛Ｘnm、Ｙnm｝である（m＝１，２，・・・）。このように、ワークＷmに紐付けられた熟練のロボットオペレータの操作の履歴及びハイスコアユーザの操作の履歴から、一つの学習データセットを得る。
【００５５】
学習データ取得部４１ａは、膨大な数の学習データセットを取得し、記憶する。前処理部４１ｂは、学習データセットの前処理を行い教師データセットを生成する。第１学習部４１ｃは、教師データセットをニューラルネットワークに入力して、入力データである数値列｛Ｘn，Ｙn｝と出力データである数値列｛Ａn、Ｂn、Ｃn｝との間の関係性を学習する。ニューラルネットワークに設定される各種パラメータはパラメータＤＢに記憶される。記憶される各パラメータを設定したニューラルネットワークが学習済みモデルとなる。
【００５６】
＜ロボット操作方法＞
続いて、上記の学習済みモデルを用いたロボット操作方法について説明する。
【００５７】
図１１はゲーム方法の処理の流れを説明するフロー図である。図１１はロボット操作システム１におけるゲームの開始準備からロボット５が作業をするまでの一連の処理を包括的に表し、左列がゲーム端末３の処理、中央列が仲介サーバ２の処理、右列がロボット５の処理をそれぞれ表す。
【００５８】
ゲームの開始に際し、ゲーム端末３は仲介サーバ２に対しログイン情報と共にゲーム開始要求を送信する（ステップＳ０１）。ログイン情報には、ゲームユーザＩＤなどが含まれる。仲介サーバ２は、ゲーム開始要求を取得すると（ステップＳ０２）、作業データ要求をロボット５へ送信する（ステップＳ０３）。ロボット５は、作業データ要求を取得すると（ステップＳ０４）、これに対応して仲介サーバ２へ作業データを送信する（ステップＳ０４）。本適用例では、作業データには、作業の内容とワーク２１１の撮像画像とが含まれる。
【００５９】
作業データを取得した仲介サーバ２は（ステップＳ０６）、作業データからゲームデータを生成する（ステップＳ０７）。本適用例では、作業データに含まれる撮像画像を変換することによりゲームデータが作成され、ゲームデータにはゲームパラメータが含まれる。仲介サーバ２は、ゲームデータをゲーム端末３へ送信する（ステップＳ０８）。
【００６０】
ゲームデータを取得したゲーム端末３は（ステップＳ０９）、ゲームデータ（ゲームパラメータ）を予め記憶されているゲームプログラムに適用させて実行する。ゲーム端末３では、取得したゲームデータがゲームプログラムに適用されて、ゲームが開始される。ゲームユーザがゲームプレイ中にゲームコントローラ３８を操作することにより入力された操作入力は記憶される。これにより、ゲーム端末３はゲームパラメータが反影されたゲームを開始する（ステップＳ１０）。本適用例では、ゲームユーザは、落下するブロックを打ち落とすシューティングゲームを楽しむことができる。
【００６１】
ゲーム端末３は、ゲームプレイ中にゲームユーザがゲームコントローラ３８で行った操作の履歴を記録する（ステップＳ１１）。ゲーム端末３は、ゲームが終了すると（ステップＳ１２）、そのゲームプレイ中の操作の履歴を含むゲーム操作データを仲介サーバ２へ送信する（ステップＳ１３）。ゲーム操作データは、作業データ又はゲームデータの少なくとも一方と紐付けられている。
【００６２】
仲介サーバ２のロボット制御データ生成装置４３では、ゲーム操作データ取得部４３ａがゲーム操作データを取得し（ステップＳ１４）、変換部４３ｂがゲーム操作データを前述の学習済みモデルを用いて変換することによりロボット制御データを生成する（ステップＳ１５）。ゲーム端末３から仲介サーバ２へ送られるゲーム操作データには、ゲームのスコアが含まれていてもよい。ゲームのスコアは、ゲームユーザの技能レベルの指標となりうる。ゲーム操作データをロボット制御データに変換する際に、ゲームユーザの技能レベルが加味されてもよい。
【００６３】
仲介サーバ２は、生成したロボット制御データをロボット５へ送信する。ロボット５は、ロボット制御データを取得し（ステップＳ１７）、これに基づいてロボット５のマニピュレータ２０４及びエンドエフェクタ２０６を動作させることにより、ロボット５が作業を行う（ステップＳ１８）。本適用例では、ロボット５はワーク２１１の塗装作業を行う。
【００６４】
このように、本適用例では、ゲームユーザが行うゲームの内容とロボット５が行う作業の内容とは、一見して相関性が低い。ゲームユーザは、ディスプレイ３５に映し出される仮想空間を観てゲームコントローラ３８に対し操作入力を行う。つまり、ゲームユーザには、ロボット５が作業を行う実空間を見ることなく、ゲームを楽しみながらロボット５に指令を入力し、ロボット５に労働をさせることができる。
【００６５】
以上に説明したように、本実施形態に係るロボット操作システム１は、ゲームプログラムを実行するゲームコンピュータ３１、ゲームコンピュータ３１への操作の入力を受け付けるゲームコントローラ３８、及び、ゲームコンピュータ３１から出力された仮想空間を表示するディスプレイ３５を有するゲーム端末３と、ロボット制御データに基づいて実空間で作業を行うロボット５と、ゲーム端末３とロボット５とを仲介する仲介サーバ２（請求の範囲の「情報処理装置」）と、を備えることを特徴としている。
【００６６】
仲介サーバ２は、作業の内容に紐付けられたゲームデータをゲーム端末３へ供給するゲームデータ供給部４２ｃと、ゲームデータが反影されたゲームプログラムが実行されている間にゲームコントローラ３８が受け付けた操作の入力の履歴を含むゲーム操作データを取得するゲーム操作データ取得部４３ａと、ゲーム操作データを所定の変換規則に基づいてロボット制御データに変換する第１変換部４３ｂと、ロボット制御データをロボット５へ供給するロボット制御データ供給部４３ｃと、を備える。
【００６７】
また、本実施形態に係るロボット操作方法は、ゲーム端末３を用いて、ロボット制御データに基づいて実空間で作業を行うロボット５を操作するロボット操作方法であって、作業の内容に紐付けられたゲームデータを、ゲーム端末３へ供給するゲームプログラム供給ステップ、ゲームデータが反影されたゲームプログラムが実行されている間にゲームコントローラ３８が受け付けた操作の入力の履歴を含むゲーム操作データを取得するゲーム操作データ取得ステップ、ゲーム操作データを所定の変換規則に基づいてロボット制御データに変換するロボット制御データ生成ステップ、及び、ロボット制御データをロボット５へ供給するロボット制御データ供給ステップ、を含むことを特徴としている。
【００６８】
上記のロボット操作システム１及びその仲介サーバ２、並びに、ロボット制御方法では、ゲーム操作データが変換規則に基づいてロボット制御データに変換されることから、ゲームユーザが楽しむコンピューティングゲームの内容（即ち、ゲームの仮想空間に現れるキャラクタ、アイテム、効果、ゲームのルールなど）と、ロボット５が行う作業の内容とが、直接に関連している必要がない。つまり、ゲーム端末３のディスプレイ３５に映し出される仮想空間は、実世界でロボット５が行う作業からかけ離れたゲーム独自の世界とすることができ、非日常的な仮想空間を楽しむというゲームの娯楽性は損なわれない。
【００６９】
よって、本実施形態に係るロボット操作システム１及びその仲介サーバ２、並びに、ロボット制御方法によれば、ロボットオペレータでもあるゲームユーザは、ゲームの仮想世界を純粋に楽しみつつ、ゲームプレイ中に入力した操作によってロボット５に労働をさせることができる。
【００７０】
本実施形態において、仲介サーバ２は、作業の内容に紐付けられたゲーム操作データとロボット制御データとを含む第１学習データを用いてゲーム操作データとロボット制御データとの関係性を学習し、第１学習済みモデルを生成する第１学習部４１ｃを、更に備える。そして、上記の第１変換部４３ｂが、ゲーム操作データとロボット制御データとの関係性を学習した第１学習済みモデルに対してゲーム操作データを入力することによって、ゲーム操作データをロボット制御データに変換するように構成されている。
【００７１】
同様に、本実施形態において、上記のロボット操作方法が、作業の内容に紐付けられたゲーム操作データとロボット制御データとを含む第１学習データを用いてゲーム操作データとロボット制御データとの関係性を学習し、第１学習済みモデルを生成する第１学習ステップを、更に含む。そして、上記のロボット操作方法のロボット制御データ生成ステップが、ゲーム操作データとロボット制御データとの関係性を学習した第１学習済みモデルに対してゲーム操作データを入力することによって、ゲーム操作データをロボット制御データに変換することを含む。
【００７２】
このように、ゲーム操作データをロボット制御データに変換するために学習済みモデルが利用されることによって、たとえゲームの内容とロボット５の作業の内容との直接的な関連性が低くても、ゲーム操作データをロボット制御データとをより高い精度で関係付けることができる。つまり、ロボット５の作業の内容に対するゲームの内容の自由度を向上させることができる。
【００７３】
＜変形例１＞
次に、上記実施形態の変形例１を説明する。図１２は変形例１に係るロボット操作システム１の仲介サーバ２Ａの機能ブロック図である。変形例１に係るロボット操作システム１は、仲介サーバ２Ａの第２学習装置４４を除いて、上記実施形態と実質的に同じ攻勢を有する。よって、変形例１の説明においては、第２学習装置４４について詳細に説明し、前述の実施形態と重複する説明を省略する。
【００７４】
上記実施形態では、作業の内容を所定の変換規則に基づいてゲームデータに変換する第２変換部４２ｂ（ゲームデータ生成部）を備える。本変形例では、第２変換部４２ｂも、第１変換部４３ｂ（ロボット制御データ生成部）と同様に、作業の内容を含む作業データを学習済みモデル（第２学習済みモデル）を利用してゲームデータに変換する。
【００７５】
変形例１に係る仲介サーバ２Ａは、前述の実施形態に係る仲介サーバ２が、第２学習装置４４を更に備えたものである。以下では、第１学習装置４１、ゲームデータ生成装置４２、及びロボット制御データ生成装置４３の説明を省略し、第２学習装置４４について詳細に説明する。
【００７６】
図１２に示すように、第２学習装置４４は、学習データ取得部４４ａ、前処理部４４ｂ、第２学習部４４ｃの各機能部を備える。学習データ取得部４４ａは、作業データに紐付けられたゲームデータを学習データセットとし、膨大な数の学習データセットを取得する。前処理部４４ｂは、学習データセットを前処理して、教師データセットを作成する。第２学習部４４ｃは、教師データセットをニューラルネットワークに入力して、入力データである作業データと出力データであるゲームデータとの間の関係性を学習する。ニューラルネットワークに設定される各種パラメータはパラメータＤＢに記憶される。記憶される各パラメータを設定したニューラルネットワークが第２学習済みモデルとなる。
【００７７】
以上のように、変形例１に係る仲介サーバ２Ａは、作業の内容とそれに紐付けられたゲームデータとを含む第２学習データを用いて作業の内容とゲームデータとの関係性を学習し、第２学習済みモデルを生成する第２学習部４４ｃを、備える。
【００７８】
そして、仲介サーバ２Ａは、第２変換部４２ｂ（ゲームデータ生成部）が、作業の内容とゲームデータとの関係性を学習した第２学習済みモデルに対して作業の内容を入力することによって、作業の内容をゲームデータに変換するように構成されている。
【００７９】
同様に、変形例１に係るロボット操作方法は、前述の実施形態に係るロボット操作方法に加えて、作業の内容とそれに紐付けられたゲームデータとを含む第２学習データを用いて作業の内容とゲームデータとの関係性を学習し、第２学習済みモデルを生成する第２学習ステップを、含む。そして、変形例１に係るロボット操作方法は、前述の実施形態に係るロボット操作方法のゲームデータ生成ステップにおいて、作業の内容とゲームデータとの関係性を学習した第２学習済みモデルに対して作業の内容を入力することによって、作業の内容をゲームデータに変換することを含む。
【００８０】
このように学習済みモデルを用いて作業の内容（作業データ）をゲームデータに変更することにより、より複雑な作業の内容に対しても、それに適したゲームデータを作成することができる。よって、ロボット５の作業の内容に対するゲームの内容の自由度を向上させることができる。
【００８１】
〔適用例２〕
以下、上記構成のロボット操作システム１をごみの搬送作業を行うロボット５Ａへ適用した適用例２を説明する。
【００８２】
図１３は、適用例２に係るロボット操作システム１の全体的な構成を示すブロック図である。図１３に示すロボット５Ａは、ごみピット２１５のごみを攪拌するクレーンロボットである。ロボット５Ａは、クレーン２０８と、クレーン２０８の左右及び前後位置を変化させるガントリ２０９と、クレーン２０８及びガントリ２０９の動作を制御するロボットコントローラ２０１とを備える。ごみピット２１５には、ごみピット２１５内を三次元で撮像する撮像装置ＣＡが設けられている。
【００８３】
ロボット操作器２１３は、第１レバーＡ、第２レバーＢ、及び、ボタンＣを有する。第１レバーＡ及び第２レバーＢに対し入力された操作に応じて、ガントリ２０９が動作してクレーン２０８の二次元位置が変化する。第１レバーＡは、クレーン２０８の前後左右方向への移動の指令を入力することができる。第１レバーＡにより入力された操作入力信号値は、第１レバーＡの操作位置によって０から１まで連続的に変化する。第２レバーＢは、クレーン２０８の上下方向への移動の指令を入力することができる。第２レバーＢにより入力された操作入力信号値は、第２レバーＢの操作位置によって０から１まで連続的に変化する。ボタンＣは、クレーン２０８のごみ把持の指令を入力することができる。ボタンＣにより入力された操作入力信号値は、ボタンＣの操作位置によって０から１まで連続的に変化する。
【００８４】
上記構成のロボット５の作業対象であるごみピット２１５のごみは、その表面高さや性状にはばらつきがあり、ごみピット２１５内のごみはより均一となるように攪拌されなければならない。ごみの攪拌は、ごみピット２１５のある座標のごみを、他の座標へ移動させることによって行われる。ごみの攪拌作業を効率的に行うために、クレーン２０８の移動軌跡は少ないことが望ましい。ロボット５Ａを操作するロボットオペレータに、どの座標のごみをどのように移動させるか、また、その移動順序について、高い技能が要求される。
【００８５】
ゲーム端末３では、パズルゲームのゲームプログラムが実行される。図１４は、ゲーム端末３のディスプレイ３５に表示されるゲーム画面９２Ａの一例である。ゲーム画面９２Ａには、ロボット５Ａの存在する実空間ではなく、ゲーム固有の仮想空間が表示される。図１３に示すゲーム画面９２Ａでは、その中央部にグリッドが表示されており、グリッドの各マスにはパネルが配置されている。パネルは、赤、青、紫の３色で色分けされており、青のパネルの上に赤のパネルを重ねると紫のパネルに変化する。赤及び紫のパネルの上に他のパネルを重ねることはできない。ゲームユーザは、ゲームコントローラ３８を操作して、移動させるパネルの選択と、パネルの移動位置とに関する指令をゲームコンピュータ３１へ入力することができる。
【００８６】
ゲームコントローラ３８には、操作子３８１として、十字キーＸとボタンＹとが設けられている。十字キーＸの操作入力信号値は、０〜１まで連続的に変化する。十字キーＸによって、ポインタをゲーム画面９２Ａ上の左右及び前後方向に移動させることができる。十字キーＸの操作入力信号値とポインタの移動方向及び移動量とは対応している。ボタンＹの操作入力信号値は、ボタンＹが押されているか否かによって、０又は１の値をとる。ボタンＹは選択の指令を入力することができる。例えば、ポインタが移動させる第１パネルの上にある状態でボタンＹの操作入力信号値が０から１に変わると、第１パネルが選択される。また、第１パネルが選択され、且つ、ポインタが移動先の第２パネルの上にある状態でボタンＹの操作入力信号値が０から１に変わると、第２パネルに第１パネルが重なる。全てのパネルの色が紫となれば、ミッションは成功である。ゲームユーザは、ミッションの成否、ポインタの移動量の少なさに応じた得点を得て、高得点を競う。
【００８７】
パズルゲームにおけるパネルの配色パターンは、ゲームパラメータによって定まる。ゲームパラメータは、第２変換部４２ｂで作業データがゲームパラメータに変換されることによって生成される。本適用例では、作業データには、撮像装置ＣＡで得られたごみピット２１５内の三次元画像が含まれる。変換部４２ｂは、ごみピット２１５の堆積ごみの表面形状を所定の変換規則によってゲームプレイ中のパネルの配色パターンに変換して、この配色パターンを再現するゲームパラメータを生成する。
【００８８】
図１５は、作業データの一例を説明する図である。例えば、図１５に示すように、撮像装置ＣＡで得られたごみピット２１５の三次元画像が、所定数（図１５の例では１５×１０）のドットからなる平面的なマップ９４に変換される。三次元画像の解析により堆積ごみ表面の高さが高中低に分類され、高のドッドには１が、中のドッドには０が、低のドットには−１がそれぞれ与えられる。そして、１のドットに赤のパネルが、０のドットに紫のパネルが、−１のドットに青のパネルが出現するような、ゲームパラメータが生成される。ゲームデータは、このようなゲームパラメータを含む。
【００８９】
＜学習方法＞
まず、仲介サーバ２の第２学習装置４４で行われる学習の方法について説明する。
【００９０】
学習のために、大量の学習データが用意される。学習データには、ごみピット２１５の堆積ごみの表面形状と、その表面形状に紐づけられた熟練のロボットオペレータによる操作の履歴とが含まれる。堆積ごみの表面形状には、高さ位置が含まれる。熟練のロボットオペレータは、ロボット操作器２１３を用いて、自らの経験から堆積ごみの表面形状に最適な作業手順で操作を入力することにより、ごみピット２１５内の堆積ごみを攪拌する。ロボットコントローラ２０１は、熟練のロボットオペレータがロボット操作器２１３に対して行った操作入力信号を取得し、操作入力信号の履歴を当該堆積ごみの表面形状に紐づけて記憶する。
【００９１】
ごみピット２１５の三次元画像が、所定数（図１５の例では１５×１０）のドットからなる平面的な堆積ごみマップ９４に変換される。堆積ごみマップ９４の各ドットにはアドレスが割り当てられ、各ドットは堆積ごみ高さ（ドットにおける平均値）に関する情報を有する。操作入力信号の履歴からは、ごみピット２１５内のごみが持ち出されたドットのアドレスと、そのごみが置かれたドットのアドレスとがわかる。ごみが持ち出されたドットは「高」に分類され、ごみが置かれたドットは「低」に分類され、ごみの移動がなかったドットは「中」に分類される。学習データの前処理では、堆積ごみマップ９４の各ドットに対し前記のルールに基づいて「高」「中」「低」が与えられる。堆積ごみマップ９４を入力データとし、堆積ごみマップ９４の各ドットの高中低の分類を出力データとする、１組の教師データが作成される。
【００９２】
学習装置は、大量の教師データを用いて、堆積ごみマップ９４の各ドットが「高」「中」「低」のいずれに分類されるべきかをモデルに学習させる。ゲームデータ生成装置４２は、この学習済みモデルに対し作業データである堆積ごみマップ９４を入力して、堆積ごみマップ９４の各ドットの高中低の分類の出力を得て、これに基づいてゲームデータを生成する。
【００９３】
＜ロボット操作方法＞
続いて、ロボット操作方法について説明する。
【００９４】
ゲーム方法の処理の流れは、第１適用例と実質的に同じである。即ち、図１１に示すように、ゲーム端末３は仲介サーバ２に対しログイン情報と共にゲーム開始要求を送信する（ステップＳ０１）仲介サーバ２は、ゲーム開始要求を取得すると（ステップＳ０２）、作業データ要求をロボット５Ａへ送信する（ステップＳ０３）。ロボット５Ａは、作業データ要求を取得すると（ステップＳ０４）、これに対応して仲介サーバ２へ作業データを送信する（ステップＳ０４）。本適用例では、作業データには、作業の内容とごみピット２１５の三次元画像とが含まれる。
【００９５】
作業データを取得した仲介サーバ２は（ステップＳ０６）、作業データからゲームデータを生成する（ステップＳ０７）。本適用例では、作業データに含まれる撮像画像を前述の学習済みモデル変換することによりゲームデータが作成され、ゲームデータにはゲームパラメータが含まれる。仲介サーバ２は、ゲームデータをゲーム端末３へ送信する（ステップＳ０８）。
【００９６】
ゲームデータを取得したゲーム端末３は（ステップＳ０９）、ゲームデータ（ゲームパラメータ）を予め記憶されているゲームプログラムに適用させて実行する。ゲーム端末３では、取得したゲームデータがゲームプログラムに適用されて、ゲームが開始される。ゲームユーザがゲームプレイ中にゲームコントローラ３８を操作することにより入力された操作入力は記憶される。これにより、ゲーム端末３はゲームパラメータが反影されたゲームを開始する（ステップＳ１０）。本適用例では、ゲームユーザは、青と赤のパネルを紫に代えるカラーパズルゲームを楽しむことができる。
【００９７】
ゲーム端末３は、ゲームプレイ中にゲームユーザがゲームコントローラ３８で行った操作の履歴を記録する（ステップＳ１１）。ゲーム端末３は、ゲームが終了すると（ステップＳ１２）、そのゲームプレイ中の操作の履歴を含むゲーム操作データを仲介サーバ２へ送信する（ステップＳ１３）。ゲーム操作データは、作業データ又はゲームデータの少なくとも一方と紐付けられている。
【００９８】
仲介サーバ２のロボット制御データ生成装置４３では、ゲーム操作データ取得部４３ａがゲーム操作データを取得し（ステップＳ１４）、変換部４３ｂがゲーム操作データをロボット制御データに変換することにより、ロボット制御データを生成する（ステップＳ１５）。本適用例において、ゲーム操作データには、移動させるパネルの座標と当該パネルの移動先の座標との組み合わせ、及び、パネルの移動順序が含まれる。このようなゲーム操作データから、ごみピット２１５において、ごみを持ち出す座標とごみを持ち込む座標との組み合わせ、及び、ごみの移動順序を含むロボット制御データが生成される。
【００９９】
仲介サーバ２は、生成したロボット制御データをロボット５Ａへ送信する。ロボット５Ａは、ロボット制御データを取得し（ステップＳ１７）、これに基づいてガントリ２０９やクレーン２０８を動作させることにより、ロボット５Ａが作業を行う（ステップＳ１８）。本適用例では、ロボット５Ａはごみピット２１５の攪拌作業を行う。
【０１００】
このように、本適用例では、ゲームユーザが行うゲームの内容とロボット５Ａが行う作業の内容とは、直接的に関連しないが、ゲーム中のポインタの移動とクレーン２０８の移動とには相関性がある。それであっても、ゲームユーザは、ロボット５Ａが作業を行う実空間を見ることなく、ディスプレイ３５に映し出される仮想空間を観てゲームコントローラ３８に対し操作入力を行い、ゲームを楽しみながらロボット５Ａに指令を入力し、ロボット５Ａに労働をさせることができる。
【０１０１】
以上に本発明の好適な実施の形態を説明したが、本発明の思想を逸脱しない範囲で、上記実施形態の具体的な構造及び／又は機能を変更したものも本発明に含まれ得る。上記のロボット操作システム１及びロボット操作方法は、以下のように変更することができる。
【０１０２】
例えば、上記実施形態では、ゲーム端末３、仲介サーバ２、及びロボット５，５Ａは、それぞれ独立した装置であるが、仲介サーバ２としての機能がゲーム端末３及びロボット５，５Ａのうちいずれか一方に備えられてもよい。
【０１０３】
例えば、上記実施形態では、学習モデルの一例としてのニューラルネットワークモデルを学習させる場合を例に説明したが、学習アルゴリズムはこれに限定されるものではない。例えば、ニューラルネットワークモデルとは異なる他のモデルを、他の学習方法によって学習させてもよい。
【０１０４】
例えば、上記実施形態では、ゲームプログラムが予めゲーム端末３に記憶（インストール）されている態様を説明した。このゲームプログラムは、通信手段４を介して仲介サーバ２からゲーム端末３へ供給されるが、ＣＤ‐ＲＯＭ、ＤＶＤ‐ＲＯＭ及びマイクロＳＤカード等の記録媒体に記録されてゲーム端末３へ提供されてもよい。また、ゲームプログラムは予めゲーム端末３に記憶されている態様に限らず、予めゲームパラメータが適用されたゲームプログラムがゲームの度に仲介サーバ２からゲーム端末３へ供給されてもよい。この場合、ゲームデータにはゲームパラメータが適用されたゲームプログラムが含まれることとなる。
【符号の説明】
【０１０５】
１        ：ロボット操作システム
２，２Ａ  ：仲介サーバ
３        ：ゲーム端末
４        ：通信手段
５，５Ａ  ：ロボット
２０ａ    ：演算制御器
２０ｂ  ：インターフェース
２１      ：プロセッサ
２２      ：メモリ
２４      ：記憶装置
２５      ：Ｉ／Ｏ部
３１      ：ゲームコンピュータ
３５      ：ディスプレイ
３７      ：スピーカ
３８      ：ゲームコントローラ
４１      ：第１学習装置
４１ａ    ：学習データ取得部
４１ｂ    ：前処理部
４１ｃ    ：第１学習部
４２      ：ゲームデータ生成装置
４２ａ    ：作業データ取得部
４２ｂ    ：変換部（第２変換部）
４２ｃ    ：ゲームデータ供給部
４３      ：ロボット制御データ生成装置
４３ａ    ：ゲーム操作データ取得部
４３ｂ    ：変換部（第１変換部）
４３ｃ    ：ロボット制御データ供給部
４４      ：第２学習装置
４４ａ    ：学習データ取得部
４４ｂ    ：前処理部
４４ｃ    ：第２学習部
９１      ：マップ
９２      ：ゲーム画面
９２ａ    ：ライン
９２ｂ    ：シューティングガン
９２ｃ    ：スコア
２０１    ：ロボットコントローラ
２０２    ：塗料供給装置
２０３    ：弁装置
２０４    ：マニピュレータ
２０５    ：コンプレッサ
２０６    ：エンドエフェクタ
２０６Ａ  ：塗装ガン
２０７    ：ノズル
２０８    ：クレーン
２０９    ：ガントリ
２１０    ：治具
２１１    ：ワーク
２１３    ：ロボット操作器
２１５    ：ごみピット
３１１    ：メインプロセッサ
３１２    ：サウンドプロセッサ
３１３    ：Ｉ／Ｏプロセッサ
３１４    ：記憶装置
３１５    ：グラフィックスプロセッサ
３１６    ：メモリ
３８１    ：操作子
３８２    ：操作検出器
３８３    ：通信器
【図１】
2020026024.tif 000003
【図２】
2020026024.tif 000004
【図３】
2020026024.tif 000005
【図４】
2020026024.tif 000006
【図５】
2020026024.tif 000007
【図６】
2020026024.tif 000008
【図７】
2020026024.tif 000009
【図８】
2020026024.tif 000010
【図９】
2020026024.tif 000011
【図１０】
2020026024.tif 000012
【図１１】
2020026024.tif 000013
【図１２】
2020026024.tif 000014
【図１３】
2020026024.tif 000015
【図１４】
2020026024.tif 000016
【図１５】
2020026024.tif 000017