Senin, 25 April 2011

Bioinformatika

Bioinformatika (bahasa Inggris: bioinformatics) adalah (ilmu yang mempelajari) penerapan teknik komputasional untuk mengelola dan menganalisis informasi biologis. Bidang ini mencakup penerapan metode-metode matematika, statistika, dan informatika untuk memecahkan masalah-masalah biologis, terutama dengan menggunakan sekuens DNA dan asam amino serta informasi yang berkaitan dengannya. Contoh topik utama bidang ini meliputi basis data untuk mengelola informasi biologis, penyejajaran sekuens (sequence alignment), prediksi struktur untuk meramalkan bentuk struktur protein maupun struktur sekunder RNA, analisis filogenetik, dan analisis ekspresi gen.

Sejarah

Istilah bioinformatics mulai dikemukakan pada pertengahan era 1980-an untuk mengacu pada penerapan komputer dalam biologi. Namun demikian, penerapan bidang-bidang dalam bioinformatika (seperti pembuatan basis data dan pengembangan algoritma untuk analisis sekuens biologis) sudah dilakukan sejak tahun 1960-an.

Kemajuan teknik biologi molekular dalam mengungkap sekuens biologis dari protein (sejak awal 1950-an) dan asam nukleat (sejak 1960-an) mengawali perkembangan basis data dan teknik analisis sekuens biologis. Basis data sekuens protein mulai dikembangkan pada tahun 1960-an di Amerika Serikat, sementara basis data sekuens DNA dikembangkan pada akhir 1970-an di Amerika Serikat dan Jerman (pada European Molecular Biology Laboratory, Laboratorium Biologi Molekular Eropa). Penemuan teknik sekuensing DNA yang lebih cepat pada pertengahan 1970-an menjadi landasan terjadinya ledakan jumlah sekuens DNA yang berhasil diungkapkan pada 1980-an dan 1990-an, menjadi salah satu pembuka jalan bagi proyek-proyek pengungkapan genom, meningkatkan kebutuhan akan pengelolaan dan analisis sekuens, dan pada akhirnya menyebabkan lahirnya bioinformatika.

Perkembangan Internet juga mendukung berkembangnya bioinformatika. Basis data bioinformatika yang terhubung melalui Internet memudahkan ilmuwan mengumpulkan hasil sekuensing ke dalam basis data tersebut maupun memperoleh sekuens biologis sebagai bahan analisis. Selain itu, penyebaran program-program aplikasi bioinformatika melalui Internet memudahkan ilmuwan mengakses program-program tersebut dan kemudian memudahkan pengembangannya.

Penerapan utama bioinformatika

Basis data sekuens biologis

Sesuai dengan jenis informasi biologis yang disimpannya, basis data sekuens biologis dapat berupa basis data primer untuk menyimpan sekuens primer asam nukleat maupun protein, basis data sekunder untuk menyimpan motif sekuens protein, dan basis data struktur untuk menyimpan data struktur protein maupun asam nukleat.

Basis data utama untuk sekuens asam nukleat saat ini adalah GenBank (Amerika Serikat), EMBL (Eropa), dan DDBJ(Inggris) (DNA Data Bank of Japan, Jepang). Ketiga basis data tersebut bekerja sama dan bertukar data secara harian untuk menjaga keluasan cakupan masing-masing basis data. Sumber utama data sekuens asam nukleat adalah submisi langsung dari periset individual, proyek sekuensing genom, dan pendaftaran paten. Selain berisi sekuens asam nukleat, entri dalam basis data sekuens asam nukleat umumnya mengandung informasi tentang jenis asam nukleat (DNA atau RNA), nama organisme sumber asam nukleat tersebut, dan pustaka yang berkaitan dengan sekuens asam nukleat tersebut.

Sementara itu, contoh beberapa basis data penting yang menyimpan sekuens primer protein adalah PIR (Protein Information Resource, Amerika Serikat), Swiss-Prot (Eropa), dan TrEMBL (Eropa). Ketiga basis data tersebut telah digabungkan dalam UniProt (yang didanai terutama oleh Amerika Serikat). Entri dalam UniProt mengandung informasi tentang sekuens protein, nama organisme sumber protein, pustaka yang berkaitan, dan komentar yang umumnya berisi penjelasan mengenai fungsi protein tersebut.

