Неетично робити гру AI, яка є таємно неконкурентною?


121

У кількох іграх AI розроблений, щоб дати гравцеві легкий час без їх відома. Це може мати 0% шансу вдаритись у перший раз, коли ви з'явитесь, ворог дозволить вам підкрастися до них, не обертаючись, або зниження труднощів, коли гравець травмований або перезапустився кілька разів.

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

Чи існує така ж етика для ШІ?

редагувати Як і в заголовку, головним моїм клопотом було збереження гандикапу, прихованого від гравця, наприклад, при грі в шутер розумно розраховувати, що гравець знає, що AI має штучний час реакції і погану мету, але моє питання стосувалося ігор, які приховуйте речі, такі як вороги, що не використовують найкращу зброю або знижують їх складність, коли гравця підстрахують.


14
Я відчуваю, що Рон Гілберт 1989 р. Чому Adventure Games Suck - цікавий прочит, навіть якщо ти працюєш в іншому жанрі. Такі принципи, як "the object of these games is to have fun", "the player needs to know that she is achieving"і "as a rule, adventure games should be able to be played from beginning to end without "dying" or saving the game if the player is very careful and very observant"повинні бути дуже застосовні при розробці ІС - включаючи ті, які "дозволяють" гравцю виграти.
Тобія Тесан

35
"Я був би ображений, якби наприкінці настільної гри чи спорту мені сказали, що людина не намагалася зробити все, що потрібно". Але це справедливо лише для супротивників приблизно однакової сили. ШІ і людина настільки різні, що важко порівняти. Візьмемо шахи. Якби я образився, кожного разу, коли алгоритм комп’ютерних шахів не намагався зробити все найважче, я втрачав би кожен раз.
Триларіон

17
Ви повинні переглянути, яка відповідь є хорошою ...
Олів'є Дулак

5
Більшість ШІ нереально легко перемогти. Наприклад, чому вороги в Маріо мають заданий шаблон руху? Це робить їх набагато легше перемогти! Як гравець, для мене ключовим є не те, чи я бив найжорсткіший можливий ШІ; це чи я був достатньо оскаржений і чи зможу я все-таки перемогти. Якщо виклик занадто малий або занадто великий, це вже не весело.
jpaugh

3
Це не зовсім AI, але в оригінальному Сапер (і більшість / всіх версій після), то міни не створюються до тих пір , після того, як ви натиснете на перший квадрат. Це робить буквально неможливим клацання шахти в перший же час. Я думаю, що це ідеальна демонстрація хорошої філософії дизайну ігор. Після цього першого клацання, якщо ви клацаєте шахту, ви програєте, гра закінчена. Але просто не весело втрачати при першому клацанні, перш ніж ви могли щось зробити. Незалежно від того, що задоволення випливає з надзвичайних викликів чи іншого джерела (тобто історії), вашим першим пріоритетом завжди має бути задоволення гравця.
CGriffin

Відповіді:


42

Що ви хочете досягти зі своїм AI?

Якщо ваша гра намагається розповісти історію , то AI розумно налаштувати так, щоб ви отримали історію, яку хочете розповісти.

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


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

19
Гарний шаховий AI вже понад 20 років перебуває за рівнем гросмейстера. Боти Go були поза "звичайним" професіоналом ще 2 роки тому, і я вважаю, що вони покращилися і з того часу, не кажучи вже про порівняно прості ігри, такі як Reversi, в яких люди вже майже 40 років є неконкурентоспроможними. Зовсім недавно навіть бойовики на зразок Counter Strike або Starcraft II мали ботів, які виступали на професійному рівні. Так, так, це проблема, яку ви повинні розглянути.
Кубік

5
@Cubic: І ігри, як шахи та ігри, - рідкісні винятки. Якщо ви хочете випустити випуск такої популярної стратегічної гри, як Пуерто-Ріко, або ви публікуєте власну абсолютно нову TBS, у вашій грі не буде спеціального інтелектуального рівня, який повинен включати в себе, і ви навряд чи напишуть одну. Чорт, навіть з шахами, ви, мабуть, не збираєтесь бити експертів, якщо ви напишете власний AI.

9
Писати власний AI? У цьому немає сенсу. Шахи можуть бути останньою грою, де люди написали ШІ, який бив людей. AlphaGo заснований на навчанні підкріплення , і немає підстав вважати, що RL не підходить для інших настільних ігор.
MSalters

3
@MSalters: Було б чудово, якщо новітні досягнення AI приведуть до світу, де є тюрки, які полегшають можливість будь-якого виробляти чудову AI-гру. Але це не те слово, в якому ми зараз живемо. Також, IIRC, люди сказали те саме, що останні півдесятка проривів у ШІ.

240

ІР-ігри майже завжди є неконкурентоспроможними, тому що якщо AI дійсно намагатиметься виграти, то це було б неперевершено. ШІ не пов'язаний з обмеженнями людини, такими як рефлекси, точність, сприйняття, втома або обчислювальна здатність. Тож, коли серйозно грати, щоб перемогти, жодна людина ніколи не матиме шансів.

Візьмемо для прикладу жанр шутера від першої особи. Більшість цієї відповіді має стосуватися більшості інших жанрів. Є винятки. Наприклад, у ШІ виникають труднощі з побиттям людей у ​​дуже складних стратегічних іграх. Багато реальних часу та покрокові 4X стратегічні ігри чимало обманюють, щоб зробити гравців AI складними. Але висвітлення кожного жанру гри зробило б масштаб цієї відповіді занадто великим. Тож давайте зосередимось на жанрі FPS.

