95638 - Operational Analytics

Academic Year 2022/2023

  • Teaching Mode: Traditional lectures
  • Campus: Cesena
  • Corso: Second cycle degree programme (LM) in Computer Science and Engineering (cod. 8614)

    Also valid for Second cycle degree programme (LM) in Digital Transformation Management (cod. 5815)

Learning outcomes

Operational analytics, a specific type of business analytics, is focused on the analysis of business processes to the end of creating competitive advantage by means of operational data analysis and of the application of analytical algorithms. The course concentrates on the algorithmic side, specifically presenting predictive analytical techniques, forecasting future data on the basis of available time series, and prescriptive analytical techniques, defining optimized usage of available resources. Real world cases will be studied and used as testbed for self-developed systems.

Course contents

The course is part of a data science curriculum and provides some tools to predict short/medium term management data (predictive analytics) and to optimize processes for allocating scarce resources based on predicted data (prescriptive analytics). Elements of predictive analytics and heuristic optimization will be presented and integrated.
For the predictive part, the course proposes methodologies and techniques to analyze, model and predict univariate, with hints to multivariate, time series.
It will be shown, compatibly with the available time, that forecast data can be elements of mathematical models of management processes in which to optimize the allocation of scarce resources.
The proposed tools are meant to be used in real business application cases, actual case studies will be shown compatibly with time, and/or demanded to final projects.
The scientific contents are relative to the knowledge needed to develop an operational analytics module on data obtained from a business information system. In particular, I will introduce:
- brief recap of stochastic models, random variables. probability distributions
- predictive models: statistical (ARMA, ARIMA, SARIMA), neural (MLP, LSTM, maybe SVR if time permits) and machine learning / decision tree models (ensemble, random forest, boosting)
- performance indicators, descriptive statistics, statistical significance tests.
- introductory integer programming models 
- hints to meta/math-heuristic solving techniques
The technological contents will be functional to the practical implementation of the mentioned module, which will be done standalone in python, although other environments and architectures are acceptable.
A full solution will be set up in the classroom and completed independently by each student, and may constitute the project for the exam.

Readings/Bibliography

Lecture slides.

Teaching methods

The course will be offered in English, unless each and everyone of you asks me otherwise.

I will teach in the lab as much as I will be allowed to, in order to ensure hands-on experience of the proposed methods. Anyway, students are encouraged to bring their own laptop for online testing of the proposed elements. 

The algorithms will be coded, following the students' choice, in c# or python. Excel will be used for quick and dirty data analysis.

“"In view of the type of activities and teaching methods adopted, the attendance of this training activity requires the prior participation of all students in Modules 1 and 2 of safety training in the workplace, in e-learning mode”.

Assessment methods

This is the first year when the course is mutuated by students with limited computer science background, assessment methods will be discussed and agreed upon with the students present to the first lessons.

In any case, the exam consists of a presentation of a project that the students will complete, relative to the elements introduced during the course.

For programming-fluent students, the project will include both scientific and technological skills that will be tested through the presentation. The project consists of a unitary computer solution including most elements introduced during the course. The specific topic will be suggested by the candidates. Complex solutions can be developed in groups up to three students. The proposed solution must be able to run on the machines in the labs, and therefore also on my course server.

Typically, unless otherwise agreed upon, the project will be a python solution. No jupyter notebooks are accepted, only pandas, numpy and matplotlib can be used as additional libraries, unless otherwise explicitly agreed upon.

For students with difficulties in programming, relevant case studies have to be presented in details.

Teaching tools

Slides and lecture notes. They will be downloadable before the corresponding lesson.

Office hours

See the website of Vittorio Maniezzo