Part I — Framing the field · Chapter 1

Operational analytics: scope, applications and the exam project

~22 min read4 interactive widgets

In this chapter

  1. What operational analytics is
  2. Knowledge, problems and algorithms
  3. Predictive maintenance: the archetypical application
  4. From prediction to scheduling: PdM optimization
  5. A logistics application
  6. The M competitions and where the data comes from
  7. How the course works, and how the exam works
  8. The exam project, in detail
  9. Check your understanding

1. What operational analytics is

The course opens with a definition worth memorising, because everything else hangs from it: operational analytics is the process of using data analysis to improve efficiency and streamline everyday operations. The emphasis on everyday is not decorative. It is what separates this discipline from the quarterly report and the annual strategy review.

Operational analytics is presented as a subset of data analytics (or business analytics), and it does not invent its own tools: it leverages business intelligence, data mining, artificial intelligence and machine learning. The novelty is in where the tools are pointed — at the operations themselves, at the shop floor and the delivery van and the maintenance calendar, rather than at the boardroom slide deck.

The three payoffs

The slides list exactly three reasons why an organisation invests in it.

PayoffWhat changes
1. Faster decision-makingTraditionally, businesses make reactive adjustments to their operations on the basis of a quarterly or annual data review. A business that can analyse and react to customer data in real time makes faster adjustments to its processes, increasing profitability and reducing waste.
2. Faults and failures fixingDetect problems and inefficiencies quickly, and respond to them rapidly.
3. Increased productivitySee the inefficiencies that exist in the workflows, and change the processes accordingly to streamline operations.

Notice the common structure of all three: a measurement arrives, a model turns it into an expectation about the near future, and a decision is taken now. That triple is the spine of the whole course, and it is worth drawing.

The operational analytics loop: operations produce data, descriptive analysis summarises it, predictive models extend it into the future, prescriptive optimization turns forecasts into decisions that act back on operations. OPERATIONS machines, stores, crews, orders DESCRIPTIVE what happened (ch. 8) PREDICTIVE what will happen (ch. 2-7) PRESCRIPTIVE what to do (ch. 10) data series forecast decision taken NOW acts back on operations FASTER DECISIONS · FAULT FIXING · PRODUCTIVITY the three payoffs the whole loop is built to deliver
Plate 1.1 — The operational analytics loop. The three boxes in the middle are the three parts of this course; the dashed return arrow is what makes the analytics operational rather than merely retrospective.
Key idea

The contrast that defines the field is reactive quarterly review versus real-time reaction. Everything technical in the course — stationarity, ARIMA, LSTMs, tabu search — exists to shorten the loop between an observation and the decision it should trigger.

2. Knowledge, problems and algorithms

Before any formula, the slides pause on a slide bearing three Greek words from Aristotle's Nicomachean Ethics: ἐπιστήμη (epistēmē, with gnōsis alongside it), τέχνη (technē) and φρόνησῐς (phrónēsis). The point of putting them at the top of a data-analysis course is that the three kinds of knowledge are different things: knowing that, knowing how to make, and knowing how to act well. A forecasting course delivers the first two; the third is what the word operational is asking for.

Computer science was born to solve problems

The narrative then becomes concrete. Computer science was born around the Second World War in order to help solve problems, and the first problems — the biggest ones, the most deeply felt — were optimization problems. The slides quote Euler:

nihil omnino in mundo contingit, in quo non maximi minimive ratio quaepiam eluceat

— Euler: nothing at all happens in the world in which some rule of maximum or minimum does not shine forth.

From there two definitions close the argument. A (computer science) method to solve a problem is an algorithm. And — this is the sentence that justifies the entire predictive half of the course — solutions are computed for future instances of the problem. We are never solving today's instance for its own sake; we are building a machine that will be handed instances we have not seen yet. That is exactly why out-of-sample validation, which returns in chapter 2, is not a formality.

Editor's note

The Euler quotation is the hinge between the two halves of the course. The predictive half asks what will the value be?; the prescriptive half asks which choice is the maximum or the minimum? Chapter 10 picks the Euler line up again word for word.

3. Predictive maintenance: the archetypical application

The slides call predictive maintenance (PM) an archetypical application, and the adjective is exact: it contains, in miniature, every ingredient of the course.

PM is a technique to predict the future failure point of a machine component, so that it is possible to schedule its replacement before failure at minimum cost. Minimum cost here is a three-part objective, spelled out in the slides:

It works because it is based on the measurement of parameters that show a predictable connection with the component life cycle. The slides list them: vibration, noise, temperature, pressure, oil levels, electrical currents, corrosion. These are the exogenous variables of chapter 4 and the input features of chapters 5 and 6, seen from the factory floor.

