Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Kuv tuaj hla qee cov ntaub ntawv nthuav qhia txog kev txawj ntse hauv kev ua si. Nrog rau kev piav qhia txog yam tseem ceeb ntawm AI siv cov piv txwv yooj yim, thiab sab hauv muaj ntau cov cuab yeej siv tau zoo thiab cov txheej txheem rau nws txoj kev txhim kho yooj yim thiab tsim. Yuav ua li cas, qhov twg thiab thaum twg siv lawv kuj muaj.

Feem ntau ntawm cov piv txwv tau sau rau hauv pseudocode, yog li tsis muaj kev paub txog kev ua haujlwm siab heev. Hauv qab qhov txiav muaj 35 nplooj ntawv nrog cov duab thiab gifs, yog li npaj txhij.

UPD. Kuv thov txim, tab sis kuv twb tau ua kuv tus kheej txhais lus ntawm kab lus no ntawm HabrΓ© PatientZero. Koj tuaj yeem nyeem nws version no, tab sis vim qee qhov tsab xov xwm dhau kuv los ntawm (Kuv siv qhov kev tshawb nrhiav, tab sis muaj qee yam yuam kev). Thiab txij li thaum kuv sau ntawv rau hauv blog mob siab rau kev txhim kho kev ua si, kuv tau txiav txim siab tawm hauv kuv phau ntawv txhais lus rau cov neeg siv khoom (qee lub ntsiab lus yog formatted txawv, qee qhov tau txhob txwm muab tshem tawm ntawm cov lus qhia ntawm cov neeg tsim khoom).

AI yog dab tsi?

Game AI tsom mus rau qhov kev ua yeeb yam dab tsi yuav tsum ua raws li cov xwm txheej uas nws nyob. Qhov no feem ntau hu ua "tus neeg saib xyuas ntse" kev tswj hwm, qhov twg tus neeg sawv cev yog tus cwj pwm ua si, lub tsheb, bot, lossis qee zaum qee yam tsis meej: tag nrho pawg ntawm cov koom haum lossis txawm tias muaj kev vam meej. Nyob rau hauv txhua rooj plaub, nws yog ib yam uas yuav tsum pom nws ib puag ncig, txiav txim siab raws li nws, thiab ua raws li lawv. Qhov no yog hu ua Sense/Think/Act cycle:

  • Sense: Tus neeg saib xyuas pom lossis tau txais cov ntaub ntawv hais txog tej yam hauv nws ib puag ncig uas yuav cuam tshuam rau nws tus cwj pwm (kev hem thawj nyob ze, cov khoom los sau, nthuav qhov chaw tshawb nrhiav).
  • Xav: Tus neeg sawv cev txiav txim siab yuav ua li cas (xav seb puas muaj kev nyab xeeb txaus los sau cov khoom lossis seb nws yuav tsum sib ntaus / zais ua ntej).
  • Txoj Cai: tus neeg sawv cev ua haujlwm los ua qhov kev txiav txim siab dhau los (pib txav mus rau tus yeeb ncuab lossis khoom).
  • ... tam sim no qhov xwm txheej tau hloov pauv vim qhov ua ntawm cov cim, yog li lub voj voog rov ua dua nrog cov ntaub ntawv tshiab.

AI nyiam tsom mus rau Sense ib feem ntawm lub voj. Piv txwv li, cov tsheb uas tswj hwm tus kheej coj cov duab ntawm txoj kev, muab lawv nrog radar thiab lidar cov ntaub ntawv, thiab txhais lawv. Qhov no feem ntau yog ua los ntawm kev kawm tshuab, uas ua cov ntaub ntawv tuaj thiab muab nws lub ntsiab lus, rho tawm cov ntaub ntawv semantic xws li "muaj lwm lub tsheb 20 yards ua ntej ntawm koj." Cov no yog cov teeb meem kev faib tawm.

Kev ua si tsis xav tau ib txoj hauv kev los rho tawm cov ntaub ntawv vim feem ntau ntawm cov ntaub ntawv twb yog ib feem ntawm nws. Tsis tas yuav khiav cov duab lees paub algorithms los txiav txim seb puas muaj yeeb ncuab ua ntej - qhov kev ua si twb paub thiab pub cov ntaub ntawv ncaj qha rau hauv txoj kev txiav txim siab. Yog li ntawd, qhov Sense ib feem ntawm lub voj voog yog feem ntau yooj yim dua li Xav thiab Ua ib feem.

Kev txwv ntawm Game AI

AI muaj ntau qhov kev txwv uas yuav tsum tau saib xyuas:

  • AI tsis tas yuav tsum tau kawm ua ntej, zoo li nws yog kev kawm tshuab algorithm. Nws ua rau tsis muaj kev nkag siab los sau cov neural network thaum lub sijhawm txhim kho los saib xyuas kaum tawm txhiab tus players thiab kawm txoj hauv kev zoo tshaj los ua si tawm tsam lawv. Vim li cas? Vim qhov kev ua si tsis tau tso tawm thiab tsis muaj players.
  • Qhov kev ua si yuav tsum muaj kev lom zem thiab nyuaj, yog li cov neeg sawv cev yuav tsum tsis txhob nrhiav txoj hauv kev zoo tshaj plaws rau tib neeg.
  • Cov neeg sawv cev yuav tsum tau saib qhov tseeb kom cov neeg ua si zoo li lawv ua si tawm tsam cov neeg tiag. Qhov kev pab cuam AlphaGo ua tau zoo dua tib neeg, tab sis cov kauj ruam uas tau xaiv tau nyob deb heev ntawm kev nkag siab ntawm kev ua si. Yog tias qhov kev ua si simulates tib neeg tus nrog sib ntaus, qhov kev xav no yuav tsum tsis muaj nyob. Lub algorithm yuav tsum tau hloov pauv kom nws txiav txim siab plausible es tsis yog qhov zoo tagnrho.
  • AI yuav tsum ua haujlwm raws sijhawm. Qhov no txhais tau hais tias lub algorithm tsis tuaj yeem monopolize CPU siv rau lub sijhawm ntev los txiav txim siab. Txawm tias 10 milliseconds ntev dhau lawm, vim hais tias feem ntau cov kev ua si tsuas yog xav tau 16 mus rau 33 milliseconds los ua txhua qhov kev ua haujlwm thiab txav mus rau cov duab tom ntej.
  • Qhov zoo tshaj plaws, tsawg kawg ib feem ntawm lub kaw lus yuav tsum yog cov ntaub ntawv-tsav, kom cov tsis-coders tuaj yeem hloov pauv thiab hloov kho tuaj yeem tshwm sim sai dua.

Cia peb saib AI txoj hauv kev uas npog tag nrho Sense/Think/Act cycle.

Kev txiav txim siab yooj yim

Cia peb pib nrog qhov kev ua si yooj yim tshaj plaws - Pong. Lub hom phiaj: txav lub paddle kom lub pob bounces tawm nws es tsis ya dhau nws. Nws zoo li ntaus pob tesniv, qhov twg koj poob yog tias koj tsis ntaus pob. Ntawm no AI muaj ib txoj haujlwm yooj yim - txiav txim siab nyob rau hauv qhov kev taw qhia kom txav lub platform.

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Cov lus hais

Rau AI hauv Pong, qhov kev daws teeb meem tshaj plaws yog ib txwm sim tso lub platform hauv qab pob.

Ib qho yooj yim algorithm rau qhov no, sau rau hauv pseudocode:

txhua tus ncej / hloov tshiab thaum qhov kev ua si khiav:
yog tias lub pob nyob rau sab laug ntawm lub paddle:
txav paddle sab laug
lwm yam yog lub pob nyob rau sab xis ntawm lub paddle:
txav paddle txoj cai

Yog tias lub platform txav ntawm lub pob nrawm, ces qhov no yog qhov zoo tshaj plaws algorithm rau AI hauv Pong. Tsis tas yuav muaj teeb meem dab tsi yog tias tsis muaj cov ntaub ntawv ntau thiab ua tau rau tus neeg sawv cev.

Txoj hauv kev no yooj yim heev uas tag nrho Sense/Think/Act cycle is NW nyuam qhuav pom. Tab sis nws muaj:

  • Qhov kev nkag siab yog nyob rau hauv ob yog nqe lus. Qhov kev ua si paub tias lub pob nyob qhov twg thiab lub platform nyob qhov twg, yog li AI saib nws rau cov ntaub ntawv ntawd.
  • Qhov xav tau kuj suav nrog hauv ob yog cov lus hais. Lawv suav nrog ob txoj kev daws teeb meem, uas nyob rau hauv cov ntaub ntawv no yog kev sib koom ua ke. Yog li ntawd, ib qho ntawm peb qhov kev ua tau raug xaiv - txav lub platform mus rau sab laug, txav mus rau sab xis, lossis tsis ua dab tsi yog tias nws twb raug muab tso tseg lawm.
  • Txoj cai ib feem muaj nyob rau hauv Move Paddle Left thiab Move Paddle Right nqe lus. Nyob ntawm qhov kev ua si tsim, lawv tuaj yeem txav lub platform tam sim ntawd lossis ntawm qhov ceev tshwj xeeb.

Cov txheej txheem zoo li no yog hu ua reactive - muaj cov txheej txheem yooj yim (hauv qhov no yog cov lus hauv cov cai) uas cuam tshuam rau lub xeev tam sim no ntawm lub ntiaj teb thiab ua haujlwm.

tsob ntoo txiav txim siab

Tus piv txwv Pong yog qhov sib npaug rau lub tswv yim AI hu ua tsob ntoo txiav txim. Lub algorithm mus dhau nws mus txog "nplooj" - kev txiav txim siab txog qhov yuav ua li cas.

Cia peb ua ib daim duab thaiv ntawm tsob ntoo txiav txim rau lub algorithm ntawm peb lub platform:

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Txhua feem ntawm tsob ntoo hu ua node - AI siv graph theory los piav txog cov qauv no. Muaj ob hom nodes:

  • Cov kev txiav txim siab: xaiv ntawm ob qho kev xaiv raws li kev sim qee yam mob, qhov twg txhua qhov kev xaiv yog sawv cev raws li ib qho sib cais.
  • End nodes: Qhov kev txiav txim los ua uas sawv cev rau qhov kev txiav txim zaum kawg.

Lub algorithm pib los ntawm thawj qhov (tus "hauv paus" ntawm tsob ntoo). Nws yog txiav txim siab txog qhov twg tus me nyuam node mus rau, los yog nws ua tiav qhov kev txiav txim khaws cia hauv qhov node thiab tawm.

