-> Hier kostenlos registrieren
Hallo,
ich suche nach Ideen um auf einer Förderstrecke anhand eines vorgegebenen Zieles den Weg dort hin zu finden.
Zurzeit setze ich das ganze so um:
Handelt es sich bei dem jeweiligen Förderstrecken Abschnitt um eine gerade Strecke, so gibt es keinen anderen Weg, also fährt die Ladeeinheit dort entlang.
Steht die Ladeeinheit auf einer Kreuzung so wird eine Liste durchsucht die alle in der Anlage möglichen anfahrbaren Ziele enthält. Ist das Ziel gefunden, wird für dieses Ziel auf dieser Kreuzung die nächste Position aus der Liste geladen und die Ladeeinheit fährt dort entlang.
Angekommen auf der nächsten Kreuzung wird wieder eine Liste durchsucht welche die selben Ziele enthält. Auf dieser Kreuzung jedoch gibt es für die Ziele eine andere nächste Position, die Ladeeinheit biegt also dort ab.
So in etwa:
Ladeeinheit steht auf auf Kreuzung 1 und möchte zu Ziel 20. Kreuzung 1 durchsucht die Liste.
Irgendwann steht die Ladeeinheit auf einer weiteren Kreuzung und durchsucht die Liste.
So nähert sich die Ladeeinheit immer mehr dem Ziel durch meinen im Prinzip vordefinierten Weg.
Wie man schön erkennen kann müssen ALLE Kreuzungen eine Liste ALLER Ziele durchsuchen und dann entscheiden welcher der nächste Platz ist. Dies funktioniert auch ohne Probleme. Es ist allerdings sehr mühsam diese Listen zu erstellen und die nächsten gültigen Plätze zu vergeben.
Was wäre eine Alternative um das ganze einfacher zu gestalten? Die Fördertechnik soll keinerlei "Logik" haben. Sie soll nicht in der Lage sein selbständig den kürzesten Weg zu finden (wie z.B. bei Dijkstra). Sollte ein Streckenabschnitt gestört sein, so muss der Materialflussrechner rechtzeitig ein neues Ziel vergeben damit die Förderstrecke einen anderen Weg nimmt.
Ich bin über jeden Tipp dankbar!
Grüße
ich suche nach Ideen um auf einer Förderstrecke anhand eines vorgegebenen Zieles den Weg dort hin zu finden.
Zurzeit setze ich das ganze so um:
Handelt es sich bei dem jeweiligen Förderstrecken Abschnitt um eine gerade Strecke, so gibt es keinen anderen Weg, also fährt die Ladeeinheit dort entlang.
Steht die Ladeeinheit auf einer Kreuzung so wird eine Liste durchsucht die alle in der Anlage möglichen anfahrbaren Ziele enthält. Ist das Ziel gefunden, wird für dieses Ziel auf dieser Kreuzung die nächste Position aus der Liste geladen und die Ladeeinheit fährt dort entlang.
Angekommen auf der nächsten Kreuzung wird wieder eine Liste durchsucht welche die selben Ziele enthält. Auf dieser Kreuzung jedoch gibt es für die Ziele eine andere nächste Position, die Ladeeinheit biegt also dort ab.
So in etwa:
Ladeeinheit steht auf auf Kreuzung 1 und möchte zu Ziel 20. Kreuzung 1 durchsucht die Liste.
- Ziel - 12, Nächste Position - 5
- Ziel - 16, Nächste Position - 5
- Ziel - 18, Nächste Position - 5
- Ziel - 20, Nächste Position - 7
Irgendwann steht die Ladeeinheit auf einer weiteren Kreuzung und durchsucht die Liste.
- Ziel - 12, Nächste Position - 8
- Ziel - 16, Nächste Position - 8
- Ziel - 18, Nächste Position - 8
- Ziel - 20, Nächste Position - 10
So nähert sich die Ladeeinheit immer mehr dem Ziel durch meinen im Prinzip vordefinierten Weg.
Wie man schön erkennen kann müssen ALLE Kreuzungen eine Liste ALLER Ziele durchsuchen und dann entscheiden welcher der nächste Platz ist. Dies funktioniert auch ohne Probleme. Es ist allerdings sehr mühsam diese Listen zu erstellen und die nächsten gültigen Plätze zu vergeben.
Was wäre eine Alternative um das ganze einfacher zu gestalten? Die Fördertechnik soll keinerlei "Logik" haben. Sie soll nicht in der Lage sein selbständig den kürzesten Weg zu finden (wie z.B. bei Dijkstra). Sollte ein Streckenabschnitt gestört sein, so muss der Materialflussrechner rechtzeitig ein neues Ziel vergeben damit die Förderstrecke einen anderen Weg nimmt.
Ich bin über jeden Tipp dankbar!
Grüße