M.Sc. Projects at PELAB

This page is available at http://www.ida.liu.se/labs/pelab/jobb/xjobb.html

The current list of "sommarjobb" and Master Theses is available as http://www.ida.liu.se/~bodma/exsom-00.html

The list of old "sommarjobb" and Master Theses from 1999 is available as http://www.ida.liu.se/~bodma/exsom-99.html


PELAB, the Programming Environment Laboratory of the Department of Computer and Information Science at Linköping University, is concerned with research in the area of tools and methods for the development and maintenance of computer programs.

Some examples of research areas are:

Currently M.Sc. projects and summer jobs are available in the following areas.

Ph.D. positions are available in some of these areas.


Software Testing and Debugging

Current research topics in software testing and debugging at PELAB are concentrated to software testability measurement through static analysis and dynamic slicing. We also have several students currently engaged in projects related to software testing and debugging. The following projects are currently available:
Testing Object Oriented Programs and Special Application Domains
Testing object-oriented and real-time software presents special challenges and problems that are not encountered when testing procedural code. We would like to have a student examine the issues and how these could be addressed in a declarative language for defining test cases. This area is also a possible starting point for further graduate study.
If you have a proposal of your own that is related to software testing, debugging or analysis, please contact Mariam Kamkar for more information. Email: marka@ida.liu.se.


Parallel Programming and Simulation

Parallel simulation of rolling bearings at SKF

MSc Thesis in  Parallel Simulation Techniques The BEAST (BEAring Simulation Tool) is an advanced dynamic multi-body simulation tool for rolling bearings. It has been developed by SKF in cooperation with universities. The simulations are run on large parallel computers, but still the simulation time is in the order of days.

The master thesis project should be made in the area of parallel simulation techniques, graphics, and using the tool to solve real problems.

The work will involve skills in multi-body dynamics, numerical methods for equation solving, parallel programming and programming in C++. You will sit at PELAB at IDA LiTH and/or part-time at SKF Nova in Göteborg.

If interested, contact Dag Fritzson at SKF Nova (also adjunct professor at LiTH). Tel: 031­7724114, E­mail: dag@nov.skf.se.

Portable data-parallel programming model (Parallel LightMat)

The LightMat library for array manipulations in C++ has been developed at PELAB. This master thesis project includes design of a general data-parallel array library based on C++ LightMat and inspired by Co-Array Fortran (F--) (www.co-array.org). The work involves C++ and parallel programming.

MPI-based parallel programming in Mathematica

The MathCode translator from Mathematica to C++ has been developed at PELAB and MathCore. The master thesis project includes design and implementation an MPI-based parallel programming package in Mathematica and C++, based on MathCode. The work involves programming with the MPI library (www.mpi-forum.org), Mathematica programming, parallel programming, C and C++.

Real Time Java on Parallel Computers

(see the Real Time Java section below)

