KAJIAN KOMPUTASI PARALEL PADA ALGORITMA TREE BASED OF CONSISTENCY OBJECTIVE FUNCTION FOR EVALUATION ALIGNMENT

Ukuran: px
Mulai penontonan dengan halaman:

Download "KAJIAN KOMPUTASI PARALEL PADA ALGORITMA TREE BASED OF CONSISTENCY OBJECTIVE FUNCTION FOR EVALUATION ALIGNMENT"

Transkripsi

1 KAJIAN KOMPUTASI PARALEL PADA ALGORITMA TREE BASED OF CONSISTENCY OBJECTIVE FUNCTION FOR EVALUATION ALIGNMENT (T-COFFEE) DALAM MASALAH MULTIPLE SEQUENCE ALIGNMENT Muhammad Fauzan 1, Gatot Fatwanto Hertono 2 1 Departemen Matematika, FMIPA UI, Kampus UI Depok Departemen Matematika, FMIPA UI, Kampus UI Depok, muhammad.fauzan@sci.ui.ac.id, 2 gfh308@gmail.com ABSTRAK Tree Based Of Consistency Objective Function For Evaluation Alignment (T-COFFEE) merupakan algoritma untuk menyelesaikan permasalahan multiple sequence alignment (MSA). Algoritma ini menggabungkan dua teknik, pertama Tree Based yang merupakan Progressive Alignment dan kedua Consistency Objective Function berupa extending library. Pada pembahasan tulisan ini akan digunakan data sequence dari database ensembl yang terdiri dari database DNA atau protein yang akan diproses dengan global alignment (Needleman-Wunsch) dan local alignment (Smith- Waterman) dengan harapan informasi yang dihasilkan pada akhir pensejajaran akan menggambarkan hasil penyejajaran yang optimal. Proses pembentukan primary dan extended library pada T-COFFEE membutuhkan waktu lama sehingga untuk mempercepat waktu proses T-COFFEE digunakan teknik komputasi paralel Graphic Processing Unit (GPU). Tulisan ini akan menjelaskan algoritma T-COFFEE, algoritma paralel T-COFFEE, serta mengukur efisiensi dari kedua algoritma tersebut. ABSTRACT Tree Based Of Consistency Objective Function For Evaluation Alignment (T-COFFEE) is an algorithm to solve the problem of multiple sequence alignment (MSA). This algorithm combines two techniques, first is Tree- Based with Progressive Alignment and second is Consistency of Objective Function by extending library. In this skripsi, we use the data from the ensembl database that consisting of DNA or protein data. Those data will be processed by the global alignment (Needleman-Wunsch) and local alignment (Smith-Waterman) that is expected to give optimal alignment result at the end of the alignment process. The generating of Primary and Extended Library is the most time consuming, hence to speed up the T-COFFEE process, a parallel version of T-COFFEE algorithm is needed by implementing parallel computing on Graphic Processing Unit (GPU). In this skripsi, the T-COFFEE algorithm, the parallel T-COFFEE algorithm, and the measurement of their speed up and efficiency will be discuss. Keywords : T-COFFEE, Primary Library, Exttended Library, Parallel T-COFFEE 5 Universitas Indonesia

2 Pendahuluan Bioinformatik adalah salah satu ilmu yang mempelajari bidang pengetahuan yang mencakup ilmu matematika, komputer, dan biologi, serta terkait dengan ilmu statistik, dan biokimia [1] Salah satu pembahasan yang penting dalam bioinformatika adalah permasalahan multiple sequence alignment (MSA) [1]. MSA memerlukan teknik-teknik penyejajaran barisan untuk mengolah basis data DNA dan protein. Dalam bioinformatika, proses MSA merupakan proses untuk mencari kemiripan antar semua barisan pada suatu basis data barisan DNA atau protein. Penyejajaran barisan DNA atau protein merupakan proses pengaturan barisan-barisan DNA atau protein sehingga dapat terlihat kesamaan pada dua atau lebih barisan tersebut [1]. Informasi tersebut dapat digunakan untuk penelitian lebih lanjut, misalnya mengidentifikasi hubungan evolusi pada suatu spesies. Kemiripan dua barisan DNA atau protein dapat diidentifikasi melalui skor kemiripan yang didapat dari penyejajaran barisan [1]. Pesatnya peningkatan banyak barisan dalam database DNA atau protein menjadi salah satu tantangan dalam proses penyejajaran di masa yang akan datang sehingga dibutuhkan langkahlangkah yang lebih efisien untuk menyelesaikan permasalahan ini. Salah satu algoritma MSA yang telah digunakan adalah algoritma T-COFFEE (Tree based Consistance of Objective Function For Evaluation alignment). Dibandingkan dengan algoritma ClustalW, MUSCLE, ProbCons, dan FSA, algoritma ini memberikan jaminan hasil yang akurat namun membutuhkan waktu yang lebih lama dalam prosesnya sebagai contoh data yang besar seperti database DNA atau Protein [7]. Hal ini menimbulkan ide untuk mempercepat proses komputasinya melalui komputasi paralel GPU. TINJAUAN TEORITIS Pada bagian ini akan dibahas dasar-dasar teori terkait biologi molekuler, sequence alignment, progressive alignment, dan komputasi paralel yang akan digunakan pada bab-bab selanjutnya. Biologi Molekuler merupakan ilmu yang mempelajari fungsi dan jasad hidup atau organisme ditinjau dari struktur dan komponen penyusunnya[11] serta mengkajinya dalam skala molekul. Sebagai contoh pada interaksi dan pengaturannya pada berbagai sistem dalam sel, termasuk DNA (deoxyiribonucleic acid), RNA (ribonucleic acid), dan sintesis protein [10].

3 Dynamic Programming merupakan sebuah algoritma pemecahan masalah dengan cara menguraikan solusi menjadi sekumpulan langkah (step) atau tahapan (stage) sedemikian sehingga solusi dari persoalan dapat dipandang dari serangkaian keputusan yang saling berkaitan Dalam menyelesaikan permasalahan dengan dynamic programming, dapat digunakan 2 pendekatan berbeda yaitu 1. Maju (forward atau up-down) : bergerak mulai dari tahap 1, terus maju ke tahap 2, 3,.., n. Urutan variabel keputusan adalah x 1, x 2,..., x n 2. Mundur(backward atau bottom-up) : bergerak mulai dari tahap n, mundur ke tahap n-1,n- 2,..,2,1. Urutan variabel keputusan adalah x n,x n-1,, x 2, x 1. Contoh berikut adalah permasalahan penyejajaran barisan, nilai D menjadi cost yang harus dicari solusi optimum lokal maupun globalnya. Misalnya, diketahui 2 buah yaitu barisan W dan barisan V, di mana W=W 1...W i merupakan barisan yang akan disejajarkan, dan V =V 1...V j merupakan barisan yang akan dihitung nilai kesejajarannya terhadap barisan W, maka persamaan umum rekursif dari permasalahan menggunakan algoritma Dynamic Programming prinsip pendekatan maju (forward atau up-down) dapat dibentuk sebagai berikut : basis D(0,0) = 0 Di ( 1, j 1) + Pi (, j) Di (, j) = (1) rekurens : min D( i, j 1) + δ ( i, j) + P( i, j) Di ( 1, j) + δ ( i, j) + Pi (, j) Keterangan : P(i, j) :mismatch penalty δ(i, j) :gap penalty 0, jika Wi = Vj 0, jika tidak ada residu ' ' Pi (, j) = δ (, i j) = 1, jika Wi Vj 1, jika ada residu '-' Block Subtitution Matrix (BLOSUM) pertama kali diperkenalkan oleh Steven Henikoff dan Jorja G. Henikoff pada tahun Gagasan mereka adalah mendapatkan skor yang lebih baik dari dua protein yang berbeda untuk hasil penyejajaran protein yang lebih mirip. Mereka menggunakan database BLOK untuk mencari perbedaan barisan-barisan antar daerah yang conserved dari family protein. Oleh karena itu istilah BLOSUM berasal dari BLOcks

4 SUbstitution Matriks [4]. Suatu Matriks yang termasuk kelompok BLOSUM dinotasikan dengan BLOSUMr, dimana 0 <! < 100. Tabel 1 Matriks BLOSUM 62 A R N D C Q E G H I L K M F P S T W Y V A R N D C Q E G H I L K M F P S T W Y V Progressive Alignment merupakan pendekatan yang paling banyak digunakan untuk masalah multiple sequence alignment, yang membangun sebuah MSA dengan menggabungkan pairwise dimulai dengan pasangan yang paling mirip sampai yang hanya memiliki sedikit kemiripan. Metode progressive alignment terdiri dari dua tahap : tahap pertama hubungan antara barisan direpresentasikan sebagai tree, yang disebut tree-guide, dan langkah kedua membangun MSA dengan cara menambahkan barisan sesuai dengan kedekatan pada tree guide [9]. Komputasi Paralel adalah teknik komputasi yang memanfaatkan beberapa komputer atau prosesor pada suatu waktu tertentu secara bersamaan. Komputasi paralel memiliki efisiensi yang besar/baik saat kapasitas data yang diproses sangat besar atau algoritma yang digunakan sangat kompleks dan memiliki proses komputasi yang banyak. Hal tersebut berdampak signifikan pada lamanya waktu komputasi yang diperlukan jika dijalankan secara sekuensial,

5 dengan komputasi paralel diharapkan waktu komputasi dapat lebih cepat. Untuk lebih jelas mengenai perbedaan komputasi sekuensial dan komputasi paralel, perhatikan Tabel 2. Tabel 2 Perbandingan Komputasi Sekuensial dengan Komputasi Paralel No Komputasi Sekuensial Komputasi Paralel 1 Program berjalan pada satu prosesor Program berjalan pada dua atau lebih prosesor 2 Program diproses secara sekuensial Program didekomposisi menjadi beberapa sub program yang dapat diproses secara paralel 3 Hanya satu instruksi yang bisa dieksekusi pada waktu tertentu Masing-masing sub program dieksekusi secara bersamaan pada prosesor yang tersedia Setiap prosesor memiliki sub program yang sama atau data yang diproses sama GPU Computing, saat ini perkembangan kartu grafis atau lebih dikenal sebagai GPU (Graphic Processing Unit) dengan teknologi manycore. GPU dikembangkan dalam sebuah platform yang dapat digunakan untuk memaksimalkan bukan hanya dari sisi graphics processing, namun juga untuk kepentingan komputasi pada umumnya. Platform ini dikenal dengan istilah GPGPU (General Purpose Computation on GPU). Cuda adalah salah satu bahasa pemrograman yang bekerja dengan memanfaatkan GPU. Bahasa ini merupakan ekstensi minimal dari bahasa pemrograman C dan C++. Cuda menyediakan tiga abstraksi utama, yaitu hierarki yang terdiri dari thread, shared memory, dan barrier synchronization. Tujuan dari pengembangan CUDA adalah untuk menuntun programmer membagi masalah ke dalam submasalah menjadi bagian-bagian yang lebih halus dan dapat diselesaikan secara independen atau paralel, kemudian membaginya menjadi bagian-bagian yang lebih halus dan dapat diselesaikan secara kooperatif dalam ranah paralelisme [6]. Untuk menerapkan model pemrograman CUDA, diperlukan sebuah arsitektur komputasi yang bisa menjadikan prosesor-prosesor pada GPU menjadi satu platform yang efisien untuk mengolah grafis dan aplikasi-aplikasi komputasi paralel yang lebih umum. METODE PENELITIAN Metode penelitian yang digunakan adalah studi literatur dan simulasi PEMAHASAN ALGORITMA Pada bab ini akan dibahas algoritma Tree based Consistency of Objective Function For Evaluation Alignment (T-COFFEE) untuk masalah multiple sequence alignment (MSA).

