|
Ö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!):

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!
|
|
|
|