The ESF-funded junior research group VICCI dealt from 2012 until the end of 2014 with the development, control and integration of cyber physical systems (CPS) at the Faculty of Computer Science of the Dresden University of Technology. The scope includes smart home environments and supporting people in the ambient assisted living.

My work package for visualization and visual analysis has within the project investigated three essential aspects and corresponding solutions:

  • visual analysis of complex, multi-dimensional, multimodal, dynamic space-time data,
  • visualization in heterogeneous, mobile and distributed IT infrastructure, and
  • implementation of visualization systems and components.

Today I am writing about the visual analysis of complex space-time data.

teaser

Visual analysis serves as administrative overview of a current CPS, mainly for security reasons, as assistance during development, and the operation of the system. Particularly interesting are out-of-the-ordinary (erroneous) behavior and the formation of emergent system properties. For this a visual exploration with minimal previous assumptions is necessary. For example, certain data, like forces acting upon joints of a robot arm, be visualized more effectively by representations in geometrical context. This assumption however reduced the generality of visualization.

I thus developed a corresponding visualization of data collected by the CPS using coordinated views of continuous-time scatter plots, continuous-time parallel coordinate plots and temporal heatmaps. This application is capable of interactive real-time representation of generic multi-dimensional data and offers the means for a visual analysis. The developed system was published in the journal Computer Graphics Forum, the leading European Journal on Visualization. In the context of the evaluation, live data from our laboratory CPS war visualized, presented and discussed with a broad audience.

[bibtex key=Grottel2014HDTraj]

DOI: 10.1111/cgf.12352

This visualization was implemented as a plugin for the MegaMol visualization system. The source code can be downloaded freely and can be used according to the enclosed License:

hdtraj.mmplugin.ziphdtraj.mmplugin.zip Multi-Dimensional Trajectory Visualization MegaMol Plugin
[99.7 KB; MD5: 0a6eaf465318b0f256ecfdf8a8b4ad50; Mehr Info]

To compile the MegaMol system and the plugin, use the appropriate Instructions on the MegaMol website.

I like working with Software. I have fun handling large data sets and producing interactive 3D visualizations which are useful, nice and cool. On the way to create them I, of course, need a huge lot of functions, libraries and services. It is a painful fight till all those parts fit nicely together. But, I would be lying if I would say that this fight is not part of the fun. It is great seeing the parts from different persons matching together to a working whole. In my current projects source code combines from colleagues from Dresden, ex-colleagues from Stuttgart, my student assistants and my advised students.

However, the real pain are the interfaces and the stability of those parts. Of course, you could swap the implementation of anything behind a good interfaces without influencing the rest of the system. But, someone needs to show me a good interface, yet! I haven’t seen one without its problems, and I have seen many. The continuous development get increasingly difficult with each component added. Especially if there is no overseeing architect.

MegaMol-Highlevel-ArchitectureAs a matter of fact, MegaMol is currently exactly on that way down. It is actively used in Stuttgart and Dresden. I, of course, want to foster and extend that process. After all, MegaMol is my project and I am proud of it. But, the larger it gets and the more it is used, the harder it gets to continue the development. Several fundamental problems can only be solved with fundamental changes. These will bring displeasure. And I am not sure how to handle the necessary work load. On the one hand I am reducing my active development to act more like a director of the future development. On the other hand, the actual development is passed from one Ph.D. student to the next, like a scapegoat. This, of course, does not help. I am really not sure how to solve this.

configurator2MegaMol Modul Graph (10.1109/TVCG.2012.282)

But, I have my plans. “Partitioning”! And I know exactly which parts need to have my priority and which are critical. The main problems, however, are the interfaces in between. Those are far from being clean and therefore the whole current partitioning is in vain. The first tries to solve that were … semi-successful. But, I don’t even think of quitting!

Today, I am only writing a short note on MegaMol.

We have done it! We published the MegaMol system as systems paper:

[bibtex key=grottel2014megamol]
Doi: 10.1109/TVCG.2014.2350479

All the hard work really paid off. MegaMol has now been published in the IEEE Journal “Transactions on Visualization and Computer Graphics”, in short TVCG. That is the top journal of the visualization community. I have to admit, I am pretty proud.

And I am curious what will come next. I would like to continue working with MegaMol, and to help to evolve the software even further. But, of course, this depends on my future employment. MegaMol has such a potential. *sigh*

Data set file formats are a real running gag in the context of scientific visualization. Often the file formats are rather useless and there often are no established standards. Most of the time ASCII-text files greet you as the results for simulations. These are large, bulky and a pain to parse.

With MegaMol™ we tries to tackle this problem several times, with limited success I have to say. We nicely extended the list of file formats we need to be able to load due to our project partners with a whole bunch of file formats of our own. These, however, have proven themselves to be similar useless in the long run. This year the need for a solution to efficiently load larger data (not yet big data) arose, once again. The best way we found was the MMPLD file format. It basically is a binary memory dump of the simplest data structure MegaMol has to offer.

What can I say? It works. Of course this is no solution with sustainability or scalability. The huge number of failed attempts to create a good file format raises the questions if such a file format can be defined at all. I don’t want to abandon hope. We—CGV-TUD, VISUS, HLRS, ThEt-PB, SCCS TUM, and TLD-KL—at least agreed that we all have this problem, and that we all are interested in a solution. We will see…