6 Multiple sequence alignment (MSA) adalah permasalahan dalam menyejajarkan 3 atau lebih barisan DNA atau Protein. Tujuan MSA sama dengan sequence alignment yaitu menyejajarkan barisan DNA atau Protein sehingga didapatkan gambaran hubuguan evolusi dari barisan-barisan tersebut [3]. Pada saat ini telah dikembangkan beberapa teknik penyejajaran, seperti ClustalW, MUSCLE, ProbCons, dan FSA namun pada tulisan ini hanya akan dibahas algoritma T-COFFEE. Tree Based of Objective Function For Evaluation Alignment (T-COFFEE) adalah salah satu metode penyelesaian MSA, algoritma ini menerapkan teknik tree based dan menggunakan objective function dalam mengolah database DNA/protein [3]. Secara garis besar tahapan dari algoritma T-COFFEE dapat disusun pada Gambar 1. Algoritma ini memberikan hasil yang akurat dengan proses yang lebih cepat. Input algoritma T-COFFEE merupakan database barisan protein atau DNA Sumber data algoritma T-COFFEE yaitu hasil penyejajaran global dan lokal barisan DNA atau protein [3]. Dalam mengolah input tersebut, untuk setiap pasang barisan, digunakan dua algoritma yaitu Needleman-Wunch (untuk global alignment) dan Smith Waterman (untuk local alignment). Proses penyejajaran global akan digunakan untuk memberikan satu kesejajaran full length antara setiap pasangan barisan, sedangkan pada penyejajaran lokal dihasilkan sepuluh penyejajaran lokal dengan skor terbaik, antara setiap pasangan barisan [3]. Sebagai ilustrasi dapat dilihat pada pada Gambar 1. Primary library berisi kumpulan pairwise alignment dari semua barisan yang telah disejajarkan. Pada tulisan ini digunakan struktur library seperti yang dijelaskan oleh Notredame [7]. Pada setiap library (lihat Gambar 3) disertakan informasi untuk masingmasing n(n-1)/2 pasang barisan, di mana n adalah banyak barisan. Berikut adalah penjelasan dari Gambar 3. Library memiliki n(n-1)/2 elemen, dimana elemen merupakan pasangan barisan yang disejajarkan. Sebuah elemen library tersusun dari beberapa entri, dan entri merupakan indeks dari pasangan berurutan dari residu yang bersesuaian (misalnya residu x barisan A sejajar dengan residu y barisan B) [3].