Ідеальний граючий AI дозволив би вас з ідеальною точністю зняти в першому кадрі, де їм видно один піксель вашого персонажа. Ви іноді стикаєтесь з цим у мультиплеєрі, коли граєте проти шахраїв. Їх називають бомбами, і нікому не подобається грати проти них, бо це надзвичайно засмучує.

Але такий ідеальний прицільний ШІ насправді найпростіший у програмі:

if (lineIsUnobstructed (this.position, player.position)) {
     rotateTowards (player.position);
     shoot();
}

Тож ідеальна гра - це поведінка за замовчуванням. Людські слабкі місця, такі як неуважність, обмежене сприйняття, затримка реакції та неточне націлювання - це те, що ви, як розробник гри, повинні навмисно програмувати. І зазвичай вам знадобиться багато часу, щоб виправити ці аспекти, поки поведінка ворога не є правдоподібною і не забезпечить гравця потрібну кількість викликів. Скільки виклику - "правильна кількість виклику"? Дуже цікаве запитання, але не в межах цього питання.

Також пам’ятайте, що більшість ігор для одного гравця за своєю суттю є асиметричними. Опоненти гравця та AI зазвичай не мають однакових цілей, мають різні інструменти та часто навіть не підпадають під однакову ігрову механіку. Не рідкість, коли єдиний персонаж гравця стикається з десятками чи сотнями опонентів на одному рівні. Коли кожен суперник був би таким же хорошим, як гравець, цього зробити було б неможливо. Але більшість ігор продають силові фантазії. Гравець повинен бути героєм бойових дій, який може власноруч перемогти невелику армію. Це зазвичай досвід, який гравець очікує, купуючи шутер від першої особи. Це означає, що для того, щоб дати гравцеві "справедливий" виклик, потрібно зробити єдиного ворога відносно слабким і дурним.

Тепер щодо питання "Чи слід полегшити гру, коли гравець програє?" . Можливо, може й ні. Багато гравців дійсно відчувають поблажливість, коли вони неодноразово відмовляються від виклику, а потім раптом виклик знімається, стаючи набагато легшим. Тому ви можете уникнути цього, принаймні, не запитуючи гравця, чи хочуть вони допомогти.

Але те, що багато ігор роблять дуже успішно - це техніка, яка називається гумова нав'язка . Відрегулюйте складність майбутніх зустрічей залежно від успіху гравця в минулих зустрічах. Іноді це можна зробити навіть природно в вигадці гри.


5
AI, звичайно, "намагається виграти найважче", але лише на тому рівні, на який він був запрограмований. 6-річний граючий сокер може "намагатися виграти", але не переможе більш просунутого гравця. Я можу запрограмувати AI на імітацію білки, і вона може бути геніально досконалою (як білка), але не зможу перемогти вас у шахах. Це не робить його невдалим AI.
Тім Холт

2
Ви можете встановити прапорець "адаптивні труднощі" у меню налаштування складності. Ви можете дозволити гравцеві налаштувати різні труднощі, тому він не є повністю адаптивним, і гравець не завжди почне програвати, якщо він грає досить добре.
Пітер Кордес

