Come demo di Advanced Game AI come portfolio?


17

Fondamentalmente ogni società di gioco vuole vedere un portfolio che espone il tuo set di abilità. Se sei specializzato nell'intelligenza artificiale , cosa e come dovresti mostrare le tue abilità.

Alcuni pensieri

  • La grafica piacevole in una demo AI è un must (superare le risorse umane non tecniche che non capiscono l'IA, pensi al versetto 3d 2d)?
  • Demo AI multi-optional o un singolo esempio focalizzato.
  • Competenze fondamentali come la ricerca di percorsi, hfsm, pianificazione, ecc. Sono componenti di intelligenza artificiale fondamentali ma impressiona davvero come un pezzo di portafoglio?
  • Una singola entità AI, più entità o grandi popolazioni, è sempre meglio?
  • Anche come un portfolio idealmente ci sarebbe un eseguibile e video che dovrebbero mostrare tutto ciò che sta cercando di essere messo in mostra in pochi minuti.

Esempi

Direi che una qualsiasi delle abilità esposte in questo video costituirebbe un grande portfolio ma le società di gioco si aspettano davvero questo da una sola persona.

AI Sandbox è un altro grande esempio, ma è stato realizzato dal lavoro di molte persone.

Qualsiasi esempio di buoni portafogli AI sarebbe fantastico.


Kynapse è fantastico :)
RCIX

Risposte:


7

Nella mia scuola abbiamo alcuni studenti di master che studiano l'IA e lo fanno usando il motore Unreal. Si accoppiano con uno studente d'arte che crea alcuni modelli 3D (di certo non devono essere fantasiosi) e poi lavorano con la loro intelligenza artificiale in UnrealScript e l'editor Unreal e finiscono con qualcosa di funzionale che può essere studiato e giocato con . Questo è l'obiettivo finale dell'intelligenza artificiale, dopo tutto: un gioco o un prototipo che dimostrano i concetti di intelligenza artificiale. Perché qualcosa di meno è solo un concetto, non una dimostrazione.

Immagino che potresti sostituire qualsiasi motore a Unreal; L'unità ovviamente è molto popolare, e anche il motore Source di Valve sta facendo grandi cose sull'intelligenza artificiale. Penso che il risultato finale sia che devi usare tutto il middleware che puoi, in modo da poter superare le basi e rapidamente testare i concetti di intelligenza artificiale.

Molte delle tue domande si basano molto caso per caso. Potresti desiderare più esempi di un concetto di intelligenza artificiale ciascuno, oppure potresti desiderare un grande mondo sandbox di intelligenza artificiale con ogni sorta di IA che interagiscono. Dipende davvero da cosa stai facendo o mostrando esattamente.

Anche come un portfolio idealmente ci sarebbe un eseguibile e video che dovrebbero mostrare tutto ciò che sta cercando di essere messo in mostra in pochi minuti.

Questa non è una domanda, quindi: sì! Inoltre, ti consiglio di procurarti un sito web personale in modo che tu possa spingerli verso di esso, o addirittura mostrarglielo in un'intervista se c'è un computer nella stanza. Assicurarsi che il sito Web sia il più standard possibile; usa video HTML5 e Flash (qualunque sia compatibile con il browser) e disponi di schermate nel caso in cui il computer sia così bloccato che nessuno di questi è disponibile. Inoltre, se hai un dispositivo portatile per la riproduzione di video (iPod, telefono, ecc.), Carica i video del tuo portfolio e portalo! In un'intervista senza computer potrebbe non esserci nulla di più impressionante che estrarre qui il dispositivo di inserimento e mostrare effettivamente all'intervistatore il tuo lavoro.

Inoltre, un'ultima nota: c'è una grande differenza tra carina e raffinata. Non deve avere una grafica stellare; ma la grafica che c'è dovrebbe almeno apparire finita, non segnaposto, nessun problema tecnico o bug, ecc. Solo perché non ha bisogno di essere una bella arte, non significa che non dovrebbe apparire come un prototipo finito pronto per presentare .


Steam's Engine? Penso che intendi il motore sorgente di Valve. Steam è il sistema di distribuzione dei contenuti di Valve.
AttackingHobo,