Dab tsi yog qhov txiaj ntsig ntawm kev txiav txim siab ntoo ua haujlwm ib yam li cov lus hais hauv nqe lus dhau los? Muaj ib txoj kab ke dav dav ntawm no qhov twg txhua qhov kev txiav txim siab tsuas muaj ib qho xwm txheej thiab ob qhov ua tau. Qhov no tso cai rau tus tsim tawm los tsim AI los ntawm cov ntaub ntawv sawv cev rau kev txiav txim siab hauv tsob ntoo yam tsis tas yuav nyuaj-code nws. Cia peb nthuav nws nyob rau hauv daim ntawv ntawm lub rooj:

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Nyob rau sab code koj yuav tau txais ib qhov system rau nyeem cov hlua. Tsim cov node rau txhua tus ntawm lawv, txuas kev txiav txim siab raws li kab ntawv thib ob, thiab cov menyuam nodes raws li kab thib peb thiab plaub. Koj tseem xav tau cov txheej txheem thiab kev ua haujlwm, tab sis tam sim no cov qauv ntawm qhov kev ua si yuav nyuaj dua. Ntawm no koj ntxiv cov kev txiav txim siab thiab kev ua, thiab tom qab ntawd kho tag nrho AI los ntawm kev kho cov ntoo txhais cov ntaub ntawv. Tom ntej no, koj hloov cov ntaub ntawv mus rau tus tsim game, leej twg tuaj yeem hloov tus cwj pwm yam tsis tau rov ua dua qhov kev ua si lossis hloov cov cai.

Cov ntoo txiav txim siab muaj txiaj ntsig zoo thaum lawv tsim tau los ntawm cov qauv loj (piv txwv li, siv ID3 algorithm). Qhov no ua rau lawv ua tau zoo thiab ua haujlwm siab rau kev faib cov xwm txheej raws li cov ntaub ntawv tau txais. Txawm li cas los xij, peb mus dhau qhov yooj yim rau cov neeg sawv cev xaiv cov kev ua.

Cov xwm txheej

Peb txheeb xyuas cov ntoo txiav txim siab uas siv cov xwm txheej ua ntej tsim thiab ua. Tus neeg tsim lub AI tuaj yeem teeb tsa tsob ntoo txawm li cas los xij nws xav tau, tab sis nws tseem yuav tsum tau cia siab rau tus coder uas tau programmed tag nrho. Yuav ua li cas yog tias peb tuaj yeem muab cov neeg tsim khoom siv los tsim lawv tus kheej cov xwm txheej lossis kev ua haujlwm?

Yog li ntawd tus programmer tsis tas yuav sau cov lej rau cov xwm txheej Yog Pob Sab Nraud Ntawm Paddle thiab Yog Pob Txoj Cai Ntawm Paddle, nws tuaj yeem tsim ib qho system uas tus tsim qauv yuav sau cov xwm txheej los xyuas cov txiaj ntsig no. Tom qab ntawd cov ntaub ntawv ntoo txiav txim yuav zoo li no:

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Qhov no yog qhov tseem ceeb zoo ib yam li hauv thawj lub rooj, tab sis cov kev daws teeb meem hauv lawv tus kheej muaj lawv tus kheej cov cai, me ntsis zoo li qhov xwm txheej ntawm cov lus hais. Nyob rau sab code, qhov no yuav nyeem nyob rau hauv kab thib ob rau cov kev txiav txim siab nodes, tab sis es tsis txhob nrhiav ib tug tshwj xeeb tej yam kev mob rau txim (Yog Pob Left Of Paddle), nws ntsuam xyuas cov conditional qhia thiab rov qab muaj tseeb los yog cuav raws li. Qhov no yog ua tiav siv Lua lossis Angelscript scripting lus. Siv lawv, tus tsim tawm tuaj yeem nqa cov khoom hauv nws qhov kev ua si (pob thiab paddle) thiab tsim cov kev hloov pauv uas yuav muaj nyob rau hauv tsab ntawv (ball.position). Tsis tas li, cov lus sau tau yooj yim dua li C ++. Nws tsis tas yuav tsum tau muab tso ua ke tag nrho, yog li nws yog qhov zoo tagnrho rau kev kho cov kev ua si nrawm nrawm thiab tso cai rau "tsis yog coders" los tsim cov haujlwm tsim nyog rau lawv tus kheej.

Hauv qhov piv txwv saum toj no, cov lus sau tsuas yog siv los ntsuas cov lus qhia, tab sis kuj tseem siv tau rau kev ua. Piv txwv li, cov ntaub ntawv Tsiv Paddle Txoj Cai tuaj yeem dhau los ua tsab ntawv tshaj tawm (ball.position.x += 10). Yog li ntawd qhov kev txiav txim kuj tau txhais nyob rau hauv tsab ntawv, tsis tas yuav tsum tau kev pab cuam Move Paddle Right.

Koj tuaj yeem mus ntxiv thiab sau tag nrho cov ntoo txiav txim siab ua lus sau. Qhov no yuav yog code nyob rau hauv daim ntawv ntawm hardcoded conditional nqe lus, tab sis lawv yuav tsum nyob rau hauv cov ntaub ntawv sab nraud, uas yog, lawv muaj peev xwm hloov tau yam tsis tau recompiling tag nrho cov kev pab cuam. Koj tuaj yeem hloov kho cov ntawv sau ntau zaus thaum lub sijhawm ua si kom nrawm nrawm cov lus teb AI sib txawv.

Kev tshwm sim teb

Cov piv txwv saum toj no yog zoo meej rau Pong. Lawv tsis tu ncua khiav Sense/Think/Act cycle thiab ua raws li lub xeev tshiab ntawm lub ntiaj teb no. Tab sis nyob rau hauv ntau txoj kev ua si koj yuav tsum tau hnov ​​​​txog cov xwm txheej ntawm tus kheej, thiab tsis ntsuas txhua yam ib zaug. Pong nyob rau hauv cov ntaub ntawv no twb yog ib tug piv txwv phem. Cia peb xaiv lwm tus.

Xav txog tus neeg tua phom uas cov yeeb ncuab tsis txav mus txog thaum lawv pom tus neeg ua si, tom qab ntawd lawv ua raws li lawv "kev tshwj xeeb": ib tug neeg yuav khiav mus rau "ceev", ib tug neeg yuav tawm tsam los ntawm qhov deb. Nws tseem yog ib qho yooj yim reactive system - "yog hais tias ib tug neeg uas ua ntawv yog pom, ua ib yam dab tsi" - tab sis nws muaj peev xwm yuav logically tawg mus rau hauv ib tug neeg uas ua ntawv pom tshwm sim thiab ib tug Reaction (xaiv teb thiab ua nws).

Qhov no coj peb rov qab mus rau Sense/Think/Act cycle. Peb tuaj yeem sau qhov Sense ib feem uas yuav kuaj xyuas txhua tus ncej seb AI pom tus neeg ua si. Yog tias tsis yog, tsis muaj dab tsi tshwm sim, tab sis yog tias nws pom, ces qhov kev tshwm sim Player Pom tau tsim. Cov cai yuav muaj ib ntu cais uas hais tias "thaum Player Pom tshwm sim, ua" qhov twg yog cov lus teb uas koj xav tau los hais txog Kev Xav thiab Txoj Cai. Yog li, koj yuav teeb tsa cov kev cuam tshuam rau Player Pom qhov tshwm sim: rau lub cim "rushing" - ChargeAndAttack, thiab rau sniper - HideAndSnipe. Cov kev sib raug zoo no tuaj yeem tsim nyob rau hauv cov ntaub ntawv cov ntaub ntawv kom kho sai yam tsis tas yuav rov ua dua. Cov lus sau tuaj yeem siv tau ntawm no thiab.

Kev txiav txim siab nyuaj

Txawm hais tias yooj yim cov tshuaj tiv thaiv kab mob muaj zog heev, muaj ntau qhov xwm txheej uas lawv tsis txaus. Qee zaum koj yuav tsum tau txiav txim siab sib txawv raws li tus neeg sawv cev tam sim no ua, tab sis nws nyuaj rau xav txog qhov no raws li qhov xwm txheej. Qee lub sij hawm muaj ntau yam xwm txheej los sawv cev rau lawv hauv cov ntoo txiav txim siab lossis tsab ntawv. Qee lub sij hawm koj yuav tsum tau ntsuas ua ntej seb qhov xwm txheej yuav hloov li cas ua ntej txiav txim siab txog qib tom ntej. Yuav tsum muaj kev txawj ntse ntxiv los daws cov teeb meem no.

Finite lub xeev tshuab

Finite state machine los yog FSM (finite state machine) yog ib txoj kev hais tias peb tus neeg sawv cev tam sim no nyob rau hauv ib qho ntawm ntau lub xeev tau, thiab nws tuaj yeem hloov ntawm ib lub xeev mus rau lwm qhov. Muaj qee lub xeev zoo li no - yog li lub npe. Qhov piv txwv zoo tshaj plaws ntawm lub neej yog lub teeb tsheb. Muaj ntau qhov sib txawv ntawm lub teeb nyob rau hauv ntau qhov chaw, tab sis lub hauv paus ntsiab lus yog tib yam - txhua lub xeev sawv cev rau ib yam dab tsi (nres, taug kev, thiab lwm yam). Lub teeb hluav taws xob tsuas yog nyob hauv ib lub xeev ntawm ib lub sijhawm, thiab txav ntawm ib mus rau lwm qhov raws li cov cai yooj yim.

Nws yog ib zaj dab neeg zoo sib xws nrog NPCs hauv kev ua si. Piv txwv li, cia peb saib xyuas nrog cov xeev hauv qab no:

  • Patrolling.
  • Tawm tsam.
  • Kev khiav tawm.

Thiab cov xwm txheej no rau kev hloov nws lub xeev:

  • Yog tus saib xyuas pom tus yeeb ncuab, nws tawm tsam.
  • Yog tias tus neeg saib xyuas tawm tsam tab sis tsis pom tus yeeb ncuab ntxiv lawm, nws rov qab mus saib xyuas.
  • Yog tias tus neeg saib xyuas tawm tsam tab sis raug mob hnyav, nws khiav tawm.

Koj tuaj yeem sau tau yog tias-cov nqe lus nrog tus neeg saib xyuas lub xeev hloov pauv thiab ntau yam kev kuaj xyuas: puas muaj tus yeeb ncuab nyob ze, qib kev noj qab haus huv ntawm NPC yog dab tsi, thiab lwm yam. Cia peb ntxiv ob peb lub xeev ntxiv:

  • Idleness - nruab nrab ntawm patrols.
  • Nrhiav - thaum pom tus yeeb ncuab ploj lawm.
  • Nrhiav Kev Pab - thaum pom tus yeeb ncuab, tab sis muaj zog heev los tawm tsam ib leeg.

Kev xaiv rau lawv txhua tus yog txwv - piv txwv li, tus neeg saib xyuas yuav tsis mus nrhiav tus yeeb ncuab zais yog tias nws muaj kev noj qab haus huv tsawg.

