JP2009281942A - Route search apparatus, route search method, and program - Google Patents

Route search apparatus, route search method, and program Download PDF

Info

Publication number
JP2009281942A
JP2009281942A JP2008135950A JP2008135950A JP2009281942A JP 2009281942 A JP2009281942 A JP 2009281942A JP 2008135950 A JP2008135950 A JP 2008135950A JP 2008135950 A JP2008135950 A JP 2008135950A JP 2009281942 A JP2009281942 A JP 2009281942A
Authority
JP
Japan
Prior art keywords
route
representative
distance
map
point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008135950A
Other languages
Japanese (ja)
Other versions
JP4794601B2 (en
Inventor
Akito Nagata
章人 永田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Computer Entertainment Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Computer Entertainment Inc filed Critical Sony Computer Entertainment Inc
Priority to JP2008135950A priority Critical patent/JP4794601B2/en
Publication of JP2009281942A publication Critical patent/JP2009281942A/en
Application granted granted Critical
Publication of JP4794601B2 publication Critical patent/JP4794601B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Navigation (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To obtain a route search result of an arbitrary map in a short time. <P>SOLUTION: A method includes: a step (S101) of obtaining map information for indicating the map as an object in which the route is searched; steps (S102-S104) of setting a plurality of representative points on the map indicated by the map information; and a step (S105) of calculating the route between the representative points and its distance. In the step (S105) of calculating the route between the representative points and its distance, a plurality of processors for enabling parallel processing and associated with a portion of the representative points respectively calculate at least one route from one representative point associated with the processor to the other representative point and its distance in parallel. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は経路探索装置、経路探索方法及びプログラムに関する。   The present invention relates to a route search device, a route search method, and a program.

経路探索アルゴリズムは、列車路線探索やカーナビゲーションなど、多くの応用製品で用いられている基本的なコンピュータソフトウェアアルゴリズムの1つである。経路探索アルゴリズムは一般に計算量が膨大になることから、探索処理の一部を事前に実行するとともに、その結果を記憶手段に記憶しておく場合がある(下記特許文献1参照)。こうすれば、記憶手段に記憶された情報を用いて、経路探索結果を短時間に得ることができるようになる。
特開平10−9884号公報
The route search algorithm is one of basic computer software algorithms used in many application products such as train route search and car navigation. Since the route search algorithm generally requires a large amount of calculation, a part of the search processing is executed in advance and the result may be stored in the storage means (see Patent Document 1 below). This makes it possible to obtain a route search result in a short time using the information stored in the storage means.
Japanese Patent Laid-Open No. 10-9884

しかしながら、ゲームに用いられる仮想空間のマップなど、内容が動的に変化するマップに対しては、上記のように探索処理の一部を事前に実行しておくのは困難であり、上記従来技術は、実在の道路地図や列車路線図など、内容が固定されたマップへの適用に限られるという問題があった。   However, it is difficult to execute part of the search processing in advance as described above for a map whose contents dynamically change, such as a virtual space map used in a game. However, there is a problem that it is limited to application to maps with fixed contents such as actual road maps and train route maps.

本発明は上記課題に鑑みてなされたものであって、その目的は、任意のマップに対して経路探索結果を短時間に得ることができる経路探索装置、経路探索方法及びプログラムを提供することにある。   The present invention has been made in view of the above problems, and an object thereof is to provide a route search device, a route search method, and a program capable of obtaining a route search result for an arbitrary map in a short time. is there.

上記課題を解決するために、本発明に係る経路探索装置は、経路探索の対象となるマップを示すマップ情報を取得するマップ情報取得手段と、前記マップ情報が示すマップ上に複数の代表点を設定する代表点設定手段と、前記代表点間の経路及びその距離を演算する事前経路演算手段と、前記事前経路演算手段により演算される前記代表点間の経路及びその距離を記憶する記憶手段と、前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索する経路探索手段と、を含み、前記事前経路演算手段は、並列処理可能であってそれぞれ前記代表点のうち一部が関連づけられる複数のプロセッサを含み、前記各プロセッサは、該プロセッサに関連づけられる前記代表点から他の前記代表点への経路のうち少なくとも1つ及びその距離を並列に演算する、ことを特徴とする。   In order to solve the above problems, a route search device according to the present invention includes a map information acquisition unit that acquires map information indicating a map that is a target of route search, and a plurality of representative points on the map indicated by the map information. Representative point setting means for setting, a pre-route calculating means for calculating the route between the representative points and the distance thereof, and a storage means for storing the route between the representative points and the distance calculated by the pre-route calculating means. And a route search means for searching for a route from a given start point to a given end point based on the route stored in the storage means and its distance, and the prior route calculation means includes parallel processing A plurality of processors, each of which is associated with a portion of the representative point, wherein each processor is a path from the representative point associated with the processor to another representative point. One and a distance calculating in parallel even without, characterized in that.

また、本発明に係る経路探索方法は、経路探索の対象となるマップを示すマップ情報を取得するマップ情報取得ステップと、前記マップ情報が示すマップ上に複数の代表点を設定する代表点設定ステップと、前記代表点間の経路及びその距離を演算する事前経路演算ステップと、前記事前経路演算手段により演算される前記代表点間の経路及びその距離を記憶手段に格納する格納ステップと、前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索する経路探索ステップと、を含み、前記事前経路演算ステップは、並列処理可能であってそれぞれ前記代表点のうち一部が関連づけられる複数のプロセッサのそれぞれにより、該プロセッサに関連づけられる前記代表点から他の前記代表点への経路のうち少なくとも1つ及びその距離を並列に演算する、ことを特徴とする。   The route search method according to the present invention includes a map information acquisition step for acquiring map information indicating a map to be searched for a route, and a representative point setting step for setting a plurality of representative points on the map indicated by the map information. A path calculation step for calculating the path between the representative points and the distance thereof, a storage step for storing the path between the representative points calculated by the prior path calculation means and the distance thereof in a storage means, A route search step for searching for a route from a given start point to a given end point based on the route stored in the storage means and its distance, wherein the prior route calculation step can be processed in parallel. In each of the plurality of processors to which a part of the representative points is associated, the path from the representative point associated with the processor to the other representative point is Calculating at least one and that distance Chi in parallel, characterized in that.

また、本発明に係るプログラムは、経路探索の対象となるマップを示すマップ情報を取得するマップ情報取得手段、前記マップ情報が示すマップ上に複数の代表点を設定する代表点設定手段、前記代表点間の経路及びその距離を演算する事前経路演算手段、前記事前経路演算手段により演算される前記代表点間の経路及びその距離を記憶する記憶手段、及び前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索する経路探索手段として、並列処理可能な複数のプロセッサを備えるコンピュータを機能させるためのプログラムであって、前記各プロセッサにはそれぞれ前記代表点のうち一部が割り当てられ、前記事前経路演算手段は、前記各プロセッサにより、該プロセッサに関連づけられる前記代表点から他の前記代表点への経路のうち少なくとも1つ及びその距離を並列に演算する、ことを特徴とする。なお、プログラムは、CD−ROM、DVD−ROMなど、コンピュータ読取可能な各種の情報記憶媒体に格納されてよい。   Further, the program according to the present invention includes a map information acquisition unit that acquires map information indicating a map to be searched for a route, a representative point setting unit that sets a plurality of representative points on the map indicated by the map information, and the representative A path between points and a pre-path calculating means for calculating the distance thereof, a path between the representative points calculated by the pre-path calculating means and a distance thereof, a path stored in the storage means, and A program for causing a computer including a plurality of processors capable of parallel processing to function as route search means for searching for a route from a given start point to a given end point based on the distance, Are assigned a part of the representative points, and the prior route calculation means is associated with the processor by each processor. At least one and distance of the path from table point to another of the representative point computing in parallel, characterized in that. The program may be stored in various computer-readable information storage media such as a CD-ROM and a DVD-ROM.

また、前記代表点設定手段は、前記マップ情報が示すマップ上に複数の部分領域を設定するとともに、前記各部分領域に対して1以上の代表点を設定してよい。このとき、前記事前経路演算手段に含まれる前記各プロセッサは、該プロセッサに関連づけられる前記代表点から、該代表点に係る前記部分領域に隣接する前記部分領域に対して設定される前記代表点のうち少なくとも1つへ、それら隣接する前記部分領域のみを通って至る経路及びその距離を演算してよい。また、前記各部分領域は共通の矩形状をなしてよい。このとき、前記事前経路演算手段に含まれる前記各プロセッサは、該プロセッサに関連づけられる前記代表点から、該代表点に係る前記部分領域の直交するいずれかの2辺に接する前記部分領域に対して設定される前記代表点のうち少なくとも1つへ、それら前記部分領域のみを通って至る経路及びその距離を演算するようにしてよい。   The representative point setting means may set a plurality of partial areas on the map indicated by the map information and set one or more representative points for each partial area. At this time, each of the processors included in the pre-route calculation means is configured such that the representative point set for the partial area adjacent to the partial area related to the representative point from the representative point associated with the processor. A path that reaches only at least one of the adjacent partial regions and a distance thereof may be calculated. The partial areas may have a common rectangular shape. At this time, each of the processors included in the pre-route calculation means is configured so that the representative point associated with the processor is connected to the partial region that is in contact with any two sides orthogonal to the partial region related to the representative point. It is also possible to calculate the route and the distance to reach at least one of the representative points set through the partial area only.

また、前記代表点設定手段は、すでに取得された前記マップ情報が示すマップとは異なるマップを示す前記マップ情報が前記マップ情報取得手段により取得される場合に、前記複数の部分領域のうちどの前記部分領域に変更があるかを判断するとともに、変更のある前記部分領域に対して1以上の前記代表点を再設定してよい。この場合、前記事前経路演算手段は、再設定される前記代表点を端点とする経路及びその距離を再演算してよい。   Further, the representative point setting means may determine which of the plurality of partial areas when the map information acquisition means acquires the map information indicating a map different from the map indicated by the already acquired map information. It may be determined whether or not there is a change in the partial area, and one or more representative points may be reset for the partial area with the change. In this case, the prior route calculation means may recalculate a route having the representative point to be reset as an end point and its distance.

また、前記経路探索手段は、前記始点の位置に応じて前記代表点のうち1つを選択するとともに、前記始点から該選択される代表点への経路を決定する第1経路決定手段と、前記終点の位置に応じて前記代表点のうち1つを選択するとともに、該選択される代表点から前記終点への経路を決定する第2経路決定手段と、前記記憶手段に記憶される経路及びその距離に基づいて、前記選択される代表点間の経路を決定する第3経路決定手段と、を含んでよい。   The route search means selects one of the representative points according to the position of the start point, and first route determination means for determining a route from the start point to the selected representative point; Selecting one of the representative points according to the position of the end point, and determining a route from the selected representative point to the end point; a route stored in the storage unit; and And a third route determining means for determining a route between the selected representative points based on the distance.

また、本発明に係る経路探索装置は、経路探索の対象となるマップを示すマップ情報を取得するマップ情報取得手段と、前記マップ情報が示すマップ上に複数の部分領域を設定するとともに、前記各部分領域に対して1以上の代表点を設定する代表点設定手段と、前記各代表点から、該代表点に係る前記部分領域に隣接する前記部分領域に対して設定される前記代表点のうち少なくとも1つへ、それら隣接する前記部分領域のみを通って至る経路、及びその距離を演算する事前経路演算手段と、前記事前経路演算手段により演算される前記代表点間の経路及びその距離を記憶する記憶手段と、前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索する経路探索手段と、を含み、前記代表点設定手段は、すでに取得された前記マップ情報が示すマップとは異なるマップを示す前記マップ情報が前記マップ情報取得手段により取得される場合に、前記複数の部分領域のうちどの前記部分領域に変更があるかを判断するとともに、変更のある前記部分領域に対して1以上の前記代表点を再設定し、前記事前経路演算手段は、再設定される前記代表点を端点とする経路及びその距離を再演算する、ことを特徴とする。   Further, the route search device according to the present invention sets map information acquisition means for acquiring map information indicating a map to be searched for a route, and sets a plurality of partial areas on the map indicated by the map information. Representative point setting means for setting one or more representative points for a partial area, and the representative points set for the partial area adjacent to the partial area related to the representative point from the representative points. A route that passes only through the adjacent partial region to at least one, and a pre-route calculation unit that calculates the distance thereof, and a route and the distance between the representative points calculated by the pre-route calculation unit Storage means for storing, route search means for searching for a route from a given start point to a given end point based on the route stored in the storage means and its distance, and the representative point setting means Which of the plurality of partial areas is changed when the map information indicating a map different from the map indicated by the already acquired map information is acquired by the map information acquisition means And at least one representative point is reset for the changed partial area, and the prior route calculation means resets a route having the representative point to be reset as an end point and its distance. It is characterized by calculating.

また、本発明に係る経路探索方法は、経路探索の対象となるマップを示すマップ情報を取得するステップと、前記マップ情報が示すマップ上に複数の部分領域を設定するとともに、前記各部分領域に対して1以上の代表点を設定するステップと、前記各代表点から、該代表点に係る前記部分領域に隣接する前記部分領域に対して設定される前記代表点のうち少なくとも1つへ、それら隣接する前記部分領域のみを通って至る経路、及びその距離を演算するステップと、演算される前記代表点間の経路及びその距離を記憶手段に格納するステップと、前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索するステップと、すでに取得された前記マップ情報が示すマップとは異なるマップを示す前記マップ情報が新たに取得される場合に、前記複数の部分領域のうちどの前記部分領域に変更があるかを判断するとともに、変更のある前記部分領域に対して1以上の前記代表点を再設定するステップと、再設定される前記代表点を端点とする経路及びその距離を再演算するステップと、を含むことを特徴とする。   The route search method according to the present invention includes a step of obtaining map information indicating a map to be searched for a route, a plurality of partial areas on the map indicated by the map information, A step of setting one or more representative points for each, and from each of the representative points to at least one of the representative points set for the partial area adjacent to the partial area related to the representative point A route that passes only through the adjacent partial region and a distance thereof, a step of storing the calculated route between the representative points and the distance thereof in a storage unit, and a route stored in the storage unit And searching for a route from a given start point to a given end point based on the distance and the map indicating a map different from the map indicated by the already acquired map information In the event that a new clip information is newly acquired, it is determined which partial area of the plurality of partial areas is changed, and one or more representative points are re-applied to the changed partial area. A step of setting, and a step of recalculating a route having the representative point to be reset as an end point and a distance thereof.

また、本発明に係るプログラムは、経路探索の対象となるマップを示すマップ情報を取得する手段、前記マップ情報が示すマップ上に複数の部分領域を設定するとともに、前記各部分領域に対して1以上の代表点を設定する手段、前記各代表点から、該代表点に係る前記部分領域に隣接する前記部分領域に対して設定される前記代表点のうち少なくとも1つへ、それら隣接する前記部分領域のみを通って至る経路、及びその距離を演算する手段、演算される前記代表点間の経路及びその距離を記憶手段に格納する手段、前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索する手段、すでに取得された前記マップ情報が示すマップとは異なるマップを示す前記マップ情報が新たに取得される場合に、前記複数の部分領域のうちどの前記部分領域に変更があるかを判断するとともに、変更のある前記部分領域に対して1以上の前記代表点を再設定する手段、及び再設定される前記代表点を端点とする経路及びその距離を再演算する手段としてコンピュータを機能させるためのプログラムである。このプログラムも、CD−ROM、DVD−ROMなど、コンピュータ読取可能な各種の情報記憶媒体に格納されてよい。   Further, the program according to the present invention provides a means for acquiring map information indicating a map to be searched for a route, sets a plurality of partial areas on the map indicated by the map information, and sets 1 for each partial area. The means for setting the representative points described above, from each representative point to at least one of the representative points set for the partial area adjacent to the partial area related to the representative point Based on the route that passes only through the area, the means for calculating the distance, the route between the calculated representative points and the distance in the storage means, the route stored in the storage means and the distance Means for searching for a route from a given start point to a given end point, when the map information indicating a map different from the map indicated by the already acquired map information is newly acquired , Means for determining which partial area of the plurality of partial areas is changed, resetting one or more representative points for the changed partial area, and the representative to be reset This is a program for causing a computer to function as a means for recalculating a route having a point as an end point and its distance. This program may also be stored in various computer-readable information storage media such as CD-ROM and DVD-ROM.

また、前記距離は、該距離に係る経路上に設定されるコストに基づいて演算されてよい。   The distance may be calculated based on a cost set on a route related to the distance.

以下、本発明の実施形態について図面に基づき詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、本実施形態に係る経路探索装置として用いられるコンピュータのハードウェア構成を示す図である。同図に示すように、コンピュータ50は、MPU(Micro Processing Unit)51と、メインメモリ60と、画像処理部64と、モニタ66と、入出力処理部68と、音声処理部70と、スピーカ72と、光ディスク読み取り部74と、光ディスク76と、ハードディスク78と、インタフェース(I/F)80と、操作デバイス82と、ネットワークインタフェース88と、を含んで構成されるコンピュータシステムである。また、図2は、MPU51の構成を示す図である。同図に示すように、MPU51は、メインプロセッサ52と、サブプロセッサ54a,54b,54c,54d,54e,54f,54g,54hと、バス56と、メモリコントローラ58と、インタフェース(I/F)62と、を含んで構成される。すなわち、MPU51は、それぞれ並列して情報処理を実行することができるメインプロセッサ52及びサブプロセッサ54a〜54hを備える、マルチコアプロセッサである。   FIG. 1 is a diagram illustrating a hardware configuration of a computer used as a route search apparatus according to the present embodiment. As shown in the figure, the computer 50 includes an MPU (Micro Processing Unit) 51, a main memory 60, an image processing unit 64, a monitor 66, an input / output processing unit 68, an audio processing unit 70, and a speaker 72. And an optical disk reading unit 74, an optical disk 76, a hard disk 78, an interface (I / F) 80, an operation device 82, and a network interface 88. FIG. 2 is a diagram showing the configuration of the MPU 51. As shown in the figure, the MPU 51 includes a main processor 52, sub processors 54a, 54b, 54c, 54d, 54e, 54f, 54g, 54h, a bus 56, a memory controller 58, and an interface (I / F) 62. And comprising. That is, the MPU 51 is a multi-core processor that includes a main processor 52 and sub processors 54a to 54h that can execute information processing in parallel.

メインプロセッサ52は、図示しないROM(Read Only Memory)に記憶されるオペレーティングシステム、例えばDVD(Digital Versatile Disk)−ROM等の光ディスク36から読み出されるプログラム及びデータや、通信ネットワークを介して供給されるプログラム及びデータ等に基づいて、各種情報処理を行ったり、サブプロセッサ54a〜54hに対する制御を行ったりする。   The main processor 52 is an operating system stored in a ROM (Read Only Memory) (not shown), for example, a program and data read from an optical disk 36 such as a DVD (Digital Versatile Disk) -ROM, and a program supplied via a communication network. Based on the data and the like, various information processing is performed and the sub processors 54a to 54h are controlled.

サブプロセッサ54a〜54hは、メインプロセッサ52からの指示に従って、各種情報処理を行ったり、コンピュータ50の各部を、例えばDVD−ROM等の光ディスク36から読み出されるプログラム及びデータや、通信ネットワークを介して供給されるプログラム及びデータ等に基づいて制御したりする。   The sub-processors 54a to 54h perform various types of information processing in accordance with instructions from the main processor 52, and supply each unit of the computer 50 via a communication network and programs and data read from the optical disk 36 such as a DVD-ROM. Control based on programs and data to be executed.

バス56は、アドレス及びデータをコンピュータ50の各部でやり取りするためのものである。メインプロセッサ52、サブプロセッサ54a〜54h、メモリコントローラ58、インタフェース62は、バス56を介して相互にデータ授受可能に接続される。   The bus 56 is used for exchanging addresses and data between the units of the computer 50. The main processor 52, the sub processors 54a to 54h, the memory controller 58, and the interface 62 are connected to each other via a bus 56 so as to exchange data.

メモリコントローラ58は、メインプロセッサ52及びサブプロセッサ54a〜54hからの指示に従って、メインメモリ60へのアクセスを行う。メインメモリ60には、光ディスク76やハードディスク78から読み出されたプログラム及びデータや、通信ネットワークを介して供給されたプログラム及びデータが必要に応じて書き込まれる。メインメモリ60はメインプロセッサ52やサブプロセッサ54a〜54hの作業用としても用いられる。   The memory controller 58 accesses the main memory 60 in accordance with instructions from the main processor 52 and the sub processors 54a to 54h. Programs and data read from the optical disk 76 and the hard disk 78 and programs and data supplied via the communication network are written into the main memory 60 as necessary. The main memory 60 is also used for work of the main processor 52 and the sub processors 54a to 54h.

インタフェース62には画像処理部64及び入出力処理部68が接続される。メインプロセッサ52及びサブプロセッサ54a〜54hと、画像処理部64又は入出力処理部68と、の間のデータ授受はインタフェース62を介して行われる。   An image processing unit 64 and an input / output processing unit 68 are connected to the interface 62. Data exchange between the main processor 52 and the sub processors 54 a to 54 h and the image processing unit 64 or the input / output processing unit 68 is performed via the interface 62.

画像処理部64は、GPU(Graphical Processing Unit)とフレームバッファとを含んで構成される。GPUは、メインプロセッサ52やサブプロセッサ54a〜54hから供給される画像データに基づいてフレームバッファに各種画面を描画する。フレームバッファに形成された画面、すなわちMPU51の実行結果を示す画面は、所定のタイミングでビデオ信号に変換されてモニタ66に出力される。なお、モニタ66には例えば家庭用テレビ受像機が用いられる。   The image processing unit 64 includes a GPU (Graphical Processing Unit) and a frame buffer. The GPU renders various screens in the frame buffer based on the image data supplied from the main processor 52 and the sub processors 54a to 54h. A screen formed in the frame buffer, that is, a screen showing the execution result of the MPU 51 is converted into a video signal at a predetermined timing and output to the monitor 66. As the monitor 66, for example, a home television receiver is used.

入出力処理部68には、音声処理部70、光ディスク読み取り部74、ハードディスク78、インタフェース80、ネットワークインタフェース88が接続される。入出力処理部68は、メインプロセッサ52及びサブプロセッサ54a〜54hと、音声処理部70、光ディスク読み取り部74、ハードディスク78、インタフェース80、ネットワークインタフェース88と、の間のデータ授受を制御する。   An audio processing unit 70, an optical disk reading unit 74, a hard disk 78, an interface 80, and a network interface 88 are connected to the input / output processing unit 68. The input / output processing unit 68 controls data exchange between the main processor 52 and the sub processors 54 a to 54 h, the audio processing unit 70, the optical disc reading unit 74, the hard disk 78, the interface 80, and the network interface 88.

音声処理部70は、SPU(Sound Processing Unit)とサウンドバッファとを含んで構成される。サウンドバッファには、光ディスク76やハードディスク78から読み出されたゲーム音楽、ゲーム効果音やメッセージなどの各種音声データが記憶される。SPUは、これらの各種音声データを再生してスピーカ72から出力させる。なお、スピーカ72には例えば家庭用テレビ受像機の内蔵スピーカが用いられる。   The sound processing unit 70 includes an SPU (Sound Processing Unit) and a sound buffer. The sound buffer stores various audio data such as game music, game sound effects and messages read from the optical disc 76 and the hard disk 78. The SPU reproduces these various audio data and outputs them from the speaker 72. As the speaker 72, for example, a built-in speaker of a home television receiver is used.

光ディスク読み取り部74は、メインプロセッサ52及びサブプロセッサ54a〜54hからの指示に従って、光ディスク76に記憶されたプログラムやデータを読み取る。なお、コンピュータ50は、光ディスク76以外の他のコンピュータ読取可能な情報記憶媒体に記憶されたプログラムやデータを読取可能に構成してもよい。   The optical disk reading unit 74 reads programs and data stored on the optical disk 76 in accordance with instructions from the main processor 52 and the sub processors 54a to 54h. The computer 50 may be configured to be able to read a program or data stored in a computer-readable information storage medium other than the optical disk 76.

光ディスク76は例えばDVD−ROM等の一般的な光ディスク(コンピュータ読取可能な情報記憶媒体)である。また、ハードディスク78は一般的なハードディスク装置である。光ディスク76やハードディスク78には各種プログラムやデータがコンピュータ読取可能に記憶される。   The optical disk 76 is a general optical disk (computer-readable information storage medium) such as a DVD-ROM. The hard disk 78 is a general hard disk device. Various programs and data are stored in the optical disk 76 and the hard disk 78 so as to be readable by a computer.

インタフェース(I/F)80は、操作デバイス82等の各種周辺機器を接続するためのインタフェースである。このようなインタフェースとしては、例えばUSB(Universal Serial Bus)インタフェースが用いられる。   The interface (I / F) 80 is an interface for connecting various peripheral devices such as the operation device 82. For example, a USB (Universal Serial Bus) interface is used as such an interface.

操作デバイス82は汎用操作入力手段であり、ユーザが各種操作(例えばゲーム操作)を入力するために用いられる。入出力処理部68は、所定時間(例えば1/60秒)ごとに操作デバイス82から、その各部の状態を無線又は有線通信により取得し、その結果を表す操作信号をメインプロセッサ52やサブプロセッサ54a〜54hに供給する。メインプロセッサ52やサブプロセッサ54a〜54hは、ユーザによって行われた操作の内容をその操作信号に基づいて判断する。なお、コンピュータ50は複数の操作デバイス82を通信接続可能に構成されており、各操作デバイス82から入力される操作信号に基づいて、メインプロセッサ52やサブプロセッサ54a〜54hが各種処理を実行するようになっている。   The operation device 82 is general-purpose operation input means, and is used by the user to input various operations (for example, game operations). The input / output processing unit 68 acquires the state of each unit from the operation device 82 every predetermined time (for example, 1/60 seconds) by wireless or wired communication, and sends an operation signal representing the result to the main processor 52 or the sub processor 54a. To ~ 54h. The main processor 52 and the sub processors 54a to 54h determine the content of the operation performed by the user based on the operation signal. The computer 50 is configured so that a plurality of operation devices 82 can be communicably connected, and the main processor 52 and the sub processors 54a to 54h execute various processes based on operation signals input from the operation devices 82. It has become.

操作デバイス82は、ユーザがコンピュータ50を操作するためのデバイスであって、USB等の有線通信手段、及びBlueTooth(商標)やワイヤレスLAN等の無線通信手段を備える可搬型の小型コンピュータとして構成されており、操作デバイス52において行われたユーザの操作内容を示す操作データがコンピュータ50に有線又は無線で送信されるようになっている。   The operation device 82 is a device for a user to operate the computer 50, and is configured as a portable small computer that includes wired communication means such as USB and wireless communication means such as BlueTooth (trademark) and wireless LAN. The operation data indicating the user's operation performed on the operation device 52 is transmitted to the computer 50 by wire or wirelessly.

以下、上記ハードウェア構成を有するコンピュータ50に、ゲームプログラム及び経路探索プログラムを実行させる例について説明する。ここで、ゲームプログラムは、例えば仮想空間でキャラクタが自在に移動するゲームに関するものである。また、経路探索プログラムは、ゲームプログラムにより起動され、該ゲームプログラムから、前記仮想空間のマップを示す情報(マップ情報)、前記マップにおける前記キャラクタの移動経路の出発地点(始点)及び目標地点(終点)を受け取る。そして、前記マップにおける始点及び終点間の最短移動経路を演算し、それをゲームプログラムに通知する。ゲームプログラムでは、こうして通知される経路に沿ってキャラクタを仮想空間内で移動させる処理を実行する。ゲームプログラムや経路探索プログラムは、例えば光ディスク76に格納され、該光ディスクからコンピュータ50にロードされる。そして、いずれもMPU51によって実行される。   Hereinafter, an example in which the computer 50 having the above hardware configuration executes a game program and a route search program will be described. Here, the game program relates to a game in which a character freely moves in a virtual space, for example. The route search program is started by a game program, and from the game program, information indicating the map of the virtual space (map information), a starting point (start point) and a target point (end point) of the moving path of the character in the map ). Then, the shortest movement path between the start point and the end point in the map is calculated and notified to the game program. In the game program, a process of moving the character in the virtual space along the route thus notified is executed. The game program and the route search program are stored in, for example, the optical disc 76 and loaded from the optical disc into the computer 50. Both are executed by the MPU 51.

図3は、ゲームプログラムから経路探索プログラムに渡されるマップ情報が示すマップの一例を示している。同図に示すマップには、仮想的な山や建物が設けられていてキャラクタが進入できない移動不可領域40,41,42、仮想的な舗装道路が存在してキャラクタが容易に移動できる低コスト領域45、それ以外の高コスト領域43,44が配置されている。マップ情報は、移動不可領域40,41,42の位置、低コスト領域45の位置及びキャラクタにとっての移動のし易さ(例えば、単位距離を移動するのに必要となる時間)を示す数値(以下、「移動コスト」という。)、高コスト領域43,44の位置及び移動コストを特定可能な情報である。   FIG. 3 shows an example of a map indicated by map information passed from the game program to the route search program. In the map shown in the figure, non-movable areas 40, 41, and 42 where a virtual mountain or building is provided and a character cannot enter, and a low-cost area where a virtual paved road exists and the character can easily move. 45, and other high-cost areas 43 and 44 are arranged. The map information is a numerical value indicating the position of the immovable areas 40, 41, 42, the position of the low-cost area 45, and the ease of movement for the character (for example, the time required to move the unit distance) (hereinafter referred to as the map information). , Referred to as “movement cost”), information that can specify the position and movement cost of the high-cost areas 43 and 44.

