Effendi Syahril
Agah D. Garnadi
Kuliah Pengantar Kontrol Optimum dan
Metode Numeriknya dalam Scilab
Effendi Syahril
Agah D. Garnadi
e-version : https://dx.doi.org/10.17605/OSF.IO/KH4U2
Versi : -0.1
Contents
1 Pendahuluan 1
1.1 Masalah Optimisasi Dinamis . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 State Sistem Dinamis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Peubah Kontrol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 Reachability, Controllability dan Observability . . . . . . . . . . . . . . . . . 3
1.5 Fungsional Objektif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.6 Kalkulus Variasi dan Kontrol Optimum . . . . . . . . . . . . . . . . . . . . . 4
2 Kalkulus Variasi 5
2.1 Pendahuluan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2 Fungsional Dan Variasi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3 Syarat Perlu Untuk Optimum : Persamaan Euler . . . . . . . . . . . . . . . 6
2.4 Persamaan Euler Yang Lebih Umum . . . . . . . . . . . . . . . . . . . . . . 9
2.4.1 Kasus Peubah banyak . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.4.2 Kasus Fungsi f Memuat Turunan ke-n . . . . . . . . . . . . . . . . . 10
2.5 Kasus Khusus Persamaan Euler . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.5.1 Fungsi f Tidak Memuat x . . . . . . . . . . . . . . . . . . . . . . . . 11
2.5.2 Fungsi f Tidak Memuat t . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5.3 Fungsi f Tidak Memuat ẋ . . . . . . . . . . . . . . . . . . . . . . . . 13
2.6 Masalah Variasi Dengan Kendala . . . . . . . . . . . . . . . . . . . . . . . . 13
2.6.1 Kendala Titik Dan Persamaan Diferensial . . . . . . . . . . . . . . . 13
2.6.2 Kendala Isoperimetris . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.7 Syarat Batas Dalam Masalah Variasi . . . . . . . . . . . . . . . . . . . . . . 16
i
2.7.1 Dua Titik Ujung Tetap Dan Syarat Batas Natural . . . . . . . . . . . 16
2.7.2 Titik Ujung Bebas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.8 Syarat Cukup / Sufficiency Conditions . . . . . . . . . . . . . . . . . . . . . 21
2.8.1 Variasi Fungsional . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.8.2 Syarat Legendre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.8.3 Syarat Jacobi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.8.4 Syarat Weierstrass untuk Ekstremal Kuat . . . . . . . . . . . . . . . 22
2.8.5 Syarat Legendre-Clebsch . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.8.6 Syarat Cukup : Kasus khusus . . . . . . . . . . . . . . . . . . . . . . 23
ii
Chapter 1
Pendahuluan
1
1.2 State Sistem Dinamis
State atau keadaan sistem dinamis adalah koleksi dari bilangan x(t) ≡ (x1 (t), x2 (t), ..., xn (t))
yang apabila diberikan suatu nilai pada waktu t = t0 , maka nilainya akan dapat ditentukan
pada t ≥ t0 melalui pilihan vektor kontrol u(t) = (u1 (t), u2 (t), ..., xr (t)). Bilangan xi (t) untuk
(1 ≤ i ≤ n, t0 ≤ t ≤ T ) disebut sebagai peubah keadaan atau peubah state, dan ruang
keadaan adalah ruang dimensi n yang memuat koordinat xi (t) (1 ≤ i ≤ n). Dengan cara
yang sama, bilangan ui (t) untuk (1 ≤ i ≤ r t0 ≤ t ≤ T ) disebut sebagai peubah kontrol
atau peubah kendali. Misalnya, x(t) dapat melambangkan peubah ekonomi, seperti GNP,
konsumsi, investasi dan kondisi perekonomian lainnya, serta u(t) mewakili peubah kontrol,
seperti kebijakan suku bunga, pengeluaran pemerintah, suplai uang dan instrumen ekonomi
lainnya yang dapat dikendalikan.
Keadaan atau state suatu sistem pada waktu t, yang disebut dengan sistem dinamis,
direpresentasikan oleh sistem persamaan diferensial dalam hal masalah kontinyu, atau sistem
persamaan beda untuk masalah diskret. Misalnya,
atau
(1.2) x(k + 1) = f [x(k), u(k), k].
Sistem dinamis dapat berbentuk linier dan dapat pula berbentuk tak-linier, juga dapat
berbentuk sistem ’autonomous’ (sistem tidak memuat t atau k) atau berbentuk sistem ’non-
autonomous’, dapat pula memiliki koefisien konstanta atau koefisien peubah pada persamaan
diferensial atau persamaan beda. Sistem juga dapat berbentuk deterministik dan juga dapat
berbentuk stokastik. Dalam kuliah ini hanya akan dibahas sistem deterministik.
bahwa peubah kontrol harus dipilih dari kumpulan kontrol-kontrol yang admissible, yang
dilambangkan dengan Ω(u(t)), artinya, kontrol u(t) ∈ Ω(u(t)). Untuk ilustrasi di atas,
r
X
Ω(u(t)) ≡ {ui (t) : 0 ≤ ui (t) ≤ 1, 0 ≤ ui (t) ≤ 1}
1
Apabila u(t) hanya fungsi dari t, maka disebut kontrol ’open-loop,’ misalnya mengatur
mesin cuci untuk berfungsi dalam jangka waktu tertentu. Apabila kontrol u(t) juga meru-
pakan fungsi dari peubah state x(t), yaitu u(t) = u[x(t), t], maka disebut kontrol ’closed-
2
loop,’ misalnya pengeluaran pemerintah, u(t), merupakan fungsi dari GNP/PDB, x(t), dan
waktu pemilu, t.
maka fungsional J merupakan nilai kini (present value) dari profit π atau utilitas konsumsi
yang terdiskon pada tingkat diskon r.
Secara umum, terdapat 3 alternatif untuk menyajikan formulasi fungsional objektif ( 1.3),
yaitu :
dengan f0 dan S adalah fungsi yang kontinu dan dapat diturunkan. Fungsi S[x(T ), T ]
dikenal dengan fungsi ’scrap value’ pada waktu terminal T.
3
2. (Formulasi Lagrange ) Formulasi Lagrange merupakan bentuk khusus dari ( 1.4), den-
gan S[x(T ), T ] = 0, yaitu
Z T
(1.5) J[u(t)] = f (x(t), u(t), t)dt
t0
3. (Formulasi Mayer) Formulasi Mayer ini juga merupakan bentuk khusus dari ( 1.4),
dengan f (x(t), u(t), t) = 0, yaitu
Dengan pendefinisian kembali peubah-peubahnya, maka ke-3 alternatif di atas ekivalen. Mis-
alnya, formulasi Bolza dapat dikonversikan menjadi formulasi Mayer dengan mendefinisikan
peubah tambahan xn+1 (t) sebagai
Z t
xn+1 (t) = f (x, u, τ )dτ, xn+1 (t0 ) = 0
t0
dengan fungsi kendala atau tanpa kendala; fungsi kendala dapat berupa persamaan diferen-
sial atau persamaan aljabar. Misalnya, ẋ = f (x(t), ẋ(t), t).
Dalam bentuk baku, kontrol optimum mempunyai tujuan untuk memaksimumkan atau
meminimumkan fungsional objektif
Z T
J[u(t)] = f0 (x(t), u(t), t)dt
0
dengan kendala persamaan diferensial ẋ = f (x(t), u(t), t). Apabila ẋ(t) = u(t), maka masalah
kalkulus variasi sama saja dengan masalah kontrol optimum. Kenyataannya, masalah kontrol
optimum dapat diselesaikan dengan teknik kalkulus variasi (persamaan Euler) dan sebaliknya
prinsip Maksimum Pontryagin yang merupakan syarat perlu untuk adanya kontrol optimum
dapat diperlakukan sebagai pengembangan dari kalkulus variasi.
4
Chapter 2
Kalkulus Variasi
2.1 Pendahuluan
Kalkulus variasi merupakan cabang ilmu matematika yang berkaitan dengan pengoptimu-
man fungsional. Cabang ilmu ini telah mulai berkembang sejak ditemukannya masalah
isoperimetris untuk pertamakalinya sekitar tahun 850 B.C. Akan tetapi, progres yang sig-
nifikan dalam cabang ilmu ini baru terjadi sekitar penghujung abad 17 melalui penemuan
masalah brachitoschrone, yang solusinya diberikan oleh Newton, de l’Hospital, John dan
Jacob Bernoulli pada tahun 1696.
Dalam bidang ekonomi, penggunaan kalkulus variasi sudah ada sejak tahun 1920an,
melalui karya Evans (1924 dan 1930), Ramsey (1928) dan Hotelling (1931). Evans dan Roos
berupaya untuk menemukan harga optimum untuk keseluruhan periode perencanaan, seperti
memaksimumkan fungsional keuntungan dari monopolist. Sedangkan Ramsey ingin men-
emukan program penghematan yang meminimumkan perbedaan tingkat utilitas. Masalah
penghematan optimum ini, yang memuat sumber inspirasi dalam teori pertumbuhan ekonomi
yang optimum, diselesaikan dengan kalkulus variasi. Sementara itu Hotelling menggunakan
kalkulus variasi dalam masalah penambangan optimum dari sumber daya alam.
5
suatu fungsional secara lengkap ditentukan oleh pilihan fungsi tertentu dari sekumpulan
fungsi yang admissible. Increment atau kenaikan dari argumen fungsi adalah dt = t − t∗ ,
sementara increment dari argumen fungsional, yang kita sebut dengan variasi dan dengan
notasi δx merupakan selisih δx = x(t)−x(t∗ ). Dalam mempelajari fungsi, kita tertarik untuk
menemukan titik yang memberikan ekstremum untuk fungsi, sedangkan dalam pembahasan
fungsional kita tertarik untuk menemukan fungsi yang memberikan ekstremum untuk fung-
sional.
Variasi dari fungsional J(x) adalah 4J(x) = J(x+δx)−J(x). Dengan mengambil δx = h
sebarang fungsi, maka dengan menggunakan perluasan deret Taylor, maka diperoleh
Z T
J(x + δx) = f (x + h, ẋ + ḣ, t)dt
0
Z T Z T
= f (x, h, t)dt + (hfx + ḣfẋ )dt
0 0
Z T
+ (h2 fxx + 2hḣfxẋ + fẋẋ ḣ2 )dt + Ok h k2
0
Z T Z T
= J(x) + f (x, h, t)dt + (h2 fxx + 2hḣfxẋ + fẋẋ ḣ2 )dt + Ok h k2 ,
0 0
sehingga diperoleh
4J(h) = J(x + h) − J(x)
(2.1) = φ(h) + Q(h) + Ok h k2
= δJ(h) + δ 2 J(h) + Ok h k2
dengan φ(h) merupakan suku-suku linear dalam deret Taylor yang kita sebut dengan variasi
pertama δJ(h) dan Q(h) adalah suku-suku kuadrat yang mengindikasikan variasi kedua
δ 2 J(h) dan Ok h k2 → 0 untuk h → 0.
Definisi 2.1 Fungsional J(x) dikatakan mencapai maksimum (minimum) lokal atau re-
latif sepanjang x∗ (t) apabila 4J(x∗ ) ≥ 0 (≤ 0), yaitu J(x∗ ) ≥ J(x) (J(x∗ ) ≤ J(x))
untuk semua fungsi-fungsi yang cukup dekat dengan x∗ . Fungsional J(x) dikatakan men-
capai maksimum (minimum) global sepanjang x∗ (t) apabila 4J(x∗ ) ≥ 0 (≤ 0), yaitu
J(x∗ ) ≥ J(x) (J(x∗ ) ≤ J(x)) untuk semua fungsi x(t) 6= x∗ (t).
6
dengan titik ujung A(0, x(0)) dan B(T, x(T )) adalah tetap, f (x, ẋ, t), x(t) ∈ C 2 [0, T ] dan
ẋ ≡ dx/dt dan x adalah fungsi bernilai skalar. Permasalahan adalah memilih fungsi x∗ (t)
diantara fungsi-fungsi admissible, yaitu semua fungsi x(t) ∈ C 2 [0, T ] yang memiliki titik
awal di A dan titik akhir di B yang memberikan nilai maksimum atau nilai minimum untuk
fungsional J(x).
Syarat perlu untuk adanya ekstremum adalah δJ(x) = 0. Misalkan
Z T
(2.3) δJ(x) = g(t)h(t)dt
0
dengan g(t) ∈ C[0, T ] dan h(t) sebarang fungsi yang memenuhi h(0) = h(T ) = 0.
Lema 2.1 ( Lema Dasar ) Misal g(t) ∈ C[0, T ] dan S himpunan semua fungsi h(t) kontinu
dan dapat diturunkan di [0, T ] dan h(0) = h(T ) = 0 dengan T adalah tetap. Jika
Z T
(2.4) g(t)h(t)dt = 0
0
Bukti : Misalkan g(t) 6= 0, yaitu g(t) > 0, pada [0, T ]. Dengan sifat kekontinuan, maka
g(t) 6= 0 untuk suatu selang [a, b] ∈ [0, T ], dengan 0 < a < b < T. Misal h(t) ≡ (t − a)(b − t)
untuk t R ∈ [a, b] dan h(t) = 0, ∀t 3 [a, b]. Jelas bahwa h(t) memenuhi persyaratan lema.
Tetapi, 0T g(t)(t − a)(b − t)dt 6= 0. Suatu kontradiksi. Dengan demikian, haruslah g(t) = 0.
RT
Teorema 2.1 Misalkan J(x) = 0 f (x, ẋ, t)dt didefinisikan pada C 0 [0, T ] dan memenuhi
syarat batas x(0) = x0 , x(T ) = xT . Maka syarat perlu bagi J(x) untuk memiliki ekstremum
adalah fungsi x(t) memenuhi persamaan Euler:
d
(2.5) fx − fẋ = 0,
dt
atau dituliskan dalam bentuk penuh, yang disebut persamaan Euler-Lagrange :
7
dengan fx ≡ ∂f (x, ẋ, t)/∂x, fẋ ≡ ∂f (x, ẋ, t)/∂ ẋ dan h(t) adalah fungsi ’displacement’ meru-
pakan fungsi kontinu sebarang dan bersifat h(0) = 0 = h(T ). Dengan melakukan integrasi
bagian terhadap suku kedua, diperoleh
Z T Z T d
ḣfẋ = hfẋ |T0 − ( fẋ )hdt
0 0 dt
Z T d
= 0− ( fẋ )hdt
0 dt
karena h(0) = 0 = h(T ). Sehingga diperoleh
Z T d
(2.8) δJ = (fx − fẋ )hdt = 0,
0 dt
yang pada gilirannya dengan Lema Dasar memberikan persamaan Euler :
d
fx − fẋ = 0.
dt
R1
Contoh 2.1 Tentukan ekstremum dari 0 (aẋ2 + bt)dt, diberikan x(0) = 0, x(1) = 2, a 6=
0.
Solusi :
Fungsi integran adalah dalam bentuk f (ẋ) = aẋ2 +bt. Persamaan Euler memberikan d/dt(2aẋ) =
0, atau ẍ = 0, karena a 6= 0. Lakukan integrasi, maka diperoleh ẋ(t) = c dan x(t) = ct + d,
dengan c dan d merupakan konstanta yang akan ditentukan nilanya dari syarat batas x(0) =
0 dan x(1) = 2. Akhirnya diperoleh solusi yang merupakan garis lurus, yaitu x(t) = 2t.
R 10
Contoh 2.2 Tentukan ekstremum dari 0 f (x, ẋ, t)dt, dengan fungsional objektif didefin-
isikan oleh f (x, ẋ, t) ≡ aẋ2 + bx, dan persyaratan pada kedua titik ujung diberikan oleh
x(0) = 1 dan x(10) = 5.
Solusi :
Fungsi f (x, ẋ, t) = aẋ2 + bx. Maka persamaan Euler fx − dtd fẋ = 0 akan memberikan b −
d
dt
2aẋ = 0. Yang terakhir ini akan memberikan ẍ = b/(2a). Dengan melakukan integrasi dua
kali, maka akan diperoleh solusi umum
b 2
x(t) = t + k 1 t + k2 .
4a
Dengan menggunakan x(0) = 1 dan x(10) = 5, diperoleh k1 = 25b/a, k2 = 1, sehingga
diperoleh solusi khusus
b
x(t) = t2 + 25b/at + 1.
4a
8
Contoh 2.3 Seorang produsen merencanakan produksi dalam rentang waktu [0, 1]. Tingkat
output pada waktu t = 0 adalah nol dan tingkat output pada waktu terminal t = 1 adalah
sebesar 10 satuan produksi. Tentukan tingkat output optimum x(t) apabila produsen di-
hadapkan pada harga pasar stabil, p = 4 satuan moneter dan fungsi ongkos total ẋ2 + x2
yang mengalami diskon pada tingkat suku bunga pasar r = 0, 2.
Solusi :
Fungsional objektif yang akan dimaksimumkan oleh investor adalah
Z 1
J(x) = e−0,2t [4x − (ẋ2 + x2 )]dt, x(0) = 0, x(1) = 10.
0
λ2 − 0, 2λ − 1 = 0,
dan 2 merupakan solusi dari persamaan diferensial tak homogen. Konstanta k1 dan
k2 adalah konstanta integrasi yang dapat ditentukan dari syarat batas x(0) = 0 dan
x(1) = 10. Akhirnya diperoleh solusi khusus, yaitu
(x˙1 , x˙2 , ..., x˙n ). Maka, dengan melakukan integrasi bagian terhadap δJ dan dengan menggu-
nakan hi (0) = 0 = hi (T ), ∀i diperoleh :
Z T n
X n
X
δJ = ( hi fxi + ḣi fx˙i )dt = 0
0 1 1
Z T d
= (fxi − fx˙ )hi dt, ∀hi (t).
0 dt i
9
Dengan menggunakan Lema Dasar, akan menghasilkan persamaan Euler
d
(2.9) fxi − fx˙ = 0, ∀i,
dt i
atau dalam bentuk penuh, persamaan Euler-Lagrange
(2.10) fxi − fx˙i t − fxi x˙i ẋi − fx˙i x˙i ẍi = 0, (1 ≤ i ≤ n).
R 10
Contoh 2.4 Tentukan ekstremum untuk 0 (x˙1 2 + x˙2 2 + et )dt dengan syarat batas x1 (0) =
1, x1 (10) = 11 dan x2 (0) = 2, x2 (10) = 6.
Solusi : Fungsi integran dalam bentuk f (x1 , x2 , x˙1 , x˙2 , t) = x˙1 2 + x˙2 2 + et . Persamaan Euler
memberikan
d d
fxi − fẋi = 0 − 2ẋi (i = 1, 2),
dt dt
yaitu ẍi = 0, ẋi = ki , dengan solusinya adalah persamaan linier xi (t) = ki (t)+ci , (i = 1, 2).
Dengan menggunakan syarat batas, maka diperoleh solusi khusus
x1 (t) = t + 1, x2 (t) = 0, 4t + 2.
10
Integrasi bagian terhadap suku ketiga integran, dan mengulangi integrasi bagian sampai
diperoleh suku yang memuat perkalian dengan fungsi h, diperoleh :
Z T Z T d
fẍ ḧdt = fẍ ḣ|T0 − ḣ fẍ dt
0 0 dt
d Z T
d2
= 0 − fẍ h|T0 + h 2 fẍ dt
dt 0 dt
Z T 2
d
= 0−0+ h 2 fẍ dt.
0 dt
Penggunaan integrasi bagian secara berulang terhadap suku-suku berikutnya dan dengan
menggunakan syarat h(0) = 0 = ḣ(0) = ḧ(0) = ... = hn (0) dan h(T ) = 0 = ḣ(T ) = ḧ(T ) =
... = hn (T ), menghasilkan
Z T d d2 dn
δJ = (fx − fẋ + 2 fẍ + ... + (−1)n n fxn )hdt = 0.
0 dt dt dt
Solusi : Fungsi objektif adalah f (ẍ, ẋ, x, t) = ẍ2 + ẋ + at2 . Persamaan Euler-Poisson
memberikan
d d2 d d2
fx − fẋ + 2 fẍ = 0 − 1 + 2 2ẍ = 0,
dt dt dt dt
(4)
yang memberikan x = 0. Dengan melakukan integrasi secara berulang, maka diperoleh
solusi umum
k1 t3 k2 t2
x(t) = + + k3 t + k4 ,
6 2
dengan konstanta integrasi k1 , k2 , k3 dan k4 ditentukan dari syarat batas yang diberikan.
Maka akan diperoleh solusi atau ekstremal x(t) = t.
11
dengan f tidak memuat x secara ekslpisit. Persamaan Euler akan berbentuk d/dtfẋ = 0.
Ini berarti bahwa fẋ = k, dengan k adalah konstanta. Ini merupakan persamaan diferensial
ordo-1, dengan k merupakan konstanta sebarang. Solusinya diperoleh dengan melakukan
integrasi ẋ.
Jika f bergantung hanya pada ẋ, maka persamaan Euler menjadi
d
fẋ = fẋẋ ẍ = 0.
dt
Hal ini terjadi hanya jika ẍ = 0, yang memberikan ẋ = c, dan x(t) = c1 t + c2 , atau terjadi
jika fẋẋ = 0. Jika fẋẋ memiliki akar nyata, dalam hal ini ẋ(t) = c, maka solusinya adalah
x(t) = c3 t + c4 .
Terlihat bahwa manapun yang berlaku, solusi dari persamaan Euler berbentuk persamaan
garis lurus x(t) = at + b.
R1
Contoh 2.6 Tentukan ekstremum untuk fungsional objektif J(x) = 0 (tẋ + ẋ2 )dt dengan
syarat batas x(0) = 1, x(1) = 1.
Solusi : Karena fungsi f (x, ẋ, t) = tẋ + ẋ2 tidak memuat x, maka persamaan Euler
menghasilkan d/dt(fẋ ) = t + 2ẋ yang memberikan t + 2ẋ = konstanta, atau ẋ = −1/2t + k1 .
Dengan melakukan integrasi secara langsung, diperoleh solusi umum :
1
x(t) = − t2 + k1 t + k2 .
4
12
2.5.3 Fungsi f Tidak Memuat ẋ
Fungsional objektif dalam bentuk
Z T
J(x) = f (x, t)dt.
0
Persamaan Euler memberikan fx = 0. Ini bukan persamaan diferensial, tetapi secara umum
merupakan persamaan aljabar tak linier. Umumnya, syarat batas tidak dapat dipenuhi,
karena tidak ada konstanta integrasi. Dengan kata lain, solusi ada hanya jika kurva x = x(t)
melewati titik batas.
terhadap kendala
(2.15) gi (x, ẋ, t) = 0, (1 ≤ i ≤ r < n)
dengan x merupakan vektor dimensi-n dan ẋ merupakan turunannya terhadap waktu t, serta
f (x, ẋ, t) adalah fungsi bernilai skalar. Persamaan gi (x, ẋ, t) = 0 disebut dengan kendala
persamaan diferensial. Apabila gi (x, ẋ, t) tidak memuat ẋ maka gi (x, t) = 0 disebut kendala
titik.
Definisikan fungsi Lagrange L sebagai berikut :
13
dengan x(0) = x0 dan x(T ) = xT . Definisikan fungsional objektif yang diperluas, Ja sebagai
berikut Z T
(2.18) Ja ≡ L(x, ẋ, p, t)dt.
0
Variasi δJa adalah
Z T
δJa = (Lx δx + Lẋ δ ẋ + Lp δp)dt
0
Z T d
(2.19) = [(Lx − Lẋ )δx + Lp δp]dt.
0 dt
Syarat perlu untuk adanya ekstremum adalah δJa = 0 dan dipenuhinya kendala yang ada.
In berarti bahwa persamaan Euler berikut harus dipenuhi, yaitu :
d
(2.20) Lx − Lẋ = 0,
dt
d
(2.21) Lp − Lṗ = 0,
dt
dengan Lx ≡ fx + gx p, dan Lẋ ≡ fẋ + gẋ p, untuk kendala diferensial, dan Lẋ ≡ fẋ untuk
kendala titik. Karena Lṗ = 0 maka diperoleh Lp = g = 0. Solusi, atau ekstremal akan
diperoleh dengan menyelesaikan persamaan diferensial yang diberikan oleh persamaan Euler.
i ≤ r < n). Dengan menurunkan yi (t) terhadap waktu t maka diperoleh ẏi (t) = gi (x, ẋ, t)
atau gi − ẏi = 0. Dengan cara ini, kendala isoperimetric sudah ditransfer menjadi kendala
14
persamaan diferensial. Jadi, untuk menyelesaikannya, digunakan metode pengali Lagrange.
Fungsional yang diperluas diberikan oleh
Z T
Ja ≡ F (x, ẋ, t)dt
0
Z T r
X
(2.25) = [f (x, ẋ, t) + pi (t)(gi − ẏi )]dt
0 i=1
RT
Contoh 2.7 Maksimumkan J(x) = 0 ẋ2 dt,
Maka ẏ(t) = 1 + x(t), dan fungsi Lagrange diberikan oleh L = ẋ2 + p(1 + x − ẏ). Sehingga
persamaan Euler memberikan 2ẍ = p, dengan solusinya adalah
p
x(t) = t2 + at + b.
4
Syarat batas memberikan
x(0) = x0 = b
p
x(T ) = xT = T 2 + aT + b
4
Z T Z T p
l = (1 + x)dt = (1 + t2 + at + b)dt
0 0 4
Persamaan yang terakhir ini memberikan
12 a
p= 3
(l − T 2 − (1 + b)T ).
T 2
Persamaan di atas akan memberikan kontanta a, b dan p.
15
2.7 Syarat Batas Dalam Masalah Variasi
Jika titik awal A(0, x0 ) dan titik terminal B(T, xT ) merupakan dua titik tetap, maka h(0) =
0 = h(T ), atau X(0) = x0 , x(T ) = xT dan persamaan ( 2.30) dipenuhi. Permasalahan
seperti ini dikenal dengan sebutan masalah dua titik ujung tetap.
Apabila titik ujung x(0) dan x(T ) tidak diberikan, maka fungsi h(t) tidak lagi memenuhi
h(0) = 0 = h(T ). Sehingga untuk dapat terpenuhinya persyaratan ( 2.30) haruslah dipenuhi
Persyaratan ini dikenal dengan sebutan syarat batas natural. Persamaan ( 2.31) akan menen-
tukan konstanta integrasi.
16
2.7.2 Titik Ujung Bebas
Perhatikan masalah menentukan ekstremum untuk fungsional objektif
Z T
(2.32) J(x) = f (x, ẋ, t)dt
t0
dengan t0 , T, x(t0 ) dan x(T ) semuanya belum diketahui. Untuk memudahkan pemba-
hasan, misalkan t0 = 0 dan x(0) = x0 adalah tetap, sedangkan T dan x(T ) adalah bebas.
Variasi pertama adalah
Z T
δJ = (fx h + fẋ ḣ)dt + f (.)|T δT
0
Z T d
(2.33) = (fx − fẋ )hdt + hfẋ |T + f (.)|T δT
0 dt
Karena variasi pada titik ujung tidak mempengaruhi variasi dalam selang terbuka (0, T ),
maka syarat perlu untuk δJ = 0 adalah dipenuhinya persamaan Euler, yaitu
d
(2.34) fx − fẋ = 0.
dt
Akibatnya, persamaan ( 2.33) menjadi δJ = fẋ h|T + f (.)|T δT = 0. Dengan menggunakan
informasi h(T ) = δxT − ẋ(T )δT, menghasilkan Syarat Batas atau Syarat Transversalitas :
Syarat batas ini akan menentukan nilai T dan xT . Terdapat 2 kasus yang perlu diper-
hatikan. Kasus pertama apabila variasi δxT dan δT saling bebas. Akibatnya, koefisien dari
δxT dan δT dalam persamaan ( 2.35) masing-masing sama dengan nol, yaitu
Kasus kedua apabila titik ujung B(T, xT ) bergerak sepanjang kurva x(t) = g(t). Untuk
kasus ini, maka δxT = ġ(T )δT. Dengan substitusi ini ke dalam persamaan ( 2.35) meng-
hasilkan
(2.38) (f (.) + [ġ(T ) − ẋ(T )]fẋ )t=T δT = 0.
Analisis yang sama berlaku pula untuk kasus titik awal bebas, yaitu apabila t0 dan x(t0 )
bebas. Secara umum, Syarat Transversalitas atau Syarat Batas ( 2.35) menjadi
17
Dengan cara yang sama seperti analisis untuk satu titik ujung tetap, maka untuk kasus
variasi δxT dan δT saling bebas, diperoleh
dan untuk kasus titik ujung bergerak sepanjang kurva g, akan diperoleh
Syarat Transversalitas di atas mencakup semua kasus yang ada, sebagai berikut :
1. Apabila kedua titik ujung terletak pada garis lurus t = t0 dan t = T, maka δt0 = 0 = δT
sehingga suku pertama dalam persamaan ( 2.39) menjadi nol dan persamaan ( 2.39)
menjadi
fẋ δx(t)|t=T
t=t0 = 0.
2. Apabila titik ujung A dan B tetap, yaitu x(t0 ), x(T ) dan t0 dan T tetap, maka
δt0 = 0 = δT dan δx(0) = 0 = δx(T ). Jadi kita mempunyai masalah dua titik ujung
tetap, dan konstanta integrasi ditentukan oleh syarat batas pada titik A dan B.
3. Apabila x0 dan xT tetap, tetapi t0 dan T bebas, maka δx(0) = 0 = δx(T ), tetapi
δt0 6= 0 dan δT 6= 0. Persamaan ( 2.39) memberikan
4. Titik ujung bebas, yaitu x0 , xT , t0 dan T semuanya bebas, maka Syarat Transver-
salitas ( 2.39) harus dipenuhi. Dalam hal ini,
dan
fẋ |t=T
t=t0 = 0.
5. Titik ujung bebas, yaitu x(t0 ), x(T ), t0 dan T semuanya bebas, tetapi x(t0 ) dan x(T )
harus bergerak sepanjang kurva x(t0 ) = g1 (t0 ) dan x(T ) = g2 (T ). Maka konstanta
integrasi akan ditentukan oleh
dan
f + (ġ2 − ẋ)fẋ ]|t=T = 0.
7. Kadangkala dalam masalah ekonomi, syarat yang diberikan pada titik ujung tidak se-
lalu dalam bentuk suatu nilai, tapi dibatasi oleh suatu nilai. Misalnya, jumlah produksi
x pada waktu terminal haruslah lebih besar dari suatu nilai.
18
Perhatikan masalah memaksimumkan fungsional objektif
Z T
(2.42) J(x) = f (x, ẋ, t)dt, x(t0 ) = x0 ,
t0
Definisikan
Untuk kasus waktu awal t0 dan waktu terminal T bebas, maka H(t0 ) = 0 = H(T ).
Sedangkan untuk kasus x(t0 ) dan x(T ) belum ditentukan maka p(t0 ) = 0 = p(T ).
19
Solusi : Persamaan Euler memberikan ẍ = 2, dengan solusinya adalah
x(t) = t2 + k1 t + k2 .
Konstanta k1 dan k2 akan ditentukan dari syarat
fẋ = 2ẋ + x + 2 = 0, untuk t = 0, dan t = 2.
Syarat di atas memberikan k1 = −6, k2 = 10. Sehingga diperoleh solusi
x(t) = t2 − 6t + 10.
20
2.8 Syarat Cukup / Sufficiency Conditions
2 1Z T
δ J(h) = (fxx h2 + 2fxẋ hḣ + fẋẋ ḣ2 )dt
2 0
Z T
(2.47) ≡ (P ḣ2 + Qh2 )dt
0
dengan P ≡ P (t) ≡ 21 fẋẋ ; Q ≡ Q(t) = 12 (fxx − dtd fxẋ ) dan dengan melakukan integrasi
bagian maka diperoleh 0T 2fxẋ hḣdt = − 0T ( dtd fxẋ )h2 dt. Untuk masalah meminimumkan,
R R
δ 2 J(h) ≥ 0, dan untuk masalah memaksimumkan, δ 2 J(h) ≤ 0. Untuk fokusnya, kita lihat
masalah meminimumkan, dan untuk masalah memaksimumkan, tinggal mengganti tanda
yang berlawanan. Akan dilihat kondisi-kondisi yang membuat δ 2 J(h) ≥ 0.
Akan ditunjukkan bahwa δ 2 J(h) ≥ 0, jika dan hanya jika (P ḣ2 + Qh2 ) ≥ 0 untuk semua
h(t) yang memenuhi h(0) = 0 = h(T ). Fungsi h(t) yang memenuhi sifat ini bernilai kecil jika
ḣ(t), ∀t ∈ (0, T ) juga bernilai kecil, tapi sebaliknya tidak berlaku. Apabila fungsi h(t) yang
bersifat se[erti di atas dapat ditemukan demikian rupa sehingga h(t) kecil tetapi ḣ(t) besar
untuk tin(0, T ), maka P ḣ2 mendominasi Qh2 dalam penentuan tanda dari δ 2 J(h), seperti
yang ditunjukkan oleh lema dan teorema berikut.
21
RT
perlu untuk δ 2 J(h) = 0 (P ḣ2 + Qh2 )dt ≥ 0 adalah P (t) ≥ 0, ∀t ∈ (0, T ). Ini disebut Syarat
Legendre.
RT
Teorema 2.2 (Legendre). Syarat perlu bagi fungsional objektif J(x) = 0 f (x, ẋ, t)dt
dengan syarat pada titik ujung x(0) = x0 , x(T ) = xT untuk memiliki nilai minimum (
atau maksimum ) untuk semua kurva x = x(t) adalah dipenuhinya syarat Legendre P (t) ≥ 0
untuk semua t ∈ (0, T ).
Teorema Legendre ini, sayangnya masih merupakan syarat perlu. Upaya Legendre untuk
membuktikannya sebagai syarat cukup untuk optimum mengalami kegagalan.
d
(2.48) − (P v̇) + Qv = 0.
dt
Jika P > 0 (< 0) dan solusi v(t) untuk semua fungsi v(t) yang dapat diturunkan
memenuhi sifat v(0) = 0 = v(T ), maka δ 2 J > 0 (< 0) artinya nilai minimum ( atau nilai
maksimum ) telah diperoleh. Ini disebut syarat perlu Jacobi.
dengan p(t, x) adalah fungsi kemiringan/ ’slope’ dari ekstremum yang melalui titik (t, x).
Apabila Jacobi dipenuhi maka E ≤ 0 untuk masalah memaksimumkan dan E ≥ 0 untuk
masalah meminimumkan.
22
2.8.5 Syarat Legendre-Clebsch
(ẋ − p)2
(2.50) E≡ fẋẋ (t, x, q)
2!
dengan q = θẋ + (1 − θ)p, (0 < θ < 1). Supaya x(t) mencapai minimum ( atau maksimum)
adalah cukup dipenuhi syarat Legendre-Clebsch E ≥ 0 (≤ 0) yang berarti fẋẋ ≥ 0 (≤ 0),
atau dalam bentuk yang lebih umum, matriks [fẋẋ ] merupakan semi-definit positif ( atau
negatif ) dan syarat Jacobi dipenuhi untuk semua ẋ.
Teorema 2.6 (Mangasarian). Misalkan f (x, ẋ, t) merupakan fungsi yang dapat diturunkan
dua kali dan concave/cembung ( convex/cekung) dalam x dan ẋ. Maka syarat perlu dan syarat
RT
cukup untuk x? sebagai maksimum ( atau minimum ) dari fungsional J(x) = 0 f (x, ẋ, t)dt
adalah dipenuhinya persamaan Euler dan x(0) = x0 , dan x(T ) = xT .
23
Chapter 3
24
Sistem yang akan kita lihat adalah sistem yang dibentuk oleh sistem persamaan differ-
ensial :
(3.1) ẋ(t) = f (x(t), u(t), t)
dengan f = (f1 , f2 , ..., fn ), fi dan ∂fi /∂xi adalah kontinu.
Misal state dari sistem diketahui pada waktu t0 sehingga x(t0 ) = x0 , x0 ∈ Rn . Jika
dipilih kontrol u(t) = (u1 (t), u2 (t), ..., uk (t)) ∈ Rk yang terdefinisi untuk waktu t ≥ t0 , maka
diperoleh sistem x(t). Jadi, x(t) merupakan respons terhadap kontrol u(t), sehingga kadang-
kadang dituliskan sebagai xu (t). Untuk setiap fungsi kontrol u(t) dan respons xu (t) atau
disingkat x(t), dikaitkan suatu bilangan J yang didefinisikan oleh
Z T
(3.2) J[u(t)] = S[x(T ), T ] + f0 (x(t), u(t), t)dt
t0
dengan fungsi f0 adalah suatu fungsi yang diberikan dan S[x(T ), T ] merupakan fungsi ’scrap’.
Waktu akhir atau waktu terminal T tidak selalu harus tetap, dan x(T ) dapat saja memiliki
batasan tertentu.
Definisi 3.1 Misalkan U menyatakan kelas dari semua fungsi yang kontinu bagian. Masalah
kontrol optimum (MKO) adalah masalah menentukan fungsi kontrol u? (t) diantara fungsi
admissible u(t) ∈ U yang membawa sistem dari state awal x0 kepada state akhir/terminal
xT yang memenuhi kondisi akhir/terminal, melalui sistem
sehingga fungsional J mencapai nilai maksimum. Dengan kata lain, masalah kontrol opti-
mum adalah masalah memaksimumkan fungsional objektif
Z T
(3.4) max J[u(t)] = S[x(T ), T ] + f0 (x(t), u(t), t)dt
u(t)∈U t0
Teorema 3.1 Misalkan u? (t) sebagai kontrol admissible yang membawa state awal (x(t0 ), t0 )
kepada target state terminal (x(T ), T ), dengan x(T ) dan T secara umum tidak ditentukan.
Misalkan x? (t) merupakan trajektori dari sistem yang berkaitan dengan u? (t). Supaya kon-
trol u? (t) merupakan kontrol optimum adalah perlu terdapat fungsi vektor p? (t) 6= 0, dan
konstanta p0 demikian rupa sehingga
25
1. p? (t) dan x? (t) merupakan solusi dari sistem kanonik
∂H ?
(3.5) ẋ? (t) = (x (t), u? (t), p? (t), t)
∂p
∂H ?
(3.6) ṗ? (t) = − (x (t), u? (t), p? (t), t)
∂x
dengan p0 ≡ 1.
26
Dengan menggunakan syarat perlu untuk adanya ekstremum pada fungsional objektif
yang diperluas, maka
Z T d
(3.14) δJa (u) = [(Lx −
Lẋ )δx + Lu δu + Lp δp]dt
0 dt
(3.15) + [Lẋ δx + (L − Lẋ ẋ)δt]t=T = 0.
Ini memberikan
(3.17) ṗ = −Hx
Karena δu dan δp adalah sebarang dan saling bebas, maka haruslah Lu = 0 dan Lp = 0.
Dari pendefinisian fungsi L, maka
sehingga diperoleh
(3.18) Hu = 0
(3.19) ẋ = f (x, u, t) = Hp
Syarat transversalitas atau syarat batas diberikan oleh suku-suku sisanya, yaitu
Tetapi
Lẋ = Sx − p
L − Lẋ ẋ ≡ H − pẋ + Sx ẋ + St − ẋSx + ẋp
= H + St
Apabila x(t0 ) dan t0 dua-duanya belum ditentukan pula, maka syarat batas menjadi
27
1. H(x? (t), u? (t), p? (t), t) ≥ H(x(t), u(t), p(t), t) disebut dengan Prinsip Maksimum Pon-
tryagin. Kondisi ini dipenuhi oleh Hu = 0 dan Huu < 0, untuk masalah yang kita
bicarakan. Jika u ∈ U dan U himpunan tertutup, maka Hu = 0 tidak memiliki arti,
kecuali maksimum dari H diberikan oleh bagian dalam (interior ) himpunan U.
2. Jika H fungsi monoton naik dalam peubah u, dan U tertutup, maka kontrol opti-
mum adalah uimax untuk masalah memaksimumkan dan uimin untuk masalah memini-
mumkan. Jika H fungsi monoton turun, maka kontrol optimum adalah uimin untuk
masalah memaksimumkan dan uimax untuk masalah meminimumkan. Hal ini juga
berlaku apabila H adalah fungsi linier dalam u. Sehingga peubah kontrol optimum ui
adalah kontinu bagian dan loncat dari satu vertex ke vertex lainnya. Ini adalah kasus
khusus dari kontrol ’bang-bang.’
3. H(x? (t), u? (t), p? (t), t) ≥ H(x(t), u(t), p(t), t) juga mencakup syarat cukup.
4. Vektor p disebut juga vektor adjoint, memiliki peranan sebagai pengali Lagrange.
Dalam masalah optimisasi dinamis, peubah atau vektor adjoint merupakan ’shadow
price’ nilai marginal dari vektor atau peubah x, menunjukkan jumlah kenaikan/penurunan
untuk setiap kenaikan/penurunan dalam nilai x pada waktu t yang berkontribusi ter-
hadap fungsional objektif optimum J. Sedangkan ṗ mengindikasikan tingkat kenaikan
(appresiasi untuk ṗ > 0,) atau penurunan ( depresiasi untuk ṗ < 0 )dalam nilai dari
tiap unit modal.
5. dH/dt = ∂H/∂t.
7. Syarat batas diberikan oleh persamaan ( 3.22). Apabila fungsi scrap S = 0, maka
persamaan ( 3.22) menjadi
Khususnya, apabila waktu awal t0 dan x(t0 ) telah ditentukan, sedangkan T dan x(T )
belum ditentukan, maka syarat batas menjadi
dengan kendala
ẋ(t) = −u(t); x(0) = 0, x(1) bebas .
28
Solusi : Dalam masalah di atas, f0 (x, u, t) = x + u2 , fungsi f (x, u, t) = −u(t). Maka fungsi
Hamilton adalah
sehingga diperoleh
ṗ(t) = −Hx = −1, memberikan p(t) = −t + k1 . Karena fungsi scrap S = 0, dan x(1)
belum ditentukan ( dan T = 1), maka syarat batas p(1)δx(1) = 0, yang memberikan p(1) =
−1 + k1 = 0, yaitu k1 = 1, dan p(t) = −t + 1. Sistem dinamis menjadi
1 2 1Z 1 2
J(u(t)) = x(1) + u dt
2 2 0
Syarat batas p(1) = Sx = x(1) memberikan p(1) = x(1) = −p + 1, yaitu p? (t) = 21 . Sehingga
diperoleh solusi optimum
1 1
x? (t) = − t + 1, p? (t) = u? (t) = .
2 2
29
Perhatikan masalah kontrol optimum satu dimensi yang memaksimumkan fungsional
objektif J Z T
(3.24) max J[u(t)] = f0 (x(t), u(t), t)dt
u(t)∈U t0
terhadap kendala
1. x(T ) = xT ,
2. x(T ) ≥ xT ,
3. x(T ) bebas
Teorema 3.2 Syarat perlu untuk adanya kontrol optimum adalah ∃(p0 , p(t)) 6= (0, 0) dan
3. p(T ) = 0.
30
terhadap kendala
(3.31) ẋ(t) = f (x(t), u(t), t), x(t0 ) = x0 , x(t) ∈ Rn .
Maka syarat transversalitas atau syarat batas diberikan oleh
dengan
(3.35) R[x(T ), T ] ≡ S[x(T ), T ] + µM [x(T ), T ]
dengan µ merupakan pengali Lagrange. Jadi syarat batas atau syarat transversalitas menjadi
p(T ) = Rx .
31
Apabila tanpa fungsi scrap, maka H(T ) = 0.
Kasus 5 : State Terminal x(T ) Bebas, yaitu δx(T ) 6= 0.
Maka syarat batas menjadi
32
Ringkasan Syarat Batas/Transversalitas Conditions Kontrol Optimum
Tanpa mempedulikan orde yang lebih tinggi O(u) dan pada saat ekstremum variasi pertama
δJa (u) = 0, maka terlihat bahwa tanda dari 4Ja (u) ditentukan oleh tanda dari variasi
kedua δ 2 Ja (u), yang harus bertanda tak-positif untuk maslah maksimum dan tak-negatif
untuk masalah minimum.
Dengan mengabaikan fungsi scrap, yaitu S(x(T ), t) = 0, maka variasi kedua δ 2 Ja (u)
diberikan oleh " 2
∂2H
#" #
Z T ∂ H
2 2 δx
δ Ja (u) = 1/2 ( δx δu ) ∂∂2 Hx ∂x∂u
∂2H dt
0 ∂u∂x 2
∂ u
δu
dengan Hxx ≡ [δ 2 H/δxi δxj ], merupakan turunan dari Hx terhadap x yang dihitung pada
(x? , p? , u? , t). Hal yang sama berlaku untuk Hux (= Hxu ) dan Huu .
33
Teorema 3.3 Kontrol adalah maksimum lokal, dengan kata lain u? (t) merupakan kontrol
optimum dari fungsional J jika :
∂H
1. ∂u
(x? (t), u? (t), p? (t), t) = 0, ∀t ∈ [0, T ];
2
yang berakibat bahwa pada u = u? , ∂∂ 2Hu adalah definit negatif dan matrik He (Hessian) berikut
merupakan matrik definit negatif,
" ∂2H ∂2H #
∂2x ∂x∂u
He =
∂2H ∂2H
∂u∂x ∂2u
Teorema 3.4 Jika f0 dan f, dan akibatnya H = f0 +p.f adalah fungsi concave, maka syarat
perlu juga merupakan syarat cukup.
Misalkan (x? , u? ) merupakan pasangan admissible. Misalkan U concave dan ∂fi /∂uj ada
dan kontinu. Jika ∃p(t) = (p1 , p2 , . . . , pn ) dan p0 = 1 sehingga
∂H
1. ṗi = − ∂xi
, ∀i = 1, 2, . . . , n
∂H
(u?j (t) − uj (t) ≥ 0, ∀u ∈ U
P
2. ∂uj
maka (x? , u? ) merupakan solusi optimum. Jika H strictly concave, maka (x? , u? ) merupakan
solusi tunggal.
34
Ĥ(x, p, t) = max H(x, u, p, t) dan Ĥ(x, p, t) concave,
u∈U
maka (x? , u? ) merupakan solusi optimum. Jika Ĥ(x, p, t) strictly concave maka x? tunggal,
sedangkan u? belum tentu tunggal.
terhadap kendala ẋ = f (t, x, u) ditambah dengan syarat batas. Dengan definisi standar,
fungsi Hamilton dapat dituliskan dalam bentuk
H(t, x, u, p) = G(t, x, u)e−ρt + p(t)f (t, x, u).
Akan tetapi, karena prinsip maksimum menggunakan turunan fungsi Hamilton terhadap x
dan u, dengan hadirnya faktor diskon akan menambah kerumitan penentuan turunan terse-
but. Untuk itu, dikenalkan fungsi Hamilton baru, yang sering disebut dengan Current-Value
Hamiltonian. Untuk menerapkan konsep current-value Hamiltonian, diperlukan konsep
current-value pengali Lagrange, atau current value fungsi adjoint. Misalkan m(t) menyatakan
current-value pengali Lagrange, yang didefinisikan dengan m(t) = p(t)eρt , yang berimplikasi
p(t) = m(t)e−ρt . Sehingga fungsi current-value Hamiltonian, yang dinotasikan dengan Hc ,
dapat dituliskan menjadi
Hc ≡ Heρt = G(t, x, u) + m(t)f (t, x, u).
Perhatikan bahwa, Hc , sebagaimana yang diinginkan, sudah tidak memuat faktor diskon.
Juga, perhatikan bahwa H ≡ Hc e−ρt . Kemudian penerapan prinsip maksimum Pontryagin
terhadap Hc , harus disesuaikan. Karena u yang memaksimumkan H juga akan memaksi-
mumkan Hc , jadi
max
u
Hc , ∀t ∈ [0, T ].
Persamaan state yang muncul dalam sistem kanonik, aslinya adalah ẋ(t) = ∂H/∂p.
Karena
∂H ∂Hc
= f0 (t, x, u) = ,
∂p ∂m
maka persamaan ini disesuaikan menjadi
∂Hc
ẋ(t) = .
∂m
35
Persamaan untuk peubah adjoint yang muncul dalam sistem kanonik, aslinya adalah
dalam bentuk ṗ(t) = −∂H/∂x. Pertama-tama, transformasikan masing-masing suku dalam
bentuk yang melibatkan peubah adjoint baru, m(t), kemudian hasilnya disamakan. Untuk
suku kiri,
ṗ(t) = ṁ(t)e−ρt − ρm(t)e−ρt .
Dengan memanfaatkan definisi H, suku kanan dapat dituliskan kembali dalam bentuk
∂H ∂Hc −ρt
− =− e .
∂x ∂x
Dengan menyamakan kedua persamaan tersebut di atas, menghasilkan
∂Hc
ṁ(t) = − + ρm(t).
∂x
Tersisa sekarang adalah memeriksa kondisi(syarat) batas. Untuk syarat batas p(T ) = 0,
memberikan syarat batas yang sesuai, yaitu m(T )e−ρT = 0. Untuk syarat batas [H]t=T = 0,
menghasilkan syarat batas yang sesuai [Hc e−ρt ]t=T = 0.
dengan W0 > 0, u(t) menyatakan proporsi kekayaan yang diinvestasikan pada aset
beresiko pada waktu t dengan 0 ≤ u(t) ≤ 1, C(t), (≥ 0), menyatakan tingkat konsumsi
pada waktu t. Fungsi utilitas U diasumsikan strictly concave dan bequest function B
juga concave.
36
Perhatikan masalah kontrol optimum yang memaksimumkan fungsional objektif J se-
bagai berikut : Z T
(3.41) max J(u(t)) = U (1 − u(t))dt
0
terhadap kendala
ẋ(t) = u(t), x(0) = x0 , x(T ) ≥ xT , u(t) ∈ [0, T ], x0 < xT < x0 + T.
Masalah di atas mempunyai interpretasi ekonomi sebagai berikut : Negara menerima
bantuan tetap sebesar 1 satuan ekonomi. x(t) dapat menyatakan tingkat infrastruktur
pada waktu t, u(t) menyatakan proporsi dari bantuan yang dialokasikan untuk inves-
tasi pada infrastruktur pada waktu t, sedangkan 1 − u(t) menyatakan bagian dari ban-
tuan yang dialokasikan untuk konsumsi. U menyatakan fungsi utilitas. Periode peren-
canaan adalah untuk jangka waktu [0, T ], x(T ) ≥ xT menyatakan bahwa pada akhir
periode perencanaan tingkat infrastruktur sekurang-kurangnya berada pada tingkat
xT . Masalah perencanaan adalah menentukan berapa banyak dari bantuan yang harus
dialokasikan untuk investasi pada infrastruktur supaya tingkat utilitas maksimum.
3. A two-sector model
Perhatikan suatu ekonomi yang terdiri atas dua sektor, dimana sektor 1 mempro-
duksi investment goods sedangkan sektor 2 memproduksi consumption goods. Mis-
alkan xi , i = 1, 2, menyatakan jumlah produksi sektor i per satuan waktu, dan
misalkan u(t) menyatakan proporsi investasi yang dialokasikan pada sektor 1. Kita
asumsikan x˙1 = aux1 dan x˙2 = a(1 − u)x1 , dengan a merupakan suatu konstanta
positif. Kenaikan jumlah produksi per satuan waktu dalam setiap sektor diasumsikan
proporsional terhadap besarnya investasi yang dialokasikan pada sektor tersebut. Den-
gan pemahaman tersebut, kontrol 0 ≤ u(t) ≤ 1, dan periode perencanaan dimulai
pada t = 0, sehingga x1 (0) dan x2 (0) diketahui besarnya. Untuk situasi seperti ini,
berbagai macam masalah kontrol optimum dapat diinvestigasi. Salah satunya adalah
masalah memaksimumkan total konsumsi pada periode waktu [0, T ].
Masalah kontrol optimum tersebut, secara matematis dituliskan seperti berikut :
Z T
max J(u) = x2 (t)dt,
0
dengan kendala :
x˙1 = aux1 , x1 (0) = x01 , x1 (T ) bebas
0 ≤ u(t) ≤ 1.
x˙2 = a(1 − u)x1 , x2 (0) = x02 , x2 (T ) bebas
37
dimana kt = kapital per tenaga kerja, st = proporsi menabung, f (kt ) = output per
kapita.
dimana Tn = τn+1 − τn .
Pengaplikasian prinsip keoptimalan Bellman pada U, menghasilkan
1 γ
(3.48) U (xτn ) = max {Qνn W + e−δTn E [U (xτn+1 )|Hτn ]},
{Tn ,Wτn ,Vτn } γ τn
terhadap kendala, untuk n = 1, 2, 3, ...,
a2 d2 x(t) dx(t)
(3.50) 2
+a + x(t) = u(t)
2 dt dt
dengan x(t) menyatakan proportional rate of growth of money income, u ≡ m + bṁ
dimana m ≡ (1/M )(dM/dt) merupakan proportional rate of change of money supply
M (t) dan b suatu konstanta. a = konstanta yang merepresentasikan the length of
38
2
business cycle. Dengan mendefinisikan x = x1 , ẋ = x2 , d dtx(t)
2 = ẋ2 , maka masalah di
atas dapat dituliskan dalam bentuk sistem
Objektif dari otoritas moneter adalah untuk mencapai rate of growth of national in-
come yang stabil pada waktu mendatang, yaitu x(T ) = x1T ; ẋ(T ) = 0 dengan cara
menggunakan optimal money supply policy. Masalah ini sama saja dengan memini-
mumkan fungsional objektif J = 0T dt. Dengan demikian, masalah menjadi masalah
R
dengan kendala
(3.53) ẋ(t) = Ax(t) + bu(t)
dengan x(0) ≡ (x1 (0), x2 (0)) = (x10 , x20 ) diberikan dan x(T ) ≡ (x1 (T ), x2 (T )) =
(x1T , 0), |u| ≤ 0.1
dengan kendala ẋ(t) = f (x(t), u(t), t), dan kontrol u memenuhi kendala gi (x(t), u(t), t) ≥ 0,
dan x(t) dan ẋ(t) ∈ Rn dan u(t) ∈ Rk . Masalah kontrol optimum di atas dapat ditransfor-
masikan menjadi masalah dengan kendala persamaan. Hal ini dilakukan dengan membuat
variable semu ζ̇ sehingga gi (x, u, t) − ζ̇i2 = 0. Definisikan fungsi F dengan
Teorema 3.7 Misalkan u? (t) merupakan kontrol admissible yang mentransfer x(0) kepada
target (x(T ), T ) dan memberikan ekstremal untuk fungsional J. Definisikan fungsi Ĥ = p0 f0 +
pf + λg. Supaya u? (t) adalah optimal, maka perlu terdapat p0 , p(t) dan λ(t) pada interval
waktu [0, T ] sehingga :
2. ẋ(t) = Ĥp ,
39
3. ṗ(t) = −Ĥx ,
5. λi ≥ 0, gi ≥ 0, dan λi gi = 0.
dengan kendala ẋ(t) = f (x(t), u(t), t), dan x(t) ≥ ϕ(t), x(t), ẋ(t) ∈ Rn dan u(t) ∈ Rk .
Definisikan Z 2 ≡ x(t) − ϕ(t). Masalah kontrol optimum di atas ditransformasikan menjadi
Z T
J[u(t)] = f0 (x(t), u(t), t)dt
0
dengan kendala ẋ(t) = f (x(t), u(t), t), dan g(x) − Z 2 = 0, dengan g(x) = x(t) − ϕ(t).
Kemudian definisikan F = H − pẋ + λ(g − Z 2 ). Dengan menentukan persamaan Euler dari
F , maka diperoleh fungsi Hamiltonian yang dilengkapi :
dengan λ merupakan pengali Lagrange. Untuk g > 0 maka λ = 0, dan untuk g ≡ 0, maka
λ 6= 0.
dengan kendala
40
dengan li = konstanta untuk (i = 1, 2, . . . , m), f0 , fi dan φi diasumsikan fungsi ”well
behaved”. Masalah tersebut merupakan masalah kendala isoperimetric dan kendala titik.
Seperti pada calculus variasi, kita definisikan fungsi yi , dimana
Z t
yi ≡ φi (x, u, t)dt, (1 ≤ i ≤ m)
0
Teorema 3.8 Jika u? (t) memaksimumkan J maka terdapat p(t), λ dan µ yang tidak se-
muanya nol sehingga
1. λi merupakan konstanta
(b) ṗ = −Ĥx
(c) Ĥu = 0
(d) ψ = 0
41
Teorema 3.9 Misalkan u? merupakan kontrol admissible yang mentransfer (x0 , 0) kepada
target (x(T ), T ). Supaya u? (t) merupakan kontrol optimum, maka terdapat p(t) 6= 0 dan λ(t)
sehingga :
1. ẋ = H p
2. ṗ = −H x ≡ −(Hx + λgx )
3. H u = 0 ⇐⇒ Hu + λgu = 0, λi ≥ 0, gi ≥ 0 dan λi gi = 0.
≥ 0, jika u?i = Mi
∂H
= 0, jika mi < ui < Mi
∂ui ?
≤ 0, jika ui = mi
(3.63) gi ≡ Mi − ui , (i = 1, 2, . . . , r)
(3.64) gj ≡ uj − mj , (j = r + 1, . . . , 2r).
Atau,
1 − u − ζ̇12 = 0, u + 1 − ζ̇12 = 0.
42
Misalkan u berbatas, misalnya mi ≤ ui ≤ Mi , ∀i, dengan mi dan Mi berturut-turut
merupakan nila minimum dan maksimum yang dapat dicapai oleh ui . Apabila mi dan Mi
merupakan konstanta, maka dapat ditulis sebagai −1 ≤ ui ≤ 1. Dengan menerapkan prinsip
maksimum Pontryagin pada masalah seperti ini, maka diperoleh kontrol optimum u?i berikut
: (
1(atau Mi ) jika σi > 0
u?i =
−1(atau mi ) jika σi < 0
Jadi, kalau u(t) muncul linier dalam fungsi Hamiltonian dan tiap komponen ui berbatas,
maka kontrol optimum u?i (t) tak kontinu : loncat dari nilai minimum ke nilai maksimum
atau sebaliknya sebagai respons terhadap perubahan tanda dari σi . Dengan alasan ini, maka
σ(x, p, t) disebut sebagai switching function dan kontrol u?i disebut sebagai kontrol bang
bang.
Perhatikan sistem berikut :
dengan x adalah vektor dimensi-n, u vektor dimensi-r, A adalah matrik nxn dan B adalah
matrik nxr, |ui | ≤ 1, (1 ≤ i ≤ r). Kontrol harus dipilih sehingga mentransfer sistem dari
posisi awal x0 kepada state akhir x(T ) = 0 dalam waktu minimum. Hal ini berarti bahwa
fungsional objektif adalah dalam bentuk meminimumkan waktu, yaitu : min J(u) = 0T dt.
R
(3.67) H ≡ 1 + p0 Ax + p0 Bu
(3.68) ṗ = −Hx = −A0 p
Untuk kasus di atas, tidak mungkin terjadi p = 0 sehingga p0 bi = 0. Jadi, kontrol singular
tidak mungkin terjadi. Akibatnya, kontrolnya adalah bang bang. Satu hal yang perlu diingat
bahwa dalam masalah meminimumkan waktu, kontrol optimum tidak selalu ada. Apabila
tidak ada kontrol admissible yang membawa sistem ke target yang didinginkan, maka kontrol
optimum tidak ada.
Dalam masalah kontrol optimum, 3 teorema berikut sangat bermanfaat (teorema ini
dibuktikan oleh Pontryagin).
2. Uniqueness Theorem : Jika kontrol optimum ada, maka kontrol tersebut tunggal.
43
3. Switching Theorem : Misal nilai eigen dari matrik A semuanya bernilai real. Maka
ada kontrol optimum yang tunggal. Tiap-tiap ui , (1 ≤ i ≤ r), yang merupakan kon-
stanta piecewise, hanya bernilai maksimum dan minimum, dan mengalami switching
tidak lebih dari n − 1.
Contoh : Optimal Monetary Policy Untuk aplikasi dalam masalah ekonomi, perhatikan
model Optimal Monetary Policy yang dikembangkan oleh Peterson dan Lerner (1971). Sis-
tem yang digunakan berdasarkan studi empris Friedman yang sudah dimodifikasi, yaitu :
a2 d2 x(t) dx(t)
(3.69) + a + x(t) = u(t)
2 dt2 dt
dengan x(t) menyatakan proportional rate of growth of money income, u ≡ m + bṁ dimana
m ≡ (1/M )(dM/dt) merupakan proportional rate of change of money supply M (t) dan b
suatu konstanta. a = konstanta yang merepresentasikan the length of business cycle. Dengan
mendefinisikan
d2 x(t)
x = x1 , ẋ = x2 , = ẋ2 ,
dt2
maka masalah di atas dapat dituliskan dalam bentuk sistem
Objektif dari otoritas moneter adalah untuk mencapai rate of growth of national income
yang stabil pada waktu mendatang, yaitu x(T ) = x1T ; ẋ(T ) = 0 dengan cara menggunakan
optimal moneyR supply policy. Masalah ini sama saja dengan meminimumkan fungsional
objektif J = 0T dt. Dengan demikian, masalah menjadi masalah kontrol optimum yang
meminimumkan fungsional objektif
Z T
(3.71) J(u) = dt
0
dengan kendala
(3.72) ẋ(t) = Ax(t) + bu(t)
dengan x(0) ≡ (x1 (0), x2 (0)) = (x10 , x20 ) diberikan dan x(T ) ≡ (x1 (T ), x2 (T )) = (x1T , 0),
|u| ≤ 0.1 Masalah ini merupakan masalah kontrol optimum linier, dan Hamiltonian diberikan
oleh
(3.73) H ≡ 1 − (2p2 /a2 )x1 + (p1 − 2p2 /a)x2 + (2/a2 )p2 u
Switching function σ = (2/a2 )p2 dan optimal policy diberikan oleh
(
0, 1 jika p2 (t) > 0
u? (t) =
−0, 1 jika p2 (t) < 0
Kalau u? (t) sudah diperoleh, maka m? dan M ? dapat ditentukan. Karena ṗ = −Hx = −A0 p
dan nilai eigen dari matrik −A0 adalah µ = 1/a ± i/a, maka
44
Fungsi p2 ini yang bertindak sebagai switching function tidak pernah bernilai nol. State
system diperoleh dengan menyelesaikan ẋ(t) = Ax(t) ± 0, 1b. Karena nilai eigen dari A
adalah µ = −1/a ± i/a, maka solusi x adalah
(3.74) x1 (t) = ±0, 1 + e−t/a (c3 cos t/a + c4 sin t/a), untuk u = ±0, 1
(3.75) x2 (t) = 1/ae−t/a {(c4 − c3 ) cos t/a − (c3 + c4 ) sin t/a}
RT
3. Diberikan fungsional objektif J(x) = 0 (x + ẋ2 )dt.
45
5. Diberikan fungsional objektif
Z T
J(x) = (tx + x2 + ẋ2 )dt.
0
(a) Turunkan persamaan Euler untuk masalah di atas dan berikan solusi umumnya.
(b) Tentukan solusi persamaan Euler apabila x(0) = 0 dan x(2) = e2 .
RT
6. Diberikan fungsional objektif 0 (x2 + ẋ2 )dt.
46
(a) Tentukan persamaan Euler serta solusinya.
(b) Tentukan solusi persamaan Euler jika x(0) = 4, dan x(10) belum ditentukan.
(c) Tentukan solusi persamaan Euler apabila x(0) = 1, sedangkan T dan x(T ) tidak
diberikan nilainya, tetapi x(T ) melalui garis g(t) = 11 − 2t.
15. (Dynamic Monopoly, dikembangkan oleh Evans (1924)). Monopolis memproduksi dan
menjual barang x(t) dengan fungsi permintaan diberikan oleh x(t) = ap(t) + b +
˙ dan fungsi ongkos C(x) = αx(t)2 + βx(t) + γ, dengan a, b, h, α, β, γ semuanya
hp(t)
merupakan konstanta. Monopolis memilih kebijakan harga p(t) yang optimum sehingga
memberikan keuntungan π yang maksimum untuk jangka waktu perencanaan T tahun,
dengan harga awal p(0) = p0 dan harga akhir p(T ) = pT dan waktu terminal T
ditentukan.
47
3.9.2 Soal-Soal Kontrol Optimum
1. Diberikan masalah kontrol optimum memaksimumkan fungsional objektif J berikut :
Z 1
(3.76) max J(u) = (x + u)dt
0
dengan kendala
(3.77) ẋ = 1 − u2 , x(0) = 1.
dengan kendala
ẋ(t) = x(t) + u(t), x(0) = 1,
terhadap kendala
dx1 (t)/dt = u(t), x1 (0) = 0,
dx2 (t)/dt = x1 (t), x2 (0) = 0,
dengan peubah kontrol u(t) tanpa batas, dan peubah state x(t) = (x1 (t), x2 (t)).
48
ii. Periksa apakah kontrol dan state yang diperoleh tersebut memang kontrol
dan state optimum;
iii. Hitung nilai optimum fungsional objektif J.
(b) Apabila T = 1, x1 (1), x2 (1) bebas, S[x(1), 1] = 1/2 [x2 (1) − 2]2 , maka :
i. Tentukan kontrol dan state ekstremal untuk masalah di atas;
ii. Periksa apakah kontrol dan state yang diperoleh tersebut merupakan kontrol
dan state optimum;
iii. Tentukan nilai optimum fungsional objektif J.
dengan kendala ẋ(t) = x(t) + u(t), x(0) = 5, x(4) bebas dan u(t) ∈ [0, 2].
(a) Tentukan kontrol dan state ekstremal untuk t ∈ [0, 2].
(b) Periksa apakah kontrol dan state yang diperoleh tersebut merupakan kontrol dan
state optimum.
(c) Tentukan nilai optimum dari fungsional objektif.
6. Tentukan kontrol optimum untuk masalah berikut :
(a) Maksimumkan fungsional objektif J(u) = 0T −(1 + u2 )1/2 dt terhadap kendala
R
dengan kendala ẋ = u, dan x(0) = 0, x(2) bebas dan kontrol u(t) tidak
berkendala.
8. Tentukan kontrol, state dan kostate yang memaksimumkan fungsional objektif
Z 1 1
J(u) = − (x2 + u2 )dt
0 2
dengan kendala ẋ = u − x, dan x(0) = 1, x(1) bebas dan kontrol u(t) tidak
berkendala.
9. Tentukan kontrol, state dan kostate yang memaksimumkan fungsional objektif
Z T
J(u) = −(t2 + u2 )dt
0
49
10. Tentukan kontrol, state dan kostate yang memaksimumkan fungsional objektif
Z 4
J(u) = 3xdt
0
50
(b) Tunjukkan bahwa ṗ = −1+s? (t)(1−p(t)) dengan p(T ) = 0, dan bahwa ṗ < 0
dalam [0, T ]. Simpulkan bahwa pada suatu selang (t? , T ], p(t) < 1 dengan
p(t? ) = 1. Tentukan p(t) pada (t? , T ] dan tunjukkan bahwa t? = T − 1.
(c) Simpulkan bahwa s? (t) = 1 pada [0, T − 1], dan s? (t) = 0 pada (T − 1, T ].
(d) Ganti syarat k(T ) bebas dengan k(T ) ≥ kT dengan k0 < KT < k0 eT , dan
tentukan kandidat tunggal untuk optimum.
15. Tentukan fungsi kontrol yang memberikan solusi untuk masalah
Z 2
max (2x − 3u − u2 )dt
0
51
3.9.3 Soal-soal Ujian
(a) Tentukan solusi yang memenuhi kendala x(0) = 5, x(T ) bebas dan T = 2.
(b) Tentukan ekstremum apabila x(0) = 0, x(T ) = T + 1, (T > 1).
(c) Tentukan solusi yang memenuhi kendala x(0) = 1, x(1) ≥ 1.
52
Ujian Tengah Semester
MAT 364 : Kontrol Optimum
Jum’at : April 2005
(a) Tentukan solusi yang memenuhi kendala x(0) = 5, x(T ) bebas dan T = 2.
(b) Tentukan ekstremum apabila x(0) = 0, x(T ) = T + 1, (T > 1).
(c) Tentukan solusi yang memenuhi kendala x(0) = 1, x(1) ≥ 1.
53
UJIAN AKHIR SEMESTER
MAT 364 : KONTROL OPTIMUM
Jumat, 23 Mei 2003, ( Waktu Tersedia : 150 menit )
terhadap kendala
dengan peubah state dan peubah kontrol tidak berbatas. Tentukan kontrol optimum
yang memaksimumkan fungsional objektif
Z T 1 2
J(u(t)) = S(x(T )) − u (t)dt
0 2
apabila :
(a) x1 (1) = 2; x2 (1) = 3; T = 1; S(x(T )) = 0.
(b) T = 1, x1 (1), x2 (1) tidak diberikan, dan S(x(T )) = 12 [T x2 (T ) − x1 (T )].
(c) x1 (T ) = 2; x2 (T ) = 3; T bebas; S(x(T )) = 0.
3. Tentukan kontrol optimum untuk masalah meminimumkan fungsional objektif
Z T
(3.81) J(u(t)) = [ax(t) + bu(t) + cu2 (t)]dt
0
dengan kendala ẋ(t) = u(t), x(0) = x0 tetap, T tetap, x(T ) bebas c > 0.
4. Perhatikan masalah kontrol optimum yang memaksimumkan fungsional objektif :
Z 4
(3.82) J[u(t)] = 3xdt
0
dengan kendala ẋ(t) = x(t) + u(t), x(0) = 5, x(4) bebas dan u(t) ∈ [0, 2].
54
(a) Tentukan kontrol dan state ekstremal untuk t ∈ [0, 4].
(b) Periksa apakah kontrol dan state yang diperoleh tersebut merupakan kontrol dan
state optimum.
(c) Tentukan nilai optimum dari fungsional objektif.
(a) Misalkan (x? (t), u? (t)) solusi dari masalah di atas. Tunjukan bahwa
(
? 1 jika p(t) > 1
u (t) =
0 jika p(t) < 1
(b) Tunjukkan bahwa ṗ = −1+u? (t)(1−p(t)) dengan p(T ) = 0, dan bahwa ṗ < 0
dalam [0, T ]. Simpulkan bahwa pada suatu selang (t? , T ], p(t) < 1 dengan
p(t? ) = 1. Tentukan p(t) pada (t? , T ] dan tunjukkan bahwa t? = T − 1.
(c) Simpulkan bahwa u? (t) = 1 pada [0, T − 1], dan u? (t) = 0 pada (T − 1, T ].
55
Ujian Akhir Semester
MAT 364 : Kontrol Optimum
Rabu, 15 Juni 2005
dengan kendala ẋ = x + u, x(0) = 5, dan x(2) bebas dan kontrol u ∈ [0, 2].
5. Tentukan kontrol, state dan kostate yang memaksimumkan fungsional objektif
Z 4
J(u) = 3xdt
0
56
PENYELESAIAN MASALAH KONTROL OPTIMUM
SEBAGAI MASALAH SYARAT BATAS PERSAMAAN
DIFERENSIAL BIASA DALAM SCILAB
Abstrak
PENDAHULUAN
Ada kalanya solusi yang sangat spesifik ingin didapatkan dari suatu sistem
PDB dengan cara menentukan nilai-nilai awal pada lebih dari satu titik x.
Permasalahan seperti ini dikenal dengan nama Masalah Syarat Batas (MSB), yang
dapat dinyatakan oleh :
(2)
1
Departemen Matematika, Fakultas Ilmu Pengetahuan Alam, Jalan Meranti Kampus IPB Dramaga
Bogor,16680.
A.D. GARNADI, E. SYAHRIL
solusi numerik, dan menggambarkan solusi secara grafis dari MSB yang berasal
dari Masalah Kontrol Optimum (MKO) dengan menggunakan rutin bvode.
Tulisan ini juga merupakan studi pendahuluan numerik atas ketersediaan
lingkungan pemecah masalah numerik (numerical problem solving
environment{PSE}) yang bersifat open-source sebagai alternatif dari PSE
komersial populer MATLAB yang menawarkan rutin bvp4c untuk memecahkan
MSB.
Tujuan tulisan ini bersifat pedagogis yang menguraikan secara sederhana
bagaimana MKO didapatkan solusinya dengan menyelesaikan secara numerik
MSB sebuah PDB. Dengan demikian, seorang pemula dapat mempergunakan
bvode untuk menyelesaikan MSB yang dihadapinya tanpa kesulitan.Selain itu,
contoh yang diberikan muncul dari masalah perkuliahan yang biasanya ditemui di
tahun ketiga atau keempat di perguruan tinggi.Selain itu, tulisan ini bertujuan
untuk menyediakan dokumentasi tertulis berbahasa Indonesia.Tujuan lainnya
ialah memberikan teladan penggunaan Open Source dilingkungan komputasi
matematika di Indonesia, yang secara tidak langsung memberi dukungan pada
proyek nasional IGOS (Indonesia Goes Open Source).
Tulisan ini disusun dengan urutan sebagai berikut.Pertama diuraikan
formulasi masalah control optimum, yang dilanjutkan dengan deskripsi dari
bvode. Kemudian diperlihatkan penggunaannya untuk sebuah contoh MKO
sebagai masalah syarat batas yang diselesaikan menggunakan bvode. Untuk
kepentingan pedagogis, diberikan dua contoh MSB yang diselesaikan
menggunakan bvode dalam lingkungan Scilab. Kemudian diakhiri oleh
kesimpulan serta kemungkinan pekerjaan lanjutan.
DESKRIPSI bvode
Rutin bvode yang tersedia dalam PSE Scilab, merupakan perangkat simulasi
untuk menyelesaikan MSB.Rutin bvode pada dasarnya mempergunakan pustaka
COLNEW yang merupakan perbaikan dari rutin program COLSYS ([1], [2]) yang
ditulis mempergunakan FORTRAN dan berlandaskan metode kolokasi.Tidak
seperti solver PDB pada umumnya, bvode tidak mengharuskan pengguna
mengubah persamaan diferensial orde tinggi menjadi sistem persamaan diferensial
orde satu. Selain itu, dimungkinkan diberikannya sejumlah syarat di sejumlah titik
.
Bentuk MSB yang diasumsikan oleh bvode ialah:
(3)
. (4)
Dengan demikian, bentuk umum MSB yang diasumsikan oleh bvode ialah
(5)
. (6)
denganz merupakan vektor baris yang berisi solusi numerik dari MSB yang ingin
diselesaikan. Komponen z(i,:)merepresentasikan turunan ke-(i-1) dari solusi
pada selang domain. Sebagai contoh, z(1,:)menyatakan y, z(2,:)menyatakan
y’, dan seterusnya hingga z(m*,:)menyatakan y(m*-1).
Lima argumen terakhir yang diperlukan bvodeberbentuk fungsi yang
harus didefinisikan sendiri oleh pengguna, sedangkan argumen lainnya merupakan
informasi yang diperlukan bvode untuk dapat mencari solusi numerik berkaitan
dengan MSB yang ingin diselesaikan.Berikut adalah penjelasan kegunaan masing-
masing parameter yang digunakan oleh bvode.
z : Solusi dari PDB yang dievaluasi atas mesh yang diberikan oleh points.
Points : Array yang menyimpan titik di selang domain dimana MSB akan dicari
solusinya.
Ncomp : Jumlah persamaan diferensial. Syaratnya haruslah ncomp≤20.
M : Vektor dengan panjang ncomp, yang isinya m(j)berupa orde dari
persamaan diferensial ke-j. Orde dari persamaan diferensial harus
disyaratkanm(j)≤4.
Aleft : Ujung kiri dari selang domain dimana y didefinisikan.
Aright : Ujung kanan dari selang domain dimana y didefinisikan.
zeta : Isi zeta(j) berisi titik syarat (batas) tambahan ke-j. Isi harus diurutkan
sehingga zeta(j)≤zeta(j+1). Semua titik syarat tambahan (batas)
harus pada titik mesh di semua mesh yang digunakan. Khususnya, titik
tersebut harus merupakan bagian dari mesh awal. Perhatikan pula uraian
lebih rinci mengenai parameter ipar(11) dan fixpnt di bawah ini.
ipar : Array berentri bilangan bulat dengan ukuran sedikitnya 11. Daftar
parameter dari ipar akan diuraikan kemudian.
ltol : Array dengan panjang yang ditentukan ipar(4).
ltol(j)=1menentukan toleransi ke-j di tol mengendalikan error di
komponen ke-l dari z(u). Juga dipersyaratkan bahwa
JMA, VOL. yy, NO.1, JULY 2018, 1-xx
1≤ltol(1)<ltol(2)<⋯<ltol(ntol)≤mstar.
tol : Array dengan panjang yang ditentukan ipar(4). tol(j)menyatakan
toleransi pada komponen ke ltol(j) dari solusi z(u).
fixpnt : Titik selain aleftdan arightyang akan dimasukkan ke dalam mesh.
fsub : Fungsi yang mendefinisikan PD yang ingin dicari solusi numeriknya.
dfsub : Matriks Jacobian dari fsub.
gsub : Fungsi yang mendefinisikan persamaan syarat batas untuk MSB yang
bersangkutan.
dgsub : Matriks Jacobian dari gsub.
guess : Tebakan awal bagi solusi (jika tersedia).
Dari kelimabelas parameter di atas, argumen ipar adalah argumen yang
paling panjang.Argumen ini memiliki 11 komponen yang secara keseluruhan
memberi kesempatan pengguna untuk mengatur setting pada metode numerik
yang digunakan bvode.Sebagian komponen dari parameter ipar berhubungan
langsung dengan beberapa argumen bvode pada daftar parameter di atas. Sebagian
besar dari komponen-komponen tersebut memiliki nilai default nol. Karena
jumlah komponennya yang terbilang cukup banyak, ada baiknya jika dibuat
variabel berdimensi 1×11 yang berisi nilai nol (default) sebelum mengisi
komponen-komponen yang tidak bernilai default, yaitu
ipar = zeros(1,11);.
Isikan masing-masing komponen parameter ipar berdasarkan keterangan
yang didaftarkan di bawah ini:
ipar(1) : = 0 jika MSB linear dan = 1 jika MSB non-linear.
ipar(2) : Banyaknya titik kolokasi per subinterval (=k ) dimana orde maksimum
PD ≤k≤ 7. Jika ipar(2)=0maka secara default k = max(max
m(i)+1,5-max m(i)).
ipar(3) : Banyaknya subinterval pada mesh awal ( =n ).
Jika ipar(3) = 0 maka secara default n = 5.
ipar(4) : Banyaknya komponen solusi beserta turunannya yang diberi toleransi
(=ntol), dengan aturan 0 ≤ntol≤m*.
ipar(5) : Nilai yang menentukan banyaknya subinterval maksimum (nmax) pada
selang domain. Pilihlah ipar(5)berdasarkan rumus berikut:
ipar(5)≥ipar(5).nsizef di mana nsizef =
4+3m*+(5+kd).kdm+(2m*-nrec).2m*dengan nrec adalah
banyaknya syarat batas pada ujung kanan selang domain ipar(5)
diperuntukkan evaluasi pada titik-titik selang real.
ipar(6) : Nilai yang menentukan banyaknya subinterval maksimum nmax pada
selang domain. Pilihlah ipar(6) berdasarkan rumus berikut:
ipar(6)≥nmax.nsizei di mana nsizei = 3+kdm dengan
kdm=kd+m*; kd = k.ncomp; ipar(6) diperuntukkan evaluasi pada
titik-titik integer.
ipar(7) : Kontrol output berikan nilai berikut: = -1 untuk printout diagnostik
penuh = 0 untuk printout sederhana. = 1 tanpa printout.
ipar(8) : = 0 untuk mesh awal seragam.
A.D. GARNADI, E. SYAHRIL
ipar(9) : = 0 jika tidak tersedia tebakan awal bagi solusi. = 1 jika tebakan awal
tersedia pada fungsiguess.
ipar(10) = 0 jika masalah bersifat reguler. = 1 jika iterasi nonlinear tidak
bergantung pada kekonvergenan dari iterasi sebelumnya (hanya
digunakan jika ipar(1) =1). = 2 jika proses ingin dihentikan setelah
(a)terjadi dua kali nonkonvergen berturut-turut, atau (b)pendekatan
galat didapatkan untuk pertama kalinya.
ipar(11) : Banyaknya titik selain ujung-ujung selang domain yang akan
dimasukkan ke dalam mesh (dimensi dari argumen fixpnt).
CONTOH
Contoh 1. Dalam contoh ini diberikan ilustrasi bagaimana mencari solusi numerik
dari MSB yang melibatkan parameter yang tidak diketahui. Permasalahannya
ialah menghitung nilai eigen dari persamaan Mathieu berikut ini,
(7)
pada selang , dengan syarat batas , untuk . Solusi
dinormalisasi dengan cara menetapkan solusi memenuhi . Permasalahan
sesungguhnya ialah mencari nilai yang memenuhi syarat batas . Nilai
tebakan awal bagi menjadi keharusan dalam menyelesaikan masalah ini.MSB di
atas diimplementasikan dalam SCILAB sebagai berikut ini.Persamaan
diferensialnya didefinisikan dengan skrip berikut.
function f=fsub(x, zu)
f=-(lambda-2*5*cos(2*x))*zu(1);
endfunction
Untuk persamaan di atas, diperlukan matriks Jacobian yang ditulis dengan
skrip seperti berikut ini.
function df=dfsub(x, zu)
df=[-(lambda-2*5*cos(2*x)),0];
endfunction
Sementara syarat batasnya diberikan oleh:
function g=gsub(i, zu),
select i
case 1 then
g=zu(1)-1
case 2 then
g=zu(2)
JMA, VOL. yy, NO.1, JULY 2018, 1-xx
case 3 then
g=zu(2)
end
endfunction.
Untuk syarat batas tersebut di atas, diperlukan matriks Jacobian, yaitu
function dg=dgsub(i, z)
select i
case 1 then
dg=[1,0]
case 2 then
dg=[0,1]
case 3 then
dg=[0,1]
end
endfunction.
Berikut sejumlah parameter yang diperlukan, yaitu
fixpnt=[ ];
ncomp=1; nrec=1;
k=4;
nmax=200;
kd=N*ncomp;
kdm=kd+M;
nsizei=kdm+3;
ip6=nmax*nsizei;
nsizef=4+3*M+(5+kd)*kdm+(2*M-nrec)*2*M;
ip5=nmax*nsizef;
ipar=[001 2ip5ip6100 0 0]
ltol=1:2;
tol=[1.e-5,1.e-5];
Karena tebakan awal bagi solusi y tidak tersedia maka fungsi guess didefinisikan
seperti di bawah ini.
function [zu, mpar]=guess(x)
zu=0;
mpar=0;
endfunction
Jika tebakan awal bagi nilai eigen dipilih = 15, maka untuk menyelesaikan MSB
pada persamaan (7) sekaligus mendapatkan nilai pendekatan untuk dapat
dilakukan dengan menambahkan loop seperti pada listing berikut,
lambda_0=15;
xpoints=x_low:0.001:x_up;
for j=0:0.001:20000
lambda=lambda_0+j;
zu=bvode(xpoints,N,m,x_low,x_up,zeta,ipar,ltol,tol,fixpnt,fs
ub,dfsub,gsub,dgsub,guess);
if abs(zu(2,$))<j
break;
A.D. GARNADI, E. SYAHRIL
end;
end
Untuk melihat gambar grafik solusi numerik untuk y(x) yang dihasilkan bvode
dan untuk mengetahui nilai yang didapat dari loop di atas, perintah berikut
dengan cepat akan menampilkan keduanya:
lambda
plot2d(xpoints,zu(1,:));
Dari hasil perhitungan yang dilakukan oleh bvode beserta loop di atas,
didapat nilai pendekatan = 16.058 dan gambar grafik solusi y(x) seperti yang
terlihat pada Gambar 1. Perhitungan di atas mempergunakan mesh dengan lebar
kisi Δx = 0.001 yang seragam untuk selang [0,π].
y(x)
x
Gambar 1 Fungsi eigen dari persamaan Mathieu terkait dengan nilai eigen yang
digunakan dalam artikel
Contoh 2. Pada contoh berikut diberikan sebuah MSB yang berasal dari formula
kredibilitas yang memungkinkan aktuaris untuk menyeimbangkan dua hal, yaitu
keakuratan dan kelinearan [9]. Berikut merupakan MSB untuk kasus di mana
sebaran marginal ( ) dari besarnya klaim( ) ialah tak nol pada suatu interval
terbatas , lihat Young [10].
(10)
dengan
JMA, VOL. yy, NO.1, JULY 2018, 1-xx
Misalkan pula
sehingga
dengan
case 2 then
g=zu(4)
case 3 then
g=zu(5)
case 4 then
g=zu(4)
case 5 then
g=zu(5)
end
endfunction
Untuk syarat batas tersebut, diperlukan matriks Jacobian, yaitu
function dg=dgsub(i, z)
select i
case 1 then
dg=[1,0,0,0,0]
case 2 then
dg=[0,0,0,1,0]
case 3 then
dg=[0,0,0,0,1]
case 4 then
dg=[0,0,0,1,0]
case 5 then
dg=[0,0,0,0,1]
end
endfunction
MSB di atas, diselesaikan di atas selang [0,1] dengan lebar kisi Δt = 0.01
yang seragam, berikut sejumlah parameter yang diperlukan, yaitu
N=2;
m=[1 4];
M=sum(m);
x_low=0; x_up=1;
fixpnt=[ ];
xpoints=x_low:0.01:x_up;
ncomp=2; nrec=2;
m=[1 4]; k=4;
nmax=200;
kd=N*ncomp;
kdm=kd+M;
nsizei=kdm+3;
ip6=nmax*nsizei;
nsizef=4+3*M+(5+kd)*kdm+(2*M-nrec)*2*M;
ip5=nmax*nsizef;
ipar=[0,0,10,5,ip5,ip6,-1,0,0,0,0]
ltol=1:5;
tol=[1.e-11,1.e-11,1.e-11,1.e-11,1.e-11,1.e-11]
dan kita berikan fungsi tebakan awal, yaitu
function w=guess(x)
w=[0,0; 0,0];
endfunction
JMA, VOL. yy, NO.1, JULY 2018, 1-xx
d(x)
Contoh 3. Pada contoh berikut diberikan sebuah MSB yang berasal dari Kontrol
Optimum. Biasanya, syarat cukup untuk kontrol optimum berupa MSB, yang
biasanya lebih mudah menyelesaikannya untuk banyak masalah sederhana.
Perhatikan masalah sistem terkontrol
dan kita inginkan kontrol v mengendalikan lintasan dari 2 pada saat t=0 ke -1 pada
saat t=10. Dengan demikian, kita inginkan v meminimumkan ongkos kuadratik
berikut
(8)
(9)
tt=0:0.1:10 ;
ncomp=2;nrec=1;
m=[1 1]; k=4;
nmax=200;
mstar=2;
kd=k*ncomp;
kdm=kd+mstar;
nsizei=kdm+3;
ip6=nmax*nsizei;
nsizef=4+3*mstar+(5+kd)*kdm+(2*mstar-nrec)*2*mstar;
ip5=nmax*nsizef;
zeta = [0 10];
ipar = [1 0 0 2, ip5, ip6, 0 0 0 0 0];
er=1.0d-3;
ltol=1:2;
tol = [er,er];
dan kita berikan fungsi tebakan awal, yaitu
function w =gs(x)
w = [0,0;0,0];
endfunction.
x
Gambar 3 Optimum y (garis) dan kontrol v (garis-x) untuk contoh 3.
SIMPULAN
DAFTAR PUSTAKA
[1] Ascher U, Christiansen J, Russel RD. 1981. Collocation Software for Boundary-Value
ODEs.ACM Transactions on Mathematical Software. 7(2).
[2] Ascher U, Mattheij RM, Russel RD, Numerical Solution of Boundary Value Problem.New
Jersey: Prentice-Hall, Englewood Cliffs.
[3] Campbell SL. Chancelier JP, Nikoukhah R. 2005.Modeling and Simulation in Scilab/Scicos.
Springer.
[4] Higham DJ, Higham NJ. 2000.MATLABGuide. SIAM.
JMA, VOL. yy, NO.1, JULY 2018, 1-xx
[5] Kierzenka J, Shampine L. 2001. A BVP solver on residual control and the Matlab PSE.ACM
Transactions on Mathematical Software.27(3): 299-316.
[6] Moler CB. 2004.Numerical Computing with MATLAB. SIAM.
[7] S. N. Avvakumov and Yu.N. Kiselev, 2000, Boundary value problem for ordinary
differential equations with applications to optimal control, Spectral and evolution
problems}, V10, pp 147--155
[8] Layar bantuan SCILAB untuk rutin bvode.
[9] Kaas R,Goovaerts M, Dhaene J, Denuit M. 2009.Credibility theory. Modern Actuarial Risk
Theory: Using R.203-229.
[10] Young VR. 1997. Credibility using a loss function from spline theory. Scandinavian
Actuarial Journal. 1997(2): 160-185.