Tom qab tag nrho, muaj cov npe loj ntawm "ifs" , Tias " tuaj yeem dhau los ua nyuaj dhau lawm, yog li peb yuav tsum tau tsim txoj hauv kev uas tso cai rau peb khaws cov xeev thiab kev hloov pauv ntawm cov xeev hauv siab. Ua li no, peb suav nrog txhua lub xeev, thiab nyob rau hauv txhua lub xeev peb sau rau hauv ib daim ntawv teev tag nrho cov kev hloov mus rau lwm lub xeev, nrog rau cov xwm txheej tsim nyog rau lawv.

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Qhov no yog lub xeev cov lus hloov pauv - ib txoj hauv kev zoo los sawv cev FSM. Cia peb kos ib daim duab thiab tau txais cov ntsiab lus ua tiav ntawm NPC tus cwj pwm hloov pauv li cas.

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Daim duab qhia txog qhov tseem ceeb ntawm kev txiav txim siab rau tus neeg sawv cev no raws li qhov xwm txheej tam sim no. Ntxiv mus, txhua tus xub qhia txog kev hloov pauv ntawm cov xeev yog tias qhov xwm txheej ib sab ntawm nws muaj tseeb.

Txhua qhov hloov tshiab peb tshawb xyuas lub xeev tam sim no ntawm tus neeg sawv cev, saib los ntawm cov npe ntawm kev hloov pauv, thiab yog tias cov xwm txheej rau kev hloov pauv tau ua tiav, nws lees txais lub xeev tshiab. Piv txwv li, txhua lub thav duab xyuas seb lub sijhawm 10-thib ob puas tau tas sijhawm, thiab yog tias muaj, tus neeg saib xyuas mus ntawm lub xeev Idling mus rau Patrolling. Ib yam li ntawd, lub xeev Attacking xyuas tus neeg saib xyuas kev noj qab haus huv - yog tias nws qis, ces nws mus rau hauv lub xeev Fleeing.

Qhov no yog kev hloov pauv ntawm cov xeev, tab sis dab tsi txog tus cwj pwm cuam tshuam nrog cov xeev lawv tus kheej? Nyob rau hauv cov nqe lus ntawm kev siv tus cwj pwm tiag tiag rau ib lub xeev, feem ntau muaj ob hom "hook" qhov twg peb muab cov yeeb yam rau FSM:

  • Cov haujlwm uas peb ua ntu zus rau lub xeev tam sim no.
  • Cov kev ua peb ua thaum hloov ntawm ib lub xeev mus rau lwm lub.

Piv txwv rau thawj hom. Lub Xeev Patrolling yuav txav tus neeg sawv cev mus raws txoj kev taug kev txhua tus ncej. Lub xeev Attacking yuav sim pib qhov kev tawm tsam txhua lub thav duab lossis hloov mus rau lub xeev uas qhov no ua tau.

Rau hom thib ob, xav txog kev hloov pauv "yog tias tus yeeb ncuab pom thiab tus yeeb ncuab muaj zog heev, ces mus rau Lub Xeev Nrhiav Kev Pab. Tus neeg sawv cev yuav tsum xaiv qhov twg yuav mus nrhiav kev pab thiab khaws cov ntaub ntawv no kom lub Xeev Nrhiav Kev Pab paub tias yuav mus qhov twg. Thaum pom kev pab, tus neeg sawv cev rov qab mus rau lub xeev Attacking. Nyob rau lub sijhawm no, nws yuav xav qhia rau tus phooj ywg txog qhov kev hem thawj, yog li qhov NotifyFriendOfThreat yuav tshwm sim.

Ib zaug ntxiv, peb tuaj yeem saib qhov system no los ntawm lub lens ntawm Sense/Think/Act cycle. Sense yog embodied nyob rau hauv cov ntaub ntawv siv los ntawm kev hloov logic. Xav - kev hloov pauv muaj nyob hauv txhua lub xeev. Thiab Txoj Cai yog ua los ntawm kev ua haujlwm ua ntu zus hauv ib lub xeev lossis ntawm kev hloov pauv ntawm lub xeev.

Qee lub sij hawm tsis tu ncua kev xaiv tsa cov kev hloov pauv tuaj yeem raug nqi. Piv txwv li, yog tias txhua tus neeg sawv cev ua haujlwm nyuaj rau txhua tus ncej los txiav txim seb nws puas tuaj yeem pom cov yeeb ncuab thiab nkag siab tias nws puas tuaj yeem hloov pauv ntawm Patrolling mus rau Attacking xeev, qhov no yuav siv sijhawm ntau CPU.

Cov kev hloov tseem ceeb hauv lub xeev ntawm lub ntiaj teb tuaj yeem xav tias yog cov xwm txheej uas yuav ua tiav thaum lawv tshwm sim. Hloov chaw ntawm FSM tshuaj xyuas qhov kev hloov pauv "Kuv tus neeg sawv cev puas tuaj yeem pom tus neeg ua si?" txhua lub thav duab, ib qho kev sib cais tuaj yeem raug teeb tsa los kuaj xyuas tsawg zaus (piv txwv li 5 zaug ib ob). Thiab qhov tshwm sim yog qhov teeb meem Player Pom thaum daim tshev dhau.

Qhov no tau dhau mus rau FSM, uas tam sim no yuav tsum mus rau Player Pom qhov tshwm sim tau txais cov xwm txheej thiab teb raws li. Tus cwj pwm tshwm sim yog tib yam tshwj tsis yog yuav luag tsis pom kev ncua ua ntej teb. Tab sis kev ua tau zoo tau txhim kho vim yog kev sib cais Sense ib feem rau hauv ib feem ntawm qhov kev zov me nyuam.

Hierarchical finite xeev tshuab

Txawm li cas los xij, ua haujlwm nrog FSMs loj tsis yog ib txwm yooj yim. Yog tias peb xav nthuav lub xeev kev tawm tsam kom cais MeleeAttacking thiab RangedAttacking, peb yuav tau hloov pauv ntawm txhua lub xeev uas ua rau muaj kev tawm tsam (tam sim no thiab yav tom ntej).

Tej zaum koj yuav pom tias hauv peb qhov piv txwv muaj ntau qhov kev hloov pauv. Feem ntau cov kev hloov pauv hauv lub xeev Idling yog zoo ib yam rau cov kev hloov hauv lub xeev Patrolling. Nws yuav zoo tsis rov hais dua peb tus kheej, tshwj xeeb tshaj yog tias peb ntxiv cov xeev zoo sib xws. Nws ua rau muaj kev nkag siab rau pab pawg Idling thiab Patrolling nyob rau hauv daim ntawv qhia dav dav ntawm "tsis yog kev sib ntaus sib tua", qhov twg tsuas muaj ib qho kev hloov pauv mus rau kev sib ntaus sib tua hauv xeev. Yog tias peb xav tias daim ntawv no yog lub xeev, ces Idling thiab Patrolling ua substates. Ib qho piv txwv ntawm kev siv lub rooj hloov pauv cais rau qhov tshiab uas tsis yog kev sib ntaus sib tua substate:

Lub xeev tseem ceeb:
Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Tawm ntawm kev sib ntaus sib tua:
Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Thiab hauv daim duab kos duab:

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Nws yog tib qhov system, tab sis nrog lub xeev tsis muaj kev sib ntaus sib tua tshiab uas suav nrog Idling thiab Patrolling. Nrog rau txhua lub xeev uas muaj FSM nrog substates (thiab cov substates, nyob rau hauv lem, muaj lawv tus kheej FSMs - thiab hais txog rau ntev raws li koj xav tau), peb tau txais ib tug Hierarchical Finite State Machine los yog HFSM (hierarchical finite lub xeev tshuab). Los ntawm kev sib koom ua ke ntawm lub xeev tsis sib ntaus sib tua, peb txiav tawm ib pawg ntawm kev hloov pauv tsis tu ncua. Peb tuaj yeem ua tib yam rau txhua lub xeev tshiab nrog kev hloov pauv. Piv txwv li, yog tias yav tom ntej peb nthuav lub xeev Attacking mus rau MeleeAttacking thiab MissileAttacking xeev, lawv yuav yog substates uas hloov ntawm ib leeg raws li nyob deb ntawm cov yeeb ncuab thiab ammo muaj. Yog li ntawd, kev coj cwj pwm nyuaj thiab kev coj cwj pwm tsis zoo tuaj yeem sawv cev nrog qhov tsawg kawg ntawm kev hloov pauv.

Cwj pwm ntoo

Nrog HFSM, kev sib xyaw ua ke ntawm kev coj cwj pwm yog tsim los ntawm txoj kev yooj yim. Txawm li cas los xij, muaj qhov nyuaj me ntsis uas qhov kev txiav txim siab nyob rau hauv daim ntawv ntawm kev hloov pauv txoj cai yog ze rau lub xeev tam sim no. Thiab hauv ntau qhov kev ua si qhov no yog qhov xav tau. Thiab ceev faj siv lub xeev hierarchy tuaj yeem txo tus naj npawb ntawm kev hloov pauv. Tab sis qee zaum koj xav tau cov cai uas ua haujlwm txawm tias koj nyob hauv lub xeev twg, lossis siv yuav luag txhua lub xeev. Piv txwv li, yog tias tus neeg saib xyuas kev noj qab haus huv poob mus rau 25%, koj yuav xav kom nws khiav tawm txawm tias nws nyob hauv kev sib ntaus sib tua, tsis muaj zog, lossis hais lus - koj yuav tsum tau ntxiv cov xwm txheej no rau txhua lub xeev. Thiab yog tias koj tus tsim qauv tom qab xav hloov qhov kev noj qab haus huv qis los ntawm 25% mus rau 10%, ces qhov no yuav tsum tau ua dua.

Qhov zoo tshaj plaws, qhov xwm txheej no yuav tsum muaj qhov kev txiav txim siab txog "lub xeev yuav tsum nyob rau hauv" sab nraud lub xeev lawv tus kheej, txhawm rau hloov pauv hauv ib qho chaw thiab tsis kov cov xwm txheej hloov pauv. Cwj pwm ntoo tshwm ntawm no.

Muaj ntau ntau txoj hauv kev los siv lawv, tab sis cov ntsiab lus zoo ib yam rau txhua tus thiab zoo ib yam li tsob ntoo txiav txim siab: lub algorithm pib nrog "hauv paus" ntawm, thiab tsob ntoo muaj cov nodes uas sawv cev rau kev txiav txim siab lossis kev ua. Txawm li cas los xij, muaj qee qhov sib txawv tseem ceeb:

  • Nodes tam sim no rov qab ib qho ntawm peb qhov tseem ceeb: Ua tiav (yog tias txoj haujlwm tiav), Ua tsis tiav (yog tias nws tsis tuaj yeem pib), lossis Khiav (yog tias nws tseem khiav thiab tsis muaj qhov kawg tshwm sim).
  • Tsis muaj qhov kev txiav txim siab ntxiv los xaiv ntawm ob qho kev xaiv. Es tsis txhob, lawv yog Decorator nodes, uas muaj ib tug me nyuam node. Yog tias lawv ua tiav, lawv ua lawv tus menyuam ib leeg xwb.
  • Cov nodes uas ua cov yeeb yam xa rov qab tus nqi khiav los sawv cev rau cov kev ua tau ua.

