MDL for Networked Systems
One way to approach complex control tasks for unmanned systems is to break up larger, complex control tasks into smaller controllers that can be concatenated together to achieve a desired motion. MDL are used frequently with systems that depend on their local information. Recently, however, the trend in research is to harness the capability of these networked, embedded systems (also known as cyber-physical systems) by utilizing information from other systems on the network.
We extend MDL to include specifications of networked-information dependencies. By embedding the desired network topologies within the language, one can not only specify global tasks for a collection of heterogeneous systems but also describe the desired structure of the network for achieving this goal.
This work was funded in part by the NSF and ARO.
MDL and Input Constraints
When specifying MDL programs, it is generally assumed that the controller “fits” the dynamics of the system in that the system can execute the control string. However, in a number of practical applications, e.g. embedded control systems, there are hard constraints on the actuator signals achievable that effect what motion programs can be executed. It is thus possible that a motion program that is intended to perform some action, actually fails to accomplish the task because of the input constraints.
This problematic specification-to-execution process will cause more issues as we move into cyber-physical system (CPS) application domains, where the interactions with the physically constrained environment play a key role. As such, we can no longer assume that the motion programs will execute correctly on a cyber-physical platform. As such, we are pursuing the development of “MDL compilers” for CPS. This work will lay the foundation for more exploration into how theory and algorithms can be developed to compile our MDL programs into executable code that satisfies the constraints of the CPS application.
This work was funded by the NSF.