Predict the future failure point of a component. This is a forecasting problem on a sensor time series — precisely the object of chapters 2 to 7. The horizon is short-to-medium term, in the vocabulary of chapter 2.

Vibration, noise, temperature, pressure, oil levels, electrical currents, corrosion. They qualify because they show a predictable connection with the component life cycle: without that connection there is nothing to learn. Note that they are multivariate, and that most of them will need the preprocessing of chapter 3 before any model sees them.

Replace before failure, at minimum cost, where cost is a compound of minimum maintenance resources, maximum device uptime and maximum process quality. A compound objective over a discrete set of possible schedules is a combinatorial optimization problem: chapter 10.

4. From prediction to scheduling: PdM optimization

Having a good failure forecast is not the end of the story, and the slides are blunt about it. PM optimization tries to schedule maintenance before equipment fails but not before needed, avoiding the costs associated with repair and with production loss. Both halves of that sentence carry a cost: intervene too early and you throw away residual component life; intervene too late and you pay for a failure plus the lost production.

Three named difficulties

DifficultyWhy the naive schedule fails
Dependencies (production plan)If planned production is highest exactly when maintenance cost is at a minimum, it could be better to schedule early repairs, to avoid the peak production loss.
Dependencies (grouping)It may be possible to group interventions in order to minimise total downtime — so components are not independent of one another.
Limited resourcesIf a given day is optimal for several components but fewer maintenance crews are available, some of those optima cannot all be realised.

The slides then state the full problem: optimality for a set of components, subject to limited resources (e.g. maintenance crew availability), other constraints and dependencies (production plan and repair costs), and optimization metrics — minimum total cost, maximum customer satisfaction, meeting planned production, minimum late maintenance.

Two opposing cost curves against maintenance timing: the cost of unneeded early repair falls as intervention is delayed, the cost of component failure rises; their sum has an interior minimum. t → time of intervention cost unneeded repair cost (residual life thrown away) component failure cost (+ production loss) total cost schedule here too early too late crew availability, grouping and the production plan then MOVE this point away from the single-component optimum
Plate 1.2 — The maintenance trade-off named in the slides: replace before failure but not before needed. The minimum of the dashed total-cost curve is the single-component answer; the constraints of section 4 are what turn a set of such points into a combinatorial problem.

Where is the cheapest day?

An illustrative cost model for the trade-off the slides describe. Move the sliders and watch the total-cost minimum shift: this is the "before failure but not before needed" point for one component in isolation.

1800
10
10 d
For the exam

Be able to say why predictive maintenance is not just a forecasting problem. The forecast gives one number per component; the schedule must respect limited resources (crews), dependencies (production plan, grouping of interventions) and a compound objective (min total cost, max customer satisfaction, meeting planned production, min late maintenance). Prediction feeds prescription; it does not replace it.

5. A logistics application

The second worked application in the introductory deck is a distribution problem, and it is the one that will reappear in chapter 10 as the generalized assignment problem.

A company has several retail points (supermarkets, SM) in a town, which are resupplied from logistic centers (LC). The rules of the game:

That last bullet is the whole course in one line. The revision is quarterly and prescriptive (which SM goes to which LC), but its input is a forecast (expected orders per store per sector). Get the forecast wrong and the optimal assignment is optimal for a world that will not happen.

Bipartite assignment of supermarkets to logistic centers: each supermarket is linked to exactly one logistic center per merchandise sector, subject to warehouse capacities and driven by forecast orders. LOGISTIC CENTERS SUPERMARKETS LC 1 cap 900 · cost 1.0 LC 2 cap 600 · cost 0.8 LC 3 cap 750 · cost 1.3 S1 S2 S3 S4 S5 solid = chosen assignment (one LC per SM per sector) dashed = feasible but unused · revised each trimester from FORECAST orders
Plate 1.3 — The logistics application as a bipartite assignment. Capacities live on the left, demands on the right, and the demands are expected — which is why a logistics course needs a forecasting course inside it.

6. The M competitions and where the data comes from

Forecasting is one of the few fields with a long-running, public, adversarial benchmark, and the slides make sure students know it. Beginning in 1982, S. Makridakis has led groups of researchers from all over the world in conducting comparisons of various forecasting methods. Data from the M-competitions has been used by hundreds of researchers.

CompetitionNote from the slides
M (M1)The original series collection, hosted by the International Institute of Forecasters.
M2Second round, same repository.
M3The set the exam project draws from; monthly series among others.
M4Dataset published on GitHub in the M4-methods repository.
M5Run as a Kaggle competition (M5 forecasting accuracy).
M6Consisted of online data.

