AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
policy_flaw_finder.h
1#ifndef PROBFD_CARTESIAN_POLICY_FLAW_FINDER_H
2#define PROBFD_CARTESIAN_POLICY_FLAW_FINDER_H
3
4#include "probfd/cartesian_abstractions/flaw.h"
5#include "probfd/cartesian_abstractions/types.h"
6
7#include <memory>
8#include <optional>
9#include <vector>
10
11// Forward Declarations
12namespace utils {
13class CountdownTimer;
14class LogProxy;
15} // namespace utils
16
17namespace probfd {
18class ProbabilisticTaskProxy;
19}
20
21namespace probfd::cartesian_abstractions {
22class CartesianAbstraction;
23class CartesianHeuristic;
24} // namespace probfd::cartesian_abstractions
25
26namespace probfd::cartesian_abstractions {
27
28class PolicyFlawFinder {
29public:
30 virtual ~PolicyFlawFinder() = default;
31
32 virtual std::optional<Flaw> find_flaw(
33 const ProbabilisticTaskProxy& task_proxy,
34 const std::vector<int>& domain_sizes,
35 CartesianAbstraction& abstraction,
36 Solution& policy,
37 utils::LogProxy& log,
38 utils::CountdownTimer& timer) = 0;
39};
40
41} // namespace probfd::cartesian_abstractions
42
43#endif // PROBFD_CARTESIAN_POLICY_FLAW_FINDER_H
The top-level namespace of probabilistic Fast Downward.
Definition command_line.h:8