AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
probfd::heuristics::DeadEndPruningHeuristic Class Referenceabstract

#include "probfd/heuristics/dead_end_pruning.h"

Inheritance diagram for probfd::heuristics::DeadEndPruningHeuristic:
[legend]

Description

Uses a classical heuristic on the all-outcomes-determinization to prune dead-ends.

Note
If the underlying classical heuristic is safe, this heuristic is also safe.

Public Member Functions

 DeadEndPruningHeuristic (std::shared_ptr<::Evaluator > pruning_function, value_t dead_end_value)
 Construct with the given classical heuristic.
 
void print_statistics () const override
 Prints statistics, e.g. the number of queries made to the interface.
 
virtual value_t evaluate (param_type< State > state) const=0
 Evaluates the heuristic on a given state and returns the heuristic value.
 

Constructor & Destructor Documentation

◆ DeadEndPruningHeuristic()

probfd::heuristics::DeadEndPruningHeuristic::DeadEndPruningHeuristic ( std::shared_ptr<::Evaluator > pruning_function,
value_t dead_end_value )

Construct with the given classical heuristic.

Parameters
pruning_function- The classical heuristic.
dead_end_value- State estimate returned for states that are dead-ends according to the classical heuristic.

Member Function Documentation

◆ print_statistics()

void probfd::heuristics::DeadEndPruningHeuristic::print_statistics ( ) const
overridevirtual

Prints statistics, e.g. the number of queries made to the interface.

Reimplemented from probfd::Evaluator< State >.

◆ evaluate()

virtual value_t probfd::Evaluator< typename >::evaluate ( param_type< State > state) const
pure virtualinherited

Evaluates the heuristic on a given state and returns the heuristic value.

Implemented in probfd::heuristics::ConstantEvaluator< State >.