(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024162146
(43)【公開日】2024-11-21
(54)【発明の名称】多主体調停システム、多主体調停方法
(51)【国際特許分類】
G06Q 10/04 20230101AFI20241114BHJP
G06Q 50/10 20120101ALI20241114BHJP
【FI】
G06Q10/04
G06Q50/10
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2023077415
(22)【出願日】2023-05-09
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110002365
【氏名又は名称】弁理士法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】犬塚 翔太
(72)【発明者】
【氏名】寺本 やえみ
【テーマコード(参考)】
5L010
5L049
5L050
【Fターム(参考)】
5L010AA04
5L049AA04
5L049CC11
5L050CC11
(57)【要約】
【課題】全体指標および個別指標の両方を考慮した複数主体の意思決定を算出し、提案として各主体に提示できる。
【解決手段】多主体調停システムは、少なくとも1つの全体指標である対象全体指標、および少なくとも1つの個別指標である対象個別指標に影響を与える複数主体の意思決定を調停する多主体調停システムであって、複数主体のそれぞれから入力される複数主体の観測である主体データと、対象全体指標および対象個別指標のそれぞれに対応する評価関数に基づいて複数主体のそれぞれの意思決定を算出し、複数主体のそれぞれに意思決定を提案する意思決定算出部を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
少なくとも1つの全体指標である対象全体指標、および少なくとも1つの個別指標である対象個別指標に影響を与える複数主体の意思決定を調停する多主体調停システムであって、
前記複数主体のそれぞれから入力される前記複数主体の観測である主体データと、前記対象全体指標および前記対象個別指標のそれぞれに対応する評価関数に基づいて前記複数主体のそれぞれの意思決定を算出し、前記複数主体のそれぞれに前記意思決定を提案する意思決定算出部を備える多主体調停システム。
【請求項2】
請求項1に記載の多主体調停システムであって、
現在時刻における前記複数主体の前記意思決定、および前記現在時刻における前記主体データに基づき、次の時刻における前記主体データを算出する環境モデルと、
前記評価関数、前記現在時刻における前記主体データ、および前記環境モデル、前記提案の根拠である提案根拠を算出し、前記複数主体のそれぞれに前記提案根拠を提示する提案根拠算出部をさらに備える、多主体調停システム。
【請求項3】
請求項1に記載の多主体調停システムであって、
前記意思決定算出部が算出した前記複数主体のそれぞれの意思決定に対して、前記複数主体に含まれる1つの主体である対象主体からの調整依頼を適用した場合の影響度を算出し、前記対象主体に前記影響度を提示する適用算出部とをさらに備える、多主体調停システム。
【請求項4】
請求項1に記載の多主体調停システムであって、
前記意思決定算出部は、前記複数主体の間で決められた公平性に関する定義を制約条件として、前記意思決定を算出する、多主体調停システム。
【請求項5】
請求項1に記載の多主体調停システムであって、
前記意思決定算出部は、前記対象全体指標、および前記対象個別指標ごとに損失関数算出時の方策を統一しつつ、Q関数を分割した強化学習により得られたパラメータを備え、当該パラメータを用いて前記意思決定を算出する、多主体調停システム。
【請求項6】
請求項5に記載の多主体調停システムであって、
前記意思決定算出部は、前記強化学習によって学習したエージェントモデルを備え、前記主体データに基づき、前記対象全体指標および前記対象個別指標を同時に向上する各主体の意思決定を算出する、多主体調停システム。
【請求項7】
請求項6に記載の多主体調停システムであって、
現在時刻における前記複数主体の前記意思決定、および前記現在時刻における前記主体データに基づき、次の時刻における前記主体データを算出する環境モデルと、
前記エージェントモデル、前記環境モデル、前記現在時刻における前記主体データ、および前記意思決定算出部が算出する前記意思決定に基づきロールアウトを実行することで、将来の時刻における前記意思決定、前記将来の時刻における前記主体データを算出し、前記Q関数を用いて前記対象全体指標および前記対象個別指標のうち少なくとも1つの指標の時系列合計値を算出する提案根拠算出部と、をさらに備える多主体調停システム。
【請求項8】
請求項6に記載の多主体調停システムであって、
前記意思決定算出部が算出した前記複数主体のそれぞれの意思決定に対して、前記複数主体に含まれる1つの主体である対象主体からの調整依頼を適用した場合の影響度を算出し、前記対象主体に前記影響度を提示する適用算出部とをさらに備える、多主体調停システム。
【請求項9】
請求項8に記載の多主体調停システムであって、
現在時刻における前記複数主体の前記意思決定、および前記現在時刻における前記主体データに基づき、次の時刻における前記主体データを算出する環境モデルをさらに備え、
適用算出部は、前記意思決定算出部が算出した前記現在時刻における前記複数主体のそれぞれの前記意思決定に対して、前記複数主体に含まれる1つの主体である対象主体からの調整依頼を適用した前記意思決定、前記エージェントモデル、前記環境モデル、および前記現在時刻における前記主体データに基づきロールアウトを実行することで、将来の時刻における前記対象全体指標および前記対象個別指標のうち少なくとも1つの指標の時系列合計値への影響を算出し、前記主体に提示する、多主体調停システム。
【請求項10】
請求項6に記載の多主体調停システムであって、
前記エージェントモデルは時系列モデルを含み、前記主体データから特徴量を抽出する、多主体調停システム。
【請求項11】
請求項6に記載の多主体調停システムであって、
前記エージェントモデルはシングルエージェントモデルであり、前記複数主体のそれぞれの前記意思決定を1つの方策モデルを用いて算出する、多主体調停システム。
【請求項12】
請求項6に記載の多主体調停システムであって、
前記エージェントモデルはマルチエージェントモデルであり、前記複数主体のそれぞれの意思決定ごとに異なる方策モデルを用いて算出する、多主体調停システム。
【請求項13】
コンピュータが実行する、少なくとも1つの全体指標である対象全体指標、および少なくとも1つの個別指標である対象個別指標に影響を与える複数主体の意思決定を調停する多主体調停方法であって、
前記複数主体のそれぞれから前記複数主体の観測である主体データを取得することと、
前記対象全体指標および前記対象個別指標のそれぞれに対応する評価関数に基づいて前記複数主体のそれぞれの意思決定を算出し、前記複数主体のそれぞれに前記意思決定を提案することと、を含む多主体調停方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、多主体調停システム、および多主体調停方法に関する。
【背景技術】
【0002】
複数の主体が同一環境で意思決定を実行し合い、各意思決定によって、環境における状態が時系列的に遷移していき、各主体の指標が各意思決定と状態遷移によって定まる。ここで、指標には、各主体に共通の指標である複数の全体指標と、各主体に特有の複数の個別指標が存在する場合を考える。この場合には、各全体指標と各個別指標は必ずしもWin-Winの関係ではなく、トレードオフの関係になっている場合も含む。全ての主体が各全体指標に対して、各個別指標よりも十分に大きい重み係数を設定していない、かつ非協力ゲームの設定の場合を仮定する。このとき、各主体は互いに各個別指標を向上し合い、各全体指標を向上できない、または一部の主体が自身の各個別指標を犠牲にしながら、各全体指標を向上し、主体間にて不公平が生じるようなナッシュ均衡に収束する。
【0003】
特許文献1には、複数のユーザ夫々の端末装置とサーバとがネットワークによって接続し、前記サーバは、複数の端末装置夫々から送信された計画を最適化し、最適化された計画を前記複数のユーザ夫々の前記端末装置に提供する、計算機システムであって、前記サーバはメモリに記載されたプログラムを実行するコントローラを備え、当該コントローラは、前記複数の端末夫々から送信された計画を評価し、当該評価の結果に基づいて、前記複数ユーザ夫々の効用関数を推定し、当該効用関数に基づいて前記複数のユーザに推奨する計画を設定し、当該推奨する計画を前記複数のユーザ夫々の端末装置に送信し、前記複数のユーザが当該推奨する計画に合意するまで、前記評価と前記推奨する計画の設定を繰り替えし、当該複数のユーザが合意した前記推奨する計画を前記最適化された計画として決定する、計算機システムが開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載されている発明では、各主体の意思決定の算出に改善の余地がある。
【課題を解決するための手段】
【0006】
本発明の第1の態様による多主体調停システムは、少なくとも1つの全体指標である対象全体指標、および少なくとも1つの個別指標である対象個別指標に影響を与える複数主体の意思決定を調停する多主体調停システムであって、前記複数主体のそれぞれから入力される前記複数主体の観測である主体データと、前記対象全体指標および前記対象個別指標のそれぞれに対応する評価関数に基づいて前記複数主体のそれぞれの意思決定を算出し、前記複数主体のそれぞれに前記意思決定を提案する意思決定算出部を備える。
本発明の第2の態様に多主体調停方法は、コンピュータが実行する、少なくとも1つの全体指標である対象全体指標、および少なくとも1つの個別指標である対象個別指標に影響を与える複数主体の意思決定を調停する多主体調停方法であって、前記複数主体のそれぞれから前記複数主体の観測である主体データを取得することと、前記対象全体指標および前記対象個別指標のそれぞれに対応する評価関数に基づいて前記複数主体のそれぞれの意思決定を算出し、前記複数主体のそれぞれに前記意思決定を提案することと、を含む。
【発明の効果】
【0007】
本発明によれば、全体指標および個別指標の両方を考慮した複数主体の意思決定を算出し、提案として各主体に提示できる。上記以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0008】
【
図6】強化学習の機能を含む多主体調停システムの構成図
【
図9】多主体調停システムのユーザーインターフェース
【
図10】多主体調停システムのユーザーインターフェース
【
図11】変形例1における多主体調停システムの構成図
【発明を実施するための形態】
【0009】
―第1の実施の形態―
以下、
図1~
図10を参照して、多主体調停システムの第1の実施の形態を説明する。
【0010】
図1は、多主体調停システム100の機能的構成図である。多主体調停システム100は、複数の主体との間で様々な情報を授受する。
図1では複数の主体を代表して主体iのみを記載しているが、実際には複数の主体が存在する。たとえば、主体1、主体2、・・・、主体|I|が存在する。主体とは、環境や他の主体に作用して影響を及ぼすものであり、システムや人間などである。それぞれの主体と多主体調停システム100との間で授受される具体的な内容は異なるがデータが意味するものは共通している。
【0011】
それぞれの主体は、データ入出力部101を介して多主体調停システム100とデータを授受する。データ入出力部101はたとえば汎用のコンピュータである。主体である人間がキーボードやマウスを用いて入力データ102をデータ入出力部101に入力すると、データ入出力部101は入力データ102をそのまま、または加工して主体データ104として多主体調停システム100に送信する。入力データ102および主体データ104には、各主体iの観測も含まれる。データ入出力部101による入力データ102に対する加工は、たとえば主体の識別子の追加である。データ入出力部101はさらに、多主体調停システム100から受領するデータを映像または音声である出力情報103として出力する。ただし主体がシステムの場合には入力データ102および出力情報103は電子データでもよい。さらに、主体がシステムの場合にはデータ入出力部101は必須の構成ではなく、主体が多主体調停システム100と各種データを直接授受してもよい。この場合には主体が多主体調停システム100に対して主体データ104を直接送信する。
【0012】
それぞれの主体は、多主体調停システム100から送信した主体データ104に対応する提案113を受領する。提案113を受領した主体は、データ入出力部101を介して追加提示要求105および意思決定調整依頼106の少なくとも一方を任意に出力してもよい。すなわちそれぞれのデータ入出力部101は、主体データ104は必ず出力するが、追加提示要求105および意思決定調整依頼106の両方を送信しない場合もあるし、いずれか一方のみを送信する場合もあるし、両方を送信する場合もある。
【0013】
多主体調停システム100は、意思決定提案システム110と、提案根拠生成システム1200と、調整依頼適用システム1300と、を備える。意思決定提案システム110は、全ての主体から主体データ104を受領すると後述する処理を行い提案113を生成して各データ入出力部101に送信する。提案根拠生成システム1200は、それぞれの主体から追加提示要求105を受領すると追加提示要求105を送信した主体を対象として後述する処理を行い将来意思1203を生成する。提案根拠生成システム1200は、生成した将来意思1203を追加提示要求105を送信した主体に対して送信する。
【0014】
調整依頼適用システム1300は、それぞれの主体から意思決定調整依頼106を受領すると意思決定調整依頼106を送信した主体を対象として後述する処理を行い将来意思1303を生成する。調整依頼適用システム1300は、生成した将来意思1303を意思決定調整依頼106を送信した主体に対して送信する。すなわち提案根拠生成システム1200および調整依頼適用システム1300は、一部の主体を対象として処理を行い、その一部の主体に対してのみデータを送信する場合がある。提案根拠生成システム1200が処理対象とする主体と、調整依頼適用システム1300が処理対象とする主体は同一の場合もあるし異なる場合もある。
【0015】
図2は、多主体調停システム100の処理を示すフローチャートである。ステップS400では、データ入出力部101から全ての主体に関する主体データ104を取得する。続くステップS401では、意思決定提案システム110はステップS400において取得した主体データ104を用いて各主体の意思決定を提案113として算出し、算出した提案113を各主体のデータ入出力部101および提案根拠生成システム1200に出力する。ステップS402では、提案根拠生成システム1200は、ステップS401にて算出された提案113に基づき提案根拠1237を算出し、各主体のデータ入出力部101に送信する。さらに意思決定提案システム110は、全主体の提案根拠1237を調整依頼適用システム1300に出力してステップS403に進む。
【0016】
ステップS403では、提案根拠生成システム1200は、それぞれの主体からさらに将来の根拠提示要求があるか否かを判断する。提案根拠生成システム1200は、いずれかの主体からさらに将来の根拠提示要求を受ける場合にはステップS404に進み、全ての主体からさらに将来の根拠提示要求を受けない場合にはステップS405に進む。ステップS404では提案根拠生成システム1200は、要求があった主体に関するさらに将来の提案根拠1237を算出して、その要求があった主体のデータ入出力部101に送信し、ステップS403に戻る。
【0017】
ステップS405では調整依頼適用システム1300は、いずれかの主体から意思決定調整依頼106があるか否かを判断する。調整依頼適用システム1300は、いずれかの主体から意思決定調整依頼106がある場合にはステップS406に進み、いずれの主体からも意思決定調整依頼106がない場合には
図2に示す処理を終了する。ステップS406では調整依頼適用システム1300は、各主体からの意思決定調整依頼106に基づいて、依頼された調整を適用した場合の影響を算出し、各主体のデータ入出力部101に出力し、ステップS405に戻る。
【0018】
図3は、意思決定提案システム110の機能的構成を表すブロック図である。意思決定提案システム110は、各主体に提案する意思決定を算出する。意思決定提案システム110は、意思決定算出部111および、環境の挙動をモデリングした環境モデル112を有する。
【0019】
意思決定算出部111は、少なくとも1つずつの全体指標および個別指標のそれぞれを算出可能な評価関数を有する。複数の指標を統合して全体として1つの評価値を算出するのではなく、意思決定算出部111は各指標を別々に算出する。本実施の形態では、評価指標を別々に算出するこれらの評価関数を、「複数の全体指標と複数の個別指標ごとに分割された評価関数」とも呼ぶ。意思決定算出部111における評価関数jとは、分割された評価関数のj番目の評価関数である。評価関数jは、公平性に関する制約条件のペナルティ関数も指標として含む場合がある。
【0020】
意思決定提案システム110は、各データ入出力部101を経由して得られる各主体iの情報である主体データ104と、意思決定算出部111内の分割された各評価関数jとに基づいて、提案113を算出するアルゴリズムを有する。このアルゴリズムは、先行技術文献のような数理最適化を用いてもよいし、後述するような強化学習を用いてもよい。このアルゴリズムによって算出された提案113は、データ入出力部101を経由して、主体iに出力情報103として表示される。
【0021】
意思決定算出部111内のアルゴリズムが数理最適化に基づくものである場合は、各時刻の提案113が環境モデル112に入力される。環境モデル112は、あらかじめ作成されたモデルである。環境モデル112は、現在時刻(たとえば時刻t0)における提案113および各主体iの主体データ104が入力されると、次の時刻(たとえば時刻t1)における環境の状態である環境状態115、および次の時刻における各主体iの観測である主体観測116を出力する。意思決定算出部111内のアルゴリズムが数理最適化に基づくものである場合は、意思決定算出部111内のアルゴリズムは、提案113を算出するために、環境モデル112が出力する次の時刻における環境状態115、および次の時刻における各主体iの主体観測116を利用する。
【0022】
図4は、提案根拠生成システム1200の機能的構成を表すブロック図である。以下では、現在の時刻を時刻t0とし、将来の時刻を時刻t1、t2、・・として説明する。提案根拠生成システム1200は、意思決定提案システム110が算出した時刻t0における提案113の根拠を算出する。提案根拠生成システム1200は、提案根拠算出部1201を有し、環境の挙動をモデリングした環境モデル1202を有する。ただし環境モデル1202は、
図3に示した環境モデル112と同様の構成を有する。提案根拠算出部1201は、意思決定算出部111と同様に評価関数jを有する。また、評価関数jは、公平性に関する制約条件のペナルティ関数も指標として含む場合がある。提案根拠算出部1201は意思決定算出部111と同様のアルゴリズムを有する。
【0023】
提案根拠算出部1201には、各データ入出力部101を経由して得られる時刻t0の主体データ104と、意思決定算出部111が算出した時刻t0の提案113と、環境モデル1202から出力される各時刻の環境状態1209、各時刻における各主体iの観測である主体観測1210とが入力される。提案根拠算出部1201は、評価関数jを用いて、将来予定されている意思決定である将来意思1203を算出し、算出した将来意思1203を環境モデル1202に入力する。
【0024】
将来意思1203は、意思決定提案システム110が算出する提案113と同種の情報であり、対象とする時間軸が異なる。すなわち、提案113は現在時刻である時刻t0における最適な意思決定であり、将来意思1203は将来である時刻t1、t2、・・における最適な意思決定である。提案113および将来意思1203は、多主体調停システム100により時刻t0に算出される点は共通し、どの時刻を対象とするかが異なる。
【0025】
環境モデル1202には、提案根拠算出部1201が算出した各時刻における各主体の意思決定である提案1208、および各主体iの主体データ104が入力される。環境モデル1202は、次の時刻における環境の状態である環境状態1209、および次の時刻における各主体iの観測である主体観測1210を算出して提案根拠算出部1201に出力する。環境モデル1202は、次の時刻における主体観測1210を自らが算出済みなので、これを主体データ104の代わりとして用いる。換言すると、主体データ104は主体観測1210の初期値として用いられる。このように、提案根拠算出部1201と環境モデル1202が連携することで、将来の時刻における環境と最適な意思決定が次々に計算される。
【0026】
提案根拠算出部1201は、評価関数jと、算出した将来意思1203と、環境モデル1202が算出した各時刻の環境状態1209と、に基づき、将来の各時刻における主体iに関する指標である将来指標1205を算出する。提案根拠算出部1201は、算出した将来指標1205に基づき、将来における公平性に関する制約条件で定めた公平性に関する状態である公平状態1206、将来の各時刻における各指標ごとの時系列の合計値である時系列合計値1207、および将来の各時刻における各指標ごとの時系列合計値1207を算出する。
【0027】
以下では、提案根拠算出部1201が算出した将来意思1203、将来指標1205、公平状態1206、および時系列合計値1207と、環境モデル1202が算出した主体観測1210とをまとめて提案根拠1237と呼ぶ。提案根拠算出部1201は提案根拠1237を各主体iのデータ入出力部101に送信する。データ入出力部101は、受信したデータを出力情報103として主体iに提示する。主体iは、将来意思1203、将来指標1205、公平状態1206、時系列合計値1207、および主体観測1210を参照して、現在の提案された意思決定を受け入れるかを判断できる。
【0028】
なお提案根拠生成システム1200は、将来意思1203および主体観測1210は全ての主体について算出するが、将来指標1205、公平状態1206、および時系列合計値1207は算出が必要な主体iの分だけ算出してもよい。また、それぞれのデータ入出力部101に送信する提案根拠1237には他の主体iに関するデータは含めなくてもよい。
【0029】
主体iは、データ入出力部101を経由して、提案根拠生成システム1200に対して追加提示要求105を送信できる。提案根拠生成システム1200は、主体iから追加提示要求105を受信すると、さらに将来の時刻における提案根拠1237を算出して、追加提示要求105を送信したデータ入出力部101に送信する。ただし、それぞれの追加提示要求105には主体iの識別子が含まれるか、追加提示要求105を送信したデータ入出力部101の識別子を用いて対応する主体iを特定可能であるとする。追加提示要求105は、少なくとも特定の主体iが追加のデータを要求していることを明示するデータであればよい。
【0030】
なお提案根拠生成システム1200は、特段の指示を受けることなく、所定の将来時刻までのデータを算出して送付してもよい。たとえば意思決定提案システム110が時刻t0の提案113を算出した際に、提案根拠生成システム1200は時刻t0の提案根拠1237のみを算出してもよいし、時刻t0~t2の提案根拠1237を算出してもよい。提案根拠生成システム1200が特段の指示を受けることなく算出した提案根拠1237は全てのデータ入出力部101に対して送信され、追加提示要求105を受信して算出した提案根拠1237はその追加提示要求105を送信したデータ入出力部101に対して送信される。
【0031】
図5は、調整依頼適用システム1300の機能的構成を表すブロック図である。調整依頼適用システム1300は、意思決定調整依頼106を受信すると動作する。意思決定調整依頼106は、主体iがデータ入出力部101を用いて調整依頼適用システム1300に対して送信する。意思決定調整依頼106には、特定の主体iが希望する値が含まれる。たとえば特定の主体iに決定権がある価格の単価について、提案113は「5ドル」であった場合にたとえば意思決定調整依頼106には調整事項として異なる価格である「8ドル」などが含まれる。調整依頼適用システム1300は、意思決定調整依頼106に含まれる調整事項を反映した場合に、各提案根拠に与える影響度1337を算出する。ただし複数の主体iから意思決定調整依頼106を受信した場合でも、調整依頼適用システム1300における演算は主体iごとに独立して行われる。すなわち調整依頼適用システム1300は、算出対象の主体i以外は、提案113の値を用いて演算を行う。
【0032】
調整依頼適用システム1300は、適用算出部1301、差分計算部1311、および環境モデル1302を有する。適用算出部1301は、意思決定算出部111と同様に評価関数jを有する。また、各評価関数は、公平性に関する制約条件のペナルティ関数も指標として含む場合がある。適用算出部1301は意思決定算出部111および提案根拠算出部1201と同様のアルゴリズムを有する。環境モデル1302は、
図3に示した環境モデル112および
図4に示した環境モデル1202と同様の構成を有し、同様の動作を行う。
【0033】
適用算出部1301は、提案根拠算出部1201と同様に、それぞれの時刻における将来意思1303、将来指標1305、公平状態1306、時系列合計値1307を算出する。適用算出部1301の提案根拠算出部1201との違いは、現在時刻である時刻t0を対象とする演算である。具体的には、適用算出部1301は提案根拠算出部1201と同様に時刻t0における各主体の理想的な意思決定を算出するが、処理対象の主体iの意思決定のみ受信した意思決定調整依頼106の値を用いる。適用算出部1301の時刻t1以降に関する計算は提案根拠算出部1201と同様である。
【0034】
図4と
図5の対応関係は以下のとおりである。将来意思1203は将来意思1303に対応し、将来指標1205は将来指標1305に対応し、公平状態1206は公平状態1306に対応し、時系列合計値1207は時系列合計値1307に対応し、環境状態1209は環境状態1309に対応し、主体観測1210は主観観測1310に対応する。これら対応関係における相違点は、将来意思1303の時刻t0における算出対象の主体iに関する意思決定が算出されたものではなく、主体iの希望する意思決定調整依頼106に含まれる値である点で将来意思1203と異なる。この相違点に起因して、将来指標1305、公平状態1306、時系列合計値1307、環境状態1309、および主観観測1310の具体的な値は将来指標1205、公平状態1206、時系列合計値1207、環境状態1209、および主体観測1210と異なる。差分計算部1311は、適用算出部1301が算出した時系列合計値1307と、提案根拠生成システム1200が算出した時系列合計値1207の差分を依頼差分1312として算出する。
【0035】
以下では、主観観測1310が算出した将来意思1303、将来指標1305、公平状態1306、および時系列合計値1307と、環境モデル1302が算出した主観観測1310と、差分計算部1311が算出した依頼差分1312とをまとめて、影響度1337と呼ぶ。調整依頼適用システム1300は、影響度1337を意思決定調整依頼106を送信したデータ入出力部101に送信する。データ入出力部101は、受信した影響度1337を出力情報103として出力する。各主体iは、影響度1337を参照して、意思決定提案システム110から出力された提案113を受け入れるか否かを判断できる。
【0036】
図6は、意思決定提案システム110、提案根拠生成システム1200、および調整依頼適用システム1300のアルゴリズムを強化学習とした場合の、多主体調停システムの機能的構成を表すブロック図である。なお
図6では後述する学習部600は多主体調停システム100の外部に存在するが、学習部600は多主体調停システム100に内包されてもよい。意思決定提案システム110、提案根拠生成システム1200、および調整依頼適用システム1300の動作の概要はこれまで説明したとおりである。以下では主に、数理最適化ではなく強化学習を用いる場合の相違点を説明する。
【0037】
図6に示す意思決定算出部111は、分割された各評価関数jを各報酬とし、分割された各評価関数jごとに分割されたQ関数を持つエージェントモデル211を有する。エージェントモデル211におけるQ関数jとは、分割された各Q関数のj番目のQ関数である。エージェントモデル211は、分割された各Q関数jに基づいたQ学習、または、Actor-Criticによる強化学習である。
【0038】
図6の意思決定提案システム110は、エージェントモデル211がQ学習の場合には、学習部600から同期されるパラメータ601と、データ入出力部101から得られる主体データ104に含まれる環境の状態s(t)とに基づいて、エージェントモデルの数式1に基づき、提案する各主体の意思決定である提案113を算出する。またここで、環境の状態の代わりに、後述する各主体iの観測を入力としてもよい。
【0039】
【0040】
ここで、数式1におけるa1、a2、・・、a|I|は各主体の意思決定、cjは評価関数jに対する重み係数、QjはQ関数j、Jは分割された評価関数jの集合である。算出された各主体の意思決定である提案113は、データ入出力部101を経由して、主体iに出力情報103として表示される。
【0041】
図6の意思決定提案システム110は、エージェントモデル211がActor-Criticの場合は、学習部600から同期されるパラメータ601と、データ入出力部101から得られる主体データ104に含まれる、環境の状態s(t)に基づいて、エージェントモデルの数式2により、提案113を算出する。またここで、環境の状態の代わりに、後述する各主体iの観測を入力としてもよい。
【0042】
【0043】
ここで、数式2のa1、a2、・・、a|I|は各主体の意思決定、πactorは条件付き確率分布で、Actorモデルの方策である。ここで、数式2において、a1、a2、・・、a|I|はπactorの平均値として算出される場合もある。算出された提案113は、データ入出力部101を経由して、主体iに出力情報103として表示される。
【0044】
図6の提案根拠生成システム1200は、エージェントモデル211と同様に、分割された各Q関数jを持つエージェントモデル221を有する。また、環境の挙動をモデリングした環境モデル1202を有する。エージェントモデル221は、分割された各Q関数jに基づいた、Q学習、または、Actor-Criticによる強化学習である。
【0045】
図6の提案根拠生成システム1200は、エージェントモデル221がQ学習の場合は、各時刻tにおけるエージェントモデル221の数式1によるロールアウトを実行する。このロールアウトには、学習部600から同期されるパラメータ601と、データ入出力部101から得られる主体データ104に含まれる環境の状態s(t)と、算出された提案113と、分割された各評価関数jと、環境モデル1202と、が用いられる。なお、環境の状態の代わりに、後述する各主体iの観測を入力としてもよい。
【0046】
ここでロールアウトとは、以下の一連の計算を意味する。ある時刻の環境の状態に基づき、各主体の意思決定を算出し、環境モデルに入力することで、次の時刻の環境の状態、各主体の観測が出力される。算出された次の時刻の環境の状態に基づき、分割された各評価関数jによって、各指標を算出し、場合によっては公平性に関する状態も算出する。以後次の時刻の環境の状態に基づき、同様の計算を繰り返すことで、各時刻における、各主体の意思決定、環境の状態、各主体の観測、各指標、公平性に関する状態を算出する。
【0047】
図6の提案根拠生成システム1200は、エージェントモデル221がActor-Criticの場合は、各時刻tにおけるエージェントモデル221の数式2によるロールアウトを実行する。このロールアウトには、学習部600から同期されるパラメータ601と、データ入出力部101から得られる主体データ104に含まれる環境の状態s(t)と、算出された提案113と、分割された各評価関数jと、環境モデル1202と、が用いられる。なお、環境の状態の代わりに、後述する各主体iの観測を入力としてもよい。
【0048】
図6の提案根拠生成システム1200は、ロールアウトにより、将来意思1203、将来指標1205、公平状態1206、および主体観測1210を算出する。
図6の提案根拠生成システム1200は、分割された各Q関数jを、時刻ごとの各指標ごとの時系列合計値である時系列合計値1207、として算出する。提案根拠生成システム1200は、算出した提案根拠1237をデータ入出力部101に出力する。データ入出力部101は、受信した提案根拠1237を主体iに出力情報103として表示する。主体iは提案根拠1237に基づいて、現在の提案された意思決定を受け入れるか否かを判断できる。
【0049】
提案根拠生成システム1200は、主体iから追加提示要求105を受信すると、ロールアウトによりさらに将来の提案根拠1237を算出し、その主体iに対応するデータ入出力部101に送信する。主体iは、さらに将来の情報に基づいて、現在の提案された意思決定を受け入れるか否かを判断できる。
【0050】
図6の調整依頼適用システム1300は、エージェントモデル211と同様に、分割された各Q関数jを持つエージェントモデル231、および環境の挙動をモデリングした環境モデル1302を有する。さらに調整依頼適用システム1300は、意思決定調整依頼106を適用した場合の影響度1337を算出するための差分計算部1311を有する。エージェントモデル231は、分割された各Q関数jに基づいた、Q学習、または、Actor-Criticによる強化学習である。
【0051】
図6の調整依頼適用システム1300は、エージェントモデル231がQ学習の場合は、各時刻tにおけるエージェントモデル231の数式1によるロールアウトの実行にあたって次のデータを用いる。すなわち調整依頼適用システム1300は、学習部600から同期されるパラメータ601と、データ入出力部101から得られる主体データ104に含まれる環境の状態s(t)と、分割された各評価関数jと、環境モデル1302と、を用いる。なお、環境の状態の代わりに、後述する各主体iの観測を入力としてもよい。
【0052】
図6の調整依頼適用システム1300は、エージェントモデル231がActor-Criticの場合は、数式2により各時刻tにおけるエージェントモデル231のロールアウトを実行する。この実行には、学習部600から同期されるパラメータ601と、データ入出力部101から得られる主体データ104に含まれる環境の状態s(t)と、分割された各評価関数jと、環境モデル1302と、が用いられる。なお、環境の状態の代わりに、後述する各主体iの観測を入力としてもよい。
【0053】
図6の調整依頼適用システム1300は、主体iからの意思決定調整依頼106と、学習部600から同期されるパラメータ601と、各データ入出力部101を経由して得られる、主体データ104に含まれる環境の状態s(t)とに基づいて、分割された各Q関数jを時系列合計値1307として算出する。差分計算部1311は、
図5を参照して説明したように、提案根拠生成システム1200により算出された時系列合計値1207と、適用算出部1301により算出された時系列合計値1307との差を依頼差分1312として算出する。
【0054】
図7は、学習部600の機能的構成を表すブロック図である。学習部600は、パラメータ管理部240と、データ採集部250と、データ格納部260と、を備える。パラメータ管理部240は、エージェントモデルの各パラメータの更新、パラメータの保持、および
図6の各エージェントモデルに対してパラメータ601を同期する。
【0055】
パラメータ管理部240は、エージェントモデル211などと同様に、分割された各Q関数jを持つエージェントモデル241を有する。パラメータ管理部240は、データ格納部260から得られるデータセット603に基づき、各パラメータを更新する。パラメータ管理部240は、各パラメータの更新にて、各エージェントモデルがQ学習の場合は、数式3における損失関数Ljを最小化するように、エージェントモデル241内の各Q関数のパラメータを更新する。
【0056】
【0057】
ここで、数式3のa1、a2、・・、a|I|は各主体の意思決定、Qjはエージェントモデル241内のQ関数j、rjはデータセット603より得られる分割された評価関数jによる報酬、γは割引率、Qtarget
jはエージェントモデル241内のQ関数jに対応するターゲットネットワーク、Jは分割された評価関数jの集合、cjは評価関数jに対する重み係数である。パラメータ管理部240は、各パラメータの更新において、各エージェントモデルがActor-Criticの場合は、数式4の損失関数Ljを最小化するように、エージェントモデル241内の各CriticモデルのQ関数のパラメータを更新する。
【0058】
【0059】
ここで、数式4のa1、a2、・・、a|I|は各主体の意思決定、Qjはエージェントモデル241内のQ関数j、rjはデータセット603より得られる分割された評価関数jによる報酬、γは割引率、Qtarget
jはエージェントモデル241内のQ関数jに対応するターゲットネットワーク、πactorは条件付き確率分布で、Actorモデルの方策である。Actorモデルの学習は、Actor-Criticの種類に応じて適切に学習する。
【0060】
データ採集部250は意思決定算出部251、環境の挙動をモデリングした環境モデル252を有する。意思決定算出部251は、分割された各評価関数jを有し、
図6のエージェントモデル211などと同様に、分割された各Q関数jを持つエージェントモデル253を有する。
【0061】
データ採集部250は、エージェントモデル253と環境モデル252によるシミュレーションにより、環境の状態、各主体の意思決定、および分割された各評価関数jによって算出される各報酬、を遷移データとして採集し、データ格納部260に格納する。またここで、環境の状態ではなく、後述する各主体iの観測としてもよい。
【0062】
データ採集部250は、エージェントモデル253がQ学習の場合は、パラメータ管理部240から同期されるパラメータ601に基づき、環境モデル252から出力される環境の状態254であるs(t)から、数式5によって各主体の意思決定255であるa(t)を算出し、環境モデル252に入力する。またここで、環境の状態254の代わりに、後述する各主体iの観測256を入力としてもよい。
【0063】
【0064】
ここで、数式5のa1、a2、・・、a|I|は各主体の意思決定、Cjは評価関数jに対する重み係数、Qjはエージェントモデル253内のQ関数j、Jは分割された評価関数jの集合、εは0から1までの実数である。環境モデル252から次の時刻の環境の状態254であるs(t+1)、及び次の時刻の各観測256が算出され、意思決定算出部251内の分割された各評価関数jによって、各報酬が算出される。以後これを繰り返すことで、遷移データ602として採集し、データ格納部260に格納する。
【0065】
データ採集部250は、エージェントモデル253がActor-Criticの場合は、パラメータ管理部240から同期されるパラメータ601、環境モデル252から出力される環境の状態254であるs(t)、および数式2を用いて各主体の意思決定255であるa(t)を算出し、環境モデル252に入力する。なお、環境の状態254の代わりに、後述する各主体iの観測256を入力としてもよい。環境モデル252は、次の時刻の環境の状態254であるs(t+1)、および次の時刻の各観測256を算出し、意思決定算出部251内の分割された各評価関数jによって、各報酬が算出される。以後これを繰り返すことで、遷移データ602として採集し、データ格納部260に格納する。
【0066】
データ格納部260は、データ採集部250から格納される遷移データ602を保存する。またデータ格納部260は、パラメータ管理部240の各パラメータ更新時には、保存されている遷移データ602からデータセット603を作成し、パラメータ管理部240に出力する。
【0067】
各エージェントモデルは環境の状態を入力として扱ってきたが、環境の状態の代わりに、各主体iの観測を入力としてもよい。また、その観測は情報の秘匿性などにより、一部マスクされていてもよい。また、各エージェントモデルが適宜RNN(Recurrent Neural Network)などの時系列モデルを用いることで、過去の各観測情報から特徴量を抽出し、各Q関数をモデル化、またはActorモデルをモデル化してもよい。この時系列モデル化により、多主体調停システム100が全ての情報にアクセスできない場合でも、過去のアクセスできる各観測情報から特徴量を抽出することで、提案113や提案根拠1237を算出できる。
【0068】
各エージェントモデルは、方策を1つにまとめたシングルエージェント強化学習で解く場合もあれば、必要に応じて各意思決定ごとに方策を分割するマルチエージェント強化学習で解く場合もある。マルチエージェント強化学習で解く際には、必要に応じてエージェント間で、コミュニケーションをとってもよい。
【0069】
なお、前述の数式1~数式5はシングルエージェントモデルを採用する場合の数式である。エージェントモデルにマルチエージェントを採用する場合には、数式1~数式5を次の数式6~数式10に置き換えればよい。ただし数式6~数式8、数式10は、ある主体について記載しているので、他の主体について算出する場合には、a1をa2、a3、・・、a|I|に変更して算出する。
【0070】
【0071】
【0072】
【0073】
【0074】
【0075】
図8は、多主体調停システム100のハードウエア構成を表すブロック図である。多主体調停システム100は、サーバ310と、複数の端末装置320とを備える。サーバ310は、コントローラ311およびサーバ通信装置312を備える。コントローラ311は、意思決定提案システム110、提案根拠生成システム1200、および調整依頼適用システム1300を備える。コントローラ311は、不図示の中央演算装置であるCPU、ROM、およびRAMを備え、ROMに格納されたプログラムをRAMに展開してCPUが実行することで、意思決定提案システム110、提案根拠生成システム1200、および調整依頼適用システム1300を実現する。
【0076】
ただしCPU、ROM、およびRAMの組み合わせの代わりに書き換え可能な論理回路であるFPGA(Field Programmable Gate Array)や特定用途向け集積回路であるASIC(Application Specific Integrated Circuit)により意思決定提案システム110、提案根拠生成システム1200、および調整依頼適用システム1300が実現されてもよい。また意思決定提案システム110、提案根拠生成システム1200、および調整依頼適用システム1300は、CPU、ROM、およびRAMの組み合わせの代わりに、異なる構成の組み合わせ、たとえばCPU、ROM、RAMとFPGAの組み合わせにより実現されてもよい。
【0077】
端末装置320は、入力装置321、出力装置322、および端末通信装置323を備える。端末装置320は
図1におけるデータ入出力部101に相当する。端末装置320は、たとえば汎用のコンピュータである。端末装置320は、各主体iごとに存在される。端末装置320は、主体iが入力装置321を用いて入力した情報を、端末通信装置323およびネットワーク330を経由して、サーバ310に送信する。
【0078】
サーバ310は、入力された各主体の情報に基づき、コントローラ311内の意思決定提案システム110、提案根拠生成システム1200、および調整依頼適用システム1300を用いて提案113、提案根拠1237、および影響度1337を算出する。サーバ310は、算出した提案113、提案根拠1237、および影響度1337をサーバ通信装置312と、ネットワーク330とを経由して、端末装置320に送信する。
【0079】
入力装置321は、各主体が入力したい情報を入力するための装置であり、例えば、キーボード、マウス、マイク、タッチパネル、などである。出力装置322は、システム内のデータや情報を出力する装置であり、例えば、ディスプレイ、スピーカ、プリンタ、などである。
【0080】
図9および
図10は、データ入出力部101が主体iに提示する出力情報103の一例を示す図である。ここでは出力装置322をディスプレイまたはプリンタとし、出力情報103を視覚的に示すユーザーインターフェースの例として示している。
【0081】
図9のU500は、多主体調停システム100が提案する現在の意思決定である提案113と、全ての主体iが提案113を受け入れた場合の、想定される各指標ごとの時系列合計値、またはQ関数に関する情報を、各主体に示す画面表示である。各主体は、U500に示す表示を参照することによって、提案されている現在の意思決定と、想定される各指標ごとの時系列合計値、またはQ関数に関する情報とを確認できる。
【0082】
図9のU501は、将来意思1203、将来の各主体の観測情報である主体観測1210、時刻ごとの各指標の値、公平状態1206を各主体に示す画面表示である。各主体iは、U501によって、提案根拠1237を確認できる。
【0083】
図10のU502は、意思決定調整依頼106に含まれる主体iが調整依頼している意思決定と、この調整を適用した場合に想定される各指標ごとの時系列合計値、またはQ関数と、時系列合計値を、各主体に示す画面表示である。各主体は、U500とU502の比較によって、調整依頼による影響度1337を確認できる。なおU502の各指標ごとの時系列合計値において、調整依頼を適用する前後の差を更に表示してもよい。
【0084】
図10のU503は、調整依頼を適用した場合における将来意思1303、将来の各主体の観測情報である主観観測1310、時刻ごとの各指標の値、公平状態1306を各主体に示す画面表示である。各主体は、U501とI503とを比較することで、調整依頼による影響度1337を確認できる。
【0085】
上述した第1の実施の形態によれば、次の作用効果が得られる。
(1)多主体調停システム100は、少なくとも1つの全体指標である対象全体指標、および少なくとも1つの個別指標である対象個別指標に影響を与える複数主体の意思決定を調停する。多主体調停システム100は、複数主体のそれぞれから入力される複数主体の観測である主体データ104と、対象全体指標および対象個別指標のそれぞれに対応する評価関数とに基づいて複数主体のそれぞれの意思決定を提案113として算出し、複数主体のそれぞれに提案113を提案する意思決定算出部111を備える。そのため、全体指標および個別指標の両方を考慮した複数主体の意思決定を算出し、提案113として各主体に提示できる。
【0086】
(2)多主体調停システム100は、現在時刻における複数主体の意思決定である提案113、および現在時刻における主体データ104に基づき、次の時刻における主体データ104を算出する環境モデル1202と、評価関数、現在時刻における主体データ104、および環境モデル1202、提案の根拠である提案根拠1237を算出し、複数主体のそれぞれに提案根拠1237を提示する提案根拠算出部1201を備える。そのため各主体は、提案根拠1237を閲覧し、納得した上で提案113を受け入れることができる。
【0087】
(3)多主体調停システム100は、意思決定算出部111が算出した複数主体のそれぞれの意思決定に対して、複数主体に含まれる1つの主体である対象主体からの調整依頼を適用した場合の影響度1337を算出し、対象主体に影響度1337を提示する適用算出部1301とを備える。そのため、これにより、各主体は自らの意思決定調整依頼106によって、どの程度他の指標に影響を与えてしまうのか知ることができ、提案113を受け入れるか否かの判断ができる。
【0088】
(4)意思決定算出部111は、複数主体の間で決められた公平性に関する定義を制約条件として、意思決定を算出する。そのため提案113には公平性の制限が掛けられ、主体同士の極端な不公平を防止できる。
【0089】
(5)意思決定算出部111は、対象全体指標、および対象個別指標ごとに損失関数算出時の方策を統一しつつ、Q関数を分割した強化学習により得られたパラメータを備え、当該パラメータを用いて意思決定を算出する。
【0090】
(6)意思決定算出部111は、強化学習によって学習したエージェントモデルを備え、主体データ104に基づき、対象全体指標および対象個別指標を同時に向上する各主体の意思決定を算出する。
【0091】
(7)多主体調停システム100は、現在時刻における複数主体の意思決定、および現在時刻における主体データ104に基づき、次の時刻における主体データ104を算出する環境モデル1202と、エージェントモデル、環境モデル1202、現在時刻における主体データ104、および意思決定算出部111が算出する意思決定に基づきロールアウトを実行することで、将来の時刻における意思決定、将来の時刻における主体データ104を算出し、Q関数を用いて対象全体指標および対象個別指標のうち少なくとも1つの指標の時系列合計値を算出する提案根拠算出部1201と、を備える。
【0092】
(8)意思決定算出部111が算出した複数主体のそれぞれの意思決定に対して、複数主体に含まれる1つの主体である対象主体からの調整依頼を適用した場合の影響度1337を算出し、対象主体に影響度1337を提示する適用算出部1301とを備える。
【0093】
(9)現在時刻における複数主体の意思決定、および現在時刻における主体データ104に基づき、次の時刻における主体データ104を算出する環境モデル1302を備える。適用算出部1301は、意思決定算出部111が算出した現在時刻における複数主体のそれぞれの意思決定に対して、複数主体に含まれる1つの主体である対象主体からの調整依頼を適用した意思決定、エージェントモデル、環境モデル1302、および現在時刻における主体データ104に基づきロールアウトを実行することで、将来の時刻における対象全体指標および対象個別指標のうち少なくとも1つの指標の時系列合計値への影響を算出し、主体に提示する。
【0094】
(10)エージェントモデルは時系列モデルを含み、主体データ104から特徴量を抽出する。そのため、一部の主体データ104が秘匿されても、秘匿されていない場合と同様に提案113などを算出できる。
【0095】
(11)エージェントモデルはシングルエージェントモデルであり、複数主体のそれぞれの意思決定を1つの方策モデルを用いて算出する。
【0096】
(12)エージェントモデルはマルチエージェントモデルであり、複数主体のそれぞれの意思決定ごとに異なる方策モデルを用いて算出する。
【0097】
(変形例1)
上述した実施の形態では、多主体調停システム100は、意思決定提案システム110、提案根拠生成システム1200、および調整依頼適用システム1300を備えた。しかし多主体調停システム100は少なくとも意思決定提案システム110を備えればよく、提案根拠生成システム1200および調整依頼適用システム1300の少なくとも一方を備えなくてもよい。
【0098】
図11は、変形例1における多主体調停システム100Aの構成図である。多主体調停システム100Aは意思決定提案システム110を備えるが提案根拠生成システム1200および調整依頼適用システム1300は備えない。多主体調停システム100Aは、簡素な構成で提案113を提供できる。
【0099】
上述した各実施の形態および変形例において、機能ブロックの構成は一例に過ぎない。別々の機能ブロックとして示したいくつかの機能構成を一体に構成してもよいし、1つの機能ブロック図で表した構成を2以上の機能に分割してもよい。また各機能ブロックが有する機能の一部を他の機能ブロックが備える構成としてもよい。
【0100】
上述した各実施の形態および変形例において、コントローラ311においてプログラムは不図示のROMに格納されるとしたが、プログラムは不揮発性記憶装置に格納されていてもよい。また、コントローラ311が不図示の入出力インタフェースを備え、必要なときに入出力インタフェースとコントローラ311が利用可能な媒体を介して、他の装置からプログラムが読み込まれてもよい。ここで媒体とは、例えば入出力インタフェースに着脱可能な記憶媒体、または通信媒体、すなわち有線、無線、光などのネットワーク、または当該ネットワークを伝搬する搬送波やディジタル信号、を指す。また、プログラムにより実現される機能の一部または全部がハードウエア回路やFPGAにより実現されてもよい。
【0101】
上述した各実施の形態および変形例は、それぞれ組み合わせてもよい。上記では、種々の実施の形態および変形例を説明したが、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。
【符号の説明】
【0102】
100 :多主体調停システム
104 :主体データ
105 :追加提示要求
106 :意思決定調整依頼
110 :意思決定提案システム
112 :環境モデル
113 :提案
115 :環境状態
116 :主体観測
1200 :提案根拠生成システム
1237 :提案根拠
1300 :調整依頼適用システム
1337 :影響度