Hide last authors
cds 3.1 1 Here's a selection of possible bachelor and master topics. If you're interested in one of them, don't hesitate to contact us! We'll sit down, have tea, and talk about what we could do together.
2
cds 1.1 3 = Bachelor Topics =
4
msp 26.1 5 == Graph Layout ==
cds 15.1 6
msp 29.1 7 * (% style="line-height: 1.4285715;" %)**Implement Greedy Switch Heuristic for Crossing Minimization**(%%)
8 The order of nodes in a layer determines the number of crossings and is computed during the crossing minimization step. The results can usually be further improved by switching the order of nodes around, which we currently lack proper algorithms for. 
msp 20.1 9 * **{{jira columns="key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution" id="KIELER JIRA" serverId="2851bd34-0bf1-3f02-ab12-7d77ccab0fae" key="KIPRA-891"}}KIPRA-891{{/jira}}Layering Algorithms**
cds 15.1 10 Implement an alternative algorithm for the layer assignment problem used in the layer-based approach to graph layout.
cds 21.1 11 * **Integrate KIML with JGraph**
cds 22.1 12 Provide automatic layout through KIML for the JGraph diagram library and develop a simple JGraph-based graph editor to test the integration with.
cds 24.1 13 * **{{jira showSummary="true" columns="key,summary,type,created,updated,due,assignee,reporter,priority,status,resolution" id="KIELER JIRA" serverId="2851bd34-0bf1-3f02-ab12-7d77ccab0fae" key="KIPRA-1214"}}KIPRA-1214{{/jira}}Improved Edge Label Placement**
14 Our layout algorithm already supports the placement of edge labels. However, there's still room for improvement...
cds 15.1 15
16 == Modeling Pragmatics ==
17
cds 32.1 18 * **Comment Attachment**
ssm 33.1 19 When computing a new layout for a diagram that contains comments (comparable to comments in source code), the comments often get placed far away of the nodes they refer to. This is because often the reference is not explicitly encoded in the original model. We have used a distance-based metric in the past to discover references automatically, but there are lots of ideas for improvement. This bachelor thesis would implement them, perhaps come up with additional ideas, and finally evaluate them in a thorough experiment.
cds 12.1 20 * **Control Flow Graph Exploration / Visualization**
Reinhard von Hanxleden 9.1 21 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.
cds 15.1 22 * **OMG DD Format**
23 Explore the mapping of [[KGraph>>doc:KGraph Meta Model]] / [[KRendering>>doc:The KRendering Notation Model]] to the [[Diagram Definition>>url:http://www.omg.org/spec/DD/||shape="rect"]] format of the OMG.
24
25 == Semantics and Synchronous Languages ==
26
cds 12.1 27 * **Validation Manager for Models**
Reinhard von Hanxleden 9.1 28 Develop an integrated, flexible and generic syntactic validation framework for models (e.g. Esterel or SyncCharts).
ssm 33.1 29 * **SCCharts compiler validation with Esterel**
30 Automate the validation of the SCCharts compiler using the Esterel simulation.
31 * **Transformation from SCCharts to Esterel** [possibly also Master Topic]
32 Develop a transformation in Xtend2 to generate Esterel code for SCCharts.
33 * **Hardware Synthesis from SCCharts to FPGA**
34 * **Automatic documentation generation out of annotations **[possibly also Master Topic]
35 * **Optimizations for the SCCharts compiler**
cds 1.1 36
cds 15.1 37 == Miscellaneous Topics ==
38
39 * **Developing an Info Screen**
40 Info screens are screens that present data in ways that can be easily understood. This includes static data (project description graphics, members of a team, ...) as well as dynamically aggregated data (bug statistics, automatic build overviews, ...). This topic is about developing such an info screen for our group and making it easily configurable.
41
msp 26.1 42 ----
cds 1.1 43
msp 26.1 44 = (% style="color: rgb(0,0,0);" %)Master Topics(%%) =
45
46 == Graph Layout ==
47
cds 24.1 48 * **Layering Algorithms**
msp 25.1 49 Develop an alternative algorithm for the layer assignment problem used in the layer-based approach to graph layout. The algorithm shall be extended to consider the number of edge crossings and an optimal aspect ratio.
cds 30.1 50 * **Node Placement**
51 Develop a new node placement algorithm that finds a good balance between keeping edges straight and keeping the drawing from getting too big.
msp 29.1 52 * (% style="line-height: 1.4285715;" %)**Compound Graph Layout**(%%)
53 Design and implement new concepts for computing layer-based layouts of compound graphs. The main focus shall be on //maintainability//: ensuring that the implementation can be kept working over the years.
msp 26.1 54 * **Force Based Drawing with Port Constraints**
55 Develop methods for integrating port constraints in force-based drawing approaches. The resulting node placement shall be evaluated using an edge router such as [[libavoid>>url:http://www.adaptagrams.org/||shape="rect"]] on the model library of [[Ptolemy>>url:http://ptolemy.eecs.berkeley.edu/||shape="rect"]].
56 * **Combining Forces and Layers
57 **Design and implement a layout algorithm that combines the force-based and the layer-based approaches. The first three phases of the layer-based approach shall be replaced by a node distribution computed with a force-based approach.
58
59 == Modeling Pragmatics ==
60
ssm 33.1 61
62
msp 26.1 63 * **Diagram Description Language**
64 Developing the concepts and implementation of a diagram description language based on Klighd, with SyncCharts as application example.
65
66 == Semantics and Synchronous Languages ==
67
ssm 33.1 68 * **Quartz**
msp 26.1 69 Integrate the synchronous Quartz language into KIELER for validation purposes and teaching.
ssm 33.1 70 * **Implementation of a priority-based compilation approach**
71 * **Curing Schizophrenia with Depth Join**
72 * **Adding dataflow to SCCharts**
73 * **Detecting tick boundaries in SCCharts**
74 * **Preserving concurrency for multi-core **
75 * **Railway 2.0**