Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Игровые алгоритмы, AI и прочее... / 25 сообщений из 32, страница 1 из 2
16.09.2006, 18:16
    #33992004
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
Добрый день, уважаемые скрулисты. Поделитесь соображениями, насколько далеко шагнула
разработка искусственного интеллекта (AI) в компьютерных играх нашего поколения.

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

В шутерах доходит до смешного. Два бота лежат на земле на расстоянии 2 м
и методично палят друг в друга из снайперских винтовок, попадая в маленький холмик
на линии огня. Неужели такая ситуация не компрометирует игру в глазах
программистско-геймерской общественности?

Поделитесь соображениями.
...
Рейтинг: 0 / 0
16.09.2006, 18:37
    #33992029
Aklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
если играет хорошо, то мне пох, что там внутри
...
Рейтинг: 0 / 0
16.09.2006, 18:38
    #33992030
Aklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
да и к тому же легче 1 раз записать скрипты, чем это все программировать.
...
Рейтинг: 0 / 0
16.09.2006, 18:42
    #33992031
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
Удивительно, что пользователь это все видит, терпит, и ему как будто-бы даже
наплевать на то, что играет в усложненный диггер. Наоборот. Некоторым даже
нравится валить босса став за стеночкой и тыкая его (бедного) бензопилой
сквозь нее (стену). У меня-же такой подход к игровому досугу вызвает приступы зевоты.

Помнится мы с друганом любили выпустить пар в дуэли на одной из Quake3-арен.
И вот, что я заметил. С челом не прокатывает убийство в одинаковых условиях.
Бота-же можно валить и двадцать и тридцать раз в одном и том-же месте из
одного и того-же оружия. Грустно.

RPG - отдельная история.

Скажите пожалуйста. Что за интерес - просиживать в прокачке до тех пор
пока не станешь (по скилам) сисадмином на карте. Это-ж скука смертельная! Хочется лишний раз проверить законы арифметики?

Вообще возникает вопрос? А не пора-ли свернуть разработку в новое русло. А именно - форсировать книжки по передовым исследованиям в NN и GA.
...
Рейтинг: 0 / 0
16.09.2006, 19:43
    #33992065
Aklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
согласен

играл в казаки, с начала с кодами, но позже, когда полностью развивался приходилось туго: 9 из 10 минут тратил на чит "ресурсы"

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

так вот. когда я создаю армию (огромную) и сажая на корабли, дальше играть не интересно: еще 1-4 часа ждать, пока твое войско "просто ляжет" на врага и все.

давно играл в зевса (аналог современного цезаря 4 ) так вот дошел я там до предела: если в начале игры дают 22000 денег, то я добился аж 1 000 000, и деньги только росли.ю
я продавал все и покупал все, грёб деньши отовсюду.

мог угрохать состояние на перенос поселка ( 10 домиков + куча служб ) тольк для того, чтобы уменьшить занимаемый размер на 10-20%. для того, чтобы занять лишнюю раьочую силу, удалял самые большие храмы и строил заново.
всегда в запасе (там был тупой промысел - рабочая гильдия, которая только храмы строила и все, а жрала 25 человек на домик ) держал 2000 из 12000 рабочих, мог быстро их удалить и получить резерв, только девать их было некуда.

в 3D не сразу надоели только zbot да и то, после сетевых баталий и это бросил

да и мейчас мало играю: все моментально надоедает.

вопрос : а как ты хочешь сделать, если тебе нужет супер бот + всего 0.1% от полной производительности?
...
Рейтинг: 0 / 0
16.09.2006, 19:44
    #33992066
Aklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
и все же, разработки научного АИ жрут всю произодительность на пару действий.
а ты должен за невероятно малую мощность сделать кучу ботов.
...
Рейтинг: 0 / 0
16.09.2006, 23:13
    #33992165
Mike_za
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
А кто пользователь то? целевая аудитория тины... и они в массе своей видят графияечкий движок, а вот когда к нему уже привыкнешь тогда будем смареть на АИ

и мощность в основном щас жрет тоже движок, а не АИ
...
Рейтинг: 0 / 0
16.09.2006, 23:18
    #33992169
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
Не совсем так... видите-ли в природе, системы, принимающие решения занимают размеры в тысячи раз меньше, чем современный ПК, и потребляют на порядки меньше энергии.

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