If you are interested in other subject areas or have a proposal of your own, please contact professor Peter Fritzson (http://www.ida.liu.se/~petfr) for more information. Email: petfr@ida.liu.se, Phone: 013-281484.


3D Graphics and Virtual Reality

JavaCult3D is a new 3D format based on Java and Cult3D (www.cult3d.com) which puts 3D Graphics and Virtual Reality on the Web. Cult3D can be used to visualize static three-dimensional scenes that can be initially designed in 3DStudioMax and then converted to Cult3D. There is a plug-in that displays Cult3D scenes within a WWW browser window. Dynamic Cult3D (JavaCult3D) is a format for three-dimensional scenes with behaviors and movements applied to scene elements. The plug-in displays dynamic Cult3D scenes. The mouse can be used for interaction.

Cult3D and Mathematica Notebooks

The thesis project includes embedding Cult3D graphical objects in Mathematica notebooks as well as coupling Cult3D dynamic visualizations to simulations in Modelica. See e.g. www.mathcore.com or www.wolfram.com for notebook examples.

Virtual reality and 3D of BEAST

See information about the BEAST tool above. The thesis includes design of 3D visualization of bearings and other mechanical elements, on Silicon Graphics computers or using the Cult3D tool.

WWW-based simulation

Visit this page.

If you are interested in other subject areas or have a proposal of your own, please contact professor Peter Fritzson for more information. Email: petfr@ida.liu.se, Phone: 013-281484.


Real-Time Java

Java is a safe language for system development since it avoids pointer and memory allocation errors. This would be specially interesting for real-time systems if we can guarantee efficient execution within fixed deadlines. The RT-Java (Real Time Java) project at PELAB aims at constructing Java system that is appropriate for hard read time applications. This includes an optimizing Java compiler that genrerates efficient binary code, and a garbage collector that guarantees hard real-time deadlines.

Some of the PELAB activities in Real Time Java are described on this page.

Real Time Java on Parallel Computers

Porting of the RT Java system to a parallel computer platform, e.g. UltraSparc Enterprise. Possibly including heterogeneous parallel processing where standard processors are accompanied with special DSP processors.

Java book

Electronic books are used, in particular, as Mathematica front end. The master thesis project includes design and implementation of Java notebook. This should be able to modify and evaluate Java programs stored in the notebooks. The work involves programming in Java, Mathematica and some compiler construction.

RT Java in autonomous aircraft applications

In the WITAS project onboard system software is designed for autonomous flying vehicle. RT Java should be integrated with this software. The work includes Java, real time programming,m real-time operating systems (e.g. QNX).

Mobile Java computing

The thesis include integration of compact Java bytecode and binary code from the RT-Java compiler for execution on small mobile platforms such as Palm Pilot or similar.

If you are interested in these or other subject areas or have a proposal of your own, please contact professor Peter Fritzson for more information. Email: petfr@ida.liu.se, Phone: 013-281484.


Object-oriented equation based simulation languages

The object-oriented languages currently include Modelica and MathModelica .

Generation of Modelica code from mechanic and electronic CAD tools

Modelica can be used for modeling mechanical, electrical and other simulation applications. The objective of this thesis work is to make it possible for simulation code to be automatically generated from various CAD descriptions. The thesis project involves programming in Modelica, in C++ and using CAD API interfaces (possibly ProEngineer and AutoCAD).

Modeling an advanced autonomous helicopter in Modelica

A simplified autonomous helicopter flight object-oriented simulation model has been designed in the WITAS project framework. The model accepts flight control language commands and computes the helicopter trajectory. This model should be refined to become more realistic and tuned for performance and realism. The thesis project involves programming in Modelica and C++ as well as design of mechanical simulation models.

Integration of Modelica simulation models, 3D graphics and GIS data base

A autonomous aircraft and world simulation model has been designed in the WITAS project. Geographical information systems database describes location of various objects that can be used for online design of flight plan. The thesis work aims at partial integration of Modelica and a GIS database so that GIS objects can be included in a Modelica world simulation. The thesis project involves programming in Modelica and C++.

Differential equation solver for real time simulation

In Modelica and many other simulation software tools differential equations should be solved by some integration methods. These methods usually have different speed depending on current values of state variables. However for some applications it is necessary to deliver solution at given time step at fixed time. The thesis and related research aims at study and comparison of existing methods, tuning them for real-time requirements and modifications of them. The thesis project involves programming in C as well as study of Modelica and Fortran code.

Dynamical connection design for Modelica

Modelica models currently have fixed structure that cannot change during simulation. However it is sometimes needed to add flexibility so that new Modelica class instances and corresponding equations (ODE) appear or disappear during simulations. Accordingly, the system of ODE can change. The thesis and related research aims at study of symbolic transformations and graph-theoretical computations applied to ODE in Modelica compiler, and re-implementing it in a different way so that some transformations can be performed at run-time. The thesis project involves programming in C, compiler design tools, as well as study of Modelica code.

Constraint Logic Programming combined with Modelica

Modelica uses numeric equations; on the other hand Constraint Logic Programming uses logical equations. The thesis and related research aims at study of possible combination of these approaches. The thesis project involves programming a logic programming language, compiler design tools, as well as study of Modelica.

Physical Unit control in Modelica

In many cases Modelica is used for solution of physical problems. The variables and constants might have an annotation that specifies a physical unit (meter, gram, Newton, Watt etc.). The thesis project involves modification of existing Modelica compiler so that the physical units are checked for all variables and constants in all equations.

If you are interested in these or other subject areas or have a proposal of your own, please contact professor Peter Fritzson for more information. Email: petfr@ida.liu.se, Phone: 013-281484.


Additional and Related Information


Last updated in March, 1999 , Vadim Engelson, vaden@ida.liu.se