MMI513 ALGORITHMS FOR INTERACTIVE SYSTEMS
Course Code: | 9090513 |
METU Credit (Theoretical-Laboratory hours/week): | 3 (3.00 - 0.00) |
ECTS Credit: | 8.0 |
Department: | Multimedia Informatics |
Language of Instruction: | English |
Level of Study: | Graduate |
Course Coordinator: | |
Offered Semester: | Spring Semesters. |
Course Objectives
Via this course and by the successful completion thereof, the students will:
- Learn the fundamental algorithms that are used in interactive systems such as games, AR, VR, and MR applications
- Understand the proper use of variants of different algorithms as well as their interactions
- Improve their algorithm development skills without getting hindered by lower level programming languages.
- Develop an interactive application using some of the algorithms taught during the course.
Course Content
A practical understanding of algorithms is necessary to develop interactive systems such as games, virtual/augmented/mixed reality and other interactive applications. This course aims to teach algorithms relevant in the context of designing interactive systems. The topics to be covered include random number generation, noise generation, procedural content generation, tournament modelling, game trees, path finding, group movement modelling, decision making and modelling uncertainty. Networking related topics will also be covered. The course is predominantly practical where the algorithms and their use will be described and implementation of major algorithms will be demonstrated with collaborative coding tools in class using Python. The assessment will be via programming assignments and a term project.
Course Learning Outcomes
Program Outcomes Matrix
Level of Contribution | |||||
# | Program Outcomes | 0 | 1 | 2 | 3 |
1 | Having acquired in-depth knowledge in at least one of: computer graphics, audio signal processing, game physics, artificial intelligence, modelling and simulation, human-computer interaction, or computational aesthetics, | ✔ | |||
2 | Having acquired working knowledge on the components of computer games, virtual reality applications, simulators, and educational applications, | ✔ | |||
3 | Having the necessary expertise to apply theoretical concepts in addition to having practical experience, | ✔ | |||
4 | Having the ability to produce novel ideas and solutions, | ✔ | |||
5 | Having the necessary skills to carry out research and implement the results thereof in practice, | ✔ | |||
6 | Having the ability to work as a member of inter- and multi-disciplinary teams and take up leadership roles in such teams when necessary, | ✔ | |||
7 | Having excellent written and verbal skills as well as the capacity to efficiently communicate ideas, | ✔ | |||
8 | Having acquired the knowledge that is independent of current development tools and the ability to use this body of knowledge for learning new tools, | ✔ | |||
9 | Having acquired the skills for lifelong learning and ways of reaching new information when necessary, | ✔ | |||
10 | Having the skills to follow both theoretical and practical scientific and technological developments in the field, | ✔ | |||
11 | Having awareness of engineering and academic ethics, knowing and adopting the fundamental principles thereof. | ✔ |
0: No Contribution 1: Little Contribution 2: Partial Contribution 3: Full Contribution