Искусственный интеллект научился создавать компьютерные игры

Квантовый компьютер замахнулся на искусственный интеллект. Искусственный интеллект для компьютера

ГлавнаяКомпьютерИскусственный интеллект для компьютера

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

Фото: Sk.ru.

«Наша команда дискутировала по скайпу до поздней ночи, к какой области науки отнести наше исследование.

Мы многократно переписывали нашу статью, меняли основную мысль, в конечном счете написали три версии за 8 месяцев, не имеющие между собой ничего общего, кроме названия — и итоге отправили конечный вариант в журнал Nature», — рассказывает Якоб Биамонте (Jacob Biamonte), сотрудник Сколтеха и специалист в области квантовой физики, чьи слова приводит пресс-служба института.

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

Обратите внимание

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

Сегодня многие IT-компании и простые ученые, как рассказывает Биамонте, часто задумываются о том, можно ли объединить эти две вещи и как это стоит сделать, если это возможно.

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

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

«О квантовом компьютинге, о конце эры силикона, кремния и переходе на оптику в компьютерах говорят уже лет 20. Первые 10 лет это всем казалось научной фантастикой, а сейчас мы фактически стоим на пороге компьютерной революции.

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

Собеседник ФАН утверждает, что будущее за ИИ, созданным на основе квантовых компьютеров. Дело в том, что квантовые вычислительные машины по быстродействию максимально приближены к работе человеческого мозга.

«И туда действительно можно загнать кучу связей, позволяющих создавать прогнозы. Да, у ИИ не будет человеческой интуиции, не будет способности совершать необдуманные поступки, рожать прорывные идеи. Я думаю, что лет через 5-10 мы сможем увидеть результат такой кооперации. Интернациональный коллектив «Сколтеха» позволит ускорить движение в данном направлении», — продолжает эксперт.

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

Напомним, 1 сентября миллионы российских школьников увидели телевизионное обращение президента России Владимира Путина, который заявил что «искусственный интеллект — это будущее не только России, это будущее всего человечества. А тот, кто станет лидером в этой сфере, будет властелином мира».

Источник: 1neof.ru

sk.ru

Искусственный интеллект научился создавать компьютерные игры

Ученые из Миланского политехнического института написали и протестировали программу по созданию уровней для популярной компьютерной игры DOOM. Искусственному интеллекту понадобилось более 36 тысяч попыток, чтобы смоделировать для классического шутера локацию, в которой геймеры могли управлять персонажем в привычном для них стиле.

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

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

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

Важно

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

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

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

neuronus.com

Искусственный интеллект развивается не по дням, а по часам

Вы знаете, какая аудитория составляет большую часть фанатов «Гарри Поттера»? Молодые девушки. Они ежегодно собираются на выставки и их радует все, что так или иначе связано с волшебным миром Хогвартса. Они погружаются в фантастический мир магии, заклинаний и живых картин, даже не подозревая, что реальный мир развивается такими темпами, что очень скоро магия может стать реальностью.

Взять к примеру Орегонский выставочный центр в Портленде. Не так давно, как пишет The New York Times, там прошло собрание Leaky Con, где тусовались преимущественно фанатки «мальчика-который-выжил».

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

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

C.V.P.R., как известно, это ежегодный сбор ученых, студентов, хакеров, роботов и их хозяев, а также, все чаще и чаще, предпринимателей и бизнесменов, которые блуждают в поисках технологии, которая может осуществить технологический прорыв.

Растущая мощь компьютерного зрения является важным первым шагом для следующего поколения компьютеров, роботов и систем искусственного интеллекта. Как только машины смогут идентифицировать объекты и понимать среду, они смогут передвигаться по миру. И как только роботы станут подвижными, им найдется применение — они смогут расширить возможности людей или заменить их.

Самоходные автомобили, промышленные роботы и новый класс железных батраков, известных как ДР-роботы, уже демонстрируют, на что будут способны более мобильные машины.

Совет

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

«В следующем десятилетии мы увидим, как разумные технологии проникают во все сферы жизни», — говорит Эд Лазовска, специалист по компьютерам в Вашингтонском университете. — «Умные дома, умные автомобили, умное здоровье, умная наука, умная толпа и умное взаимодействие человека и компьютера».

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

