Bachelor-projecten

In het derde jaar van de Bachelor-studie moet een Bachelor-project van 11 ECTS (studiepunten) gedaan worden. Er is een wat meer formele uitleg [concept] betreffende het Bachelor-project.

De omschrijvingen zijn expres erg kort gehouden. Beste is om langs te komen om projecten in meer detail te bespreken. Alleen na z'n bespreking wordt een project uitgevoerd Er zijn alleen projecten voor individuele studenten, niet voor groepen. Studenten mogen alleen aan een Bachelor-project beginnen als ze van de studieadviseur toestemming hebben gekregen; hiervoor moeten minstens 70 van de 120 EC studiepunten uit tweede en derde jaar van de studie Informatica behaald zijn (en uiteraard de propedeuse).
Sommige Bachelor-projecten kunnen ook als (kleinere) projectstudie gedaan worden (Research Project of Software Project in de Master).

In de Computer Systems groep werken we aan compiler technieken voor multi-core platformen. Bij multi-core, denk aan bijvoorbeeld FPGAs, maar ook de IBM Cell processor die draait in een Playstation 3. De compiler die we aan het ontwikkelen zijn heet 'Compaan'. Deze compiler converteerd programaatjes geschreven in matlab naar code voor de FPGA of de Cell processor. Alle bachelor projecten hebben op de een of andere manier met deze ‘Compaan’ compiler te maken.

Enkele mogelijke Bachelor-projecten — in willekeurige volgorde — zijn:

  1. Integrating the ‘Compaan’ compiler as an Eclipse Plug-in [REEDS GEKOZEN]
    Eclipse is the most popular Integrated Developers Environment for Java. In Eclipse, infrastructure is provided to extend Eclipse. The aim is to extend Eclipse with the Compaan compiler
  2. Creating a System-C back-end for Compaan
    System-C is a popular system level description language that is based on ‘C’. The aim of this project is to extend Compaan with the capabilities to generate networks in the System-C formalism.
  3. Creating a Kahn Process Network in the dynamic dataflow formalism [REEDS GEKOZEN]
    The networks that are generated by Compaan can be expressed in different computational formalisms. One of these formalisms is dynamic dataflow. The aim of this project is to express the Compaan generated networks in the Ptolemy II DDF domain..
  4. Polytope visualizatie mbv Open GL en SWT
    In Compaan zijn programma's gespecificeerd in de vorm van Polytopen. Dit is een wiskundige beschrijving in de vorm van Ax>=B. Deze polytopen kunnen echter heel mooi gevisualizeerd worden mbt van 3D technieken als bijv. OpenGL. Bedoeling is om een Eclipse plugin te maken waarmee polytopen met OpenGL gevisualizeerd kunnen worden.
  5. Multi-core simulatie
    Met Compaan kunnen we code genereren voor verschillende instanties (van 10 - 100) van een bepaalde processor. De bedoeling is dat we een simulatie opzetten van verschillende instanties van deze processoren en kijken of de code generatie correct is. Vereist kennis van C en Sockets.
  6. Code generatie met Eclipse JET framework
    In de wereld van J2EE (Servlets) wordt gewerkt met templates die bepaalde tags bevatten. Deze tags worden door een programma als bijv JET ingevuld. Deze techniek zou ook gebruikt kunnen worden in Code generatie voor bijv multi-core platformen. Bedoeling is om een case-studie te doen hoe JET gebruikt kan worden voor een bepaald probleem.
  7. Experimenten met het Device Software Development Platform in Eclispe
    Om code generatie te doen voor bijv de Playstation 3, moet gewerkt worden met bepaalde compilers en hardware. Deze staan allemaal op verschillende machines wat het moeilijkt maakt om vanuit 'view point' code te ontwikkelen, compileren en executeren. In deze opdracht moet een case-study gedaan worden hoe DSDP omgeving gebruikt kan worden om toch gemakkelijk multi-core ontwikkeling te doen.
  8. Applicatie afbeelden op PS3
    In deze opdracht is het de bedoeling de bestaande infrastructuur te gebruiken om een applicatie af te beelden op de PS3. Denk bijv aan neurale netwerken of andere optimizatie problemen.
  9. Schrijf een Eclipse highlight editor
    De Compaan compiler gebruikt een eigen taaltje. Daar willen we graag een editor voor schrijven die 'feedback' kan geven of wat geschreven is wel voldoet aan de eisen. Zaken waar bijv. aan gewerkt kan worden is 'Code Assist', 'Automatic Formatting', en highlighting.
Als er REEDS GEKOZEN bij staat, is er nu iemand al mee bezig

Voor meer informatie: Bart Kienhuis


22 Juni 2007 — http://www.liacs.nl/home/kienhuis/bach/projects.html