Я использую ECJ с Java. У меня есть группа людей, которые все хотят иметь один и тот же мозг.Вместо того, чтобы отправлять цифры, передавая код человеку в генетическое программирование? ECJ
В принципе, я бы хотел развить мозги с помощью GP. Мне нужны такие вещи, как «if-on-enemy-territory
» и «if-sense-target
» для утверждений «go-home
» или «move-randomly
» или «shoot
» для терминалов.
Однако эти утверждения должны быть полными исполняемыми Java-кодами. Как я могу это сделать с ECJ?
НАПРИМЕР:
Я хочу, чтобы терминал под названием "moveRandom
". Если бы я закодировать это в моем классе солдата, он будет выглядеть так:
private void moveRandomly(SoldierWorld world)
{
//..snip.
int newX = (int)(this.getLocation().x + speed * Math.cos(this.getDirection() * Math.PI/180.0));
int newY = (int)(this.getLocation().y - speed * Math.sin(this.getDirection() * Math.PI/180.0));
Point newPoint = new Point(newX, newY);
this.setLocation(newPoint);
}
Теперь, как я могу сделать вывод, который будет выполнять этот код?