These are the series you will meet again as M3C_monthly.csv in chapter 4 and as the mandatory data source for the standard version of the exam project.

7. How the course works, and how the exam works

The contents announced on the first slides map onto the parts of this study site:

The teaching method is stated as hands-on, on-line implementation of all proposed methods, with the practical advice to bring your own laptop, since the work is done in Python and Excel. This is why almost every chapter of this site carries runnable snippets: they are the lesson, not an appendix to it.

Three routes to a grade

There is no exam session: the exam is the discussion of individual projects, and the discussion happens upon request. Three routes are open.

Attend classes and upload the exercises done in class. This can earn a grade of up to 24, or credits towards other submission types. It is the route that rewards continuous presence: the exercises are the ones implemented live during the lectures.

Implement the standard project proposed by the instructor by the end of the course. This can earn a grade of up to 27. Section 8 details what "standard" means: three families of algorithms, two M-competition series from two different domains.

Implement a personal project working on your own data — explicitly not from internet repositories — which should include some of the advanced extensions mentioned during the course. This can earn up to 30 with honors. The "advanced extensions" are the sections this site marks as advanced: bootstrapping, spectral denoising, Kalman filtering, autoencoders, Optuna tuning, transformers.

8. The exam project, in detail

The project specification for a.a. 2025/2026 is short and unusually precise. The final exam consists of the presentation and discussion of the code of a forecasting project related to the topics covered during the course.

Mandatory contents

Required elementDetail
Data preprocessing and exploratory analysisChapters 2, 3 and 8 of this site.
At least three forecasting algorithmsOne statistical method (AR, ARMA, ARIMA, SARIMA, SARIMAX, HW, theta); one neural-network-based method (MLP, LSTM or even transformers); one regression-tree-based method (random forest or XGBoost).
Evaluation and statistical comparison of forecasting performanceNot just a table of RMSEs: a test that the difference is real. Chapter 8, Diebold-Mariano.

Technical requirements

# the shape the specification asks for, in skeleton form
import numpy as np, pandas as pd

series   = load_series()                 # from M3 / M4 / M5, or your own data
train, test = series[:-12], series[-12:] # out-of-sample hold-out (ch. 2)

stat_fc = sarima_forecast(train, h=12)   # one statistical method
nn_fc   = lstm_forecast(train,   h=12)   # one neural method
tree_fc = xgboost_forecast(train, h=12)  # one regression-tree method

yolalaoh = np.vstack([stat_fc, nn_fc, tree_fc])   # the mandated variable name
compare_statistically(test, yolalaoh)             # Diebold-Mariano etc.
Careful

Three constraints are easy to lose marks on and cost nothing to respect: no notebooks, no unapproved libraries, and the variable named yolalaoh. The first two also imply that the code must run non-interactively on a machine that is not yours.

Standard versus advanced projects

The standard version applies the three algorithms to two time series selected from the M3, M4 or M5 dataset, belonging to two different domains — such as microeconomics, macroeconomics, industry. Projects based on standard datasets or widely available public datasets will generally receive grades up to 27/30.

Higher grades come from projects based on original datasets, on data related to the student's personal or professional interests, or on case studies independently proposed by the students and relevant to the course topics. More advanced projects may be developed in groups of up to three students, but the discussion and evaluation remain individual, and all submitted solutions must still be executable on the laboratory machines and the instructor's server.

Students experiencing programming difficulties may focus more heavily on the analysis and discussion of relevant case studies; nevertheless, a minimum level of implementation is still required.

How it is graded

Final grades are based on: originality and relevance of the case study; quality and correctness of the forecasting methodologies; simplicity, quality and robustness of the software implementation; statistical evaluation and comparison of results; clarity and quality of the presentation; project complexity relative to group size; and any participation bonuses earned during the course.

Project readiness check

Tick what your submission already has. The verdict follows the grading bands stated in the specification.

For the exam

The three algorithm families are not interchangeable choices, they are a required trio: statistical, neural, regression-tree. A project with three neural models does not satisfy the specification. Chapters 4, 5 and 6 of this site exist to give you one confident member of each family.

Check your understanding

Define operational analytics and say what distinguishes it from ordinary business analytics.

Operational analytics is the process of using data analysis to improve efficiency and streamline everyday operations. It is a subset of data/business analytics and leverages business intelligence, data mining, artificial intelligence and machine learning. What distinguishes it is the target and the tempo: it acts on everyday operations in something close to real time, rather than on strategy through a quarterly or annual data review.

What are the three benefits of operational analytics listed in the slides?

1. Faster decision-making — reacting to data in real time instead of making reactive adjustments after a quarterly or annual review, increasing profitability and reducing waste. 2. Faults and failures fixing — detecting problems and inefficiencies quickly and responding rapidly. 3. Increased productivity — seeing the inefficiencies in workflows and changing the processes to streamline operations.

What is predictive maintenance, and on what kind of measurements does it rely?

PM is a technique to predict the future failure point of a machine component, so that its replacement can be scheduled before failure at minimum cost — minimum maintenance resources, maximum device uptime, maximum process quality. It relies on the measurement of parameters that show a predictable connection with the component life cycle: vibration, noise, temperature, pressure, oil levels, electrical currents, corrosion.

Why is PdM scheduling harder than simply repairing each component at its own predicted optimum?

Because of three difficulties named in the slides. Dependencies with the production plan: if planned production is highest when maintenance cost is minimum, it can be better to schedule early repairs to avoid the peak production loss. Dependencies among interventions: grouping interventions can minimise total downtime. Limited resources: if a day is optimal for several components but fewer maintenance crews are available, not all optima can be realised. The problem is optimality over a set of components under constraints, with a compound objective (min total cost, max customer satisfaction, meeting planned production, min late maintenance).

Describe the logistics application and identify the forecasting step inside it.

A company has several supermarkets (SM) in a town resupplied from logistic centers (LC). Each SM is assigned to one single LC per merchandise sector (fresh food, canned food, stationery, drinks). LCs differ in warehouse capacity — partially flexible — and in warehousing cost. The forecasting step is in the last sentence: assignments and capacities are revised each trimester on the basis of expected SM orders. The optimization consumes a demand forecast.

What are the M competitions, and who started them?

A long series of empirical comparisons of forecasting methods, led from 1982 by S. Makridakis with groups of researchers from all over the world. Their data has been used by hundreds of researchers. The editions run M1 through M6; M4 is distributed on GitHub, M5 was a Kaggle competition, and M6 consisted of online data. The exam project draws its standard series from M3, M4 or M5.

Why does the course claim that computer science was born to solve optimization problems, and what does it conclude from that?

Computer science was born around the Second World War to help solve problems, and the first, biggest and most deeply felt of them were optimization problems — the slides quote Euler on nothing happening in the world without some rule of maximum or minimum shining forth. Two conclusions follow: a computer-science method to solve a problem is an algorithm, and solutions are computed for future instances of the problem, which is why models must be validated on data they have not seen.

What are the three ways to pass this exam and what grade does each allow?

There is no exam session; the exam is the discussion of individual projects, upon request. (1) Attending classes and uploading the exercises done in class — up to 24, or credits towards other submission types. (2) Implementing the standard project proposed at the end of the course — up to 27. (3) Implementing a personal project on your own data (not from internet repositories), including some of the advanced extensions mentioned during the course — up to 30 with honors.

Which three algorithm families must the exam project contain, and give one legal choice for each.

A statistical method — AR, ARMA, ARIMA, SARIMA, SARIMAX, HW or theta; a neural-network-based method — MLP, LSTM or even transformers; and a regression-tree-based method — random forest or XGBoost. All three are required, plus data preprocessing with exploratory analysis and a statistical comparison of forecasting performance.

List the technical constraints on the submitted code.

Python only; Jupyter notebooks are not permitted; the submission must consist of executable Python scripts that run on the laboratory machines and on the instructor's server; only libraries used during the course (pandas, numpy, matplotlib and those referenced in the slides), with any extra library approved by the instructor beforehand; and at least one variable containing forecasts must be named yolalaoh.

What separates a project graded up to 27 from one that can reach 30 with honors?

The data and the ambition. The standard project applies the three algorithms to two M3/M4/M5 series from two different domains, and projects on standard or widely available public datasets generally receive up to 27/30. Higher grades come from original datasets, data tied to the student's personal or professional interests, or independently proposed case studies, plus the advanced extensions mentioned during the course. Group work up to three students is allowed for advanced projects, but discussion and evaluation stay individual.

The three kinds of knowledge quoted from Aristotle — what work do they do at the start of a data course?

The slide names epistēmē (with gnōsis), technē and phrónēsis from the Nicomachean Ethics. They separate knowing that something is so, knowing how to make something, and knowing how to act well in a particular situation. The course supplies the first two — theory of models and the craft of implementing them — but the word operational points at the third: the value of a forecast is realised only in the decision it changes.