Читайте также:  В ближайшее время может значительно увеличиться использование искусственного интеллекта

Apple была самым успешным новатором в популяризации того, что сегодня называют повсеместной компьютеризацией. Идея, впервые предложенная Марком Вайсером, компьютерщиком из Xerox, предполагает включение мощных микропроцессоров на чипах в повседневные объекты.

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

«Самым важным производителем новых компьютеров в Кремниевой долине является вовсе не производитель компьютеров, а Tesla, производитель электромобилей», — говорит Пол Саффо, управляющий директор в Discern Analytics, исследовательской компании, базирующейся в Сан-Франциско. — «Автомобиль стал узлом в сети и компьютером сам по себе. Это примитивный робот, в которого вы залезаете».

Перед вами несколько областей, в которых следующее поколение вычислительных систем и более мощных алгоритмов программного обеспечения могут трансформировать мир всего за пять будущих лет.

Искусственный интеллект

Все чаще и чаще на том конце провода будет оказываться компьютер.

Прошло два года с тех пор, как Watson, программа искусственного интеллекта, созданная IBM, обошла двух лучших игроков мира по «Jeopardy». Watson, обладающий доступом к 200 миллионам страниц информации, почти в состоянии понимать запросы на природном языке и отвечать на вопросы.

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

В мае IBM пошла еще дальше и выпустила общую версию своего программного обеспечения — «IBM Watson Engagement Advisor».

Обратите внимание

Идея в том, что система вопросов и ответов компании становится доступна широкому ряду call-центров, технической поддержки и приложений.

Компания утверждает, что 61 % всех телефонных звонков в call-центры остаются без ответа, потому что люди-сотрудники не в состоянии дать людям правильную и полную информацию.

Watson, говорят представители IBM, будет помогать человеческому оператору, но система также сможет работать в режиме «самообслуживания», когда клиенты напрямую смогут взаимодействовать с программой, вводя запросы в браузер или напрямую в программу распознавания речи.

Робототехника

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

В декабре оборонное агентство перспективных исследований (DARPA), передовое исследовательское подразделение Пентагона, проведет первое из двух соревнований на 2 миллиона долларов по созданию робота, который может подменить спасателя в опасных условиях, например, на поврежденном ядерном реакторе в Фукусиме Daiichi.

Конкурс, который будет проведен в Майами, соберет роботов, которые будут соревноваться в выполнении таких задач, как передвижение, перемещение щебневых куч, используя электроинструмент, закрытии клапанов и переключении рубильников.

В дополнении к роботам DARPA, волна разумных машин для рабочих мест выдвигается из Rethink Robots, которая базируется в Бостоне, и Universal Robots из Копенгагена: эти компании начали продавать дешевых двуруких роботов для работы на заводах и фабриках. У этих роботов нет ног и колес. Но они первые коммерчески доступные роботы, которым не нужна клетка, потому что они могут видеть и слышать сотрудников завода, поэтому вреда им причинить не могут.

Для дома компании разрабатывают роботов, которые сложнее, чем современные роботы-пылесосы. Hoaloha Robotics, основанная бывшим руководителем Microsoft Тэнди Тровер, недавно сообщила, что намерена выпускать роботов для ухода за престарелыми людьми. Эта идея, в случае успеха, может дать старикам возможность жить самостоятельно. Если они захотят, конечно.

Семь участников соревнования DARPA будут построены на базе гуманоида ATLAS, созданного Boston Dynamics, исследовательской компанией из Уолтхэма, Массачусетс.

Важно

Среди широкого круга других вариантов, которые выглядят как угодно, но только не по-людски, есть несколько, которые работают словно «трансформеры» из фильма.

Конкурс вполне может напомнить о знаменитой барной сцене из «Звездных войн». Там будет всё.

Интеллектуальный транспорт

Амнон Шашуа, израильский ученый, модифицировал свою Audi A7, добавив камеру и программное обеспечение на основе искусственного интеллекта, что позволило автомобилю проехать 65 километров от Иерусалима до Тель-Авива самостоятельно, без управления рулевым колесом.

