Pull to refresh

Comments 21

Может быть для разных игр нужны боты с разной спецификой?

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

Но пока, могу вас заверить, существуют задачи, которые мы решаем лучше машин, включая игры, в которые многие из нас играли в детстве.
А также Quake. :-)

Кроме того, на пути прогресса ИИ стоят не только чисто алгоритмические проблемы. Вот недавно мы все следили за противостоянием «кремниевых» и «белковых» в Dota 2. Там интересно не только то, что люди довольно быстро нашли подход к OpenAI и стали уверенно обыгрывать ботов, пользуясь их слабой игрой в лейте, но и колоссальная разница в энергозатратах:
Для обучения OpenAI в режиме 5х5 постоянно используется 128 тысяч процессорных ядер Google Cloud. Но и это еще не вся мякотка. Так как в обучении бота OpenAI используется машинное зрение (о котором мы поговорим чуть позже), в этой чудовищной конфигурации фигурирует еще 256 GPU P100 NVIDIA
… против мозга человека, потребляющего 25 Вт. Недавно была тут хорошая статья о проблемах существующих аппаратных архитектур для решения задач МО и ИИ, которая, к сожалению, почему-то не снискала должной популярности и внимания читателей.
О, вот тут вы не правы. Давайте сравнивать полные затраты на обучение тогда. Сколько поколений людей сменилось, чтобы текущий игрок смог обыграть кластер? Сколько ресурсов он потратил на своё обучение/развитие?
Мысль интересная, но с поколениями вы, пожалуй, слегка загнули. Если и проводить такую параллель и пытаться оценить полное время обучения человека, то это 15-20 лет, за которые из младенца вырастает будущий чемпион доты. ;-) Генетическая программа у него уже есть, этого вполне достаточно; даже нет особой необходимости в предварительном изучении накопленных другими игроками знаний об игре — человек вполне успешно осиливает игры методом тыка. В некотором смысле RL-алгоритмы ботов занимаются этим же, но результаты пока намного скромнее.
Если и проводить такую параллель и пытаться оценить полное время обучения человека, то это 15-20 лет, за которые из младенца вырастает будущий чемпион доты

Сейчас есть тема, как быстро получать приемлимый результат в задачах машинного обучения:
1. взять готовую сеть, которую обучали на имаджнете при помощи оборудования, сопоставимого по мощности с тем, что использовали OpenAI
2. зафиксировать все слои кроме нескольких выходных
3. обучить эти несколько слоев на своем датасете на скромном железе.
То есть, если уже потрачено X процессорной мощности на общую задачу, то чтобы дообучить на свою специализированную, достаточно условного 0.00001X. С мозгом тот же прикол. Сотни тысяч лет эволюции — это Х, решающий ряд общих задач, и заложенный в каждом исправном мозге. 0.00001X — это опыт конкретного игрока. А машине надо проглотить 1.00001Х за один присест)
Можно провести такой мысленный эксперемент — перемешать выходную картинку случайной, но фиксированой функцией — никакой человек, даже за 15-20 лет, не научится адекватно играть — он не будет ничего видеть. А для AI разницы, вообще, не будет.

Зависит от того, какой уровень шума даст случайна картинка. Если невысокий — то и человек научится, если высокий — то и сама сеть не сможет вытащить данные.

Я имею в ввиду не случайный шум, а перевод картинки без потери информации в новую форму. Научить человека читать QR коды проблематично, а для сетки приципиальной разницы нет. Потому что, сетка обучается с нуля, а мы нет.
danfe:
против мозга человека, потребляющего 25 Вт

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

Вся статья напоминает старые заголовки «Почему машина может нечеловечески хорошо играть в шахматы, но не в Go?», которые уже неактуальны.
Уверен, что уже на текущей технической базе можно обучить машину, которая сможет «нечеловечески хорошо играть в Pokemon», просто это никому не нужно.
DeepMind уже перестала устраивать состязания между своим детищем AlphaGo и людьми, чтобы это не напоминало «избиение младенцев».
OpenAI напротив не мелочится, а хочет захватить последний оплот человечества с помошью превосходства в Dota 2. После того как им это удастся, останется очень мало людей, верящих в то что человек всегда сможет справиться с какой-нибудь задачей лучше компьютера.

При победе в Pokemon не будет такой зрелищности как при победе в Dota 2.

