[ros-users] Current state of SMACH in ROS

Dantam, Neil T ntd at gatech.edu
Thu Feb 16 23:40:01 UTC 2012


Ingo Lütkebohle wrote:
> I'd also be interested in what people expect in coordination
> currently. My personal impression is that frameworks based on
> state machines are a great start in formalizing this aspect,
> but they have scalability limits. This is probably also the
> limit for SMACH, as it currently stands. In other words, I
> think the problem for SMACH is not so much that it is not
> developed further, but that it is unclear in what direction to
> develop it.
>
>  * Early on, state-machines of various forms were the dominant
>  approach for realizing coordination, but, as mentioned above,
>  that alone is not sufficient.

For a formal take, some other representations often used for
concurrent systems are the Basic Process Algebra (BPA) and Petri
Nets.  I think I've read the BPA is equivalent to Context-Free
grammars (CFG) though more convenient for expressing concurrency,
but I haven't thought through the transformation myself.  Petri
nets are kind of a "sibling class" of CFGs in the hierarchy of
formal languages.  Both are supersets of Regular models like
finite state machines and both are subsets of the
Context-Sensitive languages.

The chosen representation will limit the class of systems that one
can describe and verify, though typically the more one can
describe, the less one can verify.  Regular models like FSMs get
a lot of use, probably because they are easy to understand, and
the algorithms for working with them are simpler.  However, if
FSMs do run out of steam for a given application, there are some
other existing formal representations which may be suitable.

-ntd



More information about the ros-users mailing list