経路探索プログラムは、図4に示すように、マップ情報が与えられるとマップ情報により示されるマップ全体を複数の部分領域11〜33に分割する。例えば、マップ情報により示されるマップが矩形であれば部分領域11〜33も矩形とし、それらの縦の長さが等しく、また横の長さも等しく、且つそれらの長さが予め決められた範囲に収まるようにする。ここでは、マップを縦方向に3分割、横方向に3分割して、合計9つの部分領域11〜33をマップ上に設定する。そして、各部分領域11〜33が縦横に整列配置される。その後、各部分領域11〜33に対して1以上の代表点を設定する。具体的には、各部分領域11〜33における移動可能な連続領域を検出して、各連続領域に対して1つの代表点を設定する。図4の例では、マップ中央の部分領域22は中央に移動不可領域41が横切っており、移動可能な領域が上下に分離し、それにより移動可能な連続領域が2つ形成されている。そこで、上側の連続領域に対しては代表点R22aが設定され、下側の連続領域に対しては代表点R22bが設定されている。他の部分領域11,12,13,21,23,31,32,33はいずれも移動可能な連続領域を1つだけ有しており、それぞれ1つずつ代表点R11,R12,R13,R21,R23,R31,R32,R33が設定されている。これらの代表点は、例えば各連続領域の重心位置に基づいて決定される。すなわち、連続領域内の各位置の座標をその位置の移動コストで重み付けして重心位置を算出し、その重心位置が移動不可領域40,41,42内でなければ、そこを代表点とする。また、移動不可領域40,41,42内であれば、そのすぐ外側を代表点とする。   As shown in FIG. 4, the route search program divides the entire map indicated by the map information into a plurality of partial areas 11 to 33 when map information is given. For example, if the map indicated by the map information is rectangular, the partial areas 11 to 33 are also rectangular, their vertical lengths are equal, their horizontal lengths are equal, and their lengths are within a predetermined range. To fit. Here, the map is divided into three parts in the vertical direction and three parts in the horizontal direction, and a total of nine partial areas 11 to 33 are set on the map. Then, the partial areas 11 to 33 are aligned and arranged vertically and horizontally. Thereafter, one or more representative points are set for each of the partial regions 11 to 33. Specifically, a movable continuous area in each of the partial areas 11 to 33 is detected, and one representative point is set for each continuous area. In the example of FIG. 4, the non-movable area 41 crosses the partial area 22 in the center of the map, and the movable area is separated vertically, thereby forming two movable continuous areas. Therefore, a representative point R22a is set for the upper continuous region, and a representative point R22b is set for the lower continuous region. Each of the other partial areas 11, 12, 13, 21, 23, 31, 32, 33 has only one continuous area that can be moved, and one representative point R11, R12, R13, R21, R23, R31, R32, and R33 are set. These representative points are determined based on, for example, the position of the center of gravity of each continuous region. That is, the position of the center of gravity is calculated by weighting the coordinates of each position in the continuous area by the moving cost of the position, and if the position of the center of gravity is not within the non-movable areas 40, 41, 42, it is set as a representative point. Moreover, if it is in the immovable areas 40, 41, 42, the immediate outside is set as a representative point.