В 2004 году DARPA провело первую серию «Великих испытаний», чтобы разжечь интерес к развитию автомобилей, управляемых самостоятельно. Конкурс привел к значительному росту технологий, в том числе, например, «Super Cruise», автоматизировавшей вождение на шоссе, которую уже показывала General Motors, и других. Также в списке самостоятельная парковка — функция, уже доступная ряду автомобилей.

Источник: http://sci-world.ru/kompyuter/iskusstvennyj-intellekt-dlya-kompyutera.html

Почему искусственный интеллект тренируют на компьютерных играх

Обучение с подкреплением часто применяют для тренировки ИИ-алгоритмов, и в результате они учатся обыгрывать опытных киберигроков. Издание Quartz рассказало о подобных эксперимантах и о перспективах этого метода.

5 августа команда ботов под названием OpenAI Five соревновалась с профессиональными игроками в Dota 2, игре, которая требует быстрой реакции, исчерпывающего знания стратегий и самое главное — командной работы.

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

На сегодня это одна из самых активных киберспортивных дисциплин, а призовой фонд турнира в этом году составил более $23 млн.

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

На примере игр даже далёкие от науки люди смогут очень легко оценить, насколько далеко продвинулись исследователи ИИ.

Машинный интеллект уже превосходил человеческий в решении головоломок: суперкомпьютеру DeepBlue от IBM удалось обыграть знаменитого шахматиста Гарри Каспарова, а разработанная DeepMind программа AlphaGo выиграла матч в го против корейского профессионала Ли Седоля.

Совет

Компьютерный алгоритм оказался сильнее людей, которые многие годы оттачивали своё мастерство. Эти примеры у всех на слуху, но помимо них учёные десятилетиями работают над ИИ-агентами, которым нет равных в играх Atari, шашках и Super Smash Bros.

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

Положительное подкрепление

Одним из наиболее распространённых методов обучения ботов игре, который использует в том числе детище Илона Маска и Сэма Альтмана OpenAI, называется «обучение с подкреплением».

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

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

Бот OpenAI играет миллионы матчей сам с собой на протяжении двух недель. В каждой игре его цель смещают от получения очков для себя к повышению общекомандного результата — и таким образом исследователи формируют «командный дух».

Игры отлично подходят для тренировки ИИ, потому что они имитируют условия реального мира, но при этом имеют конкретную цель, считает профессор Нью-Йоркского университета Джулиан Тогелиус: «Игры хороши тем, что в них есть стимул: победить, набрать как можно больше очков».

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

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

Обратите внимание

У него нет никакого понятия, как игра должна функционировать, и если вдруг произойдет баг или сбой, бот просто сделает то, что с наименьшими усилиями приведёт его к бонусу.

К такому выводу в прошлом году пришли исследователи из Фрайбургского университета в Германии, когда использовали обучение с подкреплением для тренировки алгоритма на игре Q*bert для Atari.

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

Программа считала врага убитым и давала боту дополнительную жизнь и очки — профит.

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

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

Читайте также:  Если ничего не предпринять, то созданные роботы смогут убивать людей

Больше, чем просто игра

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

У компании есть ещё один проект, в котором применяется та же самая система обучения и тот же самый алгоритм, что и для ботов Dota 2: алгоритм для управления механической рукой, которая способна удерживать кубик и пальцами вращать его в любом направлении.

Эти два проекта были запущены практически в одно время, но после потрясающей победы ботов Dota 2 над командой людей в прошлом году, робототехники OpenAI осознали потенциал метода обучения с подкреплением.

Важно

В этих исследованиях применяется созданная OpenAI программа под названием Rapid. Она координирует работу тысяч процессоров, на которых одновременно запущены тысячи алгоритмов обучения с подкреплением. Каждому из алгоритмов соответствует бот, который либо играет в игру, либо шевелит роборукой, а в конце экспериментов синхронизирует полученные знания с «коллегами».

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

Однозадачные алгоритмы

OpenAI использует схоже коды, чтобы тренировать игровой ИИ и робота. Но важно то, что каждый из них учится выполнять свою отдельную задачу. Бот Dota 2 совершенно не смог бы управлять механической рукой — сами по себе алгоритмы достаточно универсальны и могут научиться любому навыку, но в последствии будут способны выполнять только его.

Система обучения с подкреплением Rapid — не первая технология, созданная с помощью компьютерных игр и применяемая в реальном мире. Более 10 лет назад специально для игры в го был разработан «метод Монте-Карло».

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

Также он лежит в основе созданного DeepMind алгоритма AlphaGo, который в 2016 победил Ли Седоля.

Команда роботики OpenAI считает, что в будущем этот метод обучения может использоваться для выполнения более сложных заданий. Система Dota 2 задействует в 20 раз больше вычислительной мощности, чем роборука, и в отличие от неё тренируется две недели, а не два дня. Это значит, что команду роботики ждут ещё более комплексные и задачи, которые займут более длительный период обучения.

Источник: https://dev.by/news/ai-trainig-on-games

Методы искусственного интеллекта (ИИ) в компьютерных играх

Аннотация: В этой лабораторной работе мы познакомимся со способами применения технологий искусственного интеллекта в компьютерных играх.

Примеры к лабораторной работе

  • Освоить основные принципы применения искусственного интеллекта в компьютерных играх.
  • Рассмотреть алгоритмы искусственного интеллекта, применимые в играх
  • Создать компьютерную игру, использующую принципы искусственного интеллекта

Тема искусственного интеллекта (artificIal intelligence, AI, ИИ) будоражит умы многих начинающих программистов, разработчиков и любителей компьютерных игр. ИИ кажется многим чем-то удивительно сложным, интересным, таинственным.

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

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

Совет

Очень сложно найти компьютерную игру, которая обходится без ИИ. Классический пример “умных” игр – это программы для игры в шашки, шахматы и прочие настольные игры. Каждая игра, в которой компьютер играет против пользователя, оснащена ИИ.

Игровой ИИ, в первом приближении, можно разделить на два вида. Первый – наиболее очевидный – это интеллект отдельных игровых персонажей.

Например, каждый танк в популярной некогда приставочной игре Battle City пытается добраться до базы игрока, уничтожить ее и его танк.

Танки в игре действуют неслаженно, они не отличаются особенным умом, однако играть интересно – все дело в том, что для данной игры такой вид ИИ вполне подходит. Он не делает игру скучной.

Второй уровень ИИ – это групповой интеллект. Например, вспомним StarCraft. Игрок вынужден сражаться с армией, контролируемой компьютером. Получается, что компьютер управляет большим количеством юнитов (от англ. Unit – единица).

Но несложно заметить, что каждое существо, которым управляет групповой ИИ в StarCraft, обладает собственным “разумом”.

Например, групповой ИИ может направить некоторую группу юнитов на патрулирование местности, но если они встретят на пути неприятеля – отвечать за их действия будет уже их собственный ИИ.

Если бы действия армии в StarCraft никак не контролировались, а ИИ присутствовал лишь на уровне отдельного юнита – игра превратилась бы в скучный поиск и уничтожение врагов. А StarCraft, несмотря на серьезный возраст (порядка 10 лет) остается увлекательной игрой. Даже в однопользовательской кампании StarCraft способна очень сильно “затянуть” игрока, не говоря уже о сетевых баталиях.

Обратите внимание

Кстати, несложно заметить, что в том же StarCraft индивидуальный ИИ есть и у юнитов, которыми управляет пользователь.

Например, та же команда “патрулировать”, отданная пользователем, заставит существо из StarCraft послушно ходить по указанному пути.

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

Системы ИИ, применяемые в компьютерных играх, можно разделить на два основных вида. Во-первых – это так называемые детерминированные системы. Они отличаются предсказуемостью действий персонажа. И во-вторых – это недетерминированные системы – персонаж, управляемый таким ИИ, может действовать непредсказуемо, принимать неожиданные решения.

Как мы уже сказали, индивидуальный ИИ юнитов играет подчиненную роль в сравнении с групповым ИИ. А может ли ИИ отдельного юнита повлиять на игру вцелом? Может – в том случае, если предусмотрено распространение успехов отдельного юнита на всех схожих.

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

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

Персонаж, оснащенный недетерминированным ИИ, отличается непредсказуемостью поведения, большей “живостью”. Играть против таких персонажей обычно гораздо интереснее, чем против жестко детерминированных.

Важно

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

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

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

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

Частично детерминированные (например, при приближении к стене персонаж с вероятностью 50% повернет налево, с вероятностью 30% – направо, и с 20% вероятностью развернется и пойдет обратно) так же находят широкое применение в играх.

Реализуем игру, использующую алгоритм преследования. Сущность этого алгоритма заключается в следующем. Объект-преследователь сравнивает свои координаты в игровом мире с координатами объекта-жертвы и корректирует свои координаты таким образом, чтобы приблизиться к жертве. В простейшем случае преследование осуществляется на открытом пространстве.

Создадим новый игровой проект P8_1 на основе проекта P5_1. Будем использовать два объекта – преследователя и жертву. Преследователь будет перемещаться в сторону жертвы со скоростью, на 1 меньше, чем скорость жертвы. Если объекты столкнутся – жертва будет уничтожена.

Читайте также:  Робот помощник от отечественных разработчиков будет запущен в производство

На рис. 12.1. приведено окно Solution Explorer игрового проекта P8_1.

Рис. 12.1. Окно Solution Explorer

Мы используем базовый класс gBaseClass, класс для объекта-преследователя (Enemy), класс объекта-жертвы (Me) и класс для объекта-стены.

Класс объекта-стены будет нужен нам для того, чтобы изучить поведение объекта, реализующего алгоритм преследования, при столкновении с непреодолимым препятствием на пути к жертве.

Совет

Мы значительно модифицировали код классов в сравнении с исходным проектом P5_1, поэтому ниже вы найдете полный код классов игры. В листинге 12.1. вы можете найти код класса Game1.

