. Ubisoft научила искусственный интеллект прогнозировать ошибки программистов в коде
Ubisoft научила искусственный интеллект прогнозировать ошибки программистов в коде

Ubisoft научила искусственный интеллект прогнозировать ошибки программистов в коде

Экспериментируя с ИИ, в компании планируют не только уменьшать число багов, но и помочь техническому прогрессу как таковому.

Во время конференции в Монреале Ubisoft представила специальную программу-помощника под названием Commit Assistant, призванную помогать разработчикам.

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

Создатели программы из La Forge, отдела научно-исследовательских и опытно-конструкторских работ Ubisoft, «скормили» ей огромный массив данных, которые собирались в компании в течение десяти лет.

Commit Assistant анализирует изначальный код и все внесённые в него правки. На основе этой информации он будет оповещать программиста, заметив, что тот может допустить ошибку.

В Ubisoft лишь начали предоставлять «помощника» разработчикам, и на данный момент нет никаких данных о том, насколько он эффективен. Тем не менее, Commit способен к самообучению, и в будущем число «ложных тревог» будет становиться меньше.

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

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

Искусственный интеллект просто помогает достичь цели. Если кто-то не хочет им пользоваться — не надо.

Исследовательский отдел Ubisoft сотрудничает с несколькими университетами в Монреале, и принцип действия Commit Assistant изложен в нескольких научных докладах, которые будут опубликованы в открытом доступе.

Тем не менее, технология пока что будет полезна лишь крупным студиям, так как должна опираться на огромные объёмы данных со множеством примеров ошибок и верных решений в коде.

В La Forge исследуют и другие возможности и области применения ИИ. Однако, по словам главы подразделения, подобные системы лучше всего проявляют себя, если перед ними стоит очень узкая задача.

К примеру, во время работы над Watch Dogs 2 в Ubisoft пришлось «учить» машины на улицах тормозить. Программа просто не считала, что это «хорошее решение», ведь её целью было достичь пункта назначения или нарезать круги по городу.

По словам сотрудников Ubisoft, эксперименты La Forge также будут задействованы в одной из грядущих игр — Far Cry 5. Благодаря им, NPC в игре действуют исходя из принципа самосохранения, описанного психологом Абрахамом Маслоу.

Доверие к главному герою и боевой дух будут влиять на поведение персонажей. Исходя из различных факторов, люди будут оценивать угрозу от игрока и могут напасть первыми из страха за свою «жизнь». А во время перестрелки отдельные члены банды обратятся в бегство, если поймут, что ситуация складывается не в их пользу.

Как утверждает Жакье, совершенствование искусственного интеллекта в играх поможет техническому прогрессу в целом.

Я думаю, что игровая индустрия будет очень полезной с точки зрения этики в науке.

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

Но, возможно, какие-то ответы можно получить из симуляции в видеоигре — просто посмотрев, как поведёт себя ИИ.

А в итоге эта штука окажется обычным статическим анализатором кода)

Не смотрел презентацию, оно работает в реалтайме внутри IDE или просто как внешний инструмент проверяет код перед коммитом?

Нейросеть же. Может и будет делать тоже самое, но сама этому научится.

Причем хреновым анализатором.

Комментарий удален модератором

Ура! Теперь благодаря оптимизации бюджета компания сможет зарабатывать ещё больше!

Ну или игры будут выходить быстрее

Ура, теперь у компании будет больше средств и времени на создание большего количества скинчиков!

Где Мулинье сейчас работает?

Программа отлавливает ошибки, а не п*здаболов

Программу ничему научить нельзя, можно задать ей последовательность триггеров, всё. Она будет отлавливать только те ошибки, которые ей вбили в базу данных. То бишь, сделанные самими разработчиками в их проектах или умышленно написанные для программы. Для любой другой игры / проекта это работать не будет. Прежде всего, каждая студия использует свой движок. Само собой, есть общие типа Unreal Engine, но даже там конечные разработчики вносят правки.

К тому же, это Юбисофт. От одного только ихнего лаунчера все 'просто в восторге'. И все мы прекрасно знаем, как они любят на конференциях показывать одно, а в итоге продавать совсем другое. Или все резко забыли про Watch Dogs? Умного ИИ не было в играх со времён создания этих самых игр и никогда не будет. А причина логичная и понятная каждому — чтобы создать действительно разумный искусственный интеллект, нужно чтобы он был умнее тебя. А для этого нужно самому быть умнее себя. Парадокс.

На дворе что, 2008 год? А нет, погодите, уже в 2008 было генетическое программирование и прочие генеративные AI-вещи.

О, человек, который не слышал про нейросети!

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

К тому же, это Юбисофт.

И? У компании база опыта такая, что другие могли бы позавидовать. Надо понимать, что анализаторы кода существуют уже давно, Ubisoft предлагает просто добавить туда ИИ (и в теории, так как геймдев, эта штука будет анализировать разом стек технологий, а не конкретную часть)

"Ubisoft пришлось «учить» машины на улицах тормозить. Программа просто не считала, что это «хорошее решение», ведь её целью было достичь пункта назначения или нарезать круги по городу."

Тормоза придумали биологические трусы! (с) ИИ

До сих пор помню историю ботов для гонок на геймдеве, где бот решил что лучшая тактика - это не ехать вообще. Все равно же точка старта и финиша на круговых трассах совпадает.

Пока никто не пошутил, я это сделаю. А этот ИИ будет также забагован?

Конечно. Разрабатываться забагованными программистами в забагованной IDE, а потом запускаться на забагованной ОС на забагованном железе

Вот только в Far Cry 5 ИИ вообще не изменился, это видно по футажам, особенно крупным. Поглядите у PC Gamer, к примеру, там и медведь толкает NPC-рассказчика на стуле, и водитель авто нелепо наезжает на труп волка, пугается и с криком убегает куда-то.

📎📎📎📎📎📎📎📎📎📎