Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

On this Page

Table of Contents

Bachelor Topics

Graph Layout

...

Jira
serverKIELER JIRA
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
keyKIPRA-891

...

  • Tight Packing of Connected Components (Bachelor)
    Different connected components of a graph are often laid out separately and combined again afterwards. This combination step often produces too much whitespace. Research relevant 2D packing literature and implement a better solution.
    Jira
    serverKIELER JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
    keyKIPRA-1262
    Jira
    serverKIELER JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
    keyKIPRA-1031
  • Integrate KIML with JGraph (Bachelor)
    Provide automatic layout through KIML for the JGraph diagram library and develop a simple JGraph-based graph editor to test the integration with.
    Jira
    showSummarytrue
    serverKIELER JIRA
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId2851bd34-0bf1-3f02-ab12-7d77ccab0fae
    keyKIPRA-1214
  • Improved Edge Label Placement (Bachelor)
    Our layout algorithm already supports the placement of edge labels. However, there's still room for improvement...
  • Layering Algorithms (Bachelor, Master)
    Implement an alternative algorithm for the layer assignment problem used in the layer-based approach to graph layout. The focus of the algorithm could the consideration of the number of edge crossings, a given aspect ratio, or overall compactness.
  • Node Placement With a Focus on Compactness (Master)
    Node placement algorithms often try to draw as many edges as straight lines as possible. However, that usually results in less compact diagrams. The focus of this topic would be to devise or adapt a node placement algorithm that tries to strike a balance between straightness and compactness.
  • Compound Graph Layout (Master)
    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. The main area to be considered here is the crossing minimization phase.
  • Force Based Drawing with Port Constraints (Master)
    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 on the model library of Ptolemy.
  • Combining Forces and Layers (Master)
    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.

Modeling Pragmatics

  • Comment Attachment (Bachelor)
    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.
  • Control Flow Graph Exploration / Visualization (Bachelor)
    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.OMG DD Format
    Explore the mapping of KGraph / KRendering to the Diagram Definition format of the OMGKLighD.

Semantics and Synchronous Languages

  • Validation Manager for Models
    Develop an integrated, flexible and generic syntactic validation framework for models (e.g. Esterel or SyncCharts).
  • SCCharts compiler validation with Esterel
    Automate the validation of the SCCharts compiler using the Esterel simulation.
  • Transformation from SCCharts to Esterel [possibly also Master Topic]
    Develop a transformation in Xtend2 to generate Esterel code for SCCharts.
  • Hardware Synthesis from SCCharts to FPGA [possibly also Master Topic]
    Use the circuit-based code generation to produce code for FPGAs
  • Automatic documentation generation [possibly also Master Topic]
    Develop an automatic SCCharts documentation system
  • Optimizations for the SCCharts compiler [possibly also Master Topic]
    Profile the actual SCCharts compiler and apply optimizations
  • Multi-core SCCharts compiler [possibly also Master Topic]
    Implement the possibility to use more than one core to compile large SCCharts
  • Adding dataflow to SCCharts [possibly also Master Topic]
    Add dataflow to SCCharts 

PRETSY / PRETSY2

  • Real-time extensions for SCCharts [possibly also Master Topic]
    Make the timing instructions delay_until und exception_on_expire of the FlexPRET processor available in SCCharts.
  • See also Semantics and Synchronous Languages: Adding dataflow to SCCharts

Miscellaneous Topics

  • Developing an Info Screen (Bachelor)
    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.

...

Master Topics

(see also Bachelor Topics for potentially expansible topics)

Graph Layout

  • Layering Algorithms
    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.
  • Node Placement
    Develop a new node placement algorithm that finds a good balance between keeping edges straight and keeping the drawing from getting too big.
  • Compound Graph Layout
    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.
  • Force Based Drawing with Port Constraints
    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 on the model library of Ptolemy.
  • Combining Forces and Layers
    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.

Modeling Pragmatics

...

Semantics and Synchronous Languages

...