7 Sebagai akibat dari hal di atas, masing-masing pasangan merupakan sebuah konstrain, dimana tidak semua konstrain tersebut bernilai penting. Beberapa konstrain dapat berasal dari penyejajaran yang lebih baik. Hal ini digunakan untuk menghitung beberapa penyejajaran dan memberikan prioritas kepada pasangan residu yang berasal dari penyejajaran yang lebih baik [3]. Hal ini dicapai dengan menggunakan skema pembobotan [3]. Nedleeman- Wunsch (Global Pairwise Smith- Waterman (Local Pairwise Weighting Signal Addition Primary Extension Extended Library Progressive Alignment Gambar 2 Tahapan Algoritma T-COFFEE (Notredame et al., 1998) Penentuan bobot primary library, T-COFFEE memberikan bobot untuk setiap pasangan residu sejajar di setiap library. Idealnya, sebuah pembobotan primary akan mencerminkan tingkat kebenaran dari sebuah konstrain. Bobot didapat dengan menghitung persentase dari residu pasangan barisan yang identik, dan hal ini menjadi indikator akurasi. Barisan dikatakan identik atau mirip ketika bobot pasangan barisan yang sejajar lebih dari 30% identitk [8]. Skema pembobotan ini terbukti sangat efektif untuk fungsi objektif dalam algoritma T- COFFEE [7]. Dalam hal ini Library akan berisi daftar bobot konstrain. Setiap konstrain memiliki bobot yang menunjukkan identitas persentase dari asal mula pasangan penyejajarannya [7]. Untuk setiap pasang barisan, primary library dihitung bersama dengan

8 bobot, menggunakan Needleman-Wunsch (untuk penyejajaran global) dan Smith-Waterman (untuk penyejajaran lokal). Gambar 3 Struktur library [3] Kombinasi dari library adalah langkah menggabungkan dua atau lebih library yang telah dibangun. Tujuannya adalah untuk mendapatkan kombinasi yang efisien dari informasi penyejajaran lokal dan global. Hal ini diperoleh dengan cara menggabungkan global library dan local library melalui proses penjumlahan sederhana [7]. Jika setiap pasangan diduplikasi dari dua library, maka pasangan dari dua library digabungkan menjadi satu entri dan memiliki bobot sama dengan jumlah dari dua bobot. Dalam hal lain, entri baru akan dibangun untuk setiap pasangan yang ada. Pasang residu yang tidak cocok akan dianggap memiliki bobot nol. Lihat Gambar 4(c). Primary library ini dapat digunakan secara langsung untuk menghitung multiple sequence aligment. Proses MSA dapat menemukan penyejajaran yang terbaik dari bobot residu. Namun, untuk meningkatkan nilai informasi pada library diperlukan pemeriksaan konsistensi setiap pasangan residu dengan pasangan residu dari semua penyejajaran lainnya. Untuk setiap pasangan residu sejajar di library, kita dapat menetapkan bobot yang mencerminkan residu yang sejajar dan konsisten dengan residu dari semua barisan lainnya. Proses ini disebut extended library [3]. Extended library, tingkat akurasi MSA ditentukan oleh fungsi objektif yang digunakan. Dalam hal ini fungsi objektif juga digunakan pada tahapan extended library untuk menunjukkan kualitas hasil sequence alignment yang lebih akurat. Skor dari MSA

9 didefinisikan sebagai ukuran konsistensi pada library. Secara biologi, idealnya, semakin baik skor, semakin relevan penyejajaran. Permasalahan pencocokan satu set kendala terbobot menjadi MSA merupakan masalah NPcomplete. Sampai saat ini terdapat dua strategi optimasi yang digunakan [7], yang pertama dilakukan melalui genetic algorithm dan yang kedua menggunakan algoritma branch and bound. Hasil kedua metode tersebut masih dinilai kurang memuaskan. Salah satu alternatif untuk mengatasi masalah tersebut digunakan algoritma heuristik yang disebut extended library, dan didefinisikan sebagai formula berikut [8] : EL(, x y,(,)) i j PL(, x y,(,)) i j min{ PL(,,(,)), x z i r PL(, z y,(,))} r j = + (2) z {1,2,..., n} r {1,2,..., lz} z x, z y Dimana PL adalah primary library, EL adalah extended library, x dan y elemen yang berhubungan, (i, j) titik dari entry yang dihitung, lz adalah panjang barisan z yang digunakan untuk memeriksa konsistensi dari bobot dan n adalah banyak barisan. Dengan pendekatan triplet, Extended library menggabungkan setiap pasangan residu dengan menyisipkan setiap satu barisan dari primary library selain pasangan yang sedang disejajarkan. Hal ini dilakukan agar bobot akhir menggambarkan kembali informasi yang terdapat dalam seluruh library. Sebagai contoh dapat dilihat pada Gambar 5 Hasil extended library akan diproses dengan teknik progressive alignment menggunakan algoritma neighbour-joining.

10 Gambar 4 (a) Progressive alignment, (b) Primary library, (c) Extended Library [3] Paralel T-COFFEE, Algoritma T-COFFEE membutuhkan waktu proses yang sangat lama, terutama pada saat pembentukan library. Algoritma ini memiliki kompleksitas mulai dari tahapan pembentukan primary library O(N 2 L 2 ), extended library O(N 3 L 2 ), Pembentukan phylogenetic tree O(N 2 L 2 ) + O(N 3 ), dan proses terakhir O(NL 2 ). Waktu komputasi terbesar adalah pada saat proses pembentukan library [7], dan jika data yang diproses berukuran besar, maka pada tahapan pembentukan primary library dan extended library terdapat perhitungan yang sangat kompleks sehingga algoritma ini tidak efektif. Pada pembahasan selanjutnya akan dilakukan teknik paralel T-COFFEE. Tahapan Paralel Pairwise Alignment adalah langkah awal dari algoritma paralel T- COFFEE yaitu mengkalkulasikan penyejajaran global dan lokal. Untuk mendapatkan hasil pairwise alignment dengan akurasi yang tinggi, dibutuhkan metode yang tepat, seperti algoritma Needleman-Wunsch dan algoritma Smith-Waterman. Karena untuk data yang besar menyebabkan pengkalkulasian kompleks dan rumit, maka kedua algoritma tersebut diimplementasikan pada GPU. Algoritma paralel dari tahapan ini telah dibahas dalam jurnal lain [2]. Tahapan Paralel Primary Library merupakan langkah kedua dari algoritma paralel T- COFFEE yaitu membangun primary library (PL)). Informasi dari pairwise alignment digabungkan dan disusun dalam memori sehingga dapat digunakan seefisien mungkin (Gambar 6).

11 Gambar 5 Struktur dari Satu Library Entri [3] Karena seluruh PL membutuhkan banyak memori, maka diperlukan untuk membaginya ke bagian-bagian kecil, yang disebut partial primary libraries (PPLs), yang dapat diproses dengan satu GPU. Dengan kata lain, semua pekerjaan dapat dibagi menjadi subproblem, yang dinotasikan dengan window size [3]. Sehingga, yang harus dilakukan pada setiap subproblem yaitu menghitung sebanyak k+1 pairwise alignment untuk setiap pasang barisan yang direpresentasikan oleh window (Gambar 7). Banyaknya PPLs tergantung pada banyaknya input sequence n dan juga nilai parameter pada window size yang didapatkan dengan rumus N PPL 2 n = window size (3) Nilai dari N PPL mengindikasikan bahwa jumlah seluruh PL dapat dihitung secara independen. Setiap dua elemen pada library dibentuk dari setiap pasang barisan yang ada. Hal tersebut menghasilkan proses yang redundant. Untuk menghindari hal tersebut hanya diproses separuh dari pembentukan elemen library tersebut, sedangkan sisanya hanya diduplikasi. Data yang diduplikasi digunakan pada tahap pemebentukan EL pada GPU agar lebih efisien dan akan dipaparkan di pembahasan berikutnya [3]. Untuk menggunakan memori GPU secara efisien, struktur data khusus untuk PL telah dirancang melalui cara-cara berikut. Setiap elemen diinput sebagai entri one-dimensional array (Gambar 5). Satu entri memuat informasi tentang indeks dari dua residu yang sejajar serta bobot kesejajarannya. Gambar 6 Transkipsi PPL ke PL [3]

12 Untuk meningkatkan efisiensi pada langkah extended library, semua entri diantara tiap elemen dirancang dengan menggunakan indeks yang mengacu ke barisan kedua. Maka, prosedur penggabungan pairwise alignment ke PPL, tahapannya juga dirancang dalam bentuk entri-entri. Gambar 7 Tahap PL dan Langkah Paralel Pembentukan PL Metode ini dirancang dengan cara menggabungkan semua akses memori global dan menghilangkan problem pada shared memory. Dengan demikian, didapatkan prosedur yang sangat efisien dan waktu eksekusinya lebih singkat dibandingkan dengan waktu yang dibutuhkan untuk pairwise alignment. Untuk mendapatkan fleksibilitas dalam membagi kasus dari extended library ke subproblem yang sesuai, teknik penyimpanan PL dengan cara yang tepat adalah hal yang penting untuk diperhatikan. Proses mengcopy data ke memori global GPU merupakan langkah yang tidak optimal, oleh sebab itu, sebelum memulai proses extended library, dilakukan transkripsi semua PPLs membentuk satu PL(Gambar 6).

13 Tahapan Paralel Extended library, tujuan dari extended PL adalah untuk mengubah bobot dari library. Langkah algoritma ini membutuhkan waktu yang banyak dan terdapat beberapa extended yang kompleks. Proses dari progressive alignment membutuhkan satu elemen library untuk tiap pasang barisan. Jika terdapat n barisan berarti terdapat n x n perhitungan untuk membentuk extended library (EL). Setiap pasang barisan membentuk 2 elemen dari library tersebut. Oleh sebab itu untuk mengatasi masalah tersebut, data yang akan di-extended hanya elemen diagonal bawah dari PL [3]. Sama halnya dengan mengkontruksi PL, ketika membentuk extending library, banyak data yang diproses terlalu besar untuk dapat diselesaikan dalam satu langkah (sekuensial). Untuk mengatasi hal ini, seluruh kerja akan dibagi menjadi bagian yang lebih kecil sehingga dapat diselesaikan dengan satu GPU. Langkah ini akan lebih difokuskan untuk meminimalisasi transmisi data. Salah satu strategi yang dirancang adalah semua input PL dibagi dalam windows dengan size n x window size (catatan: windows dan windows size yang ini tidak berhubungan dengan yang sebelumnya) (Gambar 8). Gambar 8 Alokasi PL di Memory untuk Pembentukan EL Sebuah task dihubungkan dengan tiap window untuk menghitung elemen yang terhubung dengan EL. Untuk mencegah pengcopy-an semua PL ke dalam graphics card dalam 1 n langkah (secara sequensial), setiap task dibagi ke 1, 2,, window size subtask, dan tergantung pada seberapa banyak elemen diagonal bawah yang dapat dihitung. Setiap subtask membutuhkan 2 window dari PL yang disediakan dalam memori global, yaitu pasangan barisan utama (base window) dan barisan untuk menguji konsistensi (reinforcing window) (Gambar 8). Seperti yang disebutkan sebelumnya, untuk meningkatkan kualitas dari elemen (SEQx, SEQy) dari EL dengan menggunakan sebuah barisan SEQz, tiga elemen PL

14 dibutuhkan: (SEQx, SEQy), (SEQz, SEQy) dan (SEQz, SEQx). Untuk menyelesaikan proses extended library, beberapa windows harus ditransfer ke dalam memori: dimana windows transfers = n w = window size adalah banyaknya dari windows. ww ( + 1) + w (4) 2 Untuk mencari semua PL dapat dicopy, nilai dari 4 harus dibagi dengan w: PL transfers = ( w + 1) + 1 (5) 2 cost menyalin kembali hasil dari kartu grafis yaitu lebih kecil atau sama dengan : PL transfers = ( w + 1) 2w Selanjutnya, transfer costs secara langsung bergantung pada window size yang sepenuhnya akan disesuaikan. (6) Gambar 9 Langkah-langkah Pengefektifan Memory Pada Proses Extended [3] Berikutnya akan dijelaskan tujuan dari menyimpan semua PL. Solusi paling tepat untuk mengatasi masalah pada kasus-kasus sebelumnya yaitu proses dilakukan dengan menyusun elemen dari seluruh PL berdasarkan indeks barisan kedua. Sehingga kedua windows yang diperlukan disimpan berdekatan dalam baris dari PL(seperti pada Gambar 9 bagian bawah kiri). Transfer dari memori global ke shared memory akan digabungkan dengan cara tersebut. Setiap subtask yang bersesuaian dengan grid yang dijalankan pada GPU tunggal dijalankan juga secara paralel. Dalam kasus ini, Grid terdiri dari windows size blok windows size. Setiap blok meng-extend hanya satu elemen (Gambar 11). Misal, dalam satu blok ada 256 1

15 thread (Gambar 10). Sebuah thread tunggal meng-extend satu entri dari elemen yang berhubungan dengan semua barisan (Gambar 10). Dalam kasus ini diberikan elemen yang terdiri dari entri lebih dari 256, dan dipartisi kedalam 256 fragmen. Sebuah blok memproses fragmen satu demi satu: sebuah iterasi tunggal dari sebuah loop utama mengolah sebuah fragmen, frag x,y (dimana x dan y mengacu pada pasangan (SEQx,SEQy) yang di-extend) dan menyimpannya di shared memory (Gambar 10). Block Gambar 10 Langkah Paralel Pembentukan EL Pada poin ini, setiap bobot yang baru dibuat dari entri EL diinisialisasi dengan bobot PL yang berhubungan. Sebuah loop bersarang (nested loop) mengolah n - 2 barisan (z = 1,..., n) (z x ) (z y). Loop tersebut menunjukkan pasangan operasi elemen ((SEQz, SEQy) dan (SEQz, SEQx)) yang dibutuhkan dalam proses extending. Elemen-elemen ini juga terfragmentasi (frag z,y, frag z,x) sesuai kebutuhan dan buffer dalam shared memory. Ketika satu entri frag x,y diproses oleh satu thread, frag z,y dan frag z,x juga diproses oleh setiap thread yang lain. Sebuah operasi inti kernel dari thread tunggal adalah untuk memeriksa keberadaan tuple berikut: ((a, b) x, y, (c, d) z, y, (e, f) z, x) sehingga b = d dan a = f, di mana (a, b) x, y menunjukkan sepasang indeks residu (a, b) unsur (SEQx, SEQy). Hal ini dicapai dengan cara berikut: sebuah thread melakukan scan ke buffer terkait dengan frag z,y dalam mencari indeks residu b pada posisi indeks kedua. Dalam hal ini, karena adanya frag z tersebut, maka y diurutkan berdasarkan indeks residu SEQy.

16 Waktu yang diperlukan pada tahap ini lebih singkat dari pada waktu yang dibutuhkan untuk membangun separuh PL sisanya. Selain itu, karena semua thread diberikan dalam warp untuk membaca shared buffer frag z, y dan frag z, x secara serentak, maka akan didapatkan percepatan waktu proses. Selain itu, setiap thread hanya memodifikasi bobot EL-nya sendiri yang terkait dengan (SEQx, SEQy). Pada akhir loop utama, iterasi seluruh blok menyimpan hasilnya ke memori global Elemen 1,1 Elemen 1,2 Elemen 1,n Elemen 2,1 Elemen n,n Gambar 11 Proses Paralel pada EL IMPLEMENTASI PROGRAM Bagian ini akan membahas implementasi dan simulasi dari algoritma T-COFFEE serta mengukur speedup dan efisiensi dari algoritma paralelnya. Program ini dijalankan pada komputer dengan spesifikasi sebagai berikut : Prosesor : Intel Dual CoreTM 2.8GHz GPU : NVIDIA GeForce GTX 460, RAM 2 GB, 336 Core Compiler : NVIDIA CUDA Compiler (NVCC) v4.0. Database Ensembl [12] menyediakan database barisan DNA dan protein. File database dalam format FASTA tersedia dari direktori yang sesuai 'fasta' di situs ftp.ensembl.org. Dokumen ini menjelaskan konvensi penamaan saat ini dan format batas header urutan yang digunakan oleh Ensembl. Deskripsi serupa juga tersedia dari file README pada direktori situs FTP. Sementara Ensembl juga menyediakan deskripsi yang lebih umum dari struktur situs FTP.

17 Implementasi algoritma T-COFFEE tersebut dalam progam menggunakan C++. Input dari program ini adalah database protein diambil dari database ensembl. Gambar 14 merupakan simulasi program dari database ensembl 3_664.fax sequence 115 s.d 134, dengan banyak barisan yang digunakan 20 barisan dan barisan terpanjang terdiri dari 108 karakter. Hasil yang diperoleh berupa database MSA yang sudah disejajarkan (Gambar 12), dengan waktu rata-rata yang dibutuhkan sekitar 29 detik. Running time untuk data dengan banyaknya 50 hingga 150 barisan dapat dilihat pada Tabel 3. Gambar 12 Screenshot Output Hasil Penyejajaran Sekuensial T-COFFEE Tabel 3 Running time sekuensial T-COFFEE Banyak barisan Running Time (dalam detik) Rata-rata(s) Implementasi Algoritma T-COFFEE Paralel diimplementasikan dalam progam menggunakan CUDA.C. Input dari program ini adalah database Protein diambil dari database Ensembl. Gambar 13 merupakan screenshot output program dengan database barisan yang digunakan adalah database ensembl 3_664.fax sequence dengan banyak barisan 100 dan barisan terpanjang terdiri dari 140 karakter. Hasil yang diperoleh berupa database MSA

18 Gambar 13 Screenshot Output program paralel T-COFFEE yang sudah disejajarkan, dengan waktu rata-rata yang dibutuhkan sekitar detik. Running time untuk data sebanyak 20, 50, 70,150 barisan dengan 64, 128, 256 core dapat dilihat pada Tabel 4. Tabel 4 Running Time Paralel T-COFFEE dengan 64, 128, 256 Core Banyak barisan Running Time dengan banyak prosesor- (detik) Berdasarkan Tabel 10, running time paralel T-COFFEE dengan 64 core memberikan perhitungan yang lebih cepat dibandingkan dengan 128 atau 256 core. Perhitungan Speed-up dan Efisiensi, berdasarkan Tabel 10 algoritma T-COFFEE paralel memiliki running time lebih singkat dari pada running time algoritma sekuensialnya. Berdasarkan Tabel 10 diperoleh rata-rata speed-up sebesar kali dan rata-rata efisiensi sebesar 0,15. hal ini menunjukkan bahwa algoritma paralel T-COFFEE memberikan percepatan hingga 40 kali dan effisiensi kinerja sebesar 15%. Tabel 5 Speed-up dan Efisiensi Paralel T-COFFEE dengan 256 Core Running Time (detik) Banyak barisan Sequensial Paralel Speed-up Efisiensi Rata-rata

19 Dari simulasi diatas tampak bahwa efisiensi algoritma paralel dengan 256 prosesor sangat kecil (15%). Selanjutnya akan dilakukan perbandingan speedup dan efisiensi antara 64, 128, dan 256 prosesor. Berdasarkan Tabel 6 dan 7, speedup dan efisiensi dari program paralel T-COFFEE menggunakan 64 prosesor lebih bagus daripada 128 dan 256 prosesor. Hal ini menunjukkan bahwa program paralel T-COFFEE dengan 64 prosesor memberikan hasil implementasi terbaik dengan rata-rata speedup dengan efisiensi sebesar Tabel 6 Speedup Paralel T-COFFEE dengan 64, 128, 256 Core Banyak barisan Rata-rata Speed up Speed up dengan banyak prosesor- Tabel 7 Efisiensi Paralel T-COFFEE dengan 64, 128, 256 Core Banyak barisan Rata-rata Efisiensi Efisiensi dengan banyak prosesor- Kesimpulan Algoritma T-COFFEE dapat menyelesaikan permasalahan multiple sequence alignment dan algoritma ini juga dapat dapat diterapkan dalam komputasi paralel berbasis sistem CUDA GPU. Algoritma T-COFFEE menggunakan konsep library yang membutuhkan waktu lama untuk membangun dan mengolah library, sehingga dengan algoritma paralel T-COFFEE serta langkah-langkah penentuan alokasi memori yang baik, maka waktu proses multiple alignment dapat dipercepat. Hasil implementasi algoritma paralel T-COFFEE pada bagian implementasi, terutama dengan menggunakan 64 prosesor pada GeForce GTX 460, menunjukkan bahwa speed-up rata-rata yang diberikan kali lipat dan nilai efisiensi rata-rata sebesar Hal ini menunjukkan

20 bahwa algoritma paralel T-COFFEE memberikan percepatan dan efisiensi yang sangat signifikan untuk penyelesaian MSA. DAFTAR PUSTAKA [1] Attwood, T.K., dan D.J. Parry-Smith. (1999). Introduction to Bioinformatics. Harlow. Pearson Education [2] Blazewicz, J., Formanowicz, P., Wojciechowski, P. (2011). Protein alignment algorithms with an efficient backtracking routine on multiple GPUs. BMC Bioinformatics [3] Blazewicz, J. (2013). G-MSA A GPU-Based, Fast and Accurate Algorithm for Multiple Sequence Alignment. J. Parallel Distrib. Comput [4] Henikoff, S., Henikoff, J.G.(1992). Amino Acid Substitution Matrices from Protein Blocks. PNAS 89 (22) [5] Isaev, A. (2004). Introduction to Mathematical Methods in Bioinformatics. Springer, Canberra. [6] Lindholm, Erik, et al. (2008). Tesla: A Unified Graphics and Computing Architecture. IEEE Press. [7] Notredame, C., Higgins, D.G., Heringa, J. (2000). T-Coffee: A Novel Method for Multiple Sequence Alignments. Journal of Molecular Biology 302 (1) [8] Sander, C., Schneider, R. (1991). Database of Homology-Derived Protein Structures and the Structural Meaning of Sequence Alignment. Proteins 9 (1) [9] Tizag. (2008). PHP Tutorial. 2 Desember 2013,pk [10] Witarto, A. B., & Sajidan. (2010). Bioinformatika: Trend dan Prospek dalam Pengembangan Keilmuan Biologi. Makalah dipresentasikan pada Seminar Nasional Pendidikan Biologi FKIP UNS, Jawa Tengah, Indonesia. [11] Yuwono, T. (2007). Biologi Molekular. Jakarta: Erlangga. [12] Ensembl databases release 55 ftp://ftp.ensembl.org/pub/release-55, 2010

1. PENDAHULUAN 1.1. LATAR BELAKANG MASALAH

1. PENDAHULUAN 1.1. LATAR BELAKANG MASALAH 1. PENDAHULUAN 1.1. LATAR BELAKANG MASALAH Pada saat ini, teknologi mengalami kemajuan yang sangat pesat, khususnya pada perkembangan komputer. Adapun salah satu teknologi yang mendukung cepatnya perhitungan

Lebih terperinci

PROSEDUR PARALELISASI PERKALIAN MATRIKS PADA GRAPHICS PROCESSING UNIT (GPU)

PROSEDUR PARALELISASI PERKALIAN MATRIKS PADA GRAPHICS PROCESSING UNIT (GPU) PROSEDUR PARALELISASI PERKALIAN MATRIKS PADA GRAPHICS PROCESSING UNIT (GPU) Murni Pusat Studi Komputasi Matematika, Universitas Gunadarma Jl. Margonda Raya no. 100, Depok 16424, Jawa Barat murnipskm@staff.gunadarma.ac.id

Lebih terperinci

Penerapan Algoritma Program Dinamis pada Penyejajaran Sekuens dengan Algoritma Smith Waterman

Penerapan Algoritma Program Dinamis pada Penyejajaran Sekuens dengan Algoritma Smith Waterman Penerapan Algoritma Program Dinamis pada Penyejajaran Sekuens dengan Algoritma Smith Waterman Afif Bambang Prasetia (13515058) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

PARALELISASI PERKALIAN MATRIKS SPARSE VEKTOR DENGAN CUBLAS

PARALELISASI PERKALIAN MATRIKS SPARSE VEKTOR DENGAN CUBLAS PARALELISASI PERKALIAN MATRIKS SPARSE VEKTOR DENGAN CUBLAS Murni Pusat Studi Komputasi Matematika, Universitas Gunadarma Jl. Margonda Raya no. 100, Depok 16424, Jawa Barat murnipskm@staff.gunadarma.ac.id

Lebih terperinci

BAB III LANDASAN TEORI

BAB III LANDASAN TEORI BAB III LANDASAN TEORI III.1. Citra Digital Citra merupakan gambar yang merepresentasikan sesuatu. Citra dapat berupa gambar dari sebuah atau kumpulan obyek. Citra digital merupakan citra yang dapat diolah

Lebih terperinci

Analisis Kinerja Matrix Multiplication Pada Lingkungan Komputasi Berkemampuan Tinggi (Cuda Gpu)

Analisis Kinerja Matrix Multiplication Pada Lingkungan Komputasi Berkemampuan Tinggi (Cuda Gpu) Analisis Kinerja Matrix Multiplication Pada Lingkungan Komputasi Berkemampuan Tinggi (Cuda Gpu) 1 Machudor Yusman, 2 Anie Rose Irawati, 3 Achmad Yusuf Vidyawan 1 Jurusan Ilmu Komputer FMIPA Unila 2 Jurusan

Lebih terperinci

Pendeteksian Kemacetan Lalu Lintas dengan Compute Unified Device Architecture (CUDA)

Pendeteksian Kemacetan Lalu Lintas dengan Compute Unified Device Architecture (CUDA) Pendeteksian Kemacetan Lalu Lintas dengan Compute Unified Device Architecture (CUDA) LAPORAN TUGAS AKHIR Disusun sebagai syarat kelulusan tingkat sarjana oleh: Muhammad Ismail Faruqi / 13503045 PROGRAM

Lebih terperinci

Pendekatan Dynamic Programming untuk Menyelesaikan Sequence Alignment

Pendekatan Dynamic Programming untuk Menyelesaikan Sequence Alignment Pekatan Dynamic Programming untuk Menyelesaikan Sequence Alignment Ray Andrew Obaja Sinurat - 13515073 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

PARALELISASI TRANSFORMASI WAVELET DISKRIT MENGGUNAKAN ARSITEKTUR CUDA PADA GRAPHIC PROCESSING UNIT UNTUK DE-NOISING CITRA

PARALELISASI TRANSFORMASI WAVELET DISKRIT MENGGUNAKAN ARSITEKTUR CUDA PADA GRAPHIC PROCESSING UNIT UNTUK DE-NOISING CITRA PARALELISASI TRANSFORMASI WAVELET DISKRIT MENGGUNAKAN ARSITEKTUR CUDA PADA GRAPHIC PROCESSING UNIT UNTUK DE-NOISING CITRA DOSEN PEMBIMBING: Dr. Nanik Suciati, S.Kom. M.Kom Wahyu Suadi, S.Kom, MM, M.Kom

Lebih terperinci

Paralelisasi Transformasi Fourier pada Arsitektur General Purpose Graphic Processing Unit Untuk Klasifikasi Alat Musik Dengan Instrumen Solo

Paralelisasi Transformasi Fourier pada Arsitektur General Purpose Graphic Processing Unit Untuk Klasifikasi Alat Musik Dengan Instrumen Solo Paralelisasi Transformasi Fourier pada Arsitektur General Purpose Graphic Processing Unit Untuk Klasifikasi Alat Musik Dengan Instrumen Solo Ridwan Rismanto 5109201049 DOSEN PEMBIMBING Dr. Nanik Suciati,

Lebih terperinci

ABSTRAK. Kata kunci: DNA, bioinformatika, sekuens, Needleman-Wunsch, Lempel-Ziv, algoritma pensejajaran DNA, frase sempurna

ABSTRAK. Kata kunci: DNA, bioinformatika, sekuens, Needleman-Wunsch, Lempel-Ziv, algoritma pensejajaran DNA, frase sempurna ABSTRAK Ilmu Bioinformatika meneliti tentang perubahan yang dialami oleh DNA, serta membantu memberikan tanda terhadap mutasi genetika yang terjadi. Untuk membandingkan sekuens DNA dan mencari tahu bagaimana

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI Pada bagian ini akan diuraikan teori-teori dasar yang dijadikan sebagai landasan dalam penulisan tugas akhir ini. 2.1 Ilmu Bioinformatika Bioinformatika merupakan kajian yang mengkombinasikan

Lebih terperinci

BAB I PENDAHULUAN. Merancang aplikasi Paralel Processing yang diimplementasikan dengan penggunaan Computer-Unified-Device-Architecture (CUDA).

BAB I PENDAHULUAN. Merancang aplikasi Paralel Processing yang diimplementasikan dengan penggunaan Computer-Unified-Device-Architecture (CUDA). BAB I PENDAHULUAN 1.1. Tujuan Merancang aplikasi Paralel Processing yang diimplementasikan dengan penggunaan Computer-Unified-Device-Architecture (CUDA). 1.2. Latar Belakang Banyak Central Processing Unit

Lebih terperinci

BAB I PENDAHULUAN. ada dua pendekatan yang dapat digunakan, pendekatan yang pertama adalah

BAB I PENDAHULUAN. ada dua pendekatan yang dapat digunakan, pendekatan yang pertama adalah BAB I PENDAHULUAN I.1. Latar Belakang Seiring dengan perkembangan teknologi informasi yang sangat pesat, saat ini dapat ditemui berbagai macam media dan sarana untuk menyampaikan pengetahuan dan informasi.

Lebih terperinci

SIMULASI PERAMBATAN GELOMBANG SUARA DENGAN METODE STAGGERED GRID FINITE DIFFERENCE TIME DOMAIN MENGGUNAKAN ARSITEKTUR CUDA GPU

SIMULASI PERAMBATAN GELOMBANG SUARA DENGAN METODE STAGGERED GRID FINITE DIFFERENCE TIME DOMAIN MENGGUNAKAN ARSITEKTUR CUDA GPU TESIS SIMULASI PERAMBATAN GELOMBANG SUARA DENGAN METODE STAGGERED GRID FINITE DIFFERENCE TIME DOMAIN MENGGUNAKAN ARSITEKTUR CUDA GPU ARIEF BUDIMAN No. Mhs. : 105301460/PS/MTF PROGRAM STUDI MAGISTER TEKNIK

Lebih terperinci

DYNAMMIC PROGRAMMING DALAM MENENTUKAN ARTI URUTAN UNTAIAN GEN

DYNAMMIC PROGRAMMING DALAM MENENTUKAN ARTI URUTAN UNTAIAN GEN DYNAMMIC PROGRAMMING DALAM MENENTUKAN ARTI URUTAN UNTAIAN GEN David Soendoro Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung Alamat: Jalan Ganeca No.

Lebih terperinci

Kompleksitas Algoritma Rank Sort dan Implementasi pada Parallel Programming Dengan Menggunakan OpenMP

Kompleksitas Algoritma Rank Sort dan Implementasi pada Parallel Programming Dengan Menggunakan OpenMP Kompleksitas Algoritma Rank Sort dan Implementasi pada Parallel Programming Dengan Menggunakan OpenMP Muhammad Indra NS - 23515019 1 Program Magister Informatika Sekolah Teknik Elektro dan Informatika

Lebih terperinci

SEGMENTASI CITRA MENGGUNAKAN LEVEL SET UNTUK ACTIVE CONTOUR BERBASIS PARALLEL GPU CUDA

SEGMENTASI CITRA MENGGUNAKAN LEVEL SET UNTUK ACTIVE CONTOUR BERBASIS PARALLEL GPU CUDA HALAMAN JUDUL TESIS SEGMENTASI CITRA MENGGUNAKAN LEVEL SET UNTUK ACTIVE CONTOUR BERBASIS PARALLEL GPU CUDA LIANITA FEBRIHANI No. Mhs : 125301846/PS/MTF PROGRAM STUDI MAGISTER TEKNIK INFORMATIKA PROGRAM

Lebih terperinci

Nama : Reza Alfian Firdiansyah NPM : Jurusan : Sistem Informasi Pembimbing : Prof. Dr-Ing. Adang Suhendra. SSi.,Skom.,MSc

Nama : Reza Alfian Firdiansyah NPM : Jurusan : Sistem Informasi Pembimbing : Prof. Dr-Ing. Adang Suhendra. SSi.,Skom.,MSc ALGORITMA SMOOTHED PARTICLE HYDRODYNAMICS ALIRAN FLUIDA UNTUK MENGHITUNG DEBIT ALIRAN PADA SIMULASI ALIRAN FLUIDA Nama : Reza Alfian Firdiansyah NPM : 16112185 Jurusan : Sistem Informasi Pembimbing : Prof.

Lebih terperinci

BAB II LANDASAN TEORI. informasi menjadi sebuah teks yang tidak dapat dibaca (Ferguson dkk, 2010).

BAB II LANDASAN TEORI. informasi menjadi sebuah teks yang tidak dapat dibaca (Ferguson dkk, 2010). BAB II LANDASAN TEORI 2.1 Enkripsi Enkripsi merupakan sebuah metode penyandian sebuah pesan atau informasi menjadi sebuah teks yang tidak dapat dibaca (Ferguson dkk, 2010). Enkripsi berkaitan erat dengan

Lebih terperinci

Implementasi Hypergraph Partitioning pada Paralelisasi Perkalian Matriks-Vektor

Implementasi Hypergraph Partitioning pada Paralelisasi Perkalian Matriks-Vektor Implementasi Hypergraph Partitioning pada Paralelisasi Perkalian Matriks-Vektor Murni dan Tri Handhika Pusat Studi Komputasi Matematika Universitas Gunadarma, Depok {murnipskm, trihandika}@staff.gunadarma.ac.id

Lebih terperinci

BAB I PENDAHULUAN. penggunaan teknologi dalam menunjang kehidupan sehari - hari. berdasarkan data yang dihimpun oleh Gartner International Data

BAB I PENDAHULUAN. penggunaan teknologi dalam menunjang kehidupan sehari - hari. berdasarkan data yang dihimpun oleh Gartner International Data BAB I PENDAHULUAN 1.1. Latar Belakang Pertumbuhan teknologi saat ini semakin meningkat secara pesat dari waktu ke waktu. Konsumen semakin menyadari akan pentingnya penggunaan teknologi dalam menunjang

Lebih terperinci

Implementasi AES-ECB 128-bit untuk Komputasi Paralel pada GPU menggunakan Framework NVIDIA CUDA

Implementasi AES-ECB 128-bit untuk Komputasi Paralel pada GPU menggunakan Framework NVIDIA CUDA Implementasi AES-ECB 128-bit untuk Komputasi Paralel pada GPU menggunakan Framework NVIDIA CUDA Adityo Jiwandono, 13507015 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

TUGAS RESUME MATERI KULIAH ALGORITMA DAN STRUKTUR DATA STRATEGI ALGORITMA : H

TUGAS RESUME MATERI KULIAH ALGORITMA DAN STRUKTUR DATA STRATEGI ALGORITMA : H TUGAS RESUME MATERI KULIAH ALGORITMA DAN STRUKTUR DATA STRATEGI ALGORITMA NAMA NIM : HERIANTI : H12111003 FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM JURUSAN MATEMATIKA PROGRAM STUDI STATISTIKA UNIVERSITAS

Lebih terperinci

BAB I PENDAHULUAN. Keamanan dapat menjadi sebuah ketidak nyamanan. Namun, di zaman yang

BAB I PENDAHULUAN. Keamanan dapat menjadi sebuah ketidak nyamanan. Namun, di zaman yang BAB I PENDAHULUAN 1.1 Latar Belakang Keamanan dapat menjadi sebuah ketidak nyamanan. Namun, di zaman yang sudah semakin maju ini, keamanan menjadi sebuah kebutuhan dasar manusia pada setiap waktu (Navratilova,

Lebih terperinci

HASIL DAN PEMBAHASAN. Perangkat keras yang digunakan adalah sebagai berikut : PC Intel Core2Duo 1.8 GHz RAM 2 GB VGA GeForce 7600GT 256 MB

HASIL DAN PEMBAHASAN. Perangkat keras yang digunakan adalah sebagai berikut : PC Intel Core2Duo 1.8 GHz RAM 2 GB VGA GeForce 7600GT 256 MB dapat dipecah ke dalam tiga proses yaitu query weighting, scoring, dan sorting. Proses pertama, query weighting adalah pemboboton setiap term pada query yang akan ditemukembalikan. Proses selanjutnya,

Lebih terperinci

Penyelesaian Persoalan Penukaran Uang dengan Program Dinamis

Penyelesaian Persoalan Penukaran Uang dengan Program Dinamis Penyelesaian Persoalan Penukaran Uang dengan Program Dinamis Albert Logianto - 13514046 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10

Lebih terperinci

Sequence Alignment Menggunakan Algoritma Smith Waterman 1

Sequence Alignment Menggunakan Algoritma Smith Waterman 1 Sequence Menggunakan Algoritma Smith Waterman 1 1 Inte Christinawati Bu ulölö, 2 Nopelina Simamora, 3 Sabar Tampubolon, 4 Allan Pinem Politeknik Informatika Del Jl. Sisingamangaraja, Sitoluama Kabupaten

Lebih terperinci

IMPLEMENTASI HYBRID PARALLELIZATION PADA ALGORITME GLOBAL PAIRWISE ALIGNMENT ERWANSYAH ADRIANTAMA

IMPLEMENTASI HYBRID PARALLELIZATION PADA ALGORITME GLOBAL PAIRWISE ALIGNMENT ERWANSYAH ADRIANTAMA IMPLEMENTASI HYBRID PARALLELIZATION PADA ALGORITME GLOBAL PAIRWISE ALIGNMENT ERWANSYAH ADRIANTAMA DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2015

Lebih terperinci

PENDAHULUAN. -. Pengolahan data numerik dalam jumlah yang sangat besar. -. Kebutuhan akan ketersediaan data yang senantiasa up to date.

PENDAHULUAN. -. Pengolahan data numerik dalam jumlah yang sangat besar. -. Kebutuhan akan ketersediaan data yang senantiasa up to date. PENDAHULUAN 1 Kebutuhan akan Pengolahan Paralel Motivasi : - Pengolahan data numerik dalam jumlah yang sangat besar - Kebutuhan akan ketersediaan data yang senantiasa up to date Contoh 11 : Simulasi sirkulasi

Lebih terperinci

KEBUTUHAN KOMPUTER PARALEL

KEBUTUHAN KOMPUTER PARALEL PEMROSESAN KEBUTUHAN KOMPUTER Simulasi sirkulasi global laut di Oregon State University Lautan dibagi ke dalam 4096 daerah membentang dari timur ke barat, 1024 daerah membentang dari utara ke selatan dan

Lebih terperinci

BAB I PENDAHULUAN. piksel yang memiliki karakteristik tersebut. pendekteksian tepi. Salah satu metode yang ada adalah active contour yang

BAB I PENDAHULUAN. piksel yang memiliki karakteristik tersebut. pendekteksian tepi. Salah satu metode yang ada adalah active contour yang BAB I PENDAHULUAN 1.1. Latar Belakang Saat ini perpaduan antara perkembangan teknologi dan ilmu pengetahuan sudah banyak dilakukan orang khususnya dalam pengolahan citra. Pengolahan citra merupakan proses

Lebih terperinci

BAB IV PENGUJIAN DAN ANALISIS

BAB IV PENGUJIAN DAN ANALISIS BAB IV PENGUJIAN DAN ANALISIS Pada bab ini akan dijelaskan tentang pengujian dari masing masing metode computing dan juga analisa dari hasil pengujian tersebut. Pengujian dilakukan pada waktu proses dengan

Lebih terperinci

Implementasi Hypergraph Partitioning pada Paralelisasi Perkalian Matriks-Vektor

Implementasi Hypergraph Partitioning pada Paralelisasi Perkalian Matriks-Vektor Implementasi Hypergraph Partitioning pada Paralelisasi Perkalian Matriks-Vektor 1 Murni dan 2 Tri Handhika 1,2 Pusat Studi Komputasi Matematika Universitas Gunadarma, Depok 1 murnipskm@sta.gunadarma.ac.id,

Lebih terperinci

Multithreading untuk Algoritma Divide and Conquer

Multithreading untuk Algoritma Divide and Conquer Multithreading untuk Algoritma Divide and Conquer Novan Parmonangan Simanjuntak(13509034) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi komputer grafis sangat pesat dengan ruang lingkup yang luas. Penggunaannya beragam, dari mulai untuk industri entertainment sampai akademis.

Lebih terperinci

Penggunaan Algoritma Paralel dalam Optimasi Prosesor Multicore

Penggunaan Algoritma Paralel dalam Optimasi Prosesor Multicore Penggunaan Algoritma Paralel dalam Optimasi Prosesor Multicore Rafi Ramadhan 13512075 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10

Lebih terperinci

Pensejajaran Rantai DNA Menggunakan Algoritma Dijkstra

Pensejajaran Rantai DNA Menggunakan Algoritma Dijkstra SEMINAR NASIONAL MATEMATIKA DAN PENDIDIKAN MATEMATIKA UNY 2015 Pensejajaran Rantai DNA Menggunakan Algoritma Dijkstra Abduh Riski 1 1 Fakultas Matematika dan Ilmu Pengetahuan Alam, Universitas Jember riski.fmipa@unej.ac.id

Lebih terperinci

IMPLEMENTASI PROGRAM DINAMIS DENGAN ALGORITMA NEEDLEMAN-WUNSCH PADA PENSEJAJARAN DNA DAN PROTEIN

IMPLEMENTASI PROGRAM DINAMIS DENGAN ALGORITMA NEEDLEMAN-WUNSCH PADA PENSEJAJARAN DNA DAN PROTEIN IMPLEMENTASI PROGRAM DINAMIS DENGAN ALGORITMA NEEDLEMAN-WUNSCH PADA PENSEJAJARAN DNA DAN PROTEIN Joseph Rich Aryanto Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika, Institut Teknologi

Lebih terperinci

BAB II TINJAUAN PUSTAKA. apapun yang melalui beberapa pengolahan berarti (Tse, 2012). Mencerahkan citra,

BAB II TINJAUAN PUSTAKA. apapun yang melalui beberapa pengolahan berarti (Tse, 2012). Mencerahkan citra, BAB II TINJAUAN PUSTAKA A. Tinjauan Pustaka Pengolahan citra adalah sebuah bentuk pengolahan sinyal dimana masukannya berupa sebuah citra, dan keluarannya dapat berupa citra kembali atau apapun yang melalui

Lebih terperinci

Penyelesaian Barisan Rekursif dengan Kompleksitas Logaritmik Menggunakan Pemangkatan Matriks

Penyelesaian Barisan Rekursif dengan Kompleksitas Logaritmik Menggunakan Pemangkatan Matriks Penyelesaian Barisan Rekursif dengan Kompleksitas Logaritmik Menggunakan Pemangkatan Matriks Luqman Arifin Siswanto - 13513024 Program Sarjana Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

Implementasi Pencocokan String Tidak Eksak dengan Algoritma Program Dinamis

Implementasi Pencocokan String Tidak Eksak dengan Algoritma Program Dinamis Implementasi Pencocokan String Tidak Eksak dengan Algoritma Program Dinamis Samudra Harapan Bekti 13508075 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

TIN102 - Pengantar Teknik Industri Materi #10 Ganjil 2015/2016 TIN102 PENGANTAR TEKNIK INDUSTRI

TIN102 - Pengantar Teknik Industri Materi #10 Ganjil 2015/2016 TIN102 PENGANTAR TEKNIK INDUSTRI Materi #10 TIN102 PENGANTAR TEKNIK INDUSTRI Pendahuluan 2 Permasalahan pemrograman dinamis secara umum memiliki proses keputusan yang bersifat multi tahapan (multi-stage). I1 D1 I2 D2 In Dn R1 R2 Rn 6623

Lebih terperinci

APLIKASI DYNAMIC PROGRAMMING DALAM ALGORITMA NEEDLEMAN-WUNSCH UNTUK PENJAJARAN DNA DAN PROTEIN

APLIKASI DYNAMIC PROGRAMMING DALAM ALGORITMA NEEDLEMAN-WUNSCH UNTUK PENJAJARAN DNA DAN PROTEIN APLIKASI DYNAMIC PROGRAMMING DALAM ALGORITMA NEEDLEMAN-WUNSCH UNTUK PENJAJARAN DNA DAN PROTEIN Dian Perdhana Putra - 13507096 Teknik Informatika ITB Jl. Ganesha 10 Bandung e-mail: if17096@students.if.itb.ac.id

Lebih terperinci

PENDAHULUAN. Motivasi : -. Pengolahan data numerik dalam jumlah yang sangat besar. -. Kebutuhan akan ketersediaan data yang senantiasa up to date.

PENDAHULUAN. Motivasi : -. Pengolahan data numerik dalam jumlah yang sangat besar. -. Kebutuhan akan ketersediaan data yang senantiasa up to date. PENDAHULUAN 1 Kebutuhan akan Pengolahan Paralel Motivasi : - Pengolahan data numerik dalam jumlah yang sangat besar - Kebutuhan akan ketersediaan data yang senantiasa up to date Contoh 11 : Simulasi sirkulasi

Lebih terperinci

PENGANTAR KOMPUTASI MODERN

PENGANTAR KOMPUTASI MODERN PENGANTAR KOMPUTASI MODERN KOMPUTASI MODERN & PEMROSESAN PARALEL MARSHAL SAMOS 54412458 4IA15 UNIVERSITAS GUNADARMA 2016 1. Manakah yang termasuk karakteristik komputasi Modern yaitu : a. Komputer-komputer

Lebih terperinci

RANCANG BANGUN PENGENALAN ANGKA MENGGUNAKAN MULTI GPU PADA PLATFORM CUDA

RANCANG BANGUN PENGENALAN ANGKA MENGGUNAKAN MULTI GPU PADA PLATFORM CUDA BIDANG KEAHLIAN JARINGAN CERDAS MULTIMEDIA (GAME TECHNOLOGY) JURUSAN TEKNIK ELEKTRO FAKULTAS TEKNOLOGI INDUSTRI INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA RANCANG BANGUN PENGENALAN ANGKA MENGGUNAKAN

Lebih terperinci

ISSN : e-proceeding of Engineering : Vol.4, No.1 April 2017 Page 1301

ISSN : e-proceeding of Engineering : Vol.4, No.1 April 2017 Page 1301 ISSN : 2355-9365 e-proceeding of Engineering : Vol.4, No.1 April 2017 Page 1301 Evaluasi Kinerja Sparse Matrix-Vector Multiplication menggunakan Format Penyimpanan CSR dan BCSR pada MPI Performance Evaluation

Lebih terperinci

SOLVING MULTIPLE SEQUENCE ALIGNMENT PROBLEM UTILIZING INTEGER LINEAR PROGRAMMING

SOLVING MULTIPLE SEQUENCE ALIGNMENT PROBLEM UTILIZING INTEGER LINEAR PROGRAMMING SOLVING MULTIPLE SEQUENCE ALIGNMENT PROBLEM UTILIZING INTEGER LINEAR PROGRAMMING PUDIAHWAI ANTON WIBOWO 0303010281 UNIVERSITY OF INDONESIA FACULTY OF MATHEMATICS AND SCIENCE DEPARTMENT OF MATHEMATICS DEPOK

Lebih terperinci

Program Dinamis (dynamic programming):

Program Dinamis (dynamic programming): Materi #0 Ganjil 0/05 (Materi Tambahan) Program Dinamis (Dynamic Programming) Program Dinamis Program Dinamis (dynamic programming): metode pemecahan masalah dengan cara menguraikan solusi menjadi sekumpulan

Lebih terperinci

OPTIMISASI PUSTAKA UNTUK PERKALIAN MATRIKS MENGGUNAKAN ALGORITMA STRASSEN BERBASIS OPENCL

OPTIMISASI PUSTAKA UNTUK PERKALIAN MATRIKS MENGGUNAKAN ALGORITMA STRASSEN BERBASIS OPENCL OPTIMISASI PUSTAKA UNTUK PERKALIAN MATRIKS MENGGUNAKAN ALGORITMA STRASSEN BERBASIS OPENCL Arvin 1), Sutrisno 2), Pujianto Yugopuspito 3) 1),2),3) Teknik Informatika, Universitas Pelita Harapan UPH Tower,

