You are on page 1of 34

Project Ideas in Computer Science

Keld Helsgaun

Keld Helsgaun
Research: Combinatorial optimization Heuristic search (artificial intelligence) Simulation Programming tools Teaching: Programming, algorithms and data structures
2

OPT-art

27486 points One out of 10110079 possible tours

Space filling curve


A curve that passes every point of a square

Sierpinski curve
4

and a TIFF QuickTimesee thi are (Uncompressed) d needed to

Finding a tour

Visit the points in the same order as they appear on the curve
5

Sierpinski - Mona Lisa

O(n log n) time


6

Self-organizing neural networks

O(n) time
7

Triangulized Mona Lisa

Delaunay triangulation

For each triangle, the circumcircle does not contain any other points of the pointset

Genetic algorithms
Darwins principle of evolution (survival of the fittest) may be used to construct effective optimization algorithms

10

Genetic algorithms
An individual (chromosome) represents a candidate solution for the problem at hand. A collection of individuals currently "alive, called population is evolved from one generation to another depending on the fitness of individuals, indicating how fit an individual is, in other words, how close it is to an optimal solution. At each evolutionary step, crossover and mutation (Genetic Operators) are applied on individuals, respectively.

11

Swarm intelligence
Social insects - such as ants and bees - give us a powerful metaphor for developing decentralized problem solving systems consisting of simple cooperating agents.

http://dsp.jpl.nasa.gov/members/payman/swarm/sciam_0300.pdf
12

Ant colony optimization

QuickTime and a TIFF (Uncompressed) deco are needed to see this pi

Each ant leaves a trail of pheromones when it explores the solution landscape. This trail is meant to guide other ants. The trail will be taken into account when an ant chooses the next location to move to, making it more prone to walk the path with the strongest pheromone trail.

13

QuickTime and a TIFF (Uncompressed) decompr are needed to see this pictur

Timetabling
Assign a number of events to a limited number of time periods. Course planning: Assign each lecture to some period of the week in such a way that no student is required to take more than one lecture at a time.

International Timetabling Competition: http://www.idsia.ch/Files/ttcomp2002/

14

Problem solving
Write a general Java package for problem solving. For example, the package must be applicable to solving the so-called 15-puzzle:
11 9 4 15

12

?
6 13

10

11

12

13

10

14

14

15

0 0

15

Rubiks cube

16

Automatic theorem proving


Theorem proving: to show that a statement follows logically from some other statements Automatic theorem proving: a mechanization of the proof

17

Example
Given the following 2 statements: All humans are mortal. Socrates is a human. Show that we may conclude that: Socrates is mortal.

18

Project idea
Development of a program that reads a series of logical statements, checks their correctness, and converts them into a form that may be used in an existing program for automatic theorem proving. Input: Logical statements in first order predicate Output: The statements transformed into disjunctive normal form Subjects: Syntax, semantics and translation
19

and a TIFF QuickTimesee this pict are (Uncompressed) decom needed to

Data mining
Analysis of large data sets with the purpose of finding meaningful patterns in the data. Example: cluster analysis

20

and TIFFQuickTime see are (Uncompresse needed to

Distributed algorithms
Application of xgrid for distributed solution of some chosen problem.

QuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture.

QuickTime se TIFF needed toan are (Uncompress

21

Simulation of a computer
Development of a simulator for Donald Knuths MMIX machine.

22

Image compression

QuickTime and dec TIFF (Uncompressed) a p are needed to see this

Compression of images be means of block truncation.

23

Symbolic differentiation
Given a symbolic expression as the following: sin2(3x-2) + (3-2x)/(3+2x)

Input the expression. Output the differential quotient with respect to x: -3/2(cos(6x-9) - cos(2x-3)) - 12/(3+2x)2

24

Representation of images

QuickTime and a TIFF (Uncompressed) decomp are needed to see this pictu

Development of a program that, given a description as this one:


Picture spiral = new Picture(50); spiral.plus(square).plus(spiral.origon(0,1).turned(10). magnified(0.95, 0.95)); Picture ram = new Picture(1); ram.plus(spiral).plus(spiral.origon(1,0).magnified(-1,1));

draws the picture

25
Wyvill, B.L.M. PICTURES-68 MK1. Software --- Practice and Experience, 7 (1977), pp 251--261.

Computer vision
Given a figure as the one shown below:

Determine which edges that make up the outline of the figure ( ), and which inner edges that are oriented towards (+) or away (-) from the viewer.

+ + +

+ +

+
26

QuickTime TIFF needed to and are (Uncompresse see

Adventure games
Development of an adventure game program in Java.

QuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture.

27

and a TIFFQuickTime see this pic are (Uncompressed) deco needed to

Optimization of simulation models


Development of a general tool for optimization in connection with simulation. Example: Optimization of traffic lights.

QuickTime and a TIFF (Uncompressed) decompressor are needed to see this picture.

28

The simulation language DEMOS


A Java implementation of DEMOS (Discrete Event Modelling on Simula).

29

The game OCTI

Don Green (2002)

30

Bioinformatics
Involves: Modeling of biological processes Formulation of computational problems Design and analysis of algorithms Development and use of programs Focus on genetic sequence analysis. Example: How similar are two gene sequences?

and a TIFF QuickTimesee this are (Uncompressed) de needed to

31

Sorting by reversals
Given a permutation og the integers 1 to n. Determine the shortest sequence of reversals that transforms the permutation into (1 2 3 ... n). Example: 43287156 43217856 12347856 12348756 12348765 12345678

and a TIFF QuickTime see this p are (Uncompressed) dec needed to

5 reversals
32

Additional inspiration
See the web page: www.akira.ruc.dk/~keld/teaching/Projektforslag Ten proposals in artificial intelligence Twelve mixed proposals (in Danish)

33

Contact

Office 42.2 e-mail: keld@ruc.dk


34

You might also like