Cov kab me me no tuaj yeem ua ke los tsim ntau tus cwj pwm nyuaj. Cia peb xav txog HFSM tus neeg saib xyuas los ntawm qhov piv txwv dhau los ua tus cwj pwm ntoo:

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Nrog rau cov qauv no yuav tsum tsis muaj kev hloov pauv ntawm Idling / Patrolling xeev mus rau Attacking lossis lwm lub xeev. Yog tias tus yeeb ncuab pom thiab tus cwj pwm kev noj qab haus huv tsis zoo, kev tua yuav tsum nres ntawm Fleeing node, txawm hais tias qhov twg nws tau ua dhau los - Patrolling, Idling, Attacking, lossis lwm yam.

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Cov ntoo coj tus cwj pwm yog qhov nyuaj - muaj ntau txoj hauv kev los tsim lawv, thiab nrhiav kev sib xyaw ua ke ntawm cov khoom dai thiab cov kab sib txuas tuaj yeem nyuaj. Kuj tseem muaj lus nug txog seb yuav txheeb xyuas tsob ntoo li cas - peb puas xav mus hla txhua qhov ntawm nws lossis tsuas yog thaum ib qho ntawm cov xwm txheej tau hloov pauv? Yuav ua li cas peb khaws lub xeev hais txog cov nodes - peb yuav ua li cas paub thaum peb tau Idling rau 10 vib nas this, los yog ua li cas peb thiaj paub tias cov nodes tau ua lub sij hawm dhau los yog li peb tuaj yeem ua cov txheej txheem kom raug?

Qhov no yog vim li cas thiaj muaj ntau yam kev siv. Piv txwv li, qee lub tshuab tau hloov cov khoom kho kom zoo nkauj nrog cov khoom siv hauv kab. Lawv rov ntsuam xyuas tsob ntoo thaum kho kom zoo nkauj hloov pauv, pab koom nrog cov nodes, thiab muab cov hloov tshiab raws sijhawm.

Utility-based system

Qee qhov kev ua si muaj ntau yam sib txawv. Nws yog ntshaw tias lawv tau txais tag nrho cov txiaj ntsig ntawm cov kev cai yooj yim thiab kev hloov pauv dav dav, tab sis tsis tas yuav tsum nyob hauv daim ntawv ntawm tsob ntoo ua tiav ntawm tus cwj pwm. Es tsis txhob muaj cov kev xaiv meej meej lossis tsob ntoo ntawm qhov ua tau, nws yooj yim dua los tshuaj xyuas txhua qhov kev ua thiab xaiv qhov tsim nyog tshaj plaws nyob rau lub sijhawm tam sim no.

Lub Utility-based system yuav pab nrog qhov no. Qhov no yog ib qho system uas tus neeg sawv cev muaj ntau yam kev ua thiab xaiv qhov twg los ua raws li kev txheeb ze ntawm txhua qhov. Qhov chaw siv hluav taws xob yog qhov kev ntsuas tsis txaus ntseeg ntawm qhov tseem ceeb lossis qhov xav tau nws yog rau tus neeg sawv cev ua qhov kev txiav txim no.

Kev suav cov nqi hluav taws xob ntawm kev nqis tes ua raws li lub xeev tam sim no thiab ib puag ncig, tus neeg sawv cev tuaj yeem tshawb xyuas thiab xaiv lwm lub xeev uas tsim nyog tshaj plaws txhua lub sijhawm. Qhov no zoo ib yam li FSM, tshwj tsis yog qhov kev hloov pauv tau txiav txim siab los ntawm kev kwv yees rau txhua lub xeev muaj peev xwm, suav nrog qhov tam sim no. Thov nco ntsoov tias peb xaiv qhov txiaj ntsig zoo tshaj plaws kom txav mus los (lossis nyob yog tias peb tau ua tiav lawm). Rau ntau yam, qhov no tuaj yeem yog qhov sib npaug tab sis xaiv los ntawm ib daim ntawv me me.

Lub kaw lus muab qhov kev txiav txim siab ntawm cov nqi siv hluav taws xob - piv txwv li, los ntawm 0 (tsis xav tau kiag li) txog 100 (tsim nyog). Txhua qhov kev txiav txim muaj tus lej ntawm cov tsis muaj feem cuam tshuam rau kev suav ntawm tus nqi no. Rov qab mus rau peb tus neeg saib xyuas piv txwv:

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Kev hloov pauv ntawm qhov kev ua yog tsis meej-txhua lub xeev tuaj yeem ua raws li lwm yam. Kev nqis tes ua tseem ceeb muaj nyob rau hauv cov nqi hluav taws xob rov qab. Yog tias tus yeeb ncuab pom, thiab tus yeeb ncuab ntawd muaj zog, thiab tus cwj pwm kev noj qab haus huv tsis zoo, ces ob qho kev khiav tawm thiab Nrhiav Pab Pawg yuav rov qab muaj qhov tsis muaj txiaj ntsig siab. Hauv qhov no, FindingHelp yuav ib txwm siab dua. Ib yam li ntawd, cov haujlwm uas tsis yog kev sib ntaus sib tua yeej tsis rov qab ntau dua 50, yog li lawv yuav tsum qis dua cov kev sib ntaus sib tua. Koj yuav tsum coj qhov no mus rau hauv tus account thaum tsim kev nqis tes ua thiab suav lawv cov txiaj ntsig.

Hauv peb qhov piv txwv, qhov kev nqis tes ua rov qab yog tus nqi tas mus li lossis ib qho ntawm ob qhov tseem ceeb. Lub kaw lus muaj tseeb dua yuav rov qab qhov kwv yees los ntawm ntau qhov tseem ceeb. Piv txwv li, Fleeing action rov qab muaj txiaj ntsig ntau dua yog tias tus neeg saib xyuas kev noj qab haus huv qis dua, thiab qhov kev tawm tsam Attacking rov qab cov nqi hluav taws xob qis dua yog tias tus yeeb ncuab muaj zog heev. Vim li no, Kev Ua Phem Txhaum Cai yog qhov tseem ceeb tshaj Kev Tawm Tsam hauv txhua qhov xwm txheej uas tus neeg sawv cev xav tias nws tsis muaj kev noj qab haus huv txaus los kov yeej tus yeeb ncuab. Qhov no tso cai rau kev nqis tes ua ua ntej raws li tus lej ntawm cov txheej txheem, ua rau txoj hauv kev no hloov pauv thiab hloov pauv ntau dua li tsob ntoo coj cwj pwm lossis FSM.

Txhua qhov kev nqis tes ua muaj ntau yam xwm txheej rau kev suav nrog. Lawv tuaj yeem sau ua lus sau los yog ua cov qauv lej. Lub Sims, uas simulates tus cwj pwm niaj hnub niaj hnub, ntxiv txheej ntxiv ntawm kev suav - tus neeg sawv cev tau txais cov "kev txhawb siab" uas cuam tshuam rau cov nqi hluav taws xob. Yog tias tus cwj pwm tshaib plab, lawv yuav dhau los ua kev tshaib kev nqhis dhau sijhawm, thiab cov nqi hluav taws xob ntawm EatFood qhov kev txiav txim siab yuav nce mus txog thaum tus cwj pwm ua nws, txo qis kev tshaib kev nqhis thiab rov qab los ntawm EatFood tus nqi rau xoom.

Lub tswv yim ntawm kev xaiv cov kev nqis tes ua raws li qhov ntsuas qhov system yog qhov yooj yim heev, yog li Utility-based system tuaj yeem siv los ua ib feem ntawm AI cov txheej txheem txiav txim siab, es tsis yog qhov hloov pauv tag nrho rau lawv. Cov ntoo txiav txim siab tuaj yeem thov kom muaj qhov ntsuas hluav taws xob ntawm ob tus menyuam no thiab xaiv qhov siab dua. Ib yam li ntawd, tsob ntoo coj tus cwj pwm tuaj yeem muaj qhov sib xyaw Utility node los ntsuas qhov kev siv hluav taws xob los txiav txim siab tus me nyuam yuav ua li cas.

Movement thiab navigation

Hauv cov piv txwv yav dhau los, peb muaj lub platform uas peb txav mus rau sab laug lossis sab xis, thiab tus neeg saib xyuas uas saib xyuas lossis tawm tsam. Tab sis yuav ua li cas raws nraim peb tuav tus neeg sawv cev txav mus rau lub sijhawm? Yuav ua li cas peb teem ceev, peb yuav ua li cas kom tsis txhob muaj obstacles, thiab yuav ua li cas peb npaj ib txoj kev thaum mus txog rau ib qho chaw twg yog qhov nyuaj tshaj li tsuas yog txav mus rau hauv txoj kab ncaj nraim? Cia peb saib qhov no.

Kev tswj kav

Nyob rau theem pib, peb yuav xav tias txhua tus neeg sawv cev muaj tus nqi nrawm, uas suav nrog kev txav nrawm npaum li cas thiab mus rau qhov twg. Nws tuaj yeem ntsuas tau hauv meters ib thib ob, mais ib teev, pixels ib ob, thiab lwm yam. Rov qab los ntawm Sense/Think/Act Loop, peb tuaj yeem xav txog tias qhov xav tau xaiv qhov nrawm, thiab Txoj Cai ib feem siv qhov nrawm rau tus neeg sawv cev. Feem ntau kev ua si muaj lub cev lub cev ua haujlwm rau koj, kawm tus nqi nrawm ntawm txhua yam khoom thiab kho nws. Yog li ntawd, koj tuaj yeem tawm ntawm AI nrog ib txoj haujlwm - txiav txim siab seb tus neeg sawv cev yuav tsum muaj li cas. Yog tias koj paub qhov twg tus neeg sawv cev yuav tsum nyob, ces koj yuav tsum tau txav mus rau hauv txoj kev yog ntawm qhov teeb tsa ceev. Ib qho kev sib npaug tsis tseem ceeb heev:

xav_travel = destination_position – agent_position

Xav txog lub ntiaj teb 2D. Tus neeg sawv cev yog nyob ntawm qhov taw tes (-2,-2), qhov chaw nyob yog qhov chaw nyob rau sab qaum teb sab hnub tuaj ntawm taw tes (30, 20), thiab txoj kev xav tau rau tus neeg sawv cev mus txog yog (32, 22). Cia peb hais tias cov haujlwm no yog ntsuas hauv metres - yog tias peb coj tus neeg saib xyuas qhov nrawm mus rau 5 meters ib ob, ces peb yuav ntsuas peb qhov hloov pauv vector thiab tau txais qhov nrawm ntawm kwv yees li (4.12, 2.83). Nrog rau cov kev txwv no, tus neeg sawv cev yuav tuaj txog ntawm nws qhov chaw nyob hauv yuav luag 8 vib nas this.

Koj tuaj yeem rov xam cov nqi txhua lub sijhawm. Yog tias tus neeg sawv cev nyob ib nrab ntawm lub hom phiaj, qhov kev txav mus los yuav yog ib nrab ntawm qhov ntev, tab sis txij li tus neeg sawv cev qhov siab tshaj plaws yog 5 m / s (peb txiav txim siab qhov no saum toj no), qhov ceev yuav zoo ib yam. Qhov no kuj ua haujlwm rau kev txav lub hom phiaj, tso cai rau tus neeg sawv cev hloov pauv me me thaum lawv txav mus.