Lebih terperinci

PENGOLAHAN PARALEL. Kebutuhan akan Komputer Paralel PENDAHULUAN. Dahulu:

PENGOLAHAN PARALEL. Kebutuhan akan Komputer Paralel PENDAHULUAN. Dahulu: PENGOLAHAN PARALEL PENDAHULUAN PENDAHULUAN 1 Kebutuhan akan Komputer Paralel Dahulu: Ilmu klasik didasarkan pada observasi, teori dan eksperimen Observasi dari fenomena menghasilkan hipotesa Teori dikembangkan

Lebih terperinci

PENGGUNAAN ALGORITMA PARALEL DALAM OPTIMASI PROSESOR MULTICORE

PENGGUNAAN ALGORITMA PARALEL DALAM OPTIMASI PROSESOR MULTICORE PENGGUNAAN ALGORITMA PARALEL DALAM OPTIMASI PROSESOR MULTICORE Penggunaan Algoritma Paralel dalam Optimasi Prosesor Multicore Rafi Ramadhan 13512075 Program Studi Teknik Informatika Sekolah Teknik Elektro

Lebih terperinci

ENHANCED K-SVD ALGORITHM for IMAGE DENOISING

ENHANCED K-SVD ALGORITHM for IMAGE DENOISING ENHANCED K-SVD ALGORITHM for IMAGE DENOISING Edwin Junius, Reza Alfiansyah, Endra,Universitas Bina Nusantara, mono_unk@yahoo.com, devil.reza12@yahoo.com, ABSTRAK Penelitian ini bertujuan untuk membuat

