AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
cost_adapted_task.h
1
#ifndef PROBFD_TASKS_COST_ADAPTED_TASK_H
2
#define PROBFD_TASKS_COST_ADAPTED_TASK_H
3
4
#include "probfd/tasks/delegating_task.h"
// IWYU pragma: export
5
6
#include "probfd/value_type.h"
7
8
#include "downward/operator_cost.h"
9
10
#include <memory>
11
12
namespace
probfd::tasks
{
13
14
/*
15
Task transformation that changes operator costs. If the parent task assigns
16
costs 'c' to an operator, its adjusted costs, depending on the value of the
17
cost_type option, are:
18
19
NORMAL: c
20
ONE: 1
21
PLUSONE: 1, if all operators have cost 1 in the parent task, else c + 1
22
23
Regardless of the cost_type value, axioms will always keep their original
24
cost, which is 0 by default.
25
*/
26
class
CostAdaptedTask :
public
DelegatingTask {
27
const
OperatorCost cost_type_;
28
const
bool
parent_is_unit_cost_;
29
30
public
:
31
CostAdaptedTask(
32
const
std::shared_ptr<ProbabilisticTask>& parent,
33
OperatorCost cost_type);
34
35
value_t
get_operator_cost(
int
index)
const override
;
36
};
37
38
}
// namespace probfd::tasks
39
40
#endif
probfd::tasks
This namespace contains implementations of probabilistic planning tasks.
Definition
cost_adapted_task.h:12
probfd::value_t
double value_t
Typedef for the state value type.
Definition
aliases.h:7
probfd
tasks
cost_adapted_task.h
Generated on Tue Jan 7 2025 for AI 24/25 Project Software by
1.12.0