BLAST (Basic Local Alignment Search Tool) merupakan perkakas bioinformatika yang berkaitan erat dengan penggunaan basis data sekuens biologis. Penelusuran BLAST (BLAST search) pada basis data sekuens memungkinkan ilmuwan untuk mencari sekuens asam nukleat maupun protein yang mirip dengan sekuens tertentu yang dimilikinya. Hal ini berguna misalnya untuk menemukan gen sejenis pada beberapa organisme atau untuk memeriksa keabsahan hasil sekuensing maupun untuk memeriksa fungsi gen hasil sekuensing. Algoritma yang mendasari kerja BLAST adalah penyejajaran sekuens.

PDB (Protein Data Bank, Bank Data Protein) adalah basis data tunggal yang menyimpan model struktural tiga dimensi protein dan asam nukleat hasil penentuan eksperimental (dengan kristalografi sinar-X, spektroskopi NMR dan mikroskopi elektron). PDB menyimpan data struktur sebagai koordinat tiga dimensi yang menggambarkan posisi atom-atom dalam protein ataupun asam nukleat.

Penyejajaran sekuens

Penyejajaran sekuens (sequence alignment) adalah proses penyusunan/pengaturan dua atau lebih sekuens sehingga persamaan sekuens-sekuens tersebut tampak nyata. Hasil dari proses tersebut juga disebut sebagai sequence alignment atau alignment saja. Baris sekuens dalam suatu alignment diberi sisipan (umumnya dengan tanda "–") sedemikian rupa sehingga kolom-kolomnya memuat karakter yang identik atau sama di antara sekuens-sekuens tersebut. Berikut adalah contoh alignment DNA dari dua sekuens pendek DNA yang berbeda, "ccatcaac" dan "caatgggcaac" (tanda "|" menunjukkan kecocokan atau match di antara kedua sekuens).

ccat---caac

| || ||||

caatgggcaac

Sequence alignment merupakan metode dasar dalam analisis sekuens. Metode ini digunakan untuk mempelajari evolusi sekuens-sekuens dari leluhur yang sama (common ancestor). Ketidakcocokan (mismatch) dalam alignment diasosiasikan dengan proses mutasi, sedangkan kesenjangan (gap, tanda "–") diasosiasikan dengan proses insersi atau delesi. Sequence alignment memberikan hipotesis atas proses evolusi yang terjadi dalam sekuens-sekuens tersebut. Misalnya, kedua sekuens dalam contoh alignment di atas bisa jadi berevolusi dari sekuens yang sama "ccatgggcaac". Dalam kaitannya dengan hal ini, alignment juga dapat menunjukkan posisi-posisi yang dipertahankan (conserved) selama evolusi dalam sekuens-sekuens protein, yang menunjukkan bahwa posisi-posisi tersebut bisa jadi penting bagi struktur atau fungsi protein tersebut.

Selain itu, sequence alignment juga digunakan untuk mencari sekuens yang mirip atau sama dalam basis data sekuens. BLAST adalah salah satu metode alignment yang sering digunakan dalam penelusuran basis data sekuens. BLAST menggunakan algoritma heuristik dalam penyusunan alignment.

Beberapa metode alignment lain yang merupakan pendahulu BLAST adalah metode "Needleman-Wunsch" dan "Smith-Waterman". Metode Needleman-Wunsch digunakan untuk menyusun alignment global di antara dua atau lebih sekuens, yaitu alignment atas keseluruhan panjang sekuens tersebut. Metode Smith-Waterman menghasilkan alignment lokal, yaitu alignment atas bagian-bagian dalam sekuens. Kedua metode tersebut menerapkan pemrograman dinamik (dynamic programming) dan hanya efektif untuk alignment dua sekuens (pairwise alignment)

Clustal adalah program bioinformatika untuk alignment multipel (multiple alignment), yaitu alignment beberapa sekuens sekaligus. Dua varian utama Clustal adalah ClustalW dan ClustalX.

Metode lain yang dapat diterapkan untuk alignment sekuens adalah metode yang berhubungan dengan Hidden Markov Model ("Model Markov Tersembunyi", HMM). HMM merupakan model statistika yang mulanya digunakan dalam ilmu komputer untuk mengenali pembicaraan manusia (speech recognition). Selain digunakan untuk alignment, HMM juga digunakan dalam metode-metode analisis sekuens lainnya, seperti prediksi daerah pengkode protein dalam genom dan prediksi struktur sekunder protein.

Prediksi struktur protein

Secara kimia/fisika, bentuk struktur protein diungkap dengan kristalografi sinar-X ataupun spektroskopi NMR, namun kedua metode tersebut sangat memakan waktu dan relatif mahal. Sementara itu, metode sekuensing protein relatif lebih mudah mengungkapkan sekuens asam amino protein. Prediksi struktur protein berusaha meramalkan struktur tiga dimensi protein berdasarkan sekuens asam aminonya (dengan kata lain, meramalkan struktur tersier dan struktur sekunder berdasarkan struktur primer protein). Secara umum, metode prediksi struktur protein yang ada saat ini dapat dikategorikan ke dalam dua kelompok, yaitu metode pemodelan protein komparatif dan metode pemodelan de novo.