Lebih terperinci

BAB IV PENGUJIAN DAN ANALISIS

BAB IV PENGUJIAN DAN ANALISIS BAB IV PENGUJIAN DAN ANALISIS 4.1 Skenario Pengujian Program aplikasi diimplementasikan pada sebuah PC quadcore dan cluster 4 PC quadcore untuk mendapatkan perbandingan kinerja antara algoritma paralel

Lebih terperinci

4 HASIL DAN PEMBAHASAN

4 HASIL DAN PEMBAHASAN 27 4 HASIL DAN PEMBAHASAN 4. Rancangan Arsitektur Sistem Arsitektur sistem yang akan dikembangkan dari penelitian ini terdiri dari 2 Komponen, yaitu: Komponen pertama adalah Komponen web, yaitu bagian

Lebih terperinci

Kompleksitas Algoritma Dalam Algoritma Pengurutan

Kompleksitas Algoritma Dalam Algoritma Pengurutan Kompleksitas Algoritma Dalam Algoritma Pengurutan Rio Cahya Dwiyanto Jurusan Teknik Informatika ITB, Bandung, email: kasrut_desu@yahoo.co.id Abstract Makalah ini membahas tetang beberapa algoritma, terutama

Lebih terperinci

Implementasi Super Pairwise Alignment pada Global Sequence Alignment

