A*-algoritmi

Voit pyytää apua ohjelmointiongelmiin täältä.
Post Reply
lukutoukka
Active Member
Posts: 111
Joined: Fri Jun 13, 2008 9:06 pm

A*-algoritmi

Post by lukutoukka » Sat Oct 18, 2008 5:13 pm

Eli miten tuollaisen voi toteuttaa, kun itselläni on nyt karttatiedosto, joka määrittää eri alueita koordinaatistosta seiniksi ja toisia, joilla ei ole arvoa maaksi, eli miten saan p llon (10 px koko) kulkemaan törmäämättä seiniin. Tämän pitäisi myös tehdä sen, että on olemassa toisia seiniä, joista pääsee läpi (matalia seiniä, hyppää ns. yli, eli näitä ei tarvitse laittaa väistettäväksi, eli ei ongelma sinänsä...), eli miten toteuttaisin tämän. Kaikki tapahtuu koordinaatistossa ja ympyrä ei saa osua seiniin. Tutkin googlella nettiä ja löysin otsikkonakin olevan A*-algoritmin, mutta itse en oikein tajua, miten se toteutetaan järkevästi, sillä itse en sitä oikein tajunnut.

Tyyppi muuttujani sotialaalla on kahdet koordinaatit x,y, sekä päätöspisteen x,y ja sen pitäisi osata päätepisteeseen. Sotilas kulkee reittiä koko matkan pisteiden välille, mutta tulee aina tarkistamaan ,että onko matkalla vihuja, eli reitti pitää määrittää, mitä se kulkee, mutta se ei ole pakotettu kulkemaan sitä loppuun asti, vaan se voi hakeutua suojaan välillä, eli kun se näkee vihollisen, tai sitä ammutaan se menee automaattisesti suojaan lähimmän seinän taakse turvaan, eli miten teen? Tässä vain vaikeuten on tuon a*-algoritmin ymmärtäminen ja toteuttaminen, joten kertokaappa miten se toimii.

Lyhyesti selittäkää miten a*-algoritmi toimii ja pieni esimerkki asiasta.

User avatar
Aavesoturi
Active Member
Posts: 163
Joined: Fri Aug 31, 2007 7:07 pm
Location: Helsinki
Contact:

Re: A*-algoritmi

Post by Aavesoturi » Mon Oct 20, 2008 11:43 am

Joku porttas joskus jonku A* esimerkin cb:lle. Löysin paketin kovoltani ja heitän tän postin kylkeen. Siinä on siis A* algoritmi ja esimerkkiohjelma, jossa voi rakentaa seiniä ja siirtää alku ja loppu paikaa ja sitten se laskee lyhyimmän reitin.
EDIT: nytkun kattelin koodia ni siellä on monta asiaa laitettu piiloon remstart/remend lohkoilla eli jos haluaa nähä yksityiskohtasempaa tietoa ni poistaa kommentointia
Attachments
a star.zip
Esimerkki A*:stä
(27.34 KiB) Downloaded 161 times

lukutoukka
Active Member
Posts: 111
Joined: Fri Jun 13, 2008 9:06 pm

Re: A*-algoritmi

Post by lukutoukka » Tue Oct 21, 2008 1:18 pm

Kiitoksia tuosta, nyt vain tutkimaan...

Post Reply