Skip to main content

Что такое генетическая оптимизация?

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

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

Исследователь начинает с предмета интереса, известного как «популяция», который можно разделить на индивидуумов, иногда называемых существами, организмами или хромосомами. Эти термины, заимствованные из биологии, отражают истоки этого подхода к программированию. Компьютер может начать симуляцию с населением, выбирая отдельные организмы в пределах одного поколения и позволяя им смешиваться для создания нового поколения. Этот процесс может повторяться через несколько поколений для объединения и рекомбинации возможных решений, идеально подходящих для наиболее подходящего варианта для данных условий.

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

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