source: cpp/gdk/f0def.xml @ 5

Last change on this file since 5 was 5, checked in by sz, 15 years ago

added the GDK (Genotype Development Kit)

File size: 10.7 KB
Line 
1<!DOCTYPE F0CLASSES>
2<F0CLASSES>
3
4 <CLASS ID="p" NAME="Part">
5  <GROUP NAME="Geometry" />
6  <GROUP NAME="Other properties" />
7  <GROUP NAME="Visual" />
8  <PROP ID="x" NAME="position.x" GROUP="0" FLAGS="1024" TYPE="f" />
9  <PROP ID="y" NAME="position.y" GROUP="0" FLAGS="1024" TYPE="f" />
10  <PROP ID="z" NAME="position.z" GROUP="0" FLAGS="1024" TYPE="f" />
11  <PROP ID="m" XTRA="1" NAME="mass" GROUP="1" FLAGS="0" TYPE="f" MIN="0.1" MAX="999.0" DEF="1.0" />
12  <PROP ID="s" NAME="size" GROUP="1" FLAGS="0" TYPE="f" MIN="0.1" MAX="10.0" DEF="1.0" />
13  <PROP ID="dn" XTRA="1" NAME="density" GROUP="1" FLAGS="0" TYPE="f" MIN="0.2" MAX="5.0" DEF="1.0" />
14  <PROP ID="fr" XTRA="1" NAME="friction" GROUP="1" FLAGS="0" TYPE="f" MIN="0.0" MAX="4.0" DEF="0.4" />
15  <PROP ID="ing" XTRA="1" NAME="ingestion" GROUP="1" FLAGS="0" TYPE="f" MIN="0.0" MAX="1.0" DEF="0.25" />
16  <PROP ID="as" XTRA="1" NAME="assimilation" GROUP="1" FLAGS="0" TYPE="f" MIN="0.0" MAX="1.0" DEF="0.25" />
17  <PROP ID="rx" NAME="rot.x" GROUP="0" FLAGS="0" TYPE="f" />
18  <PROP ID="ry" NAME="rot.y" GROUP="0" FLAGS="1024" TYPE="f" />
19  <PROP ID="rz" NAME="rot.z" GROUP="0" FLAGS="1024" TYPE="f" />
20  <PROP ID="i" NAME="info" GROUP="1" FLAGS="0" TYPE="s" />
21  <PROP ID="Vstyle" NAME="vis_style" GROUP="2" FLAGS="0" TYPE="s" MIN="0" MAX="-1" DEF="part" />
22 </CLASS>
23
24 <CLASS ID="j" NAME="Joint">
25  <GROUP NAME="Connections" />
26  <GROUP NAME="Geometry" />
27  <GROUP NAME="Other properties" />
28  <GROUP NAME="Visual" />
29  <PROP ID="p1" NAME="part1 ref#" GROUP="0" FLAGS="1024" TYPE="d" MIN="-1" MAX="999999" DEF="-1" />
30  <PROP ID="p2" NAME="part2 ref#" GROUP="0" FLAGS="1024" TYPE="d" MIN="-1" MAX="999999" DEF="-1" />
31  <PROP ID="rx" NAME="rotation.x" GROUP="1" FLAGS="0" TYPE="f" />
32  <PROP ID="ry" NAME="rotation.y" GROUP="1" FLAGS="1024" TYPE="f" />
33  <PROP ID="rz" NAME="rotation.z" GROUP="1" FLAGS="1024" TYPE="f" />
34  <PROP ID="dx" NAME="delta.x" GROUP="1" FLAGS="0" TYPE="f" MIN="-2" MAX="2" DEF="0" />
35  <PROP ID="dy" NAME="delta.y" GROUP="1" FLAGS="1024" TYPE="f" MIN="-2" MAX="2" DEF="0" />
36  <PROP ID="dz" NAME="delta.z" GROUP="1" FLAGS="1024" TYPE="f" MIN="-2" MAX="2" DEF="0" />
37  <PROP ID="stif" XTRA="1" NAME="stiffness" GROUP="2" FLAGS="0" TYPE="f" MIN="0.0" MAX="1.0" DEF="1.0" />
38  <PROP ID="rotstif" XTRA="1" NAME="rotation stiffness" GROUP="2" FLAGS="0" TYPE="f" MIN="0.0" MAX="1.0" DEF="1.0" />
39  <PROP ID="stam" NAME="stamina" GROUP="2" FLAGS="0" TYPE="f" MIN="0.0" MAX="1.0" DEF="0.25" />
40  <PROP ID="i" NAME="info" GROUP="2" FLAGS="0" TYPE="s" />
41  <PROP ID="Vstyle" NAME="vis_style" GROUP="3" FLAGS="0" TYPE="s" MIN="0" MAX="-1" DEF="joint" />
42 </CLASS>
43
44
45
46 <CLASS ID="n" NAME="Neuro">
47  <GROUP NAME="Connections" />
48  <GROUP NAME="Other" />
49  <GROUP NAME="Visual" />
50  <PROP ID="p" NAME="part ref#" GROUP="0" FLAGS="0" TYPE="d" MIN="-1" MAX="999999" DEF="-1" />
51  <PROP ID="j" NAME="joint ref#" GROUP="0" FLAGS="0" TYPE="d" MIN="-1" MAX="999999" DEF="-1" />
52  <PROP ID="d" NAME="item details" GROUP="1" FLAGS="0" TYPE="s" />
53  <PROP ID="i" NAME="info" GROUP="1" FLAGS="0" TYPE="s" />
54  <PROP ID="Vstyle" NAME="vis_style" GROUP="2" FLAGS="0" TYPE="s" MIN="0" MAX="-1" DEF="neuro" />
55  <PROP ID="getInputCount" NAME="input count" GROUP="0" FLAGS="1+2" TYPE="d" />
56  <PROP ID="getInputNeuroDef" NAME="get input neuron" GROUP="0" FLAGS="1+2" TYPE="p oNeuroDef(d)" />
57  <PROP ID="getInputNeuroIndex" NAME="get input neuron index" GROUP="0" FLAGS="1+2" TYPE="p d(d)" />
58  <PROP ID="getInputWeight" NAME="get input weight" GROUP="0" FLAGS="1+2" TYPE="p f(d)" />
59 </CLASS>
60
61 <CLASS ID="c" NAME="NeuroConn">
62  <GROUP NAME="Connection" />
63  <GROUP NAME="Other" />
64  <PROP ID="n1" NAME="this neuro ref#" GROUP="0" FLAGS="1024" TYPE="d" MIN="-1" MAX="999999" DEF="-1" />
65  <PROP ID="n2" NAME="connected neuro ref#" GROUP="0" FLAGS="1024" TYPE="d" MIN="-1" MAX="999999" DEF="-1" />
66  <PROP ID="w" NAME="weight" GROUP="0" FLAGS="1024" TYPE="f" MIN="-999999" MAX="999999" DEF="1.0" />
67  <PROP ID="i" NAME="info" GROUP="1" FLAGS="0" TYPE="s" />
68 </CLASS>
69
70 <NEUROCLASS ID="N" NAME="Neuron" DESCRIPTION="Standard neuron" INPUTS="-1" OUTPUT="1" LOCATION="0"  VISUALHINTS="2"  >
71
72  <NEUROPROP ID="in" NAME="Inertia" TYPE="f" MIN="0.0" MAX="1.0" DEF="0.8" />
73  <NEUROPROP ID="fo" NAME="Force" TYPE="f" MIN="0.0" MAX="999.0" DEF="0.04" />
74  <NEUROPROP ID="si" NAME="Sigmoid" TYPE="f" MIN="-99999.0" MAX="99999.0" DEF="2.0" />
75  <NEUROPROP ID="s" NAME="State" TYPE="f" MIN="-1.0" MAX="1.0" DEF="0.0" />
76 </NEUROCLASS>
77
78 <NEUROCLASS ID="Nu" NAME="Unipolar neuron [EXPERIMENTAL!]" DESCRIPTION="Works like standard neuron (N) but the output value is scaled to 0...+1 instead of -1...+1.\nHaving 0 as one of the saturation states should help in \"gate circuits\", where input signal is passed through or blocked depending on the other singal." INPUTS="-1" OUTPUT="1" LOCATION="0"  >
79  <NEUROPROP ID="in" NAME="Inertia" TYPE="f" MIN="0.0" MAX="1.0" DEF="0.8" />
80  <NEUROPROP ID="fo" NAME="Force" TYPE="f" MIN="0.0" MAX="999.0" DEF="0.04" />
81  <NEUROPROP ID="si" NAME="Sigmoid" TYPE="f" MIN="-99999.0" MAX="99999.0" DEF="2.0" />
82  <NEUROPROP ID="s" NAME="State" TYPE="f" MIN="-1.0" MAX="1.0" DEF="0.0" />
83 </NEUROCLASS>
84
85 <NEUROCLASS ID="G" NAME="Gyroscope" DESCRIPTION="Equilibrium sensor.\n0=the stick is horizontal\n+1/-1=the stick is vertical" INPUTS="0" OUTPUT="1" LOCATION="2"  VISUALHINTS="32"  SYMBOL="8,7,100,50,90,50,90,40,70,40,80,50,70,60,90,60,90,50,12,43,24,48,24,48,19,38,19,38,24,43,24,43,54,48,54,48,64,43,69,38,64,38,54,43,54,5,63,69,58,74,48,79,38,79,28,74,23,69,1,43,79,43,74,1,23,69,26,66,1,63,69,60,66,1,55,76,53,73,1,31,75,33,72"  >
86
87
88 </NEUROCLASS>
89
90 <NEUROCLASS ID="T" NAME="Touch" DESCRIPTION="Touch sensor.\n-1=no contact\n0=just touching\n>0=pressing, value depends on the force applied" INPUTS="0" OUTPUT="1" LOCATION="1"  VISUALHINTS="32"  SYMBOL="2,7,100,50,90,50,90,40,70,40,80,50,70,60,90,60,90,50,11,75,50,65,50,60,55,55,45,50,55,45,45,40,50,35,50,30,45,25,50,30,55,35,50"  >
91
92
93 </NEUROCLASS>
94
95 <NEUROCLASS ID="S" NAME="Smell" DESCRIPTION="Smell sensor. Aggregated \"smell of energy\" experienced from all energy objects (creatures and food pieces).\nClose objects have bigger influence than the distant ones: for each energy source, its partial feeling is proportional to its energy/(distance^2)" INPUTS="0" OUTPUT="1" LOCATION="1"  VISUALHINTS="32"  SYMBOL="5,7,100,50,90,50,90,40,70,40,80,50,70,60,90,60,90,50,3,10,40,15,45,15,55,10,60,5,20,30,25,35,30,45,30,55,25,65,20,70,4,15,35,20,40,22,50,20,60,15,65,5,75,50,50,50,45,45,40,50,45,55,50,50"  >
96
97
98 </NEUROCLASS>
99
100 <NEUROCLASS ID="*" NAME="Constant" DESCRIPTION="Constant value" INPUTS="0" OUTPUT="1" LOCATION="0"  VISUALHINTS="1"  SYMBOL="3,6,100,50,90,50,90,40,70,40,70,60,90,60,90,50,1,85,50,75,50,1,80,45,80,55"  >
101
102
103 </NEUROCLASS>
104
105 <NEUROCLASS ID="|" NAME="Bend muscle" DESCRIPTION="" INPUTS="1" OUTPUT="0" LOCATION="2"  VISUALHINTS="86"  SYMBOL="6,5,25,40,35,40,45,50,35,60,25,60,25,40,4,65,85,65,50,75,50,75,85,65,85,3,65,56,49,29,57,24,72,50,4,68,53,70,53,70,55,68,55,68,53,5,50,21,60,15,70,14,79,15,87,20,81,10,1,86,20,77,21"  >
106
107
108  <NEUROPROP ID="p" NAME="power" TYPE="f" MIN="0.01" MAX="1.0" DEF="0.25" />
109  <NEUROPROP ID="r" NAME="bending range" TYPE="f" MIN="0.0" MAX="1.0" DEF="1.0" />
110 </NEUROCLASS>
111
112 <NEUROCLASS ID="@" NAME="Rotation muscle" DESCRIPTION="" INPUTS="1" OUTPUT="0" LOCATION="2"  VISUALHINTS="150"  SYMBOL="5,5,25,40,35,40,45,50,35,60,25,60,25,40,4,65,85,65,50,75,50,75,85,65,85,1,69,10,77,17,10,59,15,57,17,57,22,60,26,69,27,78,26,82,21,82,16,79,12,69,10,80,6,3,65,50,65,20,75,20,75,50"  >
113
114
115  <NEUROPROP ID="p" NAME="power" TYPE="f" MIN="0.01" MAX="1.0" DEF="1.0" />
116 </NEUROCLASS>
117
118 <NEUROCLASS ID="D" NAME="Differentiate" DESCRIPTION="Calculate the difference between the current and previous input value. Multiple inputs are aggregated with respect to their weights" INPUTS="-1" OUTPUT="1" LOCATION="0"  >
119 </NEUROCLASS>
120
121 <NEUROCLASS ID="Fuzzy" NAME="Fuzzy system [EXPERIMENTAL!]" DESCRIPTION="Refer to publications to learn about this neuron" INPUTS="-1" OUTPUT="1" LOCATION="0"  SYMBOL="5,2,30,65,37,37,44,65,3,37,65,44,37,51,37,58,65,2,51,65,58,37,65,65,6,100,50,70,50,70,25,25,10,25,90,70,75,70,50,1,70,65,25,65"  >
122
123  <NEUROPROP ID="ns" NAME="number of fuzzy sets" TYPE="d" MIN="1" MAX="" DEF="" />
124  <NEUROPROP ID="nr" NAME="number of rules" TYPE="d" MIN="1" MAX="" DEF="" />
125  <NEUROPROP ID="fs" NAME="fuzzy sets" TYPE="s" MIN="0" MAX="-1" DEF="0" />
126  <NEUROPROP ID="fr" NAME="fuzzy rules" TYPE="s" MIN="0" MAX="-1" DEF="0" />
127 </NEUROCLASS>
128
129 <NEUROCLASS ID="Sti" NAME="Sticky [EXPERIMENTAL!]" DESCRIPTION="" INPUTS="1" OUTPUT="0" LOCATION="1"  VISUALHINTS="32"  >
130
131 </NEUROCLASS>
132
133 <NEUROCLASS ID="LMu" NAME="Linear muscle [EXPERIMENTAL!]" DESCRIPTION="" INPUTS="1" OUTPUT="0" LOCATION="2"  VISUALHINTS="16"  >
134
135  <NEUROPROP ID="p" NAME="power" TYPE="f" MIN="0.01" MAX="1.0" DEF="1.0" />
136 </NEUROCLASS>
137
138 <NEUROCLASS ID="Water" NAME="Water detector" DESCRIPTION="Output signal:\n0=on or above water surface\n1=under water (deeper than 1)\n0..1=in the transient area just below water surface" INPUTS="0" OUTPUT="1" LOCATION="1"  VISUALHINTS="32"  >
139
140 </NEUROCLASS>
141
142 <NEUROCLASS ID="Energy" NAME="Energy level" DESCRIPTION="The current energy level divided by the initial energy level.\nUsually falls from initial 1.0 down to 0.0 and then the creature dies. It can rise above 1.0 if enough food is ingested" INPUTS="0" OUTPUT="1" LOCATION="0"  VISUALHINTS="32"  >
143
144 </NEUROCLASS>
145
146 <NEUROCLASS ID="Ch" NAME="Channelize" DESCRIPTION="Combines all input signals into a single multichannel output; Note: ChSel and ChMux are the only neurons which support multiple channels. Other neurons discard everything except the first channel." INPUTS="-1" OUTPUT="1" LOCATION="0"  >
147 </NEUROCLASS>
148
149 <NEUROCLASS ID="ChMux" NAME="Channel multiplexer" DESCRIPTION="Outputs the selected channel from the second (multichannel) input. The first input is used as the selector value (-1=select first channel, .., 1=last channel)" INPUTS="2" OUTPUT="1" LOCATION="0"  >
150 </NEUROCLASS>
151
152 <NEUROCLASS ID="ChSel" NAME="Channel selector" DESCRIPTION="Outputs a single channel (selected by the \"ch\" parameter) from multichannel input" INPUTS="1" OUTPUT="1" LOCATION="0"  >
153  <NEUROPROP ID="ch" NAME="channel" TYPE="d" MIN="" MAX="" DEF="" />
154 </NEUROCLASS>
155
156 <NEUROCLASS ID="Rnd" NAME="Random noise" DESCRIPTION="Generates random noise (subsequent random values in the range of -1..+1)" INPUTS="0" OUTPUT="1" LOCATION="0"  >
157 </NEUROCLASS>
158
159 <NEUROCLASS ID="Sin" NAME="Sinus generator" DESCRIPTION="Output frequency = f0+input" INPUTS="1" OUTPUT="1" LOCATION="0"  SYMBOL="3,12,75,50,71,37,62,28,50,25,37,28,28,37,25,50,28,62,37,71,50,75,62,71,71,62,75,50,1,75,50,100,50,5,35,50,40,35,45,35,55,65,60,65,65,50"  >
160
161  <NEUROPROP ID="f0" NAME="base frequency" TYPE="f" MIN="-1.0" MAX="1.0" DEF="0.06283185307" />
162  <NEUROPROP ID="t" NAME="time" TYPE="f" MIN="0" MAX="6.283185307" DEF="0" />
163 </NEUROCLASS>
164
165</F0CLASSES>
Note: See TracBrowser for help on using the repository browser.