Implementasi Super Pairwise Alignment pada Global Sequence Alignment Implementasi Super Pairwise Alignment pada Global Sequence Alignment Oleh: ARFAN PANTUA 1207 100 704 JURUSAN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT TEKNOLOGI SEPULUH NOPEMBER

Lebih terperinci

KINERJA ALGORITMA PARALEL UNTUK PENCARIAN KATA DENGAN METODE BOYER-MOORE MENGGUNAKAN PVM

KINERJA ALGORITMA PARALEL UNTUK PENCARIAN KATA DENGAN METODE BOYER-MOORE MENGGUNAKAN PVM Vandika, Kinerja Algoritma Paralel untuk Pencarian Kata dengan Metode Boyer-Moore Menggunakan PVM KINERJA ALGORITMA PARALEL UNTUK PENCARIAN KATA DENGAN METODE BOYER-MOORE MENGGUNAKAN PVM Maria Angela Kartawidjaja

Lebih terperinci

KARAKTERISTIK KINERJA ALGORITMA RECURSIVE DECOUPLING PADA SISTEM MULTIPROSESOR BERBASIS PVM

KARAKTERISTIK KINERJA ALGORITMA RECURSIVE DECOUPLING PADA SISTEM MULTIPROSESOR BERBASIS PVM KARAKTERISTIK KINERJA ALGORITMA RECURSIVE DECOUPLING PADA SISTEM MULTIPROSESOR BERBASIS PVM Tri Prabawa Program Studi Teknik Informatika, STMIK AKAKOM Yogyakarta Jl. Raya Janti 143, Yogyakarta 55198 E-mail

