Övning6 - Parallellisering av en genetisk algoritm


Gör ett Java konsolprogram som genererar slumpmässiga kordinater för ett antal punkter (t.ex. 20) och sparar dessa kordinater i en fil.

Gör sedan ett Applet-program som ritar ut dessa punkter på bildskärmen och förenar alla punkter med linjer på så sätt att den totala längden av alla linjer tillsammans är möjligast liten.
(Föreställ dej att du är på ett torg och att du vill besöka alla torgstånd men vill gå den kortaste möjliga sträckan!). Det du egentlgien gör är en s.k. genetisk algoritm, se http://sv.wikipedia.org/wiki/Genetisk_programmering#Genetisk_algoritm

Körning av ett fungerande Applet-program kan t.ex. se ut så här (Du kan glömma knapparna!):

s

När du har gjort en fungerande algoritm, öka på antalet punkter och kolla t.ex. med NetBeans Profiler hur tidskrävande din algoritm är. Fundera sedan på hur du kan effektivera din algoritm genom att parallellisera!


Jonny Karlsson 2009