以下、本発明の一実施形態を、図面を参照して詳細に説明する。以下では、同じ構成に対しては同じ符号を付与し、説明を省略する。
以下では、情報提示装置は、移動体とともに移動しえるものとして説明する。ここでいう移動体とは、例えば車両や人そのものなど、外部及び内部のうち少なくとも一方の移動機能により移動可能なものをいう。また、作業者とは、情報提示装置により提示制御される提示情報を提示される人であって、移動体の移動に直接的又は間接的に関連する動作、行動、操作、行為などを行う人のことをいう。具体的には、例えば、移動体が車両である場合、作業者は、その車両のドライバーであり、移動体が人である場合、作業者は、その人である。以下、移動体の移動に直接的又は間接的に関連する動作、行動、操作、行為などのことをまとめて作業ともいう。
以下では、情報提示装置は、車両に搭載され、例えば経路誘導、車両の警報、安全アシストに関する情報及び音楽プレーヤなどのインフォテインメント(Infotainment)の、作業者への提供を制御するものとして説明するが、これに限定されない。
[構成の説明]
図1は、本実施形態の情報提示装置のブロック図の例である。情報提示装置100は、1つ以上の情報取得部110、状況推定部120、負荷推定部130、余裕度推定部140、提示情報選択部150、記憶部160、出力部170、入力部180等を含む。記憶部160は、タスク条件テーブル161、サブタスクテーブル162、サブタスク要求量テーブル163、負荷加重テーブル164、情報提示テーブル165等を記憶している。
タスク条件テーブル161は、現在の状況を示す1つ以上のタスクを規定する。サブタスクテーブル162は、タスクの夫々に対する1つ以上の作業要素であるサブタスクを規定する。サブタスク要求量テーブル163は、サブタスクの夫々に対する負荷要求量を夫々規定する。負荷加重テーブル164は、負荷要求量に加重する重みなどを規定する。情報提示テーブル165は、情報を提示するときの余裕度の条件を規定する。テーブルの夫々の詳細は後述する。
情報取得部110及び外部情報源191の夫々は1つ以上であればよいが、ここでは、情報提示装置100は情報取得部110a〜情報取得部110cを有し、情報取得部110a〜情報取得部110cの夫々は外部情報源191a〜外部情報源191cの夫々から入力情報を取得するものとして説明する。ただし、情報取得部110と外部情報源191とは1対1の関係である必要はない。
外部情報源191は、車両そのものや車両外部、作業者などに関する情報など、状況を判定するための情報である入力情報を取得するものであればよく、特に限定しない。このような外部情報源として、たとえば、車両の速度、アクセル量、ブレーキ状態、ウィンカー状態等から構成される車両情報を取得可能なCAN(Contoller Area Network)がある。また、走行中の道路のクラス、交差点情報、走行位置座標、走行計画としての交差点の進行方向や走行予定の道路情報、などを取得可能なカーナビゲーションシステムがある。
また、カメラや赤外線等のセンサを用いて車両の周囲を測定し、前方や周囲を走行中の車両や歩行者の検出とそれらとの距離または衝突までの時間や、走行車線を検出し逸脱を検出する先進運転支援システム(Advanced Driving Assistance System、以下、ADASと略す)がある。また、電波やビーコン等を用いて渋滞情報や駐車場案内、天候、車線規制等を提供するVICS(Vehicle Information and Communication System。登録商標)がある。また、他の車両や交通インフラとの通信により自車との関係を評価可能な高度交通システム(Intelligent Transport System、以下、ITSと略す)がある。
また、データサーバ192が外部情報源として機能してもよく、図示しないインターネット等の通信ネットワークを介して、交通情報、気象、その他の情報を提供してもよい。
情報取得部110は、たとえば、USB(Universal Serial Bus)などのシリアル通信、TCP/IP(Transmission Control Protocol/Internet Protocol)、HTTP(Hypertext Transfer Protocol)等のプロトコルを用いたネットワーク通信など、公知の通信技術をサポートする。情報取得部110は、図示しない記憶装置から伝送されたファイルから時間的タイミングを考慮してシリアライズされた情報が入力されてもよい。また、複数の情報取得部110から、入力情報や入力されるタイミングなどに応じて、適切なものが少なくとも1つ選択されてもよい。
状況推定部120は、入力情報と、タスク条件テーブル161とから、1つ以上のタスクを特定する。負荷推定部130は、特定されたタスクの夫々と、サブタスクテーブル162とから、1つ以上のサブタスクを特定し、また、特定されたサブタスクと、サブタスク要求量テーブル163などとから、負荷要求量を取得する。余裕度推定部140は、取得された負荷要求量から余裕度を取得する。提示情報選択部150は、余裕度と、情報提示テーブル165とから、提示する情報を選択する。ここで提示する情報は、1つ以上の提示情報源194から得られる。図1では、提示情報源194a〜提示情報源194cを示しているが、提示情報源194の数はこれに限られない。
出力部170には、提示情報などの各情報が出力される。入力部180は、情報提示装置100へ入力する情報が入力される。図1では、出力部170及び入力部180の夫々は、情報提示装置100に設けられている例を示しているが、これに限らず、情報提示装置100の外部に設けられてもよい。また、出力部170及び入力部180の夫々は、複数であってもよい。
提示情報源は、作業者に提示する提示情報を提供可能なものであればよく、特に限定はしない。提示情報源及び提示情報としては、例えば、車両に含まれる所定システム(例えばECU(Electronic Control Unit)など)から提供される燃料残量警告や充電警報等の車両警報である。また、ADASから提供される前者衝突警報や歩行者衝突警報等の警報・注意である。また、VICSから提供される渋滞情報や駐車場案内、天候、車線規制等などである。また、ナビゲーションシステムから提供される地図表示や進行方向などである。また、提供情報は、インフォテインメントのための情報であってもよい。このようなインフォテインメントのための情報は、例えば、音楽プレーヤの動作モード、アルバム名情報、曲名情報等の各情報に関するものであり、これらの情報は、音楽プレーヤやその他車載システムから提供可能である。また、提供情報は、メールや任意のアプリケーションから提供されるメッセージなどであってもよい。また、前述した提供情報は、データサーバ192から図示しない通信ネットワークを介して取得されるものであってもよい。
なお、提示情報源194は、入力情報を入力する外部情報源191として機能してもよく、これとは逆に、外部情報源191は、提示情報を提供する提示情報源194として機能してもよい。
また、コンピュータ193は、図示しない通信ネットワーク及びデータサーバ192を介して、図示しない通信ネットワークを介して、又は直接に、情報提示装置100と接続されている。
ここで、記憶部160に記憶されているテーブルの一例を詳細に説明する。以下で説明するテーブルの夫々は、予め記憶部160に記憶されていてもよく、所望のタイミングで作成や更新等されてもよい。
図2は、タスク条件テーブルの一例の説明図である。タスク条件テーブル161の各レコードには、タスクID201、カテゴリ202、タスク名203、1つ以上の入力条件204(図2の場合、入力条件204a〜入力条件204c)が含まれる。入力条件204には、入力項目211(図2の場合、入力項目211a〜入力項目211c)と、条件212(図2の場合、条件212a〜条件212c)とが含まれる。入力項目211は、情報の種類を示し、条件212は、同じレコードの入力項目211の値に対する条件を規定している。
タスク条件テーブル161は、タスクを特定するための条件を規定している。ここでいうタスクとは、移動体及び作業者のうち少なくとも一方に関する状況であって、作業者に作業をさせ得るものであり、かつ、作業者に精神的負荷のかかり得る状況をいう。図2では、カテゴリ202に示すように、タスクが、走行タスク、場所タスク、周囲タスク、物理タスク、動的ファクタのうちいずれかに分類されている例を示している。これらのうち、走行タスク、場所タスク、周囲タスク、物理タスクは、移動体及び作業者のうち少なくとも一方に関する状況であって、作業者に作業をさせ、かつ、作業者に精神的負荷のかかり得る状況に対し適用する。
走行タスクの例として、運転時の停止、発進、加速などが規定されている。場所タスクの例として、信号ありの十字交差点直進、十字交差点右折、十字交差点左折など、場所とそのときの行動などが規定されている。周囲タスクの例として、前車の検出や前車接近の程度、同様に歩行者との関係などが規定されている。物理タスクの例として、逆光、夜・暗所などが規定されている。これらは、移動体の移動中に行われる作業に応じて適宜規定されることが可能である。また、ISO標準ISO 10075に規定された上述のカテゴリ分類を参考に、行動要素の分類を行い、テーブルを拡充してもよい。
また、図2では、前述に加え、動的ファクタをさらに定義した例を示している。動的ファクタとは、移動体及び作業者のうち少なくとも一方に関する状況であって、それのみでは必ずしも作業者に作業をさせるとは限らないが、作業者に精神的負荷のかかり得る状況に対し適用する重みである。図2では、動的ファクタを、速度及び車間距離で定義される例を示している。この動的ファクタは、例えば、車速vと車間距離xを入力変数とした強度関数「f(v,x)」により規定可能である。このように、動的ファクタを定義することで、作業を行うことによる精神的負荷だけでなく、状況による精神的負荷をも考慮することが可能となる。
なお、動的ファクタは前述に限らない。例えば、入力情報として入力された、天候などを示す離散的な値を用いて定義してもよい。その場合、例えば、天候の情報入力「晴れ」に対して、負荷強度を基準となる1.0とし、「曇り」を0.95とし、「雨」を1.1とし、「雪」を1.2などと規定するマッピングテーブルを用意し、実際に入力された入力情報に応じて動的ファクタを取得してもよい。
また、タスクは必ずしもいずれかのカテゴリに分類される必要はなく、また、カテゴリも図示するものに限定されない。
入力条件204は、入力情報から、現在の状況が、同じレコードのタスク名203に示されるタスク(状況)であると判定するための条件を規定している。図2では、同じレコードの全ての入力条件204の条件を満たす場合、即ち、すべての条件212の条件式が満たされる場合に、そのタスクに該当すると判定する。
図3は、サブタスクテーブルの例の説明図である。サブタスクテーブル162の各レコードには、タスクID301、カテゴリ302、タスク名303、1つ以上のサブタスク304(図3ではサブタスク304a〜サブタスク304e)が含まれる。サブタスクテーブル162のタスクID301、カテゴリ302、タスク名303は、前述のタスク条件テーブル161の夫々と対応させている。
サブタスクテーブル162は、サブタスクを特定するための条件を規定している。ここでいうサブタスクとは、タスクに示される状況下で、作業者が実行する可能性のある作業要素のことをいう。ここでは、サブタスクは、1つのタスクに対し1つ以上が規定される。従って、例えばタスク名303「発進」のような1つのタスクに対し、サブタスク304「P_CHK_F(歩行者確認(前方))」や「V_CHK_F(車両確認(前方)))」など、複数が規定されうる。
サブタスクは、例えば、実際の車両の運転の際に作業者が行う確認作業や判断作業、操作等などの作業である。これらサブタスクは、例えば車両運転であれば、運転の教則やマナー、あるいは、経験的に作業者に一般的に行われる確認作業に従って規定することができる。
図4は、サブタスク要求量テーブルの例の説明図である。サブタスク要求量テーブル163の各レコードは、サブタスクID401、カテゴリ402、サブタスク名403、負荷要求量404、係数405を含む。サブタスク要求量テーブル163のサブタスク名403は、前述のサブタスクテーブル162のサブタスク304と対応させている。
負荷要求量404は、サブタスクで規定される作業の際の作業者への精神的負荷を示し、1個以上の要求属性の夫々に対する要求量を示すことが可能である。要求属性とは、作業者への精神的負荷となる作業の種類を示す。要求属性として、図4では、視覚要求404a、聴覚要求404b、認識/判断要求404c、精神的操作要求404dなどを含む例を示している。これらは、従来研究で定義された要求量の定義を用いることができ、夫々のサブタスクの各要求属性に対する強度を規定することができる。しかし、要求属性はこれに限るわけではない。他の要求属性として、例えば、不快度やタイムプレッシャー、不満度などを規定してもよい。
係数405は、サブタスクに対する重みとして規定されるものであり、例えば、サブタスクの実作業時間や作業回数を元に規定することができる。
図5は、負荷加重テーブル164の例の説明図である。負荷加重テーブル164の各レコードは、要求ID501、要求名502、加重係数503を含む。要求名502は、サブタスク要求量テーブル163の負荷要求量404に含まれる要求属性の夫々と対応させている。加重係数503は、要求属性の夫々などに対する加重として規定される。
図6は、情報提示テーブルの例の説明図である。情報提示テーブル165の各レコードは、項番601、情報源名602、情報種603、提示要求量604、提示時間605を含む。情報源名602及び情報種603は、提示情報源194から提供される提供情報を示す。提示要求量604は、提供情報を提供するか否かを判定するための条件を示し、ここでは、提供情報を提供するために必要な作業者の余裕度を示している。余裕度に関しては後述する。提示時間605は、提供情報を提示する継続時間を示す。
図7は、情報提供装置、データサーバ、コンピュータの夫々のハードウェア構成例である。コンピュータ700(情報提示装置100、データサーバ192、コンピュータ193)は、演算装置701、メモリ702、外部記憶装置703、記憶媒体駆動装置704、入力装置706、出力装置707、通信装置708、I/F(Interface)709等を有する。
演算装置701は例えばCPU(Central Processing Unit)等である。メモリ702は揮発性や不揮発性のメモリである。外部記憶装置703は、例えば、HDD(Hard Disk Drive)やSSD(Solid State Drive)等である。記憶媒体駆動装置704は、例えばCD(Compact Disk)やDVD(Digital Versatile Disk)、その他任意の可搬性を有する記憶媒体705に対して情報を読み書き可能である。入力装置706は、タッチパネル、キーボード、テンキー、マウス、マイクロフォン等である。出力装置707は、例えば、液晶モニタ、ヘッドアップディスプレイ、映像プロジェクタ、文字出力デバイスなどのディスプレイや、音声、音楽、音響アイコンなどの聴覚情報を表示するためのアンプとスピーカー、ヘッドホン等のデバイス、および、圧力や温度等の触覚での表示デバイス、においを発生させる等の化学物質を出力する嗅覚デバイス等である。入力装置706及び出力装置707は、タッチパネルなどにより1つの装置で実現されてもよい。通信装置708は、例えば、図示しない通信ネットワークに接続するためのNIC(Network Interface Card)等である。I/F709は、外部機器と接続するためのインタフェースである。
状況推定部120、負荷推定部130、余裕度推定部140、提示情報選択部150の夫々は、所定のプログラムをメモリ702にロードして演算装置701が実行することにより実現可能である。
この所定のプログラムは、記憶媒体駆動装置704を介して記憶媒体705から、あるいは、通信装置708を介して図示しない通信ネットワークから、外部記憶装置703にダウンロードされ、そして、メモリ702にロードされ、演算装置701が実行するようにしてもよい。また、記憶媒体駆動装置704を介して記憶媒体705から、あるいは、通信装置708を介して通信ネットワークから、メモリ702に直接ロードされ、演算装置701が実行するようにしてもよい。
あるいは、状況推定部120、負荷推定部130、余裕度推定部140、提示情報選択部150のうち一部又はすべてを、回路等によりハードウェアとして実現してもよい。
また、記憶部160は、メモリ702、外部記憶装置703、記憶媒体駆動装置704及び記憶媒体705等の全て又は一部により実現可能である。又は、演算装置701が前述のプログラムの実行により、メモリ702、外部記憶装置703、記憶媒体駆動装置704及び記憶媒体705等の全て又は一部を制御することで実現してもよい。
また、出力部170は、出力装置707により実現可能である。入力部180は、入力装置706及びI/F709のうち少なくとも一方により実現可能である。又は、入力部180は、図示しない通信ネットワーク及び通信装置708を介して接続された入力装置などより実現されてもよい。また、入力部180は、所定のプログラムをメモリ702にロードして演算装置701が実行することにより実現する機能がI/F709又は通信装置708を制御することにより実現可能である。情報取得部110は、I/F709又は通信装置708や、所定のプログラムをメモリ702にロードして演算装置701が実行することにより実現する機能がI/F709又は通信装置708を制御することにより実現可能である。
外部情報源191、提示情報源194、データサーバ192の夫々は、通信装置708及びI/F709のうち少なくとも一方を介して情報提示装置100と接続されてもよい。
また、情報提示装置100の各部は、1つの装置により実現されてもよく、複数の装置に分散されて実現されてもよい。
[処理の説明]
図8は、情報提示装置の処理フローチャートの例である。この動作は、所定時間ごと(例えば0.5[sec]ごと)に実行される。また、情報提示装置100の提示情報選択部150には、1つ以上の提示情報源194から、作業者への提示情報の提示要求が入力されているものとして説明する。
まず、情報取得部110の夫々は、外部情報源191の夫々から入力情報を取得する(S801)。ここで取得された入力情報は、状況推定部120に伝達される。状況推定部120では、タスク条件テーブル161を用いて、入力条件に応じて1つ以上のタスクである成立タスク群を取得する状況推定処理を行う(S802)。状況推定処理の詳細については後述する。状況推定部120は、取得した成立タスク群を負荷推定部130に伝達する。
図9は、入力情報の例である。入力情報900の例では、外部情報源191aより、CANからの車両情報として、車速42[km/h]、ハンドルの舵角2[度]、アクセル量0[%]、ブレーキ状態OFFなどが入力されたことを示している。また、外部情報源191bより、カーナビゲーションシステムからの情報として、道路クラスとして一般道、ポイント形状として信号あり十字交差点、進行方向として右などが入力されたことを示している。また、外部情報源191cよりADAS情報として、前車検出ON、車間距離1.8[sec]、前車衝突警報OFFなどが入力されたことを示している。
なお、外部情報源191から2つ以上の入力情報が入力され、2つ以上の情報取得部110が夫々入力情報を取得する場合、いずれか1つの情報取得部110が、2つ以上の入力情報を、入力情報900に一例を示すように、1つにまとめて状況推定部120に伝達してもよい。
負荷推定部130は、サブタスクテーブル162を用いて、成立タスク群の夫々のタスクをサブタスクに分割して成立サブタスク群を取得するサブタスク推定処理を行う(S803)。次に、負荷推定部130は、サブタスクテーブル162、サブタスク要求量テーブル163、負荷加重テーブル164を用いて、現在の状況における作業者への負荷を算出する負荷算出処理を行う(S804)。
余裕度推定部140は、余裕度推定処理を行う(S805)。そのために、余裕度推定部140は、負担限界量から、負荷推定部130で算出した負荷量を減じた量を余裕度とする。
負担限界量とは、作業者に対してかかる精神的な負担の最大値のことをいう。負担限界量は、前述の負荷要求量の理論的最大値、負荷が高い特定の作業を行った際の負荷要求量を実測した値、あるいは、そのときの算出負荷要求量の推定値であってよいが、これに限定しない。ここでは、負担限界量があらかじめ定められているとして説明する。しかし、これに限るわけではなく、成立しているタスクやサブタスクに応じて可変させてもよい。
余裕度推定部140は、負担限界量と、前述の処理で算出された負荷要求量との差を余裕度として算出し、算出した余裕度を提示情報選択部150に伝達する。
ここでは、説明の簡易化のため、負荷要求量を0〜100の範囲内とし、負荷限界量をその最大値である100とした場合の例を説明する。この場合、前述の処理で算出された負荷要求量が70であれば、余裕度は30(100−70=30)と算出される。
次に、提示情報選択部150は、情報提示内容選択処理を行う(S806)。そのために、提示情報選択部150は、情報提示テーブル165と、提示情報源194の夫々からの提示要求と、余裕度とから、提示情報が提示可能であるか否か判定し、この判定に応じて、情報を提示するよう制御する。より詳細には、提示情報選択部150は、少なくとも1つの提示情報源194からの提示要求がある場合、情報提示テーブル165の各レコードの項番601〜情報種603のうち少なくとも1つを参照し、入力された提示要求で提示する提示情報と同じものを示しているレコードを特定し、このレコードの提示要求量604を取得する。提示情報選択部150は、この提示要求量604と、余裕度とを比較し、提示要求量604のほうが小さい場合には、要求された情報の提示を可能とする。
また、提示情報源194から複数の提示要求があった場合、提示情報選択部150は、前述と同様に提示要求毎の提示要求量604を取得し、取得した複数の提示要求量604のうち、最も小さいものと余裕度とを比較して提示可否を選択することができる。ここで、提示要求量604が最も小さいとは、即ち、提示する緊急性が高い情報である。従って、提示要求量604が最も小さいものと余裕度とを比較することで、提示する緊急性が高い情報から優先して提示することが可能となる。
ただし、これに限るわけではなく、例えば、余裕度の値や、複数の提示要求の夫々で出力するデバイスが重複しないなど、所定の条件に応じて、複数の提示情報の夫々を重複しないよう提示可能としてもよい。
次に、提示情報選択部150は、S806で選択した提示要求で提示する提示情報を提示させる(S807)。そのために、提示情報選択部150は、例えば、S806で選択した提示要求で提示する提示情報を提示すべき提示情報源194に指示等を出力する。この指示に従い、提示情報源194は、提示情報を出力する。
情報提示装置100は、処理を終了するか否か判定する(S808)。この判定は、例えば、情報提示終了指示が入力された場合や、情報提示装置100の電源がオフされた場合などに、処理を終了すると判定してもよいが、これに限定しない。S808の判定の結果、処理終了でない場合(S808:no)、S801に戻り、所定時間後に再度処理フローが開始される。S808の判定の結果、処理終了である場合、処理フローが終了する。
なお、上記では、いずれかの提示情報源194から提示要求が入力されている場合を説明したが、提示要求は、常に入力されるとは限らない。どの提示情報源194からも提示要求が入力されていない場合、S801〜S805の処理を前述のように行い、S806、S807の処理をスキップして、S808に移行してもよい。
以下、図10から図14を用いて状況推定処理(S802)、サブタスク推定処理(S803)、負荷算出処理(S804)について詳細に説明する。
[状況推定処理(S802)]
図10は、状況推定処理(S802)のフローチャートの例である。状況推定部120は、まず、成立タスクを初期化し(S1001)、タスク条件テーブル161を取得し、タスク条件テーブル161のレコード数を変数Rの値として設定する(S1002)。次に、状況推定部120は、カウンタiを1に初期化する(S1003)。また、状況推定部120は、タスク条件テーブル161のi番目のレコードを取得し、このレコードに含まれている入力条件数(入力条件204の数)を変数Cの値として設定する(S1004)。状況推定部120は、カウンタjを初期化し(S1005)、j番目の入力条件を取得する(S1006)。状況推定部120は、この入力条件と、S801で取得した入力情報のうち該当する項目の値とを比較し(S1007)、入力情報がj番目の入力条件を満たすか否か判定する(S1008)。このj番目の入力条件とは、例えば、図2の場合、j=1であれば入力条件204aであり、j=2であれば入力条件204bである。
S1008の判定の結果、入力条件を満たさない場合(S1008:no)、後述するS1012の処理に移行する。一方、S1008の判定の結果、入力条件を満たす場合(S1008:yes)、状況推定部120はj=j+1としてjを増加させ(S1009)、j≦Cであるか否か、即ち、i番目のレコードのすべての入力条件に対し前述の判定を行ったか否か判定する(S1010)。S1010の判定の結果、j≦Cである、即ち、すべての入力条件に対し前述の判定を行っていない場合(S1010:yes)、状況推定部120は、S1006の処理に戻る。S1010の判定の結果、j≦Cでない場合、即ち、すべての入力条件に対し前述の判定を行っている場合(S1010:no)、状況推定部120は、i番目のレコードのすべての入力条件が成立しており、タスクが成立していると判定して、そのレコードで示されるタスクを成立タスク群に追加する(S1011)。
S1008の判定の後又はS1011の処理の後、状況推定部120は、i=i+1としてiを増加させ(S1012)、i≦Rであるか否か、即ち、タスク条件テーブル161のすべてのレコードについて前述の処理を行ったか否か判定する(S1013)。S1013の判定の結果、i≦Rである、即ち、すべてのレコードに対し前述の処理を行っていない場合(S1013:yes)、状況推定部120は、S1004の処理に戻る。S1013の判定の結果、i≦Rでない場合、即ち、すべてのレコードに対し前述の処理を行っている場合(S1013:no)、状況推定部120は、状況推定処理を終了する。
図11は、状況推定処理の結果として得た成立タスク群の例である。この例では、成立タスク群に含まれるタスクを、タスク条件テーブル161のタスク名203により示しているが、タスクID201で示してもよい。
成立タスク群1100は、減速、定常走行、信号十字交差点右折、前車車間(中)のタスクが成立していることを示している。つまり、信号のある十字交差点を右折しようとして定常走行から減速中で、前車との車間距離が中程度になりつつある状況を検出したことを示している。
このように、本実施形態では、同じ時間又はほぼ同じ時間における入力情報において、1つ以上のタスクを同時に成立可能とすることができる。これにより、実際に起こり得る膨大な状況を、限られた数のタスクの組み合わせで説明することが可能となる。
[サブタスク推定処理(S803)]
図12は、サブタスク推定処理(S803)のフローチャートの例である。負荷推定部130は、まず、成立サブタスク群を初期化し(S1201)、サブタスクテーブル162を取得する(S1202)。負荷推定部130は、状況推定部120から伝達された成立タスク群を取得して、成立タスク群に含まれているタスク数を変数Tの値として設定する(S1203)。次に、負荷推定部130は、カウンタiを1に初期化、即ちi=1とする(S1204)。次に、負荷推定部130は、成立タスク群からi番目のタスクを取得する(S1205)。負荷推定部130は、サブタスクテーブル162から、i番目のタスクに対し規定されているすべてのサブタスクを取得し、サブタスクの数を変数Sの値として設定する(S1206)。そのために、負荷推定部130は、サブタスクテーブル162内のレコードのうち、i番目のタスクと一致するタスクID301及びタスク名303のうち少なくとも一方を含む1つのレコードを特定し、このレコードのサブタスク304のすべてを取得する。
負荷推定部130は、カウンタjを1に初期化、即ちj=1とする(S1207)。次に、負荷推定部130は、S1206で取得したサブタスクのうち、j番目のサブタスクを取得し(S1208)、同じサブタスクが成立サブタスク群に含まれているか否か判定する(S1209)。S1209の判定の結果、成立サブタスク群に含まれていない場合(S1209:no)、負荷推定部130は、j番目のサブタスクを成立サブタスク群に追加し、そのサブタスクの成立回数である回数を1、即ち回数=1とする(S1210)。一方、S1209の判定の結果、成立サブタスク群に含まれている場合(S1209:yes)、負荷推定部130は、j番目のサブタスクの回数をインクリメント、即ち回数=回数+1とする(S1211)。
S1210又はS1211の後、負荷推定部130は、j=j+1とし(S1212)、i番目のタスクに対し規定されているすべてのサブタスクを取得していないか否か、即ち、j≦Sであるか否か判定する(S1213)。S1213の判定の結果、j≦Sである、即ちすべてのサブタスクを取得していない場合(S1213:yes)、負荷推定部130は、S1208の処理に移行する。一方、S1213の判定の結果、j≦Sでない、即ちすべてのサブタスクを取得している場合(S1213:no)、負荷推定部130は、i=i+1とし(S1214)、すべてのタスクに対し前述の処理を行っていないか否か、即ち、i≦Tであるか否か判定する(S1215)。S1215の判定の結果、i≦Tである、即ちすべてのタスクに対し前述の処理を行っていない場合(S1215:yes)、負荷推定部130は、S1205の処理に移行する。一方、S1215の判定の結果、i≦Tでない、即ちすべてのタスクに対し前述の処理を行っている場合(S1215:no)、サブタスク推定処理を終了する。
図13はサブタスク推定処理で生成される成立サブタスク群の例である。成立サブタスク群1300は、図示するように、サブタスクごとの成立した回数を含む。なお、この例では、成立サブタスク群に含まれるサブタスクを、サブタスク要求量テーブル163のサブタスク名403により示しているが、サブタスクID401で示してもよい。
成立サブタスク群1300は、例えば、「DCD_BRK(ブレーキ判断)」、「CTL_BRK(ブレーキ操作)」、「P_SCN_F(歩行者のスキャン(前))」などのサブタスクが成立していることを示している。つまり、現在の状況では、これらのサブタスクを実施することが作業者であるドライバーに求められており、それらのサブタスクによる精神的負荷がドライバーにかかると考えることができる。
このように、本実施形態では、1つのタスクで、1つ以上のサブタスクを規定することができる。サブタスクは、例えば作業者などのような、移動体の移動のために意思決定をする人が行う作業として規定することができる。そのような作業は有限数であり、ある程度予測可能である。従って、実際に起こり得る膨大な状況における精神的負担を、限られた数のサブタスクの組み合わせで算出することが可能となる。
[負荷算出処理(S804)]
図14は、負荷算出処理(S804)のフローチャートの例である。まず、負荷推定部130は、出力となる負荷量である負荷要求属性ごとの総和値TV、TA、TC、TPを初期化し(S1401)、サブタスク要求量テーブル163を取得し(S1402)、さらに、負荷加重テーブル164を取得する(S1403)。次に、負荷推定部130は、成立サブタスク群を取得し、成立サブタスク群に含まれるサブタスク数を変数Sの値として設定する(S1404)。
次に、負荷推定部130は、カウンタiを1に初期化する(S1405)。負荷推定部130は、成立サブタスク群からi番目のサブタスクを取得する(S1406)。そして、負荷推定部130は、サブタスク要求量テーブル163から、要求属性ごとの負荷要求量を取得して(S1407)、要求属性ごとの負荷要求量の総和に加算する(S1408)。
S1407、S1408の処理を説明する。負荷推定部130は、S1407の処理として、サブタスク要求量テーブル163内のレコードのうち、i番目のサブタスクと一致するサブタスクID401及びサブタスク名403のうち少なくとも一方を含むレコードを特定し、このレコードの負荷要求量404のすべて(例えば図4に示される負荷要求量404a〜負荷要求量404e)を取得する。次に、負荷推定部130は、要求属性ごとに、負荷要求量の総和に加算する。
ここでは、負荷推定部130は、負荷要求量の総和を、要求属性の種類の個数であるY個の変数を持つベクトルで示す。より具体的には、例えば、i番目のサブタスクにおいて、サブタスク要求量テーブル163から取得した視覚要求V、聴覚要求A、認識/判断要求C、精神的操作要求Pの夫々に対しS1407の処理で取得した負荷要求量を vi、ai、ci、piとして、負荷推定部130は、夫々の負荷要求属性ごとの総和値TV、TA、TC、TPを算出する。すなわち、S1408では、TV=TV+vi、TA=TA+ai、TC=TC+ci、および、Tp=Tp+piのように各総和値に加算する。
次に、負荷推定部130は、カウンタiをインクリメントしてi=i+1とし(S1409)、すべてのサブタスクに対し前述の処理を行っていないか否か、即ち、i≦Sであるか否か判定する(S1410)。S1410の判定の結果、i≦Sである、即ち、すべてのサブタスクに対し前述の処理を行っていない場合(S1410:yes)、S1406の処理に戻る。一方、S1410の判定の結果、i≦Sでない、即ち、すべてのサブタスクに対し前述の処理を行っている場合(S1410:no)、負荷推定部130は、動的ファクタ値を算出し(S1411)、S1408で算出した負荷要求量の夫々に積算する(S1412)。
ここで、S1411の動的ファクタ値とは、タスク条件テーブル161のカテゴリ202「動的ファクタ」に属するタスクに該当する状況での精神的負荷を示す値である。動的ファクタ値を算出するために、負荷推定部130又は情報提供装置100の他の部は、入力情報から、現在の状況が動的ファクタのいずれかに該当するか否か判定し、いずれかの動的ファクタに該当する場合、その動的ファクタに属するタスクごとに定められている関数や定数をテーブル等から取得し、これを用いて算出する。より具体的には、例えば、負荷推定部130は、図2のタスク条件テーブル161の入力条件204と入力情報とから、タスク名203「速度−車間」の動的ファクタに該当するか否か判定し、該当する場合、動的ファクタ値を、速度及び車間を変数とする関数f(v,x)から算出してもよい。
最後に、負荷推定部130は、負荷加重テーブル164から要求属性ごとの係数を取得して、これを要求属性ごとの負荷要求量に積算し(S1413)、これらすべての総和に負荷加重テーブル164から取得した定数項を加算することで一次元化負荷量を算出する(S1414)。ここで、負荷加重テーブル164から取得される要求属性ごとの係数とは、例えば、図5に一例を示す要求名502「視覚要求」、「聴覚要求」などの夫々に対応する加重係数503の値である「0.6」、「0.2」などである。また、負荷加重テーブル164から取得した定数項とは、例えば、図5に一例を示す要求名502「定数項」に対応する加重係数503の値である「22.1」などである。具体的には、例えば、負荷加重テーブル164から取得される視覚要求V、聴覚要求A、認識/判断要求C、精神的操作要求Pの夫々の係数をwV、wA、wC、wPとし、負荷加重テーブル164から取得される定数項をwδとすると、負荷推定部130は、一次元化負荷量Lを以下のように算出する。
なお、TV、TA、TC、TPは、S1414までに行われたS1408の処理で算出された夫々の要求負荷要属性ごとの総和値である。また、この式では、動的ファクタについては示さないが、前述の速度及び車間を変数とする関数f(v,x)として求めた動的ファクタの値を全体に乗算してもよいし、夫々の負荷要求属性に対する値として算出した動的ファクタに関しては各項に別途乗算してもよい。
ここで、サブタスクが成立した回数(例えば図13に示す成立サブタスク群1300の回数)は、一次元化負荷量の算出に用いてもよく、用いなくてもよい。例えば、タスク「前車接近(近)」を含む複数タスクが成立している場合において、サブタスク「CTL_BRK(ブレーキ操作)」が2回以上成立している場合は、作業者には、ブレーキ操作を2回以上行うことに相当する精神的負荷がかかるとは限らず、1回のブレーキ操作と同じ精神的負荷がかかると考えられる。このような場合などでは、一次元化負荷量の算出に、サブタスクの成立回数を用いなくてもよい。
また、例えば、タスク「逆光」及び「人検出」を含むタスクが成立している場合において、サブタスク「P_SCN_F(歩行者のスキャン(前))」が2回以上成立している場合は、作業者には、「逆光」という状況での歩行者のスキャンと、「人検出」という状況での歩行者のスキャンという2回以上の歩行者のスキャンに相当する精神的負荷がかかることが考えられる。このような場合などでは、一次元化負荷量の算出に、サブタスクの成立回数を用いてもよい。一次元化負荷量の算出に回数を用いるか否かについては、成立タスク群に含まれるタスクのうち少なくとも一部と、成立サブタスク群に含まれるサブタスクのうち少なくとも一部と、のうち少なくとも一方により定めてもよい。一次元化負荷量の算出に回数を用いる場合、例えば、回数を、すべての要求属性の値の夫々に掛け合わせてもよい。
以上が負荷算出処理の一例である。前述の処理により算出された負荷量、および、一次元化負荷量を、所定期間記憶しておき、移動平均などの公知技術により平準化した値を最終的な出力値としてもよい。また、閾値処理を行い、複数段階のレベルに離散化した値を出力値としてもよい。
[表示画面例]
ここで、S807で出力される提示情報の一例を説明する。以下では、インストゥルメントパネルなどに設けられたディスプレイ装置や表示領域などの画面に提示情報を表示する例を説明するが、提示情報の提示はこれに限定せず、提示情報を出力する出力装置は任意である。
図15は、いずれの提示情報源194からも提示要求が入力されていない場合の画面の例である。画面1501には、グラフ1502、エンジン回転数1503、速度1504が含まれる。グラフ1502は、前述の処理で算出された余裕度を示す。エンジン回転数1503は、車両のエンジンの回転数を示す。速度1504は、車両の走行速度を示す。これらの速度及びエンジン回転数は、外部情報源191のいずれかから入力されてもよい。
図16は、音楽プレーヤである提示情報源194から提示要求が入力された場合の画面の例である。ここでは、画面1501を表示している間に提示要求が入力され、前述の処理で余裕度が80程度、提示要求量が70と算出され、要求された提示情報の提示を行う場合の例を示している。
画面1601は、グラフ1502、エンジン回転数1503、速度1504(ただし、エンジン回転数1503及び速度1504の少なくとも一部は示していない)に加え、音楽情報1602を含む。音楽情報1602には、アルバム名情報1611、アーチスト名情報1612、トラック番号や再生位置のような音楽情報1613が含まれる。
図17は、ナビゲーションシステムである提示情報源194から提示要求が入力された場合の画面の例である。ここでは、交差点拡大図の提示要求が入力され、前述の処理で余裕度が60程度、提示要求量が50と算出され、要求された提示情報の提示を行う場合の例を示している。
画面1701は、グラフ1502に加え、交差点拡大図1702を含む。また、図示していないが、画面1701には、これらに加え、エンジン回転数1503、速度1504が含まれていてもよい。
例えば、余裕度が60の状態で、ナビゲーションシステムである提示情報源194からの、交差点拡大図の提示要求と同時に、音楽プレーヤである提示情報源194から提示要求がある場合、音楽プレーヤからの提示要求に応じて情報を提示することはできない。理由としては、第1に、余裕度が60程度であり、音楽プレーヤから提示要求の提示要求量は70であるため、音楽プレーヤから提示要求に応じて情報を提示するには、余裕度が十分でないからである。第2に、ナビゲーションシステムから提示要求の提示要求量は50であるのに対し、音楽プレーヤから提示要求の提示要求量は70であるため、ナビゲーションシステムからの提示要求のほうが提示する緊急性が高いからである。
また、他の例として、ナビゲーションシステムである提示情報源194からの交差点拡大図の提示要求と同時に、提示要求量が55となる他の提示要求があった場合についても、他の提示要求に応じて情報を提示することはできない。というのも、余裕度が60程度であり、他の提示要求の提示要求量が55であるため、余裕度は十分であるが、ナビゲーションシステムから提示要求の提示要求量は50であるのに対し、他の提示要求の提示要求量が55であるため、ナビゲーションシステムからの提示要求のほうが提示する緊急性が高いからである。
なお、前述のように、余裕度に対する条件を満たす複数の提示要求が同時に存在する場合、提示要求量から1つを選択して情報を提示し、その後に、他の1つを選択して情報を提示するようにしてもよい。具体的には、例えば、前述の例では、交差点拡大図の提示が終了したあとに、他の提示要求に応じた情報を提示してもよい。これを可能とするために、提示情報選択部150は、例えば、提示要求を提示要求量の小さい順にリスト化しておき、ある情報の提示が終了すると、そのリストに従って順次提示を行うように制御してもよい。提示情報選択部150は、提示情報の提示時間を、例えば、情報提示テーブル165の提示時間605により規定されたものに従って制御してもよい。
図18は、ADASである提示情報源194から提示要求が入力された場合の画面の例である。ここでは、前車衝突警報の提示要求が入力され、前述の処理で余裕度が10、提示要求量が0と算出され、要求された情報の提示を行う場合の例を示している。
画面1801は、グラフ1502に加え、前車衝突警報1802を含む。前述のように、余裕度は10程度とかなり低いが、前車衝突警報の提示要求量は0であるため、この情報が提示される。
このように、提示する緊急性が非常に高い情報に関しては、提示要求量を、余裕度のとり得る範囲に対して非常に低く設定することで、余裕度がどのような状態であっても提示を行うことが可能となる。ここでは、余裕度の範囲を0〜100としているので、提示要求量を0や負の値とすることで、情報を確実に提示することが可能となる。また、このようにすることで、他の情報よりも提示の優先度を高くすることができる。このような提示は、特に、衝突警報などのような警報系の情報提示に用いると有用である。
[時系列の入力情報]
外部情報源191からの入力情報は、所定タイミングにおける値でもよいが、時刻情報を含み、時系列情報として取得されてもよい。
図19は、時系列情報として取得される入力情報の例である。時系列入力情報1901は、入力情報が、ある時点でのオン又はオフで示される例を示している。より具体的には、項番1及び項番2を例にして説明すると、ある情報値のオン(又はオフ)が30単位時間(例えばミリ秒など)継続した後に、オフ(又はオン)が52単位時間継続することを示している。
ただし、時系列情報として入力される入力情報は、図19に示すものに限られない。入力情報は、例えば、時刻と、その時刻のときの値とを示してもよい。また、フォーマットも、図19に示すものに限られない。また、時系列の入力情報は、各外部情報源191又は図示しない外部機器が生成してもよく、情報取得部110が生成してもよい。情報取得部110又は外部機器が生成する場合、情報取得部110又は外部機器は、所定タイミングで外部情報源191から取得した入力情報の値を所定時間の間保持し、保持した各タイミングにおける入力情報の値をまとめて時系列情報としてもよい。
状況推定部120、負荷推定部130、余裕度推定部140の夫々は、前述の処理を、各時点における入力情報の値を用いて行う。従って、余裕度推定部140が算出するのは、時系列の余裕度である。
図20は、時系列の余裕度を表示する画面例である。画面2001には、グラフ2002、エンジン回転数1503、速度1504が含まれる。グラフ2002は、前述の処理で算出された時系列の余裕度を示す。グラフ2002を構成する複数の棒のうち、過去の余裕度を示すもの(たとえば棒2002a)の表示形態を、現在の余裕度を示すもの(たとえば棒2002b)の表示形態と異なるようにしてもよい。表示形態を異なるようにするには、例えば、色を変える、点滅させるなどがあるが、これに限定しない。このようにすることで、作業者は、余裕度の時系列変化を認識しやすくなる。
なお、時系列の余裕度は、前述のように、入力情報が時系列であるときに算出してもよいが、入力情報が時系列でなくても、余裕度を算出した時刻情報を、余裕度とともに保持しておくことで、時系列の余裕度とすることができる。
[余裕度の提示情報への適用]
提示要求に応じて提示させる提示情報の内容を、時系列の余裕度に応じて選択して出力させてもよい。具体例としては、提示情報がナビゲーションシステムにおける経路誘導情報であれば、作業者であるドライバーの余裕度の好みに応じた経路を探索するように構成することができる。
図21は、誘導する経路におけるドライバーの余裕度の好みを設定する画面の例である。画面2101では、余裕度の好みとして、「通常」、「疲労少ない」、「緊張少ない」、「のんびり走行」のうち1つを選択可能な例を示している。なお、余裕度の好みは、ここでは4つの種類のいずれかを設定可能とする例を説明しているが、これに限定されない。また、画面2101では、各種類における予測所要時間、走行距離をさらに含めているが、これらは、ナビゲーションシステムにより算出され、後述する処理により選択された経路に該当するものを表示してもよい。
「通常」とは、余裕度により経路を設定しないモードである。「疲労少ない」とは、経路全体でみたときに余裕度が比較的大きい経路を探索するモードである。「緊張少ない」とは、余裕度のディップ(急峻な低下)の値が比較的小さい経路を探索するモードである。「のんびり走行」とは、余裕度のディップ回数が比較的少ない経路を探索するモードである。
移動時の余裕度について詳細に説明する。図22は、移動時における余裕度の推移である。グラフ2201において、横軸は移動時間であり、縦軸は余裕度である。線2211は前述の「通常」モードでの経路、即ち余裕度により経路を設定しない経路での余裕度の推移の例を示す。線2212は前述の「疲労少ない」モードでの経路、即ち経路全体でみたときに余裕度が比較的大きい経路での余裕度の推移の例を示す。なお、ここでは、線2212は、前述の「のんびり走行」モードでの経路、即ち余裕度のディップ回数が比較的少ない経路での余裕度の推移と同じとなる例を示している。線2113は前述の「緊張少ない」モードでの経路、即ち余裕度のディップの値が比較的小さい経路での余裕度の推移の例を示す。
グラフ2201に示すような経路の夫々を特定するために、余裕度推定部140は、ナビゲーションシステムである提示情報源194などがダイクストラ等の公知技術により取得した複数の経路候補の夫々に対し、余裕度を算出するとよい。余裕度推定部140は、余裕度を算出するために、経路候補ごとに、車両が存在すると推測される場所(例えばノード、リンク、信号有無などを含む各種情報)を複数特定し、その場所の夫々が、少なくともタスク条件テーブル161のカテゴリ202「場所タスク」に属するいずれかのタスクに該当するか否か判定し、いずれかのタスクに該当する場合、前述と同じ処理によりサブタスクを特定して、余裕度を算出してもよい。ここで特定される場所は、経路候補において所定時間ごとに車両が存在すると推測される場所であってもよく、経路候補上に存在する所定種類の場所(例えば交差点や合流地点、およびそれらの間の地点など)であってもよい。また、ここで特定される場所における移動時間は、公知の経路探索技術などにより取得することができる。
また、余裕度推定部140は、前述と同様に、経路候補を構成する道路の場所がカテゴリ202「物理タスク」に属するいずれかのタスクに該当するか否かや、カテゴリ202「動的ファクタ」に該当するか否かを加味して、余裕度を算出してもよい。
また、余裕度推定部140は、過去の履歴や、ドライバーに対し一般的に推測される行為パターンなどから、前述と同様に、カテゴリ202「走行タスク」のいずれかに属するか否かを加味して、余裕度を算出してもよい。
余裕度推定部140は、例えば、複数の経路候補のうち、余裕度を走行時間で積分した積分値が最大となるものを、「疲労少ない」モードでの経路としてもよい。余裕度を移動時間で積分した積分値とは、例えば、線2211と縦軸及び横軸とから規定される面積である。
また、余裕度推定部140は、例えば、複数の経路候補のうち、余裕度のディップが発生した場合に、発生したディップにおける余裕度の最小値(ディップ値)が最も高いものを、「緊張少ない」モードでの経路としてもよい。余裕度のディップが発生したか否かについては、例えば、所定時間内における余裕度の減少量が所定閾値以上(又は所定閾値より大きい)である場合や、余裕度そのものが所定閾値以下(又は所定閾値未満)となった場合に、ディップが発生したと判定してもよい。ディップが複数回発生している場合、余裕度推定部140は、ディップ値及び発生回数の少なくとも一方からいずれかの経路を選択してもよい。
また、余裕度推定部140は、例えば、複数の経路候補のうち、余裕度のディップが発生した場合に、発生したディップの回数が最も少ないものを、「のんびり走行」モードでの経路としてもよい。余裕度のディップが発生したか否かの判定は前述と同じでもよい。ディップが複数回発生している場合、余裕度推定部140は、ディップ値及び発生回数の少なくとも一方からいずれかの経路を選択してもよい。
ナビゲーションシステムは、選択された経路に従って表示や誘導などを行う。この表示や誘導そのものなどは、公知技術及び前述の表示と同じであるので説明を省略する。このようにすることで、作業者の好みや適性にあった情報提示を実現することができる。
[余裕度に応じた情報提示]
前述のように、提示情報選択部150は、余裕度の値に応じて提示する情報を選択する。提示情報選択部150による提示情報の選択は、余裕度の値そのものだけでなく、前述の、余裕度を移動時間で積分した積分値、ディップ値、ディップ回数のうち少なくとも1つに応じて、提示する情報を選択するように構成してもよい。
[テーブルの作成及び更新]
前述のように、記憶部160内に記憶されているテーブルは、所望のタイミングで作成及び更新(変更及び削除)することが可能である。上記のように、本実施形態は、タスク・サブタスクとにより精神的負荷を定義できるため、維持管理を柔軟に行うことができる。ここでは、一例として、タスク条件テーブル161、サブタスクテーブル162、サブタスク要求量テーブル163の夫々の作成及び更新について説明する。各テーブルの作成及び更新は、コンピュータ193などを用いて行うことが可能である。
図23は、タスク条件テーブル161を作成及び更新するための画面の例である。なお、図23ではタスクに関する情報を変更する場合の例を示しているが、変更だけでなく、追加及び削除も可能である。
画面2301は、領域2311、領域2321等を含む。領域2311は、ユーザが入力装置を用いてタスクに関する情報の追加、変更、削除のいずれかを指定するための領域である。領域2321は、タスクに関する情報の追加、変更、削除の内容を入力するための領域である。前述のように、ここでは変更が選択されているので、既に存在するタスク条件テーブル161の各レコードの情報が領域2321に表示される。ユーザは、入力装置を用いて、変更したいタスクに関する項目(例えばカテゴリ、タスク名、入力条件(入力項目及び条件)など)を選択する。図23では、入力条件の種類が選択された例を示している。ユーザは、このように変更したい項目を選択した後に、変更する値を入力する。ここでは、入力条件の入力項目が選択されているので、入力項目として選択可能なものの一覧が表示制御される。画面2301における領域2322は、入力項目として選択可能なものの一覧が表示されている例である。ユーザは、入力装置を用いて、領域2322からいずれか1つを選択する。コンピュータ193は、選択された入力項目を、選択されたタスクにおける入力条件の新たな入力項目としてタスク条件テーブル161に登録する。
また、例えば、変更したい項目の値を自由入力とすることもできる。例えば、変更したい項目として、入力条件の条件が選択された場合、領域2321に含まれる複数の領域のうち選択された項目に該当する領域や、別途表示などされた入力領域に、変更したい項目の値を入力可能としてもよい。また、例えば、新たにカテゴリを追加したい場合、ユーザは、入力装置を用いてボタン2331を押下し、所定領域に追加するカテゴリの名称などを自由入力するとよい。コンピュータ193は、入力された情報をタスク条件テーブル161に登録する。
図24は、サブタスクテーブル162を作成及び更新するための画面の例である。なお、図24では、サブタスクに関する情報を変更する場合の例を示しているが、変更だけでなく、追加及び削除も可能である。
画面2401は、領域2411、領域2421等を含む。領域2411は、ユーザが入力装置を用いてサブタスクに関する情報の追加、変更、削除のいずれかを指定するための領域である。領域2421は、サブタスクに関する情報の追加、変更、削除の内容を入力するための領域である。前述のように、ここでは変更が選択されているので、既に存在するサブタスクテーブル162の各レコードの情報が領域2421に表示される。ユーザは、入力装置を用いて、変更したいサブタスクに関する項目(例えばカテゴリ、タスク名、サブタスクなど)を選択する。図24では、項目「サブタスク」が選択された例を示している。ユーザは、このように変更したい項目を選択した後に、変更する値を入力する。ここでは、「サブタスク」が選択されているので、変更可能なサブタスクの一覧が表示制御される例を示している。画面2401における領域2422は、変更可能なサブタスクの一覧が表示される例である。ユーザは、入力装置を用いて、領域2422内のサブタスクからいずれか1つを選択する。コンピュータ193は、選択されたサブタスクを、選択されたタスクに該当するサブタスクとしてサブタスクテーブル162に登録する。
図25は、サブタスク要求量テーブル163を作成及び更新するための画面の例である。なお、図25では、サブタスクの提示要求量に関する情報を変更する場合の例を示しているが、変更だけでなく、追加及び削除も可能である。
画面2501は、領域2511、領域2521等を含む。領域2511は、ユーザが入力装置を用いて提示要求量に関する情報の追加、変更、削除のいずれかを指定するための領域である。領域2521は、負荷要求量に関する情報の追加、変更、削除の内容を入力するための領域である。前述のように、ここでは変更が選択されているので、既に存在するサブタスク要求量テーブル163の各レコードの情報が領域2521に表示される。ユーザは、入力装置を用いて、変更したい負荷要求量に関する項目(例えばカテゴリ、サブタスク名、要求属性など)を選択する。図25では、「視覚要求」の要求属性が選択された例を示している。ユーザは、このように変更したい項目を選択した後に、変更する値を入力する。ここでは、要求属性が選択されているので、ユーザが入力装置を用いて、領域2522に要求属性の値を入力可能とする例を示している。コンピュータ193は、入力された値を、選択された属性要求の負荷要求量としてサブタスク要求量テーブル163に登録する。
また、例えば、新たにカテゴリを追加したい場合、ユーザは、入力装置を用いてボタン2531を押下し、所定領域に追加するカテゴリの名称などを自由入力するとよい。コンピュータ193は、入力された情報をサブタスク要求量テーブル163に登録する。
前述のように作成、更新されたテーブルの夫々は、任意のタイミングで、通信ネットワークやI/Fを介して、又は、可搬性記憶媒体に記憶されたものを読み込むことにより、情報提示装置100に入力され、記憶部160に記憶される。
[負荷加重テーブル]
負荷加重テーブル164は、前述のように、負荷推定部130での負荷算出処理(図8のS804、図14)において、動的ファクタ乗算(S1412)を行った後の補正に用いる(S1413)。この目的は、ここで説明する複数のタスク、複数のサブタスク、および動的ファクタを用いて求めた負荷要求の値を、現実世界で作業者が感じている行為の精神的負荷に近似させるスケーリングのためである。
ここでは、作業者が実際に感じるWLの値をLとし、このうち、ある作業状況iにおいて計測されたWL値をLiとする。また、ある作業状況iにおける前述の一次元化負荷量(算出された精神的負荷量)をL’iとする。WL値Liと一次元化負荷量L’iとは、必ずしも厳密に一致するとは限らず、一次元化負荷量L’iを算出するための加重値や定数項は、WL値Liに近づくように設定される。
一次元化負荷量L’iは、数1に示す重回帰モデルを用いて求めている。なお、ここでは、前述の精神的負荷の要求属性は、視覚要求V、聴覚要求A、認識/判断要求C、精神的操作要求Pの4種類であるものとして説明する。また、動的ファクタ乗算(S1412)を行った後の、視覚要求V、聴覚要求A、認識/判断要求C、精神的操作要求Pの夫々の負荷要求量をVi,Ai,Ci.Piとする。また、負荷加重テーブルより取得した、視覚要求V、聴覚要求A、認識/判断要求C、精神的操作要求Pの夫々の加重値をwv、wa、wc、wpとし、定数項をwδとする。
この一次元化負荷量L’iにおいて、作業者が実際に感じるWL値Liに近似させるための加重値であるwv、wa、wc、wp、および、定数項wδは、例えば、最小二乗法を用いて求めることができる。その一例として、作業者が感じるWL値を、多くの技術で用いられている、主観的指標によるWLの計測手法であるNASA−TLX法を用い、いくつかの作業状況において計測することとして説明する。NASA−TLX法は、6つの評価軸に関する得点と、2つの評価軸の組み合わせ間の重要性を作業者に問い、0〜100のWL値を算出することとする。
ここで、i番目の状況のWL値Liと、視覚要求V、聴覚要求A、認識/判断要求C、精神的操作求Pの夫々の負荷要求量Vi,Ai,Ci.Piとの二乗誤差Eは数2のようになる。
二乗誤差Eを最小にするため、二乗誤差Eを加重値wv、wa、wc、wpおよび、wδの夫々で偏微分し、これを0とすると、以下の数3〜数7が得られる。
前述の数4〜数8を整理して連立させ、行列式にすると、求めたい加重値wv、wA、wC、wP、および、wδは逆行列を用いて数9のように表すことができる。
このようにして、作業者が実際に感じるWLの値Li、および、その際に負荷推定部の動的ファクタ乗算(S1412)の後で得られる負荷要求量Vi,Ai,Ci.Piの夫々をいくつかの状況で観測することで、負荷加重テーブル164の各要素である加重値wv、wa、wc、wp、および、wδを求めることができる。
なお、要求属性は前述に限るわけではなく、任意の属性を含めることができ、その数も限定されない。どのような要求属性であっても、夫々における負荷加重は前述と同様に求めることができる。また、負荷加重の算出も、前述の最小二乗法に限らず、例えば非線形最小二乗法、最急降下法、ニュートン法など、他の数値解析手法により負荷加重を求めてもよい。また、前述の数1の重回帰式は一例であって、夫々の要求属性の値の次元や、指数関数式による式など、適宜選択することができる。また、説明のように解析的なモデル以外にも確率モデル、統計的な数値の利用などの適用を妨げるものではない。
また、作業者が感じるWL値の計測方法は前述のNASA−TLX法に限定せず、SWAT法やDALI法などの主観的指標によるWL値、オクルージョン法、あるいは、心拍などの生体指標を用いての精神的WLと相関の高い数値をはじめとする多くの手法から選択して用いてもよい。
なお、作業者が実際に感じるWL値は、限定的な状況で計測しても算出できるが、その状況の性質はまちまちであることで精度向上が期待できる。また、計測状況数は多い方がよいが、あまり多すぎると逆にノイズによる影響を受け精度が下がることがある。このような場合は、例えば自動車運転では一般道路と高速道路など道路クラスに応じて別途負荷加重を算出するなど、複数の負荷加重を用意して適用してもよい。
以上、本発明の一実施形態を説明した。WLの考え方では、作業の強度が強い場合には、作業者は集中や努力を必要とされ、この状態が続くと作業者には精神的な疲労を感じ、長時間続く場合には抑うつなどの精神疾患の原因になるとも考えられている。また、作業強度が低い場合が長時間続いても、飽き、単調感、不満や作業者の意識低下、生産性の低下につながる。また、本来の作業を妨害する別の作業が発生する場合、集中力低下により作業中の事故の原因となると考えられている。
たとえば、自動車を運転するという作業を行う作業者にとっても、WLの不都合による自動車事故が問題である。具体的には、長時間運転による疲労や単調な運転状況が引き起こす居眠りや注意力低下による事故がある。また、運転中のスマートフォンやカーナビゲーションシステムなど情報機器を用いて多くの情報の視聴や機器の操作を行ったことで危険を察知・認識・回避を怠ることが原因となる事故も多く、作業者が車内で情報機器を視聴・利用・操作する行為が、作業者のリソースとしての認知・判断・操作の機能を阻害する注意散漫(ディストラクション)を引き起こす原因となりうる。
したがって、作業者が行う作業の強度とその反応となる作業者の状況を、WLを用いて観察、評価し、適切な情報提供の選択やタイミングの考慮、および、作業プロセスを工夫して、作業環境を改善することが求められる。自動車運転においても、事故の人的要因(「認知」・「判断」・「操作」夫々でのエラー)に対して、作業者のWLを推定し,これが高水準の時には自動車自体の挙動、および、情報機器が提示する情報量や必要とする操作量を制限するといった新しいシステム開発が期待されている。
従来、WLを評価する方法として、作業者の心拍や脳波やアミラーゼの量などをセンサにより計測する生理的指標、アンケートを用いた点数を評価する主観的指標、および、副課題を与えた場合の作業成果を計測する副課題指標などが用いられてきた。これら指標により、特に、自動車運転作業に関しては、これらの指標を用いて測定した作業者のWL評価結果を用いて、車両内機器で作業者に提示する情報を選択、タイミングを調整する技術があった。しかし、従来の技術では、あらかじめ特定した状況に特化したWLを出力することが前提である。ところが、実際には、ほぼ無数の状況が存在しえる。それらの状況すべてのWLを測定することは困難であり、現実的ではない。
前述のように、本実施形態では、タスク条件テーブル、サブタスクテーブル、サブタスク要求量テーブル、負荷加重テーブルを用いて、状況推定、負荷推定および余裕度を推定することができる。すべての状況は、有限個のタスクの組合せと、有限個のサブタスクの組み合わせとから、その状況下での負荷要求量を分析可能である。
また、負荷加重テーブルを作業者が感じるWLを近似するようにして補正している。この結果、余裕度に応じた情報提示の選択を行うことで、膨大な状況に対しても、網羅度が高く維持管理も容易となる実用的な作業環境を提供することができる。
なお、前述では、タスク条件テーブル、サブタスクテーブル、サブタスク要求量テーブル、負荷加重テーブルを用いて負荷要求量を算出しているが、これら全てを用いる必要はない。入力情報から、前述のタスク及びサブタスクが特定され、サブタスクから、作業者への精神的負荷を示す負荷要求量が取得可能であればよい。同様に、上記では、余裕度と情報提示テーブルとを用いて提示情報が提示可能か否か判定しているが、必ずしも情報提示テーブルを用いる必要はなく、余裕度に応じて情報が提示可能か否か判定できればよい。
また、前述では、負担限界量から、負荷推定部で算出した負荷量を減じた量を余裕度としているが、負荷要求量から余裕度を取得できればよく、取得技術はこれに限らない。例えば、負荷要求量と所定関数とから余裕度を取得してもよい。
また、前述のテーブルは一例であり、図示したものに限らない。例えばタスク、サブタスク及び負荷要求量、加重係数や定数項、提示要求量など、前述した情報の夫々を示すことが可能な情報であればよい。情報提示装置の構成も一例であり、図示したものに限らない。例えば、ある部が他の部の機能のうち少なくとも一部を有してもよく、1つの部が複数に分割されていてもよい。また、情報提示装置は、独立した1つの装置であってもよく、他の装置(たとえばナビゲーションシステムなど)の一部として構成されてもよい。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、前述の実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、前述の各図において、制御線や情報線は説明上必要と考えられるものを示しており、必ずしも実装上の全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
上述した実施例を基に、より個人の特性に即したWL値を算出することで、使い勝手を向上した情報提示装置の実施の態様について説明する。
[構成の説明]
図26は本実施形態の情報提示装置のブロック図の例である。情報提示装置2600は、図1で説明した各処理ブロックと、特性判定部2610、個人特性管理部2620を含み、記憶部160が、サブタスクテーブル2630、サブタスク要求量テーブル2640、個人特性情報テーブル2650、個人別サブタスクテーブル2660を記憶している。
特性判定部2610は、情報取得部110の各種情報を用いて、作業者の作業特性を判定する。個人特性管理部2620は特性判定部2610の判定結果を用いて、サブタスクテーブル2630、サブタスク要求量テーブル2640、および個人特性情報テーブル2650から、個人別サブタスクテーブル2660を生成する。
ここで、記憶部160に記憶されているテーブルの一例を詳細に説明する。以下で説明するテーブルの夫々は、予め記憶部160に記憶されていてもよく、所望のタイミングで作成や更新等されてもよい。
図27はサブタスクテーブルの例の説明図である。サブタスクテーブル2630の各レコード内容は図3の説明と同様である。信号ありの十字交差点左折および右折タスクについて、三段階の習熟度に応じた、3つのサブタスク合成パターンを規定し、内容を変化させている。例えば信号有十字交差点左1は、本タスク(交差点左折)の習熟度が低い場合を想定しており、進行方向判断サブタスク(DCD_DIR)は各パターンに応じた作業負荷度合のサブタスクを割り当てる。低習熟度にあわせたサブタスク構成には、右ウインカー操作(CTL_WKR)など、習熟度が高い場合には含まないサブタスクを含んでいる。これは、運転の習熟度が増すと、ルールベースで行っていた認知処理が自動化されて無意識的に処理可能になるため、習熟度が低い作業者以外にはサブタスクの計上が不要との判断である。このテーブルを用いることで、後述するように習熟度に応じたWL値が計算可能であり、ひいては作業中の安全性が向上する効果が得られる。なお、サブタスクテーブル162のタスクID301とタスク条件テーブル161のタスクID201とが対応するように、習熟度に応じて変化するタスクのタスクIDには小数点一位の桁を設ける。この例に限らず、「102A」「102B」といった添字を設けるのでも良い。
図28は習熟度に応じたサブタスク要求量テーブルの例の説明図である。サブタスク要求量テーブル2640は、図4で説明した各レコード401〜405と、慎重度2801を含む。慎重度2801は後述する作業者の特性情報テーブルの含む慎重度情報との対応付けに使用する。本実施例のサブタスク要求量テーブル163は、進行方向決断タスク(DCD_DIR)について三段階の負荷要求量を規定しており、自車周囲の車両確認タスク(前方:V_CHK_F、右方向:V_CHK_R、左方向:V_CHK_L、後方:V_CHK_B)、歩行者確認タスク(前方:P_SCN_F、右方向:P_SCN_R、左方向:P_SCN_L、後方:P_SCN_B)も同様であり、また、作業者の特性によって精神的負荷に変化が生じると考えうるサブタスクについて同様に規定すれば良い。
図29は個人特性情報テーブルの例の説明図である。個人特性情報テーブル2650の各レコードは作業者ID2901、作業者名2902、慎重度2903、識別情報2904、タスク習熟度テーブル2910を含み、作業者毎の作業特性情報を規定する。さらにタスク習熟度テーブル2910の各レコードはタスクID2911、タスク名称2912、習熟度2913、施行回数2914を含む。作業者ID2901は、作業者を一意に識別するための重複しない番号である。作業者名2902は、例えば作業者が入力部180から指定可能な文字列情報である。
慎重度2903は作業者の特性の一つである運転の慎重さを示す指標であり、本実施例では実施の一例として3段階で規定する。識別情報2904は情報提示装置2600が作業者を自律的に識別するための情報であり、例えば顔画像情報や音声情報を作業者が登録する。例えば、作業者名2902登録時に、図26には未記載のカメラにより作業者の顔画像を撮像して識別情報2904に登録し、以降、情報提示装置2600起動時あるいは稼働中に作業者の顔画像を撮像して、登録された識別情報との類似を判別することで、使用者を特定する。
なお、例えば作業者が情報提示装置2600使用開始時に毎回手動で使用者が誰かを設定すれば、識別情報2904が無くても使用者の特定が可能である。タスク習熟度テーブル2910は作業者毎の各タスクの習熟度情報を管理するために用いる。タスクID2911はタスクを一意に特定するユニークな番号である。タスク名2912はタスク条件テーブル161のタスク名203の値に相当する。
タスクID2911およびタスク名2912はタスク条件テーブル161の全タスクを踏襲する必要はなく、習熟度に応じてサブタスクが切り替わるものを抽出して規定すれば良い。習熟度2913はそのタスクにどれだけ習熟しているかを表す指標である。本実施例では3段階で表現している。施行回数2914はそのタスクを実行した回数を示す。
なお、個人特性情報テーブルには、上記で説明した以外の項目を追加してワークロード推定や余裕度推定に利用しても良い。例えば、作業者個人の性別、生年月日、年齢、通行した道路の履歴情報や住居のある地区情報、などである。
図30は個人別サブタスクテーブルの例の説明図である。個人別サブタスクテーブル2660の各レコードはサブタスクテーブル162と同じである。後述する処理フローにより、個人特性管理部2620によって作業者の特性に基づいて個人特性を反映したサブタスクの組み合わせが規定される。負荷推定部130のサブタスク推定処理に用いられる。また、個人別サブタスクテーブルは作業者の人数分生成される。
[処理の説明]
以上で説明した装置構成、テーブル群によって、作業者個人の特性に適合したワークロード推定を行う処理について説明する。
作業者はまず、情報提示装置2600に作業者自身の情報を登録する。一旦登録が完了すれば、作業者自身の運転成績情報が個人特性情報テーブルに記録され、その情報が削除されるまで、個人に適応したワークロード推定と情報提示処理が実施される。
図31は、情報提示装置2600の個人別に必要な個人情報の登録、ならびに情報の初期化処理の例である。この処理は、例えば、作業者が初めて情報提示装置2600を使用する時に実行する。
S3101では、初めに個人特性情報テーブルの登録者数が最大数に達しているかを判定する。達している場合にはS3109に進み、達していない場合にはS3102に進む。
S3102では、作業者が入力装置を用いて作業者名を入力する。入力方法は例えば、ソフトウェアキーボードや音声入力等を用いる。
S3103では、入力された作業者名が個人特性情報テーブルに既に登録されているかどうかを判定し、登録されていればS3102の入力処理に戻り、登録が無ければS3104へ進む。なお、登録されていた場合、エラーメッセージを表示するなどして作業者に再入力を促すようにするのでも良い。
S3104では、個人特性管理部2620が個人特性情報テーブル2650を更新する。作業者ID2901は新規に採番し、作業者名2902は作業者から指定された任意の文字列とする。この時点でその他のデータも生成する場合には、慎重度2903は固定値(たとえば1)を初期値として設定する。識別情報2904は例えば顔画像情報や音声情報のような個人を識別可能な情報であり、本処理時に取得する。タスク習熟度テーブル2910はタスクID2911、タスク名2912をタスク条件テーブルからコピーし、各タスクの習熟度、試行回数に固定値(たとえば1および0)を、初期値として設定する。
S3105では、作業者の習熟度を決定する。例えば図32に示す画面を表示するなどして、作業者に運転歴を問い合わせることで決定する。作業者が「熟練者」を選択すれば、熟練度を3とし、「中堅」を選択したならば2に、「初心者」を選択したならば1として、一時的に揮発性メモリなどに保存する。
S3106では、作業者の慎重度を決定する。例えば図33に示す画面を表示するなどして、作業者にメッセージの表示レベルを問い合わせることで決定する。作業者がレベル3を選択したならば、慎重度を3とし、レベル2を選択したならば2に、レベル1を選択したならば1として、一時的に揮発性メモリなどに保存する。
S3107では、作業者に設定される情報が正しいことを確認を促すなどする。ここで作業者が設定に誤りがあることに気が付いた場合には、処理フローの最初、あるいは、任意の箇所からやり直すなどしても良い。
S3108では、S3105で決定した熟練度とS3106で決定した慎重度に従って、個人別サブタスクテーブルを作成する。この処理フローを図34に示す。
S3401では、個人特性管理部2620は、個人特性情報テーブル2640から該当する作業者名を検索する。
S3402では、個人特性管理部2620は、S3105で保存した習熟度情報を、タスク習熟度テーブル2910の各タスクの習熟度2913に設定する。
S3403では、個人特性管理部2620は、タスク習熟度テーブル2910の習熟度2913に基づいて、サブタスクテーブル2630から個人別サブタスクテーブル2660を生成する。サブタスクテーブル2630を順次走査し、タスクID301が整数のレコードはそのままコピーする。小数のレコードは小数点以下の数値が、対応するタスク習熟度テーブル2910の習熟度2913に等しい場合のみコピーする。タスク名303が末尾に数字の添え字を有するかどうかで判定しても良い。この処理によって個人のタスク毎の習熟度を反映した個人別サブタスクテーブルが生成される。
S3404では、個人特性管理部2620は、S3106で保存した慎重度情報を個人特性情報テーブル2650の慎重度2903に設定する。
S3405では、個人特性管理部2620は、設定した慎重度2903に基づいて、個人別サブタスクテーブル2660の情報の一部を置換し更新する。サブタスク要求量テーブル2640を順次走査し、各レコードの慎重度2801が慎重度2903と一致する場合に、該当するサブタスク名403を保持して、次の置換処理を行う。個人別サブタスクテーブル2660を順次走査し、各レコードのサブタスク304が、保持したサブタスク名と末尾の添え字を除いて一致する場合、保持したサブタスク名に置換する。なお、末尾の添え字も含めて一致する場合には置換しなくても良い。この処理により、個人の運転特性である慎重度を反映した個人別サブタスクテーブルが生成される。
S3109では、登録作業者数が規定の最大値に達しており、個人情報の登録が出来ない旨のメッセージを出力部170にて行い、処理を終了する。この場合、作業者は例えば登録された作業者のデータから不要な情報を削除するなどして、再度登録処理を行うなどする。
なお、上記の例では必要な情報を都度、作業者が入力する方法を説明したが、情報の登録方法は、情報提示装置2600が通信機能を介して取得するのでも良い。例えば作業者はあらかじめコンピュータ193上からデータサーバ192に対して個人情報を登録しておき、情報提示装置2600はデータサーバ192とあらかじめ決められた内容・方法で通信して情報を取得する。この方法によれば作業者は登録すべき情報を事前に準備しておくことが可能となり、円滑に使用開始できる効果がある。
また、上記の例では、熟練度と慎重度を作業者に選択させる例を示したが、図32や図33で示したような質問を複数組み合わせて、その回答結果の組み合わせで習熟度と慎重度を判別しても良い。例えば自分の運転能力への自信や、運転を積極的に行うかどうか、あるいは心配性かどうか、…といった間接的に運転の特性を推し量る質問を、点数化可能な方法で質問し、合計の点数に応じて習熟度、慎重度を設定する。
また、習熟度、慎重度の設定が3段階でない場合、例えば5段階であれば、それに応じて図32、図33の選択肢を5つにしても良いし、あるいは、選択肢はそのままに回答によって割り当てる特性情報の値を変更する(例えば、「習熟者」選択時に習熟度を5、「中堅」「初心者」の選択時に其々習熟度を3、1に設定)のでも良い。
また、習熟度、慎重度の設定を上記の例に依らず、初期値に固定にしておくのでも良く、その後、作業者の運転動作を検知することで、動的に変更するなどしても良い。
また、個人特性情報テーブル2650に習熟度、慎重度以外の項目を設けた場合には、同様にして作業者が登録するようにして良く、図34の処理フローに処理を加えて、個人別サブタスクテーブルの作成、更新に使用することが可能である。
登録済みの作業者が情報提示装置2600を起動し使用開始する場合、情報提示装置2600はいずれの個人別サブタスクテーブルを使用するかを判別するため、使用者を特定する必要がある。これには、個人特性情報テーブル2650の識別情報2904を用いる。例えば、カメラ(図26には未記載)を用いて顔画像を撮影し、識別情報2904に登録済みの顔画像との類似を調べ、一定以上の類似のデータを現在の作業者と判定するなど、公開されている技術(画像比較手法や音声比較手法)を使用して特定すればよい。この時、いずれの識別情報2904とも類似が見られないなどで使用者が識別できなかった場合は、例えば、識別失敗した旨のメッセージを出力部170を介して通知するなどして、個人別タスクテーブル2660は習熟度1、慎重度1で作成したデフォルト個人別タスクテーブルを使用するようにしても良い。
運転作業は、各タスクを繰り返して実行することにほかならず、各タスクが完了する度に、個人特性管理部2620はテーブルの情報の更新処理を実施する。図35にはある一つのタスク処理が完了した際の処理のフローチャートを示す。
S3501では、個人特性管理部2620が、個人特性情報テーブル2650のタスク習熟度テーブル2910を検索し、完了したタスクの施行回数2914を1加算する。
S3502では、S3501の処理によって、当該タスクの施行回数2914が規定の回数(値は任意)を超えたかどうかを判定する。超えたならS3503へ進み、超えてなければ処理を終了する。規定の回数には例えば、施行回数100で習熟度を1から2へ、施行回数200で習熟度を2から3へ、上げるようにする。この時は、当該タスクの習熟度2913が1であれば施行回数2914が100に達したかどうかで、また、当該タスクの習熟度2913が2であれば施行回数2914が200に達したかどうかで判定する。当該タスクの習熟度が3出会った場合は、判定は必ずNoとなる。また実施するタスクによって運転中の使用頻度も習熟具合も変わるはずであり、タスクの夫々に異なる規定を設けて良い。
S3503では、当該タスクの習熟度2913を1加算する。
S3504では、習熟度の変更に伴い、個人別サブタスクテーブルの内容を更新する。処理フローを図36に示す。基本的にこの処理フローは個人別サブタスクテーブル生成で説明した図34の処理フローS3402からS3405と同一である。もちろん、あらかじめ個人特性管理部2620が、個人特性情報テーブル2630の識別情報2904を用いて作業者を特定しているものとする。
S3601では、S3402と同様に、個人特性管理部2620が、個人特性情報テーブル2650から当該作業者のタスク習熟度テーブル2910の情報を取得する。S3602では、S3403と同様に、個人特性管理部2620が、サブタスクテーブルおよび当該作業者の習熟度テーブルの情報を用いて、個人別サブタスクテーブル2660を作成する。S3603では、S3404と同様に、個人特性管理部2620が、個人特性情報テーブル2650から当該作業者の慎重度2903を取得する。S3604では、S3405と同様に、個人特性管理部2620が、個人別サブタスクテーブル2660を更新する。習熟度、慎重度以外の項目が個人特性情報テーブル2650に含まれる場合には、それら情報に応じて個人別サブタスクテーブルを更新して良い。
上記では、タスク処理完了時の例で説明を行ったが、情報提示装置2600を使用している最中に、作業者の慎重度が変更されたり、いずれかのテーブル(例えば、サブタスクテーブル2630、サブタスク要求量テーブル2640)が更新されたりした場合であっても、同様に個人別タスクテーブル2660も更新する処理を実施して良い。
一方で、実時間でワークロード算出方法が変化すると、運転中のメッセージ表示タイミングが作業者の認識が無いままに変わってしまい、混乱を招く懸念も考えられる。従って、運転中は各タスクの施行回数の加算処理までは実行しておき、ある地点までの移動が完了した時、あるいは、次回起動時など一定の走行区間や時間を更新タイミングとして、全タスクの習熟度2913の変化に対して、個人別サブタスクテーブルを更新する、といった実施方法も考えられる。この時、作業者に対してワークロード算出方法を更新した旨のメッセージを表示しても良い。
次に、走行中に自律的に習熟度と慎重度を判別する実施例を説明する。
例えば、CANからハンドル操舵角の情報を得て、直進走行時の値の変化を見ることで、車体のふらつきが推測可能である。あるいはCAN情報とカーナビゲーションシステムの道路情報や、交差点情報、走行位置座標を組み合わせれば、適切なタイミングでウインカーの点灯操作をおこなったかどうかや、制限速度を守って走行したか、といった情報が得られる。
さらにADASの情報を用いれば、前を走る車両との車間距離情報が得られる。これら情報取得部110から得られる情報を特性判定部2610が集約、これらの成績から、運転の上達ぶりを示す情報と、運転の傾向を示す情報に分類し、其々「習熟度」と「慎重度」の算出に使用すれば、自律的にこれらの値を切り替えることが可能である。例えば、車体のふらつき加減やウインカーの操作タイミングから「習熟度」を算出し、どれだけ制限速度を守っているかや、前方車両との車間距離を確保しているか、から「慎重度」を決定する。
使用する情報や各特性情報への反映のさせ方は上記で示した以外にあっても良いし、運転成績によっては、例えば各特性情報の値を2から1や、3から2へと低下させる判断を含めても良い。
また、運転中の作業者の挙動をカメラで監視し、顔や視線の動きが安全行動を逸脱していないかを確認することで、習熟度、慎重度を変化させるのでも良い。より具体的には、例えば交差点を右折する場合を考えると、安全に通行するためには、交差点手前での信号機の色の認知、対向車両、横断歩道を通過する人や自転車、後方から接近するバイクの認知、が必要であり、これらがいる・あるであろう方向を視認する動作を行わなければならず、そこから、どの方向を何度目視するかの正解モデルが導ける。上述した作業者を監視するカメラで撮像した映像から作業者の視線方向を解析、推定して、正解モデルと比較することで、正しい挙動の割合を計算する。
特性判定部2610は、正しい挙動の割合によって、例えば9割以上であれば習熟度を3、7割以上であれば2、それより少なければ1、といったように習熟度を算出する。また、正解モデル以上に作業者が視認動作を繰り返し行っている場合には慎重度が高いと判断する。例えば正解モデルの目視回数を10%上回っていれば慎重度を3に、上回っていれば2、下回っていれば1、といったように慎重度を算出する。本処理を行う場合の正解モデルデータや検出した目視の回数のデータは記憶部160に保存すれば良い。
上記の算出処理は、タスク毎に行っても構わないが、短期で変動するとは考えず、ある一定の区間や時間を算出処理実行の目安として良い。例えばカーナビゲーションシステムでの経路案内開始から目的地に到着した時点までで算出するなどである。
また、算出結果を取得したらすぐに図36に示した処理フローで個人別サブタスクテーブルを更新するのでも良いし、ある一定区間の走行が完了した際に個人別サブタスクテーブルを更新するのでも良い。
また、上記の算出処理で示した正しい挙動の割合の閾値は一例であり、別の値で特性情報の値を決定して良いし、あるいは、特性情報を3段階で説明したが、より多段階に分類しても良い。
[テーブルの作成及び更新]
本実施例においても、図23から図25に示した各テーブルを作成および更新する処理は同様に実施可能であり、例えば、サブタスク要求量テーブル2640の慎重度2801を変更したり、新しく慎重度に応じたサブタスクを追加したりすることが可能である。個人別サブタスクテーブル2660は、サブタスクテーブル2630、サブタスク要求量テーブル2640、個人特性情報テーブル2650に基づいて作成されるため、これらのテーブルの変更処理を完了した時点で、全作業者の個人別サブタスクテーブルを再構築する。
図37は、個人特性情報テーブル2650を作成及び更新するための画面の例である。なお、図37では個人特性に関する情報を変更する場合の例を示しているが、変更だけでなく、追加及び削除も可能である。
画面3701は、領域3711、領域3721等を含む。領域3711は、ユーザが入力装置を用いて個人特性に関する情報の追加、変更、削除のいずれの操作を実施するかを指定するための領域である。領域3721は個人特性に関する情報の追加、変更、削除の内容を入力するための領域である。前述のようにここでは変更が選択されているので、すでに存在する個人特性情報テーブル2650の各レコードの情報が領域3721に表示される。ユーザは入力装置を用いて変更したい情報に関する項目を選択する。図37では慎重度が選択された例を示しており、ユーザはこの後に変更する値を入力する。
画面3701における領域3722は、入力項目として選択可能なものの一覧が表示されている例である。ユーザは入力装置を用いて、領域3722からいずれか1つを選択する。コンピュータ193は、選択された入力項目を、選択された作業者の新しい慎重度として、個人特性情報テーブル2650に登録する。また、図37で示した例で、再設定と記載した、ユーザが識別情報の欄を選択すると、作業者の新規登録処理で説明したような識別情報の登録を再度実施する。また、編集と記載した、タスク習熟度テーブルの欄を選択すると、タスク習熟度テーブル2901に対して、各レコードのデータの追加、変更、削除の操作を同様に実行可能である。また、個人特性情報テーブルに項目を追加、名称変更、削除を行っても良く、追加された項目に対して、各個人の情報を追加、変更、削除するようにしても良い。
以上の実施例で説明した処理により、各タスクを作業者の「習熟度」のように、時間をかけて上達するといった変化を伴って、ワークロードの変動に寄与する特性と、作業者の「慎重度」のように、人間が持つ癖といった、時間が経過しても変化しづらい特性との、質の異なる特性に対して、サブタスクの組み合わせ方を変更することでいずれにも適合可能なシステムを実現し、結果、個人特性に適合したワークロード値、余裕度の値の算出を可能として、安全・快適な情報提示を実現する効果が得られる。なお、いずれか一方であってもワークロードの推定精度が向上する効果があるが、両者を同時に適用することで、より良い推定となる。