Changeset 1236
- Timestamp:
- 05/07/23 02:39:05 (20 months ago)
- Location:
- cpp/frams/genetics
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
cpp/frams/genetics/f1/f1_conv.cpp
r1130 r1236 138 138 case 0: return; 139 139 case ',': case ')': setPartMapping(branching_part, g); return; 140 case 'R': k.x += 0.7853; setPartMapping(part1, g); break; 141 case 'r': k.x -= 0.7853; 140 case 'R': k.x += 0.7853; setPartMapping(part1, g); break; // 45 degrees = pi/4 like in f4 141 case 'r': k.x -= 0.7853; setPartMapping(part1, g); break; 142 142 case '[': //neuron 143 143 // setdebug(g-(char*)geny,DEBUGNEURO | !l_neu); -
cpp/frams/genetics/f4/f4_conv.cpp
r1231 r1236 5 5 // Copyright (C) 1999,2000 Adam Rotaru-Varga (adam_rotaru@yahoo.com), GNU LGPL 6 6 // Copyright (C) since 2001 Maciej Komosinski 7 // 2018, Grzegorz Latosinski, added support for new API for neuron types and their properties7 // 2018, Grzegorz Latosinski, added development checkpoints and support for new API for neuron types 8 8 9 9 #include "f4_conv.h" -
cpp/frams/genetics/f4/f4_conv.h
r779 r1236 5 5 // Copyright (C) 1999,2000 Adam Rotaru-Varga (adam_rotaru@yahoo.com), GNU LGPL 6 6 // Copyright (C) since 2001 Maciej Komosinski 7 // 2018, Grzegorz Latosinski, added support for new API for neuron types and their properties7 // 2018, Grzegorz Latosinski, added support for new API for neuron types and development checkpoints 8 8 9 9 #ifndef _F4_CONV_H_ -
cpp/frams/genetics/f4/f4_oper.cpp
r1234 r1236 5 5 // Copyright (C) 1999,2000 Adam Rotaru-Varga (adam_rotaru@yahoo.com), GNU LGPL 6 6 // Copyright (C) since 2001 Maciej Komosinski 7 // 2018, Grzegorz Latosinski, added support for new API for neuron types and their properties7 // 2018, Grzegorz Latosinski, added development checkpoints and support for new API for neuron types 8 8 9 9 … … 18 18 // TODO add support for properties of (any class of) neurons - not just sigmoid/force/intertia (':' syntax) for N 19 19 // TODO add mapping genotype character ranges for neural [connections] 20 // TODO change the default branching plane (to match f1) so they do not grow perfectly vertical (cheating vertpos) so easily? (so they require Rr or other modifiers) 20 // TODO change the default branching plane (to match f1) so they do not grow perfectly vertical (cheating vertpos) so easily? (so they require Rr or other modifiers) - verify if and how f4 is different from f1 21 21 // TODO for some genotypes, #defining/undefining F4_SIMPLIFY_MODIFIERS produces significantly different phenotypes (e.g. length of some Joint changes from 1.25 to 1.499, coordinates of Parts change, friction of some part changes from 1.28 to 0.32). Comparing f4_Node trees, the simplification works as intended, there are no huge changes apart from removing contradicting modifiers like 'R' and 'r' or 'L' and 'l', and dispersing the modifiers (changed order). There is no reason for such a significant influence of this. A hypothesis is that something may be wrong with calculating the influence of individual modifiers, e.g. some strong nonlinearity is introduced where it should not be, or some compensation between modifiers that should not influence each other (like L and R), or some modifier f4_Nodes are skipped/ignored when applying? Investigate. Example genotype: /*4*/,i<qlM,C<X>N:*#1>>,r<MRF<Xcm>N:Gpart>#5#1#2MLL#1>#1>>>>#5ML#2L#1>>>Lf,r<#1>rM<CqmLlCfqiFLqXFfl><F,<<XI>iN:|[-1:4.346]><XF><<XrRQ>N:G#3>>QiXFMR>fXM#2MfcR>R#3>>X 22 22
Note: See TracChangeset
for help on using the changeset viewer.