Необходимы годы работы, чтобы убедить девелоперов уходить от четкой логики АИ в сторону нечеткой. Необходимы споры, дискусси, форумы, чтобы выработать методы (или методологии).

Теоретический материал есть. Это и работы Минского, Гроссберга, Розедблатта, Хопфилда. Надо всего-лишь разобратся и понять как это работает и как это применить. Формула обучения простейшей нейро-сети проста. Ее может закодить студент-первокурсник.... но... как сформировать входные параметры? Как их предобработать? Какие выбрать коэффициетны обучения? И наконец - как ДАТЬ МАТЕРИАЛЬНЫЙ СМЫСЛ сигналам на выходе НС? Вот в чем главный вопрос. Это и есть предмет дискуссий для форумов игровой логики.

Сорри за длинный пост.

Иначе не смог-бы высказатся.
...
Рейтинг: 0 / 0
16.09.2006, 23:29
    #33992177
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
Добавлю.

По поводу графики. Есть несколько замечаний. Обидно, что мат-аппарат, который используется для рендеринга достаточно примитевен. Эта та-же полигональная графика, которую я видел в 1997 году в первых ускорителях. Забавно, но, чтобы нарисовать сферическую или цилиндрическую поверхность ее предварительно аппроксимируют кусочно-линейными функциями (полигонами) и отрисовывают. Не проще было-бы НАУЧИТЬ новые камни nVidia и Radeon просто рисовать их в первозданном виде.

Вы скажите - дескать формула сложна. Ха! Не смешите. Я кодил на 2 курсе университета подобные вещи. Могу ткнуть пальцем в игру DOC-овских времен (кажется называлась Ecstatica), в которой сферические поверхности рендерились в реальном времени. Собственно из них компоновались модели персонажей. И все это работало в VGA на 486 машинах.

То-же самое касается и NURB-поверхностей. Хотя для них формула будет посложнее.
...
Рейтинг: 0 / 0
16.09.2006, 23:53
    #33992185
Mike_za
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
авторЗабавно, но, чтобы нарисовать сферическую или цилиндрическую поверхность ее предварительно аппроксимируют кусочно-линейными функциями (полигонами) и отрисовывают. Не проще было-бы НАУЧИТЬ новые камни nVidia и Radeon просто рисовать их в первозданном виде.

А вы уверены что камни этого еще не умеют... а вот разработчики графических библиотек типа OpenGl тормозят? (я не утверждаю, я спрашиваю)
Или камни как заточили на полигоны.... хрен знает когда, так и оставили, укоряя частоты, и повышая их количество... А че?! универсально... и новые железки расхватывают) а вот пихнете вы ваши три десятка уравнений, замените интенсивный подход на экстенсивный - и кто будет ускорители покупать?
...
Рейтинг: 0 / 0
16.09.2006, 23:54
    #33992187
Mike_za
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
сорри... описался)) экстенсивный на интенсивный
...
Рейтинг: 0 / 0
17.09.2006, 11:39
    #33992338
Aklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
насколько я помню:
-вы видите плоскость
-фактически программисты работают с 3д схемой
-последние платы, да и не самые последние сами ресуют сферы.

электронные собаки не кусают и не зарывают кости, а лишь распознают лицо и ходят за хозяином (100 - 400 мГерц)

кроме того, количество сфер достигает миллионов, оссобенно на больших полигонах (тот же GTA) и почти во всех играх полигоны стараются уменьшить: в GTAVC когда едешь через границу кварталов на слабых машинах будет "прогесс" загрузки следующего квартала, (тривиально : поставьте в GTASA на максимум и проедте через границы кварталов на 1ГГц)

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


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

коэфициэнты обучения подбираются тем же обучением среди 1000 ботом на майнфреймах за пару месяцев.

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

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

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

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

да и конечный потребитель не очень то обрадуется, если бот встанет и будет на него смотреть.
или если бот сразу будет юзера убивать.
...
Рейтинг: 0 / 0
17.09.2006, 15:23
    #33992562
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
maytonПомнится мы с друганом любили выпустить пар в дуэли на одной из Quake3-арен.
И вот, что я заметил. С челом не прокатывает убийство в одинаковых условиях.
Бота-же можно валить и двадцать и тридцать раз в одном и том-же месте из
одного и того-же оружия. Грустно.меня в кваке достаточно прокачанный чел тоже может убить где угодно и чем угодно. Грустно. А что делать?

