userOne
14.03.2003, 14:39
Hiho
Folgende Lage:
Ein Spielfeld mit 8x8 Sektoren.
Man kann sich axial und diagonal jeweils um ein Feld bewegen, einzelne Felder sind nicht begehbar (Spielfeld ist in Datenbank hinterlegt).
Der Algorythmus soll jetzt einen Weg von Sektor AxB nach Sektor CxD finden, in möglichst nicht expotentieller laufzeit
Beispiel (von s nach z) in 4x4:
(s,z und 1 sind begehbar, 0'en nicht)
1 s 1 1
1 1 0 0
1 1 0 z
1 1 1 1
Route wäre:
(s) Startpunkt
nach unten,
nach unten,
diagonal nach unten-rechts,
diagonal nach oben-rechts (z) Zielpunkt
Vielleicht habt ihr noch paar Ideen für mich wie man das am besten angehen kann
Ich sehe im Moment keinen anderen Weg als einen Baum aufzubauen mit allen Pfaden wo ich soclhe Pfade entferne die ein Feld was nicht begehbar ist Treffen und solche Pfade, die über Umwege ein Feld erreichen, was man auch zum Beispiel Direkt erreicht. (also Pfad mit 'nach rechts, nach unten' fällt weg, da 'diagonal nach rechts unten' möglich ist und der kürzere weg ist)
mfG
Manuel
Folgende Lage:
Ein Spielfeld mit 8x8 Sektoren.
Man kann sich axial und diagonal jeweils um ein Feld bewegen, einzelne Felder sind nicht begehbar (Spielfeld ist in Datenbank hinterlegt).
Der Algorythmus soll jetzt einen Weg von Sektor AxB nach Sektor CxD finden, in möglichst nicht expotentieller laufzeit
Beispiel (von s nach z) in 4x4:
(s,z und 1 sind begehbar, 0'en nicht)
1 s 1 1
1 1 0 0
1 1 0 z
1 1 1 1
Route wäre:
(s) Startpunkt
nach unten,
nach unten,
diagonal nach unten-rechts,
diagonal nach oben-rechts (z) Zielpunkt
Vielleicht habt ihr noch paar Ideen für mich wie man das am besten angehen kann
Ich sehe im Moment keinen anderen Weg als einen Baum aufzubauen mit allen Pfaden wo ich soclhe Pfade entferne die ein Feld was nicht begehbar ist Treffen und solche Pfade, die über Umwege ein Feld erreichen, was man auch zum Beispiel Direkt erreicht. (also Pfad mit 'nach rechts, nach unten' fällt weg, da 'diagonal nach rechts unten' möglich ist und der kürzere weg ist)
mfG
Manuel