Data Science in Games
AbstractThis course gives an introduction to the field of data science with applications to game development. The course is relatively practically oriented, focusing on applicable algorithms. Practical exercises will involve both use of a freely available data mining packages and individual implementation of algorithms.
DescriptionThe course will cover the following main topics:
- The data mining process
- Cluster analysis
- Data pre-processing
- Pattern and association mining
- Classification and prediction
Application examples will be given from domains including demographics, image processing and games.
Students must have experience with and be comfortable with programming, and be capable of independently implementing algorithms from descriptions. This corresponds to at least having passed an introductory programming course, and preferably also an intermediate-level programming course. The course will contain compulsory programming.
Intended learning outcomes
After the course, the student should be able to:
- Analyze data mining problems and reason about the most appropriate methods to apply to a given dataset and knowledge extraction need.
- Implement basic pre-processing, association mining, classification and clustering algorithms.
- Apply and reflect on advanced pre-processing, association mining, classification and clustering algorithms.
- Work efficiently in groups and evaluate the algorithms on real-world problems.
- Describe different technologies for big data storage and processing
The course consists of lectures ending with a project for the last part of the course. Most lectures are followed by a lab exercise, which involves independent programming. Students must be able to program. The default language is Python, but other languages are possible.
A large part of the course will be taken up by the weekly exercises. For the final project you will specify and work on a relevant Data Mining project of your choice. In this project you will apply the techniques and algorithms studied during the course on relevant real world problems. This will be done in groups of 3 persons.
Besides the hours planned for lectures, tutorial, and exercise, supervision sessions for the group projects are planned which complement the theory covered during the lectures and are necessary for meeting the learning objectives of the course. Lectures provide theoretical foundations and walk-through examples of relevant data mining algorithms while exercises focus on students discussing and implementing the central algorithms themselves.
There will be one mandatory assignment consisting of a report on the application of one of the algorithms learnt in class to a simple dataset.
For this assignment, the algorithm will have to be implemented by the student (no external library implementation can be used), the purpose of this is to get the student to engage in the details of a machine learning algorithm implementation, which will provide a representative example of the general problems the students will face also when using machine learning libraries.
The students will work in groups of 2 or 3, on 2 or 3 different algorithms; in the report, they will describe each of their implementations and present the results achieved by applying each implementation on one or multiple datasets. This will allow the students to practice the analysis and evaluation of machine learning algorithms.
After the submission, the report will be evaluated by the course teachers and oral feedback will be given during a special lecture. The students that failed in the first attempt will have the opportunity to submit a new version of the report within the final submission deadline for the course.
The student will receive the grade NA (not approved) at the ordinary exam, if the mandatory activities are not approved and the student will use an exam attempt.
The course literature is published in the course page in LearnIT.
Student Activity BudgetEstimated distribution of learning activities for the typical student
- Preparation for lectures and exercises: 25%
- Lectures: 13%
- Exercises: 6%
- Assignments: 6%
- Project work, supervision included: 25%
- Exam with preparation: 25%
Ordinary examExam type:
D: Submission of written work with following oral, external (7-trinsskala)
D2G: Submission of written work for groups with following oral exam supplemented by the work submitted.