好吧,所以我有一个分配代码(使用Java,但我不认为这很重要)的模拟/继承模型在生物学意义上,而不是面向对象,即你知道,父亲棕色的眼睛/头发,母亲黑色的眼睛/头发等东西。
我面临两个困难,首先我该如何开始?我从来没有编过模拟程序,对它一无所知。我认为,既然我使用Java,我不妨使用applet,而不是离线模拟,但无论如何,是否有某种教程或指南,或任何地方的解释如何编写简单的图形模拟?
其次,是否存在生物遗传的模拟(有或没有源代码)?它会给我一个想法,我到底应该做什么,如果源代码是可用的,它可能是非常有用的。
不足Q-1你是如何编写图形模拟程序的?
和
Q-2网络上是否存在生物遗传模拟?
这是我对如何解决你的问题的猜测。
列出代表当前一代所有可能的生物的生物列表。
每个生物都有自己的基因组成。你不需要向后参考亲本生物(你不关心前代)。
然后当用户选择他们所选择的一对时,清除列表并生成包含这两个生物体的新列表,每个可能的基因组合。
然后在屏幕上绘制列表,并允许用户再选择两个。
编辑
另外,这里有一个关于如何生成任意大小的配子的随机想法。二进制数在0和1之间慢慢循环。所以,如果你从0到7,你会经历000到111的所有组合。因此,您可以将0视为左等位基因,1视为右等位基因(例如,数字5,表示101,表示基因型为aAbBcC的AbC配子)。因此,当您从0到2^(numOfAlleles-1)(包括)时,您可以生成所有可能的等位基因组合。这将需要位移位来检测设置了哪些位。
剩下的就是一个小方格