1.S980: Applied Category Theory for Engineering Design
Logistics
Instructor: Prof. Gioele Zardini, gzardini at mit dot edu Teaching Assistant: Yujun Huang, yujun233 at mit dot edu Units: 12 units, 3-1-8 Lectures: Mondays and Wednesdays, 11:00-12:30 pm (1-134) Recitations: Fridays, 1:00-2:00 pm (1-134) Links: Class materials will be made available on CANVAS (link to come)
Course Description
When designing complex, multi-component systems, we need to consider multiple trade-offs at various abstraction levels and scales, and choices of single components need to
be studied jointly.
For instance, the design of future mobility solutions (e.g., autonomous vehicles, micromobility) and the design of the mobility systems they enable are closely coupled.
Indeed, knowledge about the intended service of novel mobility solutions would impact their design and deployment process, while insights about their technological development could significantly
affect transportation management policies. Approaching the co-design of these systems is a complex task for at least two reasons. On one hand, the co-design of interconnected systems
(e.g., large networks of cyber-physical systems) involves the simultaneous choice of components arising from heterogeneous natures (e.g., hardware vs. software parts) and fields, while satisfying
systemic constraints and accounting for multiple objectives. On the other hand, components are connected via collaborative and conflicting interactions between different stakeholders (e.g., within
an intermodal mobility system).
In short, we lack tools that can enable the clear formulation and efficient solution of such complex, compositional design problems.
In various engineering and applied science domains, recognizing the significance of abstraction and compositionality can markedly enhance both problem understanding and solution development.
Applied Category Theory is a branch of mathematics that offers valuable insights into these
very aspects.
A problem, however, is that this type of mathematics is not traditionally taught
– to date, there exists no easy path for engineers to learn category theory that is approachable
and emphasizes engineering applications, such as the ones presented above. This course aims at
filling this gap. It is designed not merely to teach category theory, but to foster the compositional
engineering way of thinking. Category theory will just be the means towards this end.
The class covers topics from foundational principles to advanced applications, emphasizing the
role of compositional thinking in engineering. It showcases successful applications in areas such
as dynamical systems and automated system design optimization, with a focus on autonomous
robotics and mobility. Additionally, the course offers students the opportunity to work on their
own application through a dedicated project in the second half of the semester.
Pre-requisites: Calculus, linear algebra, and dynamical systems at undergraduate level; or permission of instructor.