5
2
2.1
TINJAUAN PUSTAKA
Model Sirkulasi Umum (Global Circulation Model/ GCM) Model Sirkulasi Umum merupakan model matematika dari sirkulasi umum
dari atmosfir planet atau lautan secara global dan didasarkan pada persamaan Navier-Strokes pada sphere yang sedang berotasi dengan istilah termodinamika dengan berbagai sumber energi (Ratag 2002 dalam Normakristagaluh 2004). Persamaan-persamaan ini adalah dasar dari komputasi komputer yang kompleks yang umum digunakan untuk mensimulasikan keadaan atmosfir atau laut di Bumi. Atmospheric GCM (AGCM) dan Oceanic GCM (OGCM) merupakan komponen kunci pada Model Iklim Global (Global Climate Mode). GCM dan Global Climate Model secara umum digunakan untuk melakukan proses prakiraan cuaca, pemahamaan terhadap iklim dan proyeksi terhadap perubahan iklim.Model ini menduga perubahan unsur-unsur cuaca secara regional pada grid-grid yang berukuran 3o atau 4o sampai 10o menurut lintang dan bujur, dan dapat digunakan untuk peramalan atau menilai dampak yang mungkin timbul apabila terjadi perubahan di udara, laut, dan daratan. 2.2
Regional Climate Model 3(RegCM3) Regional Climate Model (RegCM) merupakan model yang dikembangkan
dengan perhitungan matematika dan fisika untuk memodelkan iklim. RegCM yang pertama, dikembangkan oleh Dickinson et-al (1989), Grogi dan Bates (1989) dan Grogi (1990) pada National Center for Atmospheric Research (NCAR), dan di maintain di ICTP. Saat ini RegCM adalah versi generasi ke-tiga (RegCM3). RegCM3 merupakan perbaikan dari RegCM2.5 yang dideskripsikan oleh Grogi dan Mearns (1999). Perbaikan meliputi representation of precipitation physics, surface physics, atmospheric chemistry dan aerosols, model input fields, serta user interface. Keuntungan menggunakan RegCM adalah memiliki resolusi yang lebih tinggi dari pada Global Climate Model (GCM), sehingga dapat memodelkan iklim untuk area dengan skala kecil dan bersifat lokal. Model RegCM3 bekerja dengan
6
meniingkatkan reesolusi dari GCM padaa wilayah keecil dan terbbatas. Modeel RegC CM3 dapat menganalis m sis iklim yan ng mencakuup wilayah tertentu t di pulau p Sumaatera atau wilayah w terteentu di pulaau Jawa, seddang GCM digunakan d untuk u mengganalisis ilkkim dalam skala s besar (global). ( Iluustrasi pem metaan grid data d RegC CM3 pada titik obesrvaasi di Bumi dapat dilihaat pada Gam mbar 1.
Gam mbar 1 Ilustrasi permetaaan grid mattriks RegCM M3 pada koordinat observasi di mateprediction.net/conttent/regionaal-climate-m models). Bumi (http://clim
2.3
Curah Hu ujan Beberapa informasi untuk u mengggambarkan keadaan suuatu wilayah h adalah
ng data curah hujann rata-rata taahunan, harri hujan, polla musiman, dan peluan t sanngat bervariaasi menurutt tempat. kejaddian hujan. Curah hujann rata-rata tahunan Di guurun, peneriimaan hujann tahunan berkisar b darii 70 mm perr tahun, sem mentara di beberapa wilayaah tropika basah, curah h hujan dapaat melebihi 4000 4 mm per p tahun. Curah hujan dibatasi sebagai ting ggi air hujann (dalam mm) m yang ditterima di mukaan sebeelum mengaalami aliran permukaann, evaporasi, dan perm peressapan/perem mbesan ke dalam d tanah h (Handoko 1993 dalam m Normakrisstagaluh
7
2004). Jumlah hari hujan umumnya dibatasi dengan jumlah hari dengan curah hujan 0.5 mm atau lebih. Jumlah hari hujan dapat dinyatakan per minggu, dekade, bulan, tahun, atau satu periode tanam (tahap pertumbuhan tanaman), dimana curah hujan rata-ratanya dapat dihitung dengan cara menjumlahkan curah hujan harian hasil pengukuran sesuai dengan periode waktu yang diperlukan dan dibagi dengan periode waktu tersebut (Hidayati 1983 dalam Normakristagaluh 2004). Data hujan mempunyai variasi yang sangat besar dibandingkan unsur-unsur iklim yang lain, baik variasi menurut tempat maupun waktu. Untuk mendapatkan gambaran wilayah diperlukan pengamatan yang cukup panjang dan kerapatan jaringan stasiun pengamatan yang memadai. Curah hujan yang diamati pada stasiun klimatologi meliputi tinggi hujan (curah hujan), jumlah hari hujan, dan intensitas hujan. 2.4
Principal Components Analysis (PCA) PCA atau analisis komponen utama yang disebut juga transformasi
Karhunen-Loeve merupakan suatu teknik untuk mereduksi p peubah (variabel) pengamatan menjadi q peubah baru yang saling ortogonal, dimana masing-masing q peubah baru tersebut merupakan kombinasi linear dari p peubah lama. Pemilihan q peubah baru tersebut sedemikian rupa sehingga keragaman yang dimiliki oleh p peubah lama, sebagian besar dapat diterangkan atau dimiliki oleh q peubah baru. PCA akan cukup efektif jika antar p peubah asal memiliki korelasi yang cukup tinggi (Smith, L.I.,2002). Misalnya diberikan objek pengamatan vektor Grid dengan dimensi p (peubah), Grid=[grid1 grid2 grid3 ... gridp] yang akan direduksi menjadi vektorY=[y1 y2 y3 ... yq ], dimana q <<< p tanpa kehilangan informasi secara berarti, yang dapat dilihat sebagai berikut:
8
⎛ grid1 ⎞ ⎜ ⎟ ⎜grid2 ⎟ T = a grid y1 = a11grid1 + a12grid2 +...+ a1pgridp = (a11 a12 ...a1p) *⎜ M ⎟ ⎜ ⎟ ⎜grid ⎟ ⎝ p⎠ ⎛ grid1 ⎞ ⎜ ⎟ ⎜grid2 ⎟ T = a grid y2 = a21grid1 + a22grid2 +...+ a2pgridp = a21 a22 ...a2p)*⎜ M ⎟ ⎜ ⎟ ⎜grid ⎟ ⎝ p⎠ M ⎛ grid1 ⎞ ⎜ ⎟ ⎜grid2 ⎟ T yq = aq1grid1 + aq2grid2 +...+ aqpgridp = (aq1 aq2 ...aqp) *⎜ = a grid. M ⎟ ⎜ ⎟ ⎜grid ⎟ ⎝ p⎠
Untuk memaksimumkan ragam pada y maka harus dicari nilai a sehingga y = a Σa T
dengan kendala
suatu fungsi
a a = 1. T
Dengan menggunakan pengganda Lagrange dibuat
F = a Σ a − λ ( a a − 1) T
T
yang selanjutnya akan dimaksimumkan dengan
cara menurunkan F terhadap parameter-parameternya dan turunannya sama dengan 0, sehingga diperoleh: δF = 2Σ a − 2λ a = 0 δa Σa = λ a
Dimana Σ adalah matriks peragam (covariance):
⎛ τ 11 ⎜ ⎜ τ 21 Σ=⎜ M ⎜ ⎜τ ⎝ p1 τ jk =
τ 12 τ 22
K
M
K
τ p2
τ 1p ⎞ ⎟ K τ 2p ⎟ K
dengan M ⎟ ⎟ τ pp ⎟⎠
1 p ∑( gridij − grid j )(gridik − grid k ) n − 1 i =1
a adalah vektor ciri (eigenvectors),
λ adalah akar ciri (eigenvalue). Setelah didapatkan matriks covariance Σ selanjutnya akan dicari vektor dan akar ciri yang bersesuaian dengan matriks covariance tersebut, melalui persamaan berikut:
9
Σa = λ a
Σ a − λI a = 0 (Σ − λ I ) a = 0
Dari persamaan tersebut dapat disimpulkan
Σ − λI = 0 ,
dan akan diperoleh
suatu persamaan polinom derajat p di dalam λ. Persamaan polinom tersebut akan memiliki p akar, yaitu
λ1 , λ 2 , L , λ p
yang merupakan akar ciri dari matriks
covariance Σ. Akar-akar ciri tersebut kemudian digunakan untuk menentukan vektor-vektor cirinya. Vektor-vektor ciri tersebut sebagai koefisien komponen utama. Akar-akar ciri dengan vektor ciri yang bersesuaian tersebut kemudian disusun terurut menurun sehingga memenuhi λ1 ≥ λ2 ≥ λ3 ≥ K≥ λ p ≥ 0 . Penentuan proporsi dari nilai vektor-vektor ciri yang digunakan dapat dihitung dengan persamaan: q
Proposi = ∑ λi i =1
n
∑λ i =1
i
Pada akhirnya PCA ini hanyalah akan mentransfer variabel-variabel yang berkorelasi menjadi variabel-variabel yang tidak berkorelasi. Tujuan metode PCA di atas adalah untuk menentukan faktor-faktor yang menunjukkan seluruh kemungkinan variasi pada keseluruhan data melalui sebagian kecil faktor-faktor dari keseluruhan data (Dillon dan Goldstein 1984). 2.5
Regresi Linear Multivariat Di dalam statistika, regresi linear merupakan pendekatan untuk memodelkan
hubungan antara nilai y dengan satu atau sekelompok nilai x. Pada regresi linear, data dimodelkan dengan fungsi linear dan paramater model yang tidak diketahui diestimasi dari data. Model yang sepeti ini yang disebut sebagai linear model (wikipedia, 2010). Jika terdapat himpunan data sebanyak n,
,
,…,
regresi linear mengasumsikan bahwa hubungan antara variabel
, maka model dengan vektor
10
dapat didekati secara linear. Dalam proses mendekati hubungan antara antara dengan vektor
variabel
, terdapat noise yang dilambangkan dengan , yaitu
nilai galat pendekatan linear antara variabel
dengan vektor
. Sehingga model
persamaaan menjadi: , Dimana,
merupakan inner product antara vektor
1, … , dan .
Pada umumnya persamaan sebanyak n ini disatukan dalam bentuk vektor,seperti: Dimana … , Nilai konstanta
2.6
,
…
,
dapat diselesaikan dengan persamaan:
Ketepatan Pendugaan Model Regresi Linear Ketepatan atau keakuratan sebuah model regresi dapat dilihat dari koefisien
determinasi (R2) dan Root Mean Square Error (RMSE). R2 menunjukkan proporsi jumlah kuadrat total yang dapat dijelaskan oleh sumber keragaman peubah bebas, sedangkan RMSE menunjukkan seberapa besar simpangan nilai dugaan terhadap nilai aktualnya. Kita juga dapat menunjukkan bahwa R2 adalah kuadrat dari korelasi antara nilai vektor observasi (the vector of observations) y dengan nilai vektor penduganya (the vector of fitted values) ŷ (Douglas dan Elizabeth 1992 dalam Normakristagaluh 2004). Menurut Walpole (1982) R2 dan RMSE dirumuskan sebagai berikut:
R
2
=
⎡ n ⎤ ⎢ ∑ ( yˆ i − yˆ )( y i − y ) ⎥ ⎣ i =1 ⎦ n
∑
i =1
2
n
( yˆ i − yˆ ) 2 ∑ ( y i − y ) 2 i =1
dimana: yi = nilai-nilai aktual, ŷi = nilai-nilai prediksi.
11
n
RMSE
=
∑ (X t =1
t
− Ft ) 2
n
dimana: Xt = nilai akttual pada waktu w ke-t, Ft = nilai duggaan pada waktu w ke-t Nilaai R2 beradaa pada selanng 0 sampai 1. Kecocok kkan model dikatakan semakin baik b jika R2 mendekati 1 dan RMS SE mendekaati 0. 2.7
K-fo old Cross Validation V K-foold cross validation meerupakan sallah satu varriasi dari crooss validatioon.
Inti validaasi tipe ini adalah a memb bagi data seecara acak ke k dalam k himpunan h bagian. Dari D k himpuunan bagiann tersebut diipilih satu himpunan h baagian menjaadi data uji daan (k-1) dijaadikan data latih. Prosees ini dilakuukan berulan ng sebanyakk k, dimana seetiap k himppunan bagiann yang ada menjadi daata uji dan sisanya s mennjadi data latih ( Refaeilzaddeh P., Tangg L., Liu H.., 2008). Naamun, secarra teori tidakk ada tolak ukurr yang pasti untuk nilai k.
Gambaar 2 Ilustrasii pembagiann kelompokk data latih dan d uji padaa k-cross validatioon (k=6).
untungan meenggunakann k-fold crosss validation n dibanding gkan dengann Keu variasi crooss validatioon seperti Repeated R ranndom sub-ssampling validation adaalah
12
semua data digunakan baik untuk data uji maupun data latih. Ilustrasi proses validasi dapat dilihat pada Gambar 3. 2.8
Metode Perancangan Program Paralel Beberapa masalah pemorgraman dapat diselesaikan dengan pendekatan
paralel. Pendekatan dengan algoritma paralel yang digunakan dapat saja berbeda dengan algoritma sekuensialnya. Metode desain ini merupakan pendekatan eksplorasi yang perancangannya bebas dari implementasi mesinnya (machineindependent). Menurut Foster (1995), metode untuk merancang proses dengan pendekatan paralel dapat menjadi dibagi empat tahapan: dekomposisi (decomposition/parition), komunikasi (communication), aglomerasi (agglomeration) dan pemetaan (mapping). Keempat proses tersebut dapat digambarkan pada Gambar 4. 2.8.1 Dekomposisi Merupakan proses memecahkan proses komputasi menjadi komponenkomponen task kecil. Hal ini dilakukan melihat kemungkinan-kemungkinan melakukan eksekusi paralel. 2.8.2 Komunikasi Proses ini dibutuhkan untuk menentukan komunikasi yang dibutuhkan untuk mengkoordinasi pelaksaan komponen task kecil dan menentukan struktur komunikasi yang teoat sesuai dengan algoritma yang didefinisikan sebelumnya. 2.8.3 Aglomerasi Struktur komponen task kecil dan komunikasi yang telah ditentukan pada kedua tahap sebelumnya dievaluasi pada tahap ini yang menyesuaikan hasil evaluasi dengan kebutuhan kinerja dan biaya implementasi. Jika diperlukan, komponen task kecil dapat digabungkan menjadi task yang lebih besar untuk meningkatkan kinerja atau mengurangi biaya pengembangan. 2.8.4 Pemetaan Setiap task yang telah diaglomerasi dipetakan pada unit-unit prosesor dengan mempertimbangkan tujuan untuk memaksimalkan utilisasi prosesor dan mengurangi biaya komunikasi.
13
p n pemrogram man paralel (Foster, 1995). Gambar 3 Ilustrasi metodologi perancangan 2.9
Pem mrograman n Paralelism me secara Im mplisit karakteristiik dalam bahhasa Pem mrograman paralel p secarra implisit merupakan m
pemrogram man yang memungkink m kan sebuah compiler attau interpretter secara otomatis memanfaatk m kan komputaasi paralel yang y melekaat pada kom mputasi yangg diekspresiikan pada beeberapa barris kode pem mrograman. Bahasa pem mrogramann yang murni mem makai pemrrograman seecara implissit adalah peemrogramann paralel yaang tidak menggunakan innstruksi, opperasi atau fungsi f khusuus secara ekksplisit untuuk mengeksekusi sebuahh program secara paraleel. Beberapa bahasa peemrogramann paralel seccara implisist: Axum, HPF, H LabViiew, MATL LAB M-code, NESL, SISAL dan n ZPL. Keu untungan meenggunakann pemrogram man secara implisit adaalah program mer tidak perlu u memperhaatikan pemb bagian tugas dan proses komunikaasi yang terjjadi di dalam program. p Seehingga, lebbih fokus meemperhatikaan permasallahan yang akan diselesaikaan dengan menggunak m an program m yang sedanng dikembaangkan. Denngan demikian, diharapkann dapat menningkatkan produktivita p as programeer.
14
Namun, paralelisme secara implisit juga memiliki kelemahan. Programer yang menggunakan bahasa pemrograman dengan paralelisme secara implisit, memiliki keterbatasan dalam mengendalikan eksekusi komputasi paralel pada program. Terkadang hal ini menghasilkan efesiensi parelel yang kurang optimal. Pada umumnya pendekataan secara implisit ini dilakukan untuk Single Instruction Multiple Data (SIMD), dimana instruksi program yang akan dijalankan sama dilakukan untuk data yang berbeda (Grama et-al, 2003). 2.10 Ukuran Kinerja pada Komputasi Paralel Mengamati dan mempelajari kinerja suatu program parlel dengan menentukan algoritma terbaik, mengevaluasi platform perangkat keras, dan menganalisis keuntungan dari metode komputasi paralel merupakan hal yang penting dalam pengembangan komputasi paralel (Grama et-al, 2003). Ada beberapa matriks ukuran yang digunakan untuk menganalisis kinerja sebuah komputasi paralel: 2.10.1 Execution Time Runtime secara serial pada sebuah program adalah selisih antara waktu dimulai sampai selesai yang diperlukan sebuah program dijalankan secara serial. Runtime secara paralel adalah waktu dimulai sampai selesai yang diperlukan sebuah program pada komputasi paralel. Runtime secara serial dilambangkan dengan
dan runtime secara paralel dilambangkan dengan
.
2.10.2 Total Parallel Overhead Total Parallel Overhead pada sebuah sistem paralel didefinisikan sebagai total waktu yang diperlukan untuk elemen-elemen pemrosesan di atas atau lebih yang dibutuhkan oleh sebuah algoritma sekuensial terbaik untuk memecahkan masalah yang sama pada sebuah elemen pemrosesan. Total overhead atau fungsi overhead pada sistem paralel dilambangkan dengan
.
Waktu total yang dibutuhkan untuk menyelesaikan sebuah masalah pada elemen-elemen adalah sebagai overhead.
. Dan selisih waktu dengan waktu serial yang disebut .
15
2.10.3 Speedup Speedup merupakan rasio perbandingan antara waktu yang dibutuhkan sebuah program dijalankan secara serial dengan waktu yang dibutuhkan sebuah prgram dijalankan secara paralel. Speedup dilambangkan dengan S. Dimana, . 2.10.4 Efesiensi Efesiensi (Effeciency) adalah untuk mengukur perbandingan antara Speedup dengan jumlah elemen proses yang digunakan pada komputasi paralel. Dilambangkan dengan E. Dimana,
.