経路探索プログラムは、こうしてマップ情報が示すマップに部分領域11〜33を設定し、各部分領域に含まれる移動可能な連続領域に対して1つずつ代表点を設定すると、次に近接する代表点間の最短移動経路及びその距離(コスト付距離;経路上の位置の移動コストの総和)を算出する。具体的には、各部分領域について、その内側に設定されている代表点(仮始点)を取得するとともに、その部分領域の右側(存在すれば)及び下側に隣接する部分領域内に設定されている代表点(仮終点)を取得する。そして、これら仮始点及び仮終点間の最短移動経路及びその距離を算出する。これにより、図5において太い実線で示されるように、例えばマップ中央の部分領域22の代表点R22a及びR22bについては、それらから右隣の部分領域23の代表点R23への最短移動経路及びその距離、下側に隣接する部分領域32の代表点R32への最短移動経路及びその距離が算出される。左隣の部分領域21の代表点R21、上側に隣接する部分領域12の代表点R12への最短移動経路及びその距離は、それぞれ部分領域21及び部分領域12に関する最短移動経路及びその距離として算出される。これにより結果的に、すべての隣接領域の組み合わせについて、各領域の代表点を結ぶ最短移動経路及びその距離が算出されることになる。このように、ある矩形の部分領域を注目領域とし、その注目領域の代表点と、該注目領域の直交するいずれかの2辺に接する部分領域の代表点と、の最短移動経路及びその距離を算出し、且つ、マップに設定されたすべての部分領域を順次注目領域とすることで、すべての必要な最短移動経路及びその距離が算出されることになる。   When the route search program sets the partial areas 11 to 33 in the map indicated by the map information in this way and sets one representative point for each movable continuous area included in each partial area, the next closest representative point The shortest moving route between and the distance (costed distance; the sum of the moving costs of the positions on the route) are calculated. Specifically, for each partial area, a representative point (temporary starting point) set inside the partial area is acquired and set in a partial area adjacent to the right side (if any) and the lower side of the partial area. The representative point (provisional end point) is acquired. Then, the shortest movement path between the temporary start point and the temporary end point and its distance are calculated. Accordingly, as shown by a thick solid line in FIG. 5, for example, for the representative points R22a and R22b of the partial region 22 at the center of the map, the shortest movement path and the distance from them to the representative point R23 of the right adjacent partial region 23 The shortest movement path to the representative point R32 of the partial region 32 adjacent to the lower side and the distance thereof are calculated. The shortest movement path and its distance to the representative point R21 of the partial area 21 on the left and the representative point R12 of the upper adjacent partial area 12 are calculated as the shortest movement path and the distance for the partial area 21 and the partial area 12, respectively. The As a result, for all combinations of adjacent areas, the shortest movement path connecting the representative points of the areas and the distances thereof are calculated. In this way, a rectangular partial area is set as the attention area, and the shortest movement path and the distance between the representative point of the attention area and the representative point of the partial area in contact with any two orthogonal sides of the attention area are expressed as follows. All necessary shortest movement paths and their distances are calculated by sequentially calculating all the partial areas set in the map as the attention area.