Pemodelan protein komparatif (comparative protein modelling) meramalkan struktur suatu protein berdasarkan struktur protein lain yang sudah diketahui. Salah satu penerapan metode ini adalah pemodelan homologi (homology modelling), yaitu prediksi struktur tersier protein berdasarkan kesamaan struktur primer protein. Pemodelan homologi didasarkan pada teori bahwa dua protein yang homolog memiliki struktur yang sangat mirip satu sama lain. Pada metode ini, struktur suatu protein (disebut protein target) ditentukan berdasarkan struktur protein lain (protein templat) yang sudah diketahui dan memiliki kemiripan sekuens dengan protein target tersebut. Selain itu, penerapan lain pemodelan komparatif adalah protein threading yang didasarkan pada kemiripan struktur tanpa kemiripan sekuens primer. Latar belakang protein threading adalah bahwa struktur protein lebih dikonservasi daripada sekuens protein selama evolusi; daerah-daerah yang penting bagi fungsi protein dipertahankan strukturnya. Pada pendekatan ini, struktur yang paling kompatibel untuk suatu sekuens asam amino dipilih dari semua jenis struktur tiga dimensi protein yang ada. Metode-metode yang tergolong dalam protein threading berusaha menentukan tingkat kompatibilitas tersebut.

Dalam pendekatan de novo atau ab initio, struktur protein ditentukan dari sekuens primernya tanpa membandingkan dengan struktur protein lain. Terdapat banyak kemungkinan dalam pendekatan ini, misalnya dengan menirukan proses pelipatan (folding) protein dari sekuens primernya menjadi struktur tersiernya (misalnya dengan simulasi dinamika molekular), atau dengan optimisasi global fungsi energi protein. Prosedur-prosedur ini cenderung membutuhkan proses komputasi yang intens, sehingga saat ini hanya digunakan dalam menentukan struktur protein-protein kecil. Beberapa usaha telah dilakukan untuk mengatasi kekurangan sumber daya komputasi tersebut, misalnya dengan superkomputer (misalnya superkomputer Blue Gene [1] dari IBM) atau komputasi terdistribusi (distributed computing, misalnya proyek Folding@home) maupun komputasi grid.

Analisis ekspresi gen

Ekspresi gen dapat ditentukan dengan mengukur kadar mRNA dengan berbagai macam teknik (misalnya dengan microarray ataupun Serial Analysis of Gene Expression ["Analisis Serial Ekspresi Gen", SAGE]). Teknik-teknik tersebut umumnya diterapkan pada analisis ekspresi gen skala besar yang mengukur ekspresi banyak gen (bahkan genom) dan menghasilkan data skala besar. Metode-metode penggalian data (data mining) diterapkan pada data tersebut untuk memperoleh pola-pola informatif. Sebagai contoh, metode-metode komparasi digunakan untuk membandingkan ekspresi di antara gen-gen, sementara metode-metode klastering (clustering) digunakan untuk mempartisi data tersebut berdasarkan kesamaan ekspresi gen.

Bioinformatika di Indonesia

Saat ini mata ajaran bioinformatika maupun mata ajaran dengan muatan bioinformatika sudah diajarkan di beberapa perguruan tinggi di Indonesia. Sekolah Ilmu dan Teknologi Hayati ITB menawarkan mata kuliah "Pengantar Bioinformatika" untuk program Sarjana dan mata kuliah "Bioinformatika" untuk program Pascasarjana. Fakultas Teknobiologi Universitas Atma Jaya, Jakarta menawarkan mata kuliah "Pengantar Bioinformatika". Mata kuliah "Bioinformatika" diajarkan pada Program Pascasarjana Kimia Fakultas MIPA Universitas Indonesia (UI), Jakarta. Mata kuliah "Proteomik dan Bioinformatika" termasuk dalam kurikulum program S3 bioteknologi Universitas Gadjah Mada (UGM), Yogyakarta. Materi bioinformatika termasuk di dalam silabus beberapa mata kuliah untuk program sarjana maupun pascasarjana biokimia,biologi, dan bioteknologi pada Institut Pertanian Bogor (IPB). Selain itu, riset-riset yang mengarah pada bioinformatika juga telah dilaksanakan oleh mahasiswa program S1 Ilmu Komputer maupun program pascasarjana biologi serta bioteknologi IPB.