maytonЭто ж скука смертельная!вырос ты из игрушек, батька, вырос. Поищи себе что-нить другое.

maytonУдивительно, что пользователь это все видит, терпит, и ему как будто-бы даже наплевать на то, что играет в усложненный диггер.когда мне не нравится чужой велосипед, я делаю свой :) Кстати, диггер - это вариант :)
...
Рейтинг: 0 / 0
17.09.2006, 15:39
    #33992571
Aklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
(как вывод)
детки выросли и стали разбирать игрушки
...
Рейтинг: 0 / 0
17.09.2006, 21:02
    #33992795
Den_di
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
Какой может быть АИ на столь примитивных компьютерах. Тут даже в шахматах или в гомоку комп 4-5 секунд думает, а чтобы 65536 ходов в секунду? это же смешно. Линейное планирование и ваполнение N мерной задачи на линейной системе. Пока нет квантовых компов интеллекта не будет и в помине.
...
Рейтинг: 0 / 0
17.09.2006, 21:16
    #33992801
DarkSquid
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
Den_diПока нет квантовых компов интеллекта не будет и в помине.

Можно просто наплодить ядер, одновременно увеличив тактовую частоту. И нет проблем! Квантовые компы в пролёте.
...
Рейтинг: 0 / 0
18.09.2006, 00:22
    #33992868
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
Mike_za
А вы уверены что камни этого еще не умеют... а вот разработчики графических библиотек
типа OpenGl тормозят? (я не утверждаю, я спрашиваю)


Надо посмотреть спецификации OpenGL. Там есть функции для генерации сферы,
но они реализованы через API генерации полигонов.
Однако ни в одной игре я еще не видел аналитически-оттрассированной сферы на уровне микрокоманд самого чипа.


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


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

Возможно, что декомпозиция статичных обьектов правильной формы (здания, сооружения, камни)
на полигоны - это удобно. По крайней мере в таком виде данные очень легко обрабатывать
конвейером линейных трансформаций, но как быть с ДВИЖУЩИМИСЯ ОБЪЕКТАМИ природной формы?

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

Допустим, игровой персонаж имеет детальную мимику лица и пластику тела. Движение
персонажей в современных 3D играх моделируется через скелетные (bones) модели
на которые натянута кожа и поверх - одежда. Игровой engine двигает скелетную
модель персонажа... и вслед за ней должны двигатся тысячи (десятки тысяч)
nodes (на которые натянуты полигоны). А координаты nodes должны вычислятся
основным CPU на основании bones-модели. Я не знаю какая формула применяется
для интерполирования nodes. Но скорее всего это soft-NURB. Т.е. рендеринг
гибких обьектов природной формы на 90% свален на плечи основного CPU.

Это породило нелепую и ненужную технологию LOD (LevelOfDetalisation), смысл
которой заключается в том, что для каждой модели персонажа создается
несколько копий с уменьшенным количеством полигонов. Это необходимо, чтобы
хоть как-то разгрузить конвейер полигонов освободив от детального рендеринга
удаленных на большое расстояние обьектов (сцены боевых баталий).

Использование-же аппартного рендерига кривых поверхностей NURB (кстати
сфера и цилиндр являют собой их частные случаи) позволит если не полностью
решить проблему, то хотя-бы разгрузить CPU. А это и есть ИНТЕНСИВНЫЙ путь
развития.




Aklin
-последние платы, да и не самые последние сами ресуют сферы.


Может вы имеете в виду particles? Но они не текстурируются и их возможности
сильно ограничены.


Aklin
электронные собаки не кусают и не зарывают кости, а лишь распознают лицо и ходят за хозяином (100 - 400 мГерц)


Это первый шаг ИМХО. Будущее за процессорами, которые будут моделировать
не АЛУ с регистрами и памятью, а набор нейронов.

Но.. не спешите меня критиковать за "левый уклон". Классическая машина
Фон-Неймана останется. Она по прежнему будет "рулить" точной арифметикой
и обработкой данных. Но на более верхнем уровне (приняте решений в условиях
неопределенности прогнозировании и распознавании образов) будет стоять
NN-CPU.