3
@TimHolt Я думаю, що існує різниця між програмуванням найкращого AI - тобто AI, який справді намагається настільки ж важко, як обчислювально доцільно перемогти - порівняно зі скинутим AI, який все ще намагається так само важко (це комп'ютер) , але не обов’язково перемагати.
Нік Хартлі

8
Я думаю, що семантичний аргумент про те, що означає «спробувати» ШІ, є безглуздим і непродуктивним. Зрозуміло, що таке правильне тлумачення в контексті, і в цьому трактуванні суть. Переназначення значення слів, які вже використовуються в ОП, призведе до аргументів щодо значення слова (в даному випадку - розмовника), а не до чогось справді проникливого.
AlexanderJ93

9
@ AlexanderJ93 Я не хочу. Глава 2 класичного підручника Норвіга прямо зазначає, що визначення міри продуктивності для інтелектуального агента не є обов'язковим - тобто те, що потрібно для максимального використання агента. Очевидно, що в іграх те, що ви намагаєтеся максимально покращити: весело .
Tobia Tesan

46

AI гра є частиною загального дизайну гри. Зрештою, створений вами інтелект повинен доповнити дизайн гри.

Якщо ваша гра створена навколо створення складних конкурентних умов, то «ідеальний» AI може стати гарною справою. У той же час, ви повинні врахувати щось дуже важливе:

Люди - це не комп’ютери .

Навіть без обману, в багатьох змагальних іграх розробити AI, який може без зусиль перемогти будь-якого людини, зовсім не складно. AI не повинні читати дані гравців, щоб мати швидший час реакції, ніж будь-який чоловік. Якщо гравець здійснює дію, яка має будь-який візуальний натяк, AI має право згідно з вашим правилом "грати якнайкраще", щоб використовувати навіть незначні візуальні відмінності, щоб ідеально реагувати на те, що відбувається.

Щоб зробити цю роботу, ви повинні змінити характер самої гри. У грі «людина-людина» у вас може бути, що всі анімаційні фільтри для швидких атак виглядають дуже різними, оскільки враховується час реакції людини. Але для комп’ютерів така гра тривіально проста; вони можуть реагувати миттєво та ідеально.

Тож у бойових іграх, якщо на досконалому комп’ютері відбувається швидкий рух, і ви нападаєте на все, що займає більше кадрів, ніж їхній хід, комп'ютер вдарить вас . Те, що було хитромудрою здогадкою, де гравці повинні передбачати руху один одного, перетворюється на людську програш для комп’ютера.

Якщо ви хочете мати ідеальний AI, вам потрібно побудувати гру, де AI може чудово грати і все-таки програти . Це непроста річ, і вона не спрацювала б у багатьох жанрах. Це може статися лише в тому випадку, якщо є речі, на які ШІ повинен реагувати, але не маючи достатньо часу для цього. Це було б як ігри на RTS, де є прихована інформація. Істинно досконала гра вимагала б досконалих знань, але це недосяжно. Тому комп’ютеру доведеться погодитися на «ідеальну, наскільки я знаю, гру». І, таким чином, його можна обдурити.

Але навіть у таких іграх швидкість роботи комп’ютерів дає їм перевагу в будь-якій ситуації, коли є добре зрозуміла інформація. Вони можуть мікро-ідеально, розташовуючи кожну одиницю для досягнення максимального ефекту. І так далі.

В основному більшість ігор, створених для людей, створені для людей , а не для комп’ютерів.

Це не питання "етики". Це питання для кого створена гра і яка мета опонента AI.


4
Якщо AI може грати ідеально і все-таки програти, то людина, яка грає ідеально, також може програти. Це теж не ідеально. Швидше, ви хочете, щоб гра мала достатню складність та / або приховану інформацію, що визначити ідеальну стратегію неможливо чи недоцільно. Ось чому люди досі перемагають комп’ютери в «Шахи та гові»; комп'ютер не може повністю проаналізувати кожен можливий хід і повинен покладатися на евристику, як і людина покладається на інтуїцію.
Рей

3
@Ray: " Якщо AI може грати ідеально і все-таки програти, то людина, яка грає ідеально, також може програти. Це теж не ідеально ". Я наводив RTS як приклад, оскільки жанр часто використовує Fog of War, що заважає вам все знати. І без досконалих знань, ви не можете мати справді досконалу гру. Ви можете мати лише «ідеальну» гру лише в межах того, що ви знаєте.
Нікол Болас

2
@Ray Це, можливо, було правдою десять років тому, але зараз це менше: у нас заздалегідь обчислені таблиці рішень для всіх 7-ти штук і менше ігор. Після того, як їх буде менше 8 штук, є чіткий найкращий хід кудись у цих 170 ТБ таблиць.
TemporalWolf

3
Ігри стратегічної гри набагато гірші, ніж "ідеальні, наскільки я знаю". Так, у них ідеальний мікро, що перетворює їх на важливе завдання для більшості гравців, але вони також дуже сприятливі за своїм сценарієм і не дуже добре реагують на неортодоксальні стратегії. Наприклад, у Warcraft 3, ви можете перемогти найскладніший ШІ одним працівником, тому що ШІ взагалі не може впоратися з вежею. Він ігнорує працівника, що будує вежу, поки не пізно, а потім переходить на те, щоб витрачати її підрозділи проти цих веж, замість того, щоб брати ворожу базу.
Дулкан

6
Дуже сильно це. Як анекдот, ми з друзями без проблем грали в RTS (Rise of Nations) проти кількох комп'ютерів. Тоді мій друг модифікував це, щоб кількість населення зменшилася з 200 по 2000 рік, і той самий комп'ютер забив нас, навіть коли нам було 3 проти одного комп’ютера. Ми, люди, зменшували віддачу від керування більшою кількістю одиниць одночасно, в той час як комп'ютер цього не робив.
Лорд Фаркваад

26

Як передмова, я збираюся співвідносити етику з обманом. Якщо ви відчуваєте себе обманом, відчуваєте, що з вами трапилося щось неетичне.

Коротше кажучи, щоб зробити поведінку вашого AI прийнятною, зробіть поведінку, яку вона імітує, правдоподібною. Люди не відчувають себе обдуреними правдоподібною поведінкою, вони відчувають себе обдуреними неймовірною / нереальною поведінкою. Тож будьте правдоподібними, і у вас не виникне питання етики.

Крім того, подивіться на те, що означає AI, розглядаючи ваше питання: це штучна інтелігенція , а не штучна інтелігенція . Інтелект - це здатність набувати та застосовувати знання та вміння. Розумний - це те, що зазвичай має високий інтелект. Іншими словами, те, що щось має інтелект, не означає, що це розумно. Білка має інтелект, але вона не (за людськими мірками) розумна.

Нарешті, окремі рішення, які AI приймає від фактичної механіки ігор, і не дозволяйте AI порушувати правила. Останній пункт, можливо, трохи важче пояснити, тому ось приклад ...

Приклад з гарматами та AI

Ваш ШІ не імітує пістолет і те, як він стріляє, він імітує мислячу істоту (чи, можливо, машину) за цією рушницею.

Сам пістолет керується кодом, який розраховує, чи вдарив постріл, враховуючи дальність, точність зброї, розподіл малюнка на відстань, позицію стрільця, рухається стрілець, майстерність стрільця тощо. Ніколи не слід возитися з цим кодом, як це імітація механічної та фізичної реальності. Якщо ви це зробите, ви порушите правдоподібність.

Але те, що тримає пістолет? Цим керує А.І. Це не повинно бути НЕ впливає на те, як на самому ділі працює пістолет. Тільки як використовується пістолет.

Отже, враховуючи відому поведінку пістолета, запитайте себе, чому ШІ може пропустити перший удар. Потім зробіть свою поведінку AI відображенням того, що зробить промах цього першого пострілу. Це тому, що імітує суперника низької кваліфікації, який стріляє з стегна і не прицілюється? Це тому, що ШІ під час руху рухається з паніки першого пострілу? Це тому, що противник має низьку якість зброї? Це тому, що суперник знаходиться далеко?

Якщо ваш AI імітує такі речі "чому", ви створили AI, який веде себе правдоподібно, коли він стріляє і пропускає. І ніхто не відчує себе обдуреним таким ШІ.

Сценарій для зброї та приклад AI

Розглянемо сценарій, коли ти підкрадешся та здивуєш опонента ШІ. Вони підстрибують і дико стріляють у вас під час бігу назад - і ваш код пострілу, в основному, дасть їм дуже низький шанс потрапити на перший удар через це. І якщо припустити, що гравець знає, що робить удари неточними, вони вважають цю пропуску дуже правдоподібною та прийнятною.

Але якщо ви хочете, AI міг би сказати: "Гаразд, мені потрібно збільшити шанс удару. Що я можу зробити ... ОК, я можу припинити рух. Я можу притиснутись. Я можу націлити свою зброю, використовуючи приціли замість стрільби з стегна ». І ШІ потім починає змінювати те, як стріляє, а супротивник починає ставати краще. Це інтелект рухається до розумного.

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

Підсумок / Висновок прикладів гармати та AI

В основному, це говорить для AI, що передбачає стрілянину по чомусь, "рівень майстерності" AI-центрів, орієнтований на те, наскільки швидко він може рухатися до того, щоб зробити все можливе, щоб оптимізувати свою точність. СУПЕР німий AI ніколи цього не з'ясовує, завжди стріляє з стегна під час бігу та руху. Розумніший AI робить все більше і більше для оптимізації точності. Справді розумний AI просто негайно робить все можливе для оптимізації точності.


19

Так. ШІ повинен залишатися на тому рівні, на який був встановлений.

Шаховий ІІ буде кожного разу бити всіх нас, і нам належить налаштувати його на те, що нам здається приємним. Я ніколи не хотів би, щоб AI ошелешив, коли побачить, що це переможе, або має спливаюче слово "товариш по 25, ти хочеш, щоб я був гіршим у шахах?". Просто побийте мене, поки я не набридю грати на рівні, який не відповідає мені.

Не будемо думати, що надання супротивнику всім королевам має щось спільне з AI.


10
@ mr23ceec Шахи нескінченно менш складні, ніж покрокова стратегічна гра на зразок Civilization. Чим більше змінних ви вводите, тим складніше AI конкурувати. Коли ви приносите, будівлі, технології, суміші блоків, положення карти тощо, це просто занадто багато, щоб обробити ідею, яка може слідувати лише попередньо запрограмованому сценарію. Що мають ою в шахах? 64 пробіли, 6 різних фігур із визначеними візерунками руху. У Civ після 10 поворотів відбувається більше. Я ніколи не чув про цю гру «General», яку ви згадуєте, а також Google нічого про це не знаходить. Ви хочете поділитися посиланням?
Дулкан

1
Нагадує мені Казки Марка Роузервотера
corsiKa

3
Я не дуже розумію цю відповідь. Ви, здається, говорите, що динамічний інтелект AI неетичний і що труднощі з AI повинні бути виправлені. Однак фіксована складність не повинна бути оптимальною, і все ж повинні бути різні попередньо встановлені складності. Це просто перетворюється на процес калібрування вручну, щоб дізнатися, наскільки високо я повинен встановити AI ChessBot, щоб дати мені виклик, але все ж шанс на перемогу. Чому автоматична настройка складності менш бажана, ніж ручна настройка? Це було б більш точно і набагато менш виснажливо.
Ядерна Ванга

2
Дуже згоден з цією відповіддю. Таємно змінюється складність ШІ - обман, який неетичний. Якщо гравець вирішує труднощі 7, він завжди має труднощі 7 . Також ця відповідь не сумісна з динамічними труднощами. Якщо гравець вибирає динамічні труднощі відповідно до методу X, він повинен завжди отримувати це і тільки це. Що я купую товар, я хочу бути тим, хто контролює те, що роблять придбані вами товари.
Хосе Антоніо Дура Олмос

1
Одне, що, мабуть, варто відзначити, це те, що шахи - це в основному «симетрична» гра; механічно шаховий ШІ грає ту саму роль, що і гравець людини. Це має певний вплив на те, чого слід очікувати від ШІ.

12

Я б сказав, що ні. Ви бачите, що для мене ігри - це перш за все розважальні продукти. Вони хочуть доставити досвід конкретній аудиторії. Отже, все залежить від того, який досвід і для якої аудиторії ви хочете зробити досвід. Візьміть нову гру, наприклад, Cuphead. Ця гра створена для людей, які хочуть, щоб гра була важкою і невблаганною тощо. Цей тип гравців почувався б погано, якби гра скидалася після того, як вони помирають X разів (поки що я помер 255). Потім знову автоматичне зниження труднощів для більш випадкової аудиторії може допомогти їм просуватися в грі і, як правило, краще провести час. Отже на закінчення: «Знай свою аудиторію».


7
Деякі ігри я граю для виклику. Деякі ігри я граю в історію занурення і вирішую виклик. У деяких іграх я хочу обох.
Уейн Вернер

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

11

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

Термін Штучний інтелект трохи вводить в оману. За замовчуванням AI керує комп'ютером, який має повне знання правил і стану гри, таким чином, AI буде точно знати, що робити і коли це зробити, щоб обіграти гравця.

Це не весело.

Intelligence частина ІІ повинна бути перетворена в німоту, просто досить , щоб дати виклик гравцям і тримати їх грати.

Це виклик, і тому дизайнери ігор існують.


Ви можете бути конкурентоспроможними з дітьми, вони не отримують голосу в іграх, в які ви граєте.
PStag

3
@PStag Погодився, є правильний спосіб це зробити, і неправильний шлях. Я б не намагався зі своїми дітьми найсильніше :)
Александр Вайланкорт