@AttackingHobo Siamo spiacenti, risolto.
Ricket,

8

Per rispondere a domande specifiche:

  1. La grafica non è assolutamente importante . Finché le persone capiranno la differenza tra dire attori e oggetti statici del mondo, starai bene. La demo sarà criticata dal team di programmazione e loro sanno cosa è importante da un programmatore AI.

  2. Multi-funzionalità vs single focalizzata è difficile, vedi le mie regole generali di seguito

  3. Competenze fondamentali - Questi sono un must . Non andare avanti e dimentica di mostrare la tua comprensione di base dei comportamenti di base dell'IA. Sfortunatamente, per molte aziende l'IA è ancora in basso nella lista delle priorità. Almeno inizialmente cercheranno qualcuno con conoscenze di base in grado di portare l'IA a un livello base

  4. Sicuramente avere più entità / attori AI .

  5. È preferibile eseguibile in quanto mostra i comportamenti e il fatto che è possibile farlo in un ambiente in tempo reale. I video sono utili per mostrare comportamenti AI specifici e aggiungere annotazioni per affermare esplicitamente cosa sta succedendo.

Alcune regole generali:

Il mio più grande suggerimento è la visualizzazione . Mentre la grafica carina non è importante, la visualizzazione degli attori è cruciale. Attiva ogni pezzo di debug che puoi e lascialo attivo per le tue demo. Quello che vuoi fare è mostrare tutti i comportamenti / decisioni / dati che l'IA sta usando allo spettatore. Questo può essere semplice come mostrare lo stato corrente accanto a ciascun attore (ad esempio inattivo), il "cono del campo visivo", il percorso corrente, ecc. Senza questo, lo spettatore potrebbe non avere idea di quanto sia avanzata la tua IA.

Per quanto riguarda esattamente cosa mostrare, questo dipende interamente da quale azienda vuoi lavorare. Il mio suggerimento è di scegliere la tua compagnia preferita (o le prime 3) e guardare l'IA nei loro giochi al momento. Personalizza i tuoi esempi per adattarli allo stile di questi giochi (ad esempio FPS vs RTS). Inoltre, guarda la tecnologia che stanno utilizzando. Se fai domanda presso un'azienda che utilizza irreale, ti trovi in ​​una posizione molto migliore se usi irreale per mostrare la tua demo. Dimostra che hai sia la conoscenza dell'intelligenza artificiale sia l'implementazione nella loro tecnologia attuale.


3
"La grafica è assolutamente irrilevante." In teoria lo sono, ma se stai presentando la tua IA e la tua IA è leggermente più debole di un'altra persona, ma la presentazione visiva è molto migliore, chi pensi che otterrà il lavoro?
Attaccando

Sì, sono d'accordo con la maggior parte di ciò che hai da dire, ma la grafica è assolutamente importante, anche se puoi cavartela con una grafica che non è di prim'ordine se c'è uno stile per loro (es. Pensa poligonale o minecraft)
Latenza,

6

Come un veterano di 16 anni nel settore, secondo me non dovresti aver bisogno di farlo sembrare bello per dimostrare buone capacità di intelligenza artificiale. D'altra parte penso che dovresti renderlo carino perché:

  1. La presentazione è molto importante nel settore dei giochi ed è un modo per chiarire che hai "fatto uno sforzo", anche se hai trascorso molte più ore sulla tecnologia di base.
  2. La tua demo può essere vista da un responsabile delle assunzioni, da un responsabile delle risorse umane o da un programmatore che non sa nulla di AI

Se riesci a convincere qualcun altro a renderlo più bello per te, perché dimostra che ti interessa fare una buona impressione, ma anche che puoi trovare persone che ti possano aiutare e cooperare con le persone. Competenze molto importanti sul lavoro.

Per quanto riguarda l'utilizzo di un'API come Unreal o Kynapse; Penso che sia molto più prezioso dimostrare che puoi costruire un motore di intelligenza artificiale dal nulla. Dimostrando entusiasmo e problem solving. Una volta che sei sul posto di lavoro, puoi passare qualche giorno a leggere un'API e la documentazione, ma una comprensione più approfondita di ciò che si trova sotto l'API è una risorsa molto più preziosa.