Tab sis peb xav tau ntau qhov sib txawv - piv txwv li, maj mam nce qhov nrawm kom simulate tus cwj pwm txav ntawm kev sawv mus rau kev khiav. Tib yam tuaj yeem ua tiav thaum kawg ua ntej nres. Cov yam ntxwv no yog lub npe hu ua tus cwj pwm coj, txhua tus muaj lub npe tshwj xeeb: Nrhiav, khiav, Tuaj txog, thiab lwm yam. Lub tswv yim yog tias acceleration rog tuaj yeem siv rau tus neeg saib xyuas qhov nrawm, raws li kev sib piv tus neeg sawv cev txoj hauj lwm thiab kev ceev tam sim no nrog rau qhov chaw nyob hauv. kom siv ntau txoj kev txav mus rau lub hom phiaj.

Txhua tus cwj pwm muaj lub hom phiaj sib txawv me ntsis. Nrhiav thiab Tuaj Txog yog txoj hauv kev txav tus neeg sawv cev mus rau qhov chaw. Obstacle Avoidance thiab Separation kho tus neeg sawv cev lub zog kom tsis txhob muaj kev cuam tshuam ntawm txoj kev mus rau lub hom phiaj. Alignment thiab Cohesion ua kom cov neeg sawv cev txav mus ua ke. Txhua tus lej ntawm kev coj tus cwj pwm sib txawv tuaj yeem suav tau los ua ib txoj hauv kev vector coj txhua yam rau hauv tus account. Tus neeg sawv cev uas siv qhov Kev Tuaj Txog, Kev Sib Cais, thiab Kev Tiv Thaiv Kev Tiv Thaiv kom nyob deb ntawm phab ntsa thiab lwm tus neeg sawv cev. Txoj hauv kev no ua haujlwm zoo hauv qhov chaw qhib yam tsis muaj cov ntsiab lus tsis tsim nyog.

Hauv cov xwm txheej nyuaj dua, qhov sib ntxiv ntawm cov cwj pwm sib txawv ua haujlwm tsis zoo - piv txwv li, tus neeg sawv cev tuaj yeem daig hauv phab ntsa vim muaj kev tsis sib haum xeeb ntawm Kev Tuaj Txog thiab Obstacle Avoidance. Yog li ntawd, koj yuav tsum xav txog cov kev xaiv uas nyuaj tshaj qhov tsuas yog ntxiv tag nrho cov txiaj ntsig. Txoj kev yog qhov no: es tsis txhob ntxiv cov txiaj ntsig ntawm txhua tus cwj pwm, koj tuaj yeem xav txog kev txav mus los ntawm cov lus qhia sib txawv thiab xaiv qhov kev xaiv zoo tshaj plaws.

Txawm li cas los xij, nyob rau hauv ib puag ncig nyuaj nrog qhov kawg tuag thiab kev xaiv ntawm txoj kev twg mus, peb yuav xav tau ib yam dab tsi ntau dua.

Nrhiav txoj hauv kev

Kev coj tus cwj pwm zoo yog qhov zoo rau kev txav mus los yooj yim hauv thaj chaw qhib (teb chaw ncaws pob lossis chaw ua si) qhov twg tau txais los ntawm A mus rau B yog txoj hauv kev ncaj nraim nrog tsuas yog me me kev taug kev ncig obstacles. Rau txoj kev nyuaj, peb xav tau txoj kev nrhiav, uas yog ib txoj hauv kev tshawb nrhiav lub ntiaj teb thiab txiav txim siab ntawm txoj kev hla nws.

Qhov yooj yim tshaj plaws yog siv daim phiaj rau txhua qhov square ntawm tus neeg sawv cev thiab ntsuas qhov twg ntawm lawv raug tso cai txav mus. Yog tias ib qho ntawm lawv yog qhov chaw, ces ua raws li txoj kev ntawm txhua lub square mus rau yav dhau los kom txog rau thaum koj mus txog qhov pib. Qhov no yog txoj kev. Txwv tsis pub, rov ua cov txheej txheem nrog lwm cov squares nyob ze kom txog thaum koj pom koj lub hom phiaj lossis koj khiav tawm ntawm cov squares (lub ntsiab lus tsis muaj txoj hauv kev). Qhov no yog qhov hu ua Breadth-First Search lossis BFS (breadth-thawj tshawb nrhiav algorithm). Hauv txhua kauj ruam nws saib nyob rau hauv tag nrho cov lus qhia (li no dav, "dav"). Qhov chaw tshawb nrhiav zoo li lub wavefront uas txav mus txog thaum nws mus txog qhov chaw uas xav tau - qhov chaw tshawb nrhiav nthuav dav ntawm txhua kauj ruam kom txog rau thaum qhov kawg taw tes suav nrog, tom qab ntawd nws tuaj yeem taug qab mus rau qhov pib.

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Yog li ntawd, koj yuav tau txais ib daim ntawv teev cov squares raws li txoj kev xav tau muab tso ua ke. Qhov no yog txoj kev (li no, pathfinding) - ib daim ntawv teev cov chaw uas tus neeg sawv cev yuav mus xyuas thaum ua raws li qhov chaw.

Muab hais tias peb paub txoj hauj lwm ntawm txhua lub xwmfab hauv ntiaj teb, peb tuaj yeem siv tus cwj pwm coj txav mus los ntawm txoj kev - ntawm node 1 mus rau ntawm 2, tom qab ntawd los ntawm node 2 mus rau ntawm 3, thiab lwm yam. Qhov kev xaiv yooj yim tshaj plaws yog mus rau qhov chaw nruab nrab ntawm lub square tom ntej, tab sis ib qho kev xaiv zoo dua yog nres nyob rau hauv nruab nrab ntawm ntug nruab nrab ntawm lub square tam sim no thiab lwm qhov. Vim li no, tus neeg sawv cev yuav muaj peev xwm txiav cov ces kaum ntawm ntse lem.

BFS algorithm kuj muaj qhov tsis zoo - nws tshawb txog ntau lub xwmfab hauv qhov "tsis ncaj ncees lawm" kev coj ua raws li "txoj cai" kev taw qhia. Qhov no yog qhov uas muaj ntau txoj hauv kev hu ua A * (A hnub qub) los ua si. Nws ua haujlwm zoo ib yam, tab sis tsis yog qhov muag tsis pom kev soj ntsuam cov squares nyob sib ze (ces cov neeg nyob ze ntawm cov neeg nyob ze, tom qab ntawd cov neeg nyob ze ntawm cov neeg nyob ze, thiab lwm yam), nws sau cov nodes rau hauv ib daim ntawv teev npe thiab txheeb xyuas lawv kom cov tom ntej node tshuaj xyuas yog ib txwm muaj. ib qho uas coj mus rau txoj kev luv tshaj plaws. Nodes yog txheeb raws li ib tug heuristic uas yuav siv sij hawm mus rau hauv tus account ob yam - "tus nqi" ntawm ib tug hypothetical txoj kev mus rau lub xwmfab xav tau (nrog rau cov nqi mus ncig teb chaws) thiab kev kwv yees ntawm deb npaum li cas lub square yog los ntawm qhov chaw (tshaj nrhiav hauv lub txoj cai).

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Qhov piv txwv no qhia tau hais tias tus neeg sawv cev tshawb nrhiav ib lub xwmfab ntawm ib lub sijhawm, txhua zaus xaiv qhov uas nyob ib sab uas yog qhov zoo tshaj plaws. Txoj kev tshwm sim yog tib yam li BFS, tab sis tsawg dua squares tau txiav txim siab hauv cov txheej txheem - uas muaj kev cuam tshuam loj rau kev ua si game.

Tsiv tsis muaj kab sib chaws

Tab sis feem ntau cov kev ua si tsis tau muab tso rau ntawm kab sib chaws, thiab feem ntau nws tsis tuaj yeem ua li ntawd yam tsis muaj kev txi tiag tiag. Yuav tsum muaj kev sib haum xeeb. Cov squares yuav tsum loj npaum li cas? Loj dhau thiab lawv yuav tsis tuaj yeem sawv cev rau txoj hauv kev me me lossis kev hloov pauv, me me thiab yuav muaj ntau qhov squares los tshawb nrhiav, uas yuav siv sijhawm ntau heev.

Thawj qhov kom nkag siab yog tias lub mesh muab peb cov duab ntawm cov kab txuas txuas. A * thiab BFS algorithms yeej ua haujlwm ntawm cov duab thiab tsis quav ntsej txog peb cov mesh txhua. Peb tuaj yeem tso cov nodes nyob txhua qhov chaw hauv ntiaj teb kev ua si: tsuav yog muaj kev sib txuas ntawm ob qho kev sib txuas, nrog rau nruab nrab ntawm qhov pib thiab qhov kawg cov ntsiab lus thiab tsawg kawg yog ib qho ntawm cov nodes, cov algorithm yuav ua haujlwm zoo li ua ntej. Qhov no feem ntau hu ua waypoint system, txij li txhua lub node sawv cev rau txoj haujlwm tseem ceeb hauv ntiaj teb uas tuaj yeem yog ib feem ntawm txhua txoj hauv kev hypothetical.

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab
Piv txwv 1: ib lub pob hauv txhua lub square. Kev tshawb nrhiav pib los ntawm qhov chaw uas tus neeg sawv cev nyob thiab xaus rau ntawm qhov ntawm qhov xav tau square.

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab
Piv txwv 2: Ib pawg me me ntawm cov nodes (waypoints). Kev tshawb nrhiav pib ntawm tus neeg saib xyuas lub xwmfab, mus dhau ntawm tus lej ntawm cov nodes, thiab tom qab ntawd txuas ntxiv mus rau qhov chaw.

Qhov no yog ib qho yooj yim thiab muaj zog system. Tab sis qee qhov kev saib xyuas yog xav tau hauv kev txiav txim siab qhov twg thiab yuav ua li cas tso ib txoj hauv kev, txwv tsis pub cov neeg sawv cev yuav tsis pom qhov ze tshaj plaws thiab yuav tsis tuaj yeem pib txoj kev. Nws yuav yooj yim dua yog tias peb tuaj yeem tso cov ntsiab lus raws li qhov geometry ntawm lub ntiaj teb.

Qhov no yog qhov chaw navigation mesh lossis navmesh (navigation mesh) tshwm. Qhov no feem ntau yog 2D mesh ntawm daim duab peb sab uas yog overlayed ntawm lub geometry ntawm lub ntiaj teb no - nyob qhov twg tus neeg sawv cev raug tso cai taug kev. Txhua daim duab peb sab hauv mesh dhau los ua ib qho ntawm daim duab, thiab muaj txog li peb daim duab peb sab uas nyob ib sab uas nyob ib sab ntawm daim duab.

