AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
pattern_collection_generator_multiple_random.h
1#ifndef PDBS_PATTERN_COLLECTION_GENERATOR_MULTIPLE_RANDOM_H
2#define PDBS_PATTERN_COLLECTION_GENERATOR_MULTIPLE_RANDOM_H
3
4#include "downward/pdbs/pattern_collection_generator_multiple.h"
5
6namespace pdbs {
7class PatternCollectionGeneratorMultipleRandom
8 : public PatternCollectionGeneratorMultiple {
9 const bool bidirectional;
10 std::vector<std::vector<int>> cg_neighbors;
11
12 virtual std::string id() const override;
13 virtual void initialize(const std::shared_ptr<AbstractTask>& task) override;
14 virtual PatternInformation compute_pattern(
15 int max_pdb_size,
16 double max_time,
17 const std::shared_ptr<utils::RandomNumberGenerator>& rng,
18 const std::shared_ptr<AbstractTask>& task,
19 const FactPair& goal,
20 std::unordered_set<int>&& blacklisted_variables) override;
21
22public:
23 PatternCollectionGeneratorMultipleRandom(
24 bool bidirectional,
25 int max_pdb_size,
26 int max_collection_size,
27 double pattern_generation_max_time,
28 double total_max_time,
29 double stagnation_limit,
30 double blacklist_trigger_percentage,
31 bool enable_blacklist_on_stagnation,
32 int random_seed,
33 utils::Verbosity verbosity);
34};
35} // namespace pdbs
36
37#endif