Repository navigation
Expand file tree
/
Copy pathNOTES
More file actions
48 lines (42 loc) · 1.64 KB
/
Copy pathNOTES
File metadata and controls
48 lines (42 loc) · 1.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
-=-= Next Steps =-=-
Use new Signals and Actions system to hook into bodies and specify run behavior
Set up timing to use Emscripten run instead of animation.
Set up proper body info types (BRAINS: Just color, CPUs, Markov Brains, etc.)
Build a simple organism (initially non-evolving) to control bodies
Hook virtual hardware into organisms
Hook phenotypes into organisms
Hook proper config into system
Set up "optional" plug-in-like module.
- Each module should include:
* a code-header with new code
* a config-header with setting macros
* a run-time config file
- Each header should have a Setup() method that takes in the current world and hooks in
relevant functions. This should only be called if the associated run-time config is included.
-=-= Configuration Notes =-=-
Already could add:
- Mutation rate
- Pressure for popping
- Pressure for slowing repro (and by how much?)
- World size / org size
Type of population
- Continuous (default)
- grid-based (square & hex)
- well mixed
- deme variations of above.
Type of organisms:
- Just color
- Virtual CPU
- Markov brains
- (neural net? CPPN grown?)
- (more traditional GP?)
-=-= Efficiency notes =-=-
* Need to profile whole thing!
* Try images instead of circles in viewer to see if it's faster.
* Pause animation if nothing is happening in physics?
Find some other speedup mechanism to not process physics? For example:
don't compare from orgs that haven't moved, just place them first.
don't move circles if under a certain threshold (0.5?)
* Print frame rate on the screen so slowdowns can be more easily quantified.
-=-= For CSE 450 =-=-
* Bodies should be able to fire missiles