TU Wien CAIML

Guido Tack: “Constraint Solving During a RAM Crisis: CP in 300 Kilobytes”

Join us for a talk with Guido Tack.

Speaker: Guido Tack (Monash University)
Speaker: Guido Tack (Monash University)

April 30th 2026

On This Page

About the Event

April 30, 2026
12:00 – 13:00 PM
(12:00) CEST

A map to the location can be found at TU Maps.

Barrier free access is available through the entrance at Favoritenstraße 9.

Abstract

Constraint solving is a way of describing decision problems using variables and rules, and then automatically finding solutions that satisfy those rules. It is widely used in applications such as scheduling, assignment, configuration, routing, and rostering. The systems used for solving these problems are usually designed for desktop and server machines with abundant memory. This talk explores whether constraint programming can be reengineered for microcontroller-class hardware instead, where processors are increasingly capable, but RAM is often limited to only a few hundred kilobytes.

I will present Thornbill-CP, a constraint programming solver architecture designed for that environment, and discuss what changes are necessary when constraint solving is pushed into such a tight memory budget. The talk will explain briefly how traditional constraint solvers work, and then cover the main architectural ideas behind Thornbill-CP, early results from running it on ESP32 and RP-series devices, and the kinds of embedded applications that could benefit from on-device constraint solving.

About the Speaker

Guido Tack is an Associate Professor in the Department of Data Science and Artificial Intelligence at Monash University. His research focuses on combinatorial optimisation, in particular architecture and implementation techniques for constraint solvers, translation of constraint modelling languages, and industrial applications. Guido leads the development of the MiniZinc constraint modelling language and toolchain, and he is one of the leading developers of Gecode, a state-of-the-art constraint programming library. Guido’s broader research interests include programming languages and computational logic.