blegat / HybridSystems.jl

Hybrid Systems definitions in Julia
Other
28 stars 5 forks source link

HybridAutomaton #35

Open blegat opened 5 years ago

blegat commented 5 years ago

There are many formalisms out there and the one used by the HybridSystem struct seems to be the Hybrid Automaton so we should probably rename it to HybridAutomaton. @schillic @mforets What do you think ?

schillic commented 5 years ago

Some people use these terms interchangeably. Personally I would say the HybridAutomaton is the mathematical model and HybridSystem is the real-world system, but I am not sure how accepted this view is. So while I agree that HybridAutomaton is a more suitable term, I do not see the necessity to rename it. You can define an alias HybridAutomaton = HybridSystem as a compromise.

mforets commented 5 years ago

HybridAutomaton does more closely reflect the implementation, in that sense i think it is a good idea to rename +1

But i don't have other implementations in mind, so i'm fine either way.

hurak commented 7 months ago

I am obviously late to the party, but I also like the idea of renaming the HybridSystem type to HybridAutomaton.

Indeed, hybrid automata are just one framework for modeling hybrid systems, albeit the most popular one.

Another one with some scientific imprint is hybrid (state) equations (also flow-event or flow-jump equations), as promoted for example in Sanfelice, R.G. Hybrid Feedback Control. Princeton University Press, 2021. Inspirational and well-maintained implementation is Hybrid Equations (HyEQ) toolbox for Matlab. It may be perhaps a nice student project to implement such data type within the same package. Similarly for other possible frameworks for modelling of hybrid systems (perhaps switched systems, piecewise affine systems, ...). I am not going to promise anything but having started teaching a course on hybrid (control) systems, I feel I might have some chance and motivation to contribute (either directly or indirectly through students).

Renaming is certainly not vital but it could be nice. I guess that impact of obvious braking introduces by such renaming would not be that serious.

blegat commented 7 months ago

Thanks for the references, we would greatly appreciate such contributions. We can rename just before we release v0.5

mforets commented 7 months ago

yep, i think it is not late to rename.

one big consumer of this package is within the JuliaReach ecosystem, providing an interface to simulate hybrid systems @hurak feel free to reach out to juliareach dev's via github or zulip (juliareach channel) if you or some students wants guidance.