AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
random_pattern.h
1
#ifndef PDBS_RANDOM_PATTERN_H
2
#define PDBS_RANDOM_PATTERN_H
3
4
#include "downward/pdbs/types.h"
5
6
#include <memory>
7
8
class
TaskProxy;
9
10
namespace
utils {
11
class
LogProxy;
12
class
RandomNumberGenerator;
13
}
// namespace utils
14
15
namespace
pdbs {
16
/*
17
This function computes a pattern for the given task. Starting with the given
18
goal variable, the algorithm executes a random walk on the causal graph. In
19
each iteration, it selects a random causal graph neighbor of the current
20
variable (given via cg_neighbors). It terminates if no neighbor fits the
21
pattern due to the size limit or if the time limit is reached.
22
*/
23
extern
Pattern generate_random_pattern(
24
int
max_pdb_size,
25
double
max_time,
26
utils::LogProxy& log,
27
const
std::shared_ptr<utils::RandomNumberGenerator>& rng,
28
const
TaskProxy& task_proxy,
29
int
goal_variable,
30
std::vector<std::vector<int>>& cg_neighbors);
31
32
}
// namespace pdbs
33
34
#endif
downward
pdbs
random_pattern.h
Generated on Tue Jan 7 2025 for AI 24/25 Project Software by
1.12.0