9

Зрештою, роль ШІ полягає у тому, щоб допомогти створити гідний, корисний досвід. Доктор Ян Лейн Девіс говорить про це в деяких своїх інтерв'ю, що роль ШІ - це переконливо втратити. Інтерв'ю PCAuthority (Механіка, яку ви згадуєте, - це приклади того, що гра не є переконливою, натомість вибирає дешевий і простий спосіб забезпечити перемогу гравцеві.)

З того ж інтерв'ю:

Ваші опоненти AI - це інструменти для драми та напруги настільки ж, наскільки вони розумні агенти.

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

Мета - це завжди розвага.


1
Все це питання робить мене предметом оригінального напівжиття. Вони продовжують гучно спілкуватися і розкривають свої "плани" (фланкуючи гравця тощо), що на той час зробило враження гравця на передовій AI, хоча, насправді, це досить дурно. :)
JanErikGunnar

9

Мета вашого AI не повинна бути перемогою, вона повинна забезпечувати приємну гру. Частина цієї насолоди полягає в тому, щоб кинути виклик. Мій підхід до цього в Scrabble був двояковим: по-перше, націлюйте на п’єси, які відповідають рівню словникового запасу людини. Зрівняння рівня покращиться протягом кількох ігор, але ви також можете зробити досить хорошу оцінку на льоту в ранніх іграх. У програмі Scrabble вам знадобиться лексика, яка класифікується за віком читання, хоча як резервна копія, використання великого корпусу для визначення частоти вживання слова є розумним наближенням. По-друге, використовуйте ігрові конструкції, які спочатку імітують людські - наприклад, комп'ютер, як правило, проводить набагато більше паралельних ігор, ніж випадковий людський гравець (я припускаю, що ми не граємо експертів світового класу). Однак із збільшенням досвіду проти конкретного опонента зростає,тоді ви почнете використовувати кілька хитрощів проти них, які вони не використовують самі - але епізодично, маючи намір надати людині приклад для наслідування та вдосконалення своєї власної гри.

