AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
trivial_finder.h
1#ifndef PROBFD_PDBS_TRIVIAL_FINDER_H
2#define PROBFD_PDBS_TRIVIAL_FINDER_H
3
4#include "probfd/pdbs/subcollection_finder.h"
5
6#include <memory>
7#include <vector>
8
9namespace probfd::pdbs {
10
11class TrivialFinder : public SubCollectionFinder {
12public:
13 std::shared_ptr<std::vector<PatternSubCollection>>
14 compute_subcollections(const PatternCollection&) override;
15
16 std::vector<PatternSubCollection> compute_subcollections_with_pattern(
17 const PatternCollection& patterns,
18 const std::vector<PatternSubCollection>& known_pattern_cliques,
19 const Pattern& new_pattern) override;
20
21 [[nodiscard]]
22 value_t evaluate_subcollection(
23 const std::vector<value_t>& pdb_estimates,
24 const std::vector<int>& subcollection) const override;
25
26 [[nodiscard]]
27 value_t combine(value_t left, value_t right) const override;
28};
29
30} // namespace probfd::pdbs
31
32#endif // PROBFD_PDBS_TRIVIAL_FINDER_H
Namespace dedicated to probabilistic pattern databases.
Definition gzocp_heuristic.h:16
double value_t
Typedef for the state value type.
Definition aliases.h:7