Daim duab no yog ib qho piv txwv los ntawm Unity lub cav - nws tau soj ntsuam cov geometry hauv ntiaj teb thiab tsim navmesh (hauv lub screenshot hauv lub teeb xiav). Txhua tus polygon hauv navmesh yog thaj chaw uas tus neeg sawv cev tuaj yeem sawv lossis txav los ntawm ib lub polygon mus rau lwm lub polygon. Hauv qhov piv txwv no, cov polygons me dua cov plag tsev uas lawv nyob - qhov no yog ua tiav txhawm rau coj mus rau hauv tus account qhov loj ntawm tus neeg sawv cev, uas yuav dhau mus dhau nws txoj haujlwm nominal.

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Peb tuaj yeem tshawb nrhiav txoj hauv kev los ntawm qhov mesh no, dua siv A * algorithm. Qhov no yuav muab peb txoj hauv kev yuav luag zoo meej hauv lub ntiaj teb, uas yuav siv sij hawm rau hauv tus account tag nrho cov geometry thiab tsis xav tau cov nodes tsis tsim nyog thiab tsim cov waypoints.

Pathfinding yog ib lub ntsiab lus dav heev uas ib ntu ntawm ib tsab xov xwm tsis txaus. Yog tias koj xav kawm kom ntxaws ntxiv, qhov no yuav pab tau Amit Patel lub vev xaib.

Kev npaj

Peb tau kawm nrog txoj kev nrhiav pom tias qee zaum nws tsis txaus los tsuas yog xaiv ib qho kev taw qhia thiab txav mus - peb yuav tsum xaiv ib txoj hauv kev thiab ua ob peb zaug kom tau mus rau qhov chaw uas peb xav tau. Peb tuaj yeem nthuav dav lub tswv yim no: kev ua tiav lub hom phiaj tsis yog cov kauj ruam tom ntej xwb, tab sis tag nrho cov kab ke uas qee zaum koj yuav tsum tau saib ua ntej ob peb kauj ruam kom paub tias thawj qhov yuav tsum yog dab tsi. Qhov no hu ua kev npaj. Pathfinding tuaj yeem xav tias yog ib qho ntawm ntau qhov txuas ntxiv rau kev npaj. Hais txog peb lub Sense/Think/Act cycle, qhov no yog qhov Think part npaj ntau yam Act rau yav tom ntej.

Cia peb saib cov piv txwv ntawm board game Magic: The Gathering . Peb mus thawj zaug nrog cov ntawv teev lus hauv qab no hauv peb txhais tes:

  • Swamp - Muab 1 mana dub (daim npav av).
  • Hav zoov - muab 1 ntsuab mana (daim npav av).
  • Fugitive Wizard - Yuav tsum muaj 1 xiav mana los hu.
  • Elvish Mystic - Yuav tsum muaj 1 mana ntsuab kom hu.

Peb tsis quav ntsej txog peb daim npav ntxiv kom nws yooj yim dua. Raws li txoj cai, tus neeg ua si raug tso cai ua si 1 daim npav av ib zaug, nws tuaj yeem "kais" daim npav no kom rho tawm mana los ntawm nws, thiab tom qab ntawd muab cov ntawv sau (xws li hu ib tug tsiaj) raws li tus nqi ntawm mana. Hauv qhov xwm txheej no, tib neeg tus neeg ua si paub ua si Hav Zoov, coj mus rhaub 1 mana ntsuab, thiab tom qab ntawd hu Elvish Mystic. Tab sis qhov kev ua si AI tuaj yeem paub qhov no li cas?

Kev npaj yooj yim

Txoj hauv kev tsis tseem ceeb yog sim txhua qhov kev ua dhau los kom txog thaum tsis muaj qhov tsim nyog sab laug. Los ntawm saib daim npav, AI pom dab tsi Swamp tuaj yeem ua si. Thiab nws ua si. Puas muaj lwm yam kev txiav txim sab laug no? Nws tsis tuaj yeem hu Elvish Mystic lossis Fugitive Wizard, vim lawv xav tau ntsuab thiab xiav mana raws li hu lawv, thaum Swamp tsuas yog muab cov mana dub. Thiab nws yuav tsis muaj peev xwm ua si Hav Zoov, vim nws twb ua si Swamp lawm. Yog li, qhov kev ua si AI ua raws li cov cai, tab sis ua nws tsis zoo. tuaj yeem txhim kho.

Kev npaj tuaj yeem nrhiav tau ib daim ntawv teev npe uas coj qhov kev ua si mus rau lub xeev xav tau. Ib yam li txhua qhov square ntawm txoj kev muaj cov neeg nyob ze (hauv kev nrhiav), txhua qhov kev ua hauv ib txoj kev npaj kuj muaj cov neeg nyob ze lossis cov neeg ua tiav. Peb tuaj yeem nrhiav cov haujlwm no thiab ua haujlwm tom ntej kom txog thaum peb mus txog lub xeev xav tau.

Hauv peb qhov piv txwv, cov txiaj ntsig xav tau yog "xov hu ib tus tsiaj yog tias ua tau." Thaum pib ntawm qhov tig, peb pom tsuas yog ob qho ua tau tso cai los ntawm cov cai ntawm qhov kev ua si:

1. Ua Si Swamp (qhov tshwm sim: Swamp hauv qhov kev ua si)
2. Ua si hav zoov (qhov tshwm sim: Hav zoov hauv qhov kev ua si)

Txhua qhov kev nqis tes ua tuaj yeem ua rau muaj kev nqis tes ua ntxiv thiab kaw lwm tus, dua nyob ntawm cov cai ntawm kev ua si. Xav txog tias peb ua si Swamp - qhov no yuav tshem tawm Swamp raws li cov kauj ruam tom ntej (peb twb ua si lawm), thiab qhov no tseem yuav tshem Hav zoov (vim raws li txoj cai koj tuaj yeem ua si ib daim npav av ib zaug). Tom qab no, AI ntxiv tau txais 1 dub mana ua cov kauj ruam tom ntej vim tsis muaj lwm txoj kev xaiv. Yog hais tias nws mus tom ntej thiab xaiv Kais Swamp, nws yuav tau txais 1 units ntawm mana dub thiab yuav tsis ua dab tsi nrog nws.

1. Ua Si Swamp (qhov tshwm sim: Swamp hauv qhov kev ua si)
1.1 "Tap" Swamp (qhov tshwm sim: Swamp "tapped", +1 unit ntawm mana dub)
Tsis muaj kev nqis tes ua - END
2. Ua si hav zoov (qhov tshwm sim: Hav zoov hauv qhov kev ua si)

Daim ntawv teev npe ua luv luv, peb mus txog qhov kawg. Peb rov ua cov txheej txheem rau cov kauj ruam tom ntej. Peb ua si hav zoov, qhib qhov kev txiav txim "tau 1 ntsuab mana", uas nyob rau hauv lem yuav qhib qhov thib peb ua - hu Elvish Mystic.

1. Ua Si Swamp (qhov tshwm sim: Swamp hauv qhov kev ua si)
1.1 "Tap" Swamp (qhov tshwm sim: Swamp "tapped", +1 unit ntawm mana dub)
Tsis muaj kev nqis tes ua - END
2. Ua si hav zoov (qhov tshwm sim: Hav zoov hauv qhov kev ua si)
2.1 "Civ" Hav zoov (qhov tshwm sim: Hav zoov yog "tapped", +1 chav tsev ntsuab mana)
2.1.1 Summon Elvish Mystic (qhov tshwm sim: Elvish Mystic hauv kev ua si, -1 ntsuab mana)
Tsis muaj kev nqis tes ua - END

Thaum kawg, peb tshawb nrhiav txhua yam ua tau thiab nrhiav tau ib txoj kev npaj uas hu ib tug tsiaj.

Qhov no yog ib qho piv txwv yooj yim heev. Nws raug nquahu kom xaiv cov phiaj xwm zoo tshaj plaws, es tsis yog ib txoj kev npaj ua tau raws li qee qhov kev cai. Nws yog feem ntau ua tau los soj ntsuam cov kev npaj muaj peev xwm raws li qhov tshwm sim los yog tag nrho cov txiaj ntsig ntawm lawv qhov kev siv. Koj tuaj yeem tau qhab nia koj tus kheej 1 point rau kev ua si daim npav av thiab 3 ntsiab lus rau kev hu tus tsiaj. Ua si Swamp yuav yog 1 taw tes phiaj xwm. Thiab ua si Hav Zoov β†’ Coj mus rhaub Hav zoov β†’ hu Elvish Mystic yuav muab 4 ntsiab lus tam sim ntawd.

Qhov no yog li cas kev npaj ua haujlwm hauv Khawv koob: Kev Sib sau, tab sis tib lub laj thawj siv tau rau lwm qhov xwm txheej. Piv txwv li, txav ib lub pawn los ua chaw rau tus npis sov txav hauv chess. Los yog muab npog tom qab phab ntsa kom nyab xeeb tua hauv XCOM zoo li no. Feem ntau, koj tau txais lub tswv yim.

Txhim kho kev npaj

Qee lub sij hawm muaj ntau yam ua tau los xav txog txhua qhov kev xaiv ua tau. Rov qab mus rau qhov piv txwv nrog Khawv koob: Kev Sib Sau: cia peb hais tias hauv qhov kev ua si thiab hauv koj txhais tes muaj ob peb daim npav av thiab tsiaj txhu - tus naj npawb ntawm kev sib txuas ua ke ntawm kev txav tuaj yeem nyob hauv kaum ob. Muaj ob peb txoj kev daws teeb meem.

Thawj txoj kev yog rov qab chaining. Tsis txhob sim txhua qhov kev sib txuas, nws yog qhov zoo dua los pib nrog qhov kawg tshwm sim thiab sim nrhiav txoj hauv kev ncaj qha. Es tsis txhob mus los ntawm lub hauv paus ntawm tsob ntoo mus rau ib tug tshwj xeeb nplooj, peb tsiv nyob rau hauv lub opposite kev taw qhia - los ntawm nplooj mus rau hauv paus. Txoj kev no yooj yim dua thiab sai dua.

Yog tias tus yeeb ncuab muaj 1 txoj kev noj qab haus huv, koj tuaj yeem nrhiav qhov "deal 1 lossis ntau dua kev puas tsuaj". Yuav kom ua tiav qhov no, ntau cov xwm txheej yuav tsum tau ua tiav:

1. Kev puas tsuaj tuaj yeem tshwm sim los ntawm kev sau ntawv - nws yuav tsum nyob hauv tes.
2. Txhawm rau muab tus spell, koj xav tau mana.
3. Yuav kom tau txais mana, koj yuav tsum tau ua daim npav av.
4. Ua si daim npav av, koj yuav tsum muaj nws hauv koj txhais tes.

