(57)【要約】【課題】状況に応じてシステムが的確な動作をとれるようになるまでの学習のスピードを向上させることができるようにする。【解決手段】動作実行装置２００がとるべき第１の動作を第１の方策に基づいて選択する第１の動作選択部１１と、動作実行装置２００がとるべき第２の動作を第２の方策に基づいて選択する第２の動作選択部１２と、第１の動作および第２の動作をそれぞれユーザに提示した後のユーザの反応を所定の指標値としてそれぞれ検出する反応検出部１４と、各動作について検出された指標値の対比結果に応じて、各動作選択部１１，１２に与える報酬を決定する報酬決定部１５とを備え、第１の動作選択部１１および第２の動作選択部１２がそれぞれ、決定された報酬に応じて第１の方策および第２の方策をそれぞれ改変することにより、複数の動作選択部１１，１２が協調して強化学習を行うことができるようにする。【選択図】図１
2019185201.tif 000002
【特許請求の範囲】
【請求項１】
第１の方策に基づいて、動作実行装置がとるべき第１の動作を選択する第１の動作選択部と、
上記第１の方策とは異なる第２の方策に基づいて、上記動作実行装置がとるべき第２の動作を選択する第２の動作選択部と、
上記第１の動作選択部により選択された上記第１の動作および上記第２の動作選択部により選択された上記第２の動作をそれぞれ上記動作実行装置を通じてユーザに提示する動作提示部と、
上記動作実行装置を通じてユーザに提示された上記第１の動作および上記第２の動作に対する上記ユーザの反応をそれぞれ、当該反応を表す所定の指標値として検出する反応検出部と、
上記反応検出部により検出された上記第１の動作に対する指標値および上記第２の動作に対する指標値を対比し、その対比結果に応じて、上記第１の動作選択部および上記第２の動作選択部に与える報酬を決定する報酬決定部とを備え、
上記第１の動作選択部および上記第２の動作選択部はそれぞれ、上記報酬決定部により決定された報酬に応じて、上記第１の方策および上記第２の方策をそれぞれ改変することを特徴とする強化学習システム。
【請求項２】
上記報酬決定部は、上記反応検出部により前回検出された上記第１の動作に対する指標値と今回検出された上記第１の動作に対する指標値とを更に対比するとともに、上記反応検出部により前回検出された上記第２の動作に対する指標値と今回検出された上記第２の動作に対する指標値とを更に対比し、上記第１の動作に対して今回検出された指標値と上記第２の動作に対して今回検出された指標値との対比結果に加え、上記第１の動作および上記第２の動作のそれぞれに関して前回検出された指標値と今回検出された指標値との対比結果に応じて、上記第１の動作選択部および上記第２の動作選択部に与える報酬を決定することを特徴とする請求項１に記載の強化学習システム。
【請求項３】
上記第１の動作選択部は、上記第１の方策に基づいて上記第１の動作を選択する際に、上記第２の動作選択部から改変前の上記第２の方策に基づいて選択された上記第２の動作に関する情報を取得し、当該取得した上記第２の動作が選択候補のより上位となるように上記第１の方策を改変した上で、改変後の上記第１の方策に基づいて上記第１の動作を選択することを特徴とする請求項１または２に記載の強化学習システム。
【請求項４】
上記第２の動作選択部は、上記第２の方策に基づいて上記第２の動作を選択する際に、上記第１の動作選択部から改変前の上記第１の方策に基づいて選択された上記第１の動作に関する情報を取得し、当該取得した上記第１の動作が選択候補のより上位となるように上記第２の方策を改変した上で、改変後の上記第２の方策に基づいて上記第２の動作を選択することを特徴とする請求項１〜３の何れか１項に記載の強化学習システム。
【請求項５】
上記報酬決定部は、上記第１の動作選択部および上記第２の動作選択部に与えるものとして決定した報酬の履歴を管理し、
上記第１の動作選択部は、上記第２の動作選択部に与えるものとして上記報酬決定部により決定された報酬の履歴が所定の条件を満たしている場合に限り、上記第２の動作選択部から取得した上記第２の動作が選択候補のより上位となるように上記第１の方策を改変することを特徴とする請求項３に記載の強化学習システム。
【請求項６】
上記報酬決定部は、上記第１の動作選択部および上記第２の動作選択部に与えるものとして決定した報酬の履歴を管理し、
上記第２の動作選択部は、上記第１の動作選択部に与えるものとして上記報酬決定部により決定された報酬の履歴が所定の条件を満たしている場合に限り、上記第１の動作選択部から取得した上記第１の動作が選択候補のより上位となるように上記第２の方策を改変することを特徴とする請求項４に記載の強化学習システム。
【請求項７】
上記第１の動作選択部は、上記第１の方策に基づいて選択した上記第１の動作に対して上記報酬決定部により決定された報酬と、上記第２の動作選択部により上記第２の方策に基づいて選択された上記第２の動作に関する情報および当該第２の動作に対して上記報酬決定部により決定された報酬とを取得し、自ら選択した上記第１の動作に関して上記報酬決定部により上記第１の動作選択部に与えるものとして決定された報酬と、上記第２の動作選択部により選択された上記第２の動作に関して上記報酬決定部により上記第２の動作選択部に与えるものとして決定された報酬とに応じて、上記第１の方策を改変することを特徴とする請求項１〜６の何れか１項に記載の強化学習システム。
【請求項８】
上記第２の動作選択部は、上記第２の方策に基づいて選択した上記第２の動作に対して上記報酬決定部により決定された報酬と、上記第１の動作選択部により上記第１の方策に基づいて選択された上記第１の動作に関する情報および当該第１の動作に対して上記報酬決定部により決定された報酬とを取得し、自ら選択した上記第２の動作に関して上記報酬決定部により上記第２の動作選択部に与えるものとして決定された報酬と、上記第１の動作選択部により選択された上記第１の動作に関して上記報酬決定部により上記第１の動作選択部に与えるものとして決定された報酬とに応じて、上記第２の方策を改変することを特徴とする請求項１〜７の何れか１項に記載の強化学習システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、強化学習システムに関し、特に、ユーザの状況に応じて取るべき動作を選択するためのアルゴリズムを機械学習によって強化していくシステムに用いて好適なものである。
【背景技術】
【０００２】
従来、機械学習の一種として、強化学習と呼ばれるものが知られている。強化学習とは、ある環境内に設定された学習器と呼ばれるプログラムが現在の状態を観測し、その状態に応じて取るべき動作を決定する問題を扱う機械学習をいう。強化学習を行う学習器は、動作を選択することで、その動作の的確性に応じた報酬を得る。当該学習器は、繰り返し選択される一連の動作を通じて報酬が最も多く得られるような方策を学習する。
【０００３】
従来、この強化学習を利用したシステムがいくつか知られている（例えば、特許文献１〜６参照）。特許文献１には、会議などのコミュニケーション状況を支援するための情報の呈示やコミュニケーション環境を変化させるための指示の選択を、事前にルールを構築することなく的確に行えるようにしたコミュニケーション支援システムが開示されている。
【０００４】
この特許文献１に記載のシステムでは、所定の時間間隔毎に、センサで取得した参加者の発話および態度を解析することにより、コミュニケーション空間の状況を所定の指標により数値化し、その場の状況変化を時系列で定量化する。そして、システムが選択したコミュニケーション支援指示を出した後の参加者の実際のリアクションを再び指標の値として反映し、直前のコミュニケーション支援指示への報酬としてフィードバックするといった強化学習アルゴリズムを採用することにより、作成工数が多大な学習ルールをあらかじめ作成することなく、システムによるコミュニケーション支援指示の選択精度の向上を図っている。
【０００５】
特許文献２には、ユーザがシステムから提示された画像に対して示す興味のレベルに応じて、異なった画像をインタラクティブに提示していくことが開示されている。この特許文献２に記載のシステムは、ユーザの顔画像から得られた動きを特定するための情報とユーザの体の動きから、ユーザの興味のレベルを算出する感情モデル算出部と、算出された興味のレベルの変化に対応して、内部状態を変化させるステートマシン部と、ステートマシン部の状態に応じて対応するアニメーションを生成するためのアニメーションエンジン部とを備える。
【０００６】
特許文献３には、強化学習によって動作を変えるロボット装置が開示されている。この特許文献３に記載のロボット装置では、ユーザの音声および画像を認識してユーザの情動を検出し、その検出結果に基づいて、ユーザの現在の情動を予め所定数に離散化された複数の情動の何れかに分類する。長期記憶部には、ユーザがある情動である場合にある動作を発現した後の情動と、その遷移によりユーザから与えられた報酬とに基づき、強化学習により構築されたユーザの情動遷移モデルが記憶されている。ロボット装置は、この情動遷移モデルを利用し、ユーザの現在の情動に応じて発現する動作を方策に従って確率的に選択し、選択した動作を発現させる。
【０００７】
特許文献４には、人間の態度に応じてインタラクションの仕方を変えるコミュニケーションロボットが開示されている。特許文献４に記載のコミュニケーションロボットは、人間とのインタラクション中にモーションキャプチャシステムから入力される座標データおよび方向データから、ロボットと人間との距離（対人距離）およびロボットに対する人間の顔の向きを検出する。そして、ロボットは、対人距離および人間の顔の向きからインタラクションパラメータ（対人距離、注視時間、モーション開始時間、モーション速度）の適切度、すなわちインタラクションの快・不快を検出し、これを最適化するように、インタラクションパラメータを更新する。
【０００８】
特許文献５には、ユーザが指定の対象に対して抱く評価や感情を推定し、またそれらがどのような因子から発生するのかを明らかにすることができるシステムが開示されている。特許文献５に記載のシステムは、ユーザの個人属性情報と、評価対象の個人属性情報と、評価対象に対する心理因子の評点情報と、対人感情因子の評点情報との関連性を学習した学習モデルを生成する学習手段と、生成された学習モデルを利用して、入力手段からの入力が欠損していた因子の評点情報の期待値を推定する推定手段と、推定した結果に対してユーザからフィードバックされた情報を入力手段により入力し、ユーザ毎の学習モデルを再構築することにより、ユーザに適応した学習モデルを生成する個人性学習手段とを備える。
【０００９】
特許文献６には、未学習から出発して実験および学習を繰り返し、その累積的なサイクルを通じて自身を適応的または創造的な能力のより高いレベルへ漸進的にブートストラップする発見システムが開示されている。この特許文献６に記載の発見システムでは、発見システム内の訓練を実行し、自身に適用される各種の形式の摂動を通じて新たな出力パターンを生成すべく刺激を受けるニューラル・ネットワークと、同様に当該システム内のその場で訓練を実行し、上記ネットワーク内でこれらのパターンのうち、より有用またはより貴重なパターンの強化学習を起動しつつ、そのような新たなパターンに自身の有用性または価値を関連付けることができる評価機能ニューラル・ネットワークとを備える。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１７−２０１４７９号公報
【特許文献２】特開２００８−１８６０７５号公報
【特許文献３】特開２００５−２３８４２２号公報
【特許文献４】特開２００６−２４７７８０号公報
【特許文献５】特開２０１４−４８７９５号公報
【特許文献６】特開２０１２−１０８９５０号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
上記特許文献１〜６に例示されるように、システムがある動作（ユーザに対する情報の提示、コミュニケーションデバイスの制御など）をとる際に、強化学習の仕組みを採用することにより、システムが徐々に適切な動作をとることができるようになる。しかしながら、システムの選択した動作が高度なレベルで的確と言えるようになるまでには、動作の選択とそれに応じた報酬のフィードバックとを含む学習処理を、回数多く繰り返し実行する必要がある。そのため、期待されるような状態あるいは期待以上の状態まで強化学習が進むまでに多くの時間がかかるという問題があった。
【００１２】
本発明は、このような問題を解決するために成されたものであり、システムが状況に応じて動作を選択する際の方策を強化学習によって更新していく場合において、システムが的確な動作をとれるようになるまでの学習のスピードを向上させることができるようにすることを目的とする。
【課題を解決するための手段】
【００１３】
上記した課題を解決するために、本発明では、第１の方策に基づいて、動作実行装置がとるべき第１の動作を選択する第１の動作選択部と、第１の方策とは異なる第２の方策に基づいて、動作実行装置がとるべき第２の動作を選択する第２の動作選択部とを備え、選択された第１の動作および第２の動作をそれぞれ動作実行装置を通じてユーザに提示した後のユーザの反応を所定の指標値としてそれぞれ検出し、第１の動作に関して検出された指標値と第２の動作に関して検出された指標値とを対比し、その対比結果に応じて、第１の動作選択部および第２の動作選択部に与える報酬を決定するようにしている。第１の動作選択部および第２の動作選択部はそれぞれ、決定された報酬に応じて、第１の方策および第２の方策をそれぞれ改変する。
【発明の効果】
【００１４】
上記のように構成した本発明によれば、１つの動作選択部が前回選択した動作に対するユーザの反応の指標値と今回選択した動作に対するユーザの反応の指標値とを対比して方策を改変する従来技術のように、単独の動作選択部だけで強化学習を行うものとは異なり、複数の動作選択部が選択した動作に対するユーザの反応の指標値を用いて、当該複数の動作選択部が協調して強化学習を行うことができる。これにより、動作実行装置が状況に応じて動作を選択する際の方策を強化学習によって更新していく場合において、動作実行装置が的確な動作をとれるようになるまでの学習のスピードを向上させることができる。
【図面の簡単な説明】
【００１５】
【図１】本実施形態による強化学習システムの機能構成例を示すブロック図である。
【図２】第１の応用例に係る強化学習システムの機能構成例を示すブロック図である。
【図３】第１の応用例に係る強化学習システムの変形例を示すブロック図である。
【図４】第２の応用例に係る強化学習システムの機能構成例を示すブロック図である。
【図５】第３の応用例に係る強化学習システムの機能構成例を示すブロック図である。
【図６】第３の応用例においてディスプレイに表示される提案内容の一例を示す図である。
【図７】他の実施形態による強化学習システムの機能構成例を示すブロック図である。
【発明を実施するための形態】
【００１６】
以下、本発明の一実施形態を図面に基づいて説明する。図１は、本実施形態による強化学習システムの機能構成例を示すブロック図である。図１に示すように、本実施形態の強化学習システム１００は、その機能構成として、状況検出部１０、第１の動作選択部１１、第２の動作選択部１２、動作提示部１３、反応検出部１４および報酬決定部１５を備えている。
【００１７】
上記各機能ブロック１０〜１５は、ハードウェア、ＤＳＰ（Digital Signal Processor）、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック１０〜１５は、実際にはコンピュータのＣＰＵ、ＲＡＭ、ＲＯＭなどを備えて構成され、ＲＡＭやＲＯＭ、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。
【００１８】
なお、上記各機能ブロック１０〜１５は、その全てが１つの装置（例えば、パーソナルコンピュータ、スマートフォン、タブレット端末、車載域、ロボット、ゲーム装置、ＡＩスピーカ（スマートスピーカ）、サーバ装置など）内に実装される構成であってもよいし、複数の装置（例えば、クライアント端末とサーバ装置）に分散して実装される構成であってもよい。
【００１９】
また、本実施形態の強化学習システム１００には、動作実行装置２００が接続されている。動作実行装置２００は、本実施形態の強化学習システム１００が選択した動作を実行するための装置であり、ユーザが五感のうち何れか１つまたは複数によって認知できる動作を実行する。なお、ここでは強化学習システム１００と動作実行装置２００とが別体である構成を示しているが、動作実行装置２００が強化学習システム１００を搭載する構成であってもよい。
【００２０】
例えば、動作実行装置２００は、画像表示という動作を実行するディスプレイ、音声出力という動作を実行するスピーカなどである。動作実行装置２００は、様々な動きをするロボットであってもよい。なお、ここに示したものは例示であって、動作実行装置２００がこれらに限定されるものではない。
【００２１】
状況検出部１０は、動作実行装置２００による動作実行結果を受け取るユーザの状況を検出するものである。例えば、動作実行装置２００がディスプレイの場合、状況検出部１０は、ディスプレイに表示される画像を見るユーザの状況を検出する。動作実行装置２００がスピーカの場合、状況検出部１０は、スピーカから出力される音声を聞くユーザの状況を検出する。動作実行装置２００がロボットの場合、状況検出部１０は、ロボットの動きを通じて様々な情報を受け取るユーザの状況を検出する。
【００２２】
状況検出部１０が検出するユーザの状況は、ユーザの外観から得られる種々の属性（例えば、ユーザが着ている服装のタイプ、ユーザの性別や年代など）、ユーザの行動（例えば、歩行速度、姿勢、顔の表情、移動方向、身体の動きなど）、ユーザの身体的特徴（例えば、身長、体型、体温、心拍、呼吸速度など）、ユーザが居る環境（例えば、ユーザが現在居る場所、屋内／屋外の別、同伴者の有無など）などである。また、状況検出部１０は、ユーザから提示された情報（例えば、タッチパネル等の入力デバイスを通じてユーザから入力された情報や、ユーザからあらかじめ登録されている情報など）に基づいて、ユーザの状況（例えば、ユーザの対象物に対する興味の有無や程度）を検出することも可能である。
【００２３】
これらのユーザの状況の中のいくつかは、例えば、ユーザをカメラにより撮影した撮影画像に対して公知の画像認識処理を行うことにより検出することが可能である。また、いくつかの状況は、動作実行装置２００の近傍に設置した所定のセンサから出力される信号を処理することにより検出することが可能である。また、いくつかの状況は、動作実行装置２００が備える入力デバイスまたは動作実行装置２００に接続された入力デバイスから入力される情報を処理したり、動作実行装置２００が備える記憶装置または動作実行装置２００に接続された記憶装置に記憶された情報を読み出したりすることにより検出することが可能である。
【００２４】
なお、ここに示したユーザの状況およびその検出方法は例示であって、これらに限定されるものではない。
【００２５】
第１の動作選択部１１は、第１の方策に基づいて、動作実行装置２００がとるべき第１の動作を選択する。本実施形態では、第１の動作選択部１１は、第１の方策に基づいて、状況検出部１０により検出されたユーザの様々な状況を分析することにより、動作実行装置２００がとるべき第１の動作を選択する。ここで、方策とは、動作実行装置２００の動作を決定する際のアルゴリズムをいう。具体的には、状況検出部１０により検出される様々なユーザの状況のうち、何を用いて、何を優先して、どのように動作を選択するかのポリシーを特定した論理モデル、およびこれに適用する関数やパラメータ、ライブラリなどをいう。後述するように、第１の動作選択部１１が動作を選択する際のアルゴリズムは強化学習によって改変されていくが、学習開始前の初期段階では、第１の方策として所定の内容のアルゴリズムが第１の動作選択部１１に設定される。
【００２６】
第２の動作選択部１２は、第１の方策とは異なる第２の方策に基づいて、動作実行装置２００がとるべき第２の動作を選択する。本実施形態では、第２の動作選択部１２は、第２の方策に基づいて、状況検出部１０により検出されたユーザの様々な状況を分析することにより、動作実行装置２００がとるべき第２の動作を選択する。後述するように、第２の動作選択部１２が動作を選択する際のアルゴリズムも強化学習によって改変されていく。強化学習が進むにつれて、第２の方策の内容が第１の方策の内容に近づいたり、第１の方策の内容が第２の方策の内容に近づいたりすることはあり得るが、学習開始前の初期段階では、第１の方策とは異なる第２の方策として所定の内容のアルゴリズムが第２の動作選択部１２に設定される。
【００２７】
動作提示部１３は、第１の動作選択部１１により選択された第１の動作および第２の動作選択部１２により選択された第２の動作をそれぞれ動作実行装置２００を通じてユーザに提示する。ここで、動作提示部１３は、第１の動作と第２の動作とを動作実行装置２００に同時に実行させるようにしてもよいし、順番に実行させるようにしてもよい。すなわち、動作実行装置２００による第１の動作および第２の動作の実行結果を一人のユーザに対して同時に提示するようにしてもよいし、一人あるいは別のユーザに対して順番に提示するようにしてもよい。
【００２８】
上述したように、第１の動作は、第１の動作選択部１１によって第１の方策に基づいて選択される。一方、第２の動作は、第２の方策に基づいて第２の動作選択部１２により選択される。第１の方策と第２の方策とは互いに異なるため、両者に基づいて選択される第１の動作と第２の動作は、基本的に異なるものとなる。よって、動作提示部１３は、状況検出部１０により検出されたユーザの同じ状況から選択された異なる２つの動作をユーザに提示することになる。
【００２９】
反応検出部１４は、動作実行装置２００を通じてユーザに提示された第１の動作および第２の動作に対するユーザの反応をそれぞれ、当該反応を表す所定の指標値として検出する。ユーザの反応とは、ユーザが第１の動作および第２の動作に対してどのような行動をとったかということである。反応を表す所定の指標値とは、ユーザのとった行動がどの程度、第１の動作および第２の動作に対して興味を示すものであるかを定量的な情報として表したものである。
【００３０】
例えば、動作実行装置２００がディスプレイの場合で、動作提示部１３により提示される動作が画像表示である場合、反応検出部１４は、ディスプレイに表示された画像をユーザがどの程度興味を持って見たかという反応を、その反応を表す所定の指標値として検出する。この場合の指標値としては、例えば、画像に対する注視時間や、ディスプレイがデジタルサイネージである場合のユーザの接近距離などを用いることが可能である。注視時間が長いほど、ユーザの接近距離が短いほど、ユーザの興味度は大きいと推定することが可能である。
【００３１】
これらの指標値は、例えば、ユーザをカメラにより撮影した撮影画像に対して公知の画像認識処理を行うことにより検出することが可能である。接近距離に関しては、動作実行装置２００の近傍に設置した距離センサから出力される信号を処理することにより検出することも可能である。
【００３２】
あるいは、反応検出部１４は、撮影画像に対して画像認識処理を行うことにより、ディスプレイに表示された画像を見ているときのユーザの表情を検出し、表情の内容に応じてあらかじめ設定されたスコア値を、ディスプレイに表示された画像に対するユーザの興味度を表す指標値として検出するようにしてもよい。この場合のスコア値は、例えば、ユーザの表情が柔らかいほど大きくなるような値に設定しておく。
【００３３】
別の例として、ディスプレイに表示された画像に対して、タッチパネルやキーボードなどの入力デバイスを介してユーザが何らかの応答入力を行うことができるようにしておく。そして、反応検出部１４は、応答入力の有無または内容に応じてあらかじめ設定されたスコア値を、ディスプレイに表示された画像に対するユーザの興味度を表す指標値として検出するようにしてもよい。例えば、それぞれのスコア値が設定された複数の操作ボタンをディスプレイに表示させ、操作されたボタンのスコア値を、ディスプレイに表示された画像に対するユーザの興味度を表す指標値として検出することが可能である。
【００３４】
さらに別の例として、動作実行装置２００の近傍にマイクを設置しておく。そして、反応検出部１４は、ディスプレイに表示された画像を見ているユーザが発した音声の有無または内容に応じてあらかじめ設定されたスコア値を、ディスプレイに表示された画像に対するユーザの興味度を表す指標値として検出するようにしてもよい。例えば、それぞれのスコア値が設定された複数のキーワードを音声認識辞書にあらかじめ登録しておき、発話音声として音声認識されたキーワードに対応するスコア値を、ディスプレイに表示された画像に対するユーザの興味度を表す指標値として検出することが可能である。
【００３５】
動作実行装置２００がスピーカで、動作提示部１３により提示される動作が音声出力である場合も、反応検出部１４は、スピーカに出力された音声をユーザがどの程度興味を持って聞いたかという反応を、その反応を表す所定の指標値（例えば、音声の聴取時間、スピーカへのユーザの接近距離、音声を聞いているときのユーザの表情に応じたスコア値、タッチパネルやキーボードなどの入力デバイスに対する応答入力の有無または内容に応じてあらかじめ設定されたスコア値、マイクに対するユーザの発話音声の入力の有無または内容に応じてあらかじめ設定されたスコア値など）として検出する。
【００３６】
また、動作実行装置２００がロボットで、動作提示部１３により提示される動作がロボットの動きである場合、反応検出部１４は、ロボットの動きに対してユーザがどの程度興味を示したかという反応を、その反応を表す所定の指標値（例えば、ロボットに対するユーザの接近距離、ロボットの動きを見ているときのユーザの表情に応じたスコア値、ロボットに対する接触の有無または接触の仕方に応じてあらかじめ設定されたスコア値、ロボットまたはその近傍に設置したマイクに対するユーザの発話音声の入力の有無または内容に応じてあらかじめ設定されたスコア値など）として検出する。
【００３７】
なお、ここに示したユーザの反応およびその指標値の検出方法は例示であって、これらに限定されるものではない。
【００３８】
報酬決定部１５は、反応検出部１４により検出された第１の動作に対する反応の指標値および第２の動作に対する反応の指標値を対比し、その対比結果に応じて、第１の動作選択部１１および第２の動作選択部１２に与える報酬を決定する。例えば、報酬決定部１５は、第１の動作に対する指標値と第２の動作に対する指標値とを比較してどちらが大きいかを判定し、第１の動作選択部１１および第２の動作選択部１２のうち、指標値が大きい方に対して報酬を与え、指標値が小さい方には報酬を与えないように決定する。この場合、与える報酬の大きさは固定値としてもよいし、指標値の差の大きさに応じて可変の値としてもよい。なお、指標値が小さい方に対して無報酬とする代わりに、マイナスの報酬を与えるようにしてもよい。
【００３９】
第１の動作選択部１１および第２の動作選択部１２はそれぞれ、報酬決定部１５により決定された報酬に応じて、第１の方策（第１の動作選択部１１が動作実行装置２００の動作を選択する際のアルゴリズム）および第２の方策（第２の動作選択部１２が動作実行装置２００の動作を選択する際のアルゴリズム）をそれぞれ改変する。このアルゴリズムの改変は、公知の強化学習に基づいて行うものである。
【００４０】
すなわち、各動作選択部１１，１２は、ある状況下である動作を選択したときにプラスの報酬が与えられた場合は、同じ状況下でその動作がその後も選択されやすくなるようにアルゴリズムを改変する。逆に、ある状況下である動作を選択したときに無報酬またはマイナスの報酬が与えられた場合は、同じ状況下でその動作がその後は選択されにくくなるようにアルゴリズムを改変する。
【００４１】
この場合における「同じ状況下」というのは、状況検出部１０により検出される状況が完全に同一である場合のみとしてもよいが、同じとみなせる状況も含むものとしてもよい。例えば、状況検出部１０により検出されるユーザの状況に対して、その内容に応じて分類を与え、同じ分類に属する状況は「同じ状況」とみなして強化学習を行うようにしてもよい。分類の付与については公知の技術を用いることが可能である。以下の説明において「同じ状況」というときは、同じとみなせる状況も含む概念であるものとする。
【００４２】
上記のように構成した本実施形態によれば、単独の動作選択部だけで強化学習を行う従来技術とは異なり、２つの動作選択部１１，１２が選択した異なる動作に対するユーザの反応に応じた指標値を用いて、当該２つの動作選択部１１，１２が協調して強化学習を行うことができる。これにより、動作実行装置２００がユーザの状況に応じて動作を選択する際の方策を強化学習によって更新していく場合において、動作実行装置２００が的確な動作をとれるようになるまでの学習のスピードを向上させることができる。
【００４３】
なお、報酬決定部１５は、次のように報酬を決定するようにしてもよい。すなわち、報酬決定部１５は、反応検出部１４により前回検出された第１の動作に対する指標値と今回検出された第１の動作（前回と同じ状況下で選択されたものであるが、前回と同じ内容の動作とは限らない）に対する指標値とを更に対比するとともに、反応検出部１４により前回検出された第２の動作に対する指標値と今回検出された第２の動作（前回と同じ状況下で選択されたものであるが、前回と同じ内容の動作とは限らない）に対する指標値とを更に対比する。そして、第１の動作に対して今回検出された指標値と第２の動作に対して今回検出された指標値との対比結果に加え、第１の動作および第２の動作のそれぞれに関して前回検出された指標値と今回検出された指標値との対比結果に応じて、第１の動作選択部１１および第２の動作選択部１２に与える報酬を決定する。
【００４４】
例えば、今回検出された第１の動作に対する指標値が、今回検出された第２の動作に対する指標値より大きい場合であっても、前回検出された第１の動作に対する指標値より小さい場合があり得る。この場合、報酬決定部１５は、例えば、第１の動作選択部１１に与える報酬を無報酬またはマイナスの報酬として決定する。今回検出された第２の動作に対する指標値が、今回検出された第１の動作に対する指標値より大きい場合で、かつ、前回検出された第２の動作に対する指標値より小さい場合も同様、報酬決定部１５は、例えば、第２の動作選択部１２に与える報酬を無報酬またはマイナスの報酬として決定する。
【００４５】
また、今回検出された第１の動作に対する指標値が、今回検出された第２の動作に対する指標値より小さい場合であっても、前回検出された第１の動作に対する指標値より大きい場合があり得る。この場合、報酬決定部１５は、例えば、第１の動作選択部１１に与える報酬を、第２の動作選択部１２に与える報酬よりも小さい報酬として決定する。今回検出された第２の動作に対する指標値が、今回検出された第１の動作に対する指標値より小さい場合で、かつ、前回検出された第２の動作に対する指標値より大きい場合も同様、報酬決定部１５は、例えば、第２の動作選択部１２に与える報酬を、第１の動作選択部１１に与える報酬よりも小さい報酬として決定する。
【００４６】
このようにすれば、２つの動作選択部１１，１２が今回選択した異なる動作に対するユーザの反応に応じた指標値に加え、第１の動作選択部１１が前回と今回で選択した異なる動作に対するユーザの反応に応じた指標値や、第２の動作選択部１２が前回と今回で選択した異なる動作に対するユーザの反応に応じた指標値を更に用いて強化学習を行うことができる。これにより、動作実行装置２００が的確な動作をとれるようになるまでの学習のスピードを更に向上させることができる。
【００４７】
以下に、上記のように構成した本実施形態による強化学習システム１００の応用例を説明する。
【００４８】
＜第１の応用例＞
第１の応用例は、広告を選択してデジタルサイネージ２００Ａに表示するシステムにおいて、選択のアルゴリズムを学習することにより、的確な広告を選択して表示できるようにするものである。
【００４９】
図２は、第１の応用例に係る強化学習システム１００Ａの機能構成例を示すブロック図である。図２に示すように、第１の応用例に係る強化学習システム１００Ａは、その機能構成として、状況検出部１０Ａ、第１の動作選択部１１Ａ、第２の動作選択部１２Ａ、動作提示部１３Ａ、反応検出部１４Ａおよび報酬決定部１５Ａを備えている。
【００５０】
また、強化学習システム１００Ａには、動作実行装置２００の一例としてデジタルサイネージ２００Ａが接続されるとともに、デジタルサイネージ２００Ａに表示する広告データを記憶した広告データ記憶部３００Ａが接続されている。また、強化学習システム１００Ａには、状況検出部１０Ａがユーザの状況を検出する際、および、反応検出部１４Ａがユーザの反応を検出する際に使用するデバイスであるカメラ４００Ａおよびセンサ５００Ａが接続されている。
【００５１】
なお、カメラ４００Ａおよびセンサ５００Ａは、デジタルサイネージ２００Ａの近傍位置に設置される。これに対し、強化学習システム１００Ａおよび広告データ記憶部３００Ａは、デジタルサイネージ２００Ａの近傍位置に設置されることは必須でない。例えば、強化学習システム１００Ａは、ＬＡＮを介して接続されたパーソナルコンピュータまたはサーバ装置であってよい。また、広告データ記憶部３００Ａは、強化学習システム１００Ａが搭載するものであってもよい。
【００５２】
状況検出部１０Ａは、デジタルサイネージ２００Ａの付近に居るユーザ（デジタルサイネージ２００Ａに表示される広告を見る可能性のあるユーザ）の状況を検出する。すなわち、状況検出部１０Ａは、カメラ４００Ａにより撮影されるユーザの撮影画像に対して画像認識処理を行うとともに、センサ５００Ａから出力される信号を処理することにより、ユーザの外観から得られる種々の属性、ユーザの行動、ユーザの身体的特徴、ユーザが居る環境などを検出する。
【００５３】
第１の動作選択部１１Ａは、第１の方策に基づいて、状況検出部１０Ａにより検出されたユーザの様々な状況を分析することにより、広告データ記憶部３００Ａに記憶されている複数の広告データ（以下、単に広告という）の中から、デジタルサイネージ２００Ａに表示すべき第１の広告を選択する。表示すべき広告とは、状況検出部１０Ａにより検出されたユーザの状況をもとに、そのユーザが興味を持つであろうと推測される広告を意味する。
【００５４】
第２の動作選択部１２Ａは、第１の方策とは異なる第２の方策に基づいて、状況検出部１０Ａにより検出されたユーザの様々な状況を分析することにより、広告データ記憶部３００Ａに記憶されている複数の広告の中から、デジタルサイネージ２００Ａに表示すべき第２の広告を選択する。
【００５５】
動作提示部１３Ａは、第１の動作選択部１１Ａにより選択された第１の広告および第２の動作選択部１２Ａにより選択された第２の広告をそれぞれデジタルサイネージ２００Ａに表示してユーザに提示する。ここで、動作提示部１３Ａは、第１の広告および第２の広告を順番に数秒ずつ切り替えてデジタルサイネージ２００Ａに表示する。
【００５６】
反応検出部１４Ａは、カメラ４００Ａにより撮影されるユーザの撮影画像に対して画像認識処理を行うとともに、センサ５００Ａから出力される信号を処理することにより、デジタルサイネージ２００Ａに表示された第１の広告および第２の広告に対するユーザの反応をそれぞれ、当該反応を表す所定の指標値として検出する。例えば、反応検出部１４は、画像に対する注視時間、デジタルサイネージ２００Ａに対するユーザの接近距離、画像を見ているときのユーザの表情の内容に応じてあらかじめ設定されたスコア値、デジタルサイネージ２００Ａ上のタッチパネルなどの入力デバイスを介してユーザから入力される応答入力の有無または内容に応じてあらかじめ設定されたスコア値、画像を見ているユーザによる発話音声のマイク入力の有無または発話音声の内容に応じてあらかじめ設定されたスコア値の少なくとも１つを指標値として検出する。
【００５７】
報酬決定部１５Ａは、反応検出部１４Ａにより第１の広告の表示に対して検出された反応の指標値と第２の広告の表示に対して検出された反応の指標値とを対比し、その対比結果に応じて、第１の動作選択部１１Ａおよび第２の動作選択部１２Ａに与える報酬を決定する。
【００５８】
第１の動作選択部１１Ａおよび第２の動作選択部１２Ａはそれぞれ、報酬決定部１５Ａにより決定された報酬に応じて、第１の方策（第１の動作選択部１１Ａが広告を選択する際のアルゴリズム）および第２の方策（第２の動作選択部１２Ａが広告を選択する際のアルゴリズム）をそれぞれ改変する。
【００５９】
すなわち、各動作選択部１１Ａ，１２Ａは、ある状況下である広告を選択したときにプラスの報酬が与えられた場合は、同じ状況下でその広告がその後も選択されやすくなるようにアルゴリズムを改変する。逆に、ある状況下である広告を選択したときに無報酬またはマイナスの報酬が与えられた場合は、同じ状況下でその広告がその後は選択されにくくなるようにアルゴリズムを改変する。
【００６０】
このように構成した第１の応用例によれば、２つの動作選択部１１Ａ，１２Ａが異なる方策に基づいて選択してデジタルサイネージ２００Ａに表示した異なる広告に対するユーザの反応に応じた指標値を用いて、当該２つの動作選択部１１Ａ，１２Ａが協調して広告選択に関するアルゴリズムの強化学習を行うことができる。これにより、デジタルサイネージ２００Ａに表示する広告をユーザの状況に応じて選択する際の方策を強化学習によって更新していく場合において、デジタルサイネージ２００Ａに対してユーザの状況に応じた的確な広告を表示できるようになるまでの学習のスピードを向上させることができる。
【００６１】
なお、ここではデジタルサイネージ２００Ａに広告を表示する例について説明したが、広告以外のコンテンツを表示するようにしてもよい。デジタルサイネージ２００Ａに表示するコンテンツは任意である。
【００６２】
図３は、図２に示した強化学習システム１００Ａを更に応用した変形例を示す図である。図３に示す変形例では、デジタルサイネージ２００Ａを複数の場所に設置し、それぞれのデジタルサイネージ２００Ａ毎に強化学習システム１００Ａを設ける。そして、インターネットや携帯電話網等の通信ネットワークを介して複数の強化学習システム１００Ａをサーバ６００に接続し、双方向に通信ができる状態とする。
【００６３】
複数の強化学習システム１００Ａはそれぞれ、一人のユーザに対して広告（広告以外のコンテンツでもよい）を選択してデジタルサイネージ２００Ａに表示し、ユーザの反応に応じて各動作選択部１１Ａ，１２Ａのアルゴリズムの学習を行う都度、その学習の内容をサーバ６００に送信する。送信する学習の内容とは、状況検出部１０Ａにより検出されたユーザの状況を示す情報、各動作選択部１１Ａ，１２Ａにより選択された広告を示す情報、および、報酬決定部１５により決定された各動作選択部１１Ａ，１２Ａに対する報酬の情報である。
【００６４】
サーバ６００は、ある強化学習システム１００Ａから受信した学習の内容を、他の強化学習システム１００Ａに送信する。例えば、Ｎ個の強化学習システム１００Ａ（第１〜第Ｎの強化学習システム１００Ａと表記するものとする）がある場合において、サーバ６００は、第１の強化学習システム１００Ａから受信した学習の内容を、第２〜第Ｎの強化学習システム１００Ａに送信する。また、サーバ６００は、第２の強化学習システム１００Ａから受信した学習の内容を、第１および第３〜第Ｎの強化学習システム１００Ａに送信する。他も同様である。つまり、サーバ６００は、第ｉ（ｉ＝１〜Ｎの何れか）の強化学習システム１００Ａから受信した学習の内容を、第ｉの強化学習システム１００Ａを除く他のＮ−１個の強化学習システム１００Ａに送信する。
【００６５】
第ｉの強化学習システム１００Ａにおける各動作選択部１１Ａ，１２Ａは、第ｉの強化学習システム１００Ａ自身における報酬決定部１５Ａにより決定された報酬に従ってアルゴリズムの学習を行うことに加え、他のＮ−１個の強化学習システム１００Ａから送られてくる学習の内容に基づいて、各動作選択部１１Ａ，１２Ａのアルゴリズムの学習も行う。このように、図３に示す構成によれば、複数の場所に分散して設けた複数の強化学習システム１００Ａが協調して各動作選択部１１Ａ，１２Ａのアルゴリズムを学習することができるので、デジタルサイネージ２００Ａに対してユーザの状況に応じた的確な広告を表示できるようになるまでの学習のスピードを更に向上させることができる。
【００６６】
なお、ここでは、第ｉの強化学習システム１００Ａから受信した学習の内容を他のＮ−１個の強化学習システム１００Ａに送信する機能のみをサーバ６００が有する例について説明したが、強化学習システム１００Ａの有する機能の一部をサーバ６００に持たせるようにしてもよい。例えば、第１の動作選択部１１Ａおよび第２の動作選択部１２Ａをサーバ６００が備え、状況検出部１０Ａにより検出されたユーザの状況を示す情報をサーバ６００に送信し、これに基づいてサーバ６００において選択した第１の広告および第２の広告を強化学習システム１００Ａに送信してデジタルサイネージ２００Ａに表示させるようにしてもよい。
【００６７】
また、報酬決定部１５Ａをサーバ６００が備え、反応検出部１４Ａにより検出されたユーザの反応に応じた指標値を示す情報をサーバ６００に送信し、これに基づいてサーバ６００において決定した各動作選択部１１Ａ，１２Ａに対する報酬を強化学習システム１００Ａに送信して各動作選択部１１Ａ，１２Ａのアルゴリズムを改変するようにしてもよい。なお、上記のように第１の動作選択部１１Ａおよび第２の動作選択部１２Ａをサーバ６００が備える場合は、サーバ６００が備える報酬決定部１５Ａにより決定された報酬に基づいて、サーバ６００が備える各動作選択部１１Ａ，１２Ａのアルゴリズムを改変すればよい。
【００６８】
＜第２の応用例＞
第２の応用例は、パーソナルコンピュータやスマートフォンなどのユーザ端末に複数のコンテンツを順番に並べて表示するシステムにおいて、順番選択のアルゴリズムを学習することにより、的確な順番で複数のコンテンツを並べて表示できるようにするものである。
【００６９】
図４は、第２の応用例に係る強化学習システム１００Ｂの機能構成例を示すブロック図である。なお、この図４において、図２に示した符号と同一の符号を付したものは同一の機能を有するものであるので、ここでは重複する説明を省略する。図４に示すように、第２の応用例に係る強化学習システム１００Ｂは、その機能構成として、状況検出部１０Ｂ、第１の動作選択部１１Ｂ、第２の動作選択部１２Ｂ、動作提示部１３Ｂ、反応検出部１４Ｂおよび報酬決定部１５Ｂを備えている。
【００７０】
また、強化学習システム１００Ｂには、動作実行装置２００の一例としてディスプレイ２００Ｂが接続されるとともに、ディスプレイ２００Ｂに表示する複数のコンテンツを記憶したコンテンツ記憶部３００Ｂが接続されている。また、強化学習システム１００Ｂには、カメラ４００Ａおよびセンサ５００Ａが接続されている。さらに、強化学習システム１００Ｂには、ユーザが種々の入力操作を行うためのタッチパネルやキーボード等の入力デバイス７００Ｂも接続されている。なお、強化学習システム１００Ｂ、ディスプレイ２００Ｂ、コンテンツ記憶部３００Ｂ、カメラ４００Ａ、センサ５００Ａおよび入力デバイス７００Ｂは、何れもスマートフォンやパーソナルコンピュータ等のユーザ端末が搭載するものであってもよい。
【００７１】
状況検出部１０Ｂは、ユーザ端末を使用するユーザ（ディスプレイ２００Ｂに表示されるコンテンツを見る可能性のあるユーザ）の状況を検出する。すなわち、状況検出部１０Ｂは、カメラ４００Ａにより撮影されるユーザの撮影画像に対して画像認識処理を行うとともに、センサ５００Ａから出力される信号を処理することにより、ユーザの外観から得られる種々の属性（例えば、ユーザの性別や年代など）、ユーザの行動（例えば、顔の表情など）、ユーザが居る環境（例えば、ユーザが現在居る場所など）などを検出する。また、状況検出部１０Ｂは、ユーザ端末に記憶されているウェブページへのアクセス履歴などの情報をもとに、各種コンテンツに対するユーザの興味をユーザの状況として検出（推定）するようにしてもよい。
【００７２】
第１の動作選択部１１Ｂは、第１の方策に基づいて、状況検出部１０Ｂにより検出されたユーザの様々な状況を分析することにより、コンテンツ記憶部３００Ｂに記憶されている複数のコンテンツをディスプレイ２００Ｂに順番に並べて表示する際の表示順（第１の表示順）を選択する。ここで、複数のコンテンツを順番に並べて表示するとは、例えば、複数のコンテンツをタイムライン上に並べて表示すること言う。この場合、ディスプレイ２００Ｂに表示する複数のコンテンツは、例えば、ユーザが入力デバイス７００Ｂを操作して指定したタイムラインに含まれるコンテンツである。また、ここで言う表示順の選択とは、ユーザが興味を持つであろうと推測されるコンテンツほど上位に表示するように順番を選択するという意味である。
【００７３】
第２の動作選択部１２Ｂは、第１の方策とは異なる第２の方策に基づいて、状況検出部１０Ｂにより検出されたユーザの様々な状況を分析することにより、コンテンツ記憶部３００Ｂに記憶されている複数のコンテンツをディスプレイ２００Ｂに順番に並べて表示する際の表示順（第２の表示順）を選択する。
【００７４】
動作提示部１３Ｂは、第１の動作選択部１１Ｂにより選択された第１の表示順および第２の動作選択部１２Ｂにより選択された第２の表示順で、複数のコンテンツをタイムライン上に並べてディスプレイ２００Ｂに表示する。なお、動作提示部１３Ｂは、１回のタイムライン表示について、第１の動作選択部１１Ｂにより選択された第１の表示順または第２の動作選択部１２Ｂにより選択された第２の表示順の何れか一方を選択して複数のコンテンツを表示させる。そして、ユーザの同じ状況下で次にタイムライン表示が指示されたときに、動作提示部１３Ｂは、前回と異なる方の表示順を選択して複数のコンテンツを表示させる。
【００７５】
反応検出部１４Ｂは、カメラ４００Ａにより撮影されるユーザの撮影画像に対して画像認識処理を行うとともに、入力デバイス７００Ｂから入力されるユーザ操作の内容を分析することにより、ディスプレイ２００Ｂに表示された複数のコンテンツに対するユーザの反応を、当該反応を表す所定の指標値としてコンテンツ毎に検出する。
【００７６】
例えば、反応検出部１４Ｂは、ディスプレイ２００Ｂに表示された複数のコンテンツ毎に、コンテンツに対する注視時間、コンテンツを見ているときのユーザの表情の内容に応じてあらかじめ設定されたスコア値などを指標値として検出する。ここで、注視時間は、入力デバイス７００Ｂに対するユーザ操作に基づいてスクロール速度が下がったときあるいはスクロールが停止したときに表示されていたコンテンツをユーザが注視していたものと推定し、当該コンテンツがディスプレイ２００Ｂに表示されていた時間を注視時間として検出する。
【００７７】
報酬決定部１５Ｂは、第１の表示順で複数のコンテンツを表示したときに反応検出部１４Ｂにより検出されたコンテンツ毎の指標値と、第２の表示順で複数のコンテンツを表示したときに反応検出部１４Ｂにより検出されたコンテンツ毎の指標値とを対比し、その対比結果に応じて、第１の動作選択部１１Ｂおよび第２の動作選択部１２Ｂに与える報酬を決定する。
【００７８】
例えば、報酬決定部１５Ｂは、第１の表示順に従って最上位に表示したコンテンツの指標値と、第２の表示順に従って最上位に表示したコンテンツの指標値とを比較してどちらが大きいかを判定し、第１の動作選択部１１Ｂおよび第２の動作選択部１２Ｂのうち、指標値が大きい方に対してプラスの報酬を与え、指標値が小さい方には報酬を与えないかマイナスの報酬を与えるように決定する。この場合、与える報酬の大きさは固定値としてもよいし、指標値の差の大きさに応じて可変の値としてもよい。
【００７９】
あるいは、報酬決定部１５Ｂは、第１の表示順で複数のコンテンツを表示したときに反応検出部１４Ｂにより検出されたコンテンツ毎の指標値の中で最も大きな指標値が得られたコンテンツの表示順と、第２の表示順で複数のコンテンツを表示したときに反応検出部１４Ｂにより検出されたコンテンツ毎の指標値の中で最も大きな指標値が得られたコンテンツの表示順とを比較してどちらの表示順の方が上位かを判定し、第１の動作選択部１１Ｂおよび第２の動作選択部１２Ｂのうち、最も大きな指標値が得られたコンテンツの表示順が上位の方に対してプラスの報酬を与え、そうでない方には報酬を与えないかマイナスの報酬を与えるように決定する。この場合、与える報酬の大きさは固定値としてもよいし、最大の指標値の差の大きさや、最大の指標値が得られているコンテンツの表示順の差の大きさに応じて可変の値としてもよい。
【００８０】
第１の動作選択部１１Ｂおよび第２の動作選択部１２Ｂはそれぞれ、報酬決定部１５Ｂにより決定された報酬に応じて、第１の方策（第１の動作選択部１１Ｂが複数のコンテンツの表示順を選択する際のアルゴリズム）および第２の方策（第２の動作選択部１２Ｂが複数のコンテンツの表示順を選択する際のアルゴリズム）をそれぞれ改変する。
【００８１】
すなわち、各動作選択部１１Ｂ，１２Ｂは、ある状況下で選択した表示順に従って複数のコンテンツを表示したときにプラスの報酬が与えられた場合は、同じ状況下でその表示順がその後も選択されやすくなるようにアルゴリズムを改変する。あるいは、最大の指標値が得られたコンテンツの表示順がより上位となるようにアルゴリズムを改変するようにしてもよい。逆に、ある状況下で選択した表示順に従って複数のコンテンツを表示したときに無報酬またはマイナスの報酬が与えられた場合は、同じ状況下でその表示順がその後は選択されにくくなるようにアルゴリズムを改変する。あるいは、最小の指標値が得られたコンテンツの表示順がより下位となるようにアルゴリズムを改変するようにしてもよい。
【００８２】
このように構成した第２の応用例によれば、２つの動作選択部１１Ｂ，１２Ｂが異なる方策に基づいて選択した異なる表示順に従って複数のコンテンツをディスプレイ２００Ｂに表示した場合におけるユーザの反応に応じた指標値を用いて、当該２つの動作選択部１１Ｂ，１２Ｂが協調してコンテンツ表示順の選択に関するアルゴリズムの強化学習を行うことができる。これにより、ディスプレイ２００Ｂに表示するコンテンツの表示順をユーザの状況に応じて選択する際の方策を強化学習によって更新していく場合において、ユーザの状況に応じた的確な表示順で複数のコンテンツをディスプレイ２００Ｂに表示できるようになるまでの学習のスピードを向上させることができる。
【００８３】
なお、上記実施形態では、第１の表示順に基づくコンテンツの表示と、第２の表示順に基づくコンテンツの表示とを、タイムラインの２回の表示に分けて順番に行う例について説明した。この場合、一方の表示順によるコンテンツの表示が終わってユーザの反応を検出しても、その後に他方の表示順によるコンテンツの表示が終わってユーザの反応を検出するまでは、報酬決定部１５による報酬の決定を行うことができない。つまり、１回目と同じ状況下で２回目のタイムライン表示が行われるまで、比較的長い時間がかかることもあり得るが、その間は報酬の決定を行うことができず、アルゴリズムの学習が進まない。
【００８４】
そこで、図３と同様に、複数の強化学習システム１００Ｂをサーバ６００に接続する構成としてもよい。この場合、一人のユーザに対して１回のタイムライン表示を行う都度、状況検出部１０Ｂにより検出されたユーザの状況を示す情報と、各動作選択部１１Ｂ，１２Ｂのうちコンテンツ表示を行った方により選択された表示順を示す情報（第１の表示順か第２の表示順かを識別する情報を含む）とをサーバ６００に送信する。サーバ６００は、Ｎ個の強化学習システム１００Ｂから送られてくる情報を確認し、同じ状況下で選択された異なる表示順の組があることを検出した場合は、その組の一方の情報を、その表示順を選択していない方の強化学習システム１００Ｂに送信する。
【００８５】
例えば、第ｉの強化学習システム１００Ｂからサーバ６００に送信された表示順の情報と、第ｊの強化学習システム１００Ｂからサーバ６００に送信された表示順の情報とが、それぞれ同じ状況下で選択された表示順であって、一方が第１の表示順で他方が第２の表示順であることをサーバ６００が検出したとする。この場合、サーバ６００は、第ｉの強化学習システム１００Ｂから受信した情報（ユーザの状況を示す情報およびコンテンツの表示順を示す情報）を第ｊの強化学習システム１００Ｂに送信するとともに、第ｊの強化学習システム１００Ｂから受信した情報を第ｉの強化学習システム１００Ｂに送信する。
【００８６】
このようにすれば、第ｉの強化学習システム１００Ｂおよび第ｊの強化学習システム１００Ｂでは、それぞれが自身において選択した一方の表示順によりコンテンツを表示してユーザの反応を検出した後、自身が選択した他方の表示順によるコンテンツの表示に応じたユーザの反応を検出するまで待たなくても、他方の強化学習システム１００Ｂからサーバ６００を介して送られてくる情報を用いて報酬決定部１５による報酬の決定を行うことができるようになる。これにより、１回目と同じ状況下で２回目のタイムライン表示が行われるまでの間、報酬の決定を行うことができないという状況を抑止することができる。
【００８７】
＜第３の応用例＞
第３の応用例は、パーソナルコンピュータやスマートフォンなどのユーザ端末においてチャットを行うシステムにおいて、チャットを行う相手を選択する際のアルゴリズムを学習することにより、的確なチャット相手を選択して提案できるようにするものである。
【００８８】
図５は、第３の応用例に係る強化学習システム１００Ｃの機能構成例を示すブロック図である。図５に示すように、第３の応用例に係る強化学習システム１００Ｃは、その機能構成として、状況検出部１０Ｃ、第１の動作選択部１１Ｃ、第２の動作選択部１２Ｃ、動作提示部１３Ｃ、反応検出部１４Ｃおよび報酬決定部１５Ｃを備えている。また、強化学習システム１００Ｃには、チャットに関するコンテンツ（以下、チャットコンテンツという）を記憶したチャットコンテンツ記憶部３００Ｃが接続されている。なお、強化学習システム１００Ｃおよびチャットコンテンツ記憶部３００Ｃは、チャットの運用を管理するチャットサーバが搭載するものである。
【００８９】
また、強化学習システム１００Ｃ（チャットサーバ）には、通信ネットワークを介してユーザ端末８００Ｃが接続されている。ユーザ端末８００Ｃは、動作実行装置２００の一例として、チャットコンテンツを表示するためのディスプレイ２００Ｃを備えている。ユーザ端末８００Ｃは、通信ネットワークを介してチャットサーバにアクセスし、チャットコンテンツを取得してディスプレイ２００Ｃに表示可能に構成されている。
【００９０】
ここで、チャットコンテンツは、複数のユーザ端末から提供された話題の情報と、１つの話題について複数のユーザ間でやり取りされたコミュニケーション（チャット）の情報とを含むものである。ユーザは、ディスプレイ２００Ｃに表示された複数の話題の中から興味のある話題を選択し、その話題の提供者や、同じ話題に興味を持つ他のユーザとの間でチャットを行うことができるようになっている。
【００９１】
状況検出部１０Ｃは、チャットサーバが提供するチャットを利用しているユーザ（ディスプレイ２００Ｃに表示されるチャットコンテンツを見ているまたは見る可能性のあるユーザ）の状況を検出する。すなわち、状況検出部１０Ｃは、ユーザによるチャットコンテンツの閲覧状況を検出する。閲覧状況とは、チャットサーバが提供するサイトのどのページを現在見ているか、ブックマーク、お気に入り、賛同などのサインがどの話題に付けられているか、チャットサーバへのアクセス頻度、チャットへの参加頻度、チャットへの参加履歴などの状況を言う。
【００９２】
第１の動作選択部１１Ｃは、第１の方策に基づいて、状況検出部１０Ｃにより検出されたユーザのチャットコンテンツ閲覧状況を分析することにより、チャット相手として提案するユーザの組（第１のチャット相手）を選択する。ここでは、チャット相手として気に入られる可能性がありそうなユーザの組を分析して選択する。
【００９３】
選択するユーザは、チャットサーバにユーザ登録しているユーザや、未登録ではあるが現在チャットサーバにアクセス中のユーザの中の何れかである。ユーザ登録しているユーザは、チャットサーバに登録されたプロファイル情報によりユーザを特定することが可能である。未登録のユーザは、チャットサーバへのアクセス時に使用されている仮のニックネームや、ＩＰアドレス、クッキー情報などによりユーザを特定することが可能である。
【００９４】
第２の動作選択部１２Ｃは、第１の方策とは異なる第２の方策に基づいて、状況検出部１０Ｃにより検出されたユーザの様々な状況を分析することにより、チャット相手として提案するユーザの組（第２のチャット相手）を選択する。ここで、第１のチャット相手として選択するユーザの組に含まれる一方のユーザと、第２のチャット相手として選択するユーザの組に含まれる一方のユーザとが同一のユーザとなるように、第１の動作選択部１１Ｃによるユーザの選択と第２の動作選択部１２によるユーザの選択とを実行する。
【００９５】
例えば、第１の動作選択部１１ＣがユーザＸとユーザＹとの組を第１のチャット相手として選択するとともに、第２の動作選択部１２ＣがユーザＸとユーザＺとの組を第２のチャット相手として選択するといったように、各動作選択部１１Ｃ，１２Ｃが選択するユーザの一方は共通し、他方は共通しないように、ユーザの選択を行う。例えば、最初に共通のユーザＸを決定し、この共通ユーザＸに対する相手ユーザＹ，Ｚを各動作選択部１１Ｃ，１２Ｃが選択するようにする。第１の方策と第２の方策とは互いに異なるため、同じ共通ユーザＸに対して各動作選択部１１Ｃ，１２Ｃにより選択される相手ユーザＹ，Ｚは基本的に異なるものとなる。
【００９６】
動作提示部１３Ｃは、第１の動作選択部１１Ｃにより選択された第１のチャット相手および第２の動作選択部１２Ｃにより選択された第２のチャット相手を各ユーザのユーザ端末８００Ｃのディスプレイ２００Ｃに表示することにより、チャットの開始をユーザに提案する。
【００９７】
図６は、上述のユーザＸ，Ｙ，Ｚの例に即してディスプレイ２００Ｃに表示される提案内容の一例を示す図である。図６（ａ）に示すように、動作提示部１３Ｃは、共通ユーザＸが使用するユーザ端末８００Ｃのディスプレイ２００Ｃに対し、第１の動作選択部１１Ｃにより選択された相手ユーザＹおよび第２の動作選択部１２Ｃにより選択された相手ユーザＺをチャット相手の候補として表示する。共通ユーザＸのディスプレイ２００Ｃに表示される画面には、相手ユーザＹとの間でチャットを開始することに同意するためのボタンＢ１１と、相手ユーザＺとの間でチャットを開始することに同意するためのボタンＢ１２とが含まれている。
【００９８】
また、図６（ｂ）に示すように、動作提示部１３Ｃは、相手ユーザＹが使用するユーザ端末８００Ｃのディスプレイ２００Ｃに対し、共通ユーザＸをチャット相手の候補として表示する。相手ユーザＹのディスプレイ２００Ｃに表示される画面には、共通ユーザＸとの間でチャットを開始することに同意するためのボタンＢ２１が含まれている。さらに、図６（ｃ）に示すように、動作提示部１３Ｃは、相手ユーザＺが使用するユーザ端末８００Ｃのディスプレイ２００Ｃに対し、共通ユーザＸをチャット相手の候補として表示する。相手ユーザＺのディスプレイ２００Ｃに表示される画面には、共通ユーザＸとの間でチャットを開始することに同意するためのボタンＢ３１が含まれている。
【００９９】
ここで、共通ユーザＸがボタンＢ１１を操作するとともに、相手ユーザＹがボタンＢ２１を操作した場合には、双方のユーザがチャット開始に同意したことになるので、ユーザＸ，Ｙ間でのチャットが開始される。また、共通ユーザＸがボタンＢ１２を操作するとともに、相手ユーザＺがボタンＢ３１を操作した場合には、双方のユーザがチャット開始に同意したことになるので、ユーザＸ，Ｚ間でのチャットが開始される。
【０１００】
反応検出部１４Ｃは、共通ユーザＸのディスプレイＣに表示されたボタンＢ１１，Ｂ１２、相手ユーザＹのディスプレイ２００Ｃに表示されたボタンＢ２１、および、相手ユーザＺのディスプレイ２００Ｃに表示されたボタンＢ３１の操作状況を分析することにより、第１のチャット相手および第２のチャット相手として選択されたユーザＸ，Ｙ，Ｚのそれぞれの反応を、当該反応を表す所定の指標値として検出する。この場合の指標値は、ボタンＢ１１，Ｂ１２、ボタンＢ２１、ボタンＢ３１の操作の有無を示す値であり、例えば操作された場合は“１”、操作されていない場合は“０”の値を指標値とする。
【０１０１】
報酬決定部１５Ｃは、第１のチャット相手（ユーザＸ，Ｙの組）を選択した場合に反応検出部１４Ｃにより検出された指標値と、第２のチャット相手（ユーザＸ，Ｚの組）を選択した場合に反応検出部１４Ｃにより検出された指標値とを対比し、その対比結果に応じて、第１の動作選択部１１Ｃおよび第２の動作選択部１２Ｃに与える報酬を決定する。
【０１０２】
例えば、報酬決定部１５Ｃは、第１のチャット相手（ユーザＸ，Ｙの組）を選択した場合に反応検出部１４Ｃにより検出された指標値と、第２のチャット相手（ユーザＸ，Ｚの組）を選択した場合に反応検出部１４Ｃにより検出された指標値とを比較してどちらが大きいかを判定し、第１の動作選択部１１Ｃおよび第２の動作選択部１２Ｃのうち、指標値が大きい方に対してプラスの報酬を与え、指標値が小さい方には報酬を与えないかマイナスの報酬を与えるように決定する。
【０１０３】
ここで、チャット相手の双方が同意してチャットを開始した場合、指標値は“２”となる。チャット相手の片方のみが同意してチャットが開始されなかった場合、指標値は“１”となる。また、チャット相手の双方が同意せずにチャットが開始されなかった場合、指標値は“０”となる。第１のチャット相手または第２のチャット相手の何れかの指標値が“２”となる場合は、報酬決定部１５Ｃは、第１の動作選択部１１Ｃおよび第２の動作選択部１２Ｃのうち、指標値が“２”となったチャット相手を選択した方に対してプラスの報酬を与え、そうでない方には報酬を与えないかマイナスの報酬を与えるように決定する。ここで、指標値が“１”となったチャット相手を選択した動作選択部は無報酬、指標値が“０”となったチャット相手を選択した動作選択部にはマイナスの報酬を与えるようにしてもよい。
【０１０４】
指標値が“２”となるチャット相手が選択されていな場合、例えば、第１のチャット相手または第２のチャット相手の一方の指標値が“１”で、他方の指標値が“０”となる場合は、報酬決定部１５Ｃは、例えば、第１の動作選択部１１Ｃおよび第２の動作選択部１２Ｃのうち、指標値が“１”となったチャット相手を選択した方に対してプラスの報酬を与え、そうでない方には報酬を与えないかマイナスの報酬を与えるように決定してもよい。ただし、指標値が“１”の場合はチャット開始の同意が成立していないので、指標値が“２”となる場合に与える報酬の値よりは小さいものとする。あるいは、指標値が“１”の場合はチャット開始の同意が成立していないことを根拠として、指標値が“１”となったチャット相手を選択した方の動作選択部を無報酬とし、指標値が“０”となったチャット相手を選択した方の動作選択部をマイナスの報酬としてもよい。
【０１０５】
また、第１のチャット相手に対する指標値および第２のチャット相手に対する指標値が何れも“１”の場合は、報酬決定部１５Ｃは、第１の動作選択部１１Ｃおよび第２の動作選択部１２Ｃの両方について無報酬と決定する。また、第１のチャット相手に対する指標値および第２のチャット相手に対する指標値が何れも“０”の場合は、報酬決定部１５Ｃは、第１の動作選択部１１Ｃおよび第２の動作選択部１２Ｃの両方に対してマイナスの報酬を与えるものと決定する。
【０１０６】
なお、以上説明した報酬決定のルールは単なる例示であり、これに限定されるものではない。
【０１０７】
第１の動作選択部１１Ｃおよび第２の動作選択部１２Ｃはそれぞれ、報酬決定部１５Ｃにより決定された報酬に応じて、第１の方策（第１の動作選択部１１Ｃが第１のチャット相手を選択する際のアルゴリズム）および第２の方策（第２の動作選択部１２Ｃが第２のチャット相手を選択する際のアルゴリズム）をそれぞれ改変する。
【０１０８】
すなわち、各動作選択部１１Ｃ，１２Ｃは、ある状況下で選択したチャット相手に対してプラスの報酬が与えられた場合は、同じ状況下にあるユーザの組がその後もチャット相手として選択されやすくなるようにアルゴリズムを改変する。逆に、ある状況下で選択したチャット相手に対する報酬が無報酬またはマイナスであった場合は、同じ状況下にあるユーザの組がその後はチャット相手として選択されにくくなるようにアルゴリズムを改変する。
【０１０９】
このように構成した第３の応用例によれば、２つの動作選択部１１Ｃ，１２Ｃが異なる方策に基づいて異なるチャット相手を選択して提案（ユーザ端末８００Ｃのディスプレイ２００Ｃに表示）した場合におけるユーザの反応に応じた指標値を用いて、当該２つの動作選択部１１Ｃ，１２Ｃが協調してチャット相手の選択に関するアルゴリズムの強化学習を行うことができる。これにより、チャット相手の選択（提案）をユーザのチャットコンテンツ閲覧状況に応じて選択する際の方策を強化学習によって更新していく場合において、ユーザの状況に応じた的確なチャット相手（双方の同意が得られやすいチャット相手）を提案できるようになるまでの学習のスピードを向上させることができる。
【０１１０】
＜他の実施形態＞
次に、本発明の他の実施形態を図面に基づいて説明する。以下に述べる他の実施形態は、第１の動作選択部１１および第２の動作選択部１２が協調してアルゴリズムを学習する際の協調度を更に高めるようにしたものである。
【０１１１】
図７は、他の実施形態による強化学習システム１００’の機能構成例を示すブロック図である。なお、この図７において、図１に示した符号と同一の符号を付したものは同一の機能を有するものであるので、ここでは重複する説明を省略する。図１に示すように、他の実施形態による強化学習システム１００’は、第１の動作選択部１１および第２の動作選択部１２に代えて、第１の動作選択部１１’および第２の動作選択部１２’を備えている。
【０１１２】
第１の動作選択部１１’は、第１の方策に基づいて第１の動作を選択する際に、第２の動作選択部１２’から改変前の第２の方策に基づいて選択された第２の動作に関する情報を取得し、当該取得した第２の動作が選択候補のより上位となるように第１の方策を改変した上で、改変後の第１の方策に基づいて第１の動作を選択する。第２の動作に関する情報とは、どのような動作が選択されたかを示す動作内容の情報である。また、第２の動作が選択候補のより上位となるように第１の方策を改変するとは、必ずしも第２の動作が選択されるように第１の方策を改変するという意味ではなく、第１の方策を改変しない場合と比べて、第２の動作が選択候補のより上位となるようにするという意味である。よって、第１の方策が改変される前に選択される第１の動作が第２の動作より依然として上位となる場合もあれば、その逆になる場合もある。
【０１１３】
第２の動作選択部１２’は、第２の方策に基づいて第２の動作を選択する際に、第１の動作選択部１１’から改変前の第１の方策に基づいて選択された第１の動作に関する情報を取得し、当該取得した第１の動作が選択候補のより上位となるように第２の方策を改変した上で、改変後の第２の方策に基づいて第２の動作を選択する。第１の動作に関する情報とは、どのような動作が選択されたかを示す動作内容の情報である。また、第１の動作が選択候補のより上位となるように第２の方策を改変することの意味は、第２の動作が選択候補のより上位となるように第１の方策を改変することの意味と同様である。
【０１１４】
例えば、第１の動作選択部１１’および第２の動作選択部１２’は、まず、それぞれ第１の方策および第２の方策を改変することなく第１の動作および第２の動作を選択する。この動作は、図１に示した第１の動作選択部１１および第２の動作選択部１２の動作と同じである。
【０１１５】
次いで、第１の動作選択部１１’は、第２の動作選択部１２’から改変前の第２の方策に基づいて選択された第２の動作に関する情報を取得し、当該取得した第２の動作が選択候補のより上位となるように第１の方策を改変した上で、改変後の第１の方策に基づいて第１の動作を再度選択する。
【０１１６】
同様に、第２の動作選択部１２’は、第１の動作選択部１１’から改変前の第１の方策に基づいて選択された第１の動作に関する情報を取得し、当該取得した第１の動作が選択候補のより上位となるように第２の方策を改変した上で、改変後の第２の方策に基づいて第２の動作を再度選択する。
【０１１７】
このように、第１の動作選択部１１’および第２の動作選択部１２’は、互いに相手の方策を取り入れながら第１の動作および第２の動作を選択する。このため、第１の動作選択部１１’および第２の動作選択部１２’が協調して動作選択のアルゴリズムを学習する際の協調度を高めることができ、学習のスピードを更に向上させることができる。
【０１１８】
なお、ここでは動作の再選択を１回のみ行うようにしたが、２回以上繰り返し行うようにしてもよい。例えば、再選択を２回繰り返す場合、第１の動作選択部１１’は、第２の動作選択部１２’から２回目の改変前（＝１回目の改変後）の第２の方策に基づいて選択された第２の動作に関する情報を取得し、当該取得した第２の動作が選択候補のより上位となるように第１の方策を再度改変した上で、再度改変後の第１の方策に基づいて第１の動作を再度選択する。
【０１１９】
同様に、第２の動作選択部１２’は、第１の動作選択部１１’から２回目の改変前（＝１回目の改変後）の第１の方策に基づいて選択された第１の動作に関する情報を取得し、当該取得した第１の動作が選択候補のより上位となるように第２の方策を再度改変した上で、再度改変後の第２の方策に基づいて第２の動作を再度選択する。
【０１２０】
なお、第１の動作選択部１１’および第２の動作選択部１２’は、所定の条件を満たす場合にのみ、互いに相手の方策を取り入れながら第１の動作および第２の動作を選択するようにしてもよい。取り入れる相手の方策が必ずしも的確なものとは限らないからである。すなわち、第１の動作選択部１１’および第２の動作選択部１２’は、相手の方策が、取り入れるものとして妥当性を有するものか否かを所定の条件に基づき判定し、所定の条件を満たす場合にのみ、相手の方策を取り入れて自身の方策の改変を行うようにしてもよい。
【０１２１】
例えば、報酬決定部１５は、第１の動作選択部１１’および第２の動作選択部１２’に与えるものとして決定した報酬の履歴を管理する。そして、第１の動作選択部１１’は、第２の動作選択部１２’に与えるものとして報酬決定部１５により決定された報酬の履歴が所定の条件を満たしている場合に限り、第２の動作選択部１２’から取得した第２の動作が選択候補のより上位となるように第１の方策を改変する。この場合における所定の条件とは、例えば、無報酬またはマイナスの報酬が与えられている頻度が所定頻度以下という条件である。あるいは、プラスの報酬が与えられている頻度が所定頻度以上という条件としてもよい。
【０１２２】
また、第２の動作選択部１２’は、第１の動作選択部１１’に与えるものとして報酬決定部１５により決定された報酬の履歴が所定の条件を満たしている場合に限り、第１の動作選択部１１’から取得した第１の動作が選択候補のより上位となるように第２の方策を改変する。この場合における所定の条件も、例えば、無報酬またはマイナスの報酬が与えられている頻度が所定頻度以下という条件である。あるいは、プラスの報酬が与えられている頻度が所定頻度以上という条件としてもよい。
【０１２３】
このようにすれば、第１の動作選択部１１’および第２の動作選択部１２’が互いに相手の方策を取り入れながら自身の方策を改変する際に、自身の方策が改悪されてしまうことを防止することができる。
【０１２４】
なお、第１の動作選択部１１’は、第２の動作選択部１２’に与えるものとして報酬決定部１５により決定された報酬の履歴が、無報酬またはマイナスの報酬が与えられている頻度が所定頻度以上であることを示している場合に、第２の動作選択部１２’から取得した第２の動作が選択候補のより下位となるように第１の方策を改変するようにしてもよい。
【０１２５】
同様に、第１の動作選択部１２’は、第１の動作選択部１１’に与えるものとして報酬決定部１５により決定された報酬の履歴が、無報酬またはマイナスの報酬が与えられている頻度が所定頻度以上であることを示している場合に、第１の動作選択部１１’から取得した第１の動作が選択候補のより下位となるように第２の方策を改変するようにしてもよい。
【０１２６】
図７に示す強化学習システム１００’では、第１の動作選択部１１’および第２の動作選択部１２’の協調動作として、以下のような動作も実行する。上述の例では、第１の動作選択部１１’および第２の動作選択部１２’がそれぞれ第１の動作および第２の動作を選択する際に協調動作するものであった（以下、これを提示前協調動作という）。これ対し、以下に説明する動作は、第１の動作選択部１１’および第２の動作選択部１２’がそれぞれ第１の動作および第２の動作を選択してユーザに提示し、それに対するユーザの反応に応じて報酬が決定された後に、その報酬を利用して協調動作するものである（以下、これを提示後協調動作という）。
【０１２７】
提示後協調動作に関して、第１の動作選択部１１’は、第１の方策に基づいて選択した第１の動作に対して報酬決定部１５により決定された報酬と、第２の動作選択部１２’により第２の方策に基づいて選択された第２の動作に関する情報および当該第２の動作に対して報酬決定部１５により決定された報酬とを取得する。そして、第１の動作選択部１１’は、自ら選択した第１の動作に関して報酬決定部１５により第１の動作選択部１１’に与えるものとして決定された報酬と、第２の動作選択部１２’により選択された第２の動作に関して報酬決定部１５により第２の動作選択部１２’に与えるものとして決定された報酬とに応じて、第１の方策を改変する。
【０１２８】
例えば、第１の動作選択部１１’は、自ら選択した第１の動作に関してプラスの報酬が与えられ、第２の動作選択部１２’により選択された第２の動作に関して与えられる報酬が無報酬またはマイナスの報酬であった場合、同じ状況下で第１の動作がその後も選択されやすくなり、かつ、第２の動作がその後は選択されにくくなるように第１の方策を改変する。逆に、第２の動作選択部１２’により選択された第２の動作に関してプラスの報酬が与えられ、自ら選択した第１の動作に関して与えられる報酬が無報酬またはマイナスの報酬であった場合、同じ状況下で第２の動作がその後も選択されやすくなり、かつ、第１の動作がその後は選択されにくくなるように第１の方策を改変する。
【０１２９】
同様に、第２の動作選択部１２’は、第２の方策に基づいて選択した第２の動作に対して報酬決定部１５により決定された報酬と、第１の動作選択部１１’により第１の方策に基づいて選択された第１の動作に関する情報および当該第１の動作に対して報酬決定部１５により決定された報酬とを取得する。そして、第２の動作選択部１２’は、自ら選択した第２の動作に関して報酬決定部１５により第２の動作選択部１２’に与えるものとして決定された報酬と、第１の動作選択部１１’により選択された第１の動作に関して報酬決定部１５により第１の動作選択部１１’に与えるものとして決定された報酬とに応じて、第２の方策を改変する。
【０１３０】
例えば、第２の動作選択部１２’は、自ら選択した第２の動作に関してプラスの報酬が与えられ、第１の動作選択部１１’により選択された第１の動作に関して与えられる報酬が無報酬またはマイナスの報酬であった場合、同じ状況下で第２の動作がその後も選択されやすくなり、かつ、第１の動作がその後は選択されにくくなるように第２の方策を改変する。逆に、第１の動作選択部１１’により選択された第１の動作に関してプラスの報酬が与えられ、自ら選択した第２の動作に関して与えられる報酬が無報酬またはマイナスの報酬であった場合、同じ状況下で第１の動作がその後も選択されやすくなり、かつ、第２の動作がその後は選択されにくくなるように第２の方策を改変する。
【０１３１】
このように、第１の動作選択部１１’および第２の動作選択部１２’は、互いに相手に対して与えられた報酬の結果を取り入れながら第１の方策および第２の方策を改変する。このため、第１の動作選択部１１’および第２の動作選択部１２’が協調して動作選択のアルゴリズムを学習する際の協調度を高めることができ、学習のスピードを更に向上させることができる。
【０１３２】
なお、以上に説明した提示前協調動作と提示後協調動作は、両方を行うようにしてもよいし、何れか一方のみを行うようにしてもよい。
【０１３３】
以上、２つの実施形態および３つの応用例を説明したが、これらは何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【０１３４】
例えば、上記３つの応用例では、動作実行装置２００の一例として、何れも画像表示という動作を実行するディスプレイを挙げて説明したが、音声出力という動作を実行するスピーカや、様々な動きをするロボットを動作実行装置２００として用いる場合にも応用できることは言うまでもない。また、動作実行装置２００は、これ以外の装置であってもよい。例えば、振動出力という動作を実行するバイブレータ、香り成分を含んだ液体等の噴霧という動作を実行する噴霧装置などであってもよい。
【０１３５】
また、上記実施形態では、２つの動作選択部１１，１２（１１’，１２’）が協調して動作実行装置２００の動作を選択する際のアルゴリズムを学習する例について説明したが、３つ以上の動作選択部が協調して動作選択のアルゴリズムの学習を行うようにしてもよい。
【符号の説明】
【０１３６】
１０  状況検出部
１１，１１’  第１の動作選択部
１２，１２’  第２の動作選択部
１３  動作提示部
１４  反応検出部
１５  報酬決定部
１００  強化学習システム
２００  動作実行装置
【図１】
2019185201.tif 000003
【図２】
2019185201.tif 000004
【図３】
2019185201.tif 000005
【図４】
2019185201.tif 000006
【図５】
2019185201.tif 000007
【図６】
2019185201.tif 000008
【図７】
2019185201.tif 000009