また、各最短移動経路は、隣接する2つの部分領域のみを通り、その他の部分領域は通過しないようにして設定される。これにより、ある部分領域に変更が生じたとしても、最短移動距離は、その変更のあった部分領域に設定された代表点から、及びそこに隣接する部分領域に設定された代表点に至るものだけを再計算すれば済み、他の最短移動経路はそのまま利用し続けることができる。   Each shortest movement path is set so as to pass through only two adjacent partial areas and not pass through the other partial areas. As a result, even if a change occurs in a partial area, the shortest movement distance is from the representative point set in the changed partial area to the representative point set in the adjacent partial area. Only the shortest travel route can be used as it is.

さらに、最短移動経路とは、経路上の位置の移動コストの総和が最小となる経路を意味しており、例えばダイクストラ法、A*(A-Star)アルゴリズムなど、公知の各種経路探索アルゴリズムにより、その距離とともに容易に算出することができる。また、代表点R22aから代表点R32へは、他の部分領域(23や21など)を経由しなければキャラクタは移動できず、これら代表点間の最短移動経路は存在しないものとして扱われている。すなわち、本実施形態においては、仮始点と仮終点との間の最短移動経路としては、仮始点及び仮終点が含まれる、隣接する2つの部分領域以外の領域を通過しないものが算出されるようになっている。   Furthermore, the shortest movement route means a route that minimizes the sum of the movement costs of the positions on the route. For example, by using various known route search algorithms such as Dijkstra method and A * (A-Star) algorithm, It can be easily calculated along with the distance. Further, the character cannot move from the representative point R22a to the representative point R32 unless it passes through another partial area (23, 21 or the like), and it is treated that there is no shortest movement path between these representative points. . That is, in the present embodiment, the shortest movement path between the temporary start point and the temporary end point is calculated so as not to pass through an area other than two adjacent partial areas including the temporary start point and the temporary end point. It has become.

経路探索プログラムは、こうして最短移動経路及びその距離を全ての近接する代表点の組み合わせについて算出すると、それらをハードディスク78或いはメインメモリ60に記憶する。   When the route search program calculates the shortest movement route and the distance thereof for all combinations of representative points close to each other, the route search program stores them in the hard disk 78 or the main memory 60.

