Подтвердить что ты не робот

Классный проект для использования генетического алгоритма?

Я ищу практическое приложение для использования генетического алгоритма. Некоторые вещи, о которых подумали:

  • Оптимизация интерфейса сайта
  • Оптимизация автомобиля с помощью симулятора физики
  • Генетическое программирование
  • Автоматическое создание тестового сценария

Но никто не выскочил на меня. Итак, если бы у вас было свободное время (несколько месяцев), чтобы потратить на проект генетических алгоритмов, что бы вы решили заняться?

4b9b3361

Ответ 1

Одна тема с множеством возможностей - использовать эволюционные алгоритмы для разработки стратегий игры. Люди использовали эволюцию, чтобы создавать стратегии для покера, шашек/черновиков, Go и многих других игр. J-GAP люди использовали генетическое программирование для развития ботов для Robocode.

Недавно я опубликовал вступительную статью об эволюционных вычислениях. Он включает в себя детали некоторых вещей, для которых были использованы эволюционные алгоритмы. Адам Марчик также написал отличную статью с большим количеством примеров. Генетический блог аргонавта содержит десятки ссылок на интересные эволюционные проекты.

Менее распространенным типом эволюционного алгоритма является система классификатора обучения. Это развивает набор правил для классификации входных данных. Он может применяться к тем же самым проблемам, к которым используются нейронные сети. Было бы интересно разработать LCS для конкретной проблемы, например, попытаться предсказать результаты спорта на основе формы.

Ответ 3

Вам может быть интересно что-то вроде Roger Alsing Mona Lisa

Ответ 4

Я прочитал о чем-то подобном предлагаемому в вопросе автоматизации производства тестовых случаев. На самом деле все было совершенно наоборот. Вы указываете тестовые примеры, а не позволяете алгоритму (генетическому программированию) создавать код, который пройдет. Таким образом вы предоставляете спецификации, и вы разводите свою программу. Если вы Google немного для этого, вы можете найти некоторые исследования по этому вопросу.
Я считаю, что это очень интригующая идея. Конечно, теперь никто не будет создавать такие приложения, как это, но это отличная область исследований.

Ответ 5

Возможно, найти путешествие для продавцов. Недавно я попытался найти пешеходную экскурсию около 66 мест в Париже, и я нашел кодирование всех этих вещей очень весело. Я думал, что мое волнение исходит из двух источников: факт, что я мог бы нарисовать туры (также одна хорошая вещь о идее Моны Лизы, или если вы проектируете свою вещь, структуры Лего) и тот факт, что существует так много подходов, которые вы можете Для сравнения:

  • Вы можете использовать простые эвристики, например, "начать где-нибудь и всегда идти в ближайшее, невзрачное место".
  • Вы можете использовать более сложные эвристики, такие как "продолжать добавлять края (в любом месте) в порядке увеличения стоимости, за исключением случаев, когда это приведет к выходу трех ребер из одной вершины или меньшего цикла".
  • Вы можете использовать алгоритмы аппроксимации, такие как простой, основанный на минимальных связующих деревьях, если ваши затраты удовлетворяют неравенству треугольника. В качестве бонуса вы можете кодировать минимальные связующие деревья (возможно, вы даже можете использовать GA там, несмотря на наличие быстрых и простых точных алгоритмов). Если вы чувствуете себя уверенно, вы можете запрограммировать более сложный алгоритм (3/2) -приближения, основанный на минимальных связующих деревьях и идеальных сопоставлениях.
  • Если у вас есть тур по путешествующим продавцам, и он пересекает себя, вы можете улучшить его, "не пересекая его". Опять же, это предполагает некоторые условия для функции стоимости.
  • Вы даже можете попытаться найти тур самостоятельно и посмотреть, можете ли вы побить свой компьютер.
  • И наконец, генетические алгоритмы! Проблема очень хорошо подходит для GA, потому что есть очень четкая функция фитнеса и очень простой способ сделать рекомбинацию.

Ответ 7

Он использовался в сложных синтезаторах для создания звуковых патчей (например, Clavia Nord Modular G2) Я бы попробовал его для других машин Yamaha DX7 приходит на ум, но я думаю, что существует немало программных альтернатив. Или генерация изображений.

Прочитайте теорию алгоритмов патча в статье Palle Dahlstedt. Кажется, в данный момент это не так...

Ответ 8

Генетические алгоритмы хорошо подходят для оптимизации и планирования. Примером может быть планирование набора машин, имеющих части и операторы с течением времени для выполнения набора задач. Хотя, возможно, это не самый захватывающий проект, он будет иметь приложения реального мира.

Ответ 9

По-моему, я видел упоминание проекта, чтобы использовать его, чтобы попытаться найти оптимальную раскладку клавиатуры, было бы - избили Дворака, как бы.: D

Ответ 10

Мне было весело играть с игрой жизни Конвей и генетическими алгоритмами,
пытаясь развить продвинутые формы жизни. Не уверен, что это заставит вас заняться несколько месяцев, хотя..

Ответ 11

Вернувшись в колледж, я выполнил многомерную минимизацию функций. Скажем, у вас есть af (x), который принимает параметры x1, x2, x3,..., xn и генерирует значение Y.. вам нужно найти параметры x1,.., xn такие, что Y = Y1.. не так сложно.. интересный способ узнать все же. Хотя Nedlermead более эффективен... это не склонно застревать в локальных минимумах.

Ответ 12

Создавайте музыкальные композиции! Читайте о Дэвиде Коупе и его программе Эмили Хауэлл.