(57)【要約】【課題】移動体に動的計画法を適用して、目的地への到達時間の最小化および燃費効率の最大化等を実行する。【解決手段】移動体が移動する移動経路を離散化した各位置における移動体の状態から、移動体が有する駆動手段の使用状態毎に次の位置における移動体の状態を生成する生成部と、生成部が生成した各位置における少なくとも１つの移動体の状態に基づいて、各位置における駆動手段の使用状態を最適化する最適化部と、を備える情報処理装置、情報処理方法、およびプログラムを提供する。【選択図】図１
2015192508.tif 000002
【特許請求の範囲】
【請求項１】
移動体が移動する移動経路を離散化した各位置における前記移動体の状態から、前記移動体が有する駆動手段の使用状態毎に次の位置における前記移動体の状態を生成する生成部と、
前記生成部が生成した各位置における少なくとも１つの前記移動体の状態に基づいて、各位置における前記駆動手段の使用状態を最適化する最適化部と、
を備える情報処理装置。
【請求項２】
前記生成部は、各位置について、前記移動体が有する駆動手段の使用状態毎に、前記移動体の移動速度、当該位置までの時間または当該位置に到着する時刻、および、前記移動体が有するエネルギー残量の少なくとも一つを含む連続パラメータの値を有する前記移動体の状態を算出する請求項１に記載の情報処理装置。
【請求項３】
前記移動体が移動する移動経路を離散化した各位置における前記移動体の状態の制約を取得する制約取得部を更に備え、
前記生成部は、前記制約の下で、各位置における前記移動体の状態から、次の位置における前記移動体の状態を生成する
請求項１または２に記載の情報処理装置。
【請求項４】
前記生成部は、前記移動体が有する駆動手段の使用状態毎に生成した次の位置における前記移動体の複数の状態のうち、一の状態が他の少なくとも一つの状態に対して予め定められた複数のパラメータのいずれにおいても等しいか、または劣ると判断した場合には、当該一の状態を枝刈りする請求項３に記載の情報処理装置。
【請求項５】
前記最適化部は、
前記生成部が生成した目的地における複数の前記移動体の状態の中から、最適な状態を選択し、
選択した前記状態に至る前記移動体の状態を各位置において選択し、選択した各位置の状態に対応する前記駆動手段の使用状態を最適な使用状態として特定する
請求項３または４に記載の情報処理装置。
【請求項６】
前記生成部は、複数の前記駆動手段の使用状態の組み合わせ毎に、次の位置における前記移動体の状態を生成する請求項３から５のいずれか一項に記載の情報処理装置。
【請求項７】
前記生成部は、前記駆動手段の使用状態を離散化して、離散化した複数の使用状態のそれぞれに対して次の位置における前記移動体の状態を生成する請求項３から６のいずれか一項に記載の情報処理装置。
【請求項８】
前記制約取得部は、前記移動経路の各位置における曲率に基づいて、各位置における前記移動体の状態の制約を生成する請求項３から７のいずれか一項に記載の情報処理装置。
【請求項９】
前記制約取得部は、前記移動経路の少なくとも一部を通過した履歴に基づいて、各位置における前記移動体の状態の制約を生成する請求項３から８のいずれか一項に記載の情報処理装置。
【請求項１０】
前記制約取得部は、
前記移動経路の状況を取得し、
取得した前記移動経路の状況に基づいて、各位置における前記移動体の状態の制約を生成する
請求項３から９のいずれか一項に記載の情報処理装置。
【請求項１１】
前記移動体の現在位置を取得する位置取得部と、
前記最適化部が最適化した各位置における前記駆動手段の使用状態のうち、前記現在位置に対応する使用状態に基づいて、前記駆動手段を制御する制御部と、
を備える請求項１から１０のいずれか一項に記載の情報処理装置。
【請求項１２】
移動体が移動する移動経路を離散化した各位置における前記移動体の状態から、前記移動体が有する駆動手段の使用状態毎に次の位置における前記移動体の状態を生成する生成段階と、
前記生成段階において生成した各位置における少なくとも１つの前記移動体の状態に基づいて、各位置における前記駆動手段の使用状態を最適化する最適化段階と、
を備える情報処理方法。
【請求項１３】
コンピュータに、請求項１から１１のいずれか一項に記載の情報処理装置として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
従来、エンジンおよび電気モーターを備えるハイブリッド自動車等は、運動エネルギーを電気エネルギーに回生してバッテリー等に蓄え、蓄えた電気エネルギーでモーターを駆動する回生エネルギーの利用タイミングを制御して、目的地への到達時間の最小化および燃費効率の最大化等を実行していた（例えば、特許文献１から３参照）。
特許文献１  特開２０１３−１２３３６３号公報
特許文献２  特開２００９−１１５４６６号公報
特許文献３  特開２００５−２８２５６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、このようなハイブリッド自動車が取り得る動作状態（位置、速度、エネルギー残量等）は連続値をとるものであり、最適化手法として動的計画法等を適用することができず、また、最適化処理中の計算量も膨大なものとなってしまい、最適解を導くことが困難であった。また、電気エネルギー以外の回生エネルギー等も更に考慮に入れると、最適解を導くことがより困難になってしまっていた。
【課題を解決するための手段】
【０００４】
本発明の第１の態様においては、移動体が移動する移動経路を離散化した各位置における移動体の状態から、移動体が有する駆動手段の使用状態毎に次の位置における移動体の状態を生成する生成部と、生成部が生成した各位置における少なくとも１つの移動体の状態に基づいて、各位置における駆動手段の使用状態を最適化する最適化部と、を備える情報処理装置、情報処理方法、およびプログラムを提供する。
【０００５】
なお、上記の発明の概要は、本発明の特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【０００６】
【図１】本実施形態に係る情報処理装置１００の構成例を移動体１０と共に示す。
【図２】本実施形態に係る情報処理装置１００の動作フローを示す。
【図３】本実施形態に係る移動体１０の移動経路の一例を示す。
【図４】本実施形態に係る生成部１３０が移動体１０の状態を生成する概念構成の一例を示す。
【図５】本実施形態に係る情報処理装置１００として機能するコンピュータ１９００のハードウェア構成の一例を示す。
【発明を実施するための形態】
【０００７】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【０００８】
図１は、本実施形態に係る情報処理装置１００の構成例を移動体１０と共に示す。情報処理装置１００は、移動体１０の目的地までの離散化した移動経路に基づいて動的計画法を適用し、当該目的地までの到達時間の最小化および燃費効率の最大化等を実行する。ここで、移動体１０は、少なくとも１つの駆動手段を備え、目的地まで自走する自動車である。移動体１０は、ガソリン等を燃料として駆動するエンジンを駆動手段とした自動車であってよく、電気エネルギーで駆動するモーターを駆動手段とした自動車であってもよい。
【０００９】
移動体１０は、走行中に貯蔵量が増減し、貯蔵量が有限のエネルギー貯蔵手段が設けられ、当該エネルギー貯蔵手段で貯蔵したエネルギーの少なくとも一部を用いて駆動手段を駆動することが望ましい。移動体１０は、一例として、エネルギー貯蔵手段としてバッテリーを備え、モーターを駆動手段とした自動車である。この場合、バッテリーは、貯蔵した電気エネルギーをモーターに供給してモーターを駆動させ、また、モーターの回転等による運動エネルギーの一部を発電等により回生した電気エネルギーを蓄電する。
【００１０】
移動体１０は、複数の駆動手段を備えてもよい。移動体１０は、一例として、モーターと、エンジンとを備えた自動車である。この場合、移動体１０は、エンジンによる駆動で走行すると共に、当該駆動によるエネルギーの一部を発電等により回生した電気エネルギーを蓄電し、蓄電した電気エネルギーを用いてモーターを駆動するハイブリッド自動車である。移動体１０は、一例として、運動エネルギーを電気エネルギーに変換するモーター／ジェネレータユニット（ＭＧＵ−Ｋ：Ｍｏｔｏｒ  Ｇｅｎｅｒａｔｏｒ  Ｕｎｉｔ−Ｋｉｎｅｔｉｃ）を有する運動エネルギー回生システム（ＫＥＲＳ：Ｋｉｎｅｔｉｃ  Ｅｎｅｒｇｙ−Ｒｅｃｏｖｅｒｙ  Ｓｙｓｔｅｍ）等を備える。
【００１１】
また、移動体１０は、エンジンの駆動によって発生する排気エネルギー（熱エネルギー）を電気エネルギーに回生して、バッテリーに蓄電および／またはモーターを駆動してもよい。移動体１０は、一例として、排気エネルギーを電気エネルギーに変換するモーター／ジェネレータユニット（ＭＧＵ−Ｈ：Ｍｏｔｏｒ  Ｇｅｎｅｒａｔｏｒ  Ｕｎｉｔ−Ｈｅａｔ）を有する熱回生システムを備える。
【００１２】
本実施形態において、移動体１０は、バッテリー１２、モーター１４、およびエンジン１６と、エンジン１６が駆動した運動エネルギーを電気エネルギーに変換する変換制御部１８とを備えるハイブリッド自動車の例を説明する。ここで、変換制御部１８は、一例として、運動エネルギー回生システム（ＫＥＲＳ）である。本実施形態の移動体１０は、運転手の操作で走行しつつ、予め定められたプログラムまたはデータ等に応じて、エンジン１６の駆動と電気エネルギーの蓄電、エンジン１６とモーター１４による駆動、およびモーター１４による駆動のいずれかを切り替える。
【００１３】
ここで、予め定められたプログラムまたはデータ等は、例えば、予め入力または指定された目的地に到着するまでの時間が最小となるように、または当該目的地までの燃費が最も良くなるように、移動体１０の駆動を制御する。情報処理装置１００は、このようなプログラムまたはデータ等を生成する。情報処理装置１００は、制約取得部１１０と、記憶部１２０と、生成部１３０と、最適化部１４０と、位置取得部１５０と、制御部１６０とを備える。
【００１４】
制約取得部１１０は、移動体１０が移動する移動経路を離散化した各位置における移動体１０の状態の制約を取得する。制約取得部１１０は、予め定められた形式で記憶された制約のデータを取得してよい。制約取得部１１０は、ネットワーク等に接続され、当該ネットワークを介して制約のデータを取得してもよい。また、制約取得部１１０は、有線または無線で送信された制約のデータを受信して取得してもよい。
【００１５】
ここで、制約取得部１１０は、制約のデータとして、道路の曲率、予め定められた基準からの高さ（例えば標高、海抜）、道路の長さ、路面の摩擦力、法定速度、および渋滞情報等を取得してよい。また、制約取得部１１０は、取得した道路の情報等から、制約を生成してもよい。制約取得部１１０は、取得した制約のデータを記憶部１２０に供給する。
【００１６】
記憶部１２０は、制約取得部１１０に接続され、当該制約取得部１１０から受け取った制約のデータを記憶する。また、記憶部１２０は、情報処理装置１００が生成するプログラムまたはデータ等を記憶する。また、記憶部１２０は、当該プログラムまたはデータ等を生成する過程において処理するデータ等を記憶してよい。また、記憶部１２０は、情報処理装置１００内の各部の要求に応じて、記憶したデータを要求元に供給してよい。
【００１７】
生成部１３０は、移動体１０が移動する移動経路を離散化した各位置における移動体１０の状態から、移動体１０が有する駆動手段の使用状態毎に次の位置における移動体１０の状態を生成する。生成部１３０は、各位置について、移動体１０が有する駆動手段の使用状態毎に、移動体１０の移動速度、当該位置までの時間または当該位置に到着する時刻、および、移動体１０が有するエネルギー残量の少なくとも一つを含む連続パラメータの値を有する移動体１０の状態を算出する。
【００１８】
例えば、生成部１３０は、時刻ｔｘ、移動体１０の速度ｖｘ、移動体１０の位置ｄｘ、バッテリー残量ｂｘ、およびガソリン残量ｇｘ等を、移動体１０の状態Ｓ（ｘ）として生成する。また、生成部１３０は、一例として、モーター１４と、エンジン１６との２通りの駆動手段の使用状態毎に、次の位置における移動体１０の状態をそれぞれ生成する。
【００１９】
また、生成部１３０は、複数の駆動手段の使用状態の組み合わせ毎に、次の位置における移動体１０の状態を生成してもよい。この場合、生成部１３０は、一例として、モーター１４と、エンジン１６と、モーター１４およびエンジン１６との３通りの駆動手段の使用状態毎に、次の位置における移動体１０の状態をそれぞれ生成する。
【００２０】
生成部１３０は、制約取得部１１０または記憶部１２０に接続され、各位置における制約のデータを受け取り、当該制約の下で、各位置における移動体１０の状態から、次の位置における移動体１０の状態を生成する。例えば、生成部１３０は、位置ｍにおける速度ｖｍ、バッテリー残量ｂｍ等の状態Ｓ（ｍ）と、標高の変化、道路の長さ等の制約とから、次の位置ｎにおける速度ｖｎ、バッテリー残量ｂｎ等の状態Ｓ（ｎ）を生成する。生成部１３０は、移動体１０の取り得る複数の状態を生成してよい。
【００２１】
最適化部１４０は、生成部１３０が生成した各位置における少なくとも１つの移動体１０の状態に基づいて、各位置における駆動手段の使用状態を最適化する。最適化部１４０は、生成部１３０が生成した目的地における複数の移動体１０の状態の中から、最適な状態を選択してよい。最適化部１４０は、例えば、目的地における到着時間が最小となる状態、または当該目的地におけるガソリン残量が最も多い状態等を最適な状態として選択する。
【００２２】
そして、最適化部１４０は、選択した状態に至る移動体１０の状態を各位置において選択し、選択した各位置の状態に対応する駆動手段の使用状態を、最適な使用状態として特定する。最適化部１４０は、例えば、生成部１３０が生成した目的地における到着時間が最小となる状態に至る移動体１０の各位置の状態を、最適な使用状態（即ち、目的地までの到達時間を最小化させる使用状態）として特定する。最適化部１４０は、特定した使用状態を記憶部１２０に記憶してよい。
【００２３】
位置取得部１５０は、移動体１０の現在位置を取得する。位置取得部１５０は、ＧＰＳ等の外部の測位システムから送信される信号を受信して、移動体１０の位置を取得してよい。これに代えて、位置取得部１５０は、道路等に設置されたセンサ、カメラ等の検出結果に基づき、移動体１０の位置を取得してもよい。これに代えて、位置取得部１５０は、初期位置からの移動時間および移動速度、道路情報との照合等から、移動体１０の位置を取得してもよい。これに代えて、位置取得部１５０は、地磁気を検出して現在位置を取得する電子コンパス等の自律航法システムを有してもよい。位置取得部１５０は、取得した位置情報を制御部１６０に供給する。
【００２４】
制御部１６０は、記憶部１２０に接続され、最適化部１４０が最適化した結果を取得する。また、制御部１６０は、位置取得部１５０に接続され、移動体１０の現在位置の情報を取得する。制御部１６０は、最適化部１４０が最適化した各位置における駆動手段の使用状態のうち、現在位置に対応する使用状態に基づいて、駆動手段を制御する。
【００２５】
制御部１６０は、移動体１０の変換制御部１８に接続され、変換制御部１８のモーター１４による電気エネルギーの回生および電気エネルギーによるモーター１４の駆動のタイミングを制御する。即ち、制御部１６０は、離散化された移動経路における各位置と現在位置と対応付け、現在位置に対応する最適化部１４０が特定した駆動手段を用いて、現在位置のモーター１４およびエンジン１６の駆動を制御する。
【００２６】
以上の本実施形態の情報処理装置１００によれば、ハイブリッド自動車である移動体１０のエンジン１６の駆動、電気エネルギーの回生と蓄電、電気エネルギーによるモーター１４の駆動、モーター１４およびエンジン１６の駆動等の切り替え制御等を、目的地までの到達時間が最小化または燃費が最も向上するように、予め最適化する。そして、情報処理装置１００は、推定通過速度等の予め仮定した運転操作で運転手が目的地まで移動体１０を走行することで、駆動手段を最適化した状態に切り替え、目的地に到着するまでの時間を最小化、または当該目的地までの燃費が最も良くなるように制御する。
【００２７】
情報処理装置１００の最適化動作と移動体１０の制御動作について、図２を用いて説明する。図２は、本実施形態に係る情報処理装置１００の動作フローを示す。また、図３は、本実施形態に係る移動体１０の移動経路の一例を示す。ここで、情報処理装置１００は、図２に示す動作フローを実行して、一般道路を走行する移動体１０が最も燃費効率を向上させるように制御する例を説明する。
【００２８】
まず、制約取得部１１０は、目的地および目的地までの移動経路の情報を取得する（Ｓ２００）。制約取得部１１０は、例えば、移動体１０に搭載されたカーナビゲーション等から、入力された目的地の情報と選択された目的地までの移動経路の情報を取得する。制約取得部１１０は、一例として、図３に示す目的地および目的地までの移動経路の情報を取得する。
【００２９】
次に、制約取得部１１０は、移動経路を離散化した各位置における移動体の状態の制約を取得する（Ｓ２１０）。制約取得部１１０は、一例として、離散化された移動経路の各位置における移動体の状態の制約（例えば、道路の曲率、標高、道路の長さ、道幅、車線数、自動車専用道路等の道路の種類、交通信号等の配置、および法定速度等）を、地図情報等のデータベースからネットワーク等を介して取得してよい。
【００３０】
また、制約取得部１１０は、天候と路面の摩擦計数μとの対応テーブルを予め記憶し、ネットワーク等を介して取得する移動経路の天候情報に応じて、路面の摩擦係数μを取得してもよい。また、制約取得部１１０は、カーナビゲーション等から移動経路の渋滞情報を取得してもよい。
【００３１】
制約取得部１１０は、運転手が移動体１０を運転する場合において、急加速、急発進、蛇行、および急ブレーキ等の非常識な運転は考慮に入れず、常識的な加速、減速、およびハンドル操作を実行するものとして制約を定める。制約取得部１１０は、例えば、渋滞等が無い場合、各位置における法定速度を移動体１０の推定通過速度とする。即ち、制約取得部１１０は、各位置における法定速度までは予め定められた値以下の常識的な加速度で加速し、法定速度に達した場合、当該法定速度を維持して走行するように運転手が操作することを仮定する。
【００３２】
このように、制約取得部１１０は、加速（減速）が必要な場合においても、常識的なアクセル操作（ブレーキ操作）で加速（減速）することを仮定する。これによって、移動体１０が距離ｄの平坦な道路をエンジン駆動（モーター駆動）によって平均時速ｖで走行した場合、当該走行によるガソリン消費量（バッテリー消費量）は、略一定として算出することができる。
【００３３】
また、制約取得部１１０は、予め定められた値以下の常識的な水平方向の加速度（横Ｇ）が発生する程度で、運転手がカーブを走行することを仮定する。この場合、制約取得部１１０は、移動経路の各位置における曲率に基づいて、各位置における移動体１０の状態の制約を生成できる。ここで、移動体１０が位置ｄにおける半径ｒ（ｄ）の曲率を有する道路を走行する場合に受ける水平方向の加速度（横Ｇ）をａ（ｄ）とすると、次式が成立する。なお、ｖ（ｄ）は移動体１０の位置ｄの速度である。
（数１）
ａ（ｄ）＝ｖ（ｄ）２／ｒ（ｄ）
ｖ（ｄ）＝｛ｒ（ｄ）・ａ（ｄ）｝１／２
【００３４】
制約取得部１１０は、一般道路を走行する移動体１０が発生させる横Ｇの大きさａ（ｄ）を、予め定められた（常識的な）値とすることで、半径ｒ（ｄ）の曲率を有する道路を走行する移動体１０の推定通過速度を数１式のｖ（ｄ）と定めることができる。ここで、制約取得部１１０は、位置ｄの法定速度がｖ（ｄ）よりも小さい場合、法定速度を推定通過速度としてよい。
【００３５】
また、制約取得部１１０は、移動経路の状況を取得し、取得した移動経路の状況に基づいて、各位置における移動体１０の状態の制約を生成してもよい。制約取得部１１０は、例えば、移動経路における渋滞情報をカーナビおよび／またはネットワーク等から取得し、渋滞している区間の推定通過速度を法定速度以下の制約にする。制約取得部１１０は、渋滞している区間の距離が長ければ長いほど、推定通過速度を低下させてよい。また、制約取得部１１０は、交通信号等の設置数が多い区間の推定通過速度を、法定速度以下の制約にしてもよい。
【００３６】
このように、制約取得部１１０は、常識的な加速、減速、横Ｇ、交差点における右折および左折速度、経路に沿ったカーブの曲率、および移動経路の状況等に基づき、各位置における上限速度をそれぞれ算出する。そして、制約取得部１１０は、算出結果が法定速度を下回った場合、算出した上限速度を推定通過速度として制約に加える。制約取得部１１０は、図３に示すように、位置ｘ０，ｘ１，ｘ２，...における制約をそれぞれ取得し、記憶部１２０に記憶する。
【００３７】
次に、生成部１３０は、各位置（例えば位置ｘ０）における移動体１０の状態から、各位置の制約および駆動手段の使用状態に基づき、次の位置（例えば位置ｘ１）における移動体１０の状態を生成する（Ｓ２２０）。生成部１３０は、位置ｘ０の状態Ｓ（ｘ０）を移動距離ｄｘ０、速度ｖｘ０、時刻ｔｘ０、バッテリー残量ｂｘ０、およびガソリン残量ｇｘ０とすると、位置ｘ０の制約および駆動手段の状態（例えば、エンジン駆動で走行した状態）に応じて、距離Δｄ離れた位置ｘ１の状態Ｓ（ｘ１）の移動距離ｄｘ１＝ｄｘ０＋Δｄ、速度ｖｘ１、時刻ｔｘ１、バッテリー残量ｂｘ１、およびガソリン残量ｇｘ１を生成する。
【００３８】
生成部１３０は、次の位置における移動体１０の状態を、物理法則に基づいて生成してよい。生成部１３０は、例えば、移動体１０が一定の推定通過速度ｖｄで走行する場合、次の位置までの走行時間ｔΔｄを、次の位置までの距離Δｄを推定通過速度ｖｄで割った値とする（ｔΔｄ＝Δｄ／ｖｄ）。
【００３９】
この場合、生成部１３０は、例えば、移動体１０の燃費実績から走行速度および走行時間等に対応する燃費を算出する係数を予め定め移動体１０がエンジン駆動のみで走行した場合のガソリン消費量Δｇを算出する。生成部１３０は、同様に、モーター駆動のみによるバッテリー消費量Δｂ、エンジンおよびモーター駆動によるガソリン消費量Δｇおよびバッテリー消費量Δｂ等をそれぞれ算出してよい。
【００４０】
また、生成部１３０は、例えば、速度ｖｄで走行する移動体１０が加速度α（ｖｄ）で加速（減速）した場合の、距離Δｄ離れた次の位置における移動体１０の速度ｖｄ＋Δｄを、｛２・α（ｖｄ）・Δｄ＋ｖｄ２｝１／２を用いて算出する。この場合、生成部１３０は、算出した速度ｖｄ＋Δｄを用いて、移動時間ｔΔｄを（ｖｄ＋Δｄ−ｖｄ）／α（ｖｄ）から算出してもよい。
【００４１】
ここで、生成部１３０は、移動体１０が有する駆動手段の使用状態毎に生成した次の位置における移動体１０の複数の状態のうち、一の状態が他の少なくとも一つの状態に対して予め定められた複数のパラメータ（要素）のいずれにおいても等しいか、または劣ると判断した場合には、当該一の状態を枝刈りする。生成部１３０による次の位置における移動体１０の状態の生成と、枝刈りについて、図４を用いて説明する。
【００４２】
図４は、本実施形態に係る生成部１３０が移動体１０の状態を生成する概念構成の一例を示す。図４の横軸は移動体１０の移動経路における位置を示し、各位置における移動体１０の取り得る１つの状態を１つの円で示す。生成部１３０はそれぞれの位置におけるそれぞれの状態に基づき、次の位置における移動体１０が取り得る状態を生成する（複数の対応する円を生成する）。
【００４３】
生成部１３０は、１つの状態から１または複数の状態を生成する。したがって、目的地に近づけば近づくほど生成部１３０が生成する状態数は一般的に増加し、生成部１３０は、処理が困難になる程度の数の状態数を生成する場合を生じさせてしまうことがある。
【００４４】
そこで、本実施形態の生成部１３０は、最適化部１４０が最適な状態として明らかに選択しない状態を間引く（枝刈り）。例えば、生成部１３０は、生成した状態Ａ（移動距離ｄＡ、速度ｖＡ、時刻ｔＡ、バッテリー残量ｂＡ、およびガソリン残量ｇＡ）および状態Ｂ（移動距離ｄＢ、速度ｖＢ、時刻ｔＢ、バッテリー残量ｂＢ、およびガソリン残量ｇＢ）を要素毎に比較し、いずれの要素も等しいか、または劣る場合に、当該要素を有する状態を消去する。
【００４５】
また、生成部１３０は、相異なる複数の状態から略同一の状態を生成する場合もある。この場合、生成部１３０は、当該同一の状態に到達するまでの時間を比較して、到達時間が長い方の状態間の遷移を消去してよい。このように、生成部１３０は、状態だけでなく、状態間の遷移過程も枝刈りしてよい。図４は、一例として、生成部１３０が枝刈りした状態および状態間の遷移を点線で示す。
【００４６】
生成部１３０は、一例として、ｄＡ＝ｄＢ、ｖＡ＞＝ｖＢ、ｔＡ＜＝ｔＢ、ｂＡ＞＝ｂＢ、およびｇＡ＞＝ｇＢとなる状態Ｂが存在する場合、状態Ａは状態Ｂを支配する（状態Ｂの要素はいずれも状態Ａの要素よりも等しいか、または劣る）として、状態Ｂを消去する。このように、生成部１３０は、新たに生成した状態が、既に生成済の状態のいずれかに支配される場合、当該新たに生成した状態を消去してよい。また、生成部１３０は、新たに生成した状態が、既に生成済の状態のいずれかを支配される場合、支配された当該生成済の状態を消去してよい。
【００４７】
生成部１３０は、移動体１０の取り得る状態を生成しつつ、最適状態として選択されない他の状態に支配される状態を枝刈りするので、他の状態と比較して劣る状態から新たな状態を発生させる無駄な処理を省くことができる。これによって、生成部１３０は、駆動手段の使用状態毎に移動体１０の取り得る（最適状態として選択される可能性がある）状態を目的地に対応する位置まで生成することができる。即ち、生成部１３０は、移動開始の位置の状態から始まり、目的地の複数の状態まで接続される複数の状態のツリー構造を形成する。
【００４８】
次に、最適化部１４０は、移動体１０の最適化する条件に応じて、生成部１３０が生成した目的地における複数の移動体１０の状態の中から、最適な状態を選択する（Ｓ２３０）。本例の場合、移動体１０が最も燃費効率を向上させるように制御するので、最適化部１４０は、目的地における移動体１０の複数の状態の中から、最もガソリン残量ｇが多い状態を選択する。
【００４９】
そして、最適化部１４０は、開始位置の状態から選択した目的地の状態に至るまでの移動体１０の各位置の状態に対応する駆動手段の使用状態を、各位置における最適な駆動手段の使用状態とする。即ち、最適化部１４０は、開始位置の状態から選択した目的地の状態に至るまでの各位置における駆動手段を、モーター１４による駆動と、エンジン１６による駆動と、モーター１４およびエンジン１６による駆動の３通りのうちの対応するいずれかに特定する。
【００５０】
最適化部１４０は、特定した各位置の駆動手段を記憶部１２０に記憶する（Ｓ２４０）。最適化部１４０は、最適化した各位置の移動体１０の状態も、駆動手段と対応付けて記憶部１２０に記憶してよい。また、最適化部１４０は、特定した各位置の駆動手段に応じて、移動体１０を駆動させる駆動プログラムを生成してもよい。以上のように、本実施形態の情報処理装置１００は、目的地までの移動経路に対応する最適な駆動手段を特定することができる。そこで、運転手が実際に移動体１０を運転する場合に、情報処理装置１００は、特定した駆動手段に基づいて、移動体１０の駆動を制御する。
【００５１】
次に、位置取得部１５０は、移動体１０の現在位置を取得する（Ｓ２５０）。制御部１６０は、位置取得部１５０が取得した位置に対応する、離散化された移動経路上の位置を特定する。そして制御部１６０は、現在位置に対応する位置における特定した駆動手段に応じて、変換制御部１８を制御し、移動体１０を駆動する（Ｓ２６０）。ここで、最適化部１４０が駆動プログラムを生成する場合、制御部１６０は、当該駆動プログラムを実行して移動体１０を駆動してよい。
【００５２】
一例として、移動体１０が移動開始の地点に停止し、運転手が目的地までの入力を完了させた場合、情報処理装置１００は、目的地までの駆動手段の最適化を完了させ、制御部１６０は現在地を移動経路上の初期位置ｘ０と特定する。制御部１６０は、最適化して特定した位置ｘ０における駆動手段に応じて、移動体１０が位置ｘ１に移動するまで当該駆動手段で移動体１０を駆動するように変換制御部１８を制御する。
【００５３】
例えば、位置ｘ０における駆動手段がモーター１４による駆動の場合、制御部１６０は、変換制御部１８がモーター駆動するように制御する。また、制御部１６０は、移動体１０が位置ｘ１を通過した場合、位置ｘ２に移動するまでの区間に対応する次の駆動手段で移動体１０を駆動するように変換制御部１８を制御する。
【００５４】
制御部１６０は、移動体１０が走行して対応する離散化した各位置を通過する毎に、当該位置に対応する駆動手段に切り替え、移動体１０が目的地に到着するまで当該制御を継続する。これによって、運転手が移動体１０を常識的な加速、減速、横Ｇ、交差点における右折および左折速度、法定速度で運転することにより、移動体１０は、情報処理装置１００が最適化して特定した各位置の走行状態に近い状態を再現することになる。したがって、移動体１０が目的地に到着すると、最もガソリン残量ｇが多い状態に近い状態となり、即ち、情報処理装置１００は、目的地への燃費効率の最大化を実行することできる。
【００５５】
以上のように、情報処理装置１００は、移動経路を離散化したそれぞれの位置毎に、移動体１０の取り得る状態を枝刈りしつつ生成し、最適化を実行する動的計画法を適用することで、各位置の最適な駆動方法を特定することができる。また、情報処理装置１００は、特定した駆動方法に基づき、移動体１０の回生タイミングおよびモーターの駆動タイミングを制御することにより、移動体１０の目的地までの走行を最適化した駆動方法で実行させることができる。
【００５６】
以上の本実施形態に係る情報処理装置１００は、移動体１０の駆動を、エンジン１６の駆動と電気エネルギーの蓄電、エンジン１６とモーター１４による駆動、およびモーター１４による駆動のいずれかに切り替えることを説明した。これに代えて、情報処理装置１００は、エンジン１６およびモーター１４による駆動動作を離散化して、より細やかな駆動状態を用いて移動体１０の目的地までの走行を最適化してもよい。
【００５７】
この場合、生成部１３０は、駆動手段の使用状態を離散化して、離散化した複数の使用状態のそれぞれに対して次の位置における移動体１０の状態を生成する。生成部１３０は、一例として、モーター１４およびエンジン１６の０％から１００％の駆動をそれぞれ１１段階に分割した使用状態を用いる。
【００５８】
即ち、生成部１３０は、モーター１４およびエンジン１６の駆動割合が、それぞれ１１通り、合計１２１通りの組み合わせに離散化された使用状態に対して、次の位置における移動体１０の状態を生成する。制御部１６０は、このように駆動手段を離散化した使用状態に対応して、移動体１０の駆動手段を離散化させて制御することにより、最適化した駆動方法で移動体１０の目的地までの走行を実行することができる。
【００５９】
以上の本実施形態に係る情報処理装置１００は、駆動手段がモーター１４およびエンジン１６のハイブリッド型であり、運動エネルギーを電気エネルギーに変換するＭＧＵ−Ｋを有する移動体１０を最適化処理することを説明した。これに代えて、情報処理装置１００は、３以上の駆動手段および／または２以上のエネルギー回生手段を有する移動体１０を最適化処理してもよい。
【００６０】
例えば、情報処理装置１００は、排気エネルギーを電気エネルギーに変換するＭＧＵ−Ｈを有し、ＭＧＵ−Ｈによって回生した電気エネルギーのバッテリー１２への蓄電、モーター１４の駆動、および／またはエンジン１６の過給機の駆動等を実行する移動体１０を同様に最適化処理してよい。駆動方法およびエネルギー回生手段等が増加することに応じて、移動体１０が取り得る状態も増加するが、本実施形態の生成部１３０は、移動体１０が取り得る状態を生成しつつ、他の状態と比較して劣る状態を枝刈りして状態数を減少させるので、最適化処理を速やかに実行することができる。
【００６１】
以上の本実施形態に係る情報処理装置１００は、制約取得部１１０が、入力された目的地の情報を取得することを説明した。これに代えて、制約取得部１１０は、予め定められた目的地および目的地までの移動経路の情報を取得してもよい。
【００６２】
制約取得部１１０は、略同一の時間帯に同一の目的地へと走行するユーザの通勤経路等の情報を取得してもよい。この場合、制約取得部１１０は、移動経路の少なくとも一部を通過した履歴に基づいて、各位置における移動体１０の状態の制約を生成してよい。この場合、制約取得部１１０は、過去に生成した制約を用いてよい。また、制約取得部１１０は、実際に制御部１６０が移動体１０の駆動を制御した結果、得られた燃費効率等を生成した制約と対応付けて記憶し、最も燃費効率の高かった制約を採用するまたは重み付けを大きくして次の走行の制約を生成してもよい。
【００６３】
以上の本実施形態に係る情報処理装置１００は、移動体１０が最も燃費効率を向上させるように最適化する例を説明した。これに代えて、情報処理装置１００は、目的地までの到達時間を最小化させるように最適化してもよい。また、情報処理装置１００は、目的地までの電気エネルギーの消費が最小または最大となるように最適化してもよい。最適化部１４０は、生成部１３０が生成した目的地における複数の移動体１０の状態のうち、最適化すべき条件に対応する最適な状態を選択することで、当該条件に応じた最適化を実行することができる。
【００６４】
以上の本実施形態に係る情報処理装置１００は、移動体１０が一般道路を走行する例を説明した。これに代えて、情報処理装置１００は、オートスポーツのように、予め移動経路およびゴールが定められているサーキット等を走行する移動体１０の駆動手段の使用状態を最適化してもよい。
【００６５】
この場合、制約取得部１１０は、サーキット等の移動経路およびゴール（目的地）の情報と、離散化された移動経路の各位置における移動体の状態の制約とを取得する。そして、制約取得部１１０は、運転手が移動体１０を運転する場合において、急加速、急発進、および急ブレーキ等のオートスポーツにおいて常識的な運転を考慮に入れ、移動体１０を各位置の上限速度で走行させるように、加速、減速、およびハンドル操作を実行するものとして制約を定める。
【００６６】
制約取得部１１０は、減速が不要な直線道路を走行する場合、アクセルを全開にして最大加速することを仮定する。また、移動経路の各位置を通過する場合、各位置における最大速度で走行するように操作すると仮定する。
【００６７】
例えば、移動体１０が位置ｄにおける半径ｒ（ｄ）の曲率を有する道路を最大通過可能速度ｖｍａｘで走行する場合、水平方向の加速度（横Ｇ）をａ（ｄ）とすると、次式が成立する。
（数２）
ｍ・ａ（ｄ）＝ｍ・ｖｍａｘ（ｄ）２／ｒ（ｄ）＝μ・ｍ・ｇ
ｖｍａｘ（ｄ）＝（μ・ｒ（ｄ）・ｇ）１／２
【００６８】
このように、制約取得部１１０は、摩擦係数μおよびカーブの曲率から、最大通過可能速度ｖｍａｘを算出して、上限速度として制約を定めてよい。また、制約取得部１１０は、カーブの曲率が大きい位置において、移動体１０を減速させる場合に、移動経路における当該位置以前の位置の上限速度を低くしてもよい。即ち、制約取得部１１０は、移動体１０の減速を予め開始させてから、曲率が大きい位置等に移動体１０を走行させて、総合的なコーナリングの速度を向上させる。
【００６９】
制約取得部１１０は、例えば、位置ｄにおける最大通過可能速度ｖｍａｘを、次式のように算出してよい。ここで、α（ｖ）は、速度ｖにおける最大減速加速度であり、移動体１０のブレーキ性能を示すパラメータである。ブレーキ性能が速度によらず一定の場合、α（ｖ）は、予め定められた定数でよい。
（数３）
ｖｍａｘ（ｄ）＝ｍｉｎ｛ｖｍａｘ（ｄ），
ｖｍａｘ（ｄ＋Δｄ）＋α（ｖｍａｘ（ｄ＋Δｄ））・Δｄ／ｖｍａｘ（ｄ＋Δｄ）｝
【００７０】
このように、制約取得部１１０は、一の位置の速度の制約ｖｍａｘ（ｄ＋Δｄ）に応じて、当該一の位置よりも前の位置における速度の制約ｖｍａｘ（ｄ）を定め、次に、制約ｖｍａｘ（ｄ）に応じて、制約ｖｍａｘ（ｄ−Δｄ）を順次定めてよい。これによって、制約取得部１１０は、移動体１０がブレーキ操作を開始すべき位置を予め定めることができる。
【００７１】
また、制約取得部１１０は、天候の変化によって路面の摩擦係数μが変動する等の移動経路の状況を取得して、各位置における移動体１０の状態の制約を生成してもよい。また、制約取得部１１０は、走行によるガソリンタンクのガソリン残量の低下（またはガソリン補給による残量の増加）等によって重量ｍが変動する等の、移動体１０の状況を取得して、各位置における移動体１０の状態の制約を生成してもよい。
【００７２】
そして、生成部１３０は、各位置における移動体１０の状態から、各位置の制約および駆動手段の使用状態に基づき、次の位置における移動体１０の状態を生成する。生成部１３０は、移動体１０の取り得る状態を生成しつつ、最適状態として選択されない他の状態に支配される状態を枝刈りして、目的地までの状態を生成する。
【００７３】
最適化部１４０は、目的地における移動体１０の複数の状態の中から、到達時間が最小となる状態を選択して、各位置における駆動手段を特定する。このようにして、情報処理装置１００は、予め移動経路およびゴールが定められている移動経路を、移動体１０が最小時間で走行するように駆動手段を最適化することができる。また、運転手が当該移動経路を最小時間で走行するように移動体１０を運転することで、情報処理装置１００は、移動体１０の目的地までの走行を最適化した駆動方法で実行させて、最小時間の走行を実現させることができる。
【００７４】
以上の本実施形態に係る情報処理装置１００は、制約取得部１１０、記憶部１２０、生成部１３０、最適化部１４０、位置取得部１５０、および制御部１６０を備えることを説明した。これに代えて、情報処理装置１００は、制約取得部１１０、記憶部１２０、生成部１３０、および最適化部１４０を備え、移動体１０の目的地までの走行を最適化した駆動手段を特定する特定装置と、記憶部１２０、位置取得部１５０、および制御部１６０を備え、最適化した駆動手段で移動体１０の駆動を制御する駆動制御装置に分割されてもよい。これによって、移動体１０に搭載される駆動制御装置は、例えば、移動体１０の外部の特定装置が特定した駆動手段を用いて、移動体１０を制御することができる。
【００７５】
以上の本実施形態に係る情報処理装置１００は、制約取得部１１０が、離散化された移動経路の情報を取得することを説明した。これに代えて、制約取得部１１０は、目的地までの移動経路の情報を取得した場合に、当該移動経路を離散化させてもよい。制約取得部１１０は、予め定められた距離間隔で移動経路を離散化させてよく、これに代えて、カーブの開始点および終了点等の位置に応じて、移動経路を離散化させてもよい。
【００７６】
このように、移動経路を離散化させることにより、制約取得部１１０は、離散化させた位置毎に制約を順次生成することができ、また、生成部１３０は、離散化させた位置毎に移動体１０の状態を生成し、離散化させた位置毎に生成した状態を枝刈りすることができる。このように、生成部１３０が動的計画法によって移動体１０の状態を識別するための属性集合（即ち、移動経路）については離散化させて逐次計算できるようにし、他の属性集合（即ち、移動体１０の状態を表す各要素等）は離散化せずに実数のまま取り扱うことにより、情報処理装置１００は、離散化して取り扱うパラメータを最小にして、離散化誤差を低減させつつ、移動体１０の駆動手段を最適化することができる。
【００７７】
図５は、本実施形態に係る情報処理装置１００として機能するコンピュータ１９００のハードウェア構成の一例を示す。本実施形態に係るコンピュータ１９００は、ホスト・コントローラ２０８２により相互に接続されるＣＰＵ２０００、ＲＡＭ２０２０、グラフィック・コントローラ２０７５、および表示装置２０８０を有するＣＰＵ周辺部と、入出力コントローラ２０８４によりホスト・コントローラ２０８２に接続される通信インターフェイス２０３０、ハードディスクドライブ２０４０、およびＤＶＤドライブ２０６０を有する入出力部と、入出力コントローラ２０８４に接続されるＲＯＭ２０１０、フレキシブルディスク・ドライブ２０５０、および入出力チップ２０７０を有するレガシー入出力部と、を備える。
【００７８】
ホスト・コントローラ２０８２は、ＲＡＭ２０２０と、高い転送レートでＲＡＭ２０２０をアクセスするＣＰＵ２０００およびグラフィック・コントローラ２０７５とを接続する。ＣＰＵ２０００は、ＲＯＭ２０１０およびＲＡＭ２０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィック・コントローラ２０７５は、ＣＰＵ２０００等がＲＡＭ２０２０内に設けたフレーム・バッファ上に生成する画像データを取得し、表示装置２０８０上に表示させる。これに代えて、グラフィック・コントローラ２０７５は、ＣＰＵ２０００等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
【００７９】
入出力コントローラ２０８４は、ホスト・コントローラ２０８２と、比較的高速な入出力装置である通信インターフェイス２０３０、ハードディスクドライブ２０４０、ＤＶＤドライブ２０６０を接続する。通信インターフェイス２０３０は、ネットワークを介して他の装置と通信する。ハードディスクドライブ２０４０は、コンピュータ１９００内のＣＰＵ２０００が使用するプログラムおよびデータを格納する。ＤＶＤドライブ２０６０は、ＤＶＤ−ＲＯＭ２０９５からプログラムまたはデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。
【００８０】
また、入出力コントローラ２０８４には、ＲＯＭ２０１０と、フレキシブルディスク・ドライブ２０５０、および入出力チップ２０７０の比較的低速な入出力装置とが接続される。ＲＯＭ２０１０は、コンピュータ１９００が起動時に実行するブート・プログラム、および／または、コンピュータ１９００のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ２０５０は、フレキシブルディスク２０９０からプログラムまたはデータを読み取り、ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供する。入出力チップ２０７０は、フレキシブルディスク・ドライブ２０５０を入出力コントローラ２０８４へと接続すると共に、例えばパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を入出力コントローラ２０８４へと接続する。
【００８１】
ＲＡＭ２０２０を介してハードディスクドライブ２０４０に提供されるプログラムは、フレキシブルディスク２０９０、ＤＶＤ−ＲＯＭ２０９５、またはＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、記録媒体から読み出され、ＲＡＭ２０２０を介してコンピュータ１９００内のハードディスクドライブ２０４０にインストールされ、ＣＰＵ２０００において実行される。
【００８２】
プログラムは、コンピュータ１９００にインストールされ、コンピュータ１９００を制約取得部１１０、記憶部１２０、生成部１３０、最適化部１４０、位置取得部１５０、および制御部１６０として機能させる。
【００８３】
プログラムに記述された情報処理は、コンピュータ１９００に読込まれることにより、ソフトウェアと上述した各種のハードウェア資源とが協働した具体的手段である音制約取得部１１０、記憶部１２０、生成部１３０、最適化部１４０、位置取得部１５０、および制御部１６０として機能する。そして、この具体的手段によって、本実施形態におけるコンピュータ１９００の使用目的に応じた情報の演算または加工を実現することにより、使用目的に応じた特有の情報処理装置１００が構築される。
【００８４】
一例として、コンピュータ１９００と外部の装置等との間で通信を行う場合には、ＣＰＵ２０００は、ＲＡＭ２０２０上にロードされた通信プログラムを実行し、通信プログラムに記述された処理内容に基づいて、通信インターフェイス２０３０に対して通信処理を指示する。通信インターフェイス２０３０は、ＣＰＵ２０００の制御を受けて、ＲＡＭ２０２０、ハードディスクドライブ２０４０、フレキシブルディスク２０９０、またはＤＶＤ−ＲＯＭ２０９５等の記憶装置上に設けた送信バッファ領域等に記憶された送信データを読み出してネットワークへと送信し、もしくは、ネットワークから受信した受信データを記憶装置上に設けた受信バッファ領域等へと書き込む。このように、通信インターフェイス２０３０は、ＤＭＡ（ダイレクト・メモリ・アクセス）方式により記憶装置との間で送受信データを転送してもよく、これに代えて、ＣＰＵ２０００が転送元の記憶装置または通信インターフェイス２０３０からデータを読み出し、転送先の通信インターフェイス２０３０または記憶装置へとデータを書き込むことにより送受信データを転送してもよい。
【００８５】
また、ＣＰＵ２０００は、ハードディスクドライブ２０４０、ＤＶＤドライブ２０６０（ＤＶＤ−ＲＯＭ２０９５）、フレキシブルディスク・ドライブ２０５０（フレキシブルディスク２０９０）等の外部記憶装置に格納されたファイルまたはデータベース等の中から、全部または必要な部分をＤＭＡ転送等によりＲＡＭ２０２０へと読み込ませ、ＲＡＭ２０２０上のデータに対して各種の処理を行う。そして、ＣＰＵ２０００は、処理を終えたデータを、ＤＭＡ転送等により外部記憶装置へと書き戻す。このような処理において、ＲＡＭ２０２０は、外部記憶装置の内容を一時的に保持するものとみなせるから、本実施形態においてはＲＡＭ２０２０および外部記憶装置等をメモリ、記憶部、または記憶装置等と総称する。本実施形態における各種のプログラム、データ、テーブル、データベース等の各種の情報は、このような記憶装置上に格納されて、情報処理の対象となる。なお、ＣＰＵ２０００は、ＲＡＭ２０２０の一部をキャッシュメモリに保持し、キャッシュメモリ上で読み書きを行うこともできる。このような形態においても、キャッシュメモリはＲＡＭ２０２０の機能の一部を担うから、本実施形態においては、区別して示す場合を除き、キャッシュメモリもＲＡＭ２０２０、メモリ、および／または記憶装置に含まれるものとする。
【００８６】
また、ＣＰＵ２０００は、ＲＡＭ２０２０から読み出したデータに対して、プログラムの命令列により指定された、本実施形態中に記載した各種の演算、情報の加工、条件判断、情報の検索・置換等を含む各種の処理を行い、ＲＡＭ２０２０へと書き戻す。例えば、ＣＰＵ２０００は、条件判断を行う場合においては、本実施形態において示した各種の変数が、他の変数または定数と比較して、大きい、小さい、以上、以下、等しい等の条件を満たすかどうかを判断し、条件が成立した場合（または不成立であった場合）に、異なる命令列へと分岐し、またはサブルーチンを呼び出す。
【００８７】
また、ＣＰＵ２０００は、記憶装置内のファイルまたはデータベース等に格納された情報を検索することができる。例えば、第１属性の属性値に対し第２属性の属性値がそれぞれ対応付けられた複数のエントリが記憶装置に格納されている場合において、ＣＰＵ２０００は、記憶装置に格納されている複数のエントリの中から第１属性の属性値が指定された条件と一致するエントリを検索し、そのエントリに格納されている第２属性の属性値を読み出すことにより、所定の条件を満たす第１属性に対応付けられた第２属性の属性値を得ることができる。
【００８８】
以上に示したプログラムまたはモジュールは、外部の記録媒体に格納されてもよい。記録媒体としては、フレキシブルディスク２０９０、ＤＶＤ−ＲＯＭ２０９５の他に、ＤＶＤ、Ｂｌｕ−ｒａｙ（登録商標）、またはＣＤ等の光学記録媒体、ＭＯ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークまたはインターネットに接続されたサーバシステムに設けたハードディスクまたはＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ１９００に提供してもよい。
【００８９】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００９０】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【００９１】
１０  移動体、１２  バッテリー、１４  モーター、１６  エンジン、１８  変換制御部、１００  情報処理装置、１１０  制約取得部、１２０  記憶部、１３０  生成部、１４０  最適化部、１５０  位置取得部、１６０  制御部、１９００  コンピュータ、２０００  ＣＰＵ、２０１０  ＲＯＭ、２０２０  ＲＡＭ、２０３０  通信インターフェイス、２０４０  ハードディスクドライブ、２０５０  フレキシブルディスク・ドライブ、２０６０  ＤＶＤドライブ、２０７０  入出力チップ、２０７５  グラフィック・コントローラ、２０８０  表示装置、２０８２  ホスト・コントローラ、２０８４  入出力コントローラ、２０９０  フレキシブルディスク、２０９５  ＤＶＤ−ＲＯＭ
【図１】
2015192508.tif 000003
【図２】
2015192508.tif 000004
【図３】
2015192508.tif 000005
【図４】
2015192508.tif 000006
【図５】
2015192508.tif 000007