その後、経路探索プログラムは、ゲームプログラムからマップ上の位置である始点及び終点を受け取ると、それらの間の最短移動経路を算出する。具体的には、図6に示すように始点Sの位置に応じて、例えば移動コストを考慮して該始点Sに最も近い代表点R11を選択し、また終点Gの位置に応じて、例えば移動コストを考慮して該終点Gに最も近い代表点R33を選択する。なお、始点Sが属する部分領域11の代表点R11を選択してもよいし、同様に終点Gが属する部分領域33の代表点R33を選択してもよい。そして、始点Sから該始点Sに対して選択された代表点R11への最短移動経路を、例えばダイクストラ法やA*アルゴリズムなどにより算出する。同様に、終点Gに対して選択された代表点R33から終点Gへの最短移動経路を、例えばダイクストラ法やA*アルゴリズムなどにより算出する。さらに、始点S及び終点Gに対して選択された代表点R11及びR33の間の最短移動経路も、例えばダイクストラ法やA*アルゴリズムなどにより算出する。このとき、最短移動経路は、始点Sに対して選択された代表点R11から、隣接する部分領域の代表点を順に通過しながら、終点Gに対して選択された代表点R33に至る経路として算出する。そして、順に通過する2つの代表点を結ぶ移動経路は、事前にハードディスク78或いはメインメモリ60に記憶されたものを用いる。すなわち、経路探索プログラムは、予めハードディスク78或いはメインメモリ60に記憶されている、全ての近接する代表点の組み合わせについて算出された最短移動経路及びその距離を参照しながら、代表点R11から代表点R33まで、事前に算出された最短移動経路を通って移動する経路のうち、代表点間の最短移動経路の距離の総和が最も小さくなるものを、これら代表点間の最短移動距離として選択する。ここでは、図6に示されるように、低コスト領域45内を移動する経路が選択される。そして、こうして得られる始点Sから代表点R11への最短移動経路、代表点R11から代表点R33への最短移動経路、代表点R33から終点Gへの最短移動経路を連結して、始点Sから終点Gへの最短移動経路が算出される。そして、この経路を示す情報がゲームプログラムに渡される。上述のように、ゲームプログラムでは、この情報に従ってキャラクタを移動させるなどの処理を実行する。   Thereafter, when the route search program receives the start point and the end point which are positions on the map from the game program, it calculates the shortest movement route between them. Specifically, as shown in FIG. 6, the representative point R11 closest to the start point S is selected in accordance with the position of the start point S in consideration of, for example, the movement cost, and the movement is performed in accordance with the position of the end point G, for example. Considering the cost, the representative point R33 closest to the end point G is selected. Note that the representative point R11 of the partial region 11 to which the start point S belongs may be selected, and similarly, the representative point R33 of the partial region 33 to which the end point G belongs may be selected. Then, the shortest movement path from the start point S to the representative point R11 selected for the start point S is calculated by, for example, the Dijkstra method or the A * algorithm. Similarly, the shortest movement path from the representative point R33 selected for the end point G to the end point G is calculated by, for example, the Dijkstra method or the A * algorithm. Further, the shortest movement path between the representative points R11 and R33 selected for the start point S and the end point G is also calculated by, for example, the Dijkstra method or the A * algorithm. At this time, the shortest movement route is calculated as a route from the representative point R11 selected for the start point S to the representative point R33 selected for the end point G while sequentially passing through the representative points of the adjacent partial areas. To do. Then, the movement path connecting the two representative points that pass in order uses a path previously stored in the hard disk 78 or the main memory 60. That is, the route search program refers to the representative point R11 to the representative point R33 while referring to the shortest movement route and the distance calculated for all the combinations of adjacent representative points stored in the hard disk 78 or the main memory 60 in advance. Up to the shortest moving route calculated in advance, the route having the smallest sum of the distances of the shortest moving routes between the representative points is selected as the shortest moving distance between these representative points. Here, as shown in FIG. 6, a route moving in the low cost area 45 is selected. Then, the shortest movement path from the start point S to the representative point R11, the shortest movement path from the representative point R11 to the representative point R33, and the shortest movement path from the representative point R33 to the end point G obtained in this way are connected. The shortest travel route to G is calculated. Information indicating this route is passed to the game program. As described above, the game program executes processing such as moving a character in accordance with this information.

また、経路探索プログラムでは、ゲームプログラムで用いられているマップに変更があり、この変更後のマップを示すマップ情報を受け取った場合に、ハードディスク78或いはメインメモリ60に既に記憶されている代表点間の最短移動経路及びその距離を更新するようにしている。例えば、図3のマップ中央に示される移動不可領域41が、図7に示すように横方向に短い移動不可領域41aに変化し、それに伴ってより広い高コスト領域43aが現れた場合、図8に示すように変更後のマップを部分領域11〜33に分割して、変更前後のマップにおいて内容変更があった部分領域がどれであるかを調べる。そして、その変更があった部分領域について、再度、移動可能な連続領域を抽出するとともに、各連続領域に代表点を設定する。図7の例では、部分領域22のみに変更があり、移動可能な連続領域が1つに減っている。この場合、部分領域22の代表点は、R22a及びR22bの2つから、R22の1つになる。   Further, in the route search program, when there is a change in the map used in the game program, and map information indicating the map after the change is received, between the representative points already stored in the hard disk 78 or the main memory 60. The shortest movement route and the distance are updated. For example, when the immovable area 41 shown in the center of the map in FIG. 3 changes to a short immovable area 41a in the horizontal direction as shown in FIG. 7, a wider high-cost area 43a appears along with that, as shown in FIG. As shown in FIG. 4, the map after the change is divided into partial areas 11 to 33, and it is checked which partial area has a content change in the map before and after the change. And about the partial area | region where the change was made, while extracting the continuous area | region which can be moved again, a representative point is set to each continuous area | region. In the example of FIG. 7, only the partial area 22 is changed, and the movable continuous area is reduced to one. In this case, the representative point of the partial region 22 becomes one of R22 from two of R22a and R22b.

図9に示すように、経路探索プログラムでは、新しく設定された代表点R22から、変更のあった部分領域22の上下左右に隣接する部分領域12、部分領域32、部分領域21、部分領域23の代表点R12、代表点R32、代表点R21、代表点R23のそれぞれへの最短移動経路及びその距離を算出する。このときも、各最短移動経路は、隣接する2つの部分領域のみを通り、その他の部分領域は通過しないようにして設定される。そして、変更前の部分領域22の代表点R22a及びR22bを端点とする最短移動経路及びその距離を、ハードディスク78或いはメインメモリ60から削除し、代わりに、新たに算出された代表点R22を端点とする最短移動経路及びその距離を格納する。そして、その後は更新後の最短移動経路及びその距離の情報に基づいて、任意の始点及び終点間の最短移動経路を算出する。   As shown in FIG. 9, in the route search program, from the newly set representative point R22, the partial area 12, the partial area 32, the partial area 21, and the partial area 23 that are adjacent to the changed partial area 22 in the vertical and horizontal directions are displayed. The shortest movement path and the distance to each of the representative point R12, the representative point R32, the representative point R21, and the representative point R23 are calculated. Also at this time, each shortest movement path is set so as to pass only two adjacent partial areas and not pass through the other partial areas. Then, the shortest movement path and the distance between the representative points R22a and R22b of the partial area 22 before the change are deleted from the hard disk 78 or the main memory 60. Instead, the newly calculated representative point R22 is used as the end point. The shortest movement route and the distance to be stored are stored. After that, the shortest movement path between an arbitrary start point and end point is calculated based on the updated shortest movement path and the distance information.

ここで、経路探索装置として機能するコンピュータ50の情報処理についてさらに説明する。図10に示すように、経路探索プログラムを実行することによりコンピュータ50では経路情報算出部90、経路情報記憶部91及び経路探索部92が実現される。経路情報算出部90は、MPU51を中心として構成されており、経路探索の対象となるマップを示すマップ情報を取得し、マップ上に複数の代表点を設定する。そして、近接する代表点間の最短移動経路及びその距離を演算して、それらの情報を経路情報記憶部91に格納する。また、マップ情報に変更があった場合には、経路情報記憶部91に記憶される最短移動経路及びその距離を更新する。上述のようにMPU51は、サブプロセッサ54a〜54hを備えており、代表点間の最短移動経路を算出する際には、各サブプロセッサ54a〜54hに対して部分領域が割り当てられ、これにより該部分領域の代表点が関連づけられる。例えば、サブプロセッサ54a〜54hのそれぞれに対して、ランダムに、或いはマップの左上から順に選択される略同数の部分領域が割り当てられる。そして、各サブプロセッサ54a〜54hは、該プロセッサに割り当てられた部分領域の代表点から、右側及び下側に隣接する部分領域の代表点への最短移動経路及びその距離を、それぞれ並列に演算する。こうして、最短移動経路の演算を高速に行うようにしている。   Here, information processing of the computer 50 functioning as a route search device will be further described. As illustrated in FIG. 10, a route information calculation unit 90, a route information storage unit 91, and a route search unit 92 are realized in the computer 50 by executing the route search program. The route information calculation unit 90 is configured with the MPU 51 as the center, acquires map information indicating a map to be a route search target, and sets a plurality of representative points on the map. Then, the shortest movement path between adjacent representative points and the distance thereof are calculated, and the information is stored in the path information storage unit 91. When the map information is changed, the shortest movement route and the distance stored in the route information storage unit 91 are updated. As described above, the MPU 51 includes the sub-processors 54a to 54h. When calculating the shortest movement path between the representative points, a partial area is assigned to each of the sub-processors 54a to 54h. Area representative points are associated. For example, approximately the same number of partial areas that are selected randomly or sequentially from the upper left of the map are assigned to each of the sub-processors 54a to 54h. Then, each of the sub processors 54a to 54h calculates, in parallel, the shortest movement path and the distance from the representative point of the partial area assigned to the processor to the representative point of the partial area adjacent to the right side and the lower side. . In this way, the shortest movement route is calculated at high speed.

