Inti dari pertanyaan saya adalah sebagai berikut: Saya memiliki sistem dua ODE. Yang satu memiliki batasan nilai awal dan yang lainnya memiliki batasan nilai akhir. Ini dapat dianggap sebagai sistem tunggal dengan batasan nilai awal pada beberapa variabel dan batasan nilai akhir pada yang lain.
Berikut detailnya:
Saya mencoba menggunakan pengontrol LQR finite-horizon waktu-kontinu untuk menggerakkan sistem dinamik linier. Saya ingin terus menggunakan ekosistem Python.
Sistem ini dalam bentuk , tunduk pada
Solusi LQR menghasilkan matriks sedemikian rupa sehingga input kontrol optimal u (t), linier dalam , adalah .
di mana
dan adalah solusi untuk persamaan diferensial Riccati waktu kontinu (perhatikan bahwa ini adalah matriks)
tunduk pada
, , , , , , semua diberikan.
Dalam bahasa Inggris: Anda memiliki beberapa sistem dinamis yang dimulai dalam keadaan . Kontroler LQR menghasilkan matriks umpan balik untuk digunakan antara waktu dan ( umumnya disebut time-horizon masalah)
Perhatikan bahwa kedua ODE hanya digabungkan dalam satu arah - solusi untuk tidak bergantung pada . Oleh karena itu salah satu cara untuk memecahkan masalah adalah membalikkan persamaan Riccati untuk mengubah masalah nilai akhir menjadi masalah nilai awal dan menemukan solusi numerik antara waktu dan menggunakan integrator ODE standar. Saya kemudian dapat menggunakan solusi numerik ini untuk menemukan . Ini menjadi perhatian saya karena pemecah ODE numerik untuk x (t) belum tentu sampel ODE pada waktu yang sama dengan waktu dalam solusi numerik ke $ P (t). Mungkin ada beberapa cara cerdas untuk menegakkan ini.
Cara lain yang saya perkirakan untuk menyelesaikan masalah adalah dengan memecahkan sistem bersama-sama, tetapi saya tidak tahu bagaimana menghadapi campuran nilai awal dan nilai akhir. Apakah masalah ini berat untuk diselesaikan secara komputasi? Bisakah saya melakukannya dengan SciPy / Python?