Folkmassasimulering
Tredimensionell (3D) datorgrafik |
---|
Fundamentals |
Primära användningsområden |
Relaterade ämnen |
Crowd-simulering är processen att simulera rörelsen (eller dynamiken ) för ett stort antal enheter eller karaktärer. Det används vanligtvis för att skapa virtuella scener för visuella medier som filmer och videospel , och används också i krisutbildning, arkitektur och stadsplanering och evakueringssimulering.
Crowd-simulering kan fokusera på aspekter som är inriktade på olika applikationer. För realistisk och snabb rendering av en folkmassa för visuell media eller virtuell kinematografi används minskning av komplexiteten i 3D-scenen och bildbaserad rendering , medan variationer (förändringar) i utseende hjälper till att presentera en realistisk population.
I spel och applikationer som är avsedda att replikera verkliga mänskliga publikrörelser, som i evakueringssimuleringar, kan simulerade agenter behöva navigera mot ett mål, undvika kollisioner och uppvisa annat mänskligt beteende. Många publikstyrningsalgoritmer har utvecklats för att realistiskt leda simulerade publik till deras mål. Vissa mer generella system undersöks som kan stödja olika typer av agenter (som bilar och fotgängare), olika abstraktionsnivåer (som individ och kontinuum), agenter som interagerar med smarta objekt och mer komplex fysisk och social dynamik.
Historia
Det har alltid funnits ett djupt rotat intresse för att förstå och få kontroll över rörelser och beteenden hos mängder av människor. Många stora framsteg har skett sedan starten av forskningen inom området för folkmassasimulering. Uppenbarligen görs och publiceras kontinuerligt många nya rön efter dessa som förbättrar skalbarheten, flexibiliteten, användbarheten och realismen i simuleringar:
1987 introducerades beteendeanimation och utvecklades av Craig Reynolds . Han hade simulerat flockar av fåglar vid sidan av fiskstim i syfte att studera gruppintuition och rörelse. Alla agenter inom dessa simuleringar fick direkt tillgång till respektive positioner och hastigheter för deras omgivande agenter. Teoretiseringen och studien som lagts fram av Reynolds förbättrades och byggdes på 1994 av Xiaoyuan Tu, Demetri Terzopoulos och Radek Grzeszczuk. Den realistiska kvaliteten på simuleringen togs i anspråk eftersom de individuella agenterna var utrustade med syntetisk vision och en allmän bild av miljön där de vistades, vilket möjliggjorde en perceptuell medvetenhet inom deras dynamiska livsmiljöer.
Inledande forskning inom området publiksimulering började 1997 med Daniel Thalmanns handledning av Soraia Raupp Musses doktorsavhandling. De presenterar en ny modell för publikens beteende för att skapa en simulering av generiska populationer. Här dras en relation mellan individens autonoma beteende inom mängden och det framträdande beteendet som härrör från detta.
1999 började individualistisk navigering sin kurs inom området för folkmassasimulering via fortsatt forskning av Craig Reynolds. Styrbeteenden har visat sig spela en stor roll i processen att automatisera agenter i en simulering. Reynolds säger att processerna för rörelse på låg nivå är beroende av och beroende av styrbeteenden på medelnivå och måltillstånd på högre nivå och strategier för att hitta vägar. Med utgångspunkt från Reynolds avancerade arbete började Musse och Thalmann studera modellering av realtidssimuleringar av dessa folkmassor och deras tillämpningar på mänskligt beteende. Kontrollen av mänskliga folkmassor betecknades som en hierarkisk organisation med nivåer av autonomi bland agenter. Detta markerar början på att modellera individuellt beteende i dess mest elementära form på humanoida agenter eller virtuella människor .
Sammanfallande med publikationer om mänskliga beteendemodeller och simuleringar av gruppbeteenden, blev Matt Anderson, Eric McDaniel och Stephen Chenneys förslag om begränsningar för beteende populärt. Placeringen av restriktioner på gruppanimationer presenterades för att kunna göras när som helst inom simuleringen. Denna process att tillämpa begränsningar på beteendemodellen genomgår på ett dubbelt sätt, genom att först bestämma den initiala uppsättningen av målbanor som sammanfaller med begränsningarna, och sedan tillämpa beteenderegler på dessa vägar för att välja de som inte bryter mot dem.
Genom att korrelera och bygga vidare på de resultat som föreslagits i hans arbete med Musse, föreslog Thalmann, som arbetade tillsammans med Bratislava Ulicny och Pablo de Heras Ciechomski, en ny modell som möjliggjorde interaktiv författarskap av agenter på nivån för en individ, en grupp av agenter och en hel folkmassa. En penselmetafor introduceras för att distribuera, modellera och kontrollera folkmassamedlemmar i realtid med omedelbar feedback.
Publikdynamik
Ett av huvudmålen med publiksimulering är att styra folkmassor realistiskt och återskapa mänskliga dynamiska beteenden.
Det finns flera övergripande tillvägagångssätt för publiksimulering och AI, var och en ger fördelar och nackdelar baserat på publikens storlek och tidsskala. Tidsskala avser hur syftet med simuleringen också påverkar längden på simuleringen. Till exempel kommer forskning om sociala frågor som hur ideologier sprids bland en befolkning att resultera i en mycket längre simulering eftersom en sådan händelse kan sträcka sig över upp till månader eller år. Med hjälp av dessa två egenskaper har forskare försökt tillämpa klassificeringar för att bättre utvärdera och organisera befintliga publiksimulatorer.
- Flödesbaserad tillvägagångssätt
- Flödesbaserade publiksimuleringar fokuserar på publiken som helhet snarare än dess komponenter. Som sådana individer inte har några distinkta beteenden som uppstår på grund av input från sin omgivning och beteendefaktorer reduceras till stor del. Denna modell används främst för att uppskatta rörelseflödet för en stor och tät folkmassa i en given miljö. Används bäst för att studera stora publik, kort tid mål.
- Entitetsbaserade tillvägagångssättmodeller
- som implementerar en uppsättning fysiska, fördefinierade och globala lagar avsedda att simulera sociala/psykologiska faktorer som inträffar hos individer som är en del av en folkmassa faller under denna kategori. Entiteter i det här fallet har inte kapacitet att på sätt och vis tänka själva. Alla rörelser bestäms av de globala lagar som tillämpas på dem. Simuleringar som använder den här modellen gör det ofta för att undersöka publikdynamik som jamming och flockning. Små till medelstora folksamlingar med kortsiktiga mål passar detta tillvägagångssätt bäst.
- Agentbaserad tillvägagångssätt
- Karaktäriserad av autonoma, interagerande individer. Varje agent för en folkmassa i detta tillvägagångssätt ges en viss grad av intelligens; de kan reagera på varje situation på egen hand baserat på en uppsättning beslutsregler. Information som används för att besluta om en åtgärd hämtas lokalt från agentens omgivning. Oftast används detta tillvägagångssätt för att simulera realistiska publikbeteende eftersom forskaren ges fullständig frihet att implementera alla beteenden.
Partikelsystem
Ett sätt att simulera virtuella folkmassor är att använda ett partikelsystem . Partikelsystem introducerades först i datorgrafik av WT Reeves 1983. Ett partikelsystem är en samling av ett antal individuella element eller partiklar . Varje partikel kan agera autonomt och tilldelas en uppsättning fysiska attribut (såsom färg, storlek och hastighet).
Ett partikelsystem är dynamiskt, genom att partiklarnas rörelser förändras över tiden. Ett partikelsystems rörelse är det som gör det så önskvärt och enkelt att implementera. Att beräkna dessa partiklars rörelser tar mycket kort tid. Det handlar helt enkelt om fysik: summan av alla krafter som verkar på en partikel bestämmer dess rörelse. Krafter som gravitation, friktion och kraft från en kollision, och sociala krafter som attraktionskraften hos ett mål.
Vanligtvis har varje partikel en hastighetsvektor och en positionsvektor , som innehåller information om partikelns aktuella hastighet respektive position. Partiklarnas nästa position beräknas genom att addera dess hastighetsvektor till dess positionsvektor. En mycket enkel operation (återigen varför partikelsystem är så önskvärda). Dess hastighetsvektor förändras över tiden, som svar på de krafter som verkar på partikeln. Till exempel kommer en kollision med en annan partikel att få den att ändra riktning.
Partikelsystem har använts i stor utsträckning i filmer för effekter som explosioner, för vatteneffekter i filmen The Perfect Storm från 2000 och simulerad gas i 1994 års film The Mask .
Partikelsystem har dock vissa nackdelar. Det kan vara en dålig idé att använda ett partikelsystem för att simulera medel i en folkmassa som regissören kommer att flytta på kommando, eftersom det är mycket svårt att avgöra vilka partiklar som hör till medlet och vilka som inte gör det.
Algoritm av Patil och Van Den Berg
Denna algoritm designades för relativt förenklade folkmassor, där varje agent i mängden bara vill ta sig till sin egen måldestination samtidigt som de undviker hinder. Denna algoritm kan användas för att simulera en folkmassa på Times Square.
Patils-algoritmens viktigaste och mest utmärkande egenskap är att den använder konceptet med navigeringsfält för att styra agenter. Detta skiljer sig från ett vägledningsfält; ett vägledningsfält är ett område runt agenten där agenten är kapabel att "se"/upptäcka information. Vägledningsfält används vanligtvis för att undvika hinder, i synnerhet dynamiska hinder (hinder som rör sig). Varje agent har sitt eget vägledningsområde. Ett navigationsfält, å andra sidan, är ett vektorfält som beräknar minimikostnadsvägen för varje agent så att varje agent kommer till sin egen målposition.
Navigationsfältet kan endast användas korrekt när det finns en väg från varje ledig (icke-hinder) position i miljön till en av målpositionerna. Navigationsfältet beräknas med hjälp av koordinater för de statiska objekten i miljön, målpositioner för varje agent och vägledningsfältet för varje agent. För att garantera att varje agent når sitt eget mål måste navigationsfältet vara fritt från lokala minima, förutom förekomsten av sänkor vid de angivna målen.
Körtiden för beräkning av navigeringsfältet är , där m × n är rutnätsdimensionen (liknande Dijkstras algoritm ). Algoritmen är alltså endast beroende av nätupplösningen och inte beroende av antalet agenter i miljön. Denna algoritm har dock en hög minneskostnad.
Individuell beteendemodellering
En uppsättning tekniker för AI-baserad publiksimulering är att modellera publikens beteende genom avancerad simulering av individuella agenters motivation och beslutsfattande. Generellt betyder detta att varje agent tilldelas någon uppsättning variabler som mäter olika egenskaper eller status som stress, personlighet eller olika mål. Detta resulterar i ett mer realistiskt beteende hos publiken men kan vara mer beräkningsintensivt än enklare tekniker.
Personlighetsbaserade modeller
En metod för att skapa individualistiskt beteende för publikagenter är genom att använda personlighetsdrag. Varje agent kan ha vissa aspekter av sin personlighet inställda utifrån en formel som associerar aspekter som aggressivitet eller impulsivitet med variabler som styr agenternas beteende. Ett sätt som denna association kan hittas är genom en subjektiv studie där agenter slumpmässigt tilldelas värden för dessa variabler och deltagarna ombeds beskriva varje agent i termer av dessa personlighetsdrag. En regression kan sedan göras för att bestämma en korrelation mellan dessa egenskaper och agentvariablerna. Personlighetsdragen kan sedan trimmas och ha en lämplig effekt på agentens beteende.
OCEAN -personlighetsmodellen har använts för att definiera en kartläggning mellan personlighetsdrag och parametrar för publiksimulering. Att automatisera justering av publikparameter med personlighetsdrag gör det enkelt att skapa scenarier med heterogena publik.
Stressbaserad modell
Beteendet hos folkmassor i situationer med hög stress kan modelleras med hjälp av teorin om General Adaptation Syndrome.l Agentbeteende påverkas av olika stressorer från sin omgivning kategoriserade i fyra prototyper: tidspress, yttryck, positionsstressorer och interpersonella stressorer, var och en med tillhörande stressorer. matematiska modeller.
Tidspress hänvisar till stressfaktorer relaterade till en tidsgräns för att nå ett visst mål. Ett exempel skulle vara en gatukorsning med en tidsinställd gångsignal eller att gå ombord på ett tåg innan dörrarna stängs. Denna prototyp är modellerad av följande formel:
där är intensiteten av tidspressen som funktion av den beräknade tiden för att nå målet och en tidsbegränsning .
Yttryck avser stressfaktorer till följd av ett miljötillstånd. Exempel skulle vara buller eller värme i ett område. Intensiteten av denna stressor är konstant över ett visst område och modelleras av följande formel:
där är intensiteten för yttrycket, är agentens position i ett område och är en konstant.
Positionella stressorer hänvisar till stressorer förknippade med en lokal stresskälla. Intensiteten hos denna stressfaktor ökar när ett medel närmar sig källan till stressen. Ett exempel skulle vara en brand eller ett dynamiskt föremål som en angripare. Det kan modelleras med följande formel:
där är intensiteten för positionsstressorn, är agentens position och är positionen för stressfaktorn. Alternativt kan stressorer som genererar hög spänning över ett stort område (som en brand) modelleras med en Gauss-fördelning med standardavvikelse :
Interpersonella stressorer är stressorer som ett resultat av trängsel av närliggande agenter. Det kan modelleras med följande formel:
där är intensiteten hos den interpersonella stressfaktorn, är det aktuella antalet grannar inom ett enhetsutrymme och är det föredragna antalet grannar inom ett enhetsutrymme för den specifika agenten.
Den upplevda stressen följer Stevens lag och modelleras av formeln:
där är den upplevda spänningen för en spänningsnivå , är en skalfaktor och är en exponent beroende på stressortyp.
En agents stressreaktion kan hittas med följande formel:
där är stressresponsen begränsad till ett maximalt värde på och är den maximala hastigheten med vilken en agents stressrespons kan ändras.
Exempel på anmärkningsvärda AI-simuleringar kan ses i New Line Cinemas Sagan om ringen- filmerna, där AI-arméer med tusentals karaktärer slåss mot varandra. Denna publiksimulering gjordes med Weta Digitals Massive -programvara .
Sociologi
Crowd-simulering kan också hänvisa till simuleringar baserade på gruppdynamik, publikpsykologi och till och med social etikett . I det här fallet ligger fokus på folkmassans beteende, inte nödvändigtvis på simuleringens visuella realism. Folkmassa har studerats som ett vetenskapligt intresse sedan slutet av 1800-talet. Mycket forskning har fokuserat på människors kollektiva sociala beteende vid sociala sammankomster, sammankomster, protester, uppror, konserter, sportevenemang och religiösa ceremonier. Att få insikt i naturligt mänskligt beteende under olika typer av stressiga situationer kommer att göra det möjligt att skapa bättre modeller som kan användas för att utveckla folksamlingskontrollerande strategier, ofta i allmän säkerhetsplanering.
Räddningsteam som poliser, nationalgardet, militärer och till och med frivilliga måste genomgå någon typ av folkmassakontrollträning. Att använda undersökta principer för mänskligt beteende i folkmassor kan ge katastrofträningsdesigners fler element att införliva för att skapa realistiska simulerade katastrofer. Publikbeteende kan observeras under panik och icke-paniktillstånd. När naturliga och onaturliga händelser kastar sociala ideal i en vridande kaotisk bindning, som händelserna den 11 september och orkanen Katrina, sätts mänsklighetens sociala förmåga verkligen på prov. Militära program ser mer mot simulerad träning, som involverar nödåtgärder, på grund av deras kostnadseffektiva teknik samt hur effektivt lärandet kan överföras till den verkliga världen. [ citat behövs ] Många händelser som kan börja kontrollerade kan ha en vridande händelse som förvandlar dem till katastrofala situationer, där beslut måste fattas på plats. Det är dessa situationer där folkmassans dynamiska förståelse skulle spela en avgörande roll för att minska potentialen för anarki.
Modelleringstekniker för folkmassor varierar från holistiska eller nätverksstrategier till att förstå individualistiska eller beteendemässiga aspekter av varje agent. Till exempel beskriver Social Force Model ett behov för individer att hitta en balans mellan social interaktion och fysisk interaktion. Ett tillvägagångssätt som inkluderar båda aspekterna, och som kan anpassa sig beroende på situationen, skulle bättre beskriva naturligt mänskligt beteende, alltid med ett visst mått av oförutsägbarhet. Med användningen av multiagentmodeller har förståelsen av dessa komplexa beteenden blivit en mycket mer begriplig uppgift. Med användning av denna typ av mjukvara kan system nu testas under extrema förhållanden och simulera förhållanden under långa tidsperioder på bara några sekunder.
I vissa situationer kan beteendet hos svärmar av icke-mänskliga djur användas som en experimentell modell av folkmassans beteende. Panikbeteendet hos myror när de utsätts för en avstötande kemikalie i ett begränsat utrymme med begränsade utgångsvägar har visat sig ha både likheter och skillnader med motsvarande mänskligt beteende.
Modellera individuella beteenden
Hacohen, Shoval och Shvalb formulerade dynamiken för förare och fotgängare på överbelastade konfliktplatser. I sådana scenarier följer inte förare och/eller fotgängare trafiklagarna noga. Modellen är baserad på Probabilistic Navigation_function (PNF), som ursprungligen utvecklades för robotikrörelseplanering. Algoritmen konstruerar en bana enligt sannolikheten för kollision vid varje punkt i hela korsningsområdet. Fotgängaren följer sedan en bana som lokalt minimerar deras upplevda sannolikhet för kollision.
Helbing föreslog en modell baserad på fysik med hjälp av ett partikelsystem och sociopsykologiska krafter för att beskriva människors beteende i paniksituationer, detta kallas nu Helbing-modellen. Hans arbete bygger på hur en genomsnittlig person skulle reagera i en viss situation. Även om detta är en bra modell finns det alltid olika typer av människor närvarande i mängden och de har var och en sina egna individuella egenskaper samt hur de agerar i en gruppstruktur. Till exempel kan en person inte reagera på en paniksituation, medan en annan kan sluta gå och störa publikens dynamik som helhet. Dessutom, beroende på gruppstrukturen, kan den individuella åtgärden ändras eftersom agenten är en del av en grupp, till exempel återvänder till en farlig plats för att rädda en medlem i den gruppen. Helbings modell kan generaliseras med individualism, som föreslagits av Braun, Musse, Oliveira och Bodmann.
För att ta itu med detta problem bör individualitet tilldelas varje agent, vilket gör det möjligt att hantera olika typer av beteenden. En annan aspekt för att ta itu med detta problem är möjligheten att gruppera människor, att bilda dessa grupper gör att människor ändrar sitt beteende som en funktion av en del av gruppstrukturen. Varje agent (individ) kan definieras enligt följande parametrar:
- ID – Agentidentifierare
- IdFamily – Identifierare av familjen. En familj är en fördefinierad grupp som bildas av agenter som känner varandra
- DE – Beroendenivå för agenten som efterliknar behovet av hjälp. Värden [0,1]
- AL – Altruismnivå som representerar tendensen att hjälpa andra agenter. Värden [0,1]
- v i – Agentens hastighet
För att modellera effekten av beroendeparametern med individuella agenter definieras ekvationen som:
När man utvärderar agentens hastighet är det tydligt att om värdet på beroendefaktorn, DE, är lika med ett, så skulle personen vara helt inaktiverad vilket gör honom oförmögen att röra sig. Om beroendefaktorn är lika med noll, så kan personen springa i sin maxhastighet.
Gruppbildning är relaterad till Altruismkraften som implementeras som en interaktionskraft mellan två eller flera agenter som ingår i samma familj. Matematiskt beskrivs det som följande:
var:
- d ij representerar avståndet mellan två agenter med ursprunget vid agentens position;
- dip ; är avståndsvektorpunkten från agenterna till dörrens position p i simuleringsmiljön
- K är en konstant;
- e ij är den enhetliga vektorn med origo i position i.
DEj större parametern AL i för agent i , desto större blir Fāi som pekar på agenten j och har den höga nivån av . När båda agenterna är tillräckligt nära varandra, antar den med hög DE (agent j i det här exemplet) värdet av agent i ( ) . Detta innebär att evakueringsförmågan hos agent i delas med agent j och båda börjar röra sig tillsammans.
Genom att använda dessa och tillämpa dessa ekvationer i modelltestning med en normalfördelad population, är resultaten ganska lika Helbing-modellen.
De platser där detta skulle vara till hjälp skulle vara i ett evakueringsscenario. Ta till exempel en evakuering av en byggnad vid brand. Med hänsyn till egenskaperna hos enskilda agenter och deras gruppframträdanden är det avgörande att bestämma resultatet av hur publiken skulle lämna byggnaden för att skapa byggnadens layout.
Ledarbeteende under evakueringssimuleringar
Som beskrivits tidigare används Helbing-modellen som grunderna för publikens beteende. Samma typ av beteendemodell används för evakueringssimuleringar.
Generellt sett är det första som måste antas att inte alla har kunskap om miljön eller var det finns och inte finns faror. Utifrån detta antagande kan vi skapa tre typer av agenter. Den första typen är en utbildad ledare, denna agent känner till miljön och kan sprida kunskap till andra agenter så att de vet hur de ska lämna en miljö. Nästa typ av agent är en outbildad ledare, denna agent känner inte till miljön, men eftersom agenten utforskar miljön och får information från andra typer av ledare kan agenten sprida kunskapen om miljön. Den sista typen av agent är en följare, denna typ av agent kan bara ta information från andra ledare och inte kunna dela informationen med andra agenter.
Implementeringen av dessa typer av agenter är ganska enkel. Ledarna i miljön har en karta över miljön sparad som ett av sina attribut. En otränad ledare och följare börjar med en tom karta som attribut. Otränade ledare och följare kommer att börja utforska en miljö på egen hand och skapa en karta över gångbara och unwalkable platser. Ledare och outbildade ledare (när de väl har kunskapen) kommer att dela information med andra agenter beroende på deras närhet. De kommer att dela information om vilka punkter på nätet som är blockerade, de lokala subgraferna och farorna i området.
Det fanns två typer av sökalgoritmer som testades för denna implementering. Det var den slumpmässiga sökningen och djupet första sökningen. En slumpmässig sökning är där var och en av agenterna går i vilken riktning som helst genom miljön och försöker hitta en väg ut. Djupet första sökningen är där agenter följer en väg så långt den kan gå och återvänder sedan och försöker en annan väg om vägen de korsade inte innehåller en utgång. If hittades att djupet första sökningen gav en hastighet upp på 15 gånger jämfört med en slumpmässig sökning.
Skalbara simuleringar
Det finns många olika fallsituationer som spelar in i publiksimuleringar. På senare tid har publiksimulering varit avgörande för många virtuella miljöapplikationer som utbildning, träning och underhållning. Många situationer är baserade på simuleringens miljö eller beteendet hos gruppen av lokala agenter. I virtual reality-applikationer interagerar varje agent med många andra agenter i miljön, vilket kräver komplexa realtidsinteraktioner. Agenter måste ha kontinuerliga förändringar i miljön eftersom agentbeteenden tillåter komplexa interaktioner. Skalbar arkitektur kan hantera stora folkmassor genom beteendet och interaktiva priser. Dessa situationer kommer att indikera hur folkmassorna kommer att agera i flera komplexa scenarier medan flera olika situationer tillämpas. En situation kan vara vilken omständighet som helst som har typiska lokala beteenden. Vi kan kategorisera alla situationer i två olika typer.
Rumslig situation är en situation som har en region där miljön påverkar de lokala aktörerna. Till exempel skulle en folkmassa som väntar i kö för en biljettlucka visa en rumslig situation. Andra exempel kan vara en busshållplats eller en bankomat där karaktärer agerar på sin omgivning. Därför skulle vi betrakta "busshållplats" som situationen om agenternas beteende är att gå på eller av en buss.
Icke-spatial situation har ingen region i miljön eftersom detta bara involverar folkmassans beteende. Relationen mellan de lokala agenterna är en viktig faktor att ta hänsyn till när man bestämmer beteende. Ett exempel skulle vara en grupp vänner som går tillsammans. Typiskt beteende för karaktärer som är vänner skulle alla flytta tillsammans med varandra. Detta betyder att "vänskap" skulle vara situationen bland det typiska beteendet att gå tillsammans.
Strukturen för varje situation bygger på fyra komponenter, beteendefunktioner, sensorer, tillstånd och händelseregler. Beteendefunktioner representerar karaktärernas beteenden som är specifika för situationen. Sensorer är avkänningsförmågan för agenter att se och svara på händelser. Tillstånd är de olika rörelserna och tillståndsövergångarna som endast används för lokala beteenden. Händelseregel är sättet att koppla olika händelser till deras specifika beteenden. Medan en karaktär sätts in i en situation, betraktas dessa fyra komponenter samtidigt. För rumsliga situationer läggs komponenterna till när individen initialt går in i miljön som påverkar karaktären. För icke-spatiala situationer påverkas karaktären endast när användaren tilldelar karaktären situationen. De fyra komponenterna tas bort när medlet tas bort från dess situationsområde eller själva situationen tas bort. Det dynamiska tillägget och borttagandet av situationerna låter oss uppnå skalbara agenter.
Människoliknande beteenden och crowd AI
För att simulera fler aspekter av mänskliga aktiviteter i en folkmassa behövs mer än väg- och rörelseplanering. Komplexa sociala interaktioner, manipulation av smarta objekt och hybridmodeller är utmaningar inom detta område. Simulerat publikbeteende är inspirerat av flödet av folkmassor i den verkliga världen. Beteendemönster, rörelsehastigheter och -densiteter och anomalier analyseras över många miljöer och byggnadstyper. Individer spåras och deras rörelser dokumenteras så att algoritmer kan härledas och implementeras i publiksimuleringar.
Enskilda enheter i en folkmassa kallas också agenter . För att en folkmassa ska kunna bete sig realistiskt bör varje agent agera självständigt (vara kapabel att agera oberoende av de andra agenterna). Denna idé kallas en agentbaserad modell. Dessutom är det vanligtvis önskvärt att agenterna agerar med någon grad av intelligens (dvs. agenterna ska inte utföra handlingar som skulle få dem att skada sig själva). För att agenter ska kunna fatta intelligenta och realistiska beslut bör de agera i enlighet med sin omgivning, reagera på dess förändringar och reagera på de andra agenterna. Terzopoulos och hans elever har banat väg för agentbaserade modeller av fotgängare, ett tillvägagångssätt som kallas multi-mänsklig simulering för att skilja den från konventionell folkmassasimulering.
Regelbaserad AI
I regelbaserad AI följer virtuella agenter skript: "om detta händer, gör det". Det här är ett bra tillvägagångssätt om det krävs agenter med olika roller, till exempel en huvudperson och flera bakgrundsfigurer. Denna typ av AI implementeras vanligtvis med en hierarki, till exempel i Maslows behovshierarki , där ju lägre behovet ligger i hierarkin, desto starkare är det.
Tänk till exempel att en elev går till klassen som stöter på en explosion och springer iväg. Teorin bakom detta är till en början att de fyra första nivåerna av hans behov uppfylls, och eleven agerar enligt sitt behov av självförverkligande. När explosionen inträffar är hans säkerhet hotad, vilket är ett mycket starkare behov, vilket får honom att agera enligt det behovet.
Detta tillvägagångssätt är skalbart och kan tillämpas på folkmassor med ett stort antal agenter. Regelbaserad AI har dock vissa nackdelar. Framför allt kan agenternas beteende bli mycket förutsägbart, vilket kan få en folkmassa att bete sig orealistiskt.
Att lära sig AI
När de lär sig AI beter sig virtuella karaktärer på ett sätt som har testats för att hjälpa dem att nå sina mål. Agenter experimenterar med sin miljö eller en provmiljö som liknar deras verkliga.
Agenter utför en mängd olika åtgärder och lär sig av sina misstag. Varje agent ändrar sitt beteende som svar på belöningar och straff som den får från omgivningen. Med tiden skulle varje agent utveckla beteenden som är konsekvent mer benägna att tjäna höga belöningar.
Om detta tillvägagångssätt används, tillsammans med ett stort antal möjliga beteenden och en komplex miljö, kommer agenter att agera på ett realistiskt och oförutsägbart sätt.
Algoritmer
Det finns ett brett utbud av maskininlärningsalgoritmer som kan tillämpas på publiksimuleringar.
Q-Learning är en algoritm som finns under maskininlärnings underområde känd som förstärkningsinlärning. En grundläggande översikt av algoritmen är att varje åtgärd tilldelas ett Q-värde och varje agent får direktivet att alltid utföra åtgärden med det högsta Q-värdet. I det här fallet gäller lärande sättet på vilket Q-värden tilldelas, vilket är helt belöningsbaserat. När en agent kommer i kontakt med ett tillstånd, s och handling, a, uppskattar algoritmen det totala belöningsvärdet som en agent skulle få för att utföra det tillståndsparet. Efter att ha beräknat dessa data lagras de sedan i agentens kunskap och agenten fortsätter att agera därifrån.
Agenten kommer ständigt att ändra sitt beteende beroende på det bästa Q-värdet som är tillgängligt för den. Och när den utforskar mer och mer av miljön kommer den så småningom att lära sig de mest optimala tillståndsparen att utföra i nästan alla situationer.
Följande funktion beskriver huvuddelen av algoritmen:
- Q(s, a) ←− r + maxaQ(s', a')
Givet ett tillstånd s och handling a, r och s är belöningen och tillståndet efter att ha utfört (s,a), och a' är intervallet över alla åtgärder.
Crowd-rendering och animering
Att rendera och animera ett stort antal agenter realistiskt, särskilt i realtid, är utmanande. För att minska komplexiteten i 3D-rendering av storskaliga folksamlingar har tekniker som utslaktning (kastning av oviktiga föremål), bedragare (bildbaserad rendering) och minskande detaljnivåer använts. Variationer i utseende, kroppsform och storlek, tillbehör och beteende (socialt eller kulturellt) finns i verkliga folkmassor, och brist på variation påverkar realismen i visuella simuleringar. Befintliga system kan skapa virtuella folksamlingar med varierande struktur, färg, storlek, form och animation.
Verkliga applikationer
Virtuell kinematografi
Crowd-simuleringar har använts brett i filmer som ett kostnadseffektivt och realistiskt alternativ från att anställa skådespelare och ta bilder som annars skulle vara orealistiska. Ett betydande exempel på dess användning ligger i Sagan om ringen (filmserie) . Ett av de mest påfallande problemen för produktionsteamet i inledningsskedet var storskaliga strider, eftersom författaren till romanerna, JRR Tolkien, föreställde sig att de skulle ha minst 50 000 deltagare. Ett sådant antal var orealistiskt om de hade bestämt sig för att bara försöka anställa riktiga skådespelare och skådespelerskor. Istället bestämde de sig för att använda CG för att simulera dessa scener genom användningen av Multiple Agent Simulation System i en virtuell miljö, även känd som MASSIVE. Den Human Logic Engine-baserade Maya -plugin för publiksimulering, Miarmy , användes för utvecklingen av dessa sekvenser. Programvaran gjorde det möjligt för filmskaparna att ge varje karaktärsmodell en agentbaserad AI som kunde använda ett bibliotek med 350 animationer. Baserat på syn-, hörsel- och beröringsparametrar som genererats från simuleringen, skulle agenter reagera unikt på varje situation. Således var varje simulering av scenen oförutsägbar. Den slutliga produkten visade tydligt fördelarna med att använda programvara för publiksimulering.
Stadsplanering
Utvecklingen av mjukvara för publiksimulering har blivit ett modernt och användbart verktyg för att designa stadsmiljöer. Medan den traditionella metoden för stadsplanering bygger på kartor och abstrakta skisser, är en digital simulering mer kapabel att förmedla både formen och syftet med design från arkitekt till fotgängare. Till exempel är gatuskyltar och trafikljus lokaliserade visuella signaler som påverkar fotgängare att röra sig och bete sig därefter. Enligt denna logik kan en person förflytta sig från punkt A till punkt B på ett sätt som är effektivt och att en kollektiv grupp människor kan arbeta mer effektivt som ett resultat. I en vidare mening tjänar busssystem och vägrestauranger ett rumsligt syfte på sina platser genom en förståelse för mänskliga rörelsemönster. SimCity - videospelsserien exemplifierar detta koncept på ett mer förenklat sätt. I den här serien tilldelar spelaren stadsutveckling i angivna zoner samtidigt som han behåller en sund budget. Progressionen från tomt land till en livlig stad styrs helt av spelarens val och de digitala medborgarna beter sig enligt stadens design och händelser.
Evakuering och kravallhantering
Simulerade realistiska folkmassor kan användas i träning för upploppshantering, arkitektur, säkerhetsvetenskap (evakueringsplanering).
Militär
Eftersom publiksimuleringar är så utbredda i användning för offentlig planering och allmän ordning med avseende på kaotiska situationer, kan många applikationer dras till statliga och militära simuleringar. Crowd-modellering är avgörande i polis- och militärsimulering för att träna officerare och soldater för att hantera masssamlingar av människor. Offensiva kombattanter visar sig inte bara vara svåra för dessa individer att hantera, utan icke-stridande skaror spelar en betydande roll för att göra dessa aggressiva situationer mer utom kontroll. Spelteknik används för att simulera dessa situationer för soldater och tekniker att öva sina färdigheter.
Sociologi
Beteendet hos en modellerad skara spelar en framträdande roll i analytiska frågor. Denna dynamik förlitar sig på det fysiska beteendet hos enskilda agenter inom en folkmassa snarare än den visuella verkligheten hos själva modellen. Människors sociala beteenden inom dessa konstruktioner har varit av intresse i många år, och de sociologiska begrepp som ligger till grund för dessa interaktioner studeras ständigt. Simuleringen av folkmassor i olika situationer möjliggör sociologiska studier av verkliga sammankomster i en mängd olika arrangemang och platser. Variationerna i mänskligt beteende i situationer som varierar i stressnivåer möjliggör vidareutveckling och skapande av publikkontrollstrategier som kan tillämpas mer specifikt på situationer snarare än generaliseras.
Se även
- 3D datorgrafik
- Artificiell intelligens
- Publikanalys
- Emergent beteende
- Multi-agent system
- Partikelsystem
Programvara för publiksimulering
- STEPS av Mott MacDonald
- Alice Software från Moving Picture Company
- Golaem Crowd
- Massiv (mjukvara)
- Miarmy
- Quadstone Paramics
- VISSIM
externa länkar
- SteerSuite , Ett ramverk med öppen källkod för att utveckla och utvärdera publiksimuleringsalgoritmer
- Sung, Mankyu; Gleicher, Michael; Chenney, Stephen (2004). "Skalbara beteenden för publiksimulering". Datorgrafikforum . 23 (3): 519–28. CiteSeerX 10.1.1.10.2516 . doi : 10.1111/j.1467-8659.2004.00783.x . S2CID 3256678 .