Den optimalen Weg finden, um ein System mit Eingabebeschränkungen zum Ursprung zu steuern

Für das System

X ¨ + X = u
mit u 1 , finden Sie den optimalen Weg, um das System zu steuern

(A) ( X ( 0 ) , X ˙ ( 0 ) ) Zu ( 0 , 0 )

(B) ( X ( 0 ) , X ˙ ( 0 ) ) Zu X = 0

und minimieren

0 T F u ( T ) D T


Attemp (für Teil a ) kann das System geschrieben werden als

X ˙ 1 = X 2   ,   X ˙ 2 = X 1 + u
und der Hamiltonian kann geschrieben werden als
H ( X , T , u , λ ) = | u ( T ) | + X 2 λ 1 X 1 λ 2 + u ( T ) λ 2
dann habe ich
[ λ ˙ 1 λ ˙ 2 ] = [ 0 1 1 0 ] [ λ 1 λ 2 ] ,
Mit Anfangsbedingungen λ 1 ( 0 ) = A cos θ , λ 2 ( 0 ) = A Sünde θ Ich habe
λ 1 ( T ) = A cos ( T θ ) , λ 2 ( T ) = A Sünde ( T θ )
Und u ( T ) = S ich G N ( λ 2 ( T ) ) = + 1   oder 1 .

Ist mein Ansatz richtig? Ich bin verwirrt über den optimalen Bereich u ( T ) für verschiedene λ . Und ich bin auch verwirrt darüber, wann ich mich Teil b nähere X = 0 Dann habe ich das Set S = { ( X 1 , X 2 ) | X 1 = 0 , < X 2 < + } , dann denke ich, dass ich einen Vektor finden muss Q = [ K   0 ] so dass < λ ( T F ) , Q >= 0 ?

Antworten (2)

Sie müssen auch den absoluten Wert von nehmen u ( T ) berücksichtigen. Nämlich sagen λ 2 = 0,5 dann gibts deine lösung u ( T ) = 1 mit | u ( T ) | + u ( T ) λ 2 = 0,5 . Jedoch, u ( T ) = 0 Erträge | u ( T ) | + u ( T ) λ 2 = 0 was niedriger ist. Nämlich | u ( T ) | ist der dominierende Begriff wann | λ 2 | < 1 , die das Minimum hat u ( T ) = 0 . Der Ausdruck, der den Hamilton-Operator minimieren würde, wäre also

u ( T ) = { 1 , Wenn   λ 2 < 1 1 , Wenn   λ 2 > 1 0 , ansonsten .

Sie müssen noch Werte für finden λ 1 ( 0 ) Und λ 2 ( 0 ) , aber ich bin mir nicht sicher, ob es dafür eine Lösung in geschlossener Form geben würde. Es gibt nicht einmal immer eine Lösung, zum Beispiel wenn T F zu klein ist, so dass die eingeschränkte Eingabe das System nicht von seinen Anfangsbedingungen auf Null treiben kann. Im Allgemeinen wird dies mit der Schießmethode gelöst . In dem Fall, dass ( X ( T F ) , X ˙ ( T F ) ) = ( 0 , 0 ) Dann ( λ 1 ( T F ) , λ 2 ( T F ) ) darf alles sein. Nur in dem Fall X ( T F ) = 0 ( X ˙ ( T F ) kann alles sein) dann λ 1 ( T F ) kann immer noch alles sein, aber der andere Co-Zustand muss genügen

λ 2 ( T F ) = [ G T F X ˙ ] X = X ( T T ) ,

mit G T F die Terminalkosten, die in diesem Fall Null sind.

ja das ist richtig, aber wie finde ich λ 1 ( 0 ) , λ 2 ( 0 ) so dass X ( T F ) = 0 ? und was ist mit teil (b) wie gehe ich mit den transversalitätsbedingungen um?

Es ist ein kniffliges Problem, das mit traditionellen Methoden zu lösen ist, da das Problem keine schöne optimale Steuerfunktion hat. Siehe Begründung.

Wir schreiben die Anfangsgleichung um als:

0 = X ¨ + X u = X ¨ X ˙ + X ˙ X + u X ˙ = D D T X ˙ 2 + X 2 2 + u X ˙ = 0.

Der Wert E = ( X ˙ 2 + X 2 ) / 2 ist strikt nichtnegativ und geht durch den Einfluss von vom positiven Wert auf Null u X ˙ . Egal was X ˙ Und X sind, denn wenn es eine optimale Flugbahn von einigen gibt ( X ˙ , X ) = ( A , B ) | E = E 0 es gibt eine optimale Flugbahn von anderen ( X ˙ , X ) = ( C , D ) | E = E 0 , da wir einfach warten können, bis wir nichts tun ( X ˙ , X ) = ( A , B ) und verwenden Sie dann die optimale Steuerung (wir haben keine Zeitbeschränkung oder -strafe).

So können wir nur darüber nachdenken E . Wann gibt es die geringste Strafe zu verringern E Zu E D E ? Natürlich wann X ˙ maximal ist (bzw X = 0 ). Somit ist jede Nicht-Null-Steuerung außerhalb von X = 0 ist suboptimal. (Sie können dies auf formellere Weise zeigen).

Schließlich gibt es unendlich viele optimale Steuerungsfunktionen:

u ( T ) = k = 1 A k S ich G N X ˙ ( T k ) δ ( T T k ) ,
Wo T k ist die Zeit wann X = 0 bei k -ten Mal und A k = X ˙ ( 0 ) 2 + X ( 0 ) 2 = L mit der gleichen Strafe L . Mit anderen Worten, Sie brauchen einen Gesamtschub von L Sie können es aber auf beliebig viele Nulldurchgänge aufteilen.