Tutorials

Tutorial 1: Hands-on Tutorial on Quantum Software Engineering
and Research

Presenters: Anum Khattak, Ning Ma, and Heng Li (Polytechnique Montréal)

Time and location: 13:30 – 15:00, B-415 (Pavilion Principal, 4th floor)

This tutorial aims to provide audience with an introduction to quantum computing, quantum programming and related research. It consists of three parts. The first part will provide background on basic concepts of quantum computing, the components of quantum programs (circuits), and provides hands-on experience in realizing a quantum algorithm (e.g., Grover’s
algorithm). The second part will present a quantum software engineering research project that leverages graph neural networks to estimate the execution time of a variety of quantum circuits running on simulators or real-world quantum computers.

The audience will gain hands-on experience on how the data about quantum executions are collected and analyzed. The third part will provide a hands-on guide for transitioning quantum programs from the legacy backend.run interface to the modern Qiskit Runtime primitives (SamplerV2 and EstimatorV2). We’ll walk through the key concepts, use cases, and code migration steps, demonstrating how to replace the backend.run calls with the more powerful and efficient Qiskit Runtime primitives.

Tutorial 2: From Metrics to Misbehavior: Hands-on with Dynamic Evaluation of LLM Code Generation

Presenter: Vahid Majdinasab (Polytechnique Montréal)

Time and location: 13:30 – 15:00, A-416 (Pavilion Principal, 4th floor)

This tutorial introduces the concept and practice of dynamic evaluation for Large Language Models (LLMs), focusing on code generation as a core domain for investigating model behavior. It is structured in three parts.

The first part will provide background on the limitations of static benchmarks and introduce the core motivations behind dynamic benchmarking, where evaluation adapts to model performance instead of relying on fixed datasets. We will discuss why this paradigm is better suited to uncovering misbehaviors such as hallucinations, task misunderstanding, and shortcut exploitation, and why code generation is the ideal domain to begin applying these ideas.

The second part will introduce a modular evaluation framework that implements these dynamic benchmarking principles. We will walk through its architecture, demonstrate how it supports configurable task sets and extensible evaluation modules, and examine how benchmarks can adapt to highlight behavioral weaknesses in models.

The third part will focus on research use cases and metric design. We will explore how dynamic evaluation enables researchers and practitioners to isolate root causes of model failures and develop metrics that go beyond correctness to provide usable signals for model analysis and debugging.

Tutorial 3: Search-Based Test Generation for Autonomous Systems: From Fuzzing to Surrogate-Guided Optimization

Presenter: Dmytro Humeniuk (Polytechnique Montréal)

Time and location: 15:30 – 17:00, B-415 (Pavilion Principal, 4th floor)

Thorough testing of safety-critical autonomous systems, such as self-driving cars, robotic platforms, and drones, is essential for identifying potential failures before real-world deployment. A key stage in this process is model-in-the-loop testing, where the system is evaluated in simulation across a range of virtual scenarios. However, the space of possible test parameters is often extremely large, making exhaustive testing computationally infeasible. This challenge necessitates the use of search-based and optimization-driven methods to efficiently uncover safety-critical scenarios.

In this tutorial, we provide a practical introduction to a range of search-based techniques for automated scenario generation and testing of autonomous robotic systems. We begin by covering fuzzing, a lightweight but powerful method for generating randomized inputs. We explore ways to enhance fuzzing through search-guided fuzzing and power schedules that adaptively focus test generation on promising regions of the search space. Building on this foundation, we examine nature-inspired search methods, particularly evolutionary algorithms, which iteratively evolve test cases using principles such as selection
and mutation. We highlight diversity-preserving mechanisms that encourage broader coverage of the test space by maintaining a varied population of test scenarios. We also describe the challenge of sample efficiency and discuss the role of surrogate modeling in improving the effectiveness of search-based techniques. We then briefly explore Bayesian Optimization, which
is one of the common approaches to constructing surrogate models.

The tutorial concludes with a hands-on session, where participants will set up their own test generators using our custom
search-based test generation framework. They will then apply these generators to simulate and evaluate an autonomous unmanned aerial vehicle (UAV) system.

Tutorial 4: What is a “Digital Twin” and How Do I Build One?

Presenters: Bentley Oakes and Kérian Fiter (Polytechnique Montréal), based on material prepared by Claudio Gomes (Aarhus University)

Time and location: 15:30 – 17:00, A-416 (Pavilion Principal, 4th floor)

Digital Twins (DTs) are an emerging topic in both industry and academia. But what are Digital Twins, and how can we apply them to real-world systems?

This tutorial explores this exciting field by explaining both the theory and the practice of DTs. We begin with a discussion of the core concept of ‘twinning’ a real cyber-physical system and explain the services that a DT can provide , such as visualization, anomaly detection, and real-time system control. The example DT presented will be for an incubator system, which must keep a steady temperature inside the enclosure. Following this introductory discussion, participants will be guided through the set-up of a DT of the incubator (including simulated heat propagation) on their own machine. The technical micro-service architecture of this DT and its benefits will be explained, allowing participants to easily add their own DT services following the tutorial.

This tutorial is for students, researchers, or industry practitioners across disciplines who are interested in understanding DTs at a deeper level, and who want to obtain hands-on experience.