Успіх вашого ШІ буде вимірюватися тим, наскільки часто людина повертається на зустрічний матч. Ваше задоволення кодом має виходити з того, наскільки добре йому вдається грати як людина, а не машина. Це те, що можна перевірити, встановивши онлайн-змагання, де люди не знають, чи грають інші люди чи машини. (Обмежений тест Тьюрінга)

Я завжди називав цей стиль кодування як "Штучна дурість", а не AI :)

Я не вважаю це зовсім неетичним. На противагу цьому, я вважаю, що використовувати всі ресурси комп’ютерного алгоритму для перемоги над людиною неетично - так само, як хтось, хто грає в Scrabble в Інтернеті за допомогою комп’ютера, щоб знайти найвищі оцінки.

Ще один спосіб "скидання" алгоритму - встановити справжні обмеження на рівні людських можливостей для можливостей вашого гравця AI - знову ж таки, використовуючи Scrabble як приклад, замість надання фіксованої лексики, ви можете дозволити своєму гравцеві AI вивчити його словниковий запас з читання в Інтернеті статті, і ви могли обмежити її об'єм пам'яті, щоб довелося робити обдуманий вибір, які слова варто пам’ятати. У цьому немає абсолютно нічого неетичного, і це досягає мети зробити гру більш схожою на людину - наприклад, у вилученні комп’ютера перевагою досконалого знання того, які слова є дійсними словниковими словами та які слова слід кинути виклик, коли грає суперник людини .


5

Існує кілька причин, за якими комп'ютерних опонентів потрібно скидати.

Філіп вже згадував про частину того, щоб це було весело, але варто також згадати балансування несправедливих переваг комп'ютерних опонентів.

Ми не в змозі зробити справжній AI, який грає як гравець. Суперники комп’ютерів, з якими ми стикаємось сьогодні (навіть коли вони називаються AI), не аналізують відображений ігровий образ, щоб знайти, як стріляти. Вони також не повинні переміщати фізичний предмет над поверхнею столу, щоб вказати, що потрібно повернути.

Насправді, у більшості комп'ютерних супротивників колоду складають на свою користь. Вони знають точне місце розташування кожного гравця, наскільки вони високі, де ідеальна крапка в голову для цієї моделі / персонажа противника, мають пістолет, на якому вони можуть просто сказати «стріляти по цій координаті», і це точний удар і т.д. Так щоб зробити гру справедливою, тепер вам доведеться наблизити обмеження людини.

Тож велика частина цього «скидання вниз» необхідна просто для створення чесної гри для опонентів, які грають за іншими правилами.

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

Ще один аспект - прискорена хронологія, на якій працює більшість ігор. Є чотиригодинні ігри, де ви снайпер. Навчитися точно стріляти з пістолета потрібно набагато довше. Щоб відстежити тварину через ліс, потрібно більше часу. Хороша гра знаходить правильний баланс між тим, щоб зробити гру тривіальною, щоб перемогти, і відвідувати роки поліцейської академії.

Тож залежить від того, для кого і для чого гра, чи хороший цей вибір. Наприклад, багато великих ігор насправді не є однією грою. Це декілька ігор, об'єднаних в одну, щоб звернутися до якомога ширшої аудиторії та заробити достатньо грошей, щоб відновити величезні авансові витрати на професійно дію / місію, захоплену, озвучену, забиту та текстуровану гру.

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

Щоб знайти приємне місце тут, ви повинні запропонувати виклик для кожного типу гравців, але ви також повинні бути досить простими, щоб інші типи гравців могли ігнорувати небажану (для них) механіку, або завершити гру, роблячи погано в них.

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

У мультиплеєрі це насправді неможливо, тож ви підбираєте гравців із схожим рангом / передачею та налаштовуєте труднощі на весь матч.

