TGViewer
Вагонная тележка Вагонная тележка @goodtransit · 138 subscribers
Post #654 133
ГЕНЕТИЧЕСКИЕ АГЛОРИТМЫ И БЕТОННАЯ СТЕНА

Продолжу про ИИ. Если вы работали с машинным обучением, то могли ощутить то, что я называю бетонной стеной, пределом возможностей.

Лет двадцать с лишним назад услышал на радио рассказ про генетические алгоритмы. Суть их простая: если у нас задача вычислительно слишком сложна, чтобы решить -- скажем, задача коммивояжёра даже в теории решается только полным перебором всех вариантов, а их -- астрономическое количество. Или задача слишком сложна, чтобы решать аналитически -- например, подобрать коэффициенты в управлении ракетой, чтобы она вышла на орбиту -- это дифференциальное уравнение с производными 4 порядка, что мало кто может решить. Вместо этого можно пробовать решать их генетическим алгоритмоми (или алгоритмами -- не важно).

Суть алгоритма простая: для всех параметров, которые входят в ответ, делаем случайный набор. Это у нас будет ген, или ДНК некоей особи. У особи можем посчитать живучесть -- то есть целевую функцию, и оценить, насколько она хороша -- скажем, посчитать время поездки по задаче коммивояжёра, или насколько ракета не дотягивает до идеальной траектории.

Делаем таких случайных особей много штук и считаем их живучесть. Получаем популяцию. Выбираем из популяции самых живучих и делаем им потомство, скрещивая -- каким-либо случайным образом комбинируем их ДНК (можно, скажем, для каждого параметра взять значение случайно из одной или другой скрещиваемых особей). Получаем новое поколение популяции (можно оставлять старых хороших особей или не оставлять -- как хотим). Чтобы не комбинировать одни и те же значения, делаем ещё и мутации -- с вероятностью, скажем, в 1%, выбираем случайный параметр и случайно меняем его.

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

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

Чтобы бороться с этим, надо было добавлять и некое решение от локальных оптимумов, и эвристики для мутаций -- то есть, функции, которые показывают, какой параметр желательно менять и в какую строну.

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

Поэтому, столкнувшись с такой бетонной стеной -- пределом простых улучшений -- я перестал пробовать ГА в реальных задачах. Задним числом я заметил, что все материалы в интернете про эти алгоритмы были довольно старыми, середины нулевых, а в рабочих задачах их применение мне почти не встречалось.
  • 👍 3
  • 👎 1
More from @goodtransit
  1. Sep 18, 2026В просветительском ютубе скандал. Я не знаю всех подробностей, но суть вкратце такая: виде…
  2. Apr 15, 2026(Может её не в СССР придумали -- если так, честь и хвала изобретателям!) И не надо слушать…
  3. Apr 15, 2026ЦЕНТРАЛЬНОЕ ОТОПЛЕНИЕ И КОЛОНИАЛЬНОЕ СОЗНАНИЕ Сейчас в Алмате коммунальщики отключили цирк…
  4. Apr 13, 2026Новый Каир. Дубай без денег. Десятиполосная магистраль с монорельсом над ней. Переходов ро…
  5. Apr 2, 2026В США вчера запущена новая миссия облета Луны. В 2013 я, поизучав архив фотографий ( а они…
  6. Apr 1, 2026кто был молодой и пожить не мечтал в париже? но жизнь своей идёт чередой ну ладно, пусть б…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →