630 likes | 737 Views
ITSA Programming Challenge 2005. http://www.cs.um.edu.mt/~itsapc05 Gordon Pace, Joseph Cordina & Sandro Spina (the judges). Problem setting and judging. Organisers. Sponsors. The Competition. 48 hour programming competition. Prizes for lightning & normal submissions.
E N D
ITSA Programming Challenge2005 http://www.cs.um.edu.mt/~itsapc05 Gordon Pace, Joseph Cordina & Sandro Spina (the judges) Problem setting and judging Organisers Sponsors
The Competition • 48 hour programming competition. • Prizes for lightning & normal submissions. • Fair problem, accessible to all programmers. • Judging criteria are to be objective.
The 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.
An example Input Output
The Teams 8 teams registered, 5 submitting lightning solutions, 6 submitting standard submissions.
Farm Squad 4 Richard VellaMark ChircopWilliam Borg BarthetMatthew Felice Pace
Forever Young Mario GauciKarl Cassar • “… • 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.”
HyperDonkeys 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.”
Team 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. F’dan l-kaz l-iktar fit hija s-soluzjoni bl inqas area u bl izghar sides possibli”
Team1337 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”.
X3M 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.”
The 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.
Judging Problem 07 Teams HyperDonkeys, Farm Squad 4 and X3M produced (almost) identical optimal layouts.
Judging Problem 07 Even if the other teams were rather creative. Forever Young Team 1337 Team A
Judging Problem 02 Teams X3M and Forever Young produced a(n almost identical) list of queuing Ls.
Judging Problem 02 Teams Team1337 and Team A were more creative.
Judging Problem 02 Teams Farm Squad 4 and HyperDonkeys managed to identify an optimal packing!
Judging Problem 07 Teams HyperDonkeys, Farm Squad 4 and X3M all produced an optimal layout.
Judging Problem 07 Again, the other teams were rather creative. Forever Young Team 1337 Team A
But before the results, we will have a short Intermission
Sending ITSA Packing Farm Squad 4 3x18 Team A 8x10 Team1337 11x8 HyperDonkeys 7x7 Forever Young 12x5 X3M 11x5
Lightning Round 5 participating teams: • Farm Squad 4 • Forever Young • HyperDonkeys • Team A • Team1337
Overall Results: Lightning Problem 1: 1. HyperDonkeys 2. Team A 3. Team1337 4. Forever Young
Overall Results: Lightning Problem 2: 1. Farm Squad 4 2. Team A 3. Team1337
Overall Results: Lightning • Problem 3: • Farm Squad 4 • HyperDonkeys • Team A • Team1337
Overall Results: Lightning • Problem 4: • Team A • HyperDonkeys • Team1337 • Forever Young
Overall Results: Lightning • Problem 5: • Farm Squad 4 • Team A • Team1337
Overall Results: Lightning • Problem 6: • HyperDonkeys • Team A • Farm Squad 4 • Team1337
Overall Results: Lightning • Problem 7: • Farm Squad 4, HyperDonkeys • Team A • Forever Young • Team1337
Overall Results: Lightning • Problem 8: • HyperDonkeys • Team A • Forever Young • Team1337
Overall Results: Lightning • Problem 9: • Forever Young, Farm Squad 4, HyperDonkeys • Team A • Team1337
Overall Results: Lightning • Problem 10: • Farm Squad 4, HyperDonkeys • Team A • Forever Young • Team1337
Lightning Results • Forever Young (130 points)
Lightning Results • Team1337 (150 points) • Forever Young (130 points)
Lightning Results • Team A (310 points) • Team1337 (150 points) • Forever Young (130 points)
Lightning Results • Farm Squad 4 (320 points) • Team A (310 points) • Team1337 (150 points) • Forever Young (130 points)
Lightning Results • HyperDonkeys (360 points) • Farm Squad 4 (320 points) • Team A (310 points) • Team1337 (150 points) • Forever Young (130 points)
Standard Submissions 6 participating teams: • Farm Squad 4 • Forever Young • HyperDonkeys • Team A • Team1337 • X3M
Overall Results: Standard • Problem 1: • HyperDonkeys • Team A • X3M • Team1337 • Forever Young
Overall Results: Standard Problem 2: 1. Farm Squad 4, HyperDonkeys 2. Team A 3. X3M 4. Forever Young 5. Team1337
Overall Results: Standard • Problem 3: • HyperDonkeys • Team A, X3M • Farm Squad 4 • Forever Young • Team1337
Overall Results: Standard • Problem 4: • HyperDonkeys • X3M • Team A • Team1337 • Forever Young
Overall Results: Standard • Problem 5: • HyperDonkeys • X3M • Farm Squad 4 • Team A • Forever Young • Team1337
Overall Results: Standard • Problem 6: • HyperDonkeys, Team A, X3M • Farm Squad 4, Forever Young, Team1337