Riset bioinformatika protein dilaksanakan sebagai bagian dari aktivitas riset rekayasa protein pada Laboratorium Rekayasa Protein, Pusat Penelitian Bioteknologi Lembaga Ilmu Pengetahuan Indonesia (LIPI), Cibinong, Bogor. Lembaga Biologi Molekul Eijkman, Jakarta, secara khusus memiliki laboratorium bioinformatika sebagai fasilitas penunjang kegiatan risetnya. Selain itu, basis data sekuens DNA mikroorganisme asli Indonesia sedang dikembangkan di UI.

Sumber : http://id.wikipedia.org/wiki/Bioinformatika

Senin, 21 Maret 2011

Kinerja Komputasi dengan Parallel Processing

Komputasi parallel umumnya diterapkan untuk menyelesaikan masalah yang secara sekuansial tidak mampu diselesaikan dalam jangaka waktu yang “pantas”, dan membutuhkan banyak sekali memory. Gagasan dasar dari komputasi parallel adalah memiliki lebih dari satu pemrosesan yang semuanya memiliki kemampuan untuk bekerja dalam saat bersamaan.

Parallel processing adalah upaya untuk mempercepat proses eksekusi dari suatu program dengan cara membagi program menjadi beberapa bagian yang dijalankan didalam beberapa processor yang terpisah. Terdapat dua jenis kinerja parallel processing yaitu Multi-core dan PC Clustering.


Multi-core adalah memperbanyak inti prmrosesan sehingga diharapkan knerja komputasi meningkat dikarenakan pemrosesan secara parallel. Awalnya Multi Core diawali oleh system Multi Prosessor. System ini membutuhkan sumberdaya untu masing-masing prosesnya, sedangkan untuk interkoneksinya dibutuhkan sebuah bus berkecepatan tinggi. Untuk membuat system multi prosessor dibutuhkan biaya serta algoritma tersendiri untuk mengendalikan dan memproses input, untuk mereduksi harga dibuatlah system multi Core yang dapat mengetengahkan masalah antara biaya dan kecepatan komputasi.


PC-Clustering dapat diartikan sebagai pengelompokan beberapa buah PC menjadi satu kesatuan dan mampu memproses dengan interkoneksi jaringan baik itu local maupun internet. Secara umum PC clustering dibagi menjadi tiga kategori yaitu :

1.High-availability cluster
2.Load-balancing cluster
Kategori satu dan dua digunakan untuk server-server yang membutuhkan komputasi tinggi serta ketersediaan system. Tujuan dari PC Clustering jenis ini adalah menjaga service agar tetap sedia sepanjang waktu, seperti Web Searching Google.
3.Grid-Computing
Grid-computing lebih mendekati system parallel computing yang sebenarnya, karena menggunakan system penugasan. Contoh Grid Computing terbesar adalah FOLDING@HOME untuk kalkulasi untaian DNA untuk mencari obat dari penyakit kronis seperti Alzheimer dan Kanker.

Sumber :
- Penulisan Bagus Irawan Ajinagoro, Aplikasi Sistem Paralel Menggunakan
Prosessor Host 486 Berbasis Linux Debian
- Penulisan Rendy Yudistira Syuhada, Multi-Core VS PC-Clustering Terhadap Kinerja Pengolahan Paralel

Selasa, 01 Maret 2011

KOMPUTASI MODERN

PENGERTIAN KOMPUTASI MODERN


Komputasi bisa diartikan sebagai cara untuk menyelesaikan sebuah masalah dari inputan data dengan menggunakan algoritma. Komputasi merupakan suatu sub-bidang dari ilmu komputer dan matematika. Selama ribuan tahun, perhitungan dan komputasi umumnya dilakukan dengan menggunakan pena dan kertas, atau kapur dan batu tulis, atau dikerjakan secara mental, kadang-kadang dengan bantuan suatu tabel. Namun sekarang, kebanyakan komputasi telah dilakukan dengan menggunakan komputer. Komputasi yang menggunakan komputer inilah yang disebut dengan Komputasi Modern. Komputasi modern menghitung dan mencari solusi dari masalah yang ada, yang menjadi perhitungan dari komputasi modern adalah :

1. Akurasi (bit, Floating poin)

2. Kecepatan (Dalam satuan Hz)

3. Problem volume besar (Down sizing atau paralel)

4. Modeling (NN dan GA)

5. Kompleksitas (Menggunakan teori Big O).


Teknologi komputasi adalah aktivitas penggunaan dan pengembangan teknologi komputer, perangkat keras, dan perangkat lunak komputer. Ia merupakan bagian spesifik komputer dari teknologi informasi.


