<
From version < 135.1 >
edited by Jette Petzold
on 2022/11/15 09:43
To version < 98.1 >
edited by cds
on 2018/06/01 13:32
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.jep
1 +XWiki.cds
Content
... ... @@ -4,49 +4,77 @@
4 4  
5 5  Die möglichen Themen sind im Folgenden thematisch gruppiert. Die Zahlen vor der Themenbeschreibung stehen für Prioritäten. Je kleiner die Zahl, desto wichtiger ist uns das Thema.
6 6  
7 += Outline =
8 +
9 +
10 +
11 +{{toc exclude="Outline"/}}
12 +
7 7  = Automatic Graph Layout =
8 8  
9 -**Advisors:**ren Domrös, Max Kasperowski, Reinhard von Hanxleden.
15 +**Advisors:** Christoph Daniel Schulze, Reinhard von Hanxleden.
10 10  
11 -Ein sehr wichtiges Gebiet für uns ist das automatische Layout von Diagrammen. Hierfür gibt es bereits Werkzeuge, die gute Algorithmen enthalten, so dass viele Diagramme bereits jetzt übersichtlich und automatisiert angeordnet werden können (siehe z.B. [[Graphviz>>url:http://www.graphviz.org/||shape="rect" class="external-link"]]). Für einige besondere Arten von Diagrammen sind diese allgemeinen Algorithmen jedoch nicht geeignet, da zusätzliche Anforderungen an das Layout erfüllt werden müssen. Außerdem ist häufig die technische Anbindung vorhandener Algorithmen umständlich. Nutzer müssen sich mit der Funktionsweise der Algorithmen beschäftigen, um sie für ihre Anwendung optimal konfigurieren zu können.
17 +Ein sehr wichtiger Teil des KIELER Projekts is das automatische Layout von Diagrammen. Hierfür gibt es bereits Werkzeuge, die gute Algorithmen enthalten, so dass viele Diagramme bereits jetzt übersichtlich und automatisiert angeordnet werden können (siehe z.B. [[Graphviz>>url:http://www.graphviz.org/||shape="rect" class="external-link"]]). Für einige besondere Arten von Diagrammen sind diese allgemeinen Algorithmen jedoch nicht geeignet, da zusätzliche Anforderungen an das Layout erfüllt werden müssen. Außerdem ist häufig die technische Anbindung vorhandener Algorithmen umständlich. Nutzer müssen sich mit der Funktionsweise der Algorithmen beschäftigen, um sie für ihre Anwendung optimal konfigurieren zu können.
12 12  
13 13  Wir verfolgen drei Themenbereiche, die zusammen solche Probleme lösen und den Nutzen von automatischem Layout erhöhen sollen:
14 14  
15 -//» Algorithmen-Entwicklung.// Wir implementieren vorhandene Ansätze zum Layout von Graphen in Java und binden sie in unser Projekt ein. Der Schwerpunkt liegt auf dem Entwurf von Erweiterungen, die spezielle Anforderungen unterstützen, z.B. für Datenfluss-Diagramme. Dies ist gut für alle geeignet, die sich gerne mit Graphentheorie, effizienten Algorithmen oder kombinatorischer Optimierung beschäftigen.
21 +//» Algorithmen-Entwicklung.// Wir implementieren vorhandene Ansätze zum Layout von Graphen in Java und binden sie in das KIELER Framework ein. Der Schwerpunkt liegt auf dem Entwurf von Erweiterungen, die spezielle Anforderungen unterstützen, z.B. für Datenfluss-Diagramme. Dies ist gut für alle geeignet, die sich gerne mit Graphentheorie, effizienten Algorithmen oder kombinatorischer Optimierung beschäftigen.
16 16  
23 +//» Meta Layout.// Hierunter verstehen wir ein abstraktes Layout, welches im Gegensatz zum konkreten Layout nicht durch (x,y) Koordinaten definiert ist, sondern den Nutzern verschiedene Schnittstellen bietet, um auf schnelle und einfache Weise die Layout-Algorithmen zu konfigurieren. Die große Herausforderung liegt dabei in der Entwicklung von Abstraktionsebenen, die den Nutzer möglichst direkt zu einem guten Layout führen und trotzdem flexibel genug sind.
24 +
17 17  //» Dienste.// Algorithmen und Meta Layout müssen den Anwendern zugänglich gemacht werden, damit ein Nutzen daraus entsteht. Dazu müssen wir verschiedenste graphische Frameworks mit vorhandenen Layout-Bibliotheken integrieren und eine Reihe von Werkzeugen entwickeln, mit denen die Verfügbarkeit unserer Lösungen gesteigert wird. Hierzu gehört z.B. die Unterstützung von Standard-Graphenformaten sowie ein Web-Service für automatisches Layout.
18 18  
19 -Die Entwicklung geschieht im [[Eclipse Layout Kernel>>url:http://www.eclipse.org/elk||shape="rect"]]-Projekt (kurz ELK), einem offiziellen Eclipse-Projekt welches hauptsächlich wir betreuen und weiter entwickeln. Ergebnisse in diesem Bereich fließen damit einer tatsächlich existierenden Nutzerbasis zu.
27 += Modeling Pragmatics =
20 20  
21 -==== **Topics** ====
29 +**Advisors:** Ulf Rüegg, Christoph Daniel Schulze, Reinhard von Hanxleden
22 22  
23 -* [[doc:A Machine Learning Approach for Node Size Approximation in Top-down Layout]]
24 -* [[doc:Tree Layout with Vertical Position Constraints]]
25 -* [[doc:Node Placement with Flexible Node Size and Port Position]]
31 +* **1 Compound Graph Exploration** (Bachelor, Master)
32 +A new graph exploration approach should be examined which is uses different zoom levels for different compound nodes. This tries to map the "Google Maps approach" of only showing the information of interest at any given zoom level to the field of graph exploration.
33 +* **1 OpenStreetMap-Based Model Exploration** (Bachelor, Master)
34 +Implement a prototype to investigate whether OpenStreetMap can be used to display custom data (such as, say, rendered diagrams) to use its filtering and exploration features for exploring large diagrams.
35 +* **1 Improvements to Spline Edge Routing** (Bachelor, Master)
36 +Spline edge routing closely follows the routes orthogonal edges would take. A Bachelor's thesis could work on improving how splines connect to their end points to make the results look more natural. A Master's thesis could look at improving the routes splines take through a diagram more generally.
37 +* **3 Control Flow Graph Exploration / Visualization** (Bachelor)
38 +Use pragmatics concepts (automatic layout, focus & context) for exploring/visualizing control flow graphs and specific paths, eg. as computed by OTAWA WCET analysis tool, eg. using KLighD.
26 26  
27 -Further possible thesis topics can be found [[in ELK's GitHub repository>>url:https://github.com/eclipse/elk/issues?q=is%3Aissue+is%3Aopen+label%3Athesis||shape="rect"]]. Note, however, that some issues there may already be worked on.
40 += Semantics, Synchronous Languages and Model-based Design =
28 28  
29 -= Modeling Pragmatics =
42 +**Advisors:** Steven Smyth, Alexander Schulz-Rosengarten, Reinhard v. Hanxleden
30 30  
31 -**Advisors:** Niklas Rentz, Reinhard von Hanxleden
44 +Synchronous languages are well-established for the design of embedded, in particular safety-critical systems. One of our research areas concerns the further development of such languages and their efficient compilation. Specifically, we explore the paradigm of "sequential constructiveness" for reconciling familiar, imperative programming concepts with the sound grounding of synchronous languages. One language we have developed to try out and validate our concepts is the [[SCCharts>>doc:KIELER.SCCharts||shape="rect"]] language, which keeps evolving and thus offers many opportunities for student theses.
32 32  
33 -==== **Topics** ====
46 +//SCCharts Modelling & Transformations//
34 34  
35 -* [[doc:Architecture Comparison Framework for Software Project Visualization]]
48 +* **SCCharts Verification** (Master/Bachelor)
49 +Add the possibility to perfom model checking on SCCharts
50 +* **Raceyard evaluation** (Master)
51 +Evaluate the possibility for the use of SCCharts in the Raceyard context and pave the way for future experiments
36 36  
37 -= Semantics, Synchronous Languages and Model-based Design =
53 +//SCCharts Code Generation & Optimizations//
38 38  
39 -**Advisors:** Alexander Schulz-Rosengarten, Reinhard v. Hanxleden
55 +* **Optimization of the SCCharts compiler/transformations **(Bachelor/Master)
56 +Profile the actual SCCharts compiler/transformations and apply optimizations; also evaluate the possibility to use multiple cores for compilation.
57 +* **Efficient data dependency & scheduling analyses in SCCharts** (Master/Bachelor)
58 +Implement analyses for data dependencies and scheduling (e.g. tick boundaries) for SCCharts to improve static scheduling of the compiler.
40 40  
41 -Synchronous languages are well-established for the design of embedded, in particular safety-critical systems. One of our research areas concerns the further development of such languages and their efficient compilation. Specifically, we explore the paradigm of "sequential constructiveness" for reconciling familiar, imperative programming concepts with the sound grounding of synchronous languages. One language we have developed to try out and validate our concepts is the [[SCCharts>>doc:KIELER.SCCharts||shape="rect"]] language, which keeps evolving and thus offers many opportunities for student theses.
60 +//SCCharts Simulation//
42 42  
43 -= Safety Analysis =
62 +* **Visualization of Model-based Simulation via Tracing** (Bachelor/Master)
63 +Use the already implemented Model-to-Model-Tracing in KIELER to visualize simulations.
64 +* **Core SCCharts Interpreter** (Master/Bachelor)
65 +Implement an Interpreter for Core SCCharts.
44 44  
45 -**Advisors:** Jette Petzold, Reinhard v. Hanxleden
67 +//Model-based C Code Compilation//
46 46  
47 -==== **Topics** ====
69 +* **Incremental Model-based Compilation of Legacy C Programs** (Bachelor/Master)
70 +Modify the model-based compiler in KIELER so that it is able to compile C to (S)CCharts incrementally.
71 +* **Execution of Recursive Dataflow Code** (Master/Bachelor)
72 +* **Execution of Concurrent Dataflow Code** (Master/Bachelor)
73 +Modify the model-based dataflow compiler in KIELER so that it is able to compile recursive/concurrent C programs.
74 +For Master students: Implement both.
48 48  
49 -* [[doc:Fault Tree Analysis (FTA) Support for the STPA VS Code Extension]]
50 -* [[doc:Reevaluation Suggestions in System-Theoretic Process Analysis]]
76 +//Synchronous Languages//
51 51  
78 +* (% style="letter-spacing: 0.0px;" %)**eSCL - Implementing {{code language="none"}}gotopause{{/code}}**(%%) (Bachelor/Master)
79 +Create an extended dialect of the SC Language including the {{code language="none"}}gotopause{{/code}} statement and implement a transformation to SCL.
52 52  \\
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -142606389
1 +46858245
URL
... ... @@ -1,1 +1,1 @@
1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/RTSYS/pages/142606389/Topics for Student Theses
1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/RTSYS/pages/46858245/Topics for Student Theses