Я пытаюсь построить простую эволюционную симуляцию агентов, контролируемых нейронной сетью. В текущей версии у каждого агента есть нервная сеть с прямой связью с одним скрытым слоем. Окружающая среда содержит фиксированное количество продуктов, представленных в виде красной точки. Когда агент движется, он теряет энергию, и, когда он находится рядом с пищей, он получает энергию. Агент с энергией 0 энергии. входом нейронной сети является текущий угол агента и вектор к ближайшему пищевому продукту. Каждый временной шаг, угол перемещения каждого агента изменяется на выходе его нейронной сети. Цель, конечно, состоит в том, чтобы увидеть, как поведение пищи начинает развиваться через некоторое время. Однако ничего не происходит.Искусственная жизнь с нейронными сетями
Я не знаю, является ли проблема структурой нейронной сети (слишком простой?) Или механизм воспроизведения: чтобы предотвратить демографический взрыв, начальная популяция составляет около 20 агентов, а по мере приближения населения к 50, вероятность воспроизведения приближается к нулю. Когда происходит размножение, родитель выбирается путем перебора списка агентов от начала до конца и проверки для каждого агента, имеет ли случайное число от 0 до 1 меньше, чем отношение между энергией этого агента и суммой энергия всех агентов. Если это так, поиск завершен, и этот агент становится родителем, поскольку мы добавляем в среду копию этого агента с некоторой вероятностью мутаций в одном или нескольких весах в своей нейронной сети.
Заранее благодарен!
Что именно вы подразумеваете под «ничего не происходит»? – timday
Агенты перемещаются случайным образом, меняют направление время от времени, но не ищут пищу. – user1767774
BTW, если вы еще не встретили его и нуждаетесь в некотором вдохновении для такого проекта, прочитайте: http://ttapress.com/553/crystal-nights-by-greg-egan/ – timday