Title: ITSA Programming Challenge 2005
1ITSA Programming Challenge2005
- http//www.cs.um.edu.mt/itsapc05
- Gordon Pace, Joseph Cordina Sandro Spina (the
judges)
Problem setting and judging
Organisers
Sponsors
2The Competition
- 48 hour programming competition.
- Prizes for lightning normal submissions.
- Fair problem, accessible to all programmers.
- Judging criteria are to be objective.
3The problem
- Write a program which
- Given a number of Tetris-like pieces
- Rotate them and move them around so as to
- Pack them into as small a rectangle as the
program can.
4An example
Input
Output
5The Teams
- 8 teams registered, 5 submitting lightning
solutions, 6 submitting standard submissions.
6Farm Squad 4
- Richard VellaMark ChircopWilliam Borg
BarthetMatthew Felice Pace
7Forever Young
-
- First you find the smallest area in which the
shapes fit (ex. 4x4). - Then you try to place the shapes in that area
- If they fit stop as you have found the smallest
area possible (using this algorithm). - Otherwise store your result and try again with a
larger area. - To fit the shapes to the area we tried to fit the
shape that fits best to the - border. Then the border take would also include
the outline of the - border.
8HyperDonkeys
- Marco Muscat, Jonathan Caruana, Neville Grech,
Stephen Fenech Alan Cassar - All the shapes are queued in a random order and
a placing algorithm will place them in the best
way possible in that given order. The placing
algorithm considers all rotations of every shape
and places them on the top and right hand side of
the first shape. -
- To optimise the results the placing algorithm is
placed in a genetic algorithm that alters and
tries to optimise the order of the blocks, using
crossovers and mutations that span over a number
of generations. - We used C to code the solution.
9Team A
- Gaetano Caruana Jimmy Borg
- indunajna li kien difficli immens li niddecifraw
u namlu hard coded sort of l-moves li jridu
jsiru. Ghaldaqstant morna al AI
technique.....Genetic Algorithm. Basikament
ikollok popolzjaoni ta solutions u min dik
l-popoluzjoni jkolli giex operations mutation u
crossovers. Permezz ta dawn l-operations
l-popolazjoni dejjem sort of timmatura u permezz
ta hekk is-solution l-iktar fit tirbah. Fdan
l-kaz l-iktar fit hija s-soluzjoni bl inqas area
u bl izghar sides possibli
10Team1337
- David Bailey Ruth Schembri
- We tried to place shapes on top of each other
and fit them together by moving them around in a
spiral and rotating all the time but we had to
change the idea drastically on Sunday - Used Borland Delphi because of its ease of use
but fast compiling and code execution.
11X3M
- Carmelo Ebejer Chris Grech
- We spent quite some time thinking of
optimisations to reduce the complexity of the
problem. After that, our main concern was
choosing a suitable programming language. We
chose C over C, C or Pascal because of quicker
development time.
12The Judging
- 10 preset problems.
- Available from the beginning but in encrypted
form. - Programs ranked according to size of the smallest
bounding rectangle best (smallest) 50 points,
second 30 points, third 20 points, fourth 10
points and fifth 5 points. - In case of overall tie, other rules were given
but were not needed.
13Judging Problem 07
14Judging Problem 07
Teams HyperDonkeys, Farm Squad 4 and X3M
produced (almost) identical optimal layouts.
15Judging Problem 07
Even if the other teams were rather creative.
Forever Young
Team 1337
Team A
16Judging Problem 02
17Judging Problem 02
Teams X3M and Forever Young produced a(n almost
identical) list of queuing Ls.
18Judging Problem 02
Teams Team1337 and Team A were more creative.
19Judging Problem 02
Teams Farm Squad 4 and HyperDonkeys managed to
identify an optimal packing!
20Judging Problem 10
21Judging Problem 07
Teams HyperDonkeys, Farm Squad 4 and X3M all
produced an optimal layout.
22Judging Problem 07
Again, the other teams were rather creative.
Forever Young
Team 1337
Team A
23But before the results, we will have a
short Intermission
24Sending ITSA Packing
25Sending ITSA Packing
Farm Squad 4 3x18
Team A 8x10
Team1337 11x8
HyperDonkeys 7x7
Forever Young 12x5
X3M 11x5
26And now the results!
27Lightning Round
- 5 participating teams
- Farm Squad 4
- Forever Young
- HyperDonkeys
- Team A
- Team1337
28Overall Results Lightning
Problem 1 1. HyperDonkeys 2. Team A 3.
Team1337 4. Forever Young
29Overall Results Lightning
Problem 2 1. Farm Squad 4 2. Team A 3. Team1337
30Overall Results Lightning
- Problem 3
- Farm Squad 4
- HyperDonkeys
- Team A
- Team1337
31Overall Results Lightning
- Problem 4
- Team A
- HyperDonkeys
- Team1337
- Forever Young
32Overall Results Lightning
- Problem 5
- Farm Squad 4
- Team A
- Team1337
33Overall Results Lightning
- Problem 6
- HyperDonkeys
- Team A
- Farm Squad 4
- Team1337
34Overall Results Lightning
- Problem 7
- Farm Squad 4, HyperDonkeys
- Team A
- Forever Young
- Team1337
35Overall Results Lightning
- Problem 8
- HyperDonkeys
- Team A
- Forever Young
- Team1337
36Overall Results Lightning
- Problem 9
- Forever Young, Farm Squad 4, HyperDonkeys
- Team A
- Team1337
37Overall Results Lightning
- Problem 10
- Farm Squad 4, HyperDonkeys
- Team A
- Forever Young
- Team1337
38The Ranking
39Lightning Results
- Forever Young (130 points)
40Lightning Results
- Team1337 (150 points)
- Forever Young (130 points)
41Lightning Results
- Team A (310 points)
- Team1337 (150 points)
- Forever Young (130 points)
42Lightning Results
- Farm Squad 4 (320 points)
- Team A (310 points)
- Team1337 (150 points)
- Forever Young (130 points)
43Lightning Results
- HyperDonkeys (360 points)
- Farm Squad 4 (320 points)
- Team A (310 points)
- Team1337 (150 points)
- Forever Young (130 points)
44Standard Submissions
- 6 participating teams
- Farm Squad 4
- Forever Young
- HyperDonkeys
- Team A
- Team1337
- X3M
45Overall Results Standard
- Problem 1
- HyperDonkeys
- Team A
- X3M
- Team1337
- Forever Young
46Overall Results Standard
Problem 2 1. Farm Squad 4, HyperDonkeys 2. Team
A 3. X3M 4. Forever Young 5. Team1337
47Overall Results Standard
- Problem 3
- HyperDonkeys
- Team A, X3M
- Farm Squad 4
- Forever Young
- Team1337
48Overall Results Standard
- Problem 4
- HyperDonkeys
- X3M
- Team A
- Team1337
- Forever Young
49Overall Results Standard
- Problem 5
- HyperDonkeys
- X3M
- Farm Squad 4
- Team A
- Forever Young
- Team1337
50Overall Results Standard
- Problem 6
- HyperDonkeys, Team A, X3M
- Farm Squad 4, Forever Young, Team1337
51Overall Results Standard
- Problem 7
- Farm Squad 4, HyperDonkeys, X3M
- Team 1337
- Forever Young
- Team A
52Overall Results Standard
- Problem 8
- HyperDonkeys, X3M
- Team1337
- Forever Young, Team A
53Overall Results Standard
- Problem 9
- Forever Young, Farm Squad 4, HyperDonkeys, X3M
- Team A
- Team1337
54Overall Results Standard
- Problem 10
- Farm Squad 4, HyperDonkeys, X3M
- Team A
- Team1337
- Forever Young
55The Ranking
56Final Results
57Final Results
- Forever Young (165 points)
- Team1337 (160 points)
58Final Results
- Team A (260 points)
- Forever Young (165 points)
- Team1337 (160 points)
59Final Results
- Farm Squad 4 (270 points)
- Team A (260 points)
- Forever Young (165 points)
- Team1337 (160 points)
60Final Results
- X3M (370 points)
- Farm Squad 4 (270 points)
- Team A (260 points)
- Forever Young (165 points)
- Team1337 (160 points)
61Final Results
- HyperDonkeys (500 points)
- X3M (370 points)
- Farm Squad 4 (270 points)
- Team A (260 points)
- Forever Young (165 points)
- Team1337 (160 points)
62Winners
- First Place Best Standard Submission (Lm100)
HyperDonkeys - Second Place Runner Up Standard Submission
(Lm75) X3M - Best Lightning Submission (Lm50) HyperDonkeys
63Prosit tal-programmi!