кроме того, количество сфер достигает миллионов, оссобенно на
больших полигонах (тот же GTA) и почти во всех играх полигоны
стараются уменьшить: в GTAVC когда едешь через границу кварталов
на слабых машинах будет "прогесс" загрузки следующего квартала,
(тривиально : поставьте в GTASA на максимум и проедте через
границы кварталов на 1ГГц)


Ну... что-ж. Я к сожалению не играл в GTA. Но я более чем уверен, что
всегда существует оптимальное соотношение ИГРАБЕЛЬНОСТЬ и МИН.ТРЕБОВАНИЙ.

Я помню времена, когда 16 цветная EGA графика казалась верхом совершенства.

Кстати, для сцен автогонок существуют свои методы оптимизации. Их использовали
в soft-рендеринге во времена MS-DOS. Могу рассказать, если интересно.


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

коэфициэнты обучения подбираются тем же обучением среди 1000 ботом
на майнфреймах за пару месяцев.

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


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


на пару умнейших ботов вам потребуются терабайты оперативки.

Есть принципиальный момент. Ёмкость нейросети (НС) НЕ ИЗМЕРЯЕТСЯ в байтах
или битах. Собственно.. к ней такой критерий вообще сложно
применить в силу того что НС является АНАЛОЛГОВОЙ а не дискретной ВМ.

Дискретность приобретет смысл когда бот будет принимать решение. Но
в этом случае речь не идет о терабайтах. Цифра будет на несколько порядков
скромнее.

Как вы будете хранить коэффициенты НС в памяти это уже другой вопрос.
Но я более чем уверен что для моделирования поведения бота терабайты
не потребуются. Кроме того здесь мы имеем большой запас для манёвра.
Ведь коэффициенты можно хранить в виде чисел различной разрядности
и т.п.
...
Рейтинг: 0 / 0
18.09.2006, 09:09
    #33993041
Aklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
mayton Aklin
-последние платы, да и не самые последние сами ресуют сферы.


Может вы имеете в виду particles? Но они не текстурируются и их возможности
сильно ограничены.

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

mayton
Aklin
электронные собаки не кусают и не зарывают кости, а лишь распознают лицо и ходят за хозяином (100 - 400 мГерц)


Это первый шаг ИМХО. Будущее за процессорами, которые будут моделировать
не АЛУ с регистрами и памятью, а набор нейронов.

до нейронов еще далековато...

mayton
Но.. не спешите меня критиковать за "левый уклон". Классическая машина
Фон-Неймана останется. Она по прежнему будет "рулить" точной арифметикой
и обработкой данных. Но на более верхнем уровне (приняте решений в условиях
неопределенности прогнозировании и распознавании образов) будет стоять
NN-CPU.

у меня слегка другая теория (а может траыва хорошая):
будет 1 ядро из тысяч микропроцессоров, причем каждый мп имеет связь с единой памятью и 16 другими мп. и каждый имеет очень маленький объем памяти, скажем 1Кб. объединение скажем 1000 таких МП дадут цикл,который со своими 16 выходами для условных переходов будет (цикл) весьма быстр.
основная память - общая, что-нибудь на световых волнах. на пару терабайт сразу.

mayton

кроме того, количество сфер достигает миллионов, оссобенно на
больших полигонах (тот же GTA) и почти во всех играх полигоны
стараются уменьшить: в GTAVC когда едешь через границу кварталов
на слабых машинах будет "прогесс" загрузки следующего квартала,
(тривиально : поставьте в GTASA на максимум и проедте через
границы кварталов на 1ГГц)


Ну... что-ж. Я к сожалению не играл в GTA. Но я более чем уверен, что
всегда существует оптимальное соотношение ИГРАБЕЛЬНОСТЬ и МИН.ТРЕБОВАНИЙ.

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

mayton
Не согласен. Сегодня нейросеть используется в системах видеонаблюдения
в продвинутых аэропортах для идентифиации личностей. И реализуется
она на элементной базе обычной рабочей станции.

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

mayton

на пару умнейших ботов вам потребуются терабайты оперативки.

