1#ifndef PROBFD_PDBS_CEGAR_FLAW_FINDING_STRATEGY_H
2#define PROBFD_PDBS_CEGAR_FLAW_FINDING_STRATEGY_H
4#include "probfd/pdbs/types.h"
8#include <unordered_set>
13class PreconditionsProxy;
21class ProbabilisticTaskProxy;
25class StateRankingFunction;
28namespace probfd::pdbs::cegar {
32namespace probfd::pdbs::cegar {
34class FlawFindingStrategy {
36 virtual ~FlawFindingStrategy() =
default;
41 virtual bool apply_policy(
42 const ProbabilisticTaskProxy& task_proxy,
43 const StateRankingFunction& state_ranking_function,
44 const ProjectionStateSpace& mdp,
45 const ProjectionMultiPolicy& policy,
46 std::vector<Flaw>& flaws,
47 const std::function<
bool(
const Flaw&)>& notify_flaw,
48 utils::CountdownTimer& timer) = 0;
50 virtual std::string get_name() = 0;
54 PreconditionsProxy facts,
56 std::vector<Flaw>& flaws,
57 const std::function<
bool(
const Flaw&)>& accept_flaw);
62 std::vector<Flaw>& flaws,
63 const std::function<
bool(
const Flaw&)>& accept_flaw);
Namespace dedicated to probabilistic pattern databases.
Definition gzocp_heuristic.h:16
The top-level namespace of probabilistic Fast Downward.
Definition command_line.h:8