Pencetus dari dasar – dasar komputasi modern pertama kali adalah John Von Neuman. Ia adalah ilmuwan yang meletakkan dasar – dasar komputasi modern. Semasa hidupnya Von Neumann telah menjadi ilmuwan besar abad 21 dengan meningkatkan karya – karyanya tidak hanya dalam bidang matematika, teori kuantum dan game theory, namun juga fisika nuklir dan ilmu komputer. Beliau juga salah seorang ilmuwan yang berpengaruh dalam pembuatan bom atom di Los Alamos pada perang Dunia II.


PENGENALAN KOMPUTASI MODERN


Secara umum iIlmu komputasi adalah bidang ilmu yang mempunyai perhatian pada penyusunan model matematika teknik penyelesaian numerik serta penggunaan komputer untuk menganalisis dan memecahkan masalah-masalah ilmu (sains). Dalam penggunaan praktis, biasanya berupa penerapan simulasi komputer atau berbagai bentuk komputasi lainnya untuk menyelesaikan masalah-masalah dalam berbagai bidang keilmuan, tetapi dalam perkembangannya digunakan juga untuk menemukan prinsip-prinsip baru yang mendasar dalam ilmu.


Alan Turing secara luas dianggap sebagai bapak ilmu komputer modern. pada tahun 1936 turing memberikan formalisasi berpengaruh konsep algoritma dan perhitungan dengan mesin turing. dari perannya dalam komputer modern, waktu turing majalah dalam penamaan salah satu dari 100 orang paling berpengaruh dari abad ke-20, menyatakan: "kenyataan tetap bahwa setiap orang yangkerandi keyboard, membuka spreadsheet atau program pengolah kata, aalah bekerja pada inkarnasi dari mesin turing. "


Penemu program komputer yang dikendalikan Konrad Zuse, yang membangun komputer kerja pertama pada tahun 1941 dan kemudian pada tahun 1955 komputer pertama berdasarkan penyimpan yang bersifat magnetis.


George stibitz secara internasional diakui sebagai ayah dari komputer digital modern. sementara bekerja di laboratorium bel di November 1937, stibitz menciptakan dan membangun sebuah relay berbasis kalkulator ia dijuluki sebagai "model k" (untuk "meja dapur", di mana dia telah berkumpul itu), yang adalah orang pertama yang menggunakan sirkuit biner untuk melakukan operasi aritmatika. Kemudian model menambahkan kecanggihan yang lebih besar termasuk aritmatika dan kemampuan pemrograman kompleks.


Namun jika berbicara siapakah tokoh yang paling berpengaruh terhadap perkembangan ilmu komputer dan komputasi modern, John Von Neumann-lah orangnya.


SEJARAH VON NEUMANN


Von Neumann dilahirkan di Budapest, Hungaria pada 28 Desember 1903 dengan nama Neumann Janos. Dia adalah anak pertama dari pasangan Neumann Miksa dan Kann Margit. Setelah bergelar doktor dalam ilmu hukum, dia menjadi pengacara untuk sebuah bank. Pada tahun 1903, Budapest terkenal sebagai tempat lahirnya para manusia genius dari bidang sains, penulis, seniman dan musisi.


Von Neumann juga belajar di Berlin dan Zurich dan mendapatkan diploma pada bidang teknik kimia pada tahun 1926. Pada tahun yang sama dia mendapatkan gelar doktor pada bidang matematika dari Universitas Budapest. Keahlian Von Neumann terletak pada bidang teori game yang melahirkan konsep seluler automata, teknologi bom atom, dan komputasi modern yang kemudian melahirkan komputer.


Setelah mengajar di Berlin dan Hamburg, Von Neumann pindah ke Amerika pada tahun 1930 dan bekerja di Universitas Princeton serta menjadi salah satu pendiri Institute for Advanced Studies.


Dipicu ketertarikannya pada hidrodinamika dan kesulitan penyelesaian persamaan diferensial parsial nonlinier yang digunakan, Von Neumann kemudian beralih dalam bidang komputasi. Sebagai konsultan pada pengembangan ENIAC, dia merancang konsep arsitektur komputer yang masih dipakai sampai sekarang. Arsitektur Von Nuemann adalah komputer dengan program yang tersimpan (program dan data disimpan pada memori) dengan pengendali pusat, I/O, dan memori.



Sumber:

http://tulisanbobby.blogspot.com/

http://www.komputasi.lipi.go.id/utama.cgi?cetakartikel&1209393042

http://gietheiceman.blogspot.com/2010/02/komputasi-modern.html