Lwm txoj kev yog qhov zoo tshaj plaws-thawj nrhiav. Tsis txhob sim txhua txoj hauv kev, peb xaiv qhov tsim nyog tshaj plaws. Feem ntau, txoj kev no muab cov phiaj xwm zoo tshaj plaws yam tsis muaj nqi tshawb nrhiav. A * yog ib daim ntawv ntawm kev tshawb fawb thawj zaug zoo tshaj plaws - los ntawm kev tshuaj xyuas cov kev pheej hmoo tshaj plaws los ntawm qhov pib, nws tuaj yeem pom txoj hauv kev zoo tshaj plaws yam tsis tas yuav kuaj lwm yam kev xaiv.

Ib qho kev nthuav thiab nce nrov tshaj qhov kev tshawb nrhiav thawj zaug yog Monte Carlo Tree Search. Tsis txhob twv seb cov phiaj xwm twg zoo dua li lwm tus thaum xaiv txhua qhov kev ua tom ntej, lub algorithm xaiv random successors ntawm txhua kauj ruam kom txog thaum nws mus txog qhov kawg (thaum lub hom phiaj ua rau yeej lossis swb). Qhov kawg tshwm sim yog siv los nce lossis txo qhov hnyav ntawm cov kev xaiv yav dhau los. Los ntawm kev rov ua cov txheej txheem no ob peb zaug ua ke, lub algorithm muab kev kwv yees zoo ntawm qhov zoo tshaj plaws tom ntej no mus, txawm tias qhov xwm txheej hloov pauv (yog tias tus yeeb ncuab ua haujlwm cuam tshuam nrog tus neeg ua si).

Tsis muaj zaj dab neeg hais txog kev npaj hauv kev ua si yuav ua tiav yam tsis muaj Lub Hom Phiaj Kev Npaj Ua Haujlwm lossis GOAP (kev npaj ua raws li lub hom phiaj). Qhov no yog ib txoj kev siv dav thiab sib tham, tab sis lwm yam tshaj li ob peb lub ntsiab lus txawv, nws yog qhov tseem ceeb ntawm txoj kev rov qab chaining peb tau tham txog ua ntej. Yog tias lub hom phiaj yog "tua kom tus neeg ua si" thiab tus neeg ua si nyob tom qab npog, txoj kev npaj yuav yog: rhuav tshem nrog lub grenade β†’ tau txais β†’ pov nws.

Feem ntau muaj ntau lub hom phiaj, txhua tus muaj nws tus kheej qhov tseem ceeb. Yog tias lub hom phiaj tseem ceeb tshaj plaws tsis tuaj yeem ua tiav (tsis muaj kev sib xyaw ua ke tsim "tua tus neeg ua si" txoj kev npaj vim tias tus neeg ua si tsis pom), AI yuav poob rov qab rau cov hom phiaj tseem ceeb.

Kev cob qhia thiab kev yoog raws

Peb twb tau hais tias kev ua si AI feem ntau tsis siv tshuab kev kawm vim nws tsis haum rau kev tswj cov neeg ua haujlwm hauv lub sijhawm. Tab sis qhov no tsis tau txhais hais tias koj tsis tuaj yeem qiv qee yam ntawm thaj chaw no. Peb xav tau tus neeg sib tw hauv tus neeg tua phom uas peb tuaj yeem kawm qee yam los ntawm. Piv txwv li, nrhiav kom paub txog cov haujlwm zoo tshaj plaws ntawm daim ntawv qhia. Los yog tus neeg sib tw hauv kev sib ntaus sib tua uas yuav thaiv tus neeg ua si nquag siv combo txav, txhawb nws kom siv lwm tus. Yog li kev kawm tshuab tuaj yeem pab tau zoo hauv cov xwm txheej zoo li no.

Statistics thiab Probabilities

Ua ntej peb nkag mus rau hauv cov piv txwv nyuaj, cia saib seb peb tuaj yeem mus deb npaum li cas los ntawm kev siv ob peb yam yooj yim ntsuas thiab siv lawv los txiav txim siab. Piv txwv li, lub tswv yim tiag tiag - peb yuav ua li cas txiav txim siab seb tus neeg ua si tuaj yeem tawm tsam thawj ob peb feeb ntawm qhov kev ua si thiab dab tsi tiv thaiv los npaj tawm tsam qhov no? Peb tuaj yeem kawm tus neeg ua si qhov kev paub dhau los kom nkag siab tias cov kev cuam tshuam yav tom ntej yuav yog li cas. Pib nrog, peb tsis muaj cov ntaub ntawv nyoos li no, tab sis peb tuaj yeem sau tau - txhua zaus AI ua rau tib neeg, nws tuaj yeem sau lub sijhawm ntawm thawj qhov kev tawm tsam. Tom qab ob peb ntu, peb yuav tau txais qhov nruab nrab ntawm lub sijhawm nws yuav siv rau cov neeg ua si los tawm tsam yav tom ntej.

Kuj tseem muaj qhov teeb meem nrog cov txiaj ntsig nruab nrab: yog tias tus neeg ua si nrawm 20 zaug thiab ua si maj mam 20 zaug, ces qhov yuav tsum tau muaj qhov tseem ceeb yuav nyob rau hauv nruab nrab, thiab qhov no yuav tsis ua rau peb muaj txiaj ntsig. Ib qho kev daws teeb meem yog txwv cov ntaub ntawv tawm tswv yim - 20 daim kawg tuaj yeem coj mus rau hauv tus account.

Ib txoj hauv kev zoo sib xws yog siv thaum kwv yees qhov tshwm sim ntawm qee qhov kev ua los ntawm kev xav tias tus neeg ua si qhov kev nyiam yav dhau los yuav zoo ib yam yav tom ntej. Yog hais tias ib tug neeg ua si tawm tsam peb tsib zaug nrog foob pob hluav taws, ob zaug nrog xob laim, thiab ib zaug nrog melee, nws pom tseeb tias nws nyiam foob pob hluav taws. Cia peb ntxiv thiab pom qhov tshwm sim ntawm kev siv riam phom sib txawv: fireball = 62,5%, xob laim = 25% thiab melee = 12,5%. Peb qhov kev ua si AI yuav tsum tau npaj los tiv thaiv nws tus kheej los ntawm hluav taws.

Lwm txoj hauv kev nthuav dav yog siv Naive Bayes Classifier los kawm ntau cov ntaub ntawv tawm tswv yim thiab faib cov xwm txheej kom AI ua raws li qhov xav tau. Bayesian classifiers paub zoo tshaj plaws rau lawv siv hauv email spam lim. Nyob ntawd lawv tshuaj xyuas cov lus, muab piv rau qhov twg cov lus tau tshwm sim ua ntej (hauv spam lossis tsis), thiab kos cov lus xaus txog cov email tuaj. Peb tuaj yeem ua tib yam txawm tias muaj cov khoom siv tsawg dua. Raws li tag nrho cov ntaub ntawv muaj txiaj ntsig uas AI pom (xws li cov yeeb ncuab dab tsi tau tsim, lossis lawv siv dab tsi, lossis cov thev naus laus zis uas lawv tshawb fawb), thiab qhov kawg tshwm sim (kev ua tsov ua rog lossis kev thaj yeeb, maj lossis tiv thaiv, thiab lwm yam). - Peb yuav xaiv tus cwj pwm AI xav tau.

Tag nrho cov kev cob qhia no txaus, tab sis nws raug nquahu kom siv lawv raws li cov ntaub ntawv xeem. AI yuav kawm hloov mus rau cov tswv yim sib txawv uas koj cov neeg ua si tau siv. AI uas yoog rau tus neeg ua si tom qab tso tawm tuaj yeem dhau los ua pov thawj lossis nyuaj dhau los swb.

Tus nqi raws adaptation

Muab cov ntsiab lus ntawm peb lub ntiaj teb kev ua si thiab cov cai, peb tuaj yeem hloov cov txheej txheem ntawm qhov tseem ceeb uas cuam tshuam rau kev txiav txim siab, tsis yog siv cov ntaub ntawv tawm tswv yim xwb. Peb ua qhov no:

  • Cia AI khaws cov ntaub ntawv ntawm lub xeev ntawm lub ntiaj teb thiab cov xwm txheej tseem ceeb thaum lub sijhawm ua si (raws li saum toj no).
  • Cia peb hloov ob peb yam tseem ceeb raws li cov ntaub ntawv no.
  • Peb ua raws li peb cov kev txiav txim siab raws li kev ua los yog ntsuas cov txiaj ntsig no.

Piv txwv li, tus neeg sawv cev muaj ntau chav xaiv los ntawm ntawm daim ntawv qhia thawj tus neeg tua neeg. Txhua chav muaj nws tus kheej tus nqi, uas txiav txim siab seb nws xav tau mus xyuas. Lub AI random xaiv chav twg mus rau raws li tus nqi. Tus neeg sawv cev tom qab ntawd nco ntsoov tias chav twg nws raug tua thiab txo nws cov nqi (qhov tshwm sim uas nws yuav rov qab los). Ib yam li rau qhov teeb meem rov qab - yog tias tus neeg sawv cev rhuav tshem ntau tus neeg tawm tsam, ces tus nqi ntawm chav tsev nce.

Markov qauv

Yuav ua li cas yog tias peb siv cov ntaub ntawv sau los ua kev kwv yees? Yog tias peb nco ntsoov txhua chav uas peb pom ib tus neeg ua si hauv lub sijhawm, peb yuav twv seb chav twg tus neeg ua si yuav mus. Los ntawm kev taug qab thiab sau cov neeg ua si txav mus los ntawm cov chav (tus nqi), peb tuaj yeem kwv yees lawv.

Cia peb chav: liab, ntsuab thiab xiav. Thiab tseem cov kev soj ntsuam uas peb tau kaw thaum saib qhov kev ua si sib tham:

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Tus naj npawb ntawm kev soj ntsuam hauv txhua chav yog yuav luag sib npaug - peb tseem tsis paub tias yuav ua qhov chaw zoo rau kev tawm tsam. Kev sau cov txheeb cais kuj nyuaj los ntawm kev rov ua dua ntawm cov neeg ua si, uas tshwm sim sib npaug thoob plaws hauv daim ntawv qhia. Tab sis cov ntaub ntawv hais txog chav tom ntej uas lawv nkag mus tom qab tshwm hauv daim ntawv qhia yog twb muaj txiaj ntsig.

Nws tuaj yeem pom tias chav ntsuab haum rau cov neeg ua si - feem ntau cov neeg tsiv tawm ntawm chav liab mus rau nws, 50% ntawm cov neeg nyob ntawd ntxiv. Chav xiav, ntawm qhov tsis sib xws, tsis nrov; yuav luag tsis muaj leej twg mus rau nws, thiab yog tias lawv ua, lawv tsis nyob ntev.

Tab sis cov ntaub ntawv qhia peb ib yam dab tsi tseem ceeb dua - thaum tus neeg ua si nyob hauv chav xiav, chav tom ntej uas peb pom nws hauv yuav liab, tsis ntsuab. Txawm hais tias chav ntsuab yog nrov dua li chav liab, qhov xwm txheej hloov pauv yog tias tus neeg ua si nyob hauv chav xiav. Lub xeev tom ntej (piv txwv li chav uas tus neeg ua si yuav mus) nyob ntawm lub xeev dhau los (piv txwv li chav uas tus neeg ua si tam sim no nyob). Vim tias peb tshawb nrhiav kev vam khom, peb yuav ua qhov kev kwv yees muaj tseeb dua yog tias peb tsuas suav cov kev soj ntsuam ntawm nws tus kheej.

