AI - Einführung, Suche & Exploration, Steering & Control, Path Finding  

Steering Algorithmen

Wie funktioniert der Steering Algorithmus Align?

1. Bestimme Orentierungsabweichung
        Δω = target.ω - agent.ω
 
2. Abbildung auf das Interval [-π, +π]
    solange Δω∉ [-π, +π]:
        Δω < -π: Δω = Δω + 2π
        Δω > +π: Δω = Δω - 2π
    Φ = |Δω|
 
3. Wenn Orentierungsabweichung im Toleranzbereich liegt (Φ < as) beende Align (success)
 
4. Wenn Orientierungsabweichung außerhalt des Annäherungswinkels liegt (Φ > ap) setze
        ω = maxAngularVelocity
andernfalls
        ω = maxAngularVelocity * (Φ / ap)
dann tatsächliche Richtung festlegen
        ω = ω * (Δω / Φ)
 
5. Bestimme Winkelbeschleunigung (steering.angular)
        Ω = (ω - agent.ω) / δ
Wenn |Ω| > maxAngularAcceleration dann begrenze die Winkelbeschleunigung
        Ω = (Ω / |Ω|) * maxAngularAcceleration

Diskussion