Я создаю симулятор организма для Android, поэтому я думаю, что в идеале алгоритм должен быть на Java.Я понимаю, что на youtube есть целый курс по машинному обучению в Стэнфорде, но у меня просто нет времени, чтобы разобраться в этом, и я думаю, что для моих целей решение может быть очень простым.
С организмом в первую очередь будет взаимодействовать сенсорный экран, или даже если он взаимодействует через микрофон или акселерометр, входные данные в алгоритме будут в основном равны координатным позициям для разных конечностей.Я думаю, что будет нелегко иметь механизм «нагоняй» или «вознаграждение» за случайное поведение, поэтому я бы хотел этого избежать.Поэтому целью было бы отслеживание общих направлений или схем в движениях и возможность повторять их, когда они имеют достаточно высокую частоту.
Если честно, я не совсем уверен, насколько сложно это сделать, но я хотел бы услышать любые отзывы, чтобы узнать, сколько еще мне нужно исследовать, прежде чем я смогу это реализовать.
РЕДАКТИРОВАТЬ: Это генетический алгоритм?Проблема в том, что я понятия не имею, как измерить успешную или неуспешную эволюцию.
РЕДАКТИРОВАТЬ 2: Хорошо, я постараюсь добавить как можно больше деталей.В данный момент приложение все еще находится в стадии разработки, но я просто хотел знать, насколько сложным будет его алгоритм.Так что я строю это в Processing, которая на самом деле просто Java.Организм будет состоять из конечностей, которые имеют фиксированное расстояние между ними, но могут перемещаться независимо от центральной части.Конечности свободно передвигаются и периодически находят случайные точки для облегчения.У организма будет центральный придаток, который также имеет координаты x и y, и каждая из внешних конечностей будет двигаться относительно этого.Пользователь может взаимодействовать с организмом, вручную перемещая придатки или центральную часть с помощью перетаскивания на сенсорном экране.Когда с организмом взаимодействуют, именно здесь будет использоваться алгоритм, потому что нет смысла учиться только на случайных числах.Таким образом, я предполагаю, что алгоритм будет принимать во внимание координаты x и y центральной части, и каждый придаток будет иметь свою собственную версию алгоритма, который учится независимо от других.Например, если пользователь постоянно перетаскивает организм к правой стороне сенсорного экрана, он может быть более привлекательным для этого места, когда с ним не взаимодействуют.Я надеюсь, что это немного проясняет.