経路情報記憶部91は、ハードディスク78或いはメインメモリ60を中心として構成されており、経路情報算出部90により算出される代表点間の最短移動経路及びその距離を記憶する。また、経路探索部92は、MPU51を中心として構成されており、経路情報記憶部91の記憶内容を参照しながら、任意の始点及び終点間の最短移動経路を算出する。   The route information storage unit 91 is configured with the hard disk 78 or the main memory 60 as a center, and stores the shortest movement route between the representative points calculated by the route information calculation unit 90 and its distance. The route search unit 92 is configured with the MPU 51 as the center, and calculates the shortest movement route between an arbitrary start point and end point while referring to the stored contents of the route information storage unit 91.

図11は、経路情報算出部90による準備処理を示している。この処理は、ゲームプログラムなどの外部プログラムからマップ情報を最初に受け取った場合に実行されるものであり、まずマップ情報を取得すると、この情報が示すマップを縦横に等間隔に分割して複数の矩形の部分領域を設定する(S102)。次に、それらの部分領域を各サブプロセッサ54a〜54hに割り当て、各プロセッサ54a〜54hが並列に、割り当てられた部分領域内の可動範囲(移動可能な連続領域)を抽出する(S103)。次に、各可動範囲に対して代表点を設定する(S104)。   FIG. 11 shows the preparation processing by the route information calculation unit 90. This process is executed when map information is first received from an external program such as a game program. When map information is first obtained, the map indicated by this information is divided into a plurality of equal intervals in the vertical and horizontal directions. A rectangular partial area is set (S102). Next, these partial areas are assigned to the sub-processors 54a to 54h, and the processors 54a to 54h extract the movable range (movable continuous area) in the assigned partial areas in parallel (S103). Next, a representative point is set for each movable range (S104).

全ての部分領域に対して代表点が設定されると、次に各プロセッサ54a〜54hが並列に、割り当てられた部分領域の代表点から、右側及び下側に隣接する部分領域の代表点に至る最短移動経路及びその距離を算出する(S105)。全ての部分領域に対して代表点が設定されるまで待ってから、各プロセッサ54a〜54hが、割り当てられた部分領域について最短移動経路及びその距離の算出を開始することで、隣接する部分領域の代表点が算出されるまで演算処理の待機を強いられるといった無駄をなくすことができ、これにより最短移動経路及びその距離の計算を効率化できる。なお、最短移動距離及びその距離を算出する際(S105)と、可動範囲の抽出(S103)及び代表点の設定(S104)を行う際とで、プロセッサ54a〜54hと部分領域との割り当ては異なってよい。その後、各プロセッサ54a〜54hで算出される最短移動経路及びその距離を経路情報記憶部91に格納する(S106)。   When the representative points are set for all the partial areas, the processors 54a to 54h then reach the representative points of the adjacent partial areas on the right side and the lower side in parallel from the representative points of the assigned partial areas. The shortest movement route and its distance are calculated (S105). After waiting until representative points are set for all the partial areas, the processors 54a to 54h start calculating the shortest movement path and the distance of the assigned partial areas, thereby determining the adjacent partial areas. It is possible to eliminate the waste of being forced to wait for the arithmetic processing until the representative point is calculated, thereby making it possible to efficiently calculate the shortest movement route and its distance. It should be noted that the assignment of the processors 54a to 54h and the partial areas is different when calculating the shortest moving distance and the distance (S105) and when extracting the movable range (S103) and setting the representative point (S104). It's okay. Thereafter, the shortest movement route and the distance calculated by each of the processors 54a to 54h are stored in the route information storage unit 91 (S106).

次に、図12は経路情報算出部90による、経路情報記憶部91の記憶内容を更新する処理、及び経路探索部92による、経路情報記憶部91の最新の記憶内容に基づく経路探索処理を示している。同図に示される処理は、例えばゲームプログラムなどの外部プログラムから始点及び終点が与えられた場合に実行される。この処理では、まず経路情報算出部90がマップの更新があったか否かを判断する(S201)。例えば、外部プログラムからマップの更新の有無が与えられる場合には、与えられた情報から直ちに判断できる。また、最新のマップ情報がハードディスク78に格納されている場合には、その更新時刻により更新の有無を判断できる。そして、マップ情報の更新があった場合には、最新のマップ情報を取得して(S202)、どの部分領域に変更があったかを調べる(S203)。そして、それら変更があった部分領域を各サブプロセッサ54a〜54hに割り当て、各プロセッサ54a〜54hが並列に、割り当てられた部分領域内の可動範囲を抽出する(S204)。次に、各可動範囲に対して代表点を設定する(S205)。全ての変更のあった部分領域に対して代表点が設定されると、次に各プロセッサ54a〜54hが並列に、割り当てられた部分領域の代表点から、右側及び下側に隣接する部分領域の代表点に至る最短移動経路及びその距離を算出する(S206)。その後、変更前の部分領域の代表点を端点とする最短移動経路及びその距離を経路情報記憶部91から削除するとともに、各プロセッサ54a〜54hで新たに算出された最短移動経路及びその距離を経路情報記憶部91に格納する(S207)。S201でマップが更新されていないと判断すると、S202〜S207の処理はスキップされる。   Next, FIG. 12 shows a process of updating the storage contents of the route information storage unit 91 by the route information calculation unit 90, and a route search process based on the latest storage contents of the route information storage unit 91 by the route search unit 92. ing. The process shown in the figure is executed when a start point and an end point are given from an external program such as a game program. In this process, first, the route information calculation unit 90 determines whether or not the map has been updated (S201). For example, when the presence or absence of a map update is given from an external program, it can be immediately determined from the given information. When the latest map information is stored in the hard disk 78, it can be determined whether or not there is an update based on the update time. When the map information is updated, the latest map information is acquired (S202), and it is checked which partial area has been changed (S203). Then, the changed partial areas are assigned to the sub processors 54a to 54h, and the processors 54a to 54h extract the movable range in the assigned partial areas in parallel (S204). Next, a representative point is set for each movable range (S205). When the representative points are set for all the changed partial areas, the respective processors 54a to 54h are connected in parallel to the partial areas adjacent to the right side and the lower side from the representative points of the assigned partial areas. The shortest movement route to the representative point and its distance are calculated (S206). Thereafter, the shortest movement route and the distance thereof, which are the representative points of the partial area before the change, are deleted from the route information storage unit 91, and the shortest movement route and the distance newly calculated by each of the processors 54a to 54h are routed. The information is stored in the information storage unit 91 (S207). If it is determined in S201 that the map has not been updated, the processes in S202 to S207 are skipped.

その後、ゲームプログラムなどの外部プログラムから与えられる始点及び終点の座標を取得し(S208)、始点から最も近い代表点を選択するとともに、その選択された代表点への最短移動経路を算出する(S209)。また、終点に最も近い代表点を選択するとともに、そこから終点への最短移動経路を算出する(S210)。さらに、S209及びS210で選択される代表点間の最短移動経路を算出する(S211)。そして、S209〜S211で算出される最短移動経路を連結して、外部プログラムから与えられる始点及び終点を結ぶ最短移動経路の情報を生成し、これを元の外部プログラムに返す(S212)。   Thereafter, the coordinates of the start point and end point given from an external program such as a game program are acquired (S208), the representative point closest to the start point is selected, and the shortest movement path to the selected representative point is calculated (S209). ). In addition, the representative point closest to the end point is selected, and the shortest movement path from there to the end point is calculated (S210). Further, the shortest movement path between the representative points selected in S209 and S210 is calculated (S211). Then, the shortest movement route calculated in S209 to S211 is connected to generate information on the shortest movement route connecting the start point and the end point given from the external program, and this is returned to the original external program (S212).

以上説明した実施形態によると、マップ情報が示すマップに複数の代表点を設定し、サブプロセッサ54a〜54hにこれらの代表点を関連づけ、代表点間の最短移動経路及びその距離をサブプロセッサ54a〜54hにより並列処理するようにしたので、マップ情報が与えられてから短時間で代表点間の最短移動経路を演算することができる。   According to the embodiment described above, a plurality of representative points are set in the map indicated by the map information, the representative points are associated with the sub-processors 54a to 54h, and the shortest movement path between the representative points and the distance thereof are determined from the sub-processors 54a to 54h. Since the parallel processing is performed by 54h, the shortest movement path between the representative points can be calculated in a short time after the map information is given.

本発明の一実施形態に係る経路探索装置として機能するコンピュータのハードウェア構成を示す図である。It is a figure which shows the hardware constitutions of the computer which functions as a route search apparatus which concerns on one Embodiment of this invention. MPUの構成を示す図である。It is a figure which shows the structure of MPU. マップ情報が示すマップの一例を示す図である。It is a figure which shows an example of the map which map information shows. 部分領域及び代表点の設定を示す図である。It is a figure which shows the setting of a partial area | region and a representative point. 事前の最短移動経路の算出を示す図である。It is a figure which shows calculation of the shortest movement path | route in advance. 任意の始点及び終点間の最短移動経路の算出を示す図である。It is a figure which shows calculation of the shortest movement path | route between arbitrary start points and end points. 変更されたマップの一例を示す図である。It is a figure which shows an example of the changed map. 変更されたマップに対する部分領域及び代表点の設定を示す図である。It is a figure which shows the setting of the partial area | region and representative point with respect to the changed map. 変更のある部分領域に関する最短移動経路の更新を示す図である。It is a figure which shows the update of the shortest movement path | route regarding the partial area | region with a change. 本発明の一実施形態に係る経路探索装置の機能ブロック図である。It is a functional block diagram of the route search apparatus which concerns on one Embodiment of this invention. 事前の最短移動経路の算出を示すフロー図である。It is a flowchart which shows calculation of the shortest movement path | route in advance. 任意の始点及び終点間の最短移動経路の算出を示すフロー図である。It is a flowchart which shows calculation of the shortest movement path | route between arbitrary start points and end points.