Spero che questo aiuti e buona fortuna!


3

Per quanto adoro dire che la grafica non ha importanza, non è vera. Non importa quanto sia incredibile la tua IA, la presentazione è ciò che viene consumato dai tuoi spettatori. A parità di condizioni, la presentazione più bella vincerà.

Questo non vuol dire che devi presentare un pezzo incredibilmente dettagliato, solo uno che sembra pulito e finito.

Ti consigliamo inoltre di prestare attenzione al movimento irregolare dei tuoi modelli grafici; anche se il target del tuo percorso cambia di 180 °, vorrai che quel cambiamento avvenga gradualmente sullo schermo per rendere il movimento naturale.

Suggerirei di associare un buon artista e assicurarmi di rappresentare questo fatto se richiesto durante la presentazione. L'artista potrebbe anche voler un video della tua demo per mostrare ai potenziali datori di lavoro l'aspetto della loro arte come "in-game".


1
Questo è un altro problema con i sistemi di intelligenza artificiale e animazione. Alcune implementazioni consentono all'intelligenza artificiale di sovrascrivere le animazioni prefabbricate in modo che l'IA funzioni molto meglio ma con anomalie grafiche. D'altra parte, se rendi perfetta l'animazione, ciò limita fortemente ciò che l'IA è in grado di fare. Ah compromessi.
David Young,

Una volta ho implementato un sistema che si fondeva automaticamente tra gruppi di animazioni per far muovere naturalmente il personaggio. Ha funzionato abbastanza bene, sembrava essere un modo decente per risolvere questo problema. Peccato che non ho avuto più tempo per lavorarci.
jessecurry il

2

Ovunque ciò che permetta alle persone non tecniche di risorse umane di giudicare le dimostrazioni tecniche inviate dai candidati non è un posto in cui si desidera lavorare.


1
quasi tutte le aziende utilizzano le risorse umane come filtro per rimuovere le richieste di riassunto non pertinenti. Fanno ottenere qualche centinaio di curriculum e le risorse umane li elimineranno fino a forse 5 di loro che effettivamente riceveranno interviste.
David Young,

Le demo non sono riprese. Le risorse umane non eseguono dimostrazioni.
Kylotan,

1
  • Dal momento che stai praticamente mostrando il comportamento degli agenti e nient'altro, la risposta è no. Se puoi, prova a usare trame semplici (forse nessuna) e modelli semplici costituiti da giunti e arti semplici.
  • Dipende dai tuoi gusti, personalmente preferisco iniziare in modo semplice e aggiungere nuovi agenti per mostrare più funzioni man mano che la demo avanza, sviluppando complessità e vari comportamenti emergenti.
  • Non proprio, molti lo daranno per scontato e cercheranno qualcosa al di là di questo, menzionalo ma non concentrarti su di esso. L'interesse principale qui sono le tue potenziali ottimizzazioni agli algoritmi già stabiliti e / o nuovi approcci a tali problemi.
  • Vedi 2
  • Sono d'accordo, fornendo entrambi è un vantaggio. (ad alcune persone piace sperimentare eseguibili demo per se stessi, se si sentono sufficientemente interessati)

1

Per come stanno i soldi con molte aziende, sono sicuro che verrai coinvolto in una serie di cose diverse e non solo nell'intelligenza artificiale - per questo motivo direi che dovresti mostrare anche buone capacità generali.

Considera lo scenario in cui due persone straordinarie dimostrano il loro lavoro; entrambi mostrano la stessa IA, hanno le stesse qualifiche / esperienza e sono molto simili in ogni modo - ma uno usa triangoli per attori e scatole per statici e l'altro mostra la sua demo con modelli caricati da file. Personalmente assumerei colui che (a) ha compiuto uno sforzo maggiore (b) dimostra che possono fare un lavoro al di fuori della loro zona di comfort / specialità.

Come qualcun altro ha menzionato per la tua specialità, non dovresti avere bisogno di mostrare una buona grafica, ma non credo che farebbe male.


0

Sì, dovrebbe sembrare carino (o non brutto), ma non sottovalutare la grafica siplificante. Una città 2D con blob 2D in movimento si adatta, se stai dimostrando di evitare le collisioni.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.