Однак це все досить хитрощі "над столом". Кожен гравець отримує "таємне подвійне пошкодження останньої кулі" і може ним скористатися. Інтуїтивне розуміння більшості людей про те, наскільки ймовірно, "50% шансів на потрапляння" насправді є помилковим, і їм допоможе, сказавши їм відсотки, "переведені" на їх "мову". Що, як ви кажете, про "таємні" хитрощі?

Ну, якби гра була схожа на шахи, і вам сказали один набір правил, але насправді це була брехня, це було б обманом.

Але жодна з ігор в останніх статтях, які я читав про хитрощі розробників ігор, щоб зробити вам почуття кращого, насправді не був таким. Більшість це були важкі для історії ігри або ігри, які відомі тим, що викликали певний настрій чи почуття. І в цьому контексті показ 100% математично правильних барів здоров'я робить гру набагато менш захоплюючою.

Це як магічний трюк: Гравці очікують, що їм подадуть ілюзію, тому я думаю, що справедливо дати їм це. Це також як магічний трюк у тому, що деякі люди все одно захочуть повірити, що існує справжня магія, і будуть розчаровані, коли дізнаються про фокус.


4

Коли людський противник не намагається зробити все, що завгодно, ти ображаєшся за те, що це поблажливо. AI не може бути поблажливим, але ви можете подумати, що розробник AI може. Тут є дві відмінності:

  1. Розробник і гравець ніколи не можуть бути рівномірними, якщо це не якась NP-жорстка гра, якій розробнику потрібно глибоке навчання, щоб AI відповідав людині, і в цьому випадку AI завжди намагається зробити все можливе.
  2. Якщо розробник не створив гру саме для вас, вони обслуговують багатьох гравців (як правило, певних видів гравців), і тому не можуть робити припущення щодо вашого індивідуального рівня майстерності.

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

Вона зводиться до тієї ж проблеми, яка завжди є між людьми. Якщо ви займалися спортом під назвою "дитячий футбол", ви не ображаєтесь на винахідника гри, оскільки вони, зокрема, не поблажливі до вас. Рівно "артилерійський футбол" так само у зворотному напрямку.

Потрібно брати участь людини, наприклад, суперника для багатьох гравців, який дозволяє вам виграти, щоб злочин був рівноцінним ІМО.


4

Створюючи гру, ви хочете націлитись на створення досвіду , а не на AI, який є технічно / механічно "справедливим".

У деяких іграх гравці можуть зайняти ще кілька ударів, ніж зазвичай, коли вони дуже слабкі. Цей механік цілеспрямовано реалізований для створення досвіду вузько пережитого бою. Дизайнери ігор хочуть, щоб у вас був прилив адреналіну, навіть якщо ви потрапили на два-два більше, ніж у вас повинно бути. Немає нічого неетичного в реалізації чогось подібного у своїй грі.

Це ж поняття стосується і ШІ загалом. Ви придумуєте розробляти правила своєї гри, але що ще важливіше, ви повністю контролюєте свій досвід. Якщо AI не звертає уваги на ваш сусідній рух або змушує їх пропустити свої перші постріли, покращує ігровий досвід, то будь-якими способами реалізуйте їх без провини.

Якщо передумова / дизайн вашої гри обертається навколо невблаганного AI, ви хочете переконатися, що це гравець весело та позитивно. Якщо це не так, ви можете налаштувати іншу механіку, щоб зробити її більш привабливою. Деякі приклади, які я можу придумати, - це дати гравцеві інші переваги перед AI, такі як більше здоров'я, швидкості, пошкоджень або кращого озброєння. Це компенсувало б розрив у вмінні між невблаганним AI та гравцем.


4

Вам потрібно відступити і попросити мети

У змаганнях мета - з’ясувати, хто кращий. Ось чому не намагатися з усіх сил - це такий самий вид обману, як наркотики, що підвищують продуктивність: Це псує мету.

Мета AI у комп’ютерних іграх - розважити та кинути виклик гравцеві. Ідеальний AI змусить гравця відчути, що він справді щось зробив, тому це повинно відчувати себе важко. Це можна зробити, налаштувавши рівень складності, щоб він був правильним - не надто легко, не надто важко. Або шляхом обману, шляхом адаптації AI, або через багато, багато хитрощів, які ми знаємо, що гравці не помічають.

Тут немає жодного морального питання. Гравець не є більш обдуреним, ніж він, коли дивиться фільм із CGI або сценічним фокусником. Він сподівається, що гра буде його розважати, і поки вона поставить, ніхто не обдурив, навіть якщо деякі деталі не зовсім чесні. Але ні фокусник, ні фільм.


4

Ні, це ні неетично, ні потрібно

Насправді тут немає жодної "етики", просто весело.

З огляду на це, не варто робити це взагалі неконкурентоспроможним в ідеальному світі. Надайте AI абсолютно ті самі інструменти, що і ви, як і гравець. Це означає чітке розділення коду гри. Наприклад, вона не повинна нічого знати про її предмети / дійових осіб, які ви, як людина, не можете знати.

Потім перейдіть і кодуйте свій AI, щоб він міг вивести все, що потрібно знати про поточну ситуацію, засвідчивши його, як ви, як людський гравець. ШІ повинен скласти власне внутрішнє уявлення про те, що він бачить. Очевидно, що в якийсь момент вам доведеться внести поправки, тобто було б безглуздо, щоб AI мав робити OCR на деякому текстовому зображенні в імітованому інтерфейсі користувача. Але слід просто дозволити йому "бачити" лише ті факти про сутності в грі, які ви, як людина, можете бачити і через користувальницький інтерфейс.