Есть принципиальный момент. Ёмкость нейросети (НС) НЕ ИЗМЕРЯЕТСЯ в байтах
или битах. Собственно.. к ней такой критерий вообще сложно
применить в силу того что НС является АНАЛОЛГОВОЙ а не дискретной ВМ.

дело в том, что когда тот же бот игры крестики-нолики на большом поле думает, он много сжирает памяти, и на нейросетях одновременное хранение более миллиона комбинаций врядли удержится за менее чем 5Мб (чего я в лучшем случае пока добился)

mayton
Дискретность приобретет смысл когда бот будет принимать решение. Но
в этом случае речь не идет о терабайтах. Цифра будет на несколько порядков
скромнее.

интересно. а почему же телевидение с аналоговога на цифру переходит?
и фотоаппараты, телефоны, и многое другое?

mayton
Как вы будете хранить коэффициенты НС в памяти это уже другой вопрос.
Но я более чем уверен что для моделирования поведения бота терабайты
не потребуются. Кроме того здесь мы имеем большой запас для манёвра.
Ведь коэффициенты можно хранить в виде чисел различной разрядности
и т.п.

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

так что в недалеком будущем, когда появятся нейросети, обычные алу смогут осились игры такой реальности, что позавидовать действительности можно будет.
...
Рейтинг: 0 / 0
18.09.2006, 11:49
    #33993422
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
Den_diПока нет квантовых компов интеллекта не будет и в помине.они ж, вроде, годятся только для взлома шифров?
...
Рейтинг: 0 / 0
18.09.2006, 15:45
    #33994413
Den_di
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
maXmo Den_diПока нет квантовых компов интеллекта не будет и в помине.они ж, вроде, годятся только для взлома шифров?
Квантовые компьтеры позволяют производить вычисления сразу всех исходов. Линейные модели - только одного. И регистр квантового компьютера содержит не одно из 2^N значений, а все сразу и оперирует над всеми сразу(что-то вроде суперпозийии полей). Или нейросеть: там нет линейных процессов. Всё линейное непригодно для построения думающего, т.к мышление учитывает множество факторов и раэбирает по вероятности их (одна из концепций).
так что АИ пока невозможен в принципе даже на кластерном компьютере
...
Рейтинг: 0 / 0
18.09.2006, 18:47
    #33995058
-----------
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
Вообще-то проблема не в том, чтобы сделать бота умнее,
а в том, чтобы его сделать чуть глупее пользователя (а они разные).
И сохранять это соотношение при росте мастерства.
...
Рейтинг: 0 / 0
19.09.2006, 10:42
    #33995919
maXmo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
для этого достаточно считать время между чекпоинтами, количество смертей юзера и тюнить в зависимости от этого сложность, мне пока не попадались игры с авторегулировкой сложности. Только в DMC3 после третьей смерти на Цербере сказали, что теперь доступен лёгкий уровень сложности.
А вообще, ботам, имхо, ии не нужен, достаточно их нормально заскриптовать, внести небольшой рандом.
...
Рейтинг: 0 / 0
20.09.2006, 09:15
    #33998533
Crazzy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
Имхо, любая игра, прежде всего, ценится не за ИИ компа, а за играбельность мультиплеера (те же РПГ)
...
Рейтинг: 0 / 0
29.09.2006, 04:05
    #34020641
ErV
ErV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
maytonДобавлю.

По поводу графики. Есть несколько замечаний. Обидно, что мат-аппарат, который используется для рендеринга достаточно примитевен. Эта та-же полигональная графика, которую я видел в 1997 году в первых ускорителях. Забавно, но, чтобы нарисовать сферическую или цилиндрическую поверхность ее предварительно аппроксимируют кусочно-линейными функциями (полигонами) и отрисовывают. Не проще было-бы НАУЧИТЬ новые камни nVidia и Radeon просто рисовать их в первозданном виде.

Вы скажите - дескать формула сложна. Ха! Не смешите. Я кодил на 2 курсе университета подобные вещи. Могу ткнуть пальцем в игру DOC-овских времен (кажется называлась Ecstatica), в которой сферические поверхности рендерились в реальном времени. Собственно из них компоновались модели персонажей. И все это работало в VGA на 486 машинах.

