Show simple item record

dc.contributor.advisorEklund, J. Mikael
dc.contributor.advisorMilman, Ruth
dc.contributor.authorTeatro, Timothy A.V.
dc.date.accessioned2024-02-27T20:07:09Z
dc.date.available2024-02-27T20:07:09Z
dc.date.issued2023-12-01
dc.identifier.urihttps://hdl.handle.net/10155/1754
dc.description.abstractCategory theory is applied to the design and modeling of control systems application software with emphasis on feedback control. The language of application is iso standard C++17, though the design is abstract and can be gainfully applied in any language expressive enough to embed domain specific languages for event stream processing with sufficient structure. The design is derived in a category, Cpp, of a subset of C++ programs where types are modelled as sets and programs/routines are modelled as functions. This gives a forgetful functor from Cpp to 𝕊𝗲𝘁, the category of sets which, in theory, facilitates broader compatibility with theories of dynamical systems in concrete categories. A library of abstract datatypes (struct templates) and natural transformations (parametrically polymorphic function templates) is developed to demonstrate that (1) Cpp carries a bicartesian closed structure and (2) this structure has representation as standard compliant code. The axioms of this structure are encoded as unit-tests. And from this structure we specialize “machines” in the sense of Goguen (or more generally, Arbib & Manes), which actualise in Cpp as Moore machines. These Moore machines are then used as a basic model for the I/S/O structure of a control program. Categorical Moore machines can be cast in terms of algebra and coalgebra which give natural mechanism to the input-driven evolution of internal state of the control programs, and infinite records of behaviour. The internal language of that model is consonant with sufficiently structured domain specific event-stream processing languages. The core examples and a case study use Rx, but FRP is a stated ideal and avenue for future work for modeling of interconnected and hybrid systems with computer controlled components. The architecture is applied in two examples: (1) a simulated spring-mass- damper system with PID-force control, where comparison is made to analytical results, and (2) NMPC path tracking of a mobile robot with obstacle avoidance through soft constraint.en
dc.description.sponsorshipUniversity of Ontario Institute of Technologyen
dc.language.isoenen
dc.subjectCategory theoryen
dc.subjectControl systems softwareen
dc.subjectFunctional programmingen
dc.subjectSoftware engineeringen
dc.subjectCoalgebraen
dc.titleCategories in control systems software: toward a unified theory of programming & controlen
dc.typeDissertationen
dc.degree.levelDoctor of Philosophy (PhD)en
dc.degree.disciplineElectrical and Computer Engineeringen


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record