PS: справедливости ради нужно добавить, что конечно сам по себе AI не скоро достигнет такого уровня, что сможет в любой задаче превосходить человека. За этим превосходством ещё долго будут стоять люди, которые будут обучать компьютер решать задачи лучше людей.
Новые подходы в машинном обучении могут ускорить процесс в десятки-сотни и даже тысячи раз
Конечно, алгоритмы, в т.ч. численные (вычисления пониженной точности и т.п.) будут совершенствоваться, но качественный прорыв имхо потребует такого же качественного прорыва в аппаратной реализации, потому как уже сейчас энергозатраты на то, чтобы просто более-менее играть в доту, выглядят довольно дикими. Впрочем, новые подходы нужны в любом случае; я вообще довольно скептически отношусь к нейросетям — мне кажется, это лишь некий промежуточный этап (например, их довольно просто ввести в заблуждение, а еще они не понимают, что такое оптические иллюзии, и не умеют создавать новые).
OpenAI напротив не мелочится, а хочет захватить последний оплот человечества с помощью превосходства в Dota 2. После того как им это удастся, останется очень мало людей, верящих в то, что человек всегда сможет справиться с какой-нибудь задачей лучше компьютера.
Эх, мне вот интереснее посмотреть, когда и как ИИ научится обыгрывать топ-игроков в Quake. :-)
А почему именно Quake?
Он же больше заточен на реакцию и четкость движения, чем на планирование и взаимодействия, чем Дота. Т.е., как я вижу ситуацию, у ИИ тут наоборот изначальное преимущество. (Вообще тут вспоминаются ранние боты в CS, которые моментально стреляли в голову когда ты попадал им в область видимости)
Не сочтите за грубость, просто чтобы не цитировать себя же, — почитайте мои комментарии (можно тупо по Ctrl-F/G, они все, по сути, один большой комментарий) к этому и этому топикам; там я постарался объяснить, почему мне кажется, что сложная Дота — более «удобный», что ли, орешек для ИИ, чем Quake, хотя последний (и тут вы правы) намного проще.

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

Ну да, обсуждали: нифига не рвут (только перестреливают), и гандикап нужно давать небольшой. Все существующие квачные боты — тупые и предсказуемые, даже относительно продвинутые, типа спитеров или 3zb2. Да это и не ИИ на самом деле: все их абилки (тайминг итемов, умение доджиться, делать некоторые триксы и специфические прыжки) заложены в них изначально, в т.ч. знание карты (AAS/вейпоинты), они ничему не учатся сами.
Ну да, обсуждали: нифига не рвут (только перестреливают)

Ну так можно на все заявить — не рвут, а перечто-то там.

Перестреливают = лучше стреляют, а не выигрывают. У лучших игроков accuracy не превышает 50% (в реальности ниже из-за спама, 25% RL/RG, 35% LG — обычное дело). Даже если бот будет попадать вообще всё (т.е. все хитсканы, от ракет и банок можно увернуться), ему можно просто не давать брать рельсу.

Окей, в QW идеально попадающий бот, пожалуй, действительно будет непобедим, но мы же про Q2/Q3. В любом случае, существующие боты это не ИИ. Лучшее достижении ИИ в кваке на сегодня — умение кое-как играть в недо-CTF на плоских сгенерированных «картах» а-ля Wolf3D.
Впрочем, я начинаю повторяться, всё уже перетёрто в прошлых топиках.
К тому же нейронку вроде обучали только сутки на этих мощностях, а люди тратят на это годы и неизвестно, что дороже — аренда этих мощностей на сутки или годы выращивания балбесов, которые не умеют ничего, кроме как играть :)

Два года его обучали, а не сутки :)
плюс к этому кожаные мешки выполняли роль тренера, так что нельзя говорить что сам ИИ не использовал преимущества миллионов лет эволюции

Давайте тогда посмотрим на то, что мозгу нужно не просто двигать персонажей, но вести огромную работу по перемещению конечностей, вести расчет задержек между входным и выходным сигналом, координировать дыхание и т.д.
В целом, там одного только движения рук достаточно, поскольку используются сложнейшие алгоритмы для позиционирования, согласно входных сигналов.
О пределах работы мозга тоже весьма сомнительное заявление. Потому, что там задействовуются далеко не все отделы для решения этой, не сложной для мозга, задачи.
И самая не тривиальная задача — это процесс коммуникации этих пяти мозгов. И процесс принятия решений в условиях этой коммуникации.
Я бы еще добавил в «актив» людей миллионы лет эволюции и развития этого самого мозга.
Про проблемы ИИ на базе кремния говорят столько, сколько я помню самое словосочетание ИИ, а я его услышал еще в школе(лет 20 назад). Видимо у людей короткая память, или подросло новое поколение, которое не знает про проблемы, не знает основ, но радуется тому как ИИ играет в игры.
Sign up to leave a comment.