Когда речь заходит об анализе способностей искусственного интеллекта, многие сразу вспоминают про настольные игры, в которых ИИ сумел превзойти игроков-людей.
Однако более эффективным показателем эффективности ИИ было бы соревнование по программированию.
Британская компания DeepMind, принадлежащая американскому конгломерату Alphabet, реализовала эту идею в своей модели ИИ под названием AlphaCode. Первые результаты не стали откровением, но всё же AlphaCode смог продемонстрировать уровень «программиста-новичка», обучавшегося от нескольких месяцев до года.
На испытаниях AlphaCode достиг производительности «примерно на уровне человека» и решил задачи, с которыми не сталкивался ранее. Искусственный интеллект предсказывал, какие сегменты кода могут понадобиться, и генерировал миллионы потенциальных решений. После он фильтровал все решения, оставляя примерно с десяток самых перспективных. Каждое из решений, по словам исследователей, было создано «без каких-либо встроенных знаний о структуре компьютерного кода».
AlphaCode получил средний рейтинг в 54,3% на соревнованиях по кодированию на платформе Codeforces. Он был ограничен всего десятью вариантами решений для каждой задачи, при этом 66% из них смог решить с первого раза.
На первый взгляд, это не слишком впечатляющий результат, особенно если вспомнить, насколько ИИ опережает людей в настольных играх. Однако исследователи отмечают, что добиться успеха на соревнованиях по кодированию чрезвычайно непросто.
Сначала AlphaCode должен был понять сложные проблемы кодирования на естественных (т.е. разговорных) языках. А уже затем «разбираться» с непредвиденными проблемами, а не просто запоминать фрагменты кода.
AlphaCode смог решить проблемы, с которыми раньше не сталкивался. Исследователи утверждают, что не нашли доказательств того, что ИИ просто скопировал основные логические цепочки из обучающих данных. Так что есть все основания полагать, что AlphaCode – это большой шаг вперёд в сфере изучения искусственного интеллекта.
AlphaCode – не единственная модель ИИ, разрабатываемая под программистские задачи. Так, компания OpenAI адаптировала свой алгоритм обработки естественного языка GPT-3 для создания функции автозаполнения, которая может предугадывать строки кода. У GitHub также есть собственный ИИ-инструмент программирования под названием Copilot. Однако ни одна из этих программ не показала такого мастерства в решении сложных соревновательных задач, как человек.

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