← Back to Patent Explorer
US5978730A Expired / Lapsed US ⏱️ 0.0 years remaining

Caching for pathfinding computation

Assignee: Sony Corp
•
Filing: 1997-02-20
•
Granted: 1999-11-02
•
Expires: 2017-02-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system for computing a path in an electronic map (or other network) starts a pathfinding exploration in the background while the system is waiting for a request to find a path. The system automatically chooses an origin. The system's memory can be divided such that a portion of memory acts as a cache. The data for the nodes in the electronic map are loaded into the cache when needed. The system terminates the pathfinding process when a predetermined condition occurs; for example, a predetermined percentage of the cache is filled. When the system terminates the pathfinding process, the system can start a new pathfinding process from a new origin. Thus, when a user requests a path to be found, the pathfinding process begins with data already loaded in the cache.

Inventors

  • 👤 Richard Frederick Poppen
  • 👤 Rodney Jude Fernandez
  • 👤 James Laurence Buxton

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 04:10
CPC Classifications
G; G01; G01C; G01C21/00; G01C21/26; G01C21/34; G01C21/3446

Claims Analysis

Total Claims: 39
Claim 1
Independent Claim 146 words
A method for loading data into a processor readable storage medium, comprising the steps of: choosing, automatically, a first origin in a processor readable representation of a network; commencing a pathfinding exploration using a processor, said pathfinding exploration explores from said first origin, said steps of choosing and commencing being performed without a pathfinding computation being requested; loading sets of data, as needed by said pathfinding exploration, into said processor readable storage medium; terminating said pathfinding exploration when a predefined condition is met; receiving a request to compute a path from a new origin and a new destination; storing an indication of said new origin and an indication of said new destination; and computing a path from said new origin to said new destination using at least a subset of said loaded data, said step of computing a path being performed after said step of commencing.
Claim 2
Independent Claim 146 words
A method for loading data into a processor readable storage medium, comprising the steps of: choosing, automatically, a first origin in a processor readable representation of a network; commencing a pathfinding exploration using a processor, said pathfinding exploration explores from said first origin, said steps of choosing and commencing being performed without a pathfinding computation being requested; loading sets of data, as needed by said pathfinding exploration, into said processor readable storage medium; terminating said pathfinding exploration when a predefined condition is met; receiving a request to compute a path from a new origin and a new destination; storing an indication of said new origin and an indication of said new destination; and computing a path from said new origin to said new destination using at least a subset of said loaded data, said step of computing a path being performed after said step of commencing.
Claim 3
Dependent Claim 77 words
A method according to claim 1, further including the steps of: choosing, automatically, a second origin in said processor readable representation of a network without said pathfinding computation being requested; commencing a second pathfinding exploration using said processor, said second pathfinding exploration explores from said second origin; loading new sets of data, as needed by said second pathfinding exploration, into said processor readable storage medium; and terminating said second pathfinding exploration when said predefined condition is met.
Claim 4
Dependent Claim 17 words
A method according to claim 1, wherein: said predefined condition is met when a path is requested.
Claim 5
Dependent Claim 21 words
A method according to claim 1, wherein: said steps of choosing, commencing, loading and terminating are performed as a background process.
Claim 6
Dependent Claim 29 words
A method according to claim 1, wherein: said data is stored on a CD-ROM; and said step of loading loads said data from said CD-ROM into a cache memory.
Claim 7
Dependent Claim 22 words
A method according to claim 1, wherein: said steps of choosing and commencing are performed without storing an indication of a destination.
Claim 8
Dependent Claim 243 words
A method according to claim 1, wherein: said processor readable representation of a network is an electronic map; said electronic map includes a plurality of nodes, each node having at least one cost for traveling to or from an adjacent node; and said step of commencing a pathfinding exploration includes: (a) setting up a priority queue and a visited list, said priority queue stores node identifications and keys, said visited list stores node identifications and costs of traveling from said origin; (b) initializing said priority queue to include said origin; (c) finding a set of nodes adjacent to said origin; (d) determining a cost of traveling to each of said adjacent nodes from said origin; (e) inserting said adjacent nodes into said priority queue, sorted by cost; (f) inserting said adjacent nodes into said visited list; (g) removing said origin from said priority queue; (h) finding a set of nodes adjacent to a node at said priority queue's head; (i) determining a cost of traveling to each of said nodes adjacent to said node at said priority queue's head; (j) inserting into said priority queue at least a subset of said nodes adjacent to said node at said priority queue's head; (k) inserting into said visited list, if not already in said visited list with a lower cost, said nodes adjacent to said node at said priority queue's head; and (l) removing from said priority queue said node at said priority queue's head.
Claim 9
Dependent Claim 28 words
A method according to claim 7 wherein: said key includes a cost of traveling from said origin and said key does not include any information about a destination.
Claim 10
Dependent Claim 32 words
A method according to claim 7, wherein: said predefined condition is met when a cost for traveling from said origin to said node at said priority queue's head reaches a predetermined threshold.
Claim 11
Dependent Claim 18 words
A method according to claim 1, wherein: said processor readable representation of a network is an electronic map.
Claim 12
Dependent Claim 21 words
A method according to claim 10, wherein: said step of choosing a first origin chooses a current position of a vehicle.
Claim 13
Dependent Claim 29 words
A method according to claim 10, wherein: said step of choosing a first origin chooses a position in said electronic map that is a distance from a current position.
Claim 14
Dependent Claim 23 words
A method according to claim 10, wherein: said sets of data are loaded into a cache memory in said processor readable storage medium.
Claim 15
Dependent Claim 24 words
A method according to claim 13, wherein: said processor readable storage medium is memory; and said cache memory is a portion of said memory.
Claim 16
Dependent Claim 37 words
A method according to claim 13, further including the step of: determining when a predetermined percentage of said cache memory is filled, said predefined condition is met when said predetermined percentage of said cache memory is filled.
Claim 17
Dependent Claim 35 words
A method according to claim 13, further including the step of: determining when a predetermined number of nodes have been processed, said predefined condition is met when said predetermined number of nodes have been processed.
Claim 18
Dependent Claim 43 words
A method according to claim 13, further including the step of: performing a second exploration, said second exploration only considers data residing in said cache memory when said second exploration commences, data used by said second exploration is marked as being recently used.
Claim 19
Dependent Claim 31 words
A method according to claim 13, further including the step of: continuing said pathfinding exploration utilizing data in said cache memory and not loading any additional data into said cache memory.
Claim 20
Dependent Claim 27 words
A method according to claim 9, wherein: said step of continuing is performed after said step of terminating said pathfinding exploration when a predefined condition is met.
Claim 21
Independent Claim 103 words
A method for computing a path in an electronic representation of a network, comprising the steps of: running a background process for loading network data from a mass storage device into a memory, said background process includes an exploration of said network from a chosen origin and loading data needed by said exploration; terminating said background process when a stopping condition is met or when a pathfinding calculation is requested; storing a first origin and a first destination; and determining a path from said first origin to said first destination, after terminating said background process, using said network data loaded into said memory.
Claim 22
Independent Claim 103 words
A method for computing a path in an electronic representation of a network, comprising the steps of: running a background process for loading network data from a mass storage device into a memory, said background process includes an exploration of said network from a chosen origin and loading data needed by said exploration; terminating said background process when a stopping condition is met or when a pathfinding calculation is requested; storing a first origin and a first destination; and determining a path from said first origin to said first destination, after terminating said background process, using said network data loaded into said memory.
Claim 23
Dependent Claim 18 words
A method according to claim 20, wherein: said background process loads data from a CD-ROM to a cache.
Claim 24
Dependent Claim 26 words
A method according to claim 19, wherein: said steps of running and terminating are continuously repeated until said step of performing a pathfinding calculation is commenced.
Claim 25
Independent Claim 172 words
An apparatus for pathfinding, comprising: a processor; a memory, in communication with said processor; and a processor readable storage medium; in communication with said processor and said memory; said processor programmed to perform the method of: choosing, automatically, a first origin in an electronic map; commencing a pathfinding exploration, said pathfinding exploration explores from said first origin, said steps of choosing and commencing being performed without a pathfinding computation being requested; loading sets of data, as needed by said pathfinding exploration, from said processor readable storage medium into a cache portion of said memory; terminating said pathfinding exploration when a predefined condition is met; receiving a request to compute a path from a new origin and a new destination, storing an indication of said new origin and an indication of said new destination, and computing a path from said new origin to said new destination using at least a subset of said data loaded in said cache portion of said memory, said step of computing being performed after said step of terminating.
Claim 26
Independent Claim 172 words
An apparatus for pathfinding, comprising: a processor; a memory, in communication with said processor; and a processor readable storage medium; in communication with said processor and said memory; said processor programmed to perform the method of: choosing, automatically, a first origin in an electronic map; commencing a pathfinding exploration, said pathfinding exploration explores from said first origin, said steps of choosing and commencing being performed without a pathfinding computation being requested; loading sets of data, as needed by said pathfinding exploration, from said processor readable storage medium into a cache portion of said memory; terminating said pathfinding exploration when a predefined condition is met; receiving a request to compute a path from a new origin and a new destination, storing an indication of said new origin and an indication of said new destination, and computing a path from said new origin to said new destination using at least a subset of said data loaded in said cache portion of said memory, said step of computing being performed after said step of terminating.
Claim 27
Dependent Claim 32 words
An apparatus according to claim 23, wherein: said step of choosing includes said processor choosing a position in said electronic map that is a distance from a current position of a vehicle.
Claim 28
Dependent Claim 42 words
An apparatus according to claim 23, wherein said method further includes the step of: determining when a predetermined amount of data is loaded in said memory said predefined condition is met when said predetermined amount of data is loaded in said memory.
Claim 29
Dependent Claim 75 words
An apparatus according to claim 23, wherein is said method further includes the steps of: choosing, automatically, a new origin in said electronic map without said pathfinding computation being requested; commencing a second pathfinding exploration using said processor; loading new sets of data, as needed by said second pathfinding exploration, from said processor readable storage medium into said cache portion of said memory; and terminating said second pathfinding exploration when said predefined condition is met.
Claim 30
Independent Claim 114 words
A method for loading data for pathfinding, comprising the steps of: choosing, automatically, a first origin in an electronic map; commencing a pathfinding exploration using a processor, said pathfinding exploration explores from said first origin, said steps of choosing and commencing being performed without a destination being indicated; loading data, as needed by said pathfinding exploration, into a cache memory; terminating said pathfinding exploration when a predefined condition is met; storing a new origin and a new destination; and computing a path from said new origin to said new destination using at least a subset of said data loaded in said cache memory, said step of computing being performed after said step of commencing.
Claim 31
Independent Claim 114 words
A method for loading data for pathfinding, comprising the steps of: choosing, automatically, a first origin in an electronic map; commencing a pathfinding exploration using a processor, said pathfinding exploration explores from said first origin, said steps of choosing and commencing being performed without a destination being indicated; loading data, as needed by said pathfinding exploration, into a cache memory; terminating said pathfinding exploration when a predefined condition is met; storing a new origin and a new destination; and computing a path from said new origin to said new destination using at least a subset of said data loaded in said cache memory, said step of computing being performed after said step of commencing.
Claim 32
Dependent Claim 162 words
A processor readable storage medium, said processor readable storage medium having processor readable program code embodied on said processor readable storage medium, said processor readable program code for programming a processor to perform a method comprising the steps of: choosing, automatically, a first origin in an electronic map; commencing a pathfinding exploration using a processor, said pathfinding exploration explores from said first origin, said steps of choosing and commencing being performed without a pathfinding computation being requested; loading data, as needed by said pathfinding exploration, into said processor readable storage medium; terminating said pathfinding exploration when a predefined condition is met; receiving a request to compute a path from a new origin and a new destination storing an indication of said new origin and an indication of said new destination; and computing a path from said new origin to said new destination using at least a subset of said loaded data, said step of computing being performed after said step of commencing.
Claim 33
Dependent Claim 162 words
A processor readable storage medium, said processor readable storage medium having processor readable program code embodied on said processor readable storage medium, said processor readable program code for programming a processor to perform a method comprising the steps of: choosing, automatically, a first origin in an electronic map; commencing a pathfinding exploration using a processor, said pathfinding exploration explores from said first origin, said steps of choosing and commencing being performed without a pathfinding computation being requested; loading data, as needed by said pathfinding exploration, into said processor readable storage medium; terminating said pathfinding exploration when a predefined condition is met; receiving a request to compute a path from a new origin and a new destination storing an indication of said new origin and an indication of said new destination; and computing a path from said new origin to said new destination using at least a subset of said loaded data, said step of computing being performed after said step of commencing.
Claim 34
Dependent Claim 28 words
A processor readable storage medium according to claim 28, wherein: said data is loaded into a cache memory; and said cache memory is a portion of main memory.
Claim 35
Dependent Claim 47 words
A processor readable storage medium according to claim 28, wherein said method further includes the step of: determining when a predetermined percentage of said processor readable storage medium is filled, said predefined condition is met when said predetermined percentage of said processor readable storage medium is filled.
Claim 36
Dependent Claim 32 words
A processor readable storage medium according to claim 28, wherein: said data is stored in a CD-ROM; and said step of loading loads said data from said CD-ROM into a cache memory.
Claim 37
Dependent Claim 25 words
A processor readable storage medium according to claim 28, wherein: said steps of choosing and commencing are performed without storing an indication of a destination.
Claim 38
Dependent Claim 51 words
A processor readable storage medium according to claim 28, wherein said method further includes the step of: performing a second exploration, said second exploration only considers data residing in said processor readable storage medium when said second exploration commences, data used by said second exploration is marked as being recently used.
Claim 39
Dependent Claim 24 words
A processor readable storage medium according to claim 28, wherein: said steps of choosing, commencing, loading and terminating are performed as a background process.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-11-01 2003-05-03 2003-11-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-11-01 2007-05-03 2007-11-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-11-01 2011-05-03 2011-11-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag