Совершенный ИИ для стратегической игры — возможен ли?
У нас с друзьями возник спор по поводу принципиальной возможности создать для стратегической игры (например, для Героев или Цивилизации) ИИ, который будет невозможно обыграть.
Позиция моих друзей сводится к тому, что разумеется это возможно, но этого никто не делает просто потому, что а) игры делаются для детей, которым крутой ИИ не нужен, б) это бессмыссленно, так как всё равно игры покупают только из-за графики, в) если написать крутой ИИ для игры, никто не захочет покупать новые игры и т. д. Также в качестве примера приводятся шахматы, в которых комп действительно научили играть очень хорошо.
Я, на основе своего небольшого опыта написания ИИ для игрушек, считаю что решить данную задачу практически не реально. Разумеется, компьютер можно научить кое-какой тактике и стратегии, но вытащить его на уровень опытного игрока-человека с присущей ему обучаемостью, гибкостью и изобретательностью не получится. И поэтому рано или поздно (причём скорее рано) человек найдёт способ переиграть любого компа.
Чтобы разобраться в этом вопросе, хотелось бы узнать мнение старших товарищей. Может быть, все проблемы ИИ уже решены, и только я об этом не знаю? 🙂 Ссылки на источники по теме тоже приветствуются.
#1
1:04, 26 июня 2006
Он возможен, но не везде 🙂
Можно написать ИИ, который нельзя будет обыграть, только для игры, у которой возможна «идеальная» тактика. Если же идеальная тактика зависит от тактики оппонента (т.е. для выбора идеальной тактики необходимо знать выбранную тактику оппонента), тогда нет. Ибо оппонент может повести себя так, как захочет.
#2
1:15, 26 июня 2006
Тактика компа должна быть оригинальной и разнообразной ибо играть будет не интересно.
#3
8:11, 26 июня 2006
возьмем к примеру ИИ старкрафта. логика — тупее не бувает. тем не менее он может обыграть даже 2 людей. вывод — перещщот всех возможных варянтов нужен. как в шахматах.
З Ы аппаратные требования на мну не валить)))
#4
9:03, 26 июня 2006
чаще всего это возможно, так что придерживаюсь позиции твоих товарищей.
в старкрафте аи специально тупили, видимо переборщили 🙂
#5
11:43, 26 июня 2006
Возможен не значит реализуем на практике или интересен.
#6
13:34, 26 июня 2006
VoidEx
Согласен, разумеется имелась в виду нетривиальная игра, где практически любую фиксированную стратегию можно свести на нет, например, нарисовав определённую карту.
Domkrat282
Когда я последний раз играл в Старкрафт, у компа не было со мной никаких шансов один на один. 🙂 Вот с двумя компами — это да, получалась жаркая борьба.
variant
ОК, спасибо за мнение, хотя в перую очередь интересуют пошаговые игры, чтобы можно было не учитывать преимущество компа в скорости щёлканья мышкой. Кстати, откуда информация, что в Старкрафте ИИ тупили специально?
Aerton
По поводу интересности — согласен, и всё же, имея сильный движок, гораздо проще реализовать на нём различные уровни сложности (вплоть до «impossible», где комп играет в полную силу) или, скажем, индивидуальные особенности противников. А если нормального движка нет, то и варьировать особенно нечего.
По поводу «возможен vs. реализуем на практике» не очень понял что имеется в виду. Мой вопрос именно про реализуемость на практике.
#7
15:57, 26 июня 2006
Ну суть в том какие знания компу давать, видимость карты например, если он будет все видеть все знать то тогда можна будет сделать довольно тупой но в тоже время ефективный ии, а если ограничить уровнем знания как и у человека, то ессно идеального не получиться, и еще остаеться такой момент как микро, оссобенно заметный в старкрафте и варкрафте, т.е. даже когда комп имеет кучу юнитов которые хзорошо мочат то что есть у тебя но ты можеш за счет микро ег оспокойно перебить.
#8
16:06, 26 июня 2006
Wolfaka
Я исхожу из того, что комп располагает в точности той же информацией, что и человек, и никаких гандикапов в его пользу нет. Только в этом случае со стороны компа будут по-настоящему «человекоподобные» тактики (с разветкой, контролем территории и т. д.). Что касается микроменеджмента в RTS, то он по идее в пользу компа, если конечно тот будет этим пользоваться. Например, компу ничего не стоит в мешанине войск отдать всем единицам, находящимся рядом с одной из моих, приказ мочить именно её, когда она погибнет — следующую и т. д. А мои в это время будут месить кого попало, и при прочих равных сольют.
#9
16:27, 26 июня 2006
RudankortНу в варкрафте(я в него играю на серезном уровне точнее играл, в етом году был на европе 35ый лвл так что имею представление как играть надо) попытались сделать компу чтото вроди микро. но всеравно я дескнайтом+5 сабак со спакойной душой разберу архимага+4 футмана, хоть и футман в начале намного сильнее сабаки, и плюс есть елементали, но играя с человеком ето сделать пачти невозможно.
А если компьютер не имеет никакого гандикапа, то тут решает разведка, и плюс должен быть копмьютер обучаемый что б по зданиям и по билдордеру соперника соображать в какую страту он пайдет, а ето уже проблема имхо, так как имхо заставить компьбтер правильно реагировать на нестандартные страты крайне сложна.
#10
17:50, 26 июня 2006
это называется «точное решение задачи». Для игр не использующих случайных чисел точное решение существует — другой вопрос что например для тех же шахмат его практически нельзя получить. Для игр использующих случайные чилса точное решение получить нельзя. Любое решение есть лишь оптимизация игрового процесса.
Другой вопрос что написать ИИ учитывающий (при этом грамотно) в разы большее число факторов чем человек написать можно. И действительно для человека такой ИИ например будет практически нереально обойти — но это всё равно оптимизация, а не абсолют.
#11
18:12, 26 июня 2006
Kernel
Замечание по существу. В условиях неопределённости (когда танки обламываются на фалангах в стиле Цивилизации) гарантировать результат вряд ли возможно. И всё-таки — откуда такая уверенность, что «написать ИИ учитывающий (при этом грамотно) в разы большее число факторов чем человек написать можно»? Существует ли пример такого ИИ, созданного на практике, или какие-то теоретические наработки? Не проживёт ли такой ИИ, учитывающий множество факторов, только до обнаружения первой «дыры» в алгоритме, не учтённой его разработчиками (типа постройки сплошной стены вокруг вражеского таунхолла в Варкрафте, на что разработчики «ну никак не рассчитывали»)?
#12
9:55, 27 июня 2006
Случайный исход событий просто делает дерево возможных решений более ветвистым. Ведь действия противника точно так же «случайны» и неуправляемы.
Под «реализуем на практике» я имел в виду то, что этот совершеный алгоритм будет иметь приемлемую производительность. Например, написать оптимальный алгоритм для шахмат просто перебором — задача несложная, но время его выполнения будет измеряться, наверное, даже не в годах. Стратегические игры обычно гораздо сложнее. Вероятно, в каких-то играх «совершенный» алгоритм невозможен в принципе и речь может идти только о «наилучшем».
А на счёт его неинтересности — например в какой-то момент времени выгодно построить 750 чахлых юнитов и разбросать их по карте. Будет ли игроку интересно кликать как минимум 750 раз, особенно когда потеря внимательности хотя бы раз может привести от гарантированой победы к полному поражению? Или он может уклоняться от боя, бегая кругами 127 ходов, потому что на 128 у него появится преимущество в 0.5%
Дыры в алгоритме противоречат определению «совершенный».
#13
11:46, 27 июня 2006
Ещё раз — точное решение значит что и играть не надо — в стартовый момент известно кто победил: упрощённый пример игра в 100 когда каждый по очереди добавляет к числу своё от 1 до 10 и побездает тот кто получил 100. Достаточно знать чей первый ход и по этому можно определить кто победит (если оба играют правильно).Но если вы добавляете 1..10 + величина выпавшая на кубике — точного решения нет, только какие-то оптимизации (хотя в данном случае и оптимизаций то по сути никаких :)).
Так можно получить решение для любой игры. Т.Е. если столькнуть лбами два «абсолютных ИИ» то победу можно просмотреть сразу.
Rudankort
>> откуда такая уверенность .
Банально: игровой мир описываетс дискретной моделью могущей пребывать в конечном(хотя и большом) числе состояний . занчит в пределе мы можем построить оптимальну цепочку развития для каждого состояни. то что на практике мы будем учитывать меньше это другой вопрос.
Если для каждого возможного состояния прощитаны все ветви, ИИ проиграет только если сильно не повезёт .
А вопрос ведь был в «принципиальной возможности» а не в практической реализации 😉
#14
12:14, 27 июня 2006
На каждый «совершенный» ИИ найдется свой совершенный мозг 🙂
Ничего совершенного не бывает
Источник: gamedev.ru
Как сделать ИИ для Warcraft 3 — Создание AI
#Warcraft3FrozenThrone #Warcraft3 #ShadowSPR С помощью данного видео, вы сможете за несколько минут написать свой собственный скрипт AI или ИИ для Warcraft 3 Оформляйте Спонсорство и получайте в 3 раза больше бонусов: youtube.com/channel/UCC7o6yGmyLLj-aXivyPGiWA/join Донат: donationalerts.com/c/shadowmanstar
Кадры из видео
Источник: vkway.ru
Warcraft создание своей доты
Всем привет и снова с вами CerebrumСhannel . И мы проддолжаем играть в разные игрушки=) Группа помощи warcraft’a 3 .
Создание своей доты в Warcraft III #2
wyświetleń 180 7 lat temu
В этом ролике я продолжу делать свою доту в Варкрафт.
Создание своей доты в Warcraft III #3
wyświetleń 220 7 lat temu
В этом ролике я продолжу делать свою доту в Варкрафт.
Урок 4 — Cоздание карты в warcraft 3.Создание своей доты
wyświetleń 53 6 lat temu
Это дополнение к «Урок 3» Ссылка на урок 3 : plclip.com/video/qtN260yUU50/wideo.html Не судите строго что я .
КАК СОЗДАТЬ СВОЮ ДОТУ в World Edit? [WARCRAFT 3 Урок №1: Спавн крипов]
wyświetleń 10K 5 lat temu
Как же создать свою Доту в World Edit редакторе карт Варкрафт 3? Все очень просто! В этой серии уроков вы научитесь .
КЕМ БЫЛИ ГЕРОИ ДОТЫ В ВАРКРАФТЕ? | ПРОТОТИПЫ ГЕРОЕВ ДОТЫ
wyświetleń 396K 6 miesięcy temu
#seregga #прототипыгероев #варкрафтдота Discord: discord.gg/mJCj54mq7S Телеграм канал: t.me/sereggadota .
Источник: plclip.com