Prosiding SENTIA 2009 – Politeknik Negeri Malang
PENYELESAIAN KENDALI NONLINEAR DENGAN METODE COLLOCATION: STUDI PERPINDAHAN OPTIMAL ORBIT PESAWAT Warindi Jurusan Teknik Elektro, Fakultas Teknik, Universitas Mataram email:
[email protected] ABSTRACT The main objective of the research is to solve a nonlinear problem found in manuver control of a circular orbital space shuttle. In this case, it is necessary to maximize orbital distance due to limited fuel. Althouh some classical solver based on Newton method has been established, it is necessary to find methods that has a better accuracy and computational time. To solve the problem, the system state space approach is used. The optimal control problem is transformed and reduced to a boundary value problem using Hamiltonian equation derivation. To increase computation speed, the propose method use flexible time discretization. The final results on determining a maximum radial orbit prove that proposed method suitable to solve the problem. Although optimal results does not different with classical Newton based method, but results shows that the convergency and computational speed increases significantly. Key words: nonlinear control, collocation, boundary value problem Persoalan kendali optimal tidak bisa dipisahkan dengan persoalan sistem nonlinear, karena kebanyakan sistem bersifat nonlinear. Pemecahan persoalan tersebut umumnya tidak bisa diselesaikan dengan pendekatan analitis tetapi dengan pendekatan metode numeris. Metode penyelesaian yang paling terkenal adalah metode Newton. Penyelesaian persoalan kendali optimal tersebut bisa didekati dengan berbagai cara yaitu: metode shooting, finite diffrence dan collocation. Metode shooting bisa dilakukan dengan single shooting atau multiple shooting dengan pendekatan syarat kondisi awal (initial problem) atau syarat batas (boundary value problem). Metode shooting mempunyai beberapa keunggulan dalam hal penyelesaian persoalan nonlinear yaitu dalam hal kecepatan menemukan solusi. Namun dilain pihak metode tersebut sangat tergantung pada penetapan tebakan awal solusi. Tebakan yang jauh dari solusi bisa memperlama waktu komputasi. Usaha untuk mempercepat komputasi pada kendali optimal dewasa ini menjadi perhatian utama agar dapat diwujudkan sistem kendali optimal secara online. Tujuan penelitian adalah merumuskan dan mencari penyelesaian numeris persoalan kendali nonlinear pada perpinddahan orbit dengan pendekatan kepada persamaan keadaan.
1. Pendahuluan Secara umum sistem nonlinear adalah sembarang persoalan dengan variabel-variabel yang tidak bisa direpresentasikan sebagai penjumlahan linear dari komponen-komponen bebas. Sistem nonlinear dapat dikelompokkan menjadi sistem nonlinear alami dan sistem nonlinear disengaja yaitu untuk tujuan tertentu misalnya sistem kendali optimal. Penelitian terhadap sistem kendali dengan pendekatan nonlinear semakin banyak dilakukan karena pada umumnya sistem nyata merupakan sistem nonlinear (Ogata, 1996, dan Wikipedia, 2008). . Di lain pihak, sebagian besar penyelesaian persoalan kendali nonlinear tidak bisa diselesaikan dengan cara analitis tetapi memerlukan pendekatan metode numeris. Teknik kendali optimal sendiri adalah proses untuk menentukan isyarat kendali dan trayektori keadaan pada suatu sistem dinamis sepanjang periode waktu tertentu untuk meminimalkan indeks kinerja. Metode numeris yang umum dilakukan adalah mengubah persoalan kendali optimal menjadi persoalan persamaan diferensial dengan syarat nilai batas (Bonnard dan Caillau, 2006 dan Becerra, 2008) . Teknik kendali optimal akhir-akhir ini semakin berkembang mencakup berbagai bidang. Kendali modern umumnya dilakukan dengan pengendali berbasis komputer yang dilengkapi dengan algoritma pengendali. Kendali klasik kebanyakan didekati dengan model linear, walaupun kebanyakan sistem yang ada adalah sistem nonlinear.
2. Tinjauan Pustaka dan Landasan Teori Park dan Scheeres (2003) menunjukkan bahwa penyelesaian permasalahan kendali optimal melalui penyelesaian BVP bisa dilakukan melalui transformasi persamaan keadaan melalui penurunan persamaan Hamiltonian. E-77
Prosiding SENTIA 2009 – Politeknik Negeri Malang
Metode collocation adalah metode untuk penyelesaian numeris dari suatu persamaan differensial biasa, PD parsial, dan persamaan integral. Ide dasarnya adalah untuk memilih ruang dimensi terbatas dari kandidat solusi (biasanya polinomial sampai beberapa tingkat) dan sejumlah titik dalam domain (disebut titik-titik collocation) dan memilih solusi yang memenuhi persamaan yang diberikan pada titik collocation tersebut (Wikipedia, 2008). Penyelesaian BVP yang berbasis pada diskretisasi waktu seperti metode multiple shooting dan collocation memerlukan pencacahan waktu menjadi bagian-bagian yang lebih kecil. Bagianbagian kecil satu dan yang lainnya bisa jadi mempunyai dinamika yang berbeda-beda. Oleh sebab itu pencacahan yang tidak seragam atau adaptif lebih sesuai. Mengingat keterbatasan bahan bakar maka diperlukan cara agar suatu satelit atu pesawat ruang angkasa dapat berpindah sejauh mungkin dalam suatu waktu tertentu agar cepat sampai.
r
r2
v
r
2 r (t f )
3/ 2
(11)
u (t f ) u v1
(12)
v (t f ) v v 2
(13)
g = konstanta grafitasi tf = final position a = percepatan gaya dorong roket Tujuan pengukuran waktu pada suatu algoritma berhubungan dengan efisiensi algoritma. Perkembangan yang sangat cepat dalam teknologi komputer mengakibatkan pengukuran fisik (waktu eksekusi, kebutuhan memori) menjadi tidak relevan. Sebagai gantinya adalah menggunakan kompleksitas waktu, O (big oh). Kompleksitas waktu mengukur waktu komputasi berdasarkan pada fungsi data masukan pada kondisi terburuk. Pada persoalan algoritma kendali optimal jumlah data masukan adalah tetap sebab hanya dibuat untuk menyelesaikan satu macam kasus saja. Variable yang mungkin dibuat dalam kondisi kasus terburuk (worst case) adalah jumlah titik diskretisasi yang dibuat sangat banyak.
(3)
Persamaan Hamiltonian dapat dibentuk untuk memasukkan syarat-syarat optimal Perrsamaan Hamiltonian, H dirumuskan sebagai berikut v2 1 UV (5) H u a sin a cos u
v2
1 | m | t
r
(9)
m = pesat komsumsi bahan bakar
(4)
.
2v U v r r
Keterangan: T = gaya dorong roket (tetap) = sudut arah T r = jarak pesawat dari pusat grafitasi (posisi radial) u = komponen radial kecepatan pesawat (kecepatan) v = komponen tangensial kecepatan pesawat m = massa pesawat
(2)
T
(8)
r (t f ) r 1
r (tf ) df
U r
Syarat cukup kendali optimal adalah bila turunan persamaan Hamiltonian H terhadap kendali u adalah 0, 0 H u cos v sin a tg u (10) v r
Perkirakan nilai awal u, r, dan v dan r(0)= r0 =1; u(0)=0; v(0)=1
a
(1)
1
(7)
v H v u
1 = u(tf) =0; 2 = v(tf)-
v2 2 UV 3 v 2 2 r r r
u H u r v
2.1 Model persamaan keadaan sistem Model kendali pesawat dengan orbit sirkular tersebut dapat dinyatakan dalam persamaan keadaan berikut dengan pendekatan bahwa sistem adalah sistem kontinyu yang merupakan model dalam penelitian Bryson and Ho (1986).
v2 1 r a sin r r2 uv v a cos r
r H r u
3. Metodologi Penelitian 3. 1 Bahan penelitian Bahan uji penelitian ini adalah persoalan kendali optimal pada perpindahan atau manuver sebuat pesawat ruang angkasa pada orbit bumi untuk menjapai orbit semaksimal mungkin dalam waktu yang telah ditentukan. Persoalan tersebut mengandung ketaklinearan yang disengaja Pada percobaan yang dilakukan nilai parameter-parameter sistem yang ditetapkan adalah sebagai berikut:
dan syarat waktu akhir maksimalisasi sehingga persamaan fungsi yang dimaksimalkan adalah 1 (6) r (tf ) v1u (tf ) v 2 v(tf ) r (tf ) Syarat perlu untuk mencapai ketinggian maksimum r dalam waktu t0 sampai dengan tf adalah persamaan-persamaan costate (pendamping) yang sudah mengandung fungsi tujuan. Persamaanpersamaan costate (variabel keadaan pendamping) tersebut adalah: E-78
Prosiding SENTIA 2009 – Politeknik Negeri Malang
x
dx untuk semua persamaan dt
T = 0.1405; m = 0.07489; t f = 3.3155
dalam bentuk
3.2 Alat penelitian Peralatan percobaan numeris utama yang dipakai adalah perangkat lunak MATLAB®. Versi 6.5. Supaya hasilnya tidak bergantung pada perangkat keras yang digunakan, maka untuk pengukuran waktu komputasi digunakan kompleksitas waktu.
diferensial yang terkait.sebuah rutin yang digunakan untuk mencari residu (hasil optimisasi) dan subroutine untuk menggambar atau menampilkan trayektori pesawat ruang angkasa dan sudut gaya dan hal lain yang penting Penggunaan fungsi-fungsi penyelesaian Persamaan differensial dan optimisasi built in, pada Matlab yang digunakan ini menggunakan fungsi ode45 untuk penyelesaian PD dan fsolve untuk optimisasi pada cara 1. Pada Cara yang diusulkan yaitu cara 2 (collocation) menggunakan fungsi bvp4c yaitu solver untuk menyelesaikan permasalahan syarat batas (boundary value problem, BVP) yang sudah berbasis collocation.
3.3 Jalannya penelitian Penelitian diawali dengan perumusan permasalahan kendali nonlinear pada kasus manuver pesawat pada orbit sirkular. Penyelesaian kendali optimal menggunakan cara tidak langsung yaitu melalui pembentukan persamaan Hamiltonian sehingga indeks kinerja bisa dilibatkan ke dalam persoalan. Penyelesaian BVP cara pertama (cara 1) adalah metode Newton single shooting dan penyelesaian cara kedua (cara 2) adalah penyelesaian berbasis adalah collocation. Variabelvariabel percobaan yang diamati yaitu indeks kinerja, dan waktu eksekusi. Hasil percobaan numeris kedua metode tersebut dibandingkan dan dianalisis. Berikut langkah langkah untuk menyelesaikan permasalahan kendali nonlinear pada orbit pesawat: 1. Perkirakan nilai awal u(t) atau u(i) pada N titik 2. Tentukan x(t) atau x(i) dengan forward integration atau forward sequencing 3. Evaluasi , , x, x 4.
4. Hasil dan Pembahasan 4.1 Hasil Program akan dijalankan dengan asumsi bobot pesawat 1 satuan. Gambar 1 menunjukkan Hasil akhir plot lintasan pesawat dari orbit semula (titik-garis) menuju lintasan yang lebih tinggi (garis putus-putus). Tanda-tanda panah menunjukkan arah gaya dorong pesawat.
Hitung H u (t ) dan H u (t ) atau H u (i ) dan
H u (i ) dengan backward integration atau backward sequencing 5.
Tentukan
v Qg1 dengan Q dan g adalah
atau
dari H u (t ) dan H u (t )
atau H u (i ) dan H u (i ) 6.
u(t ) k H u (t ) v T H u (t ) H u (t ) Q1
7. 8. 9.
atau it dengan k>0, 0<1 Jika |u(t)|< atau |u(i)|<, maka berhenti u(t)=U(t)+ u(t) atau u(i)=U(i)+ u(i) Kembali ke (2) jika tidak menemukan solusi
gambar 1. trayektori pesawat ruang angkasa dengan lintas orbit sirkular
T
Hasilnya selain dalam bentuk grafis juga bisa disajikan dalam bentuk keluaran text. Keluaran dalam bentuk text menampilkan proses yang terjadi dalam program misalnya jumlah iterasi dan keadaan saat iterasi dilakukan. Keluaran dalam bentuk text dalam hal ini juga diperlukan untuk mengetahui apakah proses konvergen atau mendapatkan solusi. Contoh list pesan dalam bentuk teks tidak diperlihatkan dalam tulisan ini. Rangkuman hasil percobaan numeris disajikan dalam tabel 1.
Pembagian program dalam subroutinesubroutine supaya berlaku umum. Program terdiri dari program utama dan subroutine-subroutin. Program utama yang berfungsi untuk mengendalikan alur program mulai dari masukan data dan menjalankan subroutine-subroutine. Subroutinesubroutine minimal terdiri dari sebuah subrutin untuk menentukan fungsi dari persamaan keadaan sistem, right hand side (rhs), E-79
Prosiding SENTIA 2009 – Politeknik Negeri Malang
Tabel 1. Rangkuman hasil percobaan
Hasil optimal Time Complx, O
Cara 1 1,5
Cara 2 1,5
O n1,4854
O n1,2390
pesawat berangkat t0 yang dalam hal ini dianggap titik 0 satuan waktu. Variable yang dikendalikan adalah r(t) untuk mendapat solusi optimal. Untuk penyeleaian optimalisasi dilakukan dengan evaluasi pada persamaan Hamiltonian yaitu pers. (5) dan memakai penurunan parsial terhadap .. Penyelesaian BVP ini didapat dari iterasi terhadap vektor kontrol u(t). Dengan dugaan/estimasi awal u0 maka pada iterasi ke n akan didapat nilai dari u(n). Karena persamaan keadaan hanya merupakan fungsi dari vektor-vektor keadaan dan kendali, sedangkan kondisi awal diketahui maka pada persamaan keadaan tersebut bisa dilakukan forward integration dan didapatlah r(n). Setelah menentukan evaluasi r, vektor costate dapat ditentukan dengan mengintegralkan secara backward integration pers (5) terhadap waktu dengan rentang yang telah ditetapkan untuk mendapatkan (n). Sehingga u(t) yang baru, dapat dihitung dan di-iterasi hingga harga u(t) terhadap u(t) sebelumnya lebih kecil dari galat yang telah ditetapkan. Integrasi numeris dari persamaan keadaan dan costate-nya didapat dari Matlab fsolve Terlihat bahwa ada perubahan arah kecepatan. Saat mendekati puncak kurva terjadi perubahan arah gaya sehingga yang sebelumnya komponen gaya mengarah ke atas namun setelah titik balik tersebut gaya cenderung mengarah ke bawah. Pesawat mempunyai bobot awal m0 termasuk bahan bakar. Bila bobot bersih pesawat tanpa bahan bakar adalah mp, maka bobot bahan bakar mulamula, m = m0-mp. Bobot bahan bakar adalah varibel. Ketika pesawat mulai bergerak terjadi
Penetapan kompleksitas waktu O (Big Oh) akan lebih teliti bila dilakukan melalui perhitungan per operasi elementer algoritma. Cara tersebut walaupun lebih akurat sangat sulit untuk dilakukan pada algoritma yang kompleks. Cara yang lebih praktis adalah dengan melakukan pengukuran langsung menggunakan clock internal komputer. Agar mencerminkan kondisi kasus terburuk maka dipilih jumlah data sebesar mungkin. Dalam kasus pengukuran kompleksitas waktu dilakukan dengan membuat jumlah titik diskretisasi sebanyak mungkin. Jumlah data 4 X 1025, 4 X 2049 dan 4 X 4097 bisa dianggap jumlah yang cukup besar dan mendekati kasus kemungkinan terburuk. Hasil kompleksitas waktu tersebut baru mempertimbangkan masukan data diskretisasi saja dan sebenarnya masih ada hal lain yang perlu dipertimbangkan untuk mengetahui kompleksitas waktu secara menyeluruh, yaitu jumlah masukan data. 4.2 Pembahasan Untuk memperlihatkan keunggulan dari metode yang diteliti pada tabel 1 diberikan hasil perbandingan antara cara 1 dan 2 ditinjau dari hasil optimal. Ternyata dalam penyelesaian kasus semua metode mampu memperoleh jarak maksimum yang sama Hasil dalam bentuk gambar grafis seperti ditunjukkan oleh gambar 1. Orbit mula-mula adalah orbit yang berada di sisi dalam (kurva garis titik) orbit yang dituju (orbit akhir) adalah orbit yang lingkaran luar (garis putus-putus). Lintasan (garis solid) dimulai dari titik waktu nol hingga tf= 3,3155 satuan waktu. Vektor-vektor gaya digambarkan dalam bentuk tanda panah - tanda panah. Bagian inti dari penyelesaian BVP ini adalah penyelesain persamaan diferensial nonlinear termasuk dalam hal ini penyelesaian optimisasi model nonlinear. Pada cara 1 metode penyelesaian persamaan nonlinear untuk keperluan optimisasi adalah metode least squares. Dalam MATLAB diwakili fungsi fsolve yang sudah merupakan suatu program built-in. Persoalan kendali manuver ini adalah persoalan optimisasi yaitu bagaimana dengan waktu tempuh minimum, bisa menghasilkan orbit ketinggian semaksimal mungkin. Dinamika sistem ditentukan oleh grafitasi (bumi/planet) dan gaya dorong roket pesawat. Sistem dinamis direpresentasikan oleh persamaan (1), (2) dan (4). Harga awal adalah orbit awal r(0) dan waktu mulai
pengurangan bahan bakar yaitu sebesar m satuan bobot/waktu. Hal ini akan mempengaruhi percepatan df
pesawat karena percepatannya yaitu a
T .
1 | m | t Sehingga dengan berkurangnya bahan bakar maka percepatan akan naik dan kecepatan pesawat juga akan naik. Demikian pula bila bobot awal berubah naik atau turun, juga akan mempengaruhi kecepatan pesawat sehingga akan berpengaruh terhadap jarak tempuh. Dari tabel 1 terlihat bahwa ditinjau dari maksimalisasi jarak ternyata hasilnya sama antara cara 1 dan 2, namun lain halnya bila dilihat dari waktu komputasi. Dari tabel tersebut terlihat bahwa waktu eksekusi cara 2 jauh lebih baik dibanding cara 1. Terlihat bahwa cara 1 mempunyai kompleksitas waktu
O n1,4854
Sedangkan kompleksitas cara 2 1,2390
lebih kecil (cepat) yaitu O n . Hasil pengukuran kompleksitas waktu hanya melibatkan variasi jumlah diskretisasi pada cara 2. Karena cara 1 adalah metode penyelesaian newton single shooting yang tidak melibatkan diskretisasi E-80
Prosiding SENTIA 2009 – Politeknik Negeri Malang
maka variasi jumlah data dilakukan dengan menambah titik-titik integrasi. Dalam melakukan penambahan titik integrasi waktu dipilih secara bertahap karena pada cara 1 mudah sekali mengakibatkan divergen dan hasil yang diinginkan tidak tercapai. Untuk mengetahui kompleksitas waktu yang lebih akurat perlu melibatkan variabel lain yang berpengaruh terhadap waktu komputasi misalnya jumlah data masukan. Agar jumlah data masukan bisa dipertimbangkan dalam perngukuran kompleksitas waktu, maka harus dibuat agar metode yang akan diuji diberikan persoalan dengan sebanyak mungkin data masukan, misalnya jumlah variabel keadaan yang cukup besar. Hal tersebut tidak dilakukan dalam penelitian ini karena penyelesaian dibatasi pada kasus tersebut yang hanya melibatkan 7 variabel keadaan, oleh karena itu hanya mungkin melibatkan jumlah diskretisasi saja. Dapat dirangkum dari hasil penelitian bahwa kendali optimal manuver pesawat dapat diselesaikan melalui perumusan BVP dengan persamaan Hamiltonian menghasilkan solusi maksimal seperti yang diharapkan. Juga terbukti bahwa wavelet mampu mempercepat komputasi juga terbukti.
DAFTAR PUSTAKA Anonim, 2008, “An Intoduction to Computational Complexity”, http://users.forthnet.gr/ath/kimon /CC tanggal akses 16 Juli 2008 Bonnard, B. and Caillau, J.B., 2006, “Introduction to Nonlinear Optimal Control - Advanced Topics in Control Systems Theory”, Lecture Notes Control & Inform. Sci. 328, 1, 60, SpringerVerlag, London. Becerra, V.M., 2008, “Optimal Control” , Scholarpedia, 3(1) , 5354; http: // www.Scholarpedia.com, tanggal akses 6 Februari 2008 Chaplais, F., and Petit, N., 2008, “Inversion in Indirect Optimal Control of Multivariable Systems”, Proc. ESAIM COCV,14, 294, 317 Diehl, M., Bock, G.H., and Schlöder, J.P., 2005, “Real-Time Iterations for Nonlinear Optimal Feedback Control”, Proc. 44th IEEE Conf. Decision & Control. Kwong, M.K., 2006, “The Shooting Method and Multiple Solutions of Two/ Multi-Point BVPs of Second-Order ODE”, Electronic Journal of Qualitative Theory of Differential Equations, No. 6, 1-14; http://www.math.u-zeged.hu/ ejqtde diakses 30 Mei 2007. Ogata, K., 1996, Modern Control Engineering, 2nd ed., Prentice Hall Inc Park, C. and Scheeres, D.J., 2003, “Solutions of the Optimal Feedback Control Problem Using Hamiltonian Dynamics and Generating Functions”, Proc 42nd IEEE Decision & Control, 2, 1222, 1227. Perkowitz, M., 1999, “Time Complexity”, http://www.8.org/w8-papers/2b-customizing /towards /node8.html tanggal akses 16 Juli 2008 Wikipedia, 2008, “Nonlinear System”, wikipedia, http://www.wikipedia.com, tanggal akses 6 Februari 2008
5. Kesimpulan dan Saran 5.1 Kesimpulan Penyelesain masalah kendali nonlinear manuver pesawat ruang angkasa dengan lintas orbit sirkular, yaitu untuk mendapatkan ketinggian orbit maksimal dalam suatu rentang waktu tertentu dapat diperoleh melalui melalui persamaan Hamiltonian untuk membawa kepada persoalan perumusan boundary value problems (BVP) Kasus BVP maksimalisasi jarak tersebut bisa diselesaikan dengan cara collocation mampu menghasilkan nilai optimal yang diharapkan yaitu. Metode collocation juga mampu mempersingkat waktu komputasi. Pada cara 1 yang semula mempunyai kompleksitas waktu diturunkan menjadi menjadi O
O n1,4854 dapat
n1,2617 oleh cara 2.
5.2 Saran Hasil kompleksitas waktu pada penelitian baru mempertimbangkan masukan data berupa jumlah diskretisasi saja. Penelitian lanjutan perlu mempertimbangkan masukan varibel lain yang berpengaruh untuk mengetahui kompleksitas waktu secara lebih tepat.
E-81