Lebih terperinci

EVALUASI KINERJA ALGORITMA PERKALIAN MATRIKS BERANTAI DENGAN TEKNIK DYNAMIC PROGRAMMING

EVALUASI KINERJA ALGORITMA PERKALIAN MATRIKS BERANTAI DENGAN TEKNIK DYNAMIC PROGRAMMING EVALUASI KINERJA ALGORITMA PERKALIAN MATRIKS BERANTAI DENGAN TEKNIK DYNAMIC PROGRAMMING Farah Virnawati 1, Juwita Utami Putri 2, Ernastuti 3 1,2,3 Program Studi Teknik Informatika, Universitas Gunadarma

Lebih terperinci

LUX HASH FUNCTION. Brian Al Bahr NIM: Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung

LUX HASH FUNCTION. Brian Al Bahr NIM: Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung LUX HASH FUNCTION Brian Al Bahr NIM: 13506093 Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung E-mail: if16093@students.if.itb.ac.id,

Lebih terperinci

Program Dinamis. Oleh: Fitri Yulianti

Program Dinamis. Oleh: Fitri Yulianti Program Dinamis Oleh: Fitri Yulianti 1 Program Dinamis Program Dinamis (dynamic programming): - metode pemecahan masalah dengan cara menguraikan solusi menjadi sekumpulan tahapan (stage) - sedemikian sehingga

Lebih terperinci

Software yang digunakan yaitu: 1. Sistem Operasi Windows 7 2. Bloodshed Dev-C Notepad++ 4. Winmerge

Software yang digunakan yaitu: 1. Sistem Operasi Windows 7 2. Bloodshed Dev-C Notepad++ 4. Winmerge dapat dilihat pada Gambar 1. Penjelasan untuk masing-masing langkah adalah sebagai : Studi Literatur Tahapan ini diperlukan untuk mempelajari prinsip dasar aritmetika optimal extension field. Selain itu,

Lebih terperinci

BAB III METODOLOGI PENELITIAN

BAB III METODOLOGI PENELITIAN 38 BAB III METODOLOGI PENELITIAN 3.1 Desain Penelitian Studi Literatur: Peramalan, Curah Hujan, Knowledge Discovery in Database, Jaringan Saraf Tiruan, Backpropagation, Optimalisasasi Backpropagation Pengumpulan

Lebih terperinci

Penyelesaian Sum of Subset Problem dengan Dynamic Programming

Penyelesaian Sum of Subset Problem dengan Dynamic Programming Penyelesaian Sum of Subset Problem dengan Dynamic Programming Devina Ekawati 13513088 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10

Lebih terperinci

Organisasi & Arsitektur. Komputer. Org & Ars komp Klasifikasi Ars Komp Repr Data

Organisasi & Arsitektur. Komputer. Org & Ars komp Klasifikasi Ars Komp Repr Data Organisasi & Arsitektur Komputer Org & Ars komp Klasifikasi Ars Komp Repr Data Organisasi berkaitan dengan fungsi dan desain bagianbagian sistem komputer digital yang menerima, menyimpan dan mengolah informasi.

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Artificial Neural Network Artificial neural network (ANN) / jaringan saraf tiruan adalah konsep yang merefleksikan cara kerja dari jaringan saraf biologi kedalam bentuk artificial

Lebih terperinci

AKSELERASI GLOBAL PAIRWISE ALIGNMENT DENGAN SKEMA PARTISI BLOCKED COLUMN-WISE PADA SISTEM MEMORI TERDISTRIBUSI MAULANA RIZAL IBRAHIM

AKSELERASI GLOBAL PAIRWISE ALIGNMENT DENGAN SKEMA PARTISI BLOCKED COLUMN-WISE PADA SISTEM MEMORI TERDISTRIBUSI MAULANA RIZAL IBRAHIM AKSELERASI GLOBAL PAIRWISE ALIGNMENT DENGAN SKEMA PARTISI BLOCKED COLUMN-WISE PADA SISTEM MEMORI TERDISTRIBUSI MAULANA RIZAL IBRAHIM DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

Lebih terperinci

BAB 1 PENDAHULUAN. Universitas Sumatera Utara

BAB 1 PENDAHULUAN. Universitas Sumatera Utara 1 BAB 1 PENDAHULUAN 1.1 Latar Belakang Pencarian sebuah dokumen akan lebih cepat apabila informasi mengenai dokumen yang dicari tersebut telah diurutkan terlebih dahulu daripada saat kita akan mencari

Lebih terperinci

BAB II TINJAUAN PUSTAKA & LANDASAN TEORI

BAB II TINJAUAN PUSTAKA & LANDASAN TEORI BAB II TINJAUAN PUSTAKA & LANDASAN TEORI II.1. Tinjauan Pustaka Pengolahan citra sudah ada sejak dahulu, pengolahan citra dilakukan untuk meningkatkan kualitas dari suatu citra atau bahkan memodifikasi

Lebih terperinci

OPERASI MATRIKS. a 11 a 12 a 13 a 14 A = a 21 a 22 a 23 a 24 a 31 a 32 a 33 a 34 a 41 a 42 a 43 a 44

OPERASI MATRIKS. a 11 a 12 a 13 a 14 A = a 21 a 22 a 23 a 24 a 31 a 32 a 33 a 34 a 41 a 42 a 43 a 44 OPERASI MATRIKS Topik yang akan dibahas transpose perkalian TRANSPOSE Definisi: a 11 a 12 a 13 a 14 A = a 21 a 22 a 23 a 24 a 31 a 32 a 33 a 34 a 41 a 42 a 43 a 44 a 11 a 21 a 31 a 41 A T = a 12 a 22 a

Lebih terperinci

UNIVERSITAS INDONESIA ALGORITMA MARKOV CLUSTERING PARALEL UNTUK PENGELOMPOKAN PROTEIN SKRIPSI MUHAMMAD FAUZAN AKBAR MASYHUDI

UNIVERSITAS INDONESIA ALGORITMA MARKOV CLUSTERING PARALEL UNTUK PENGELOMPOKAN PROTEIN SKRIPSI MUHAMMAD FAUZAN AKBAR MASYHUDI UNIVERSITAS INDONESIA ALGORITMA MARKOV CLUSTERING PARALEL UNTUK PENGELOMPOKAN PROTEIN SKRIPSI MUHAMMAD FAUZAN AKBAR MASYHUDI 0706261783 FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM PROGRAM STUDI SARJANA

Lebih terperinci

MANAJEMEN MEMORI SISTEM OPERASI

MANAJEMEN MEMORI SISTEM OPERASI MANAJEMEN MEMORI SISTEM OPERASI Manajemen Memori Memori adalah pusat dari operasi pada sistem komputer modern, berfungsi sebagai tempat penyimpanan informasi yang harus diatur dan dijaga sebaik baiknya.

Lebih terperinci

Gambar 3.1 Desain Penelitian

Gambar 3.1 Desain Penelitian METODOLOGI PENELITIAN 3.1 Desain Penelitian Studi Literatur: Permalan Time Series, Harga Minyak Bumi, Jaringan Syaraf Tiruan, Backpropagation Pengumpulan Data Harga Minyak Bumi di Indonesia Perancangan

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1 Teori Graf 2.1.1 Defenisi Graf Graf G didefenisikan sebagai pasangan himpunan (V,E), ditulis dengan notasi G = (V,E), yang dalam hal ini V adalah himpunan tidak kosong dari simpul-simpul

Lebih terperinci

KOMPARASI SEKUENS DNA PADA VIRUS H5N1 PADA HOST MANUSIA DAN BURUNG MENGGUNAKAN METODE DIAGRAM POHON

KOMPARASI SEKUENS DNA PADA VIRUS H5N1 PADA HOST MANUSIA DAN BURUNG MENGGUNAKAN METODE DIAGRAM POHON KOMPARASI SEKUENS DNA PADA VIRUS H5N1 PADA HOST MANUSIA DAN BURUNG MENGGUNAKAN METODE DIAGRAM POHON DOSEN PEMBIMBING Prof. Dr. M. Isa Irawan, MT DR. rer. nat. Ir. Maya Shovitri, M.Si SITI FAUZIYAH NRP.1209201716

Lebih terperinci

Eksplorasi Algoritma Brute Force, Greedy, dan Dynamic Programming untuk Persoalan Integer Knapsack

