ThingML+ Augmenting Model-Driven Software Engineering for the Internet
  of Things with Machine Learning
  In this paper, we present the current position of the research project
ML-Quadrat, which aims to extend the methodology, modeling language and tool
support of ThingML - an open source modeling tool for IoT/CPS - to address
Machine Learning needs for the IoT applications. Currently, ThingML offers a
modeling language and tool support for modeling the components of the system,
their communication interfaces as well as their behaviors. The latter is done
through state machines. However, we argue that in many cases IoT/CPS services
involve system components and physical processes, whose behaviors are not well
understood in order to be modeled using state machines. Hence, quite often a
data-driven approach that enables inference based on the observed data, e.g.,
using Machine Learning is preferred. To this aim, ML-Quadrat integrates the
necessary Machine Learning concepts into ThingML both on the modeling level
(syntax and semantics of the modeling language) and on the code generators
level. We plan to support two target platforms for code generation regarding
Stream Processing and Complex Event Processing, namely Apache SAMOA and Apama.
