180 likes | 291 Views
PTSP Competition Session GECCO 2005. Session Chair: Graham Kendall Competition Organiser: Simon Lucas. Physical Travelling Salesman Problem. Visit all cities in minimum time Each time step, choice of 5 force vectors Solutions are strings over {0,1,2,3,4}* Secondary criteria:
E N D
PTSP Competition SessionGECCO 2005 Session Chair: Graham Kendall Competition Organiser: Simon Lucas
Physical Travelling Salesman Problem • Visit all cities in minimum time • Each time step, choice of 5 force vectors • Solutions are strings over {0,1,2,3,4}* • Secondary criteria: • Minimise non-zero forces • Given solutions of equal quality, earliest submission wins
Participation • Number of entrants: • 10 (by unique email addresses) • Plus many anonymous (not necessarily different) entrants • Number of entries: 68 • No limit on the number of entries per individual
Top Ten Entries • Jiaqiao Hu = umd; Jose Martin = IAI CSIC
Presentations • Jose Martin • Jiaqiao Hu
Rok Sibanc (2nd Place) • Best solution: 652, 652, Wed Jun 22 12:49:15
Rok’s Method(Summarised by Simon Lucas with apologies for any errors) • 2-stage • Stage 1: • Optimise route (permutation of cities) • With a novel criteria • Includes angles between consecutive straight-line segments • As well as distance • And a weighting parameter to balance contribution of terms • Optimised with a population-based, mutation only EA • Tournament Selection
Rok’s Force Vector Optimiser • Stage 2: for a given route • Find best set of forces • Interesting: uses only symbols 1-4 • (the unit vectors) • Never uses a zero-force step • Incremental approach: • Optimise a solution that visits just the first city, • Then the first two, then three etc… • Mutation only EA
Rok’s Fitness Function • The fitness function: • iSeen+((1-(iUsed/m_iGenomeMaxLenght)))+(2.0/dNearest)+(20/(3+dLastDist)); • • iSeen is the number of visited cities • • iUsed is the number of used vectors • • m_iGenomeMaxLenght is the maximum number of vectors for a genome • • dNearest is square of the distance of last position before last visited city • • dLastDist is square of the distance of last position to the next unvisited city
Rok’s Variation Operators • 1-Symbol Substitution • 1-Symbol Deletion (and insertion?) • Replace a subsequence of length n, with n copies of the same symbol • Deletion of a subsequence • Probability of these mutations such that small changes more likely than large ones
Martin Byrod – 1st Place • Winning entry: 648, 636, Wed Jun 22 12:41:11
Martin’s Method(Summarised by Simon Lucas with apologies for any errors) • Two stage: • Use a standard EA to optimise the route, given standard TSP cost function • Then plug in the real cost function (which may alter the TSP-estimated route) • The real cost function is determined by an EA that optimises the solution string for a given route • Population-based EA, mutation only
Martin’s Fitness Function • Fitness function: • N: Number of cities visited • E: distance to next city • T: total time taken (length of string) • Optimised using a greedy sliding window approach • 0 to 100, then 10 to 110 etc. • Force Vector EA initialised with routes derived from PD Controller
Key Idea: Swap Mutation • Use both Swap (right) and bit-flip (left) mutation • Swap makes much smaller changes • But bit-flip needed to make all strings reachable • Sample swap: 1234 -> 1324
Bob MacCallum (6th) : GP(Summarised by Simon Lucas with apologies for any errors) • Used PerlGP to evolve a controller • Different approach to the other methods • The controller takes as input: • Current state (position, velocity) • Locations of cities that are yet to be visited • Outputs a continuous force vector at each time-step • Which is then quantised to form next solution step
Summary • PTSP: Interesting challenge that stimulated a good deal of interest • Many different approaches possible: • Some work much better than others • Simple naïve methods perform poorly • Web-based continuous league: • Interesting to observe • Psychological aspects also • Competitors showed fantastic ingenuity! • Thanks to all participants for making it a worthwhile competition • Might run a future contests where algorithms instead of solutions are submitted…