17 #include <core/darwin.h> 18 #include <core/properties.h> 19 #include <core/sim/drone.h> 21 #include <third_party/box2d/box2d.h> 29 PROPERTY(
max_move_force,
float, 5.0f,
"Maximum force used to move the drone");
33 PROPERTY(
camera_fov,
float, 60,
"Camera field of view (FOV)");
37 PROPERTY(
touch_sensor,
bool,
false,
"Use the drone's touch sensor");
40 PROPERTY(
compass,
bool,
false,
"Use the drone's compass");
44 PROPERTY(
scene_columns,
bool,
false,
"Scene includes a few fixed columns");
45 PROPERTY(
scene_debris,
bool,
false,
"Scene includes random debris");
47 PROPERTY(
test_worlds,
int, 3,
"Number of test worlds per generation");
48 PROPERTY(
max_steps,
int, 1000,
"Maximum number of steps per episode");
79 size_t inputs()
const override;
80 size_t outputs()
const override;
84 const Config& config()
const {
return config_; }
85 const sim::DroneConfig& droneConfig()
const {
return drone_config_; }
88 void validateConfiguration();
92 sim::DroneConfig drone_config_;
bool evaluatePopulation(darwin::Population *population) const override
Assigns fitness values to every genotype.
Definition: domain.cpp:58
ComplexityHint
A generic hint for the initial population & domain setup.
Definition: darwin.h:47
A population implementation encapsulates the fixed-size set of genotypes, together with the rules for...
Definition: darwin.h:161
Registry * registry()
Accessor to the Registry singleton.
Definition: darwin.h:295
Domain: Drone Follow.
Definition: domain.h:75
size_t outputs() const override
Number of outputs from a Brain.
Definition: domain.cpp:54
size_t inputs() const override
Number of inputs to a Brain.
Definition: domain.cpp:50
Definition: domain.cpp:27
bool compass
"Use the drone's compass"
Definition: domain.h:40
float max_rotate_torque
"Maximum torque used to rotate the drone"
Definition: domain.h:31
int touch_resolution
"Touch sensor resolution"
Definition: domain.h:38
Interface to the domain factory.
Definition: darwin.h:263
int camera_resolution
"Camera resolution"
Definition: domain.h:34
bool drone_lights
"Drone has navigation lights"
Definition: domain.h:28
bool accelerometer
"Use the drone's accelerometer"
Definition: domain.h:39
The foundation for data structures supporting runtime reflection.
Definition: properties.h:388
float drone_radius
"Drone size"
Definition: domain.h:27
float camera_fov
"Camera field of view (FOV)"
Definition: domain.h:33
int max_steps
"Maximum number of steps per episode"
Definition: domain.h:48
core::ImplementationsSet< DomainFactory > domains
Registered domains.
Definition: darwin.h:288
Interface to a domain implementation.
Definition: darwin.h:229
bool touch_sensor
"Use the drone's touch sensor"
Definition: domain.h:37
float max_move_force
"Maximum force used to move the drone"
Definition: domain.h:29
bool camera_depth
"Use camera depth channel"
Definition: domain.h:35
float target_distance
"The ideal following distance"
Definition: domain.h:42
Drone Follow domain configuration.
Definition: domain.h:26
float max_lateral_force
"Maximum lateral force"
Definition: domain.h:30
bool scene_columns
"Scene includes a few fixed columns"
Definition: domain.h:44
bool scene_debris
"Scene includes random debris"
Definition: domain.h:45
int test_worlds
"Number of test worlds per generation"
Definition: domain.h:47