# TIES6821 COM2: Data analytics + Machine learning + Optimisation (JSS28) (4 cr)

**Study level:**

**Grading scale:**

**Language:**

**Responsible organisation:**

**Curriculum periods:**

## Description

##### Content

This course covers all the steps that go from accessing data about a problem to analysing the data, using it for prediction and classification and designing and testing an optimisation algorithm to solve it, using Python as the main programming language. We will introduce fundamental concepts in data analytics, modelling, machine learning and optimisation, and how they relate to each other. In addition, the course will discuss all those practical details that are often left out from textbooks, but are crucial for successfully solving an optimisation problem. Finally, the course will include many examples of pitfalls and recommended practices when designing, testing and comparing optimisation methods, in particular metaheuristics, such as local search and evolutionary algorithms, for both single-objective and multi-objective problems. The following topics will be covered in the course:

- Accessing and preparing data

- Data wrangling, munging and preprocessing

- Data analysis and fundamentals of machine learning

- Problem formulation and modelling

- Fundamentals of decision making and optimisation, with a focus on metaheuristics

- Complex problem features: uncertainty, constraint-handling and multiple objectives

- Automatic parameter tuning and design of optimisation algorithms

The computer lab sessions will be dedicated to solve examples of real-

world problems by applying the concepts learned in the lectures using Python packages

such as: Pandas, NumPy, SciPy, Scikit-learn (Machine learning), etc.

##### Completion methods

Lectures, computer lab work, group course work.

##### Assessment details

Attendance to the lectures is a requisite for passing the course

The final evaluation will consist in one group coursework assignment about a

research question or real-world application. The coursework will consist in a group

report of around 5000 works and a Python script (50%), a group presentation (30%)

and a peer-review (20%)

## Learning outcomes

- Access data from the web in various formats

- Transform, preprocess and prepare data for various purposes

- Analyse and visualise large amounts of data

- Use data to formulate and model optimisation problems with complex features

- Design and evaluate optimisation algorithms for such problems

## Description of prerequisites

mathematics. It would be suitable for anyone with a background in quantitative methods

who has an interest in learning about heuristic optimization and/or machine learning.

- Programming experience is recommended.

- Basics of Python in data science (e.g. Intro to Python for Data Science). The goal is not

to learn Python programming, but to use it as a tool.

## Completion methods

### Method 1

**Parts of the completion methods**