(57)【要約】      （修正有）【課題】ユーザの意図する経路の探索を支援する地図表示システム及びプログラムを提供する。【解決手段】第１の探索条件に基づき始点から終点への第１の経路を探索する経路探索手段２０２と、探索された第１の経路上の一の経由地が、ユーザの操作により変更される場合、一の経由地が始点又は終点から第１の所定の範囲内に含まれるか否かを判定する判定手段と、一の経由地が始点又は終点から第１の所定の範囲内に含まれると判定された場合、一の経由地から第２の所定の範囲内に含まれる第１の経路上の１以上の経由地を取得し、ユーザの操作に応じて一の経由地を変更させるとともに、取得された１以上の経由地を一の経由地の変更に伴って変更させる経由地変更手段２０５とを有する。【選択図】図３
2016061697.tif 000002
【特許請求の範囲】
【請求項１】
地図上における経路を表示させる地図表示システムであって、
始点に関する情報と、終点に関する情報とを含む第１の探索条件に基づき、前記始点から前記終点への第１の経路を探索する経路探索手段と、
前記経路探索手段により探索された前記第１の経路上の一の経由地が、ユーザの操作により変更される場合、前記一の経由地が前記始点又は前記終点から第１の所定の範囲内に含まれるか否かを判定する判定手段と、
前記判定手段により前記一の経由地が前記始点又は前記終点から前記第１の所定の範囲内に含まれると判定された場合、前記一の経由地から第２の所定の範囲内に含まれる前記第１の経路上の１以上の経由地を取得し、前記ユーザの操作に応じて前記一の経由地を変更させるとともに、前記取得された１以上の経由地を前記一の経由地の変更に伴って変更させる経由地変更手段と、
前記変更された一の経由地の情報と、前記変更された１以上の経由地の情報と、前記始点に関する情報と、前記終点に関する情報とを含む第２の探索条件に基づき、前記一の経由地及び前記１以上の経由地を経由する前記始点から前記終点への第２の経路を前記経路探索手段により再探索する経路再探索手段と、
を有する地図表示システム。
【請求項２】
前記経由地変更手段は、
前記判定手段により前記一の経由地が前記始点又は前記終点から前記第１の所定の範囲内に含まれないと判定された場合、前記ユーザ操作に応じて前記一の経由地を変更させ、
前記経路再探索手段は、
前記変更された一の経由地の情報と、前記始点に関する情報と、前記終点に関する情報とを含む第２の探索条件に基づき、前記一の経由地を経由する前記始点から前記終点への第２の経路を前記経路探索手段により再探索する、請求項１記載の地図表示システム。
【請求項３】
前記ユーザの操作は、前記地図上に表示された前記第１の経路に対するドラッグ操作であり、
前記判定手段は、
前記経路探索手段により探索された前記第１の経路上において前記ドラッグ操作が行われた一の経由地が、該ドラッグ操作により変更される場合、前記一の経由地が前記始点又は前記終点から第１の所定の範囲内に含まれるか否かを判定する、請求項１又は２記載の地図表示システム。
【請求項４】
前記経路は、２以上のノードと、該ノード間を繋ぐリンクとにより構成され、
前記経由地は、前記始点及び前記終点であるノード以外の前記ノードである、請求項１ないし３のいずれか１項に記載の地図表示システム。
【請求項５】
地図上における経路を表示させるコンピュータを、
始点に関する情報と、終点に関する情報とを含む第１の探索条件に基づき、前記始点から前記終点への第１の経路を探索する経路探索手段、
前記経路探索手段により探索された前記第１の経路上の一の経由地が、ユーザの操作により変更される場合、前記一の経由地が前記始点又は前記終点から第１の所定の範囲内に含まれるか否かを判定する判定手段、
前記判定手段により前記一の経由地が前記始点又は前記終点から前記第１の所定の範囲内に含まれると判定された場合、前記一の経由地から第２の所定の範囲内に含まれる前記第１の経路上の１以上の経由地を取得し、前記ユーザの操作に応じて前記一の経由地を変更させるとともに、前記取得された１以上の経由地を前記一の経由地の変更に伴って変更させる経由地変更手段、
前記変更された一の経由地の情報と、前記変更された１以上の経由地の情報と、前記始点に関する情報と、前記終点に関する情報とを含む第２の探索条件に基づき、前記一の経由地及び前記１以上の経由地を経由する前記始点から前記終点への第２の経路を前記経路探索手段により再探索する経路再探索手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、地図表示システム及びプログラムに関する。
【背景技術】
【０００２】
従来より、地図表示システムにおいて、ユーザが出発地及び目的地等の入力を行い、出発地から目的地への経路を探索して表示させる技術が知られている、このような地図表示システムにおいて、例えば表示された経路がユーザが意図するものと異なる場合等に、表示された経路上の１つの経由地を変更（移動）させて、この変更後の経由地を経由するように経路を再探索して表示させる技術が知られている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】国際公開第２００８／１１７７１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記の従来技術においては、再探索された経路が依然としてユーザの意図する経路とならない場合があった。例えば、表示された経路上の１つの経由地を変更（移動）させた場合、この変更後の経由地だけを経由して元の経路（再探索される前の経路）に戻ってしまうような経路が再探索・表示されることがある。したがって、ユーザは、意図する経路が再探索・表示されるまで複数の経由地を１つずつ変更させる必要があり、手間である。
【０００５】
一方、例えば、表示された経路上の複数の経由地を一度に変更させることによりユーザの手間を軽減させることができるが、この場合には、１つ１つの経由地を柔軟に変更させることが困難となる。ここで、出発地及び目的地の付近では、ユーザは詳細に経由地を設定したい場合が多く、経由地を１つずつ変更させて経路を再探索・表示させることが好ましい。
【０００６】
本発明の実施の形態は、上記の点に鑑みてなされたものであり、ユーザの意図する経路の探索を支援することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の実施の形態は、地図上における経路を表示させる地図表示システムであって、始点に関する情報と、終点に関する情報とを含む第１の探索条件に基づき、前記始点から前記終点への第１の経路を探索する経路探索手段と、前記経路探索手段により探索された前記第１の経路上の一の経由地が、ユーザの操作により変更される場合、前記一の経由地が前記始点又は前記終点から第１の所定の範囲内に含まれるか否かを判定する判定手段と、前記判定手段により前記一の経由地が前記始点又は前記終点から前記第１の所定の範囲内に含まれると判定された場合、前記一の経由地から第２の所定の範囲内に含まれる前記第１の経路上の１以上の経由地を取得し、前記ユーザの操作に応じて前記一の経由地を変更させるとともに、前記取得された１以上の経由地を前記一の経由地の変更に伴って変更させる経由地変更手段と、前記変更された一の経由地の情報と、前記変更された１以上の経由地の情報と、前記始点に関する情報と、前記終点に関する情報とを含む第２の探索条件に基づき、前記一の経由地及び前記１以上の経由地を経由する前記始点から前記終点への第２の経路を前記経路探索手段により再探索する経路再探索手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明の実施の形態によれば、ユーザの意図する経路の探索を支援することができる。
【図面の簡単な説明】
【０００９】
【図１】本実施形態に係る地図表示システムの一例のシステム構成図である。
【図２】本実施形態に係るコンピュータの一例のハードウェア構成図である。
【図３】本実施形態に係る地図表示システムの一例の機能構成図である。
【図４】本実施形態に係る経路の探索及び表示から経路の再探索及び表示までの処理の一例のフローチャートである。
【図５】探索された経路の一例を説明するための図である。
【図６】経路を構成するノード及びリンクについて説明するための図である
【図７】出発地付近の経由地を変更する場合について説明するための図である。
【図８】出発地及び目的地の付近でない経由地を変更する場合について説明するための図である。
【図９】経路を再探索するための探索条件の一例を説明するための図である。
【発明を実施するための形態】
【００１０】
次に、本発明の実施の形態について、図面を参照しつつ詳細に説明する。
【００１１】
＜システム構成＞
まず、本実施形態に係る地図表示システム１のシステム構成について説明する。図１は、本実施形態に係る地図表示システムの一例のシステム構成図である。
【００１２】
図１に示す地図表示システム１は、サーバ装置１０と、クライアント装置２０とが互いにネットワーク３０を介して接続されている。ここで、ネットワーク３０は、有線、無線を含む通信ネットワークであり、例えば、電話回線網やインターネット等である。
【００１３】
サーバ装置１０は、クライアント装置２０から受け取った経路の探索要求に応じて、この探索要求に含まれる探索条件（例えば、出発地、目的地、経由地等の情報）に基づき最適な経路を探索する装置である。
【００１４】
クライアント装置２０は、ユーザが利用する装置であり、サーバ装置１０において探索された経路を表示する。また、クライアント装置２０は、ユーザの操作により探索条件の設定を行う。クライアント装置２０は、スマートフォン２０ａ、ノートＰＣ２０ｂ、ナビゲーション専用端末２０ｃ等であるが、これらに限られず、例えば、デスクトップＰＣ、ＰＤＡ（Personal Digital Assistant）、ゲーム機器、デジタルサイネージ等であってもよい。換言すれば、クライアント装置２０は、経路探索を行うための探索条件を設定するための入力機能と、サーバ装置１０において探索された経路を表示する表示機能とを有する装置であればよい。なお、上記においてナビゲーション専用端末２０ｃとは、例えば、車両に搭載され、乗車時に経路探索及び経路表示等を行う専用端末（カーナビゲーション端末）である。
【００１５】
以上のように、本実施形態では、ユーザがクライアント装置２０を操作して探索条件の設定を行い、サーバ装置１０において探索条件に基づき最適な経路を探索する。そして、クライアント装置２０は、サーバ装置１０において探索された経路を表示するものとする。ただし、サーバ装置１０及びクライアント装置２０の役割はこれに限られず、例えば、サーバ装置１０を用いずに、クライアント装置２０において最適な経路を探索するようにしてもよい。すなわち、クライアント装置２０がサーバ装置１０の機能を有していてもよい。
【００１６】
本実施形態では、ユーザにより設定された探索条件に基づきクライアント装置２０に表示された経路について、表示された経路の経由地を変更して、経路を再探索する場合について説明する。すなわち、本実施形態に係る表示システム１の処理の概略は以下の通りである。
（１）ユーザは、クライアント装置２０を操作して出発地、目的地を含む探索条件を設定する。そして、クライアント装置２０は、探索条件を含む経路の探索要求をサーバ装置１０に送信する。
（２）サーバ装置１０は、設定された探索条件に基づき、出発地から目的地までの最適な経路を探索する。そして、探索された経路に関する情報をクライアント装置２０に送信する。
（３）クライアント装置２０は、サーバ装置１０から受け取った探索された経路に関する情報に基づき、地図上に経路を表示させる。ここで、表示された経路がユーザの意図した経路（所望の経路）でなかったものとする。
（４）次に、ユーザは、クライアント装置２０に表示された経路上の経由地を変更させる操作を行う。これは、一般に知られているように、例えば、ユーザが、クライアント装置２０に表示された経路上の所望の位置をドラッグ操作等することにより行うことができる。
（５）クライアント装置２０は、ユーザの操作により変更される経由地が、経路上の出発地付近又は目的地付近の経由地か否かを判定し、判定結果に応じて、変更された１又は複数の経由地を含む探索条件を設定する。
（６）サーバ装置１０は、設定された探索条件に基づき、変更された経由地を経由する出発地から目的地までの経路を再探索する。
【００１７】
本実施形態では、上記（５）において、１つの経由地を変更させるか又は複数の経由地を変更させるかを、例えば、ユーザがドラッグ操作を行った経路上の位置に基づいて決定する。すなわち、本実施形態では、ユーザが経路上の出発地付近又は目的地付近の経由地に対してドラッグ操作を行った場合、このドラッグ操作を行った１つの経由地を変更させる。一方、ユーザが経路上の出発地及び目的地の付近でない経由地に対してドラッグ操作を行った場合、このドラッグ操作を行った経由地を含む複数の経由地を変更させる。
【００１８】
このように、ユーザが、表示された経路の出発地又は目的地付近をドラッグ操作した場合には１つの経由地が変更され、経路の半ば付近（経路の真ん中付近）をドラッグ操作した場合には複数の経由地が変更される。特に、経路の出発地及び目的地の付近でない経由地を変更した場合、この経由地を含む複数の経由地を変更させるため、例えば、変更させた経由地を経由して元の経路に戻ってしまうような経路が再探索・表示されてしまうことを防止することができる。
【００１９】
以上のように、ユーザは、表示された経路が意図するものでない場合等に、出発地又は目的地付近では詳細に経路を変更（再探索）させることができる一方、経路の出発地及び目的地の付近以外では簡便に経路を変更（再探索）させることができる。これにより、出発地又は目的地付近の経路では１つ１つの経由地をユーザの意図通りに変更させることができる一方で、出発地及び目的地の付近以外の経路ではユーザの意図する経路に変更させる手間を軽減させることができる。
【００２０】
＜ハードウェア構成＞
次に、本実施形態に係る表示システム１に含まれるサーバ装置１０及びクライアント装置２０のハードウェア構成について説明する。本実施形態に係るサーバ装置１０及びクライアント装置２０は、例えば図２に示すようなコンピュータ１００により実現される。図２は、本実施形態に係るコンピュータの一例のハードウェア構成図である。
【００２１】
図２に示すコンピュータ１００は、ＣＰＵ（Central Processing Unit）１０１と、ＲＯＭ（Read Only Memory）１０２と、ＲＡＭ（Random Access Memory）１０３と、記憶装置１０４と、入力装置１０５と、表示装置１０６と、通信装置１０７とを有する。
【００２２】
ＣＰＵ１０１は、ＲＯＭ１０２や記憶装置１０４等からプログラムやデータをＲＡＭ１０３上に読み出し、処理を実行することで、コンピュータ１００全体の制御や機能を実現する演算装置である。
【００２３】
ＲＯＭ１０２は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである。ＲＡＭ１０３は、プログラムやデータを一時的に保持する揮発性の半導体メモリである。
【００２４】
記憶装置１０４は、例えばＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）等であり、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、例えばコンピュータ１００全体を制御する基本ソフトウェアであるＯＳ（Operating System）や、ＯＳ上において各種機能を提供するアプリケーションソフトウェア等がある。記憶装置１０４は格納しているプログラムやデータを所定のファイルシステム及び／又はＤＢ（データベース）等により管理している。
【００２５】
入力装置１０５は、キーボードやマウス、タッチパネル等を含み、コンピュータ１００に各種操作信号を入力するのに用いられる。表示装置１０６は、ＬＣＤ（Liquid Crystal Display）やＣＲＴ（Cathode Ray Tube）等を含み、コンピュータ１００による処理結果を表示する。特に、コンピュータ１００がクライアント装置２０である場合、上述したようにクライアント装置２０は、スマートフォン２０ａやビゲーション専用端末２０ｃであり得るため、これらの場合には、入力装置１０５にはタッチパネルが用いられる。
【００２６】
また、コンピュータ１００がサーバ装置１０である場合、入力装置１０５及び／又は表示装置１０６は、必要なときに接続されるように取り外し可能に構成されていてもよい。
【００２７】
通信装置１０７は、例えばＬＡＮ（Local Area Network）等によりネットワーク３０に接続するためのインタフェースである。これにより、コンピュータ１００は通信装置１０７を介して他のコンピュータ１００とデータ通信を行うことができる。
【００２８】
なお、コンピュータ１００がクライアント装置２０である場合、クライアント装置２０の現在位置の情報（例えば、緯度・経度）を取得するＧＰＳ（Global Positioning System）装置を備えていてもよい。
【００２９】
また、コンピュータ１００は、例えばＳＤメモリカード（SD Memory card）やＵＳＢメモリ（Universal Serial Bus memory）、ＤＶＤ（Digital Versatile Disk）、ＣＤ（Compact Disk）等の記録媒体とデータ通信を行うためのインタフェースを備えていてもよい。
【００３０】
本実施形態に係るサーバ装置１０及びクライアント装置２０は、例えば上記のハードウェア構成を有するコンピュータ１００により、後述するような各種処理を実現できる。
【００３１】
＜機能構成＞
次に、本実施形態に係る地図表示システム１の機能構成について説明する。図３は、本実施形態に係る地図表示システムの一例の機能構成図である。
【００３２】
図３に示す地図表示システム１は、主な機能部として、経路設定部２０１と、経路探索部２０２と、出力部２０３と、変更操作検知部２０４と、変更経由地判定部２０５と、経由地変更部２０６と、記憶部２０７とを有する。
【００３３】
経路設定部２０１は、例えばＣＰＵ１０１、入力装置１０５等により実現され、経路探索を行うための出発地、目的地等の探索条件を設定する。これらの出発地、目的地等は、例えばユーザによりクライアント装置２０の入力装置１０５を介して入力される。なお、経路設定部２０１により設定された探索条件は、後述する記憶部２０７に格納される。ここで、探索条件に含まれる出発地、目的地とは、それぞれ出発地により示される位置情報（例えば、緯度・経度）、目的地により示される位置情報のことである。
【００３４】
なお、出発地は、例えば不図示のＧＰＳ装置により取得されるクライアント装置２０の現在位置の情報を用いてもよい。また、ユーザは、出発地及び目的地等に加えて、出発地から目的地までの経路が経由する経由地を探索条件に設定してもよい。
【００３５】
経路探索部２０２は、例えばＣＰＵ１０１等により実現され、経路設定部２０１により設定された探索条件に基づき、出発地から目的地までの最適な経路を探索する。上述したように、本実施形態では、サーバ装置１０が設定された探索条件に基づき経路の探索を行う。したがって、本実施形態では、経路探索部２０２は、サーバ装置１０が有する機能部である。ただし、クライアント装置２０が経路探索部２０２を有していてもよい。
【００３６】
ここで、最適な経路とは、例えば、経路がノードと、ノード間を繋ぐリンクとで構成されている場合、経路を構成する各リンクに対して予め定められたコストの合計が最小となるような経路である。
【００３７】
出力部２０３は、例えばＣＰＵ１０１、表示装置１０６等により実現され、経路探索部２０２により探索された経路をクライアント装置２０の表示装置１０６に表示させる。
【００３８】
変更操作検知部２０４は、例えばＣＰＵ１０１等により実現され、表示装置１０６に表示されている経路上の経由地に対して変更操作が行われたことを検知する。すなわち、例えば、ユーザによりクライアント装置２０の入力装置１０５を介して表示装置１０６に表示されている経路に対してドラッグ操作が行われた場合、変更操作検知部２０４は、このドラッグ操作が行われた経路上の経由地を変更させる操作が行われたことを検知する。
【００３９】
なお、ドラッグ操作とは、例えばマウス等の入力装置１０５を用いてポインタにより選択された点を移動させる操作である。また、例えば入力装置１０５がタッチパネルである場合には、タッチパネルに対するタッチ操作により選択された点を移動させる操作である。
【００４０】
変更経由地判定部２０５は、例えばＣＰＵ１０１等により実現され、変更操作検知部２０４により検知された変更操作に係る経由地が、表示装置１０６に表示されている経路の出発地又は目的地から所定の範囲内にあるか否かを判定する。換言すれば、ユーザが変更を所望する経路上の経由地が、出発地の付近又は目的地の付近であるか否かを判定する。なお、変更経由地判定部２０５の判定に用いられる所定の範囲は、第１の所定の範囲の一例である。
【００４１】
経由地変更部２０６は、例えばＣＰＵ１０１等により実現され、変更経由地判定部２０５による判定結果に応じて、１又は複数の経由地を変更させる。すなわち、例えば、ユーザが変更を所望する経路上の経由地が出発地の付近又は目的地の付近であると変更経由地判定部２０５により判定された場合、この経由地をユーザの変更操作に応じて変更させる。一方、例えば、ユーザが変更を所望する経路上の経由地が出発地及び目的地の付近でないと変更経由地判定部２０５により判定された場合、この経由地と、この経由地から所定の範囲内にある経由地とをユーザの変更操作に応じて変更させる。なお、経由地変更部２０６により変更された経由地は、後述する記憶部２０７に格納される。
【００４２】
なお、上記において、経由地を変更させるとは、経由地により示される位置情報（例えば、緯度・経度）を変更させることである。したがって、ユーザの操作により経由地が変更され、変更された経由地を含む探索条件に基づき経路探索部２０２により経路が再探索されると、この変更された経由地を経由する新たな経路が表示される。
【００４３】
記憶部２０７は、例えば記憶装置１０４等により実現され、経路探索部２０２による経路探索に用いられる探索条件が格納される。すなわち、記憶部２０７には、経路設定部２０１により設定された出発地、目的地等を含む探索条件が格納される。また、経路設定部２０１により設定され、記憶部２０７に格納された探索条件は、経由地変更部２０６により更新される。
【００４４】
例えば、経路設定部２０１により出発地と、目的地とが探索条件として設定されている場合において、この探索条件に基づき探索された経路上の経由地１が経由地変更部２０６により変更された場合、変更後の経由地１ａを探索条件に追加する。すなわち、このとき、ユーザにより経由地の変更操作がされた後の探索条件には、出発地の位置情報と、目的地の位置情報と、変更後の経由地１ａの位置情報とが含まれる。
【００４５】
同様に、例えば、経路設定部２０１により出発地と、目的地と、経由地１とが探索条件として設定されている場合において、経由地１を経由する出発地から目的地までの経路上の経由地２が経由地変更部２０６により変更された場合、変更後の経由地２ａを探索条件に追加する。すなわち、このとき、ユーザにより経由地の変更操作がされた後の探索条件には、出発地の位置情報と、目的地の位置情報と、経由地１の位置情報と、変更後の経由地２ａの位置情報とが含まれる。
【００４６】
また、同様に、例えば、経路設定部２０１により出発地と、目的地と、経由地１とが探索条件として設定されている場合において、経由地１を経由する出発地から目的地までの経路上の経由地１、経由地２、及び経由地３が経由地変更部２０６により変更された場合、変更後の経由地２ａ及び経由地３ａを探索条件に追加とともに、経由地１を変更する。すなわち、このとき、ユーザにより経由地の変更操作がされた後の探索条件には、出発地の位置情報と、目的地の位置情報と、変更後の経由地１ａの位置情報と、変更後の経由地２ａの位置情報と、変更後の経由地３ａの位置情報とが含まれる。
【００４７】
＜処理の詳細＞
次に、本実施形態に係る地図表示システム１の処理の詳細について説明する。図４は、本実施形態に係る経路の探索及び表示から経路の再探索及び表示までの処理の一例のフローチャートである。
【００４８】
ステップＳ４０１において、ユーザは、クライアント装置２０の入力装置１０５を介して、出発地から目的地までの経路を探索するための探索条件を設定する。すると、クライアント装置２０の経路設定部２０１は、設定された探索条件を含む経路探索要求をサーバ装置１０に対して送信する。また、経路設定部２０１は、設定された探索条件を記憶部２０７に格納する。
【００４９】
ここで、ユーザにより設定される探索条件とは、出発地及び目的地である。また、探索条件には、出発地及び目的地に加えて、経由地や移動手段（例えば、車、電車、徒歩等の移動手段）が設定されてもよい。また、２以上の経由地が設定されてもよい。さらに、上述したように、不図示のＧＰＳ装置により取得されたクライアント装置２０の現在位置の情報を、出発地として設定してもよい。
【００５０】
ステップＳ４０２において、サーバ装置１０の経路探索部２０２は、クライアント装置２０から受信した探索条件に基づき最適な経路を探索する。すなわち、経路探索部２０２は、探索条件に含まれる出発地から目的地までの最適な経路（探索条件に経由地が含まれる場合は、さらに経由地を経由する最適な経路）を探索する。経路探索部２０２により探索された経路に関する情報は、クライアント装置２０に送信される。
【００５１】
ステップＳ４０３において、クライアント装置２０の出力部２０３は、サーバ装置１０から経路に関する情報を受信すると、表示装置１０６に経路を表示させる。これにより、ユーザは、自身が設定した出発地から目的地までの最適な経路（経由地も設定されている場合は、さらに経由地を経由する最適な経路）を知ることができる。ここで、クライアント装置２０の出力部２０３は、表示装置１０６に対して、例えば図５に示すような経路１０００を表示させる。図５に示す経路１０００は、ユーザにより設定された出発地２０００と目的地３０００とを含む探索条件に基づき経路探索部２０２により探索された、出発地２０００から目的地３０００までの最適な経路である。
【００５２】
ここで、上記のステップＳ４０３で表示装置１０６に表示された経路１０００がユーザの意図する経路でなかったため、ユーザは、この表示された経路１０００の変更を所望したものとする。
【００５３】
ステップＳ４０４において、ユーザは、クライアント装置２０の表示装置１０６に表示された経路に対して、この経路上の経由地を変更させる操作を行ったものとする。このような、経路上の経由地を変更させる操作は、例えば、ユーザが入力装置１０５を介して、表示装置１０６に表示された経路上の所望の位置をマウスや指でドラッグ操作をすることにより行うことができる。すると、クライアント装置２０の変更操作検知部２０４は、経路上の経由地に対して変更操作が行われたことを検知する。
【００５４】
なお、ここで、経路は、２以上のノードと、ノード間を繋ぐリンクとから構成される。また、ノードには、出発地を示すノードと、目的地を示すノードとが必ず含まれ、必要に応じて経由地を示すノードも含まれる。例えば、図５に示す経路１０００は、図６に示すように、出発地を示すノード２０００と、目的地を示すノード３０００と、経由地を示すノード４００１〜４０１５と、それぞれのノードを繋ぐリンクとから構成される。このため、上記のステップＳ４０４においてユーザが行う経由地を変更させる操作（変更操作）とは、言い換えれば、経路上の経由地を示すノードを変更させる操作と言うことができる。より具体的には、ユーザが行う経由地の変更操作とは、経路上の経由地を示すノードの位置情報（例えば、緯度・経度）を変更させる操作と言うことができる。なお、例えば、経路に含まれるリンクに対してユーザによりドラッグ操作等が行われた場合、このリンクの左端のノード又は右端のノードに対して変更操作が行われたものとすればよい。
【００５５】
ステップＳ４０５において、クライアント装置２０の変更経由地判定部２０５は、上記のステップＳ４０４でユーザにより変更操作が行われた経由地が、出発地又は目的地から所定の範囲内にあるか否かを判定する。換言すれば、変更経由地判定部２０５は、ユーザにより変更操作が行われた経由地を示すノードが、出発地を示すノード又は目的地を示すノードから所定の範囲内にあるか否かを判定する。換言すれば、ユーザが変更操作を行った経由地が、出発地付近の経由地か否か、及び、目的地付近の経由地か否かを判定する。ユーザにより変更操作が行われた経由地が、出発地又は目的地から所定の範囲内ある場合、ステップＳ４０６に進む一方、出発地及び目的地から所定の範囲内にない場合、ステップＳ４０７に進む。
【００５６】
上記の変更経由地判定部２０５による判定について図６を用いて具体的に説明する。例えば、ユーザが経由地を示すノード４００１〜ノード４０１５のいずれかのノードに対して変更操作を行ったとする。すると、変更経由地判定部２０５は、変更操作がされたノードが、出発地を示すノード２０００から所定の範囲内にあるか否か、及び、目的地を示すノード３０００から所定の範囲内にあるか否かを判定する。
【００５７】
ここで、出発地を示すノード２０００から所定の範囲内とは、例えば、ノード４００１を１番目のノード、ノード４００２を２番目のノード、ノード４００３を３番目のノード、・・・と出発地を示すノード２０００から近い順に、経由地を示すノードに番号を振った場合に、予め定められた番号に含まれる範囲を言う。例えば、出発地を示すノード２０００から３番目の経由地を示すノードまでが所定の範囲に含まれる場合、ノード４００１〜ノード４００３は所定の範囲に含まれる一方、ノード４００４〜ノード４０１５は所定の範囲に含まれない。したがって、この場合、例えばユーザが経由地を示すノード４００５に対して変更操作を行った場合、出発地を示すノード２０００から所定の範囲内には含まれない一方、ユーザが経由地を示すノード４００２に対して変更操作を行った場合、出発地を示すノード２０００から所定の範囲内に含まれる。目的地を示すノード３０００から所定の範囲内についても同様である。
【００５８】
ステップＳ４０６において、クライアント装置２０の経由地変更部２０６は、ユーザにより変更操作が行われた経由地を変更する。具体的には、経由地変更部２０６は、ユーザにより変更操作が行われた経由地を示すノードの位置情報（緯度・経度）を、変更操作に応じて（例えば、ドラッグ操作により移動された位置に応じて）変更させる。
【００５９】
例えば図７（ａ）に示すように、ユーザにより、出発地を示すノード２０００から所定の範囲内にある経由地を示すノード４００３に対して変更操作（ドラッグ操作による経由地の移動操作）がなされたものとする。すると、経由地変更部２０６は、変更操作に応じて（ドラッグ操作により移動された位置に応じて）、ノード４００３の位置情報を、変更操作後の位置を示す情報に変更する（この変更後のノードをノード４００３ａとする。）。すなわち、ユーザの変更操作により、例えば、ノード４００３の位置情報である緯度・経度が（X３，Y３）から（X３＋ａ，Ｙ３＋ｂ）に変更される。なお、ここでは、出発地を示すノード２０００から所定の範囲内にある経由地を示すノード４００３に対して変更操作を行った場合について説明したが、目的地を示すノード３０００から所定の範囲内にある経由地を示すノードに対して変更操作を行った場合も上記と同様である。
【００６０】
ステップＳ４０７において、経由地変更部２０６は、ユーザにより変更操作が行われた経由地を含む複数の経由地を変更する。具体的には、経由地変更部２０６は、ユーザにより変更操作が行われた経由地を示すノードの位置情報（緯度・経度）と、この経由地を示すノードに隣接するノードの位置情報（緯度・経度）とを、変更操作に応じて変更させる。
【００６１】
例えば図８（ａ）に示すように、ユーザにより、出発地を示すノード２０００及び目的地を示すノード３０００から所定の範囲内にない経由地を示すノード４００７に対して変更操作がなされたものとする。すると、経由地変更部２０６は、変更操作に応じてノード４００７の位置情報と、このノード４００７に隣接するノード４００６及びノード４００８の位置情報とを変更する（この変更後のノードを、それぞれノード４００７ａ、４００６ａ、４００８ａとする）。すなわち、ユーザの変更操作により、例えば、ノード４００７の位置情報である緯度・経度を（X５，Y５）から（X５＋ａ，Ｙ５＋ｂ）に変更した場合、ノード４００６の位置情報（Ｘ４，Ｙ４）を（Ｘ４＋ａ，Ｙ４＋ｂ）に変更するとともに、ノード４００８の位置情報（Ｘ６，Ｙ６）を（Ｘ６＋ａ，Ｙ６＋ｂ）に変更する。
【００６２】
なお、上記では、ユーザが変更操作を行ったノード４００７に隣接するノード４００６及び４００８の位置情報を変更させたが、これに限られず、ユーザが変更操作を行ったノード４００７から所定の範囲内に含まれる複数のノードの位置情報を変更させるようにしてもよい。例えば、ユーザが変更操作を行ったノード４００７から所定の範囲内に含まれるノード４００５及び４００６、４００８及び４００９の位置情報を変更させるようにしてもよい。ここで、経由地変更部２０６により、ユーザが変更操作を行ったノードを含む複数のノードの位置情報を変更させるために用いられる所定の範囲は、第２の所定の範囲の一例である。
【００６３】
ステップＳ４０８において、クライアント装置２０の経由地変更部２０６は、上記のステップＳ４０６又はステップＳ４０７で変更された経由地を、記憶部２０７の探索条件に格納する。そして、経由地変更部２０６は、探索条件を含む経路探索要求をサーバ装置１０に対して送信する。
【００６４】
例えば、上記のステップＳ４０６において図７（ａ）を用いて説明した例では、経由地を示すノード４００３ａの位置情報が探索条件として格納される。すなわち、記憶部２０７に記憶される探索条件は、図９（ａ）に示すようなものである。図９（ａ）に示す探索条件では、出発地を示すノード２０００の位置情報及び目的地を示すノード３０００の位置情報（これらはステップＳ４０１で格納される）に加えて、経由地を示すノード４００３ａの位置情報が格納されている。
【００６５】
他方、例えば、上記のステップＳ４０７において図８（ａ）を用いて説明した例では、経由地を示すノード４００６ａ、４００７ａ、４００８ａの位置情報が探索条件として格納される。すなわち、記憶部２０７に記憶される探索条件は、図９（ｂ）に示すようなものである。図９（ｂ）に示す探索条件では、出発地を示すノード２０００の位置情報及び目的地を示すノード３０００の位置情報に加えて、経由地を示すノード４００６ａの位置情報、ノード４００７ａの位置情報、及びノード４００８ａの位置情報が格納されている。
【００６６】
ステップＳ４０９において、サーバ装置１０の経路探索部２０２は、クライアント装置２０から受信した探索条件に基づき最適な経路を再探索する。すなわち、経路探索部２０２は、探索条件に含まれる経由地を経由する出発地から目的地までの最適な経路を探索する。そして、経路探索部２０２により探索された経路に関する情報は、クライアント装置２０に送信される。
【００６７】
例えば、探索条件が図９（ａ）に示すものである場合、経路探索部２０２は、経由地を示すノード４００３ａを経由する、出発地を示すノード２０００から目的地を示すノード３００までの最適な経路を探索する。同様に、例えば、探索条件が図９（ｂ）に示すものである場合、経路探索部２０２は、経由地を示すノード４００６ａ、４００７ａ、及び４００８ａを経由する、出発地を示すノード２０００から目的地を示すノード３００までの最適な経路を探索する。このようにして、ユーザの操作により経由地が変更された場合には、最適な経路が再探索される。
【００６８】
ステップＳ４１０において、クライアント装置２０の出力部２０３は、サーバ装置１０から経路に関する情報を受信すると、表示装置１０６に経路を表示させる。これにより、ユーザの変更操作により再探索された経路が表示装置１０６に表示される。
【００６９】
例えば、上記のステップＳ４０６で図７（ａ）に示す変更操作がユーザによりされた場合、図７（ｂ）に示すような経路１１００が表示装置１０６に表示される。図７（ｂ）に示す経路１１００は、図９（ａ）に示す探索条件に基づき探索された経路である。このように、出発地２０００（又は目的地３０００）の付近の経由地（ノード４００３）に対して変更操作がされた場合、変更後の経由地（ノード４００３ａ）を経由する経路１１００が表示される。
【００７０】
他方、例えば、上記のステップＳ４０７で図８（ａ）に示す変更操作がユーザによりされた場合、図８（ｂ）に示すような経路１２００が表示装置１０６に表示される。図８（ｂ）に示す経路１２００は、図９（ｂ）に示す探索条件に基づき探索された経路である。このように、出発地２０００（及び目的地３０００）の付近でない経由地（ノード４００７）に対して変更操作がされた場合、この変更操作に係るノード４００７と、このノード４００７に隣接するノード（ノード４００６及び４００８）とを変更操作に応じて変更させ、変更後の経由地（ノード４００６ａ〜４００８ａ）を経由する経路１２００が表示される。
【００７１】
＜まとめ＞
以上のように本実施形態に係る地図表示システム１では、表示された経路上の経由地に対して変更操作を行うことで、変更後の経由地を経由する経路を再探索及び表示させることができる。このとき、変更操作された経由地が、出発地又は目的地の付近か否かに応じて、変更させる経由地の数を変化させる。すなわち、変更操作された経由地が出発地又は目的地の付近の経由地である場合、変更操作に係る経由地を変更操作に応じて変更する。他方、変更操作された経由地が出発地及び目的地の付近の経由地でない場合、変更操作に係る経由地を含む複数の経由地を変更操作に応じて変更する。これにより、ユーザは、出発地又は目的地の付近では細かな経路変更を行うことができる一方、出発地及び目的地の付近以外（すなわち、表示された経路の真ん中の付近）では簡便に意図した通りの経路変更を行うことができる。したがって、本実施形態に係る地図表示システム１によれば、経路変更に伴うユーザの手間を軽減させつつ、ユーザの意図する経路変更を行うことができる。
【００７２】
なお、経路探索部２０２は、経路探索手段及び経路再探索手段の一例である。変更経由地判定部２０５は、判定手段の一例である。経由地変更部２０６は、経由地変更手段の一例である。
【００７３】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【００７４】
１      地図表示システム
１０    サーバ装置
２０    クライアント装置
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  記憶装置
１０５  入力装置
１０６  表示装置
１０７  通信装置
２０１  経路設定部
２０２  経路探索部
２０３  出力部
２０４  変更操作検知部
２０５  変更経由地判定部
２０６  経由地変更部
２０７  記憶部
【図１】
2016061697.tif 000003
【図２】
2016061697.tif 000004
【図３】
2016061697.tif 000005
【図４】
2016061697.tif 000006
【図５】
2016061697.tif 000007
【図６】
2016061697.tif 000008
【図７】
2016061697.tif 000009
【図８】
2016061697.tif 000010
【図９】
2016061697.tif 000011