using System;
using System.Collections.Generic;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Net;
using Microsoft.Xna.Framework.Storage; namespace P8_1
{ /// /// This is the main type for your game /// public class Game1 : Microsoft.Xna.Framework.Game { GraphicsDeviceManager graphics; SpriteBatch spriteBatch; Texture2D txtBackground; Texture2D txtEnemy; Texture2D txtMe; Texture2D txtWall; //Массив для конструирования уровня public int[,] Layer; Rectangle recBackround = new Rectangle(0, 0, 640, 512); Rectangle recSprite = new Rectangle(0, 0, 64, 64); public Game1() { graphics = new GraphicsDeviceManager(this); Content.RootDirectory = “Content”; } protected override void Initialize() { // TODO: Add your initialization logic here Layer = new int[8, 10] { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 1, 6, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 5, 0 }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, }; //Устанавливаем разрешение игрового окна //640х512 graphics.PreferredBackBufferWidth = 640; graphics.PreferredBackBufferHeight = 512; graphics.ApplyChanges(); base.Initialize(); } protected override void LoadContent() { // Create a new SpriteBatch, which can be used to draw textures. spriteBatch = new SpriteBatch(GraphicsDevice); Services.AddService(typeof(SpriteBatch), spriteBatch); txtBackground = Content.Load(“background”); txtEnemy = Content.Load(“enemy”); txtMe = Content.Load(“me”); txtWall = Content.Load(“wall”); //Вызываем процедуру расстановки объектов в игровом окне AddSprites(); // TODO: use this.Content to load your game content here } //Процедура расстановки объектов в игровом окне void AddSprites() { //Переменные для временного хранения адреса //объекта-игрока int a = 0, b = 0; //Просматриваем массив Layer for (int i = 0; i < 8; i++) { for (int j = 0; j < 10; j++) { //Если элемент с индексом (i,j) равен 1 - //устанавливаем в соответствующую позицию элемент с //номером 1, то есть - стену if (Layer[i, j] == 1) Components.Add(new GameObj.Wall(this, ref txtWall, new Vector2(j, i), recSprite)); if (Layer[i, j] == 5) Components.Add(new GameObj.Enemy(this, ref txtEnemy, new Vector2(j, i), new Rectangle(0, 0, 32, 32))); //Если обнаружен объект игрока - запишем его координаты if (Layer[i, j] == 6) { a = i; b = j; } } } //Последним установим объект игрока - так он гарантированно //расположен поверх всех остальных объектов Components.Add(new GameObj.Me(this, ref txtMe, new Vector2(b, a), new Rectangle(0, 0, 32, 32))); } protected override void UnloadContent() { } protected override void Update(GameTime gameTime) { base.Update(gameTime); } protected override void Draw(GameTime gameTime) { spriteBatch.Begin(); //выведем фоновое изображение spriteBatch.Draw(txtBackground, recBackround, Color.White); //Выведем игровые объекты base.Draw(gameTime); spriteBatch.End(); } } }Листинг 12.1. Код класса Game1

Источник: http://www.intuit.ru/studies/curriculums/15889/courses/251/lecture/6456

Искусственный интеллект научился исследовать “умы” других компьютеров

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

Теперь компьютерные ученые создали искусственный интеллект (AI), который может исследовать «умы» других компьютеров и предсказывать их действия, первый шаг к текущему сотрудничеству между машинами, а также между машинами и людьми.

«Теория разума, несомненно, является решающей способностью», – говорит Элисон Гопник, психолог развития Калифорнийского университета в Беркли, которая не принимала участия в работе.

Примерно к 4 годам дети понимают, что убеждения другого человека могут расходиться с реальностью и что эти убеждения могут использоваться для прогнозирования будущего поведения человека.

Некоторые из современных компьютеров могут определять выражения лица, такие как «счастливый» или «сердитый» – умение, связанное с теорией разума, – но они мало понимают человеческие эмоции или то, что мотивирует нас.

Новый проект начался как попытка заставить людей понимают компьютеры. Многие алгоритмы, используемые ИИ, не полностью написаны программистами, но вместо этого полагаются на машинное “обучение”, поскольку оно последовательно решает проблемы.

Полученные компьютерные решения часто являются черными ящиками, с алгоритмами, слишком сложными для проникновения человеческого понимания.

Итак, Нил Рабиновиц, ученый-исследователь DeepMind в Лондоне, и его коллеги создали теорию разума, AI под названием “ToMnet“, который наблюдал за работой других AI.

Обратите внимание

ToMnet состоит из трех нейронных сетей, каждая из небольших вычислительных элементов и соединений, которые учатся на опыте, слабо напоминающем человеческий мозг. Первая сеть изучает тенденции других AI на основе их прошлых действий. Второй формирует понимание их “убеждения.” И третий делает вывод из двух других сетей и, в зависимости от ситуации, прогнозирует последующие ходы AI.

Изучаемые AI были простыми персонажами, перемещающимися по виртуальной комнате, собирая цветные коробки. ToMnet наблюдал за комнатой сверху. В одном тесте было три “вида” характера: никто не мог видеть окружающую комнату, не мог вспомнить свои последние шаги.

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

После некоторого обучения ToMnet смог не только определить вид персонажа всего за несколько шагов, но и правильно предсказать его будущее поведение, сообщили исследователи в этом месяце на Международной конференции по Машинному обучению в Стокгольме.

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

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

Гопник говорит, что это исследование—и еще одно на конференции, которое предложило AI предсказать поведение другого AI на основе того, что они знают о себе,—являются примерами “поразительной” способности нейронных сетей самостоятельно изучать навыки. Но это все еще не ставит их на тот же уровень человеческих детей, говорит она, кто, вероятно, пройдет эту ложную задачу с почти совершенной точностью, даже если бы они никогда не сталкивались с ней раньше.

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

Важно

Он говорит, что ToMnet более эффективно воспринимает убеждения, чем система его команды, которая основана на более абстрактной форме вероятностных рассуждений, а не нейронных сетей.

Но понимание ToMnet более тесно связано с контекстами, в которых он обучен, добавляет он, делая его менее способным предсказать поведение в радикально новых средах, как это может сделать его система или даже маленькие дети. В будущем, по его словам, объединение подходов может стать полем «в действительно интересных направлениях».

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

Источник

Источник: https://golos.io/ru–nauka/@lisak/ru-iskusstvennyij-intellekt-nauchilsya-issledovatx-umy-drugikh-kompxyuterov

Ссылка на основную публикацию