Kev kwv yees lub xeev yav tom ntej raws li cov ntaub ntawv los ntawm lub xeev yav dhau los hu ua Markov qauv, thiab cov piv txwv zoo li no (nrog chav) hu ua Markov chains. Txij li cov qauv sawv cev qhov tshwm sim ntawm qhov kev hloov pauv ntawm cov xeev ua tiav, lawv pom qhov muag pom zoo li FSMs nrog qhov tshwm sim ntawm txhua qhov kev hloov pauv. Yav dhau los, peb siv FSM los sawv cev rau tus cwj pwm coj tus cwj pwm uas tus neeg sawv cev nyob hauv, tab sis lub tswv yim no txuas mus rau ib lub xeev, txawm tias nws cuam tshuam nrog tus neeg sawv cev los yog tsis. Hauv qhov no, cov xeev sawv cev rau chav uas tus neeg sawv cev nyob:

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Qhov no yog ib txoj hauv kev yooj yim uas sawv cev rau cov txheeb ze ntawm cov kev hloov hauv lub xeev, muab AI qee lub peev xwm los kwv yees lub xeev tom ntej. Koj tuaj yeem cia siab tias yuav muaj ob peb kauj ruam ua ntej.

Yog tias tus neeg ua si nyob hauv chav ntsuab, muaj 50% txoj hauv kev uas nws yuav nyob ntawd rau lwm zaus nws raug soj ntsuam. Tab sis dab tsi muaj feem uas nws tseem yuav nyob ntawd txawm tias tom qab? Tsis tsuas yog muaj lub caij nyoog uas tus neeg ua si tseem nyob hauv chav ntsuab tom qab ob qhov kev soj ntsuam, tab sis kuj tseem muaj lub caij nyoog uas nws tawm mus thiab rov qab los. Nov yog lub rooj tshiab uas suav nrog cov ntaub ntawv tshiab:

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab

Nws qhia tau hais tias lub caij nyoog ntawm kev pom tus neeg ua si hauv chav ntsuab tom qab ob qhov kev soj ntsuam yuav sib npaug li 51% - 21% tias nws yuav los ntawm chav liab, 5% ntawm lawv cov neeg uas ua ntawv yuav mus xyuas chav xiav ntawm lawv, thiab 25% tias tus neeg ua si yuav tsis tawm hauv chav ntsuab.

Lub rooj tsuas yog ib qho cuab yeej pom - cov txheej txheem tsuas yog yuav tsum tau muab ntau qhov tshwm sim ntawm txhua kauj ruam. Qhov no txhais tau tias koj tuaj yeem saib deb mus rau yav tom ntej nrog ib qho kev ceeb toom: peb xav tias txoj hauv kev nkag mus hauv chav nyob yog nyob ntawm chav tam sim no. Qhov no hu ua Markov Property - lub xeev yav tom ntej tsuas yog nyob ntawm tam sim no. Tab sis qhov no tsis yog XNUMX% tseeb. Cov neeg ua si tuaj yeem hloov kev txiav txim siab nyob ntawm lwm yam: qib kev noj qab haus huv lossis cov mos txwv. Vim tias peb tsis sau cov txiaj ntsig no, peb cov kev kwv yees yuav tsis raug.

N-grams

Yuav ua li cas hais txog qhov piv txwv ntawm kev sib ntaus sib tua thiab kwv yees tus neeg ua si lub combo txav? Ib yam! Tab sis tsis yog ib lub xeev lossis qhov xwm txheej, peb yuav tshuaj xyuas tag nrho cov kab ke uas ua rau muaj kev tawm tsam.

Ib txoj hauv kev los ua qhov no yog khaws txhua qhov kev tawm tswv yim (xws li Kick, Punch lossis Thaiv) hauv qhov tsis muaj thiab sau tag nrho qhov tsis yog qhov xwm txheej. Yog li tus neeg uas ua ntawv rov nias Kick, Kick, Punch kom siv SuperDeathFist nres, AI system khaws tag nrho cov khoom nkag rau hauv qhov tsis muaj thiab nco qab peb kawg siv hauv txhua kauj ruam.

Yuav ua li cas los tsim AI gaming: phau ntawv qhia rau cov pib tshiab
(Cov kab hauv siab yog thaum tus neeg ua si tso tawm SuperDeathFist nres.)

Lub AI yuav pom tag nrho cov kev xaiv thaum tus neeg ua si xaiv Kick, ua raws li lwm Kick, thiab tom qab ntawd pom tias cov tswv yim tom ntej yog Punch ib txwm. Qhov no yuav tso cai rau tus neeg sawv cev los kwv yees SuperDeathFist's combo txav thiab thaiv nws yog tias ua tau.

Cov xwm txheej no yog hu ua N-grams, qhov twg N yog tus naj npawb ntawm cov khoom khaws cia. Hauv qhov piv txwv yav dhau los nws yog 3-gram (trigram), uas txhais tau tias: thawj ob qhov kev nkag yog siv los kwv yees qhov thib peb. Raws li, nyob rau hauv ib tug 5-gram, thawj plaub nkag kwv yees tus thib tsib thiab hais txog.

Tus tsim qauv yuav tsum xaiv qhov loj ntawm N-grams kom zoo. N me me yuav tsum nco ntsoov tsawg dua tab sis tseem khaws keeb kwm tsawg dua. Piv txwv li, 2-gram (bigram) yuav sau Kick, Kick lossis Kick, Punch, tab sis yuav tsis tuaj yeem khaws Kick, Kick, Punch, yog li AI yuav tsis teb rau SuperDeathFist combo.

Ntawm qhov tod tes, cov lej loj dua yuav tsum muaj kev nco ntau dua thiab AI yuav nyuaj rau kev cob qhia vim tias yuav muaj ntau txoj hauv kev. Yog tias koj muaj peb qhov kev nkag tau ntawm Kick, Punch lossis Block, thiab peb siv 10-gram, qhov ntawd yuav yog 60 txhiab qhov kev xaiv sib txawv.

Tus qauv bigram yog ib qho yooj yim Markov saw - txhua lub xeev yav dhau los / lub xeev tam sim no khub yog ib qho loj, thiab koj tuaj yeem kwv yees lub xeev thib ob raws li thawj. Lub 3-gram thiab loj N-grams kuj tuaj yeem xav tias yog Markov chains, qhov twg tag nrho cov ntsiab lus (tshwj tsis yog qhov kawg hauv N-gram) ua ke ua thawj lub xeev thiab lub caij kawg thib ob. Kev sib ntaus sib tua piv txwv qhia tau hais tias txoj hauv kev hloov ntawm Kick thiab Kick xeev mus rau Kick thiab Punch xeev. Los ntawm kev kho ntau yam ntaub ntawv keeb kwm kev nkag los ua ib chav tsev, peb tseem ceeb hloov cov tswv yim ua ntu zus mus rau ib feem ntawm tag nrho lub xeev. Qhov no muab peb cov cuab yeej Markov, uas tso cai rau peb siv Markov chains los kwv yees cov tswv yim tom ntej thiab twv seb dab tsi combo txav mus tom ntej.

xaus

Peb tau tham txog cov cuab yeej siv ntau tshaj plaws thiab txoj hauv kev hauv kev txhim kho kev txawj ntse. Peb kuj tau saib cov xwm txheej uas lawv yuav tsum tau siv thiab qhov twg lawv muaj txiaj ntsig tshwj xeeb.

Qhov no yuav tsum txaus kom nkag siab txog cov hauv paus ntawm kev ua si AI. Tab sis, tau kawg, cov no tsis yog txhua txoj hauv kev. Tsawg nrov, tab sis tsis muaj txiaj ntsig tsawg suav nrog:

  • optimization algorithms nrog rau kev nce toj, gradient qhovntsej thiaj tsis mob thiab genetic algorithms
  • Adversarial nrhiav / teem sijhawm algorithms (minimax thiab alpha-beta pruning)
  • Kev faib tawm cov txheej txheem (perceptrons, neural networks thiab txhawb nqa vector tshuab)
  • systems rau kev ua tus neeg sawv cev kev nkag siab thiab nco
  • architectural mus kom ze rau AI (hybrid systems, subset architectures thiab lwm txoj kev ntawm overlaying AI systems)
  • cov cuab yeej animation (kev npaj thiab kev sib koom ua ke)
  • Cov yam ntxwv ntawm kev ua haujlwm (qib nthuav dav, txhua lub sijhawm, thiab lub sijhawm ua haujlwm algorithms)

Cov ntaub ntawv online ntawm lub ncauj lus:

1. GameDev.net muaj ntu nrog cov ntawv thiab cov lus qhia ntawm AIThiab kev sab laj.
2. AiGameDev.com muaj ntau yam kev nthuav qhia thiab cov khoom ntawm ntau cov ncauj lus hais txog kev ua si AI txhim kho.
3. GDC Vault suav nrog cov ncauj lus los ntawm GDC AI Summit, ntau yam uas muaj pub dawb.
4. Cov ntaub ntawv siv tau kuj tuaj yeem pom ntawm lub vev xaib AI Game Programmers Guild.
5. Tommy Thompson, tus kws tshawb fawb AI thiab tus tsim tawm game, ua yeeb yaj kiab hauv YouTube AI thiab Games nrog kev piav qhia thiab kawm txog AI hauv kev lag luam ua si.

Cov phau ntawv hais txog lub ntsiab lus:

1. Phau ntawv Game AI Pro yog ib phau ntawv luv luv uas piav qhia yuav ua li cas siv cov yam ntxwv tshwj xeeb lossis yuav daws cov teeb meem tshwj xeeb li cas.

Game AI Pro: Sau Kev Txawj Ntse ntawm Game AI Professionals
Game AI Pro 2: Sau Kev Txawj Ntse ntawm Game AI Professionals
Game AI Pro 3: Sau Kev Txawj Ntse ntawm Game AI Professionals

2. AI Game Programming Wisdom series yog qhov ua ntej ntawm Game AI Pro series. Nws muaj cov txheej txheem qub, tab sis yuav luag txhua yam tseem ceeb txawm niaj hnub no.

AI Game Programming Txawj Ntse 1
AI Game Programming Txawj Ntse 2
AI Game Programming Txawj Ntse 3
AI Game Programming Txawj Ntse 4

3. Artificial Intelligence: Ib txoj hauv kev niaj hnub yog ib qho ntawm cov ntawv sau yooj yim rau txhua tus neeg uas xav nkag siab txog qhov dav dav ntawm kev txawj ntse. Qhov no tsis yog phau ntawv hais txog kev txhim kho kev ua si - nws qhia cov hauv paus ntawm AI.

Tau qhov twg los: www.hab.com

Ntxiv ib saib