Эссе о разработке игр, мышлении и книгах

Пара слов о GitHub Сopilot

DALL-E: "Vrubel style painting of pair programming Robot + Human. An robot is writing code, a human is reviewing code".

DALL-E: "Vrubel style painting of pair programming Robot + Human. An robot is writing code, a human is reviewing code".

Последние несколько недель использовал GitHub Сopilot, благо для Emacs есть плагин. Поделюсь впечатлениями.

Для справки, я уже лет 15 осознанно не использовал умное автодополнение. Всё моё автодополнение — это DynamicAbbreviations, по сути — дополнение написанного слова на основе словаря из открытых исходников.

Причина отказа такая: используя «умное» автодополнение (например, подсказку аттрибутов/методов объекта) перестаёшь понимать проект. Начинаешь на автомате брать предлагаемые варианты методов/переменных, не разбираясь что они конкретно делают и есть ли альтернатинвые варианты.

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

С Copilot я, похоже, вернуcь к умному автодополнению, в его более правильном варианте.

Итак, давайте посмотрим чего умеет и не умеет Copilot.

Далее

Write Your Own Adventure

Я уже публиковал концепт документы игр. В этот раз будет не концепт, a скорее white paper игр нового поджанра. Несколько его представителей уже есть, со временем их будет становиться больше.

О чём-то похожем я уже говорил, когда писал про будущее контента в геймдеве.

Write Your Own Adventure — WYOA — по аналогии с Choose Your Own Adventure — CYOA.

В WYOA игрок не ограничен небольшим количеством предопределённых вариантов действий, как приходится делать в CYOA из-за сложности поддержки дерева сюжета. Количество выборов будет либо очень большим либо бесконечным. Благодаря нейронным сетям, конечно, но о них позже.

Далее

ИИ нас всех не(?) заменит

Автопилот [Ийона Тихого](https://ru.wikipedia.org/wiki/%D0%98%D0%B9%D0%BE%D0%BD_%D0%A2%D0%B8%D1%85%D0%B8%D0%B9) готовится делать человеческую работу в 3 лица.
(с) сериал [Ijon Tichy: Space Pilot](https://en.wikipedia.org/wiki/Ijon_Tichy:_Space_Pilot)

Автопилот Ийона Тихого готовится делать человеческую работу в 3 лица.
(с) сериал Ijon Tichy: Space Pilot

GitHub в прошлом месяце выпустил ИИ напарника для программистов, который умеет дописывать код. В догонку OpenAI опубликовали видео с возможностями технологии. Например, демонстрацию разработки игры на JavaScript.

Справедливости ради отмечу, что «игра» откровенно убогая. Но процесс создания впечатляет всё равно.

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

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

Для краткости, вместо машинного обучения, нейронных сетей, feature programming и аналогичных вещей далее буду использовать аббревиатуру ИИ — Искусственный Интеллект. Кто знает на какой конкретно технологии всё остановится, но для её пиара гарантировано будут использовать затычку из двух «И».

Эссе включает:

  1. Оценку возможности прогнозирования.
  2. Описание факторов, которые влияют на развитие и внедрение ИИ.
  3. Три классических прогноза: пессимистичный, реалистичный и оптимистичный.

В первой и второй частях я уверен, а вот в прогнозах у меня получается жутковатая картина. В то же время основной проблемой прогнозов я считаю оценку сроков, а не качественных изменений.

Далее

Feature Programming

Эссе по итогам нырка в Deep Learning, но не о DL и даже не совсем о Machine Learning, а о новой парадигме программирования, которая рождается из него.

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

В следствие выбранной темы, эссе получилось футурологическим и абстрактным. Например, я не буду перечислять области применения DL и достигнутые в них результаты — этим итак всё инфопространство забито.

Оговорка раз: я определённо не эксперт в машинном обучении. Эссе в большей степени отражает мой опыт и картину мира, нежели знания и понимание ML и DL.

Оговорка два: термины «признак», «feature» будут использоваться достаточно вольно.

Далее

Будущее контента в геймдеве

Улучшаем графику до реалистичной с помощью нейронных сетей.

Появилась новая работа по улучшению графики игр с помощью нейронных сетей. На этот раз на примере GTA V. В ролике можно посмотреть на полученный результат и на описание структуры сети.

Я уже в шутку писал об изменении pipeline арта. В этот раз сделаю более серьёзный прогноз.

Далее