EvoRobSim
From Robin
(Difference between revisions)
(→How to implement an evolutionary control/harness/run) |
(→How to start an evolutionary run) |
||
Line 1: | Line 1: | ||
== Evolutionary run == | == Evolutionary run == | ||
=== How to start an evolutionary run === | === How to start an evolutionary run === | ||
+ | ==== In debug mode ==== | ||
* set vc_solution as startup project | * set vc_solution as startup project | ||
- | * command arguments: hox-evolution | + | * command arguments: hox-evolution debug (or yourname-evolution) |
* working dir: ../.. | * working dir: ../.. | ||
* copy data/ into Debug/ | * copy data/ into Debug/ | ||
+ | |||
+ | ==== In experiment mode ==== | ||
+ | * ... | ||
* make file seeds.txt and fill with random numbers from random.org, format one column | * make file seeds.txt and fill with random numbers from random.org, format one column | ||
- | ==== | + | ==== Using a network of computers ==== |
- | + | * ... | |
- | + | ||
- | + | ||
== How to implement your own evolutionary setup and robot == | == How to implement your own evolutionary setup and robot == |
Revision as of 15:10, 14 November 2013
Contents |
Evolutionary run
How to start an evolutionary run
In debug mode
- set vc_solution as startup project
- command arguments: hox-evolution debug (or yourname-evolution)
- working dir: ../..
- copy data/ into Debug/
In experiment mode
- ...
- make file seeds.txt and fill with random numbers from random.org, format one column
Using a network of computers
- ...
How to implement your own evolutionary setup and robot
How to implement an evolutionary control/harness/run
Customize means to make your own subclass which contains your specific functionality
- Make a custom EvolutionManager with evolutionary setup (the run() method can load a config file which specifies the objectives)
- Possibly make your own evaluation critera by customizing SimEvaluator
- Customize EvorobScenario for setting up the simulation environment, like obstacles etc.
How to define your own simulated robot
- Make a custom Blueprint which is a simulator/hardware-independent description of the robot
- Implement a MyBlueprint::generateMachine method which generates a custom Machine (a simulator description of the robot)
- File structure:
- my_blueprint.h - contains the MyBlueprint class description
- my_blueprint.cpp - contains the general implementation of MyBlueprint including serialization
- my_machine.cpp - contains the simulator-specific implementation of MyBlueprint, MyBlueprint::generateMachine - for the sim_worker / sim_worker_display / bbp_viewer projects
- my_nomachine.cpp - contains a dummy implementation of MyBlueprint::generateMachine - for the vc_solution project
- Make a custom RobotGenes which contains a description of the genes and how to mutate them
remaining topics
- hvordan lese tilbake resultatet i viewer
- overføre resultat til virkelig robot
- mulig å ha ett frittstående / fryst eksempel som kjører evolusjon (og hvordan kjør) og gjør det mulig å overføre?
- stats for evolusjonsruns