То-же самое касается и NURB-поверхностей. Хотя для них формула будет посложнее.
Я на шейдерах такую фишку делал. Двумя треугольниками на радеон9100 можно нарисовать идеальный круг. На более мощном (шар) - шар, циллиндр и т.д. Камни учить этому не надо.
На графику у народа бзик какой-то(ИМХО), по-моему технологии впаривают и все. В той же халфе 90% те же самые лайтмэпы из второй кваки с небольшим постпроцессингом.

Кстати - была демка, называлась "Still sucking nature" - реал тайм рейтрейсинг, ускоритель не требуется.


-последние платы, да и не самые последние сами ресуют сферы.

Не рисуют. В 3D (с ускорителем) есть понятие полигон(треугольник) и все. Все остальное только им и рисуется.


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

Не спец по нейросетям, но из того, что видел - лажа полная. Берется кусок "ткани" и в него вбиваются условные рефлексы. До трушного АИ далеко.


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

Графические карты медленнее. Просто бОльшая часть скорости от передачи данны теряется на точке подключения видюхи к материнке/системной шине. А в видеокарте никакого подключения не надо.


Какой может быть АИ на столь примитивных компьютерах. Тут даже в шахматах или в гомоку комп 4-5 секунд думает, а чтобы 65536 ходов в секунду? это же смешно. Линейное планирование и ваполнение N мерной задачи на линейной системе. Пока нет квантовых компов интеллекта не будет и в помине.

ИМХО - не в алгоритме дело, просто принцип не открыт ещё.


Возможно, что декомпозиция статичных обьектов правильной формы (здания, сооружения, камни)
на полигоны - это удобно. По крайней мере в таком виде данные очень легко обрабатывать
конвейером линейных трансформаций, но как быть с ДВИЖУЩИМИСЯ ОБЪЕКТАМИ природной формы?

Разбить на куски гладких поверхностей и аппроксимировать.


Я не знаю какая формула применяется
для интерполирования nodes.

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


Т.е. рендеринг
гибких обьектов природной формы на 90% свален на плечи основного CPU.

Вы, уважаемый, к сожалению, с ATI SDK не общались. Трава и прочее, включая костную анимацию, морф и т.д. можно считать шейдерами, разгружая ЦПУ. Как один мой знакомый говорил, "получается, что проц сидит и курит". На практике же, все процессорное время кушает HAVOC или иной физ движок.


Может вы имеете в виду particles? Но они не текстурируются и их возможности
сильно ограничены.
Ещё как текстурируются. Вам знакомо понятие "billboard" т.е. спрайт? Ими огонь и дым и изображаются. Есть ещё PointSprite - точка, размер которой зависит от коэффициентов и расстояния, у неё есть текстура.
И возможности у них ограничены только вычислительными мощностями процессора, так как их апдейт в шедйер пока никак не впихнуть.


Кстати, для сцен автогонок существуют свои методы оптимизации. Их использовали
в soft-рендеринге во времена MS-DOS. Могу рассказать, если интересно.

Интересно было бы с вами на эту тему пообщаться.


посление игры (кризив, лара крофт последняя) требуют плат, поддерживающих 3 поколение чего-то (забыл, искать влом) и фактически эти платы не то что сферы рисуют, я так понял, что они пол карты рисуют за пару асмовских команд. хотя может не так что-то понял.
Возможно, третью версию шейдеров? :)
Любую видеокарту можно загрузить под завязку, изменив один из алгоритмов отрисовки. Замените стандартного фонга на кука-торренса, и фпс упадет раз в пять.


Имхо, любая игра, прежде всего, ценится не за ИИ компа, а за играбельность мультиплеера (те же РПГ)

А я думал - за идею и композицию в целом. :)
...
Рейтинг: 0 / 0
29.09.2006, 04:05
    #34020642
ErV
ErV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Игровые алгоритмы, AI и прочее...
maytonДобавлю.

По поводу графики. Есть несколько замечаний. Обидно, что мат-аппарат, который используется для рендеринга достаточно примитевен. Эта та-же полигональная графика, которую я видел в 1997 году в первых ускорителях. Забавно, но, чтобы нарисовать сферическую или цилиндрическую поверхность ее предварительно аппроксимируют кусочно-линейными функциями (полигонами) и отрисовывают. Не проще было-бы НАУЧИТЬ новые камни nVidia и Radeon просто рисовать их в первозданном виде.