Очевидно, що AI може давати ті самі команди своїм об'єктам, що і ви, і в будь-якому іншому аспекті також пов'язаний з тими ж правилами. В ідеалі ви б запустили його через той самий чистий код, який використовує і ваш ігровий клієнт (з додатковим обмеженням, що ви переконайтеся, що він не отримує "знати" про речі, які ваш (орієнтований на людину) клієнт постачав по мережі, але ще не відображається через інтерфейс користувача.

Я гарантую вам, що це зробить AI досить складним, щоб здійснити, що скидання його - це найменша ваша проблема. І якщо вам вдасться запрограмувати його, щоб він міг грати змістовно, це , ймовірно, буде відчувати себе приголомшливо.

Це також дасть вам усі інструменти для налаштування AI на рівень, який цікавить гравця. Приділіть йому час штучної реакції, зробіть так, щоб він забував інформацію про речі або помилки (наприклад, незначне затуманення або випадкове тремтіння своїх "запам'ятованих" значень суб'єктів). Гра проти AI, який робить реалістичні помилки, вирішить вашу проблему, оскільки AI може бути дуже конкурентоспроможним, і через його помилки все-таки можна подолати.

Такий підхід я бачив колись у грі Angband (походження Морії, у жанрі Nethack) багато- багато років тому. Оскільки ця гра є однокористувацькою, це не ІС, що грає проти людини, а така, що імітує людську гру. Тоді технічний супровідник («Бен», і, якщо я правильно пам'ятаю), насправді зробив те, що я описав; він моделював цілі структури даних фактичної гри у другому наборі даних для AI. ШІ лише «знав» речі, про які він насправді був свідком (включаючи атрибути монстрів і подібні). Дуже вражає.

І що зайве говорити, я ніколи більше не бачив такого підходу, принаймні, не так, щоб я міг його розпізнати - весь «AI» у будь-якій комп’ютерній грі завжди був приголомшливо дурним і нерозумним, передбачуваним, правила дуже очевидні, примусові обман, щоб дати йому шанс проти гравців, і ще гірше.

TL; DR: в ідеальному світі питання не повинно виникати; в реальному світі отримувати задоволення від AI на роботі досить складно (для програміста).


2

По суті, абсолютна якість AI як опонента дійсно залежить від типу гри, кількості часу, витраченого на розробку ІІ в грі та потужність процесора / відведений цикл позаду AI.

У такій простій настільній грі, як Шахи, AI з домашнім комп’ютером завжди виграє, тому що він може розчавити кроки краще, ніж коли-небудь, і алгоритми для цього дуже відомі.

Відповідно, на аркадних шутерах (у більшості FPS-ігор) AI може мати ідеальну мету (якщо припустити, такі як швидкість снаряда >>> швидкість гравця) та ідеальне "бачення", тож у такому випадку ви також можете опинитися в ситуації, коли AI просто знищить гравець поза грою, припускаючи, що ресурси в грі навіть між AI та гравцем. З іншого боку, наприклад, підключіть розпізнавання зору до FI AI, і незабаром у вас виникнуть реальні проблеми з обробкою, і програвач раптом стане улюбленим (поки що!).

На RTS AI, що працює на звичайному ПК, може бути вищим або неповноцінним, незалежно від того, дотримується він правил чи ні. Складність гри визначає, чи потрібно врівноважувати ШІ гандикапу чи потрібно «обдурити», щоб забезпечити гідне завдання. Те ж саме стосується «складних настільних ігор» (покрокові стратегічні ігри, такі як Civilizations, але також йдіть [на деякий час на домашньому ПК]) та деякі інші жанри, такі як тренажери польотів та гонок, де переваги AI - майже миттєва реакція часи, перевершене скорочення чисел, ідеальна пам’ять та повне знання навколишнього середовища - можуть бути затьмарені складнощами ігрової механіки.

Справа в тому, що чесна гра в Standard-Game-AI, що працює на домашньому комп’ютері з подібними людськими обмеженнями (наприклад, AI бачить / чує те, що ви побачили / почуєте), майже завжди програє гравцеві поза простими настільними іграми (поки що !). З іншого боку, зробіть правила простішими, додайте додаткових знань у грі (наприклад, AI знає про навколишнє середовище, включаючи те, де ви знаходитесь, весь час), скорочення сили та час розвитку AI, і людина може в кінцевому рахунку програти гру.

Загалом, питання етики, на мою думку, досить нерелевантне та оманливе. Сенс гри в комп'ютерній грі проти AI - не виграти чи програти, а насолодитися досвідом. І для цього, з точки зору врівноваження, додавати AI / гравця гандикапи / бонуси, як правило, зробити набагато простіше, ніж зробити інтерактивний інтелект різного рівня.


2

від Вікісловника:

помилятися - це людина

Для мене однією з найбажаніших (і найскладніших для досягнення) властивостей належної гри - AI є можливість робити помилки, як ми (люди).

Тому що ми робимо помилку за замовчуванням. За замовчуванням AI не роблять. Наслідування ігор з цією сутністю людської "якості" пройшло б довгий шлях до усунення цього почуття "обманутого" (в будь-якому випадку, вигравши чи програвши).

Це також буде рисою, яку повинен оволодіти вдалий ШІ, щоб пройти тест Тьюрінга: не можна було б вірити, що інтелект має людське походження, якщо він не зміг би показати "здатність" зробити "людиною" (або людські) помилки.


2

Є більше способів, коли ворог AI полегшує вам.

Знущальна анімація після її отримання. Це дозволяє гравцеві закінчити приголомшливу анімацію та підготуватися до її власного нападу. Було б дуже легко вимкнути насмішку і потім приголомшити блокування гравця.

Неодноразово використовуючи атаки, яким можна протидіяти (або ухилятися від них і залишати ворога відкритим для ураження). У шалених стрільців на основі прикриття це ворог, який виходить з прикриття, щоб дозволити вам вдарити їх. Конкурентоспроможний ай не вибиратиме ці види атак. Зрозуміло це можна зафіксувати за допомогою сюжету .

Телеграфування рухається (windup), тому гравець має шанс відреагувати. Ця анімація з проникненням є дуже важливою частиною масштабування труднощів, особливо в бою на основі реакції.

Дуже легко зробити ворога складно проти. Але зробити це складним, але веселим ворогом дуже важко. Частина цього змушує ворога робити німі речі і нехай гравець взагалі має виграшний хід.


2

Ні, загалом це не так - як розробник ігор, ви створюєте інтерактивний досвід, а те, як повинен поводитись AI, визначається тим, який досвід ви намагаєтеся створити. Як контрприклад, розглянемо ситуацію , коли ви в змозі реалізувати штучний інтелект , який буде непереможний на будь-який чоловік на планеті. Чи варто це робити? Чи було б неетично «притупити» AI, щоб гра була насправді відтворюваною? Неетично було б скористатися своїми гравцями; але це - це просто звичайний дизайн гри.
Дозвольте мені відкрити для вас бляшанку з хробаками: будь ласка, відвідайте цю нитку Twitter .

PS Однак зауважте, що деякі геймери не побачать речі таким чином. Вони можуть навіть розсердитися. Але це випливає з їх нерозуміння того, як працюють ігрові розробки та AI. Це не робить практику неетичною.


1

Я б сказав, це швидше залежить від гравця.

Особисто я звик, щоб боти були значно дурнішими або несправедливо вмілими (іноді навіть обома). Мені важко запам’ятати гру, де боти були з «справедливими» труднощами, і я не очікую, що вони будуть такими, тому що я знаю, наскільки вони обмежені.

Крім того, багато таких "твіків" будуть помічені врешті-решт, якщо гра стане достатньо популярною.

Я б сказав, що все-таки краще повідомити гравців про "зміни до складності", і я знаю ігри, які так роблять.


0

Альтернативна відповідь, що стосується дизайну, мотивованого редагуванням вашого запитання.

Ви вказали у своїй редакції ...

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

У чому справжня проблема

Справжнє питання тут стосується дизайну, а не етики. Поганий дизайн - це те, що робить щось здаватися "неетичним". Ви намагаєтеся вирішити тут балансування навичок гравця з противником виклику гри.

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

Скажіть, гравець наштовхується на великого сильного суперника, який занадто важкий для них. Це означає, що або гравець пішов глибше в гру до області, яка для них занадто сильна (подумайте Casadores, якщо ви рухаєтеся на північ від Goodsprings в Fallout: NV), або дизайнер поставив гравця проти складних супротивників, коли вони знають гравець не готовий.

Як ви вирішите це з точки зору дизайну? Простий. Ви не ставите гравця проти суперника, який для них занадто важкий. І ви розробляєте чітку диференціацію противників, і частина цієї диференціації - це навичка противника. І ви робите свій прогрес у грі таким, що гравцеві важче (але не неможливо) грати над головою занадто швидко.

В основному це ідея Flow в ігровому дизайні.

Приклад з трьома ограми

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

Якщо ви новий гравець, який не здобув нового здоров’я, обладунків тощо, маленькому огрю вам доведеться вдарити вас 4-5 разів, щоб убити вас. Але як тільки ви вищого рівня, він навряд чи зможе зробити вам щось.

Огреш середнього рівня може вбити вас як початківця за 1-2 хіти, але якщо ви вищого рівня, це займе 4-5.

Величезний огр може вбити вас як новачка в 1 хіт, або 4-5 хітів, якщо ви вищого рівня.

Усі огрі завжди визначають, чи вдаряються вони однаково. Як вони визначають, чи вдаряються вони ніколи не змінюються. Немає штучно низького (або високого) часу реакції, штучно низького (або високого) пошкодження. Вони просто такі, якими вони є.

Рішення

Якщо гравець низького рівня, виставляйте їх проти лише невеликих огрів. Можливо, подаруйте їм середній рівень людожера раз у раз як виклик. Або кілька маленьких огрів разом. Ніколи не виставляйте їх проти величезної купки маленьких огрів, кількох медіа чи гіганта, оскільки вони загинуть.

Якщо вони середнього рівня, поставте їх проти огрів середнього рівня з декількома ограми низького рівня лише для «забави». Можливо, мати рій маленьких, щоб зробити це цікавішим. Ніколи не виставляйте їх на купу серед огрів середнього рівня або на гігантського огра, оскільки вони загинуть.

Тільки високий рівень піднімається проти гігантського огра. Можливо, подаруйте їм огір середнього рівня раз у раз, або гігантський огр із роєм маленьких, або щось інше, щоб посилити виклик. Ніколи не виставляйте їх на купу гігантських огрів, оскільки вони загинуть.

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

І якщо гравець низького рівня справді готовий заглибитися в гру, де вони натрапляють на гігантських огнів, нехай помирає - вони цього заслуговують.


Дякуємо за вашу відповідь, але у вашому прикладі orge, який, здається, не стосується редагування, на яке ви посилаєтесь, показувати гравцеві велику люльку, яку вони не можуть подолати, і не допустити їх виходу з ладу - це прозоро. Гравець переможе великі огни лише тоді, коли вони знаходяться на правильному рівні. Наприклад, було б секретом, якби замість того, щоб гравець вийшов на рівень, вони просто посилилися, без того, щоб гравець знав, що залишає гравця, припускати, що він просто став більш кваліфікованим гравцем.
PStag
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.