1#ifndef TASK_UTILS_SAMPLING_H
2#define TASK_UTILS_SAMPLING_H
4#include "downward/task_proxy.h"
11namespace successor_generator {
12class SuccessorGenerator;
16class RandomNumberGenerator;
19using DeadEndDetector = std::function<bool(State)>;
25class RandomWalkSampler {
26 const OperatorsProxy operators;
27 const std::unique_ptr<successor_generator::SuccessorGenerator>
29 const State initial_state;
30 const double average_operator_costs;
31 utils::RandomNumberGenerator& rng;
35 const TaskProxy& task_proxy,
36 utils::RandomNumberGenerator& rng);
52 const DeadEndDetector& is_dead_end = [](
const State&) {