AUTONOMOUS AGENTS IN GAMES

AUTONOMOUS AGENTS IN GAMES

_
iten
Code
98216
ACADEMIC YEAR
2020/2021
CREDITS
5 credits during the 2nd year of 8732 Electronic Engineering (LM-29) GENOVA

5 credits during the 2nd year of 10728 ENGINEERING TECHNOLOGY FOR STRATEGY (AND SECURITY) (LM/DS) GENOVA

SCIENTIFIC DISCIPLINARY SECTOR
ING-INF/01
LANGUAGE
Italian (English on demand)
TEACHING LOCATION
GENOVA (Electronic Engineering)
semester
1° Semester
Teaching materials

OVERVIEW

The course presents algorthms and strategies for autonomous intelligent agents that move and interact with an unknown space. In particular, the space is represented by a virtual world created through video games technology.

AIMS AND CONTENT

LEARNING OUTCOMES

The course provides algorithms and strategies to develop autonomous agents using a game engine.

AIMS AND LEARNING OUTCOMES

The aim of the course is to provide the basis for the design and development of software algorithms capable of autonomously acting within a virtual world. The student is introduced to different concepts of artificial intelligence (path finding, decision tree, reinforcement learning, etc.) and supported through extensive exercises during lectures. The course aims to train a professional figure capable of designing and implementing complex software applications using video game technologies and artificial intelligence algorithms.

PREREQUISITES

The students should have advanced knowledge of programming and statistic.

Teaching methods

The course is composed of a set of frontal lessons and a set of practice sessions. During the frontal lesson, the teacher presents the topics providing also examples of live code that are tested on a real game engine (Unity 3D). Students can use their own laptops during the lecture in order to reproduce what is proposed by the teacher. During the practice sessions, the students have to face up with real problems that they should solve by applying the techniques learnied during the lectures.

SYLLABUS/CONTENT

The titles of the main contents discussed during frontal lessons are provided in the following list. Each title is associated with a relevatn link where it is possible to obtain the lecture notes:

01 - Introduction [LINK]
02 - Unity Engine Recap [LINK]
03 - Path Finding [LINK]
04 - Steering [LINK]
05 - Influence Maps [LINK]
06 - Tree Search [LINK]
07 - Tic-Tac-Toe [LINK]
08 - Reinforcement Learning [LINK]
09 - Uncertain Reasoning [LINK]
10 - Genetic Algorithms [LINK]
11 - Decision Trees [LINK]
12 - Conversational Agents [LINK]

RECOMMENDED READING/BIBLIOGRAPHY

TEACHERS AND EXAM BOARD

Ricevimento: Appointments. Writing to riccardo.berta@unige.it

Exam Board

RICCARDO BERTA (President)

ALESSANDRO DE GLORIA

LESSONS

Teaching methods

The course is composed of a set of frontal lessons and a set of practice sessions. During the frontal lesson, the teacher presents the topics providing also examples of live code that are tested on a real game engine (Unity 3D). Students can use their own laptops during the lecture in order to reproduce what is proposed by the teacher. During the practice sessions, the students have to face up with real problems that they should solve by applying the techniques learnied during the lectures.

EXAMS

Exam description

The exam is an oral examination on the theoretical topics covered during lectures. In particular, the student has to provide fluency in the description of the main concept of autonomous agents development.

Assessment methods

During the oral exam, the teacher asks the student to illustrate some concepts learned in class. For each concept, the student has to present the definition, the conditions of applicability and pros/cons in relation to other approaches. During the examination, the teacher verifies that the concepts have been learned at a level of knowledge that allows the student to apply them in real cases.