Вы скажите - дескать формула сложна. Ха! Не смешите. Я кодил на 2 курсе университета подобные вещи. Могу ткнуть пальцем в игру DOC-овских времен (кажется называлась Ecstatica), в которой сферические поверхности рендерились в реальном времени. Собственно из них компоновались модели персонажей. И все это работало в VGA на 486 машинах.

То-же самое касается и NURB-поверхностей. Хотя для них формула будет посложнее.
Я на шейдерах такую фишку делал. Двумя треугольниками на радеон9100 можно нарисовать идеальный круг. На более мощном (шар) - шар, циллиндр и т.д. Камни учить этому не надо.
На графику у народа бзик какой-то(ИМХО), по-моему технологии впаривают и все. В той же халфе 90% те же самые лайтмэпы из второй кваки с небольшим постпроцессингом.

Кстати - была демка, называлась "Still sucking nature" - реал тайм рейтрейсинг, ускоритель не требуется.


-последние платы, да и не самые последние сами ресуют сферы.

Не рисуют. В 3D (с ускорителем) есть понятие полигон(треугольник) и все. Все остальное только им и рисуется.


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

Не спец по нейросетям, но из того, что видел - лажа полная. Берется кусок "ткани" и в него вбиваются условные рефлексы. До трушного АИ далеко.


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

Графические карты медленнее. Просто бОльшая часть скорости от передачи данны теряется на точке подключения видюхи к материнке/системной шине. А в видеокарте никакого подключения не надо.


Какой может быть АИ на столь примитивных компьютерах. Тут даже в шахматах или в гомоку комп 4-5 секунд думает, а чтобы 65536 ходов в секунду? это же смешно. Линейное планирование и ваполнение N мерной задачи на линейной системе. Пока нет квантовых компов интеллекта не будет и в помине.

ИМХО - не в алгоритме дело, просто принцип не открыт ещё.


Возможно, что декомпозиция статичных обьектов правильной формы (здания, сооружения, камни)
на полигоны - это удобно. По крайней мере в таком виде данные очень легко обрабатывать
конвейером линейных трансформаций, но как быть с ДВИЖУЩИМИСЯ ОБЪЕКТАМИ природной формы?

Разбить на куски гладких поверхностей и аппроксимировать.


Я не знаю какая формула применяется
для интерполирования nodes.

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


Т.е. рендеринг
гибких обьектов природной формы на 90% свален на плечи основного CPU.

Вы, уважаемый, к сожалению, с ATI SDK не общались. Трава и прочее, включая костную анимацию, морф и т.д. можно считать шейдерами, разгружая ЦПУ. Как один мой знакомый говорил, "получается, что проц сидит и курит". На практике же, все процессорное время кушает HAVOC или иной физ движок.


Может вы имеете в виду particles? Но они не текстурируются и их возможности
сильно ограничены.
Ещё как текстурируются. Вам знакомо понятие "billboard" т.е. спрайт? Ими огонь и дым и изображаются. Есть ещё PointSprite - точка, размер которой зависит от коэффициентов и расстояния, у неё есть текстура.
И возможности у них ограничены только вычислительными мощностями процессора, так как их апдейт в шедйер пока никак не впихнуть.


Кстати, для сцен автогонок существуют свои методы оптимизации. Их использовали
в soft-рендеринге во времена MS-DOS. Могу рассказать, если интересно.

Интересно было бы с вами на эту тему пообщаться.


посление игры (кризив, лара крофт последняя) требуют плат, поддерживающих 3 поколение чего-то (забыл, искать влом) и фактически эти платы не то что сферы рисуют, я так понял, что они пол карты рисуют за пару асмовских команд. хотя может не так что-то понял.
Возможно, третью версию шейдеров? :)
Любую видеокарту можно загрузить под завязку, изменив один из алгоритмов отрисовки. Замените стандартного фонга на кука-торренса, и фпс упадет раз в пять.


Имхо, любая игра, прежде всего, ценится не за ИИ компа, а за играбельность мультиплеера (те же РПГ)

А я думал - за идею и композицию в целом. :)
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Игровые алгоритмы, AI и прочее... / 25 сообщений из 32, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]