Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Logik » Kürzester Pfad auf Graphen finden (Roboter, Irrgarten) » Antwort erstellen » Hallo Gast [Anmelden|Registrieren]

Antwort erstellen
Benutzername: (du bist nicht eingeloggt!)
Thema:
Nachricht:

HTML ist nicht erlaubt
BBCode ist erlaubt
Smilies sind erlaubt
Bilder sind erlaubt

Smilies: 21 von 33
smileWinkDaumen hoch
verwirrtAugenzwinkerngeschockt
Mit ZungeGottunglücklich
Forum Kloppebösegroßes Grinsen
TanzentraurigProst
TeufelSpamWillkommen
LehrerLOL HammerZunge raus
Hilfe 
aktuellen Tag schließen
alle Tags schließen
fettgedruckter Textkursiver Textunterstrichener Text zentrierter Text Hyperlink einfügenE-Mail-Adresse einfügenBild einfügen Zitat einfügenListe erstellen CODE einfügenPHP CODE farbig hervorheben
Spamschutz:
Text aus Bild eingeben
Spamschutz

Die letzten 3 Beiträge
java_oca

Zitat:
Original von eulerscheZahl
Vielleicht kann man das Problem als Min-Cost-Flow umformen.


Hallo,

danke für deine Antwort. Geht aber m.M. nach nicht, da durch negative Schleifen low cost immer unemdlich sein wird...

Grüße,

-java_oca
eulerscheZahl

Wie stellst du bei Bellman-Ford sicher, dass du zwischendurch nicht stirbst?
Vielleicht kann man das Problem als Min-Cost-Flow umformen.

Je nach Größe des Graphen könntest du auch eine Lookup Table verwenden: wenn du in Knoten X bist und Y Energie übrig hast, schaffst du es auf Weg Z am schnellsten. Da kannst du bei den Endknoten starten und dich dann zur Startposition durcharbeiten.
java_oca Kürzester Pfad auf Graphen finden (Roboter, Irrgarten)

Hallo,

hier ein Rätsel wo ich gerne die Hilfe dieses Forums in Anspruch nehmen würde:

Ein ungerichtetes Graph beschreibt ein Irrgarten. Jede Kante hat einen positiven bez. negativen Wert. Der Irrgarten kann aus mehreren Exit-Knoten bestehen, es kann aber auch nur einen geben.

Jeder Roboter hat eine gewisse Prozentzahl von Energie. Bei jeder Bewegung (von einer Kante zur nächsten) ändert sich diese Energie, je nach dem Wert der Kante (Also wenn die Kante einen Wert von +20% hat, ändert sich die Energie des Roboters auch um +20%. Wenn die Kante -5% hat, ändert sich die Energie des Roboters auch um -5%, etc.).

Der Roboter stirbt wenn die Energie <= 0 ist. Ziel ist es für ein Roboter den kürzesten Pfad zu finden, ohne dabei zu Sterben.

Der Roboter hat eine Karte des Irrgartens, muss also nur noch den kürzesten Pfad ausrechnen.

Was ist ein guter Ansatz bez. Algorithmus um solch eine Aufgabe anzugehen?

Dijkstra-Algorithmus geht nicht, da es hier nicht um den kürzesten Pfad geht, sondern um den Günstigsten. Außerdem sind negative Kosten inkompatibel.

A* geht auch nicht, da keine wirkliche Schätzung der Distanz zum Exit-Knoten errechnet werden kann.

Den besten Ansatz den ich bisher finden konnte war der Bellman–Ford Algorithmus, allerdings findet dieser nur den günstigsten, nicht den kürtesten Pfad.

Danke für eure Hilfe im Voraus!

java_oca.

ADMIN: Habe Thema ausversehen in falsche Kategorie gepostet. Bitte in Algorithmen verschieben. Danke smile