Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Private Member Functions | Private Attributes
BestFirstSearchEngine Class Reference

#include <best_first_search.h>

Inheritance diagram for BestFirstSearchEngine:
Inheritance graph
[legend]

List of all members.

Public Types

enum  QueueManagementMode { ROUND_ROBIN, PRIORITY_BASED }

Public Member Functions

void add_heuristic (Heuristic *heuristic, bool use_estimates, bool use_preferred_operators)
 BestFirstSearchEngine (QueueManagementMode _mode)
SearchEngine::status fetch_next_state ()
virtual void initialize ()
virtual void statistics (time_t &current_time)
 ~BestFirstSearchEngine ()

Public Attributes

double bestMakespan
double bestSumOfGoals
enum
BestFirstSearchEngine::QueueManagementMode 
mode

Protected Member Functions

virtual SearchEngine::status step ()

Private Member Functions

bool check_goal ()
bool check_progress (const TimeStampedState *state)
void dump_everything () const
 Dump the whole knowledge of search engine.
void dump_plan_prefix_for__state (const TimeStampedState &state) const
void dump_plan_prefix_for_current_state () const
void dump_transition () const
void generate_successors (const TimeStampedState *parent_ptr)
double getG (const TimeStampedState *state_ptr, const TimeStampedState *closed_ptr, const Operator *op) const
 Compute G depending on the current g mode.
double getGc (const TimeStampedState *parent_ptr) const
double getGc (const TimeStampedState *parent_ptr, const Operator *op) const
double getGm (const TimeStampedState *parent_ptr) const
double getGt (const TimeStampedState *parent_ptr) const
bool is_dead_end ()
void report_progress ()
void reward_progress ()
OpenListInfoselect_open_queue ()

Private Attributes

std::vector< double > best_heuristic_values
std::vector< const
TimeStampedState * > 
best_states
ClosedList closed_list
const Operatorcurrent_operator
const TimeStampedStatecurrent_predecessor
TimeStampedState current_state
int currentQueueIndex
std::vector< Heuristic * > heuristics
LogicalStateClosedList logical_state_closed_list
std::vector< OpenListInfoopen_lists
std::vector< Heuristic * > preferred_operator_heuristics
SearchStatistics search_statistics
time_t start_time

Detailed Description

Definition at line 43 of file best_first_search.h.


Member Enumeration Documentation

Enumerator:
ROUND_ROBIN 
PRIORITY_BASED 

Definition at line 91 of file best_first_search.h.


Constructor & Destructor Documentation

Definition at line 23 of file best_first_search.cpp.

Definition at line 33 of file best_first_search.cpp.


Member Function Documentation

void BestFirstSearchEngine::add_heuristic ( Heuristic heuristic,
bool  use_estimates,
bool  use_preferred_operators 
)

Definition at line 37 of file best_first_search.cpp.

Definition at line 260 of file best_first_search.cpp.

bool BestFirstSearchEngine::check_progress ( const TimeStampedState state) [private]

Definition at line 314 of file best_first_search.cpp.

void BestFirstSearchEngine::dump_everything ( ) const [private, virtual]

Dump the whole knowledge of search engine.

Implements SearchEngine.

Definition at line 104 of file best_first_search.cpp.

Definition at line 302 of file best_first_search.cpp.

Definition at line 297 of file best_first_search.cpp.

void BestFirstSearchEngine::dump_transition ( ) const [private]

Definition at line 86 of file best_first_search.cpp.

Definition at line 512 of file best_first_search.cpp.

void BestFirstSearchEngine::generate_successors ( const TimeStampedState parent_ptr) [private]

Definition at line 381 of file best_first_search.cpp.

double BestFirstSearchEngine::getG ( const TimeStampedState state_ptr,
const TimeStampedState closed_ptr,
const Operator op 
) const [private]

Compute G depending on the current g mode.

If mode is cost or weighted a parent_ptr and op have to be given.

Parameters:
[in]state_ptrthe state to compute G for
[in]closed_ptrshould be a closed node that op could be applied to, if state is not closed (i.e. a child)

Definition at line 628 of file best_first_search.cpp.

double BestFirstSearchEngine::getGc ( const TimeStampedState parent_ptr) const [private]

Definition at line 586 of file best_first_search.cpp.

double BestFirstSearchEngine::getGc ( const TimeStampedState parent_ptr,
const Operator op 
) const [private]

Definition at line 591 of file best_first_search.cpp.

double BestFirstSearchEngine::getGm ( const TimeStampedState parent_ptr) const [private]

Definition at line 601 of file best_first_search.cpp.

double BestFirstSearchEngine::getGt ( const TimeStampedState parent_ptr) const [private]

Definition at line 617 of file best_first_search.cpp.

Reimplemented from SearchEngine.

Definition at line 53 of file best_first_search.cpp.

Definition at line 244 of file best_first_search.cpp.

Definition at line 331 of file best_first_search.cpp.

Definition at line 342 of file best_first_search.cpp.

Definition at line 561 of file best_first_search.cpp.

void BestFirstSearchEngine::statistics ( time_t &  current_time) [virtual]

Definition at line 58 of file best_first_search.cpp.

Implements SearchEngine.

Definition at line 127 of file best_first_search.cpp.


Member Data Documentation

std::vector<double> BestFirstSearchEngine::best_heuristic_values [private]

Definition at line 53 of file best_first_search.h.

Definition at line 54 of file best_first_search.h.

Definition at line 105 of file best_first_search.h.

Definition at line 106 of file best_first_search.h.

Definition at line 49 of file best_first_search.h.

Definition at line 58 of file best_first_search.h.

Definition at line 57 of file best_first_search.h.

Definition at line 56 of file best_first_search.h.

Definition at line 61 of file best_first_search.h.

std::vector<Heuristic *> BestFirstSearchEngine::heuristics [private]

Definition at line 46 of file best_first_search.h.

Definition at line 51 of file best_first_search.h.

Definition at line 48 of file best_first_search.h.

Definition at line 47 of file best_first_search.h.

Definition at line 63 of file best_first_search.h.

Definition at line 60 of file best_first_search.h.


The documentation for this class was generated from the following files:


tfd_modules
Author(s): Maintained by Christian Dornhege (see AUTHORS file).
autogenerated on Mon Oct 6 2014 07:52:06