|
Public Member Functions |
| | Koenigs () |
| | Koenigs (int sizeLSS) |
| virtual | ~Koenigs () |
| void | setParams (KoenigslevelData *_unitData, KoenigsGroup *_group) |
| | Get the parameters of the Koenigs unit and set them inside Koenigs.
|
| path * | getPath (graphAbstraction *aMap, node *from, node *to, reservationProvider *rp=NULL) |
| | The wrapper for the main procedure.
|
| virtual const char * | getName () |
| int | getNumAbsLevels () |
| void | resetNewlySeenCount () |
| int | getNewlySeenCount () |
| graphAbstraction * | getAMap () |
Private Member Functions |
| void | setCorridorIndex (node *n, int index) |
| | Sets the corridor index of a node.
|
| void | setClosedListIndex (node *n, int index) |
| | Sets the closed list index of a node.
|
| void | setDepth (node *n, int depth) |
| | Sets the depth of a node.
|
| void | setgValue (node *n, double g) |
| | Sets the g-value of a node.
|
| int | getCorridorIndex (node *n) |
| | Gets the corridor index of a node.
|
| int | getClosedListIndex (node *n) |
| | Gets the closed list index of a node.
|
| int | getDepth (node *n) |
| | Gets the depth of a node.
|
| double | getgValue (node *n) |
| | Gets the g-value of a node.
|
| int | getAllocateENI (node *n) |
| | Given a node, return the index of the corresponding extended node.
|
| int | getENI (node *n) |
| | Tells us if the node is in the extNodes array.
|
| void | generateName (char *name) |
| | Generates algorithm's name.
|
| void | resetCachedPaths () |
| | Clears the cached paths and corridors.
|
| int | defineCorridor (int aLevel) |
| | Finds and marks the corridor that restricts search at the given level.
|
| void | markCorridor (corridor *c) |
| | Mark the corridor in extNodes for a constant time lookup.
|
| void | relaxEdge (heap *nodeHeap, graph *g, edge *e, int source, int nextNode, node *d, graphAbstraction *map) |
| | This is the standard definition of relaxation as in Introduction to Algorithms (cormen, leiserson and rivest).
|
| void | aStarLSS (graphAbstraction *map, node *from, node *to, reservationProvider *rp) |
| | Define the local search space (LSS) in terms of the first n states expanded by an A* search.
|
| void | relaxLSS (graphAbstraction *map, node *from, node *to) |
| | Update the heuristic values in the local search space (LSS) using Dijkstra's algorithm, as prescribed by Koenig in "A Comparison of Fast Search Methods for Real-Time Situated Agents".
|
| path * | greedyPathLSS (graphAbstraction *aMap, node *from, node *to, reservationProvider *rp) |
| | Returns a path generated by using the greedy strategy: repeatedly move from the current state to the neighboring state s that minimizes f; ties are broken in favor of staying in the LSS.
|
Private Attributes |
| char | KoenigsName [128] |
| graphAbstraction * | aMap |
| KoenigsGroup * | group |
| int | numAbsLevels |
| algSpec * | algAtLevel |
| KoenigslevelData * | unitData |
| std::deque< extNode > | extNodes |
| int | newlySeenCount |
| std::vector< node * > | _LSS |
| std::map< node *, bool, ltNodePtr > | _inLSS |
| unsigned int | _sizeLSS |
Friends |
| class | KoenigsGroup |