符号の説明Explanation of symbols

11,12,13,21,22,23,31,32,33 部分領域、40,41,41a,42 移動不可領域、43,43a,44 高コスト領域、45 低コスト領域、50 コンピュータ、51 MPU、52 メインプロセッサ、54a〜54h サブプロセッサ、56 バス、58 メモリコントローラ、60 メインメモリ、62,80 インタフェース、64 画像処理部、66 モニタ、68 入出力処理部、70 音声処理部、72 スピーカ、74 光ディスク読み取り部、76 光ディスク、78 ハードディスク、82 操作デバイス、88 ネットワークインタフェース、90 経路情報算出部、91 経路情報記憶部、92 経路探索部。   11, 12, 13, 21, 22, 23, 31, 32, 33 Partial area, 40, 41, 41a, 42 Non-movable area, 43, 43a, 44 High cost area, 45 Low cost area, 50 Computer, 51 MPU , 52 Main processor, 54a to 54h Sub processor, 56 bus, 58 Memory controller, 60 Main memory, 62, 80 interface, 64 Image processing unit, 66 Monitor, 68 Input / output processing unit, 70 Audio processing unit, 72 Speaker, 74 Optical disk reading unit, 76 optical disk, 78 hard disk, 82 operation device, 88 network interface, 90 route information calculation unit, 91 route information storage unit, 92 route search unit.

Claims (12)

経路探索の対象となるマップを示すマップ情報を取得するマップ情報取得手段と、
前記マップ情報が示すマップ上に複数の代表点を設定する代表点設定手段と、
前記代表点間の経路及びその距離を演算する事前経路演算手段と、
前記事前経路演算手段により演算される前記代表点間の経路及びその距離を記憶する記憶手段と、
前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索する経路探索手段と、を含み、
前記事前経路演算手段は、並列処理可能であってそれぞれ前記代表点のうち一部が関連づけられる複数のプロセッサを含み、前記各プロセッサは、該プロセッサに関連づけられる前記代表点から他の前記代表点への経路のうち少なくとも1つ及びその距離を並列に演算する、
ことを特徴とする経路探索装置。
Map information acquisition means for acquiring map information indicating a map to be searched for a route;
Representative point setting means for setting a plurality of representative points on the map indicated by the map information;
Prior route calculation means for calculating the route between the representative points and the distance between them, and
Storage means for storing the path between the representative points calculated by the prior path calculation means and the distance thereof;
Route search means for searching for a route from a given start point to a given end point based on the route stored in the storage means and its distance;
The prior path calculation means includes a plurality of processors that can be processed in parallel and each of which is associated with a part of the representative points, and each of the processors from the representative point associated with the processor to another representative point Computing in parallel at least one of the routes to and the distance thereof,
A route search apparatus characterized by that.
請求項1に記載の経路探索装置において、
前記代表点設定手段は、前記マップ情報が示すマップ上に複数の部分領域を設定するとともに、前記各部分領域に対して1以上の代表点を設定する、
ことを特徴とする経路探索装置。
The route search device according to claim 1,
The representative point setting means sets a plurality of partial areas on the map indicated by the map information, and sets one or more representative points for the partial areas.
A route search apparatus characterized by that.
請求項2に記載の経路探索装置において、
前記事前経路演算手段に含まれる前記各プロセッサは、該プロセッサに関連づけられる前記代表点から、該代表点に係る前記部分領域に隣接する前記部分領域に対して設定される前記代表点のうち少なくとも1つへ、それら隣接する前記部分領域のみを通って至る経路及びその距離を演算する、
ことを特徴とする経路探索装置。
The route search device according to claim 2,
Each of the processors included in the prior route calculation means has at least one of the representative points set for the partial region adjacent to the partial region related to the representative point from the representative point associated with the processor. Calculating the path and the distance through only the adjacent partial areas to one,
A route search apparatus characterized by that.
請求項3に記載の経路探索装置において、
前記各部分領域は共通の矩形状をなし、
前記事前経路演算手段に含まれる前記各プロセッサは、該プロセッサに関連づけられる前記代表点から、該代表点に係る前記部分領域の直交するいずれかの2辺に接する前記部分領域に対して設定される前記代表点のうち少なくとも1つへ、それら前記部分領域のみを通って至る経路及びその距離を演算する、
ことを特徴とする経路探索装置。
In the route search device according to claim 3,
Each of the partial areas has a common rectangular shape,
Each of the processors included in the prior route calculation means is set from the representative point associated with the processor to the partial region that is in contact with any two orthogonal sides of the partial region related to the representative point. Calculating a route and a distance to only at least one of the representative points through the partial region;
A route search apparatus characterized by that.
請求項2乃至4のいずれかに記載の経路探索装置において、
前記代表点設定手段は、すでに取得された前記マップ情報が示すマップとは異なるマップを示す前記マップ情報が前記マップ情報取得手段により取得される場合に、前記複数の部分領域のうちどの前記部分領域に変更があるかを判断するとともに、変更のある前記部分領域に対して1以上の前記代表点を再設定し、
前記事前経路演算手段は、再設定される前記代表点を端点とする経路及びその距離を再演算する、
ことを特徴とする経路探索装置。
The route search device according to any one of claims 2 to 4,
The representative point setting means, when the map information indicating the map different from the map indicated by the already acquired map information is acquired by the map information acquiring means, which partial area of the plurality of partial areas Determine whether there is a change, and reset one or more representative points for the changed partial area,
The prior route calculating means recalculates a route having the representative point to be reset as an end point and its distance.
A route search apparatus characterized by that.
請求項1乃至5のいずれかに記載の経路探索装置において、
前記経路探索手段は、
前記始点の位置に応じて前記代表点のうち1つを選択するとともに、前記始点から該選択される代表点への経路を決定する第1経路決定手段と、
前記終点の位置に応じて前記代表点のうち1つを選択するとともに、該選択される代表点から前記終点への経路を決定する第2経路決定手段と、
前記記憶手段に記憶される経路及びその距離に基づいて、前記選択される代表点間の経路を決定する第3経路決定手段と、を含む、
ことを特徴とする経路探索装置。
The route search device according to any one of claims 1 to 5,
The route search means includes
Selecting one of the representative points according to the position of the start point, and determining a route from the start point to the selected representative point;
A second route determining means for selecting one of the representative points according to the position of the end point and determining a route from the selected representative point to the end point;
A third route determining means for determining a route between the selected representative points based on the route stored in the storage means and its distance;
A route search apparatus characterized by that.
経路探索の対象となるマップを示すマップ情報を取得するマップ情報取得手段と、
前記マップ情報が示すマップ上に複数の部分領域を設定するとともに、前記各部分領域に対して1以上の代表点を設定する代表点設定手段と、
前記各代表点から、該代表点に係る前記部分領域に隣接する前記部分領域に対して設定される前記代表点のうち少なくとも1つへ、それら隣接する前記部分領域のみを通って至る経路、及びその距離を演算する事前経路演算手段と、
前記事前経路演算手段により演算される前記代表点間の経路及びその距離を記憶する記憶手段と、
前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索する経路探索手段と、を含み、
前記代表点設定手段は、すでに取得された前記マップ情報が示すマップとは異なるマップを示す前記マップ情報が前記マップ情報取得手段により取得される場合に、前記複数の部分領域のうちどの前記部分領域に変更があるかを判断するとともに、変更のある前記部分領域に対して1以上の前記代表点を再設定し、
前記事前経路演算手段は、再設定される前記代表点を端点とする経路及びその距離を再演算する、
ことを特徴とする経路探索装置。
Map information acquisition means for acquiring map information indicating a map to be searched for a route;
Representative point setting means for setting a plurality of partial areas on the map indicated by the map information and setting one or more representative points for each partial area;
A path from each representative point to at least one of the representative points set for the partial area adjacent to the partial area related to the representative point, passing only through the adjacent partial area; and Prior route calculation means for calculating the distance;
Storage means for storing the path between the representative points calculated by the prior path calculation means and the distance thereof;
Route search means for searching for a route from a given start point to a given end point based on the route stored in the storage means and its distance;
The representative point setting means, when the map information indicating the map different from the map indicated by the already acquired map information is acquired by the map information acquiring means, which partial area of the plurality of partial areas Determine whether there is a change, and reset one or more representative points for the changed partial area,
The prior route calculating means recalculates a route having the representative point to be reset as an end point and its distance.
A route search apparatus characterized by that.
請求項1乃至7のいずれかに記載の経路探索装置において、
前記距離は、該距離に係る経路上に設定されるコストに基づいて演算される、
ことを特徴とする経路探索装置。
The route search device according to any one of claims 1 to 7,
The distance is calculated based on the cost set on the route related to the distance.
A route search apparatus characterized by that.
経路探索の対象となるマップを示すマップ情報を取得するマップ情報取得ステップと、
前記マップ情報が示すマップ上に複数の代表点を設定する代表点設定ステップと、
前記代表点間の経路及びその距離を演算する事前経路演算ステップと、
前記事前経路演算ステップで演算される前記代表点間の経路及びその距離を記憶手段に格納する格納ステップと、
前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索する経路探索ステップと、を含み、
前記事前経路演算ステップは、並列処理可能であってそれぞれ前記代表点のうち一部が関連づけられる複数のプロセッサのそれぞれにより、該プロセッサに関連づけられる前記代表点から他の前記代表点への経路のうち少なくとも1つ及びその距離を並列に演算する、
ことを特徴とする経路探索方法。
A map information acquisition step for acquiring map information indicating a map to be searched for a route;
A representative point setting step of setting a plurality of representative points on the map indicated by the map information;
A prior route calculating step for calculating a route between the representative points and a distance thereof;
A storage step of storing the path between the representative points and the distance calculated in the prior path calculation step in a storage unit;
A route search step of searching for a route from a given start point to a given end point based on the route stored in the storage means and its distance;
The pre-path calculation step includes a plurality of processors each of which can be processed in parallel and each of which is associated with a part of the representative points, so that a path from the representative point associated with the processor to another representative point is calculated. Compute at least one of them and their distance in parallel,
A route search method characterized by that.
経路探索の対象となるマップを示すマップ情報を取得するマップ情報取得手段、
前記マップ情報が示すマップ上に複数の代表点を設定する代表点設定手段、
前記代表点間の経路及びその距離を演算する事前経路演算手段、
前記事前経路演算手段により演算される前記代表点間の経路及びその距離を記憶する記憶手段、及び
前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索する経路探索手段
として、並列処理可能な複数のプロセッサを備えるコンピュータを機能させるためのプログラムであって、
前記各プロセッサにはそれぞれ前記代表点のうち一部が割り当てられ、前記事前経路演算手段は、前記各プロセッサにより、該プロセッサに関連づけられる前記代表点から他の前記代表点への経路のうち少なくとも1つ及びその距離を並列に演算する、
ことを特徴とするプログラム。
Map information acquisition means for acquiring map information indicating a map to be searched for a route;
Representative point setting means for setting a plurality of representative points on the map indicated by the map information;
Prior route calculation means for calculating the route between the representative points and the distance thereof,
Storage means for storing the path between the representative points and the distance calculated by the prior path calculation means, and a given end point from a given start point based on the path and the distance stored in the storage means A program for causing a computer including a plurality of processors capable of parallel processing to function as route search means for searching for a route to
Each of the processors is assigned a part of the representative point, and the prior route calculation means is configured to allow the processor to calculate at least one of the routes from the representative point associated with the processor to the other representative point. Compute one and its distance in parallel,
A program characterized by that.
経路探索の対象となるマップを示すマップ情報を取得するステップと、
前記マップ情報が示すマップ上に複数の部分領域を設定するとともに、前記各部分領域に対して1以上の代表点を設定するステップと、
前記各代表点から、該代表点に係る前記部分領域に隣接する前記部分領域に対して設定される前記代表点のうち少なくとも1つへ、それら隣接する前記部分領域のみを通って至る経路、及びその距離を演算するステップと、
演算される前記代表点間の経路及びその距離を記憶手段に格納するステップと、
前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索するステップと、
すでに取得された前記マップ情報が示すマップとは異なるマップを示す前記マップ情報が新たに取得される場合に、前記複数の部分領域のうちどの前記部分領域に変更があるかを判断するとともに、変更のある前記部分領域に対して1以上の前記代表点を再設定するステップと、
再設定される前記代表点を端点とする経路及びその距離を再演算するステップと、
を含むことを特徴とする経路探索方法。
Obtaining map information indicating a map to be searched for, and
Setting a plurality of partial areas on the map indicated by the map information, and setting one or more representative points for each partial area;
A path from each representative point to at least one of the representative points set for the partial area adjacent to the partial area related to the representative point, passing only through the adjacent partial area; and Calculating the distance;
Storing the calculated path and the distance between the representative points in a storage means;
Searching for a route from a given start point to a given end point based on the route stored in the storage means and its distance;
When the map information indicating a map different from the map indicated by the map information that has already been acquired is newly acquired, it is determined which partial area of the plurality of partial areas is changed, and the change is made Resetting one or more representative points for the partial region with
Recalculating the path and its distance with the representative point being re-set as an end point; and
A route search method comprising:
経路探索の対象となるマップを示すマップ情報を取得する手段、
前記マップ情報が示すマップ上に複数の部分領域を設定するとともに、前記各部分領域に対して1以上の代表点を設定する手段、
前記各代表点から、該代表点に係る前記部分領域に隣接する前記部分領域に対して設定される前記代表点のうち少なくとも1つへ、それら隣接する前記部分領域のみを通って至る経路、及びその距離を演算する手段、
演算される前記代表点間の経路及びその距離を記憶手段に格納する手段、
前記記憶手段に記憶される経路及びその距離に基づいて、所与の始点から所与の終点への経路を探索する手段、
すでに取得された前記マップ情報が示すマップとは異なるマップを示す前記マップ情報が新たに取得される場合に、前記複数の部分領域のうちどの前記部分領域に変更があるかを判断するとともに、変更のある前記部分領域に対して1以上の前記代表点を再設定する手段、及び
再設定される前記代表点を端点とする経路及びその距離を再演算する手段
としてコンピュータを機能させるためのプログラム。
Means for obtaining map information indicating a map to be searched for a route;
Means for setting a plurality of partial areas on the map indicated by the map information and setting one or more representative points for each of the partial areas;
A path from each representative point to at least one of the representative points set for the partial area adjacent to the partial area related to the representative point, passing only through the adjacent partial area; and Means for calculating the distance,
Means for storing the path between the representative points to be calculated and its distance in a storage means;
Means for searching for a route from a given start point to a given end point based on the route stored in the storage means and its distance;
When the map information indicating a map different from the map indicated by the map information that has already been acquired is newly acquired, it is determined which partial area of the plurality of partial areas is changed, and the change is made A program for causing a computer to function as means for resetting one or more representative points with respect to a certain partial area, and a means for recalculating a route having the representative points to be reset as endpoints and their distances.
JP2008135950A 2008-05-23 2008-05-23 Route search device, route search method and program Expired - Fee Related JP4794601B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008135950A JP4794601B2 (en) 2008-05-23 2008-05-23 Route search device, route search method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008135950A JP4794601B2 (en) 2008-05-23 2008-05-23 Route search device, route search method and program

