Computing education and popularization
Teaching computer programming2009–202212 publications →
This line of research investigates computer science education, with a
particular focus on programming. Contributions include an analysis of
computer science teaching in Italian schools
[Bellettini et al., 2014a] and a critique of the view that
reduces programming to encoding algorithms in a programming language
[Lonati et al., 2015]. Topics investigated include
introductory programming through specific projects and tools
[Bulgheroni and Malchiodi, 2009; Paterson et al., 2015],
interdisciplinary learning activities connecting programming and
music [Ludovico et al., 2017; Baratè et al., 2017a; Baratè et al., 2017b], and the teaching of advanced
programming topics [Lonati et al., 2016; Lonati et al., 2017d]. A constructionist approach to
programming education was analysed in
[Monga et al., 2018; Lodi et al., 2019], while
[Condorelli and Malchiodi, 2022] describes the design of a
course on big data architectures in collaboration with an industry
partner.
In collaboration with laboratorio ALaDDIn (Università degli Studi di Milano)
Popularization of informatics culture2012–202018 publications →
These activities, carried out with the ALaDDIn laboratory, aim to
promote understanding of the foundations of computer science in
schools and among a wider audience. They include computing
competitions for students, such as Kangourou dell'Informatica
[Lissoni et al., 2012; Lissoni et al., 2013; Lissoni et al., 2014; Lissoni et al., 2015]
and the Italian edition of Bebras. The latter's tasks have been
studied as teaching resources and analysed in terms of difficulty
[Bellettini et al., 2015b; Lonati et al., 2017c; Calcagni et al., 2017; Lonati et al., 2017a; Morpurgo et al., 2018]. Constructionist activities have
also been proposed to support the learning of programming and
computational thinking, including activities based on music and LEGO®
bricks [Baratè et al., 2017b; Baratè et al., 2017a; Monga et al., 2018; Lodi et al., 2019].
These initiatives are complemented by teacher training
[Bellettini et al., 2015a; Bellettini et al., 2018a; Bellettini et al., 2018b] and contributions aimed at
teachers and the general public [Monga et al., 2017; Bellettini et al., 2020].
In collaboration with laboratorio ALaDDIn (Università degli Studi di Milano)
Training of computing teachers2014–20209 publications →
[Bellettini et al., 2014c] introduces the algomotricity
approach, which places automated information processing at the centre
of computer science education. The aim is to move beyond teaching
focused almost exclusively on how specific technological tools work
[Lonati et al., 2015; Bellettini et al., 2014a; Bellettini et al., 2020]. The approach was evaluated in
teacher qualification programmes
[Bellettini et al., 2015a], with particular attention
to the constructivist perspective [Bellettini et al., 2018b; Bellettini et al., 2018a]. The educational use of computing
contests in non-competitive settings was also investigated
[Lonati et al., 2017c], analysing how task
presentation affects their educational effectiveness
[Lonati et al., 2017a].
In collaboration with laboratorio ALaDDIn (Università degli Studi di Milano)
Computational thinking challenges2012–20189 publications →
This activity investigates the use of computing contests as learning
resources in primary and secondary schools, emphasising their
educational purpose over competition. It includes organising
nationwide contests [Lissoni et al., 2012; Lissoni et al., 2013; Lissoni et al., 2014; Lissoni et al., 2015], critically analysing their
outcomes [Bellettini et al., 2015b; Lonati et al., 2017a], and studying their use in teaching
[Lonati et al., 2017c; Calcagni et al., 2017; Morpurgo et al., 2018].
In collaboration with laboratorio ALaDDIn (Università degli Studi di Milano)
Informal learning of computing2012–20179 publications →
The algomotricity approach introduced in
[Bellettini et al., 2014c; Bellettini et al., 2014b] has
been applied to teaching core computer science concepts, including
information representation [Bellettini et al., 2012; Bellettini et al., 2013; Baratè et al., 2017a], programming
fundamentals [Baratè et al., 2017b], and recursive and
greedy algorithmic strategies [Lonati et al., 2016; Lonati et al., 2017d; Lonati et al., 2017b].
In collaboration with laboratorio ALaDDIn (Università degli Studi di Milano)
Statistical learning and algorithmic inference
Design of learning algorithms2013–20193 publications →
This line of research investigates algorithms for learning from
partially labelled data or uncertain labels, alongside methods for
fuzzy set induction. In particular,
[Malchiodi and Legnani, 2014] proposes an extension of support
vector classification algorithms that handles both partially labelled
data and uncertain labels, while [Malchiodi and Pedrycz, 2013]
introduces an algorithm for learning fuzzy set membership functions,
subsequently adapted to shadowed set induction in
[Malchiodi and Zanaboni, 2019].
Bootstrap techniques for regression algorithms2006–20095 publications →
Bootstrap techniques use data resampling to estimate the sampling
distribution of a statistic and quantify the uncertainty of
estimates. This line of research investigates a variant first
proposed in [Apolloni et al., 2006a] and further developed
in [Apolloni et al., 2009; Apolloni et al., 2007a],
which enables the construction of confidence regions for regression
curves without relying on the usual assumptions about the
distribution of measurement errors. Applications to linear and
nonlinear regression are described in
[Apolloni et al., 2008c], while
[Apolloni et al., 2007c] presents applications in
medicine.
Development of inference models for machine learning problems2000–200715 publications →
This line of research develops Algorithmic Inference, a theoretical
framework that unifies inferential problems in statistics, such as
point and interval estimation of distribution parameters, and
computer science, such as approximation error estimation in
computational learning [Apolloni et al., 2006a; Apolloni et al., 2005e; Apolloni et al., 2002e; Apolloni et al., 2002d; Apolloni and Malchiodi, 2001b; Malchiodi, 2000]. The framework builds on
earlier theoretical results on the sample complexity of learning
problems [Apolloni and Malchiodi, 2001a]. It has been applied
to estimating classification risk for support vector machines
[Apolloni et al., 2007e; Apolloni et al., 2005b; Apolloni and Malchiodi, 2002; Apolloni and Malchiodi, 2001b] and
constructing confidence regions for regression lines without assuming
a Gaussian error distribution [Apolloni et al., 2005f; Apolloni et al., 2002f]. In medicine, it has been used to
construct confidence regions for the hazard function associated with
time to recurrence in specific cancers [Apolloni et al., 2007c; Apolloni et al., 2005g; Apolloni et al., 2002i].
Design of hardware-implementable statistics1996–20133 publications →
Dedicated hardware circuits for computing estimates from data can
reduce processing times, but require algorithms compatible with
architectural constraints. This line of research applied the
inference among gossips model, developed in
[Malchiodi, 1996], to the construction of a
family of estimators for Bernoulli populations that can be
implemented directly on pRAM boards
[Apolloni et al., 1997]. The same model was
subsequently applied to the study of information exchange in social
networks [Apolloni et al., 2013].
Hybrid and neuro-symbolic systems
Automatic simplification of symbolic descriptions2002–20065 publications →
In computational learning theory, the structural risk minimisation
principle balances model complexity against training error, with the
aim of promoting generalisation. This line of research applies this
principle to classifiers based on logical expressions in disjunctive
or conjunctive normal form. In [Apolloni et al., 2006b; Apolloni et al., 2005h; Apolloni et al., 2003a; Apolloni et al., 2002h; Apolloni et al., 2002b], an
algorithm was developed to simplify these expressions through
stochastic optimisation of the parameters of the fuzzy sets that
describe them.
Design of hybrid learning systems2000–200613 publications →
Hybrid learning systems combine subsymbolic modules, often based on
neural networks, with symbolic modules based on logical constructs.
This line of research investigates how to integrate these
representations and other learning models.
[Apolloni et al., 2005a; Apolloni et al., 2004a]
describe a system that extracts independent Boolean components (bICA)
from input data features. These components are interpreted as truth
values and used to construct logical formulae that symbolically
represent relationships among the data
[Apolloni et al., 2006b; Apolloni et al., 2003a; Apolloni et al., 2002a; Apolloni et al., 2000]. The system
was applied to emotion recognition from speech signals
[Apolloni et al., 2004a]. Systems of this kind were
also used to monitor driver attention through biosignals
[Apolloni et al., 2004c; Apolloni et al., 2004b; Apolloni et al., 2003d; Apolloni et al., 2003c; Apolloni et al., 2003b], within the ORESTEIA project
(mOdular hybRid artEfactS wiTh adaptivE functIonAlity,
IST-2000-26091), funded by the European Union under the IST-FET area
of the Fifth Framework Programme between 2001 and 2003. A second
strand integrates a fuzzy system for measuring the relevance of
training examples with classification and regression models.
Specifically, [Apolloni and Malchiodi, 2006] describes
integration with a linear support vector classifier, while
[Apolloni et al., 2005c] presents integration with
a linear regression model.
Automatic classification of emotions2000–20064 publications →
This work applied the Algorithmic Inference framework described in
[Apolloni et al., 2006a; Malchiodi, 2000] to
automatic emotion classification from audiovisual signals
[Apolloni et al., 2004a; Apolloni et al., 2002a]. The
research was conducted within the PHYSTA project (Principled
Hybrid Systems: Theory and Applications), funded by the European
Union under the TMR programme of the Fourth Framework Programme
between 1998 and 2000. The results were presented at an international
school on computational learning organised within the same project.
Intelligent systems for pervasive and ubiquitous computing2003–20046 publications →
The ORESTEIA project (mOdular hybRid artEfactS wiTh adaptivE
functIonAlity) investigated the design, implementation and
analysis of intelligent systems for pervasive and ubiquitous
computing, which embed computing capabilities in the environment and
everyday objects. The project was funded by the European Union under
the IST-FET area of the Fifth Framework Programme between 2001 and
2003. As part of research into attention state detection
[Kasderidis et al., 2003], a prototype was
developed to recognise a car driver's attention state from
physiological signals [Apolloni et al., 2004c; Apolloni et al., 2004b; Apolloni et al., 2003d; Apolloni et al., 2003c; Apolloni et al., 2003b].
Scientific computing and simulation
Applications of systems for scientific computation2006–201314 publications →
Scientific computing systems support simulations and the interactive,
incremental exploration of mathematical problems, providing tools for
designing educational activities [Bulgheroni and Malchiodi, 2009; Malchiodi, 2008b]. A commercial system was described
in detail in [Malchiodi, 2007] and extended with
functionality for information encoding
[Malchiodi, 2006d], remote procedure calls
[Malchiodi, 2006c; Malchiodi, 2006a], and the
production of scientific documentation
[Malchiodi, 2011]. Further extensions address
optimisation [Malchiodi, 2006b], support vector
learning [Malchiodi et al., 2009b; Malchiodi et al., 2009a], and software validation
[Malchiodi, 2013a]. The resulting code underpins
the simulations described in [Apolloni et al., 2007d; Apolloni and Malchiodi, 2006]. Finally,
[Malchiodi, 2010] presents a machine learning library
built on an open-source scientific computing system.
Study of population dynamics2002–20108 publications →
This line of research investigates the mathematical modelling of
conflict situations through an alternative to classical game theory.
In [Apolloni et al., 2006d; Apolloni et al., 2003e; Apolloni et al., 2002g; Apolloni et al., 2002c], two-player
games are considered, modelling conflict through the approximation of
the solution to an NP-hard problem. The Algorithmic Inference
framework is used to determine how limited computational resources
should be allocated to the players.
[Apolloni et al., 2006c] extends the approach to team
games. Biological applications are described in
[Apolloni et al., 2007b; Apolloni et al., 2005d],
while [Apolloni et al., 2010b] uses the model to
determine the computation time to allocate to learning algorithms
based on local error minimisation.