PERBANDINGAN METODE RUNGE-KUTTA ORDE EMPAT DAN
METODE ADAMS-BASHFORTH ORDE EMPAT DALAM PENYELESAIAN
MASALAH NILAI AWAL ORDE SATU
Lilik Prasetiyo Pratama
Jurusan Matematika, FMIPA UNS
1.
LATAR BELAKANG
Tidak semua persamaan diferensial biasa dapat ditentukan penyelesaian eksaknya. Oleh
karena itu, diperlukan suatu metode untuk menjelaskan penyelesaian tersebut.
Salah satu
metode tersebut adalah metode numerik. Metode numerik yang digunakan untuk memperoleh
penyelesaian masalah nilai awal dapat berupa metode satu step maupun multistep. Dikatakan
metode satu step jika penyelesaian di titik
x
=
x
ndiperoleh berdasarkan penyelasaian di titik
sebelumnya,
x
=
x
n−1. Jika dibutuhkan penyelesaian di beberapa titik sebelumnya, disebut
metode multistep.
Salah satu metode satu step adalah metode Runge-Kutta dam salah satu metode multistep
adalah Adams-Bashforth. Karena penyelesaian yang diperoleh dengan metode numerik adalah
penyelesaian pendekatan serta dalam proses mendapatkan penyelesaian pendekatan
membu-tuhkan waktu, maka terdapat eror dan lama waktu proses. Oleh karena itu, perlu diteliti
keakuratan dan efisiensi metode Runge-Kutta dan Adams-Bashforth, khususnya orde 4.
2.
PERUMUSAN MASALAH
Dari latar belakang dapat dirumuskan tiga masalah, yaitu
(1) bagaimana menurunkan ulang algoritma Runge-Kutta orde empat dan Adams-Bashforth
orde empat,
(2) bagaimana menerapkan algoritma Runge-Kutta orde empat dan Adams-Bashforth orde
empat pada suatu kasus, dan
(3) bagaimana keakuratan dan efisiensi metode Runge-Kutta orde empat dan Adams-Bashforth
orde empat.
3.
TUJUAN
Tujuan penulisan artikel ini adalah
(1) dapat menurunkan ulang algoritma Runge-Kutta orde empat dan Adams-Bashforth orde
empat,
(2) dapat menerapkan algoritma Runge-Kutta orde empat dan Adams-Bashforth orde empat
pada suatu kasus, dan
(3) dapat mengetahui keakuratan dan efisiensi metode Runge-Kutta orde empat dan
Adams-Bashforth orde empat.
4.
PEMBAHASAN
Dalam penulisan ini, penurunan algoritma Runge-Kutta orde empat mengacu pada Gear
[3]. Sedangkan penurunan algoritma Adams-Bashforth orde empta mengacu pada Burden dan
Faires [2] dan Gear [3].
4.1.
Metode Runge-Kutta Orde Empat.
Bentuk umum metode Runge-Kutta orde empat
adalah:
y
n+1=
y
n+
h
(
c
1k
1+
c
2k
2+
c
3k
3+
c
4k
4)
for
n
= 0
,
1
,
2
, . . .
k
1=
f
(
x
n, y
n)
k
2=
f x
n+
µh, y
n+
hµk
1k
3=
f
(
x
n+
λh, y
n+
ρhk
2+ (
λ
−
ρ
)
hk
1)
k
4=
f
(
x
n+
νh, y
n+
σhk
3+
τ hk
2+ (
ν
−
σ
−
τ
)
hk
1)
.
Terdapat sepuluh konstanta
c
1, c
2, c
3, c
4, µ, λ, ρ, ν, σ
dan
τ
yang harus ditentukan sehingga eror
pemotongan lokalnya
O
(
h
4) dan eror globalnya
O
(
h
5). Dalam kasus ini diperoleh delapan
persamaan dengan sepuluh variabel:
c
1+
c
2+
c
3+
c
4= 1
,
µc
2+
λc
3+
νc
4=
1
2
,
µ
2c
2+
λ
2c
3+
ν
2c
4=
1
3
,
µρc
3+ (
λσ
+
µτ
)
c
4=
1
6
,
µ
3c
2+
λ
3c
3+
ν
3c
4=
1
4
,
µ
2ρc
3+ (
λ
2σ
+
µ
2τ
)
c
4=
1
12
,
σµρc
4=
1
24
,
µλρc
3+ (
λσ
+
µτ
)
νc
4=
1
8
.
Karena ada delapan persamaan dan sepuluh variabel, maka terdapat banyak sekali
penyele-saian. Jika setiap variabel dinyatakan dalam
µ
dan
λ
dan dipilih
µ
=
λ
=
12, maka diperoleh
ρ
=
1
6
c
3,
τ
= 1
−
3
c
3,
ν
= 1
, c
1=
1
6
,
c
2=
2
3
−
c
3,
c
4=
1
6
.
Jika nilai
c
3=
13, diperoleh metode Runge-Kutta orde empat:
y
n+1=
y
n+
h
6
(
k
1+ 2
k
2+ 2
k
3+
k
4)
for
n
= 0
,
1
,
2
, . . .
k
1=
f
(
x
n, y
n)
k
2=
f
(
x
n+
h
2
, y
n+
h
2
k
1)
k
3=
f
(
x
n+
h
2
, y
n+
h
2
k
2)
k
4=
f
(
x
n+
h, y
n+
hk
3)
4.2.
Metode Adams-Bashforth Orde Empat.
Metode Adams-Bashforth diturunkan
de-ngan mengintegralkan persamaan diferensial biasa,
y
0=
f
(
x, y
) =
f
(
x, y
(
x
))
pada interval [
x
n−1, x
n], diperoleh
y
(
x
n) =
y
(
x
n−1) +
Z
xnxn−1
f
(
x, y
(
x
))
dx.
(4.1)
Diperhatikan polinomial berderajat
k
−
1,
p
k−1(
x
), yang menginterpolasi fungsi
f
(
x, y
(
x
))
pada persamaan (4.1) melalui titik-titik
x
n−1,
x
n−2,
. . .
, dan
x
n−k. Dengan menggunakan
bentuk selisih mundur Newton diperoleh polinomial interpolasi
p
k−1(
x
) =
k−1X
i=0∇
if
n−1i
!
h
i i−1Y
j=0(
x
−
x
n−1−j)
.
(4.2)
Dari polinomial interpolasi (4.2), terdapat suatu bilangan
ξ
n−1pada (
x
n−k, x
n−1) dengan
f
(
x, y
(
x
)) =
p
k−1(
x
) +
f
(k)(
ξ
n−1, y
(
ξ
n−1))
k
!
k−1Y
j=0(
x
−
x
n−1−j)
.
(4.3)
Dimisalkan
x
=
x
n+
sh
, dengan
dx
=
hds
, dan dengan menggunakan definisi fungsi binomial
1
i
!
h
i i−1Y
j=0(
x
−
x
n−1−j) =
i−1Y
j=0s
+
j
i
!
= (−1)
i−
s
i
,
polinomial interpolasi (4.2) menjadi
p
k−1(
x
) =
k−1X
i=0(−1)
i−
s
i
∇
if
n−1.
(4.5)
Dengan memperhatikan persamaan (4.3) dan (4.5), persamaan (4.1) menjadi
y
(
x
n) =
y
(
x
n−1) +
"
Z
xn xn−1 k−1X
i=0(
−
1)
i−
s
i
!
∇
if
n−1dx
+
Z
xn xn−1f
(k)(
ξ
n−1, y
(
ξ
n−1))
k
!
k−1Y
j=0(
x
−
x
n−1−j)
dx
#
=
y
(
x
n−1) +
h
k−1X
i=0(
−
1)
i∇
if
n−1Z
1 0−
s
i
!
ds
+
h
k+1k
!
Z
1 0 k−1Y
j=0(
x
−
x
n−1−j)
f
(k)(
ξ
n−1, y
(
ξ
n−1))
ds.
Jika (
−
1)
iR
1 0−s i
ds
dievaluasi dengan
i
= 0
,
1
,
2
, . . . , k
−
1 dan
y
(
x
n)
≈
y
nserta
y
(
x
n−1) =
y
n−1,
diperoleh
y
n=
y
n−1+
h
1 +
1
2
∇
+
5
12
∇
2+
3
8
∇
3+
. . .
+ (
−
1)
iZ
1 0−
s
i
!
ds
∇
k−1!
f
n−1,
(4.6)
dengan eror lokal
T
n=
h
k+1k
!
Z
1 0 k−1Y
j=0(
x
−
x
n−1−j)
f
(k)(
ξ
n−1, y
(
ξ
n−1))
ds.
Ambil
i
= 3, maka persamaan (4.6) menjadi
y
n=
y
n−1+
h
(1 +
1
2
∇
+
5
12
∇
2+
3
8
∇
3)
f
n−1.
(4.7)
Menurut Gear [3], selisih mundur dapat diekspresikan sebagai nilai fungsi di titik-titik sebelumnya,
yaitu
∇
qf
n−1=
qX
j=0(
−
1)
jq
j
!
f
n−1−j.
Akibatnya persamaan (4.7) menjadi
y
n=
y
n−1+
h
24
(55
f
n−1−
57
f
n−2+ 37
f
n−3−
9
f
n−4)
,
n
= 4
,
5
,
6
, . . .
yang merupakan metode Adams-Bashforth orde empat.
4.3.
Estimasi Eror.
Jika penyelesaian eksak masalah nilai awal tidak diketahui, maka eror perlu
di-estimasi dan digunakan ide ekstrapolasi Richardson untuk mengdi-estimasi eror (Apsley, [1]). Ide dari
ekstrapolasi RIchardson adalah menghitung eror global pada iterasi ke-
n
dengan mengambil ukuran
step
h
,
y
(
x
)
−
y
n(
h
), dan 2
h
,
y
(
x
)
−
y
n(2
h
). Selanjutnya kedua eror tersebut digunakan untuk
menges-timasi eror penyelesaian dengan ukuran step
h
.
Jika orde dari algorita yang diterapkan adalah
k
maka berlaku
y
(
x
)
−
y
n(
h
)
≈
O
(
h
k)
(4.8)
dan
y
(
x
)
−
y
n(2
h
)
≈
2
kO
(
h
k)
.
(4.9)
Persamaan (4.8) dikalikan dengan 2
kdan dikurangi dengan (4.9), diperoleh
y
(
x
)
−
y
n(
h
)
≈
1
2
k−
1
(
y
n(
h
)
−
y
n(2
h
))
.
(4.10)
Dari persamaan (4.10), maka estimasi eror penyelesaian dengan ukuran step
h
menggunakan algoritma
berorde
k
adalah
1(
y
(
h
)
−
y
(2
h
)).
5.
PENERAPAN KASUS
Kasus 5.1.
Diberikan masalah nilai awal
y
0=
2
x
y
+
x
2e
x,
1
≤
x
≤
2
,
y
(1) = 0
.
(5.1)
Masalah nilai awal (5.1) memiliki penyelesaian eksak
y
(
x
) = (
−
e
+
e
x)
x
2.
Masalah nilai awal (5.1) diselesaikan dengan metode Runge-Kutta dan Adams-Bashforth orde empat
dengan ukuran step
h
= 0
.
05, 0.025, 0.0125, dan 0.00625. Karena penyelesaian eksaknya diketahui,
maka eror dapat ditentukan dengan mudah. Eror mutlak penyelsaian yang terjadi ditunjukkan pada
Tabel 1 dan 2.
Tabel 1. Eror mutlak yang terjadi di lima titik, jika digunakan metode Runge-Kutta orde empat untuk
masalah nilai awal (5.1)
x
h
= 0
.
05
h
= 0
.
025
h
= 0
.
0125
h
= 0
.
00625
1.2
1
.
46608
×
10
−69
.
72005
×
10
−86
.
25675
×
10
−93
.
96844
×
10
−101.4
3
.
36821
×
10
−62
.
22485
×
10
−71
.
42949
×
10
−89
.
05837
×
10
−101.6
5
.
70824
×
10
−63
.
76061
×
10
−72
.
41308
×
10
−81
.
5281
×
10
−91.8
8
.
49846
×
10
−65
.
58772
×
10
−73
.
58197
×
10
−82
.
26714
×
10
−92.0
1
.
17557
×
10
−57
.
71724
×
10
−74
.
94326
×
10
−83
.
12744
×
10
−9Tabel 2. Eror mutlak yang terjadi di lima titik, jika digunakan metode Adams-Bashforth orde empat
untuk masalah nilai awal (5.1)
x
h
= 0
.
05
h
= 0
.
025
h
= 0
.
0125
h
= 0
.
00625
1.2
1
.
05098
×
10
−51
.
83039
×
10
−61
.
54097
×
10
−71
.
09364
×
10
−81.4
7
.
27928
×
10
−56
.
31205
×
10
−64
.
54933
×
10
−73
.
04141
×
10
−81.6
1
.
69735
×
10
−41
.
31604
×
10
−59
.
09597
×
10
−75
.
96966
×
10
−81.8
3
.
11111
×
10
−42
.
29936
×
10
−51
.
55769
×
10
−61
.
0129
×
10
−72.0
5
.
08352
×
10
−43
.
65617
×
10
−52
.
44726
×
10
−61
.
58234
×
10
−7Orde dari kedua metode dapat ditunjukkan dengan menghitung rasio eror mutlak
eror
heror
h/2dengan
h
= 0
.
05, 0.025, dan 0.0125 untuk masing-masing metode di titik yang sama. Hasil perhitungan dapat
dilihat pada Gambar 1, dengan garis hitam untuk
h
= 0
.
05, hitam tebal untuk
h
= 0
.
025, dan hitam
putus-putus untuk
h
= 0
.
0125.
1.2 1.4 1.6 1.8 2. x 15 15.5 RasioErorRK4 1.2 1.4 1.6 1.8 2. x 6 8 10 12 14 RasioErorAB4Gambar 1. Rasio eror mutlak
h
dan
h/
2 di lima titik, berturut-turut dengan metode Runge-Kutta
(kiri) dan Adams-Bashforth (kanan) orde empat.
Dari Gambar 1 terlihat bahwa untuk pengambilan
h
= 0
.
05, 0.025, dan 0.0125, rasio eror mutlak
eror
heror
h/2≈
16. Hal ini menunjukkan bahwa orde dari algoritma yang diterapkan adalah empat.
Tabel 1 dan 2 menunjukkan bahwa pada ukuran step
h
yang sama, eror mutlak penyelesaian
de-ngan metode Runge-Kutta orde empat lebih kecil dibandingkan dede-ngan metode Adams-Bashforth orde
empat. Keakuratan kedua metode dapat dibandingkan dengan menghitung rasio eror mutlak
eror
AB4eror
RK4pada setiap pengambilan
h
di titik yang sama. Hasil perhitungan rasio ini dapat dilihat pada
Gam-bar 2, dengan garis hitam untuk
h
= 0
.
05, hitam tebal untuk
h
= 0
.
025, hitam putus-putus untuk
h
= 0
.
0125, dan hitam tebal putus-putus untuk
h
= 0
.
00625.
1.2 1.4 1.6 1.8 2. x 10
30 50 RasioRK4_AB4
Gambar 2. Rasio eror mutlak Runge-Kutta dan Adams-Bashforth orde empat untuk berbagai nilai
h
.
Gambar 2 menunjukkan bahwa untuk pengambilan
h
= 0
.
05, 0.025, 0.0125, dan 0.00625, semakin
kecil ukuran step
h
maka rasio eror mutlak
eror
AB4eror
RK4≈
50. Hal ini menunjukkan bahwa pada orde
empat, keakuratan Runge-Kutta adalah 50 kali metode Adams-Bashforth. Dapat disimpulkan, pada
orde empat, metode Runge-Kutta lebih akurat daripada metode Adams-Bashforth.
Efisiensi dapat dibandingkan dengan menghitung lama waktu program berjalan hingga diperoleh
penyelesaian pendekatan. Hasil perhitungan lama waktu dapat dilihat pada Tabel 3.
Tabel 3. Lama waktu proses dengan menggunakan metode Runge-Kutta dan metode Adams-Bashforth
orde empat dengan ukuran step
h
= 0
.
05, 0.025, 0.0125, dan 0.00625
h
0.05
0.025
0.0125
0.00625
Runge-Kutta orde 4
0.
0.
0.016
0.016
Adams-Bashforth orde 4
0.
0.
0.
0.015
Tabel 3 menunjukkan bahwa pada ukuran step
h
yang sama, dengan
h
= 0
.
05, 0.025, 0.0125, dan
0.00625, lama waktu proses program Adams-Bashforth orde empat lebih cepat daripada Runge-Kutta
orde empat. Dapat disimpulkan, pada orde empat, metode Adams-Bashforth lebih efisien daripada
metode Runge-Kutta.
Kasus 5.2.
Diberikan masalah nilai awal,
y
0= 2
yx
2+ 4
,
0
≤
x
≤
1
,
y
(0) = 1
(5.2)
dengan penyelesaian eksak tidak diketahui.
Masalah nilai awal (5.2) diselesaikan menggunakan metode Runge-Kutta dan Adams-Bashforth
orde empat dengan pengambilan
h
= 0
.
01, 0.005, 0.0025, dan 0.00125. Karena penyelsaian eksak tidak
diketahui, maka dihitung estimasi eror penyelesaian pendekatan masalh nilai awal (5.1) menggunakan
persamaan (4.10) dengan
k
= 4. Hasil dapat dilihat pada Tabel 4 dan 5.
Tabel 4. Estimasi eror mutlak yang terjadi di lima titik, jika digunakan metode Runge-Kutta orde
empat untuk masalah nilai awal (5.2)
x
h
= 0
.
01
h
= 0
.
005
h
= 0
.
0025
h
= 0
.
00125
0.2
1
.
00909
×
10
−115
.
92548
×
10
−133
.
5838
×
10
−142
.
25005
×
10
−150.4
7
.
31522
×
10
−114
.
44749
×
10
−122
.
74033
×
10
−131
.
68458
×
10
−140.6
2
.
34259
×
10
−101
.
43221
×
10
−118
.
84981
×
10
−135
.
45934
×
10
−140.8
6
.
45591
×
10
−103
.
93365
×
10
−112
.
42496
×
10
−121
.
4951
×
10
−131.0
3
.
26739
×
10
−92
.
0118
×
10
−101
.
24677
×
10
−117
.
7307
×
10
−13Tabel 5. Estimasi eror mutlak yang terjadi di lima titik, jika digunakan metode Adams-Bashforth orde
empat untuk masalah nilai awal (5.2)
x
h
= 0
.
01
h
= 0
.
005
h
= 0
.
0025
h
= 0
.
00125
0.2
4
.
67395
×
10
−65
.
26968
×
10
−76
.
22673
×
10
−87
.
55733
×
10
−90.4
4
.
9679
×
10
−65
.
55097
×
10
−76
.
51684
×
10
−87
.
87897
×
10
−90.6
5
.
8923
×
10
−66
.
41212
×
10
−77
.
38759
×
10
−88
.
83151
×
10
−90.8
8
.
41693
×
10
−58
.
65814
×
10
−79
.
55323
×
10
−81
.
11123
×
10
−81.0
1
.
59121
×
10
−51
.
49251
×
10
−61
.
51566
×
10
−71
.
6622
×
10
−8Orde dari kedua metode dapat ditunjukkan dengan menghitung rasio estimasi eror mutlak
esteror
hesteror
h/2dengan
h
= 0
.
01, 0.005, dan 0.0025 untuk masing-masing metode di titik yang sama. Hasil perhitungan
dapat dilihat pada Gambar 3, dengan garis hitam untuk
h
= 0
.
01, hitam tebal untuk
h
= 0
.
005, hitam
putus-putus untuk
h
= 0
.
0025.
0.2 0.4 0.6 0.8 1. x 16. 16.5 17. RasioEstErorRK4 0.2 0.4 0.6 0.8 1. x 9. 10. 10.5 RasioEstErorAB4Gambar 3. Rasio estimasi eror mutlak
h
dan
h/
2 di limat titik, berturut-turut dengan metode
Runge-Kutta (kiri) dan Adams-Bashforth (kanan) orde empat.
Dari Gambar 3 terlihat bahwa untuk pengambilan
h
= 0
.
01, 0.005, dan 0.0025 rasio estimasi eror
mutlak
esteror
hesteror
h/2≈
16. Hal ini menunjukkan bahwa orde dari algoritma yang diterapkan adalah
empat.
Tabel 4 dan 5 menunjukkan bahwa pada ukuran step
h
yang sama, estimasi eror mutlak penyelesaian
dengan metode Runge-Kutta orde empat lebih kecil dibandingkan dengan metode Adams-Bashforth
orde empat. Hal ini menunjukkan bahwa pada orde empat, pada orde empat, metode Runge-Kutta
lebih akurat daripada metode Adams-Bashforth.
Efisiensi dapat dibandingkan dengan menghitung lama waktu program berjalan hingga diperoleh
penyelesaian pendekatan. Hasil perhitungan lama waktu dapat dilihat pada Tabel 3.
Tabel 6. Lama waktu proses dengan menggunakan metode Runge-Kutta dan metode Adams-Bashforth
orde empat dengan ukuran step
h
= 0
.
01, 0.005, 0.0025, dan 0.00125
h
0.01
0.005
0.0025
0.00125
Runge-Kutta orde 4
0.
0.
0.015
0.031
Adams-Bashforth orde 4
0.
0.
0.
0.015
Tabel 6 menunjukkan bahwa pada ukuran step
h
yang sama, dengan
h
= 0
.
01, 0.005, 0.0025, dan
0.00125, lama waktu proses program Adams-Bashforth orde empat lebih cepat daripada Runge-Kutta
orde empat. Dapat disimpulkan, pada orde empat, metode Adams-Bashforth lebih efisien daripada
metode Runge-Kutta.
6.
KESIMPULAN
Dari pembahasan dan penerapan kasus, diperoleh kesimpulan
(1) Algoritma Runge-Kutta orde empat adalah
y
n+1=
y
n+
h
6
(
k
1+ 2
k
2+ 2
k
3+
k
4)
for
n
= 0
,
1
,
2
, . . .
k
1=
f
(
x
n, y
n)
k
2=
f
(
x
n+
h
2
, y
n+
h
2
k
1)
k
3=
f
(
x
n+
h
2
, y
n+
h
2
k
2)
k
4=
f
(
x
n+
h, y
n+
hk
3)
dan algoritma Adams-Bashforth orde empat adalah
y
n=
y
n−1+
h
24
(55
f
n−1−
57
f
n−2+ 37
f
n−3−
9
f
n−4)
,
n
= 4
,
5
,
6
, . . . ,
(2) pada orde empat, metode Runge-Kutta lebih akurat dibandingkan metode Adams-Bashforth,
(3) pada orde empat, metode Adams-Bashforth lebih efisien daripada metode Runge-Kutta.
Pustaka
[1] Apsley, D.,Initial Value Problem, http://personalpages.umist.ac.uk/staff/david.d.apsley/lectures/numeric/initial-value.pdf
[2] Burden, R. L. and Faires, J. D.,Numerical Analysis, Brooks/Cole, California, 2001.
[3] Gear, J. A.,Numerical Solution of Ordinary Differential Equation, Royal Melbourne Institute of Technology Ltd, Melbourne, 1992.
Jurusan Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam, UNS, Jl. Ir. Sutami 36A,
Kentingan, Surakarta, 57126