Publications (2)

Publication Number Publication Date
JP2009281942A true JP2009281942A (en) 2009-12-03
JP4794601B2 JP4794601B2 (en) 2011-10-19

Family

ID=41452529

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008135950A Expired - Fee Related JP4794601B2 (en) 2008-05-23 2008-05-23 Route search device, route search method and program

Country Status (1)

Country Link
JP (1) JP4794601B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012251831A (en) * 2011-06-01 2012-12-20 Sony Computer Entertainment Inc Shortest route search program, computer-readable recording medium stored with shortest route search program, shortest route search device, and shortest route search method
CN115238525A (en) * 2022-09-16 2022-10-25 广东工业大学 Feasible path searching method for pedestrian simulation passenger flow organization

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007306442A (en) * 2006-05-15 2007-11-22 Ip Flex Kk System and method for searching shortest path between nodes included in network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007306442A (en) * 2006-05-15 2007-11-22 Ip Flex Kk System and method for searching shortest path between nodes included in network

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012251831A (en) * 2011-06-01 2012-12-20 Sony Computer Entertainment Inc Shortest route search program, computer-readable recording medium stored with shortest route search program, shortest route search device, and shortest route search method
CN115238525A (en) * 2022-09-16 2022-10-25 广东工业大学 Feasible path searching method for pedestrian simulation passenger flow organization

Also Published As

Publication number Publication date
JP4794601B2 (en) 2011-10-19

Similar Documents

Publication Publication Date Title
US8466363B2 (en) Sound generation processing apparatus, sound generation processing method and a tangible recording medium
JP6181993B2 (en) Information processing system, information processing apparatus, information processing program, and information transmission / reception method
US9904982B2 (en) System and methods for displaying panoramic content
JPWO2009133603A1 (en) Map display device
JP6030935B2 (en) Information processing program, display control apparatus, display system, and display method
US20140187325A1 (en) Information processing system, information processing apparatus, storage medium and information processing method
CN110755848A (en) Path finding method in game, terminal and readable storage medium
JP5421015B2 (en) Map display device
JP4794601B2 (en) Route search device, route search method and program
JP2007299330A (en) Image display device and its control method and program
JP2015006252A (en) Information processing program, information processing device, information processing system, and calculation method of instruction position
CN102798396B (en) Map display and method, guider and display packing thereof
JP2012198044A (en) Navigation device and navigation program
JP3581673B2 (en) Method for expressing movement of crowd, storage medium, and information processing apparatus
JP4878240B2 (en) Image display control device, image display method, and program
JP5230491B2 (en) Area information acquisition apparatus, area information acquisition method of area information acquisition apparatus, area information acquisition program, area information server apparatus, area information distribution method of area information server apparatus, and area information distribution program
EP3129112B1 (en) Device, game and methods therefore
JP5871486B2 (en) Shortest route search program, computer-readable recording medium storing shortest route search program, shortest route search device, and shortest route search method
JP5916690B2 (en) Map display device
JP2006242890A (en) Navigation system and program
JP5170715B2 (en) Information processing program, information processing apparatus, information processing system, and instruction determination method
JP2004219182A (en) Navigation system
JP5056789B2 (en) Navigation system, facility search method, and facility search program
JP6684755B2 (en) Walkthrough display device, walkthrough display method, and walkthrough display program
JP2012189477A (en) Route display device, method and program

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20101124

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20101203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110405

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110606

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110628

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110726

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140805

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees