以下、図面を参照して、本発明に係る情報処理装置の実施の形態を説明する。なお、各図において同一又は相当する要素については同一の符号を付し、重複する説明を省略する。
本実施の形態では、本発明に係る情報処理装置を、車両に搭載される情報出力制御装置に適用する。本実施の形態に係る情報出力制御装置は、マルチコアマイコン上に2つのOSが搭載され、マルチコアマイコンによって各OSにそれぞれ割り当てられる優先度の異なる複数のAPL(プログラム)を実行する。そして、本実施の形態に係る情報出力制御制御装置は、各APLからの情報出力装置(ディスプレイ、スピーカなど)への情報出力の要求に対する出力制御を行う。
図1〜図4を参照して、本実施の形態に係る情報出力制御装置1について説明する。図1は、本実施の形態に係る情報出力制御装置の構成図である。図2は、優先度の低いAPLが追加される場合の事例である。図3は、優先度の高いAPLが追加される場合の事例である。図4は、図1の情報出力制御装置における情報出力制御の概要図である。
情報出力制御装置1は、マルチコアマイコン(図示せず)、情報出力装置としてのディスプレイ10とスピーカ11、複数のプログラムとして第1OS21、第2OS22、第1APL31(第1OLD−APL31a、第1ADD−APL31b)、第2APL32(第2OLD−APL32a、第2OLD−APL32b)、情報出力制御を行うOS連携部40(出力権管理41(画面権管理41a、音権管理41b)、第2OSアクセス予測制御機能42、第2OS出力権獲得情報学習機能43(獲得条件記録データベース(以下、「DB」と記載)43a、予測閾値学習DB43b))からなる。第1OS21と第2OS22には、それぞれ異なるCPUコアが割り当てられる。
なお、本実施の形態では、ディスプレイ10とスピーカ11が特許請求の範囲に記載する共有情報処理資源に相当し、第1OS21が特許請求の範囲に記載する第1オペレーティングシステムに相当し、第2OS22が特許請求の範囲に記載する第2オペレーティングシステムに相当し、第2OSアクセス予測制御機能42が特許請求の範囲に記載する予測手段に相当し、第2OS出力権獲得情報学習機能43が特許請求の範囲に記載する予測方法変更手段に相当し、予測閾値学習DB43bが特許請求の範囲に記載する記録手段に相当する。
情報出力制御装置1では、第1OS21側で全てのAPLからの情報の出力権の管理を行っている。また、情報出力制御装置1では、第2OS22側で第1OS21側の第1APL31の出力権獲得を予想し、その予測結果に基づいて第2OS22側の第2APL32からの情報出力を要求する。さらに、情報出力制御装置1では、第2OS22側での出力権獲得の履歴に基づいて学習を行い、その学習結果から予測に用いる閾値を変更する。
ディスプレイ10は、各APL31,32の情報を画面表示で出力する装置である。スピーカ11は、各APL31,32の情報を音声で出力する装置である。
第1OS21は、システム設計時に設定された比較的厳しい時間制約を有するAPL(処理周期の短いロケーション処理を行うAPLなど)が搭載されるOSである。第1OS21では、優先度の高い第1APL31の制御と情報出力装置に対する出力権管理処理を担当する。
第2OS22は、ベストエーフォート型のAPL(音楽プレイヤ処理を行うAPLなど)が搭載されるOSである。第2OS22では、優先度の低いAPL32の制御とアクセス予測制御及び学習を担当する。
第1OLD−APL31aは、第1OS21上で動作し、製品出荷前に搭載されている既存のアプリケーションである。第1ADD−APL31bは、第1OS21上で動作し、製品出荷後に追加されるアプリケーションである。第1OLD−APL31aと第1ADD−APL31bは、優先度の高いプログラムである。
第2OLD−APL32aは、第2OS22上で動作し、製品出荷前に搭載されている既存のアプリケーションである。第2ADD−APL32bは、第2OS22上で動作し、製品出荷後に追加されるアプリケーションである。第2OLD−APL32aと第2ADD−APL32bは、優先度の低いプログラムである。
製品出荷後に、ユーザ要求などによって、図2の例で示すように第2ADD−APL32bが追加されたり、あるいは、第2OLD−APL32aのアクセス要求時間帯や頻度が増加する場合がある。その場合、第2ADD−APL32bなどからの要求の増加によって、第1OS21側で実行する出力権管理41での処理負荷が増加するので、その処理負荷を抑制する必要がある。
また、製品出荷後に、車載サービス要求などによって、図3の例に示すように第1ADD−APL31bが追加されたり、あるいは、第1OLD−APL31aのアクセス要求時間帯や頻度が増加する場合がある。その場合、第1ADD−APL31bなどからの要求の増加によって、増加前には問題にならなかった第2APL32に対する第1OS21側で実行する出力権管理41での処理負担が重くなるので、その負処理荷を抑制する必要がある。
ちなみに、第1OLD−APL31aや第2OLD−APL32aについては、設計段階(製品出荷前)にシステムに組み込まれているため、設計段階である程度処理負荷を予測できるので、優先度の高い第1OS21側での第1APL31の実行が遅延しないように設計することが可能である。しかし、第1ADD−APL31bや第2ADD−APL32bの追加によって製品出荷後に処理負荷が増加するものについては、設計段階で処理負荷を予測できない。そのため、優先度の高い第1OS21側の第1APL31の実行が遅延しないように、OS連携部40で対処する必要がある。そこで、OS連携部40には、図4に示すように、第2OS22側に従来にはない第OSアクセス予測制御機能42と第2OS出力権獲得情報学習機能43を設けている。
OS連携部40は、第1OS21と第2OS22の共有資源(ディスプレイ10、スピーカ11)についての排他制御(調停)を行い、共有資源を用いた情報出力の制御を行う。特に、OS連携部40では、第2OS22側で第1OS21側の第1APL31の出力権の獲得を予測するとともに、その第2OS22側の第2APL32の出力権獲得の履歴に基づいて学習を行い、その学習結果から予測に用いる閾値を変更する。そのために、OS連携部40は、出力権管理41、第2OSアクセス予測制御機能42、第2OS出力権獲得情報学習機能43を有している。
出力権管理41は、第1OS21配下で実行される機能であり、第1OS21側に予め割り当てられた処理負荷バジェット内で処理を行う。出力権管理41では、第1OS21側の第1APL31や第2OS22側の第2APL32からの情報出力要求が入力されると、その出力順序を決定し、その順序に従って出力を管理する。この出力順序の決定方法や管理方法としては、従来の方法を適用する。出力権管理41には、画面権管理41aと音権管理41bがある。画面権管理41aでは、複数のAPLからの画面出力要求に対して出力順序(時系列、レイアウトなど)を決定し、画面出力を管理する。音権管理41bでは、複数のAPLからの音出力要求に対して出力順序(時系列など)を決定し、音出力を管理する。
第2OSアクセス予測制御機能42は、第2OS22配下で実行される機能であり、第2OS22側に予め割り当てられた処理負荷バジェット内で処理を行う。第2OSアクセス予測制御機能42では、第2OS22側にて管理している情報、第2OS22側で間接的に知ることができる第1OS21側の情報(共有情報)、第2OS22の出力権獲得情報に基づいて、第1OS21側の第1APL31の出力権獲得条件(情報出力するタイミング、頻度、期間など)を予測する。
この予測結果としては、予測[A]、予測[B]、予測[C]、予測[D]がある。予測[A]は、アクセス不可予測であり、現時点では第1APL31によって出力権が獲得されている確率が高いという予測である。予測[B]は、アクセス排他タイミング予測であり、所定タイミング後(所定時間後)に第1APL31によって出力権が獲得される確率が高いという予測である。予測[C]は、アクセス排他区間予測であり、所定期間中に所定頻度で第1APL31によって出力権が獲得される確率が高いという予測である。予測[D]は、アクセス可能予測であり、第1APL31によって出力権が獲得される確率が低いという予測である。第2OSアクセス予測制御機能42では、第2APL32からの情報出力管理アクセス要求に応じて予測を行い、予測[A]、予測[B]、予測[C]、予測[D]のうちのいずれか1つ以上の予測結果をその第2APL32に通知する。
第2OS出力権獲得情報学習機能43は、第2OS22配下で実行される機能であり、第2OS22側に予め割り当てられた処理負荷バジェット内で処理を行う。第2OS出力権獲得情報学習機能43は、獲得条件記録DB43aと予測閾値学習DB43bを備えている。
第2OS出力権獲得情報学習機能43では、第2OSアクセス予測制御機能42での予測結果に基づいて実際に第2APL32が出力権を獲得できたかどうかの情報(出力権獲得情報)を獲得条件記録DB43aに記録する。また、第2OS出力権獲得情報学習機能43では、第2OS22側にて管理している情報及び第2OS22側で間接的に知ることができる第1OS21側の情報(共有情報)を獲得条件記録DB43aに記録する。第2OS22側にて管理している情報としては、第2OS22のCPU負荷率、情報出力要求を出力している第2OLD―APL32aや第2ADD−APL32bの数や種類などがある。共有情報としては、地図情報に関するロケーションの情報、POIの個数、路側信号情報などのシステム設計や仕様によって決定される情報である。さらに、第1OS21のCPU負荷率なども共有情報としてもよい。ちなみに、POI[Point of Interest]は、地図上でのポイント情報(店舗、信号機など)である。
第2OS出力権獲得情報学習機能43では、第2OSアクセス予測制御機能42での予測に必要な予測閾値を予測閾値学習DB43bに記録する。また、第2OS出力権獲得情報学習機能43では、実際に第2APL32がアクセス要求を出力した場合に出力権を獲得できたかどうかの情報(出力権獲得情報)に基づいて予測閾値についての学習を行い、必要な場合に予測閾値を変更する。第2OS出力権獲得情報学習機能43では、この学習過程のデータを予測閾値学習DB43bに記録する。
図1を参照して、情報出力制御装置1におけるOS連携部40での具体的な処理について説明する。ここでは、図5に示す第1APL31からの要求と第2APL32からの要求の一例に沿って説明する。図5は、図1の情報出力制御装置における情報出力制御の流れの一例である。
第1APL31では、ディスプレイ10やスピーカ11から情報を出力したい場合、出力権管理41に情報出力要求OR11,OR12・・・を出力する。情報出力要求OR11,OR12・・・を入力すると、出力権管理41では、出力順序を決定し、その出力順序に従って情報出力を管理する。例えば、第1APL31からの情報出力要求OR11に対して、出力権管理41では、情報出力を許可し、その第1APL31からの情報出力OP11を管理する。
一方、第2APL32では、ディスプレイ10やスピーカ11から情報を出力したい場合、まず、第2OSアクセス予測制御機能42に情報出力管理アクセス要求AR21,AR22・・・を出力する。情報出力管理アクセス要求AR21,AR22・・・を入力すると、第2OSアクセス予測制御機能42では、第1OS21側の第1APL31の出力権獲得条件を予測し、その予測結果を第2APL32に通知する。
例えば、第2APL32では、情報出力管理アクセス要求AR21を第2OSアクセス予測制御機能42に出力する。この情報出力管理アクセス要求AR21に対して、第2OSアクセス予測制御機能42では、現時点において第1APL31での情報出力OP11があることを予測し(アクセス不可予測AP1)、アクセス不可予測通知APN1を第2APL32に出力する。このアクセス不可予測通知APN1を入力すると、第2APL32では、情報出力を待ったり、中止したりする。
その後、第2APL32では、再度、情報出力管理アクセス要求AR22を第2OSアクセス予測制御機能42に出力する。この情報出力管理アクセス要求AR22に対して、第2OSアクセス予測制御機能42では、第1APL31での情報出力がないことを予測し(アクセス可能予測)、アクセス可能予測通知DPN1を第2APL32に出力する。このアクセス可能予測通知DPN1を入力すると、第2APL32では、情報出力要求OR21を出力権管理41に出力する。この情報出力要求OR21に対して、出力権管理41では、情報出力を許可し、その第2APL32からの情報出力OP21を管理する。
また、第2OSアクセス予測制御機能42では、所定タイミング後に第1APL31での情報出力OP12があることを予測し(アクセス排他タイミング予測BP1)、アクセス排他タイミング予測通知BPN1を第2APL32に出力する。このアクセス排他タイミング予測通知BPN1を入力すると、第2APL32では、第1APL31での情報出力OP12があるまでに情報出力を止めるために、フェードアウト要求FR21を出力権管理41に出力する。このフェードアウト要求FR21に対して、出力権管理41では、第2APL32からの情報出力のフェードアウト出力OP22を管理する。
その後、第2APL32では、再度、情報出力管理アクセス要求AR23を第2OSアクセス予測制御機能42に出力する。この情報出力管理アクセス要求AR23に対して、また、第2OSアクセス予測制御機能42では、所定期間中の所定頻度での第1APL31での情報出力OP13,OP14,OP15,OP16があることを予測し(アクセス排他区間予測CP1)、アクセス排他区間予測通知CPN1を第2APL32に出力する。このアクセス排他区間予測通知CPN1を入力すると、第2APL32では、その区間、情報出力を待つ。
その後、第2APL32では、再度、情報出力管理アクセス要求AR24を第2OSアクセス予測制御機能42に出力する。この情報出力管理アクセス要求AR24に対して、第2OSアクセス予測制御機能42では、第1APL31での情報出力がないことを予測し(アクセス可能予測)、アクセス可能予測通知DPN2を第2APL32に出力する。このアクセス可能予測通知DPN2を入力すると、第2APL32では、情報出力要求OR22を出力権管理41に出力する。この情報出力要求OR22に対して、出力権管理41では、情報出力を許可し、その第2APL32からの情報出力OP23を管理する。
次に、第2OSアクセス予測制御機能42におけるアクセス不可か否かの予測処理について、図6のフローチャートに沿って説明する。図6は、第2OSアクセス予測制御機能におけるアクセス不可予測の処理の流れを示すフローチャートである。
例えば、第2APL32からの情報出力管理アクセス要求AR21を入力すると、第2OSアクセス予測制御機能42での処理が開始する。まず、第2OSアクセス予測制御機能42では、第2OS22側にて管理している情報を取得するとともに(S10)、共有情報を取得する(S11)。第2OS側にて管理している情報については、例えば、第2OS22のメモリに記憶されている情報、情報出力の状況から情報を取得する。共有情報については、例えば、地図DBなどから現在位置周辺の地図情報を読み出し、その地図情報から都市境界地点の情報、信号機の情報、POIの情報などを取得したり、ビーコンなどを利用して路車間通信で赤信号などの情報を取得する。
そして、第2OSアクセス予測制御機能42では、その取得した第2OS側にて管理している情報や共有情報及び予測閾値に基づいて、第1APL31の出力権獲得条件としてアクセス可能予測時間などを算出する(S12)。このアクセス可能予測時間は、第1APL31が情報出力すると予測される時間である。
そして、第2OSアクセス予測制御機能42では、第2APL32からの情報出力管理アクセス要求に示される情報出力を行いたい期間がアクセス可能予測時間内であるか否かを判定する(S13)。S13にてアクセス要求がアクセス可能予測時間内と判定して場合、第2OSアクセス予測制御機能42では、第2APL32からの情報出力は可能と予測し(アクセス可能予測)、アクセス可能予測通知を第2APL32に出力する(S14)。一方、S13にてアクセス要求がアクセス可能予測時間内でないと判定して場合、第2OSアクセス予測制御機能42では、第2APL32からの情報出力は不可と予測し(アクセス不可予測)、アクセス不可予測通知APN1を第2APL32に出力する(S15)。
例えば、アクセス可能予測時間が3秒の場合(第1APL31が3秒後に情報出力を開始すると予測した場合)、第2APL32からのアクセス要求が現時点から2秒間の情報出力のときにはアクセス可能予測通知が出力されるが、第2APL32からのアクセス要求が現時点から5秒間の情報出力のときにはアクセス不可予測通知が出力される。また、アクセス可能予測時間が0秒の場合(第1APL31が情報出力中かあるいは現時点から情報出力開始と予測した場合)、第2APL32からのアクセス要求がどのようなものでも、アクセス不可予測通知が出力される。
ちなみに、第2APL32では、情報出力管理アクセス要求AR21を出力後、第2OSアクセス予測制御機能42からの通知に基づいて、アクセス可能通知か否かを判定する(S20)。S20にてアクセス可能通知と判定した場合、第2APL32では、情報出力要求OR21を出力権管理41に出力する。一方、S20にてアクセス可能通知でないと判定した場合、第2APL32では、アクセス不可時の処理を行う(S22)。アクセス不可時処理としては、例えば、第1APL31での情報出力が終了するまで待機してから情報出力管理アクセス要求を再度出力、情報出力を中止、情報出力期間を短くする。
また、出力権管理41では、第2APL32から情報出力要求OR21を入力すると、第2APL32の情報出力が可能か否かを判定する(S30)。S30にて第2APL32の情報出力が可能と判定した場合、出力権管理41では、第2APL32からの情報出力を許可し、その情報出力を管理する(S31)。一方、S30にて第2APL32の情報出力が現時点では不可と判定した場合、出力権管理41では、第2APL32からの情報出力要求を保留し(S32)、一定時間後に再度判定する(S30)。
次に、第2OSアクセス予測制御機能42におけるアクセス排他タイミングの予測処理について、図7のフローチャートに沿って説明する。図7は、第2OSアクセス予測制御機能におけるアクセス排他タイミング予測の処理の流れを示すフローチャートである。
第2OSアクセス予測制御機能42では、一定時間毎に、第2APL32が情報出力中か否かを判定する(S40)。S40にて第2APL32が情報出力中でないと判定した場合、第2OSアクセス予測制御機能42では、一定時間後に再度判定を行う(S40)。
S40にて第2APL32が情報出力中と判定した場合、第2OSアクセス予測制御機能42では、第2OS22側にて管理している情報を取得するとともに(S41)、共有情報を取得する(S42)。そして、第2OSアクセス予測制御機能42では、その取得した第2OS22側にて管理している情報や共有情報及び予測閾値に基づいて、第1APL31の出力権獲得条件として排他予測タイミング時間などを算出する(S43)。排他予測タイミング時間は、現時点から所定時間後に第1APL31が情報出力すると予測されるタイミング時間である。
そして、第2OSアクセス予測制御機能42では、第2APL32の情報出力期間中に排他予測タイミング時間があるか否かを判定する(S44)。S44にて情報出力期間中に排他予測タイミング時間があると判定して場合、第2OSアクセス予測制御機能42では、第2APL32からの情報出力中に第1APL31からの情報出力があると予測し(アクセス排他予測タイミング予測)、アクセス排他タイミング予測通知BPN1を第2APL32に出力する(S45)。一方、S44にて情報出力期間中に排他予測タイミング時間がないと判定して場合、第2OSアクセス予測制御機能42では、一定時間後に再度判定を行う(S40)。
なお、第2OSアクセス予測制御機能42におけるアクセス排他区間予測の予測処理についても、上記の予測処理と同様の処理を行う。具体的には、第2OS22側にて管理している情報や共有情報及び予測閾値に基づいて、第1APL31の出力権獲得条件としてアクセス排他区間などを算出する。アクセス排他区間は、第1APL31が所定期間において所定の頻度で情報出力すると予測される期間である。そして、アクセス排他区間がある場合、アクセス排他区間予測通知を第2APL32に出力する。
次に、第2OS出力権獲得情報学習機能43における処理について、図8のフローチャートに沿って説明する。図8は、第2OS出力権獲得情報学習機能における処理の流れを示すフローチャートである。
例えば、第2APL32から情報出力要求OR21が出力権管理41に出力されると、第2OS出力権獲得情報学習機能43の処理が開始する。まず、第2OS出力権獲得情報学習機能43では、第2OSアクセス予測制御機能42で取得した予測に必要な情報(第2OS22側にて管理している情報、共有情報など)や第2OS22の出力権獲得情報などを獲得条件記録DB43aに保存する(S50)。
そして、第2OS出力権獲得情報学習機能43では、第2APL32からの情報出力管理アクセス要求に示される情報出力を行いたい設定時間内に情報出力が許可されたか否かを判定する(S51)。S51に設定時間内に情報出力が許可されたと判定した場合、第2OS出力権獲得情報学習機能43では、アクセス要求に従って情報出力ができたOK数(出力権獲得数)をカウントアップし、そのOK数を予測閾値学習DB43bに保存する(S52)。
一方、S51に設定時間内に情報出力が許可されなかったと判定した場合、第2OS出力権獲得情報学習機能43では、アクセス要求に従って情報出力できなかったNG数(出力権不獲得数)をカウントアップし、そのNG数を予測閾値学習DB43bに保存する(S53)。そして、第2OS出力権獲得情報学習機能43では、そのNG数が学習採用値以上となったか否かを判定する(S54)。S54にてNG数が学習採用値未満と判定した場合、第2OS出力権獲得情報学習機能43では、そのまま終了する。一方、S54にてNG数が学習採用値以上と判定した場合、第2OS出力権獲得情報学習機能43では、そのNG数が学習採用以上となった値を予測閾値として変更し、その予測閾値を予測閾値学習DB43bに保存する(S55)。なお、このように予測閾値を既存の予測閾値から変更してもよいし、既存の予測閾値も残して新たな予測閾値として追加してもよい。
図9〜図11を参照して、第2OSアクセス予測制御機能42におけるアクセス排他タイミングの予測方法について、具体的な事例で説明する。図9は、アクセス排他タイミング予測を適用したロケーションの事例である。図10は、アクセス排他タイミング予測を適用したPOIの事例である。図11は、アクセス排他タイミング予測の予測計算の事例を示す表である。
図9には、第1APL31によるロケーション処理で情報出力が予測される場合の一例を示している。自車両の進行方向に都市部境界地点BPが存在する場合、その都市部境界地点BPの所定距離手前の地点でナビゲーション装置での案内などで情報出力されることが予測される。そこで、第1OS21側の所定の第1APL31が出力権を獲得する確率が高いと予測される都市部境界地点BPからx0手前の地点を設定する。このx0が、予測閾値である。
この例の場合、図11に示すように、取得される共有情報としては都市部境界地点、自車両の現在地点x1と現在車速v1であり、予測条件としては都市部境界地点BPを基点として予測閾値x0の地点での第1OS21側における出力権獲得のタイミングを予測する。この場合、排他予測タイミング時間(自車両が予測閾値x0の地点に到達する時間)を、ABS(x0−x1)÷v1で算出する。そして、この排他予測タイミング時間まで第2APL32の情報出力を行うか否かを判定する。
例えば、現在位置x1において、第2OS22側のメディアプレイヤが3分間の音楽再生開始する要求がある場合、第2OSアクセス予測制御機能42で予測を行うと、過去の出力権不獲得の学習結果から設定されている地点x0(予測閾値)に到達する(ABS(x0−x1)÷v1)時間後に、第1OS22側で出力権獲得の可能性が高いことがわかる。
同様に、第1APL31による路側信号情報に対する処理で情報出力が予測される場合がある。この場合、自車両の進行方向に赤信号となる信号機が存在すると、その赤信号機の所定距離手前の地点で運転支援装置での注意喚起などで情報出力されることが予測される。そこで、第1OS21側の所定の第1APL31が出力権を獲得する確率が高いと予測される赤信号機の地点からx0手前の地点を設定する。このx0が、予測閾値である。
この例の場合、図11に示すように、取得される共有情報としては赤信号地点、自車両の現在地点x1と現在車速v1であり、予測条件としては赤信号地点を基点として予測閾値X0の地点での第1OS21側における出力権獲得のタイミングを予測する。この場合、排他予測タイミング時間を、ABS(x0−x1)÷v1で算出する。そして、この排他予測タイミング時間まで第2APL32の情報出力を行っているか否かを判定する。
図10には、第1APL31によるPOIに関する処理で情報出力が予測される場合の一例を示している。ディスプレイ10の画面内に表示されるPOIの個数がある個数になると、そのPOIの所定のポイントに対する案内などで情報出力されることが予測される。そこで、第1OS21側の所定の第1APL31が出力権を獲得する確率が高いと予測される画面内のPOI数n0を設定する。このn0が、予測閾値である。
この例の場合、図11に示すように、取得される共有情報としては予測開始時のPOI数n1と時間t1、予測終了時のPOI数n2と時間t2であり、予測条件としてはディスプレイ10の画面内に表示されるPOI数の予測開始時から終了時までの変化量から、画面内に表示されるPOI数が予測閾値n0になる第1OS21側における出力権獲得のタイミングt0を予測する。この場合、排他予測タイミング時間(画面内のPOI数が予測閾値n0になる時間)を、(n0−n2)÷(n2−n1)×(t2−t1)−t2で算出する。そして、この排他予測タイミング時間まで第2APL32の情報出力を行うか否かを判定する。
例えば、時間t1において、第2OS22側のメディアプレイヤが3分間の音楽再生開始する要求がある場合、第2OSアクセス予測制御機能42で予測を行うと、過去の出力権不獲得の学習結果から設定されているPOI数n0(予測閾値)になる((n0−n2)÷(n2−n1)×(t2−t1)−t2)時間後に、第1OS22側で出力権獲得の可能性が高いことがわかる。
なお、上記の例では、主に地図情報に関する共有情報だけを用いて算出しているが、第1OS21側でのCPU負荷率などの他の共有情報や第2OS22側で管理している情報などの他の情報を用いて算出してもよい。また、上記のように予測条件を設定した上でその予測条件に必要な情報を取得するのではなく、情報を全て取得した上でその取得した情報を用いて予測条件を当てはめるようにしてもよい。また、排他予測タイミング時間以外の予測に用いるアクセス可能予測時間などについても同様に算出できる。
第2OSアクセス予測制御機能42におけるアクセス排他タイミングの予測による効果事例を説明する。従来のシステムでは、第2OS上のメディアプレイヤが3分間の音楽再生を開始した後に、第1OS上の交通事故多発地点通知の第1APLなどが1分後に出力権(画面権、音権)を獲得してしまった場合、途中で音楽再生が一時停止状態となる。しかし、情報出力制御装置1では、第2OS22側のメディアプレイヤの第2APL32が3分間の音楽再生開始する前に第2OSアクセス予測制御機能42に問い合わせると、第2OSアクセス予測制御機能42では第1OS21上の第1APL31が1分後に出力権を獲得することを予測する。例えば、第2APL32から2009年7月13日の12:00:00から3分間の音楽再生の情報出力管理アクセス要求を第2OSアクセス予測制御機能42に出力した場合、2009年7月13日の12:01:00に第1APL31が出力権を獲得する確率が高いというアクセス排他タイミング予測通知が第2APL32に通知される。この通知によって、メディアプレイヤの第2APL32では、第1APL31での情報出力に対する影響を最小限に抑えたサービス提供を行うことができる。この影響を最小限に抑えたサービス提供としては、例えば、音楽再生を開始して音楽のサビ部分で一時停止しないように1分後にフェードアウトを実施、1分以内の音楽に置き換えて再生開始、音楽再生よりも1分以内で情報提供できる第2OS22側の他の第2APL32に切り替えるがある。
図12を参照して、第2OS出力権獲得情報学習機能43における予測閾値の学習方法について、具体的な事例で説明する。図12は、第2OS出力権獲得情報学習機能における学習の事例を示す表である。この例の場合、学習採用値を、NG数が100回とする。
図12におけるロケーションの例の場合、都市部境界地点から500m経過した地点、300m経過した地点、100m経過した地点、100m手前の地点、300m手前の地点、500m手前の各地点でそれぞれ、出力権獲得情報として第2APL32からアクセス要求した場合に出力権を獲得できた数(OK数)と出力権を獲得できなかった数(NG数)を記録する。この例の場合、100m手前の地点と300m手前の地点の場合のNG数が学習採用値の100回を超えており、この100m手前の地点と300m手前の地点において第1OS21側での所定の第1APL31が出力権を獲得する可能性が高い。したがって、予測閾値としては、この100m手前の地点と300m手前の地点が設定される。なお、予測閾値として100m手前の地点や300m手前の地点が既に設定されている場合には予測閾値の変更はなく、予測閾値として100m手前の地点や300m手前の地点が設定されていない場合には予測閾値の追加又は変更が行われる。
図12における路側信号情報の例の場合、赤信号地点から100m手前の地点、300m手前の地点、500m手前の各地点でそれぞれ、出力権獲得情報として第2APL32からアクセス要求した場合に出力権を獲得できた数(OK数)と出力権を獲得できなかった数(NG数)を記録する。この例の場合、100m手前の地点の場合のNG数が学習採用値の100回を超えており、この100m手前の地点において第1OS21側での所定の第1APL31が出力権を獲得する可能性が高い。したがって、予測閾値としては、この100m手前の地点が設定される。なお、予測閾値として100m手前の地点が既に設定されている場合には予測閾値の変更はなく、予測閾値として100m手前の地点が設定されていない場合には予測閾値の追加又は変更が行われる。
図12におけるPOIの例の場合、画面内に表示されるPOI数が30個、20個、10個、5個の各個数でそれぞれ、出力権獲得情報として第2APL32からアクセス要求した場合に出力権を獲得できた数(OK数)と出力権を獲得できなかった数(NG数)を記録する。この例の場合、画面内に表示されるPOI数が20個の場合のNG数が学習採用値の100回を超えており、画面内に表示されるPOI数が20個の場合に第1OS21側での所定の第1APL31が出力権を獲得する可能性が高い。したがって、予測閾値としては、この20個/画面が設定される。なお、予測閾値として20個/画面が既に設定されている場合には予測閾値の変更はなく、予測閾値として20個/画面が設定されていない場合には予測閾値の追加又は変更が行われる。
この情報出力制御装置1によれば、優先度の低い第2OS22側で第1OS21側の第1APL31が出力権を獲得するか否かを予測できるので、優先度の高い第1OS21側の第1APL31の実行に対する影響を抑制でき、優先度の高い第1APL31の実行の遅延を抑制することができる。
情報出力制御装置1では、第2OS22側で取得可能な情報だけで予測を行うので、予測を行う際に第1OS21側に処理負荷を与えることなく、第1OS22側での優先度の高い第1APL31の実行の遅延をより抑制することができる。
情報出力制御装置1では、第2APL32からのアクセス要求に対する出力権獲得のOK数とNG数をカウントとして学習し、そのNG数に基づいて予測閾値を変更することにより、予測精度を向上させることができる。
なお、第2OS22への処理負荷バジェットはシステム全体で決められており、第2OS22への処理負荷バジェット内で予測制御処理や学習処理を行うので、ユーザ要求などによって第2ADD−APL32bの増加あるいは第2OLD−APL32aのアクセス要求時間帯や頻度の増加によって優先度の低い第2ADD32からのアクセス要求による予測制御処理が増加して、第2OS22上の第2APL32全体でのパフォーマンスが低下しても、第1OS21上の優先度の高い第1APL31の情報出力要求が待たされたりあるいは第1APL31の実行そのものに割り当てられるハードウェア資源が減ることはない。
さらに、第2APL32は、第1APL31によって出力権を獲得できない状態を予測で知ることができるので、第2APL32側で情報出力制御処理の判断が可能となる。その結果、第2APL32では、第1APL31での出力権獲得への影響を最小限に抑えたサービス提供が可能となる。例えば、アクセス不可予測の場合、第1APL31にて出力権が獲得されていることを考慮した情報出力制御が第2OS22側で実施可能である。アクセス排他タイミング予測の場合、第1APL31によって出力権が獲得される未来のタイミングを考慮した情報出力制御が第2OS22側で実施可能である。アクセス排他区間予測の場合、第1APL31によって出力権が獲得される区間や頻度を考慮した情報出力制御が第2OS22側で実施可能である。
また、製品出荷後、車載サービス要求などにより、優先度の高い第1ADD−APL31bの増加あるいは第1OLD−APL31aのアクセス要求時間帯や頻度の増加などがある場合、優先度の低い第2APL32が待たされることが多くなることを契機に、出力権管理41に対して優先度の低い第2APL32からの情報出力要求が減るため、優先度の高い第1APL31の実行に影響を与えない状態になる。ちなみに、製品出荷後、車載サービス追加などがあった時点では、優先度の高い第1APL31に影響を与える場合があるが、学習機能により、優先度の低い第2APL32からの情報出力要求はその影響を与えないレベルまでに抑えられる。
以上、本発明に係る実施の形態について説明したが、本発明は上記実施の形態に限定されることなく様々な形態で実施される。
例えば、本実施の形態では車両に搭載される情報出力制御装置に適用したが、優先度の異なる複数のOSと各OSに搭載されるAPLを有する他の様々な情報処理装置に適用可能である。
また、本実施の形態では優先度の高い第1OSと優先度の低い第2OSを1つずつ有するOS環境としたが、複数個ずつのOSを有するOS環境に適用してもよい。優先度の低い第2OSが複数有するOS環境の場合、その複数の第2OSにそれぞれ第2アクセス予測制御機能や第2出力権獲得情報学習機能を備えるようにすればよい。
また、本実施の形態では第2OS出力権獲得学習機能を備える構成としたが、第2OS出力権獲得学習機能を備えない構成としてもよい。この場合、予測閾値が更新されないので、シミュレーションや実車実験などで、適切な予測閾値を設定しておく。
また、本実施の形態では第2APLでの情報出力中に第2OS出力権獲得学習機能での学習を行う構成としたが、第1APLからの情報出力をトリガーとして学習を行ってもよい。
また、本実施の形態では第2APLからアクセス要求した場合に出力権を獲得できなかった数(NG数)が学習採用値以上の場合に予測閾値を変更する構成としたが、出力権を獲得できた数(OK数)に基づいて予測閾値を変更するようにしてもよい。