davidrmiller / biosim4

Biological evolution simulator

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Gene Coding

SezMe opened this issue · comments

commented

I'm curious about how you allocate the bits in a gene. The first bit is the source type and the next 7 bits are the source ID, right? But if you know the source ID you automatically know its type. Same for the sink.

Please say a bit (ha-ha; sometimes I slay me) about this gene design. Is it to add some "robustness"? Maybe it arose out of a software consideration? Reduce execution time?

Thanks in advance.

Hi @SezMe , That's a valid question. We could have used a single ID number to select a source neuron and another ID number to select the sink. But without extra logic, most connections would go directly from sensor to action neurons because they outnumber the internal neurons.

The internal neurons help generate rich and complex behaviors. We want to give them a fair chance to participate in connections. The one-bit flags serve as a simple and scalable method of selecting equally between sensor and internal neurons for the source and between the internal and action neurons for the sink.