Eksplorasi Algoritma Brute Force, Greedy, dan Dynamic Programming untuk Persoalan Integer Knapsack Eksplorasi Algoritma Brute Force, Greedy, dan Dynamic Programming untuk Persoalan Integer Knapsack Muhamad Pramana Baharsyah, Sulistyo Unggul Wicaksono 2, Teguh Pamuji 3, Rinaldi Munir 4 Abstrak Laboratorium

Lebih terperinci

Pertemuan 5: Pengenalan Variabel Array

Pertemuan 5: Pengenalan Variabel Array Pertemuan 5: Pengenalan Variabel Array Contoh kasus: Penghitungan Nilai IPK Nilai IPK mahasiswa ditentukan dengan algoritma sebagai berikut: Untuk setiap mata kuliah yang diambil oleh mahasiswa: Ambil

Lebih terperinci

SEGMENTASI CITRA PADA VIDEO DENGAN METODE LEVEL SET BERBASIS PEMROGRAMAN PARALEL GPU CUDA TUGAS AKHIR

SEGMENTASI CITRA PADA VIDEO DENGAN METODE LEVEL SET BERBASIS PEMROGRAMAN PARALEL GPU CUDA TUGAS AKHIR SEGMENTASI CITRA PADA VIDEO DENGAN METODE LEVEL SET BERBASIS PEMROGRAMAN PARALEL GPU CUDA TUGAS AKHIR Diajukan untuk Memenuhi Sebagian Persyaratan Mencapai Derajat Sarjana Teknik Informatika Disusun Oleh

Lebih terperinci

BAB III ALGORITMA GREEDY DAN PROGRAM DINAMIS

BAB III ALGORITMA GREEDY DAN PROGRAM DINAMIS BAB III ALGORITMA GREEDY DAN PROGRAM DINAMIS 3.1 Algoritma Greedy Algoritma Greedy merupakan metode yang paling populer dalam memecahkan persoalan optimasi. Hanya ada dua macam persoalan optimasi, yaitu

Lebih terperinci

SISTEM PENDUKUNG KEPUTUSAN PEMILIHAN PERGURUAN TINGGI UNTUK SISWA YANG MELANJUTKAN KULIAH PADA SMA N 1 TEGAL

SISTEM PENDUKUNG KEPUTUSAN PEMILIHAN PERGURUAN TINGGI UNTUK SISWA YANG MELANJUTKAN KULIAH PADA SMA N 1 TEGAL SISTEM PENDUKUNG KEPUTUSAN PEMILIHAN PERGURUAN TINGGI UNTUK SISWA YANG MELANJUTKAN KULIAH PADA SMA N 1 TEGAL Asep Nurhidayat Jurusan Teknik Informatika, Fakultas Ilmu Komputer Universitas Dian Nuswantoro

Lebih terperinci

BAB II KAJIAN TEORI 2.1 Kajian Penelitian Sebelumnya

BAB II KAJIAN TEORI 2.1 Kajian Penelitian Sebelumnya 5 BAB II KAJIAN TEORI 2.1 Kajian Penelitian Sebelumnya Traveling salesman problem (TSP) merupakan salah satu permasalahan yang telah sering diangkat dalam berbagai studi kasus dengan penerapan berbagai

Lebih terperinci

Paralelisasi Transformasi Fourier Para Arsitektur General Purpose Graphic Processing Unit Untuk Klasifikasi Alat Musik Dengan Solo Instrumen

Paralelisasi Transformasi Fourier Para Arsitektur General Purpose Graphic Processing Unit Untuk Klasifikasi Alat Musik Dengan Solo Instrumen Paralelisasi Transformasi Fourier Para Arsitektur General Purpose Graphic Processing Unit Untuk Klasifikasi Alat Musik Dengan Solo Instrumen Ridwan Rismanto 1 *, Nanik Suciati 2, Wahyu Suadi 3 Institut

Lebih terperinci

MENENTUKAN LINTASAN TERPENDEK SUATU GRAF BERBOBOT DENGAN PENDEKATAN PEMROGRAMAN DINAMIS. Oleh Novia Suhraeni 1, Asrul Sani 2, Mukhsar 3 ABSTRACT

MENENTUKAN LINTASAN TERPENDEK SUATU GRAF BERBOBOT DENGAN PENDEKATAN PEMROGRAMAN DINAMIS. Oleh Novia Suhraeni 1, Asrul Sani 2, Mukhsar 3 ABSTRACT MENENTUKAN LINTASAN TERPENDEK SUATU GRAF BERBOBOT DENGAN PENDEKATAN PEMROGRAMAN DINAMIS Oleh Novia Suhraeni 1, Asrul Sani 2, Mukhsar 3 ABSTRACT One of graph application on whole life is to establish the

Lebih terperinci

PENEMPATAN KANTOR POS DENGAN ALGORITMA PROGRAM DINAMIS

PENEMPATAN KANTOR POS DENGAN ALGORITMA PROGRAM DINAMIS PENEMPATAN KANTOR POS DENGAN ALGORITMA PROGRAM DINAMIS Hanson Prihantoro Putro (13505045) Sekolah Teknik Elektro dan Informatika ITB Jl. Ganesha 10 Bandung 40135 if15045@students.if.itb.ac.id ABSTRAK Makalah

Lebih terperinci

Disusun Oleh: Agenda. Terminologi Klasifikasi Flynn Komputer MIMD. Time Sharing Kesimpulan

Disusun Oleh: Agenda. Terminologi Klasifikasi Flynn Komputer MIMD. Time Sharing Kesimpulan Multiprocessor - Time Sharing Arsitektur dan Organisasi Komputer Disusun Oleh: Iis Widya Harmoko Ronal Chandra Yoga Prihastomo Magister Ilmu Komputer Universitas Budi Luhur Agenda Agenda presentasi adalah

Lebih terperinci

USUL PENELITIAN HIBAH BERSAING

USUL PENELITIAN HIBAH BERSAING BIDANG ILMU : KOMPUTER/ MEDIS USUL PENELITIAN HIBAH BERSAING AKSELERASI ALGORITMA MARCHING CUBE MENGGUNAKAN GENERAL PURPOSE GRAPHICAL PROCESSING UNIT (GPGPU) UNTUK MEMBANGUN PENCITRAAN MEDIS 3D Ketua :

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI A II LANDASAN TEORI 2.1 Komputasi Paralel Teknologi komputasi paralel sudah berkembang lebih dari dua dekade, penggunaannya semakin beragam mulai dari kebutuhan perhitungan di laboratorium fisika nuklir,

Lebih terperinci

Bab 8. Memori Virtual POKOK BAHASAN: TUJUAN BELAJAR: 8.1 LATAR BELAKANG

Bab 8. Memori Virtual POKOK BAHASAN: TUJUAN BELAJAR: 8.1 LATAR BELAKANG Bab 8 Memori Virtual POKOK BAHASAN: Latar Belakang Demand Paging Page Replacement Alokasi Frame Thrashing Contoh Sistem Operasi TUJUAN BELAJAR: Setelah mempelajari materi dalam bab ini, mahasiswa diharapkan

Lebih terperinci

BAB III METODE PENELITIAN. Tahapan yang dilakukan dalam penelitian ini disajikan pada Gambar 3. Pengujian

BAB III METODE PENELITIAN. Tahapan yang dilakukan dalam penelitian ini disajikan pada Gambar 3. Pengujian BAB III METODE PENELITIAN 3.1 Tahapan Penelitian Tahapan yang dilakukan dalam penelitian ini disajikan pada Gambar 3. Pengujian aplikasi dilakukan berdasarkan pada skenario pengujian yang ditentukan. 30

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB LANDASAN TEORI Bab ini berisi teori-teori yang berkaitan dengan Sistem Pendukung Keputusan, Weighted Product, Weighted Sum Product, Pengertian perguruan tinggi serta tujuan perguruan tinggi..1 Sistem

Lebih terperinci

Metode Sorting Bitonic Pada GPU

Metode Sorting Bitonic Pada GPU Metode Sorting Bitonic Pada GPU Yulisdin Mukhlis 1 Universitas Gunadarma Jl. Margonda Raya no 100 Depok ymukhlis@staff.gunadarma.ac.id Lingga Harmanto 2 Universitas Gunadarma Jl. Margonda Raya no 100 Depok

Lebih terperinci

BAB 4 IMPLEMENTASI DAN EVALUASI. dan sistem operasi dengan spesifikasi sebagai berikut: 1. Processor: Intel Pentium, Core Duo, 1.

BAB 4 IMPLEMENTASI DAN EVALUASI. dan sistem operasi dengan spesifikasi sebagai berikut: 1. Processor: Intel Pentium, Core Duo, 1. BAB 4 IMPLEMENTASI DAN EVALUASI 4.1 Lingkungan Perancangan Dalam perancangan program simulasi ini, penulis menggunakan komputer dan sistem operasi dengan spesifikasi sebagai berikut: 1. Processor: Intel

Lebih terperinci

Penentuan Menu Makan dengan Pemrograman Dinamis

Penentuan Menu Makan dengan Pemrograman Dinamis Penentuan Menu Makan dengan Pemrograman Dinamis Jordhy Fernando 13515004 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132,

Lebih terperinci

METODE PERKIRAAN UKURAN POHON PENCARIAN

METODE PERKIRAAN UKURAN POHON PENCARIAN METODE PERKIRAAN UKURAN POHON PENCARIAN Anggi Alisia Putri NIM : 13505096 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10,Bandung e-mail: if15096@students.if.itb.ac.id ABSTRAK

Lebih terperinci

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO Oky Dwi Nurhayati, ST, MT email: okydn@undip.ac.id 1 Program Dinamis (dynamic programming): - metode pemecahan masalah dengan cara menguraikan solusi

Lebih terperinci

Pertemuan ke 6 Set Instruksi. Computer Organization Dosen : Eko Budi Setiawan

Pertemuan ke 6 Set Instruksi. Computer Organization Dosen : Eko Budi Setiawan Pertemuan ke 6 Set Instruksi Computer Organization Dosen : Eko Budi Setiawan Tujuan Memahami representasi set instruksi, dan jenis-jenis format instruksi Mengetahui jenis-jenis type operand yang digunakan

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI 17 BAB II LANDASAN TEORI 2.1 Algoritma Dalam matematika dan komputasi, algoritma merupakan kumpulan perintah untuk menyelesaikan suatu masalah. Perintah-perintah ini dapat diterjemahkan secara bertahap

Lebih terperinci

JARINGAN UNTUK MERGING

JARINGAN UNTUK MERGING SORTING - Merging Definisi: A = {a 1, a 2,..., a r } B = {b 1, b 2,..., b s } merupakan dua deret angka yang terurut naik; merge A dan B merupakan deret C = {c 1, c 2,..., c r+s } yang juga terurut naik,

Lebih terperinci