Если в основу эволюции брать не проверки по большому объёму бессмысленных смертельных мутаций, а проверки по менее большому объёму заведомо более осмысленных предложений, эволюция в целом пойдёт быстрее. Статья демонстрирует это на примере эволюционного алгоритма для генерации программного кода, порождаемого нейросетью ровно как это делают системы подсказок для кода программ: GitHub Copilot и Amazon CodeWhisperer. Если грубо, то статья предлагает вместо случайных перестановок текста в генетических алгоритмах использовать подсказки всех этих Copilots и CodeWhisperers12. И там же даётся ещё много разных других способов ускорить эволюцию (ибо много ещё мест, где «универсальный аппроксиматор/оптимизатор» типа нейронной сетки можно задействовать в эволюционном алгоритме).

Если представить, что у всех инженеров в голове есть вычислители этих самых «умных мутаций» и других оптимизационных вставок в эволюционный алгоритм, да ещё в последнее время эти «вычислители в голове» умощняются компьютерами и средствами компьютерной связи для объединения вычислений многих людей и компьютеров, то мы смело можем считать инженеров всей Земли ускорителями эволюции. Мы берём инженеров вместе с их моделерами и заводами: моделеры документируют мутации, а заводы производят какие-то продукты, которые потом «пробуются жизнью на соответствие среде», некоторые из них оказываются удачны настолько, что предложенные в них «мутации» оказываются достойными повторения. А поскольку в нашем подходе инженеры – это те, кто что-то делают/практикуются/трудятся, то всё человечество оказывается мощным вычислителем-ускорителем эволюции, то есть работает на то, чтобы минимизировать негативные сюрпризы от окружающей среды, это и есть «изменение жизни к лучшему». Сложность окружающего мира продолжает расти, но уже не только за счёт классической биологической эволюции, но и за счёт технологической эволюции, которую производят люди, и которая просто часть общей «физической» эволюции.

Итак, если инженеры угадали техническое решение, то «бинго, вымри твой вид продукта сегодня, а мой вид завтра». Если не угадали, то будет наоборот: финансирование работ тех, кто не угадал, будет прекращено. В эволюции биологической вид вымирает, и эта неудачная ветвь просто прекращает существование. В технологической эволюции ничего страшного не происходит: все люди и их компьютеры обычно остаются живыми и просто производят следующий вариант «умной мутации техносреды», пробуют что-то ещё.

Так что для уменьшения бизнес-неудач остаётся поднять вероятность угадывания хороших концептуальных (найти аффорданс/affordance: как какую-то функцию реализовать каким-то объектом из окружения, решения по концепции использования и концепции системы) и архитектурных решений (способ разбиения конструктивных объектов на части-модули и организация взаимодействия их такие, что архитектурные характеристики становятся «наименее плохие из возможных») как «умных мутаций», и это ровно то, что должны бы делать нейросетки: 1. Для языковых моделей типа T5 или GPT-3 поднимать степень осмысленности того, что они выдают в ответ на какие-то промпты/prompt13, то есть улучшать и нейросети и способы генерирования промптов как запросов к нейросети на продолжение промпта (принцип работы моделей типа T5: они просто продолжают какую-то строку-промпт, например промпт «2x2=» наверняка получит своим продолжением «4») и 2. учитывать для генерации «не совсем случайной мутации» максимум информации о мире. Ровно это и происходит: большие модели, выдающие эти самые мутации, могут использовать знание о мире, которое воплощено не только в инженерных кодах, компьютерных программах или информационных моделях (корпусная инженерия