1 PENGOPTIMUMAN ALIGNMENT STRUKTUR PROTEIN MENGGUNAKAN CLIQUE MAKSIMUM DIAN NUGRAHA DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR 2013 2 ABSTRAK DIAN NUGRAHA. Pengoptimuman Alignment Struktur Protein Menggunakan Clique Maksimum. Dibimbing oleh SISWANDI dan NUR ALIATININGTYAS. Alignment struktur protein menjelaskan hubungan kesamaan fungsi dari dua jenis protein. Permasalahan alignment struktur protein dapat dilihat melalui masalah Contact Map Overlap (CMO). Masalah CMO dapat diselesaikan dengan mencari clique maksimum pada suatu graf, dimana verteks dan sisi merepresentasikan asam-asam amino dan hubungan antar asam-asam amino secara berurutan. Pada karya ilmiah ini, permasalahan mencari clique maksimum menggunakan dua langkah utama, yaitu menyusun beberapa verteks dan sisi berdasar pada sifat khusus graf dan preprocessing verteks. Implementasi model dilakukan dengan menggunakan struktur protein hipotetik. Kata kunci: Contact Map Overlap, alignment, protein, clique maksimum 3 ABSTRACT DIAN NUGRAHA. Optimization of Protein Structure Alignments Using Maximum Cliques. Supervised by SISWANDI and NUR ALIATININGTYAS. An alignment of protein structures describes the relationship of two types of proteins similarity function. The problems of the protein structure alignments can be identified through the problems of the Contact Map Overlap (CMO). The problems of CMO can be solved by finding a maximum clique in a graph, where vertices and edges represent the amino acids and contacts between any two amino acids respectively. In this paper, the problem of finding maximum cliques is using two main steps, the arranging vertices and edges based on the special properties of the graph and preprocessing vertices. Implementation of the model is done by using the structure of a hypothetical protein. Keywords: Contact Map Overlap, alignments, protein, maximum cliques 4 PENGOPTIMUMAN ALIGNMENT STRUKTUR PROTEIN MENGGUNAKAN CLIQUE MAKSIMUM DIAN NUGRAHA Skripsi sebagai salah satu syarat untuk memperoleh gelar Sarjana Sains pada Departemen Matematika DEPARTEMEN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR 2013 5 Judul Skripsi Nama NIM : Pengoptimuman Alignment Struktur Protein Menggunakan Clique Maksimum : Dian Nugraha : G54070045 Menyetujui Pembimbing I, Pembimbing II, Drs. Siswandi, M.Si. NIP: 19640629 199103 1 001 Dra. Nur Aliatiningtyas, MS. NIP: 19610104 198803 2 002 Mengetahui: Ketua Departemen, Dr. Berlian Setiawaty, M.S. NIP: 19650505 198903 2 004 Tanggal Lulus: 6 KATA PENGANTAR Puji syukur penulis panjatkan kepada Allah swt atas berkat, rahmat dan kasih sayang-Nya sehingga penulis mampu menyelesaikan karya ilmiah ini. Berbagai kendala dialami oleh penulis sehingga banyak sekali orang yang membantu dan berkontribusi dalam pembuatan karya ilmiah ini. Untuk itu penulis mengucapkan terima kasih yang sebesar-besarnya kepada : 1. keluarga tercinta: Ibu dan Bapakku (terima kasih atas doa, dukungan, kesabaran, kepercayaan, kasih sayang, dan motivasinya), Adik-adikku (terima kasih atas doa, semangat, motivasi dan dukungannya), dan keluarga besar baik dari Ibu dan Bapak (terima kasih atas doanya), 2. Drs. Siswandi, M.Si. selaku dosen pembimbing I yang telah meluangkan waktu dan pikiran dalam membimbing, memberi motivasi, semangat dan doa, 3. Dra. Nur Aliatiningtyas, MS. selaku dosen pembimbing II yang telah memberikan ilmu, kritik dan saran, motivasi serta doanya, 4. Muhammad Ilyas. S.Si, M.Sc selaku dosen penguji yang telah memberikan ilmu, saran dan doanya, 5. segenap dosen Departemen Matematika IPB, terima kasih atas semua ilmu yang telah diberikan, 6. staf Departemen Matematika: Bapak Yono, Ibu Susi, Ibu Ade, Alm. Bapak Bono, Bapak Deni, Mas Hery, Ibu Yanti atas semangat dan doanya, 7. sahabat terbaik saya, Aulia Retnoningtyas, Pandi, Della Azizah, Mirna Sari Dewi, Wenti Ismayulia, Eka Nurhasannudin, sahabat-sahabat saya di Pondok Handayani, sahabatsahabat saya di DR C30, Komunitas Author of The Dream dan teman-teman Botit yang tidak bisa saya sebutkan satu persatu (terima kasih atas semangat, motivasi dan doanya), 8. teman-teman mahasiswa Matematika angkatan 44: Rizqy, Denda, Imam, Mutia, Masayu, Sri, Rachma, Fajar, Rofi, Ayung, Lina, Siska, dan teman-teman lainnya atas doa, dukungan semangatnya serta kebersamaannya selama 4 tahun, 9. kakak-kakak Matematika angkatan 42 dan 43 yang menjadi cermin untuk menjadi pribadi yang lebih baik, 10. adik-adik Matematika angkatan 45 dan 46 yang terus mendukung agar berkembang, 11. Gumatika yang menunjukkan sebuah hal yang baru, 12. semua pihak yang telah membantu dalam penyusunan karya ilmiah ini. Semoga karya ilmiah ini dapat bermanfaat bagi dunia ilmu pengetahuan khususnya bidang matematika dan menjadi inspirasi bagi penelitian selanjutnya. Bogor, September 2013 Dian Nugraha 7 RIWAYAT HIDUP Penulis dilahirkan di Jakarta pada tanggal 13 Januari 1989 dari bapak Engking Sukiman dan ibu Ipah Tasripah. Penulis merupakan putra pertama dari tiga bersaudara. Penulis menyelesaikan pendidikan dasar dan menengah di SD Negeri Benda Baru II pada tahun 2001, SMP Negeri 2 Pamulang pada tahun 2004, dan tahun 2007 penulis lulus dari SMA Negeri 1 Kota Tangerang Selatan. Pada tahun 2007 pula penulis diterima sebagai mahasiswa IPB melalui jalur Undangan Seleksi Masuk IPB (USMI). Penulis memilih mayor Matematika pada Departemen Matematika, Fakultas Matematika dan Ilmu Pengetahuan Alam. Penulis aktif dalam organisasi kemahasiswaan di kampus, seperti organisasi himpunan profesi Departemen Matematika yang dikenal dengan GUMATIKA (Gugus Mahasiswa Matematika) sebagai Staf Divisi Pengembangan Sumber Daya Mahasiswa (PSDM) tahun 2009-2010. Penulis pernah menjadi ketua Komisi Disiplin dalam acara Masa Perkenalan Departemen untuk angkatan 2008 dan 2009 atau angkatan 45 dan 46, serta penulis juga pernah menjadi anggota panitia dan koordinator di berbagai acara kemahasiswaan. Penulis juga aktif dalam organisasi non kemahasiswaan, yaitu komunitas penulis muda di IPB bernama Author of The Dream dan telah menerbitkan kumpulan cerpen bersama berjudul SAM! Sinema Akhir Mahasiswa. 8 DAFTAR ISI Halaman DAFTAR TABEL ........................................................................................................................ ix DAFTAR GAMBAR ................................................................................................................... ix DAFTAR LAMPIRAN ................................................................................................................ I x PENDAHULUAN 1.1 Latar Belakang .................................................................................................................. 1.2 Tujuan Penulisan .............................................................................................................. 1 1 II LANDASAN TEORI 2.1 Graf ................................................................................................................................... 2.2 Protein .............................................................................................................................. 1 3 III MASALAH CONTACT MAP OVERLAP 3.1 Contact Map Protein ......................................................................................................... 3.2 Contact Map Overlap ....................................................................................................... 4 4 IV PEMODELAN MASALAH CONTACT MAP OVERLAP 4.1 Relasi Masalah CMO dalam Masalah Clique Maksimum ................................................ 4.2 Sifat Khusus Graf ........................................................................................................ 4.2.1 Susunan Verteks dalam Graf .............................................................................. 4.2.2 Preprocessing Berdasarkan Verteks Tetangga ........................................................ 6 8 8 9 V STUDI KASUS 5.1 Penentuan Graf ............................................................................................................ 12 5.2 Penentuan Batas Bawah Graf ...................................................................................... 13 5.3 Preprocessing Penyelesaian Masalah Contact Map Overlap ........................................... 15 VI SIMPULAN DAN SARAN 5.1 Simpulan ........................................................................................................................... 17 DAFTAR PUSTAKA ............................................................................................................. 18 LAMPIRAN ........................................................................................................................... 19 viii 9 DAFTAR TABEL 1 2 Halaman Derajat setiap verteks di graf ................................................................................ 26 Posisi (baris dan kolom) setiap verteks tetangga di graf .................................................. 26 DAFTAR GAMBAR 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 Halaman Graf ................................................................................................................. 1 Adjacent dan incident ........................................................................................................ 2 Ilustrasi derajat pada graf ................................................................................................... 2 Clique-4 ............................................................................................................................. 2 Tingkatan struktur protein ................................................................................................. 3 Contact map protein A dan B ............................................................................................ 4 Contact map overlap pada protein A dan B ....................................................................... 4 Masalah CMO takfisibel pada protein A dan B ................................................................. 5 Contoh masalah CMO pada protein A dan B .................................................................... 6 Contoh solusi fisibel graf berdasar Gambar 9 .............................................................. 7 Contoh solusi takfisibel graf berdasar Gambar 8 .......................................................... 7 Graf berdasarkan contoh pada Gambar 6 ..................................................................... 7 Penomoran diagonal tenggara graf ............................................................................... 8 Hipotetis protein A dan B .................................................................................................. 12 Verteks yang terbentuk ................................................................................................. 12 Overlap ,( } ...................................................................... 12 Sisi fisibel .......................................................................................................................... 12 Overlap , ..................................................................... 13 Sisi fisibel .......................................................................................................................... 13 Overlap , ..................................................................... 13 Sisi fisibel .......................................................................................................................... 12 Graf Gp berdasar Gambar 14 ............................................................................................. 13 Penyederhanaan notasi graf .......................................................................................... 13 Verteks sebagai awal .............................................................................................. 14 ...................................................................................................................... 14 ......................................................................................................... 14 .............................................................................................. 14 Clique-4 dengan ..................................................... 14 Penomoran diagonal tenggara graf ................................................................................ 15 Diagonal tenggara (5) dan (6) graf ............................................................................... 15 Subgraf berisi verteks diagonal tenggara (5) dan (6) dari graf ..................................... 15 Graf hasil Langkah 2 ......................................................................................................... 15 Graf hasil Langkah 3 ......................................................................................................... 16 Verteks awal .......................................................................................................... 16 Pewarnaan verteks merah dan biru .................................................................................... 16 Pewarnaan verteks merah, biru dan kuning ........................................................................ 16 Hasil pewarnaan graf .................................................................................................... 16 Clique maksimum graf ................................................................................................. 17 Solusi optimal graf ....................................................................................................... 17 Overlap optimal masalah CMO berdasar Gambar 14 ........................................................ 17 Posibilitas pasangan overlap fisibel berdasar Gambar 14 .................................................. 22 ix 10 DAFTAR LAMPIRAN 1 2 3 4 5 6 7 Halaman Pembuktian Lemma 2 ........................................................................................................ 20 Pembuktian Teorema 1 ...................................................................................................... 20 Pembuktian Lemma 3 ........................................................................................................ 21 Pembuktian Lemma 4 ........................................................................................................ 21 Posibilitas CMO fisibel untuk mencari jumlah berdasarkan Gambar 12 ................ 22 Penentuan banyaknya derajat setiap verteks di graf ..................................................... 26 Penentuan posisi baris atau kolom verteks tetangga untuk setiap verteks di graf ......... 26 x 11 I PENDAHULUAN 1.1 Latar Belakang Protein merupakan salah satu biomakromolekul yang penting peranannya dalam makhluk hidup. Protein terbentuk dari rangkaian asam-asam amino yang terikat satu sama lain dalam ikatan peptida. Urutan asam amino yang khas dan berbeda akan memengaruhi konformasi tiga dimensi (3D) dalam struktur tersier pada setiap jenis protein. Ketika suatu polipeptida dalam protein melipat, asam amino yang tidak berturutan di dalam rangkaian aslinya dapat juga sangat dekat dan membentuk suatu hubungan contact antara satu sama lain yang diakibatkan oleh pengaruh fisik dan kimiawi protein tersebut. Hubungan contact yang terjadi dalam struktur tersier tersebut dapat direpresentasikan secara simetri sebagai contact map. Contact map dalam protein dapat dinyatakan sebagai suatu graf takberarah yang merepresentasikan secara singkat struktur tiga dimensi dari protein dengan verteks menyatakan asam amino dan sisi antara dua verteks menyatakan keadaan dua asam amino yang mengalami contact. Pada contact map yang ekuivalen dalam dua protein, akan terdapat suatu alignment yang menunjukkan suatu ikatan antara contact-contact dalam protein pertama dengan contact-contact dalam protein kedua. Setiap pasangan contact tersebut dinamakan overlap. Masalah Contact Map Overlap (CMO) bertujuan mengukur kesamaan antara dua struktur tersier protein dengan membandingkan kedekatan asam amino yang tidak berturutan. Solusinya adalah dengan menentukan jumlah overlap maksimum yang dapat terbentuk. Model masalah Contact Map Overlap dari alignment struktur protein dapat digambarkan sebagai masalah maksimum clique dalam suatu kasus pendefinisian graf. Sebuah clique dalam graf adalah subgraf dengan sifat bahwa setiap pasang verteksnya terhubung oleh sisi. Dalam karya ilmiah ini akan dibahas masalah Contact Map Overlap yang optimal pada protein dengan menggunakan metode maksimum clique. Sumber utama karya ilmiah ini diambil dari jurnal yang berjudul Optimal Protein Structure Alignment Using Maximum Cliques (Dawn M Strickland et al. 2005). 1.2 Tujuan Penulisan Tujuan penulisan karya ilmiah ini ialah sebagai berikut : 1. Menyelesaikan masalah CMO pada protein dengan cara mencari clique maksimum dalam suatu masalah graf. 2. Memberikan studi kasus untuk mencari solusi yang optimal dalam masalah CMO. II LANDASAN TEORI 2.1 Graf Definisi 1 (Graf) Suatu graf adalah pasangan terurut dengan atau adalah himpunan berhingga dan takkosong dari elemen graf yang disebut verteks (node, point), sedangkan atau adalah himpunan pasangan yang menghubungkan dua verteks dalam graf disebut sisi (edge, line). Setiap sisi pada dapat dinotasikan dengan atau . Banyaknya verteks dari suatu graf disebut order dan banyaknya sisi pada suatu graf disebut size. (Chartrand & Zhang 2009) Graf : w u x v Gambar 1 Graf Pada Gambar 1 diperlihatkan graf y . dengan dan Order dari graf pada Gambar 1 adalah 5 dan size-nya adalah 4. 12 Definisi 2 (Adjacent dan incident) Misalkan dan verteks pada graf . Verteks dikatakan tetangga (adjacent) dari jika ada sisi yang menghubungkan verteks dan , yaitu . Himpunan semua tetangga dari verteks dinotasikan dengan . Jika adalah sisi pada graf maka dikatakan incident dengan verteks dan . (Chartrand & Zhang 2009) Graf : u e2 x v e1 e3 e4 e5 w Gambar 2 Adjacent dan incident. Ilustrasi adjacent dan incident diperlihatkan pada Gambar 2. Verteks adjacent dengan verteks dan tetapi verteks tidak adjacent dengan verteks . Verteks incident dengan sisi , tetapi verteks tidak incident dengan sisi . Definisi 3 (Derajat/degree) Derajat suatu verteks adalah banyaknya sisi yang incident dengan verteks , dan dinotasikan dengan atau atau . (Vasudev 2007) Graf Definisi 4 (Subgraf) Suatu graf dikatakan subgraf dari graf jika dan . (Chartrand & Oellermann 1995) Graf merupakan subgraf dari graf . Definisi 5 (Neighbour/neighbor) Neighbour/neighbor dari himpunan verteks dalam graf adalah himpunan dari semua verteks yang adjacent dengan verteks dalam dan dinotasikan dengan . (Chartrand & Oellermann 1995) Definisi 6 (Clique) Clique dalam graf adalah subgraf dari dimana untuk setiap pasang verteks dan dalam , . Clique dikatakan maksimum (clique maksimum) jika tidak ada clique lain yang dapat dibentuk dan memuat order lebih besar daripada clique tersebut di graf . Banyaknya order maksimum dalam suatu clique disebut clique number dari graf dan dinotasikan oleh . Clique dapat dituliskan sebagai clique-k adalah clique yang dibentuk oleh verteks. (Chartrand & Oellermann 1995) Sebagai ilustrasi, graf pada Gambar 4 merupakan clique maksimum berdasarkan graf dengan clique-4. Graf : y : w y x z w x v Gambar 4 Clique-4. u v Gambar 3 Ilustrasi derajat pada graf. Pada Gambar 3 diperlihatkan bahwa , , dan . Definisi 7 (Pewarnaan/coloring) Pewarnaan dari graf merupakan pemberian warna verteks dari , sehingga verteks yang adjacent mempunyai warna yang berbeda. Jika ada warna yang digunakan, maka pewarnaan disebut sebagai n-coloring. (Chartrand & Oellermann 1995) 13 Definisi 8 (Chromatic number) Chromatic number dari suatu graf adalah banyaknya warna minimum yang dapat digunakan dalam pewarnaan graf dan dinotasikan dengan . (Vasudev 2007) Definisi 9 (Graf Perfect) Graf perfect adalah suatu graf yang mempunyai clique number dan chromatic number yang sama . (Chartrand & Oellermann 1995) 2.2 Protein Protein merupakan polimer yang dibentuk dari rangkaian asam-asam amino, yaitu molekul organik yang memiliki gugus karboksil (COOH) dan gugus amino (NH2) (Campbell et al. 2004). Dua asam amino yang diposisikan sedemikian rupa sehingga gugus karboksil dari satu asam amino berdekatan dengan gugus amino dari asam amino yang lain akan membentuk suatu ikatan kovalen yang disebut ikatan peptida. Jika proses itu dilakukan berulang-ulang, maka akan menghasilkan polipeptida, suatu polimer yang terdiri dari banyak asam amino yang berikatan melalui ikatan peptida. Jenis protein sangat beragam, tetapi semua molekulnya dibangun dari kumpulan 20 asam amino yang sama dengan urutan asam amino yang khas dan berbeda. Hal ini disebabkan karena kondisi fisik dan kimiawi lingkungan protein tersebut. Perbedaan urutan asam amino yang unik di sepanjang rantai polipeptida menentukan konformasi (bentukbentuk molekul) tiga dimensi apa yang akan diambil oleh protein tersebut. Banyak protein berbentuk globuler (secara kasar agak bulat), sementara yang lain bentuknya seperti serat. Protein adalah makromolekul yang mempunyai struktur paling kompleks. Bentuk arsitektur kompleks protein terdiri dari tiga tingkatan struktur yang saling berimpitan yaitu struktur primer, sekunder dan tersier. Struktur primer terdiri dari asam-asam amino yang dihubungkan oleh ikatan peptida dan mempunyai urutan yang spesifik. Struktur sekunder adalah pelipatan atau pelilitan polipeptida dalam konfigurasi berulang, seperti α-heliks dan lembaran berlipat-lipat (β-sheet) yang dihasilkan dari pembentukan ikatan hidrogennya. Struktur tersier adalah keseluruhan bentuk tiga dimensi suatu polipeptida dan dihasilkan dari interaksi antara rantai-rantai samping asam amino. Tingkatan keempat, yaitu struktur kuartener yang terjadi ketika suatu protein terdiri atas dua atau lebih rantai polipeptida (Campbell et al. 2004). Protein dapat mengalami pelipatan (folding). Pelipatan protein memengaruhi konformasi tiga dimensi dalam rangkaian polipeptida yang mengakibatkan adanya hubungan contact asam-asam amino antara satu protein ke protein lain. Hubungan contact ini disebabkan adanya kesamaan sifat fisik dan kimiawi antara asam-asam aminonya. Gambar 5 Tingkatan struktur protein (primer (atas) sampai dengan kuartener (bawah)) 14 III MASALAH CONTACT MAP OVERLAP 3.1 Contact Map Protein Struktur tersier protein menggambarkan konformasi tiga dimensi (3D) yang dapat disederhanakan menjadi dua dimensi melalui contact map antar asam amino. Ahli biologi mendefinisikan contact map dalam protein sebagai graf takberarah yang berisi satu verteks untuk satu asam amino dan sisi antara dua verteks menyatakan bila antara dua asam amino yang tidak berturutan dalam keadaan “in contact”, yaitu jika karbon alfa dari dua asam amino yang tidak berturutan sangat dekat satu sama lain dalam struktur tersier protein. Ketika protein melipat, ikatan peptida memaksa asam-asam amino yang berturutan dalam rangkaian aslinya pun dapat juga sangat dekat antara satu sama lain dalam struktur tersier. Dikarenakan asam amino dan berturutan, mereka saling berbagi ikatan peptida dan secara otomatis mengalami contact. Namun contact yang demikian tidak dianggap dan tidak dibahas dalam permasalahan ini. Secara matematika, Erik Bernstein (2008) mendefinisikan contact map dari suatu rangkaian polipeptida yang mengandung asam amino dapat direpresentasikan sebagai suatu graf takberarah dengan himpunan verteks dan sebagai himpunan sisi , dengan syarat: Misalkan diberikan dua protein, yaitu protein A dan protein B yang masing-masing memiliki 6 asam amino. Pada protein A, asam amino 1 mengalami contact dengan asam amino 3 dan 4, tetapi tidak dengan asam amino 2, 5 dan 6. Selanjutnya contact lain terjadi pada asam amino 2 dengan 6, asam amino 3 dengan 1 dan 5, serta asam amino 4 dengan 1 dan 6. Pada protein B, asam amino 1 mengalami contact dengan asam amino 2 dan 4, tetapi tidak dengan asam amino 3, 5 dan 6. Selanjutnya contact lain terjadi pada asam amino 2 dengan 1 dan 5, asam amino 3 dengan 6, serta asam amino 4 dengan 1 dan 6. Sehingga didapatkan protein A dan protein B sama-sama memiliki 5 contact map yang dapat dilihat pada Gambar 6 berikut. Protein A 1 2 3 4 5 6 1 2 3 4 5 6 Protein B Gambar 6 Contact map protein A dan B. 3.2 Contact Map Overlap Masalah Contact Map Overlap (CMO) merupakan permasalahan dalam pencarian overlap terbanyak yang dapat dibentuk dari asam-asam amino yang berikatan antara dua jenis protein. Tujuannya adalah memetakan kesamaan antara dua struktur tersier protein dengan membandingkan kedekatan dari asam amino yang tidak berturutan dan memberikan suatu alignment antara contact map di protein pertama dengan contact map di protein kedua. Setiap pasangan contact antara dua protein yang dihubungkan oleh suatu alignment tersebut dinamakan “overlap”. Misalkan diberikan suatu masalah CMO pada protein A dan protein B sebagai berikut: Protein A 1 2 3 4 5 6 1 2 3 4 5 6 Protein B Gambar 7 Contact map overlap pada protein A dan B. 15 Pada Gambar 7, garis putus-putus antara asam-asam amino pada protein A dan protein B merepresentasikan alignment. Diketahui bahwa terdapat alignment dari asam amino 1 pada protein A dengan asam amino 1 pada protein B , dengan , dengan , dengan dan dengan . Suatu overlap adalah suatu pasangan terurut dimana contact A dan contact B dihubungkan oleh alignment. Berdasarkan hal tersebut, hubungan antara contact dengan contact , contact dengan contact , dan contact dengan contact adalah overlap, yaitu , dan . Suatu alignment akan fisibel jika telah memenuhi dua pembatasan sebagai berikut: 1) Tidak ada asam amino dari satu protein dapat diberi alignment dengan lebih dari satu asam amino pada protein lain. Asumsi ini disebut pembatasan eksklusifitas. 2) Urutan asam amino dapat dipertahankan secara baik dalam alignment. Artinya alignment tidak boleh saling bersilangan, yaitu jika asam amino i dan j dalam satu protein diberi alignment dengan asam amino dan dalam protein lain, maka harus berlaku jika dan hanya jika . Asumsi ini disebut sebagai pembatasan pengurutan. Pada Gambar 7, alignment yang terbentuk adalah alignment fisibel karena telah memenuhi pembatasan eksklusifitas (1) dan pembatasan pengurutan (2), sehingga masalah masalah CMO yang terbentuk akan fisibel. Jika terbentuk suatu alignment yang tidak memenuhi pembatasan eksklusifitas (1) dan pembatasan pengurutan (2), maka alignment akan takfisibel. Sehingga masalah CMO yang terbentuk juga akan takfisibel. Gambar 8 berikut akan menunjukkan contoh masalah CMO yang takfisibel. Protein A 1 2 3 4 5 6 1 2 3 4 5 6 Protein B Gambar 8 Masalah CMO takfisibel pada protein A dan B. Pada Gambar 8, diketahui bahwa asam amino memiliki dua alignment yang menghubungkan asam amino ( ) dan asam amino ( ). Kemudian terdapat alignment yang saling bersilangan ketika overlap yang dibentuk adalah pada dan . Berdasarkan hal tersebut, pembatasan eksklusifitas (1) dan pembatasan pengurutan (2) dilanggar, sehingga masalah CMO tersebut takfisibel. 16 IV PEMODELAN MASALAH CONTACT MAP OVERLAP 4.1 Relasi Masalah CMO dalam Masalah Clique Maksimum Dalam menentukan banyaknya overlap maksimum yang terjadi di antara dua protein, masalah CMO dapat ditransformasikan menjadi suatu masalah maksimum clique pada graf khusus dengan verteks order-preserving alignment yaitu tidak ada asam amino yang dapat diberi alignment dengan lebih dari satu asam amino. Sehingga memenuhi syarat kefisibelan alignment. dimana menyatakan himpunan contact protein A dan menyatakan himpunan contact protein B. Verteks dinyatakan dalam grid baris dan kolom, dengan verteks baris untuk setiap contact di dan verteks kolom untuk setiap contact di . Oleh karena itu setiap verteks bersesuaian dengan overlap pada contact dalam protein A dan contact dalam protein B. Secara implisit, suatu verteks yang demikian merepresentasikan suatu alignment dari asam amino dengan asam amino dan alignment dari asam amino dengan asam amino . Sisi ada antara dua verteks jika pasangan verteks tersebut overlap dan juga merupakan solusi fisibel dari contact map overlap yang terjadi. Solusi dari masalah CMO akan fisibel (solusi fisibel) jika telah memenuhi syarat kefisibelan alignment, yaitu memenuhi pembatasan eksklusifitas (1) dan pembatasan pengurutan (2). Lemma berikut akan menunjukkan bahwa setiap verteks merepresentasikan solusi fisibel untuk CMO. Protein A Lemma 1 Diberikan protein A dengan contact dan protein B dengan contact , setiap verteks dari adalah solusi fisibel untuk CMO. Bukti: Anggap suatu verteks sembarang bersesuaian dengan contact dan . Tanpa menghilangkan sifat umumnya, asumsikan bahwa dan . Selanjutnya jika asam amino dengan asam amino dan dengan diberikan suatu alignment, maka terdapat Misalkan diberikan suatu contoh masalah CMO sebagai berikut: 1 2 3 4 5 6 1 2 3 4 5 6 Protein B Gambar 9 Contoh masalah CMO pada protein A dan B. Pada Gambar 9, dapat diketahui bahwa overlap yang terbentuk antara protein A dan protein B, yaitu overlap , dan , memiliki alignment yang fisibel karena telah memenuhi pembatasan eksklusifitas dan pembatasan pengurutan. Berdasarkan masalah CMO pada Gambar 9, akan ditunjukkan cara menentukan verteks dan sisi yang merupakan solusi fisibel. Misalkan diberikan: 1. Verteks dengan dan . 2. Verteks dengan dan . 3. Verteks dengan dan . Sehingga sisi yang terbentuk adalah: 1. 2. 3. Selanjutnya graf yang didapatkan juga merupakan suatu solusi fisibel bagi masalah CMO dan dapat dilihat pada Gambar 10. 17 Protein B B1B4 B2B5 Protein B B3B6 B4B6 A1A3 A1A3 A1A4 A1A4 A2A6 A3A5 B1B4 B2B5 B3B6 B4B6 A2A6 A3A5 A4A6 A4A6 Gambar 10 Contoh solusi fisibel graf berdasar Gambar 9. Kemudian, berdasarkan Gambar 8, verteks dan sisi yang terbentuk juga merupakan solusi takfisibel dalam graf dan dilihat pada Gambar 11. Protein B B1B2 B1B4 B2B5 B3B6 B4B6 A1A3 A1A4 Protein A B1B2 Protein A Protein A B1B2 A2A6 A3A5 A4A6 Gambar 11 Contoh solusi takfisibel graf berdasar Gambar 8. Untuk mendapatkan suatu graf berdasar pada Gambar 6, terlebih dahulu dicari semua kemungkinan contact map overlap yang dapat terbentuk dan merupakan solusi fisibel. Sehingga berdasar pada kemungkinan yang telah didapatkan, selanjutnya sisi dalam graf-graf tersebut digabungkan menjadi satu graf yang utuh yaitu graf . Gambar 12 Graf berdasarkan contoh pada Gambar 6. Gambar 12 menunjukkan graf untuk masalah Contact Map Overlap berdasar pada Gambar 6. Graf tersebut dibentuk oleh 25 verteks dan 24 sisi. Setelah didapatkan suatu graf , selanjutnya akan dicari solusi optimal dengan cara mencari clique maksimum yang terbentuk dalam graf . Misalkan diketahui himpunan verteks . Untuk setiap himpunan verteks dalam , jika masing-masing pasangan verteks bersesuaian dengan suatu solusi fisibel CMO, maka semua himpunan verteks juga bersesuaian dengan solusi fisibel CMO. Hal itu merupakan relasi jika dan hanya jika, sehingga pasangan fisibel ini merupakan syarat perlu dan syarat cukup untuk kefisibelan seluruh himpunan seperti ditunjukkan pada Lemma 2 berikut. Lemma 2 Diberikan protein A dan protein B, himpunan verteks bersesuaian dengan solusi fisibel CMO jika dan hanya jika setiap pasangan verteks , bersesuaian dengan solusi fisibel CMO. (pembuktian Lemma 2 dapat dilihat pada Lampiran 1) 18 Corollary 1 Diberikan protein A dan protein B, terdapat korespondensi satu-satu antara clique di dengan solusi yang fisibel untuk CMO dan clique maksimum di bersesuaian dengan solusi optimal untuk CMO. Bukti: Hasil dari Corollary 1 merupakan akibat langsung dari Lemma 2 dan dari definisi bahwa solusi optimal bagi CMO adalah jumlah maksimum verteks yang fisibel secara bersamaan di . Berdasarkan Lemma 2 dan Corollary 1, didapatkan suatu transformasi dari masalah CMO ke masalah maksimum clique dan menunjukkan bahwa suatu clique maksimum di bersesuaian dengan solusi optimal dari CMO. 4.2 Sifat Khusus Graf Berikut akan dijelaskan beberapa sifat khusus graf yang berguna dalam preprocessing step untuk mencari solusi optimal dalam graf . Preprocessing step adalah langkah untuk mencari clique maksimum dan pewarnaan minimum dalam graf sehingga didapatkan suatu graf perfect yang merupakan solusi optimal dari graf . 4.2.1 Susunan Verteks dalam Graf Verteks dari graf disusun menjadi dua dimensi grid, yaitu baris untuk setiap contact pada protein A dan kolom untuk setiap contact pada protein B. Selanjutnya semua sisi dalam graf diatur agar mempunyai orientasi (arah) yang sama. Hal tersebut dapat dilihat pada Teorema 1 berikut. Teorema 1 Diberikan suatu protein dengan menyatakan dan menotasikan contact map dengan asam amino dari protein . Untuk setiap protein , didefinisikan suatu lexicographic dalam ordering yaitu contact diurutkan berdasarkan urutan menaik dan urutan menaik . Jika graf disusun dengan cara tersebut, maka semua sisi dalam akan berorientasi menuju ke kanan bawah ( ) atau arah ini dinamakan “diagonal tenggara”. (pembuktian Teorema 1 dapat dilihat pada Lampiran 2). Berdasar pada Teorema 1, diberikan suatu cara untuk memberikan penomoran himpunan diagonal tenggara dari graf , dengan mengawali penomoran dari baris paling akhir kolom pertama sampai baris awal kolom terakhir. Dengan kata lain himpunan diagonal tenggara dari graf adalah himpunan semua verteks pada graf sepanjang semua garis dengan slope -1 (lihat Gambar 13). Protein B B1B2 B1B4 B2B5 B3B6 B4B6 A1A3 Protein A Selanjutnya akan ditunjukkan suatu solusi optimal untuk masalah CMO akan bersesuaian dengan suatu clique maksimum dalam . Hal ini dijelaskan dalam Corollary 1 sebagai berikut: (9) A1A4 (8) A2A6 (7) A3A5 (6) A4A6 (1) (2) (3) (4) (5) Gambar 13 Penomoran diagonal tenggara graf . Verteks graf yang terletak pada baris kolom (verteks ) dan pada baris kolom (verteks ) berada pada diagonal tenggara yang sama jika . Selanjutnya berikan penomoran diagonal tenggara dari kiri bawah menuju kanan atas graf , sehingga verteks adalah salah satu dari verteks pada diagonal tenggara ke dengan adalah banyaknya baris. Pada diagonal tenggara ke 19 terdapat verteks sebanyak verteks, dengan adalah banyaknya kolom. Misalkan akan ditunjukkan letak dan banyaknya verteks yang berada sepanjang diagonal tenggara dari verteks atau verteks pada baris kedua dan kolom ketiga (verteks ) pada Gambar 12. Diketahui jumlah baris , dan jumlah kolom . Nilai dari dan = = 4. Disimpulkan bahwa verteks adalah bagian dari diagonal tenggara bernomor 6 dan memiliki 4 verteks sepanjang diagonal tenggaranya. Selanjutnya penomoran diagonal tenggara akan digunakan sebagai alat untuk mereduksi graf dengan menggunakan Lemma 3 sebagai berikut: Lemma 3 Tidak ada clique yang lebih besar dari clique- dapat memiliki verteks yang berada pada diagonal tenggara yang berisikan verteks atau kurang. (pembuktian Lemma 3 dapat dilihat pada Lampiran 3). Berdasar hasil Lemma 3, jika diberikan suatu batas bawah (lower bound) di graf , maka semua diagonal tenggara di graf yang mempunyai verteks atau kurang akan dapat dihapus. Hal itu bertujuan mereduksi graf dan menunjukkan bahwa suatu clique maksimum terdapat pada himpunan diagonal tenggara tersebut. Untuk mencari batas bawah dalam menentukan clique maksimum di graf , akan digunakan suatu metode berdasarkan (Strickland, DM. 2008) sebagai berikut: Misalkan diberikan graf , 1. Ambil . 2. Pilih sebagai verteks di graf yang berderajat maksimum. Tambahkan ke . 3. Pilih verteks berderajat terbesar yang adjacent dengan , tambahkan ke . Lalu hapus semua verteks yang tidak adjacent dengan dari . 4. Jika kosong, maka berhenti. Jika tidak, kembali ke langkah 2. Pada dasarnya, akan memuat verteks dengan derajat terbesar yang terhubung satu sama lain membentuk clique. Order dari himpunan yang dihasilkan adalah suatu clique- dalam graf dan juga merupakan batas bawah dari clique maksimum di ( ). Dari penjelasan Lemma 3 di atas, jika diberikan suatu nilai atau clique-3, maka diagonal tenggara yang memuat verteks kurang dari atau sama dengan tiga , maka akan dapat dihapus. Pada Gambar 13, diagonal tenggara yang memiliki nomor (1), (2), (3), (7), (8) dan (9) akan dapat dihapus. 4.2.2 Preprocessing Berdasarkan Verteks Tetangga Untuk menghapus beberapa bagian diagonal tenggara graf , verteks dapat dihilangkan berdasarkan sifat tetangga mereka. Tetangga dari verteks adalah semua verteks sedemikian , yaitu semua verteks yang saling berbagi sisi dengan . Kedua sifat berikut ini harus diketahui untuk memberikan akses dalam penghapusan suatu verteks di . Sifat 1 Tidak ada clique yang lebih besar dari clique- dapat memuat verteks yang memiliki tetangga kurang dari . Sifat 1 menjelaskan bahwa jika diberikan suatu batas bawah pada graf , maka semua verteks yang memiliki tetangga kurang dari akan dapat dihapus. Misalkan diberikan suatu nilai . Maka verteks yang memiliki derajat kurang dari empat (verteks tetangga ) dapat dihapus. Sebagai contoh, misalkan pilih salah satu verteks dalam graf (lihat Gambar 11), yaitu verteks atau verteks . Diketahui bahwa verteks bertetangga dengan tiga verteks, yaitu verteks , verteks dan verteks . Dengan kata lain, verteks memiliki derajat , maka verteks dapat dihapus. 20 Selanjutnya, Sifat 2 berikut akan menjelaskan suatu pewarnaan berdasarkan verteks tetangganya. Sifat 2 Tidak ada clique yang lebih besar dari cliquedapat memuat verteks yang tetangganya dapat diwarnai kurang dari warna. Bukti: Dikarenakan tidak ada dua verteks berwarna sama dapat mempunyai sisi, maka tidak ada clique yang dapat memuat keduanya. Oleh karena itu, semua verteks dari clique harus mempunyai warna yang berbeda, sehingga tidak ada verteks yang tetangganya diwarnai dengan warna atau kurang, dapat berada dalam clique yang lebih besar dari . Berdasarkan Sifat 2, digunakan suatu definisi pewarnaan, yaitu setiap verteks harus secara pasti ditetapkan satu warna dan tidak ada dua verteks dan yang terhubung oleh sisi dapat mempunyai warna yang sama. Hal warna ( ) ≠ warna ( ). ini berarti, Namun terdapat dua kesulitan dalam mengaplikasikan Sifat 2 secara langsung. Pertama, menemukan jumlah warna minimum yang diperlukan untuk mewarnai tetangga verteks adalah permasalahan yang sulit. Kedua, mewarnai tetangga setiap verteks akan sangat memakan waktu. Oleh karena itu, Corollary 2 berikut diberikan untuk mereduksi verteks dan sisi dalam graf sehingga akan mempermudah dalam pencarian clique maksimum dengan menggunakan metode pewarnaan. Corollary 2 Ketika graf disusun berdasar pada Teorema 1, tidak ada clique yang lebih besar dari clique- dapat memiliki verteks yang tetangganya berada kurang dari baris atau kurang dari kolom di graf . Bukti: Dikarenakan semua sisi dalam adalah tenggara, maka tidak ada dua verteks dan dalam baris yang sama dapat dihubungkan oleh sisi (sebab sisi akan menjadi timurbarat, tetapi sisi tersebut tidak ada). Sehingga, tidak ada clique yang dapat memuat dua verteks dari baris yang sama. Akibatnya verteks dengan tetangga yang berada dalam paling banyak baris tidak dapat ada dalam clique dengan lebih dari verteks lain dan demikian tidak dapat ada dalam clique yang lebih besar dari . Argumen yang serupa dapat diaplikasikan untuk kolom. Sebagai konsekuensi dari Corollary 2, didapatkan cara sederhana untuk menghapus verteks yang derajatnya kurang dari , yaitu dengan menghapus semua verteks yang derajat baris atau kolomnya (jumlah baris atau kolom yang tetangganya berada dalam baris atau kolom tersebut) kurang dari . Setelah graf direduksi berdasar pada Corollary 2, selanjutnya Sifat 2 akan digunakan sebagai langkah akhir untuk mencari clique maksimum. Dari penjelasan sebelumnya, dapat disimpulkan bahwa dalam metode preprocessing terdapat empat tipe verteks yang dapat dihapus berdasarkan batas bawah , sebagai berikut: (1) = verteks yang berada pada diagonal tenggara pertama atau terakhir di . (Lemma 3) (2) = verteks yang memiliki tetangga atau kurang di . (Sifat 1) (3) = verteks yang tetangganya berada pada baris/kolom atau kurang di . (Corollary 2) (4) = verteks yang tetangganya dapat diberi warna atau kurang di . (Sifat 2) Diketahui bahwa metode (4) menyamaratakan metode (1)-(4). Lemma selanjutnya memformulasikan ide ini. 21 Lemma 4 Diberikan sebuah graf CMO dan dengan menggunakan definisi dari , ..., dari (1)-(4) diatas, hubungan berikut adalah benar : (a) , (b) , dan (c) . (pembuktian Lemma 5 dapat dilihat pada Lampiran 5) Selanjutnya untuk menentukan suatu metode pewarnaan dalam graf dan mengaplikasikan Sifat 2 secara langsung, Observasi berikut dibutuhkan untuk memberikan penjelasan mengenai graf CMO. Observasi Ketika graf Gp disusun berdasar pada Teorema 1, dua verteks dari baris yang sama dan kolom berurutan (atau kolom yang sama dan baris berurutan) biasanya memiliki sifat yang sama dengan tetangganya. Mengacu pada dua verteks dalam baris yang sama dan kolom berurutan (atau kolom yang sama dan baris berurutan) sebagai verteks adjoining. Diketahui bahwa sebagian besar tetangga dari dua verteks adjoining dan adalah berbagi. Sehingga dapat digunakan kembali pewarnaan tetangga verteks ketika mencari pewarnaan tetangga dari verteks . Ambil menjadi warna penetapan untuk verteks ketika mewarnai tetangga dari verteks . Kemudian berikan suatu pewarnaan dari tetangga , partisi tetangga dari verteks adjoining menjadi dua himpunan : (1) . Karena verteks adalah tetangga dari , maka dapat digunakan kembali warnanya; . (2) . Karena verteks adalah bukan tetangga dari , tidak ada warna penetapan awal untuk . Dari keterangan di atas didapatkan suatu cara pewarnaan dengan menetapkan warna verteks dalam himpunan (1) dan kemudian menentukan warna minimum untuk verteks dalam himpunan (2). Selanjutnya akan digunakan metode urutan derajat warna pertama untuk mencari batas atas dalam menentukan suatu clique maksimum di graf berdasarkan (Strickland, DM. 2008) sebagai berikut: Misalkan diberikan graf , 1. Warnai verteks dengan warna . 2. Warnai verteks yang adjacent dengan dengan warna dan verteks yang tidak adjacent dengan dapat diberi dengan warna sebelumnya ( ). 3. Kemudian untuk setiap verteks berturutturut, pilih warna berbeda dan minimum yaitu tidak ada warna verteks yang adjacent dengan berbagi dengan warna yang sama. Hasil dari metode pewarnaan ini memberikan suatu batas atas graf ( ) yang akan digunakan untuk memeriksa apakah clique maksimum yang didapatkan merupakan solusi optimal bagi masalah CMO dengan syarat batas bawah graf sama dengan batas atas graf . 22 V STUDI KASUS Misalkan diberikan dua hipotetik protein yaitu, protein A yang memiliki 8 asam amino dan protein B yang memiliki 7 asam amino. Contact map antara asam-asam amino dalam protein A dan protein B adalah sebagai berikut: Protein A 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 5.1 Penentuan Graf . Untuk menentukan suatu graf , terlebih dahulu dicari sisi yang dapat dibentuk dari banyaknya kemungkinan overlap yang terjadi berdasar Gambar 14. Berikut adalah beberapa contoh kemungkinan overlap yang dapat dibentuk dan merupakan fisibel: 1. Misalkan overlap , ( } seperti pada Gambar 16. Sehingga didapatkan sisi yang fisibel seperti pada Gambar 17. Protein A Protein B 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 Gambar 14 Hipotetik protein A dan B. Protein B B1B3 B1B5 B1B6 B3B5 B3B6 B5B7 A1A3 Gambar 16 Overlap ( , } Protein B B1B3 B1B5 B1B6 B3B5 B3B6 B5B7 A1A3 A1A6 A2A6 A3A6 A6A8 A1A6 Protein A Protein B Protein A Pada Gambar 14, terlihat bahwa terdapat 5 contact pada protein A dengan = { , , , , } dan 6 contact pada protein B dengan = { , , , , , }. Sehingga didapatkan banyaknya verteks ={ , , , , , , , , ..., } yang terbentuk berjumlah 30 verteks sebagai berikut: Gambar 17 Sisi fisibel. A2A6 2. Misalkan A3A6 A6A8 Gambar 15 Verteks yang terbentuk. overlap , seperti pada Gambar 18. Sehingga didapatkan sisi yang fisibel seperti pada Gambar 19. 23 Protein A Protein B B1B3 B1B5 B1B6 B3B5 B3B6 B5B7 A1A3 2 3 4 5 6 7 1 2 3 4 5 6 7 8 A1A6 Protein A 1 A2A6 A3A6 A6A8 Protein B Gambar 21 Sisi fisibel. Gambar 18 Overlap , . Beberapa kemungkinan overlap lain yang fisibel dapat dilihat pada Lampiran 5. Berdasar pada hal tersebut, maka didapatkan suatu graf yang terdiri dari 30 verteks dan 30 sisi sebagai berikut: Protein B B1B3 B1B5 B1B6 B3B5 B3B6 B5B7 A1A3 Protein A A1A6 Protein B A2A6 B1B3 B1B5 B1B6 B3B5 B3B6 B5B7 A1A3 A3A6 A1A6 Protein A A6A8 Gambar 19 Sisi fisibel. 3. Misalkan overlap , seperti pada Gambar 20. Sehingga didapatkan sisi yang fisibel seperti pada Gambar 21. Protein A 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 A2A6 A3A6 A6A8 Gambar 22 Graf Gp berdasar Gambar 14. 5.2 Penentuan Batas Bawah Graf . Untuk mempermudah notasi dalam mencari suatu batas bawah pada graf , dilakukan penyederhanaan terhadap Gambar 17 sebagai berikut: Protein B 1 2 3 4 5 6 1 Protein B , . 2 Protein A Gambar 20 Overlap 3 4 5 Gambar 23 Penyederhanaan notasi graf . 24 Protein B 1 2 3 4 5 6 1 2 Protein A Penentuan batas bawah atau nilai dari suatu clique maksimum yang terdapat dalam graf , digunakan metode heuristik (Strickland, DM. 2008), sebagai berikut : Langkah 1. Misalkan . Langkah 2. Pilih verteks dengan derajat terbesar di sebagai verteks awal dalam mencari clique yaitu verteks atau yang berderajat 7, sehingga . 3 4 5 Gambar 26 Protein B 1 2 3 4 5 6 Langkah 5. Pilih verteks berderajat terbesar yang adjacent dengan , yaitu . Tambahkan ke dalam , sehingga dan selanjutnya hapus verteks yang tidak adjacent dengan , yaitu . 1 2 Protein A . 3 4 5 Langkah 3. Hapus semua verteks yang tidak adjacent dengan , yaitu dengan menghapus 23 verteks lainnya, yaitu verteks { , , , , , , , , , , , , , , , , , , , , } dan . Protein B 1 2 Protein B sebagai awal. 3 4 5 6 1 1 2 3 4 5 6 1 2 Protein A Gambar 24 Verteks 3 4 5 Gambar 27 . Langkah 6. Tambahkan ke dalam . Kemudian berhenti, maka yang terbentuk merupakan clique maksimum dari graf Gp dengan Protein A 2 Protein B 3 1 4 2 3 4 1 5 . Langkah 4. Pilih verteks berderajat terbesar yang adjacent dengan , yaitu atau . Misalkan pilih dan tambahkan ke dalam , sehingga dan selanjutnya hapus verteks yang tidak adjacent dengan , yaitu , dan . Protein A 2 Gambar 25 3 4 5 Gambar 28 Clique-4 dengan 5 6 25 Berdasarkan hasil tersebut didapatkan batas bawah atau clique maksimum dengan clique-4. 5.3 Preprocessing Penyelesaian Masalah Contact Map Overlap. Diketahui nilai atau clique-4 sebagai batas bawah. Untuk mencari solusi optimal pada graf digunakan langkahlangkah sebagai berikut : Berdasar hal tersebut, suatu clique maksimum akan terdapat pada graf yang tersusun oleh verteks: , , , , , , , , dan , sebagai berikut: Protein B 1 2 3 4 5 6 1 Langkah 1. Hapus semua himpunan diagonal tenggara yang berisi 4 verteks atau kurang (Lemma 3). Susun graf sesuai dengan Teorema 1. Berikan penomoran diagonal tenggara mulai dari baris lima kolom satu ( ), sampai baris satu kolom enam ( ) sebagai berikut: Protein A 2 3 4 5 (5) (6) Gambar 31 Subgraf berisi verteks diagonal tenggara (5) dan (6) dari graf . Protein B 1 2 3 4 5 6 1 (10) Protein A 2 (9) 3 (8) 4 (7) 5 (1) (2) (3) (4) (5) Langkah 2. Hapus semua verteks yang memiliki tetangga verteks . (Sifat 1). Dengan kata lain, verteks berderajat pada graf dapat dihapus. Maka, suatu clique maksimum pada graf dimungkinkan akan terbentuk oleh verteks: , , , , dan . (6) Protein B Gambar 29 Penomoran diagonal tenggara graf . 2 3 4 3 4 5 6 2 3 4 5 Protein B 1 2 1 Protein A Selanjutnya, hapus semua diagonal tenggara yang memuat verteks 4, yaitu hapus diagonal tenggara bernomor (1), (2), (3), (4), (7), (8), (9) dan (10). 1 5 Gambar 32 Graf hasil Langkah 2. 6 1 Keterangan , , dan . Derajat setiap verteks dapat dilihat pada Tabel 1 Lampiran 6. Protein A 2 3 4 5 (5) (6) Gambar 30 Diagonal tenggara (5) dan (6) graf . Langkah 3. Hapus semua verteks yang memiliki tetangga berada pada baris atau kolom (Corollary 2). Cukup pilih salah satu diantara baris atau kolom yang memenuhi. Verteks yang memenuhi adalah 26 , , dan . Posisi baris atau kolom setiap verteks tetangga dapat dilihat pada Tabel 2 Lampiran 7. 3 4 5 6 1 4 5 6 3 4 2 5 3 Gambar 35 Pewarnaan verteks merah dan biru. 4 5 Gambar 33 Graf hasil Langkah 3. Langkah 4. Hapus semua verteks yang tetangganya dapat diwarnai dengan warna (Sifat 2). Berdasar pada Langkah 1, diketahui bahwa suatu clique yang maksimum akan terdapat pada diagonal tenggara (5) dan (6). Selanjutnya graf hasil dari Langkah 3 akan digunakan untuk mencari pewarnaan minimum dengan metode heuristik sederhana, sebagai berikut: 1. Misal dijadikan sebagai verteks awal dan beri warna merah. 3. Pilih verteks yang adjacent dengan dan , yaitu dan beri warna kuning. Selanjutnya dan dapat diberi warna kuning juga. Protein B 1 2 3 4 5 6 1 2 Protein A Protein A 3 1 Protein A 2 2 2 Protein B 1 Protein B 1 3 4 5 Protein B 1 2 3 4 5 6 Gambar 36 Pewarnaan verteks merah, biru dan kuning. 1 4. Pilih sebagai dan beri warna hijau. Protein A 2 Protein B 1 3 2 3 4 5 6 1 4 Gambar 34 Verteks awal . 2. Pilih verteks berderajat terbesar yang adjacent dengan , yaitu dan beri warna biru. Selanjutnya verteks yang tidak adjacent dengan , yaitu , dan dapat diberi warna merah. Verteks yang tidak adjacent dengan , yaitu dapat diberi warna biru. Protein A 2 5 3 4 5 Gambar 37 Hasil pewarnaan graf . 27 pewarnaan ) dan , , Protein B B1B3 2 3 4 5 6 B3B5 B3B6 B5B7 A2A6 A3A6 1 A6A8 2 Protein A B1B6 A1A6 Protein B 1 B1B5 A1A3 Protein A Sehingga didapatkan suatu minimum dengan 4 warna ( clique yang disusun oleh dan . Gambar 39 Solusi optimal graf . 3 Jika ditranformasikan kedalam bentuk graf CMO, maka didapatkan gambar overlap yang optimal sebagai berikut: 4 5 Gambar 38 Clique maksimum graf . Berdasar hasil tersebut, diketahui bahwa clique-4 ( ) adalah clique yang maksimum pada graf dan merupakan solusi optimal bagi masalah CMO dengan overlap = { , , , }. Protein A 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 Protein B Gambar 40 Overlap optimal masalah CMO berdasar Gambar 14. VI SIMPULAN Masalah Contact Map Overlap (CMO) pada protein dapat direpresentasikan ke dalam suatu kasus pendefinisian graf dengan menggunakan masalah clique maksimum untuk mencari solusi optimalnya. Diawali dengan mengurutkan susunan graf sesuai dengan sifat khusus graf CMO dan verteks tetangga. Selanjutnya dengan beberapa langkah dicari clique maksimum yang terbentuk dan optimal bagi masalah CMO. Masalah Contact Map Overlap (CMO) pada karya ilmiah ini diterapkan pada dua hipotetik protein, yaitu protein A dengan 8 asam amino dan protein B dengan 7 asam amino. Solusi optimal yang didapatkan adalah clique-4 yaitu graf yang terdiri atas verteks: , , dan , atau dengan overlap = { , , , }. 28 DAFTAR PUSTAKA Campbell, J. B. Reece, L. G dan Mitchell. 2004. Biologi. Edisi kelima. Jilid 1. Jakarta: Penerbit Erlangga. Strickland D.M. 2008. Teaching Note – Using the Maximum Clique Problem to Motivate Branch-and-Bound. INFORMS pp. 96-99. Chartrand G, Oellermann OR. 1995. Applied and Algorithmic Graph Theory. New York: McGraw-Hill. Strickland D.M, Barnes E, Sokol J.S. 2005. Optimal Protein Structure Alignment Using Maximum Cliques. ABI/INFORM Global pg. 389-402. Chartrand G, Zhang P. 2009. Chromatic Graph Theory. London: CRC Pr. Pardalos, P. M., J. Xue. 1994. The Maximum Clique Problem. Global Optim. 4(3) 301– 328. Vasudev C. 2006. Graph Theory with Applications. New Delhi: New Age International. 29 LAMPIRAN 30 Lampiran 1 Pembuktian Lemma 2 Diberikan protein A dan protein B, himpunan verteks bersesuaian dengan solusi fisibel CMO jika dan hanya jika setiap pasangan verteks , bersesuaian dengan solusi fisibel CMO. Bukti : → Misalkan S adalah himpunan verteks di Np. Anggap bahwa terdapat dua verteks dan sebagai pasangan yang takfisibel. Selanjutnya pembatasan ekslusifitas dan pembatasan pengurutan dilanggar. Dengan kata lain, baik itu (1) dan menyaratkan asam amino pada satu protein untuk diberikan alignment dengan lebih dari satu asam amino dalam protein lain, (2) alignment yang terbentuk melanggar sifat pembatasan; yaitu dan . Dalam kedua kasus, penambahan sisa verteks di tidak akan mengganti sifat ini, sehingga seluruh himpunan juga akan takfisibel. ← Misalkan adalah himpunan verteks yang takfisibel. Selanjutnya pembatasan ekslusifitas dan pembatasan pengurutan harus dilanggar. Sehingga himpunan tersebut harus berisi baik itu (1) asam amino dalam satu protein yang diberi alignment dengan dua asam amino dan dalam protein lain, atau (2) asam amino dalam satu protein yang diberikan alignment dengan asam amino dalam protein lain. Pada kasus (1), dua verteks dalam yang diberikan alignment pada dengan dan dengan adalah pasangan yang takfisibel, dan pada kasus (2), verteks yang diberi alignment pada dengan dan dengan adalah pasangan yang takfisibel. Lampiran 2 Pembuktian Teorema 1 Diberikan suatu protein dengan menyatakan contact map dengan dan menotasikan asam amino dari protein . Untuk setiap protein , didefinisikan dalam diurutkan berdasarkan urutan suatu lexicographic ordering yaitu contact menaik dan urutan menaik . Jika graf disusun dengan cara tersebut, maka semua sisi dalam akan berorientasi menuju ke kanan bawah ( ) atau arah ini dinamakan “diagonal tenggara”. Bukti : Diketahui bahwa istilah berikut adalah setara: tenggara dan baratlaut, timurlaut dan baratdaya, utara dan selatan, serta timur dan barat. Berdasarkan hal tersebut terdapat empat kemungkinan arah untuk sisi dalam : utara, timur, tenggara dan timur laut. Suatu verteks dalam diwakili oleh yang mengindikasikan bahwa contact dalam protein A dipetakan ke contact dalam protein B (dan dengan demikian titik akhir mereka sejajar : ). Untuk memudahkan, verteks ini dinotasikan dengan . Suatu sisi dalam menunjukkan pemetaan serempak dari contact dan dalam protein A ke contact dan dalam protein B. Sehingga tiap sisi dan akan menjadi sisi tenggara. Kemudian akan ditunjukkan tidak ada sisi yang dapat mempunyai arah lain ketika contact disusun berdasar teorema. (1) Anggap bahwa adalah sisi utara. Selanjutnya dan mewakili contact yang sama dalam protein B. Dikarenakan dan tidak dapat menjadi contact yang sama (selain itu ), baik itu atau . Pada kedua kasus, hal ini akan melanggar pembatasan bahwa tidak ada asam amino di protein B dapat diberi alignment dengan dua asam amino di protein A dalam solusi yang fisibel. Oleh karena itu, tidak ada sisi utara di . 31 (2) Anggap bahwa adalah sisi timur. Selanjutnya dan mewakili contact yang sama dalam protein A. Dikarenakan dan tidak dapat menjadi contact yang sama (selain itu ), baik itu . Pada kedua kasus, hal ini akan melanggar pembatasan bahwa tidak ada asam amino di protein A dapat diberi alignment dengan dua asam amino di protein B dalam solusi yang fisibel. Oleh karena itu, tidak ada sisi timur di . (3) Anggap bahwa adalah sisi timurlaut. Kemudian pengurutan membutuhkan dan . Sehingga baik itu , atau dan . Sama halnya, baik itu , atau dan . Sekarang pertimbangkan bahwa alignment tersirat oleh sisi berikut: (a) Jika dan , selanjutnya alignment di dengan dan dengan melanggar persyaratan pengurutan dari solusi yang fisibel. Persyaratan yang sama dilanggar dan . jika , , (b) Jika , dan , selanjutnya alignment di dengan dan dengan melanggar persyaratan eksklusivitas dari solusi yang fisibel (baik itu dan diberi algnment dengan ). Persyaratan yang sama dilanggar jika , dan . Lampiran 3 Pembuktian Lemma 3 Tidak ada clique yang lebih besar dari clique- dapat memiliki verteks yang berada pada diagonal tenggara yang berisikan verteks atau kurang. Bukti : Pertimbangkan tiap verteks dalam sebuah graf . Verteks dapat mempunyai sisi yang menghubungkan hanya pada verteks strictly tenggara dan strictly baratlaut, yaitu verteks dalam himpunan (tenggara) dan dalam himpunan (baratlaut). Catat bahwa jika atau , himpunan tenggara akan menjadi kosong dan jika atau , himpunan barat laut akan menjadi kosong. Dikarenakan tidak terdapat sisi horizontal atau vertikal dalam , clique dapat berisikan paling banyak satu verteks dari tiap baris atau kolom. Oleh karena itu, size dari clique yang berisikan verteks adalah , yang bersesuaian dengan kemungkinan verteks baratlaut terbanyak ditambah kemungkinan verteks baratdaya terbanyak, ditambah verteks itu sendiri. Penghitungan untuk setiap kemungkinan minimize, memberikan batas atas dalam size clique sebagai berikut: . Setelah disederhanakan, batas atas dalam clique terbesar berisikan verteks dapat mempunyai paling banyak verteks, yang secara pasti jumlah verteks dalam tenggara diagonal dari itu mengandung verteks . Lampiran 4 Pembuktian Lemma 4 Diberikan sebuah graf CMO dan dengan menggunakan definisi dari diatas, hubungan berikut adalah benar : (a) , (b) , dan (c) Bukti : a) Anggap bahwa verteks berada di tenggara diagonal dari berada di kiri bawah (tenggara) segitiga dari graf. Selanjutnya dapat mempunyai tetangga hanya dalam kolom pertama dan Dikarenakan tidak ada sisi horizontal dan vertikal, warnai tetangga dari – – warna. Oleh karena itu, adalah benar untuk verteks dalam tenggara diagonal terakhir. , ..., . dari (1)-(4) , dengan demikian dan baris terakhir. dalam . Argumen yang sama 32 . Selanjutnya, verteks memiliki tetangga atau b) Anggap bahwa verteks kurang. Walaupun setiap tetangga ditetapkan dengan warna berbeda, semua tetangga dapat diwarnai menggunakan warna atau kurang. Oleh karena itu, . c) Anggap bahwa verteks . Selanjutnya, tetangga verteks terletak pada baris/kolom atau kurang. Dikarenakan tidak ada sisi horizontal dan vertikal di , warnai tetangga dalam warna atau kurang dengan menggunakan satu warna untuk setiap baris (atau kolom). Oleh karena itu, . Lampiran 5 Posibilitas pasangan overlap fisibel untuk mencari jumlah 1. ={ , }. 4. ={ berdasarkan Gambar 14. , }. Protein A Protein A 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Protein B 2. ={ Protein B , }. 5. ={ , Protein A 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Protein B ={ 8 Protein B , }. 6. ={ , Protein A }. Protein A 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Protein B }. Protein A 1 3. 8 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Protein B 8 33 7. ={ , 11. }. ={ , Protein A 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Protein B 8. ={ , 12. }. ={ , 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 , 13. }. ={ , 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 Protein B Protein B , 14. }. ={ , }. Protein A Protein A 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Protein B }. Protein A Protein A ={ 8 Protein B Protein B 10. }. Protein A 1 ={ 8 Protein B Protein A 9. }. Protein A 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Protein B 8 34 15. ={ , 19. }. ={ , Protein A 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Protein B 16. ={ , 20. }. ={ , 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 , 21. }. ={ , 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 Protein B Protein B , 22. }. ={ , }. Protein A Protein A 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Protein B }. Protein A Protein A ={ 8 Protein B Protein B 18. }. Protein A 1 ={ 8 Protein B Protein A 17. }. Protein A 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Protein B 8 35 23. ={ , }. 27. Protein A ={ , }. Protein A 1 1 2 2 3 3 4 5 4 5 6 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 7 Protein B Protein B 24. ={ , }. 28. Protein A ={ , }. Protein A 1 1 2 2 3 3 4 5 4 5 6 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 7 Protein B Protein B 25. ={ , }. 29. Protein A ={ , }. Protein A 1 1 2 2 3 3 4 5 4 5 6 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 7 Protein B Protein B 26. ={ , }. 30. Protein A ={ , }. Protein A 1 1 2 2 3 3 4 4 5 5 6 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 7 7 Protein B Protein B 8 36 Berdasarkan beberapa posibilitas di atas, maka didapatkan suatu graf penuh (graf ) yang disusun dari 30 verteks dan 30 sisi. Protein B B1B3 B1B5 B1B6 B3B5 B3B6 B5B7 A1A3 Protein A A1A6 A2A6 A3A6 A6A8 Lampiran 6 Penentuan banyaknya derajat setiap verteks di graf Tabel 1 Derajat setiap verteks di graf . Derajat 0 1 2 3 4 5 6 7 , , , , , , , , , , , , Verteks , , , , , , . , , , , , - Lampiran 7 Penentuan posisi baris atau kolom verteks tetangga untuk setiap verteks di graf Tabel 2 Posisi (baris dan kolom) setiap verteks tetangga di graf . Baris Kolom Verteks 0 0 , , , , , 1 1 , , , , , 1 2 , , , , 2 1 2 2 , , , , 3 1 3 2 , 3 3 3 4 4 3 , , .