Organic Computing: Menyingkap Rahasia Makhluk Hidup

Oleh : Nugroho Fredivianus

Apakah Anda saat ini menggunakan Windows? Jika ya, maka setidaknya 30 juta baris perintah sedang ngendon untuk Windows 2000, atau 40 juta dalam XP, hingga 50 juta penyangga Vista. Dengan XP Service Pack 1, maka ketahuilah ada 400 buah patch di dalamnya. Catat juga SP2 yang total tambalannya tiga kali lipatnya. Linux? Selamat, Anda dapat diskon dan hanya menelan 10 jutaan baris perintah.

Mungkin tidak Anda sadari, bahwa ‘gundukan’ perintah tersebut berpotensi menjadi sumber dari berbagai ketidak-nyamanan yang kadang cenderung terlupakan. Langkah restart atau Ctrl+Alt+Del menjadi suatu kebiasaan yang seolah sudah dapat diterima sepenuhnya sebagai bagian dari solusi. Namun tahukah Anda potensi besar semacam itu dapat berakibat sangat fatal dan menyengsarakan dalam tujuan penggunaan yang berbeda?

Dalam sebuah buku terbitan 1993 berjudul “Digital Woes: Why We Should Not Depend on Software”, Lauren Ruth Wiener menyebutkan bahaya yang muncul dari program-program berukuran raksasa. Contoh yang diangkat adalah sebuah peristiwa di tahun 1962, tepatnya pada tanggal 22 Juli. Roket pembawa Mariner I yang sedang diterbangkan ke Venus terpaksa diledakkan di angkasa karena kesalahan sepele yakni alpanya sebuah tanda “bar” (rata-rata) dalam sebuah baris perintah. Komputer di sentral terus-menerus menyatakan roket tidak dapat dikendalikan meski sejatinya segalanya baik-baik saja.

Juga dipaparkan di tahun 1991 sebuah perusahaan bernama DSC Communication Software menguji sebuah perangkat lunak telekomunikasi yang akan digunakan untuk jaringan telepon kabel untuk beberapa kota besar Amerika. Dalam pengujian selama 13 minggu, didapatkan bahwa program bekerja dengan baik dan siap digunakan. Kemudian mereka “menyempurnakan” program itu dengan memperbaiki 3 baris perintah di antara jutaan baris yang ada dan memutuskan untuk langsung memasangnya tanpa menguji lagi karena akan membutuhkan waktu tambahan selama 13 minggu lamanya. Hasilnya, sistem crash dan memunculkan gangguan sambungan telepon serta kerugian yang amat besar.

Inikah masa depan dunia software? Program yang berisi puluhan juta baris dan dikerjakan oleh ribuan orang, sehingga bisa dipastikan menyimpan gunungan bug di dalamnya? Kekhawatiran yang tinggi pun menyeruak. Berbagai penelitian untuk mendapatkan alternatif solusi dicari. Akhirnya para pakar menemukan jawaban yang sejatinya sederhana dan mudah diduga: meniru makhluk hidup.

Setiap makhluk hidup adalah sesuatu yang berdiri sendiri satu sama lain. Seorang manusia akan tumbuh dengan sendirinya setelah keluar dari rahim sang ibu, hingga kemudian ia mempelajari hal-hal kecil di dunia ini untuk kemudian mendapatkan yang lebih besar. Maka kesimpulan yang didapatkan adalah kita tidak harus menentukan seluruh kemampuan sebuah sistem melainkan ‘membekalinya’ dengan kemampuan untuk belajar secara otonomi. Pada saatnya, sistem itu sendirilah yang akan menentukan kapan ia menggunakan kemampuan yang ditanamkan kepadanya.

Kawanan BurungDi negara Republik Federal Jerman, riset ini diwakili dengan topik Organic Computing dan saat ini merupakan salah satu tema prioritas dalam kebijakan pengembangan serta riset. Deutsch orschungsgemeinschaft disingkat DFG atau “German Research Foundation” mengalokasikan tidak kurang dari 2 juta Euro setiap tahunnya untuk membiayai puluhan proyek penelitian di berbagai universitas yang diketuai oleh Institute of Applied Informatics and Formal Description Methods di Universität Karlsruhe.

“Organic Computing” atau OC secara sederhana dapat dijelaskan sebagai “perupaan sistem yang ada pada makhluk hidup pada perangkat komputer”. Contoh umum dalam dunia teknologi adalah Fuzzy Logic (Logika Tak Tentu), yang merupakan perluasan dari Binary Logic atau Logika Biner. Jika biner hanya memiliki dua nilai dasar yakni NOL dan SATU, Fuzzy Logic mengijinkan kita untuk menggunakan bilangan desimal di antaranya.

Korelasinya dengan makhluk hidup? Semisal saat kita berusaha menentukan apakah seorang laki-laki berusia 21 tahun memiliki tinggi badan 160 cm dapat dikatakan ‘tinggi’ atau ‘pendek’ (0 atau 1), maka dengan Fuzzy Logic kita memiliki pilihan untuk mengatakan ‘agak tinggi’, ‘agak pendek’, ‘rata-rata’ dan sebagainya.

Juga Artificial Neural Network atau Jaringan Syaraf Tiruan (JST). Algoritma yang telah umum dikenal oleh mahasiswa teknik ini meniru cara kerja sel-sel syaraf otak (neuron) dan menyimbolkannya dengan beberapa layer (lapisan). Sebagaimana otak, kita harus terlebih dulu memberikan training. Semisal kita ingin program dapat mengenali huruf A dalam berbagai bentuk font, maka kita harus melatihnya hingga algoritma tersebut memahami maksud kita.

Ada lagi istilah algoritma koloni semut atau Ant Colony Optimization, yang diilhami oleh perilaku sekelompok kawanan semut. Ditemukan di awal tahun 90-an oleh seorang berkebangsaan Italia bernama Marco Dorigo, algoritma ini menjadi salah satu tonggak riset OC. Berbagai publikasi ilmiah Prof. Dorigo kini telah dikutip sebagai referensi dalam puluhan ribu karya ilmiah (termasuk Tugas Akhir di S1 dan thesis MSc saya. Temuannya dapat menjawab secara meyakinkan berbagai problematika dalam permasalahan optimasi dan efisiensi, dan itu berawal dari pengamatannya terhadap makhluk hidup kecil ciptaan Allah bernama semut.

Anda mungkin bertanya, memangnya ada apa dengan semut?

Semut adalah makhluk kecil yang sering kita lihat, kadang terkesan mengganggu dan ingin kita usir atau bahkan dimusnahkan. Namun tanpa dinyana, semut memiliki sebuah keistimewaan dalam hal menemukan jalur menuju makanan. Dorigo mengamati kawanan semut yang berangkat dari sarang untuk mengambil makanan di suatu lokasi yang tidak jauh. Semut-semut itu, seperti biasa yang kita lihat, mengambil suatu jalur tertentu yang dipergunakan beramai-ramai. Saat ditaruh obstacle atau rintangan yang menutup jalur itu, kawanan semut ternyata mampu dengan segera mendapatkan jalan terdekat untuk menyambungnya kembali.

Hanya itu saja? Ternyata tidak.

Saat rintangan itu diletakkan sedemikian hingga salah satu alternatif jalan berjarak lebih dekat dibanding yang lain, kawanan semut tersebut tidak membutuhkan waktu lama untuk mendapatkan jarak terdekat (optimal) dalam waktu singkat (efisien). Ini didapatkan setelah percobaan terhadap kedua alternatif. Bagaimana bisa? Dalam melakukan setiap perjalanannya, setiap semut meninggalkan jejak yang dikenal dengan istilah pheronome. Zat ini dapat dilacak oleh semut-semut lain yang lewat berikutnya. Otomatis dalam rentang waktu yang sama, jarak yang lebih singkat dilalui lebih banyak semut sehingga baunya lebih kuat. Bau ini kemudian menjadi petunjuk bagi semut yang sedang berhadapan dengan pilihan jalan untuk memutuskan jalan mana yang dilalui hingga akhirnya seluruh semut mampu memilih dengan tepat jarak yang terdekat. Subhanallah!

Oleh Dorigo, cara kerja kawanan semut itu kemudian diadaptasi dalam sebuah algoritma bernama Ant Colony Optimization (ACO) yang hingga kini telah memiliki puluhan varian untuk berbagai permasalahan. Semisal yang pernah penulis lakukan dengan metode ini adalah scheduling atau penentuan urutan lokasi yang dikunjungi dalam area kota Surabaya.Contoh sederhana, jika saat ini kita berada di titik A dan hendak mengunjungi 3 titik lain yakni B, C, dan D, untuk kemudian kembali ke A. Yang diminta adalah jarak tedekat (optimal) untuk melakukan perjalanan tersebut. Bisa jadi jawabannya adalah A–B–C–D–A atau A–D–C–B–A atau 4 kemungkinan lain. Memang solusi untuk 4 titik relatif mudah, namun akan jauh lebih rumit jika terdapat lebih banyak titik.

Hasil yang didapatkan menggunakan ACO, dari sejumlah 23 percobaan dengan jumlah titik bervariasi antara 12 dan 20 ditemukan penghematan jarak tempuh total sebesar 14,78% atau 729 km dibandingkan metode konvensional. Penghematan yang luar biasa, apalagi jika dikaitkan harga BBM yang membubung tinggi. Untuk contoh kasus yang berbeda di kota Darmstadt, Jerman tempat saya menempuh kuliah master, hasilnya juga memuaskan.

Kawanan SemutSubhanallah, solusi itu ternyata telah Allah sediakan dalam makhluk kecil-Nya yang bernama semut. Ciptaan yang kadang kita remehkan dan yang kita ingat hanyalah gigitan serta gangguannya. Tidak hanya ACO, dalam dunia engineering juga dikenal metode Genetic Algorithm (GA) yang didasarkan pada pembelahan dan penyilangan gen manusia, Behavior Based sebagai bentuk tiruan kecerdasan makhluk hidup dalam mengenali lingkungannya, dan masih banyak lagi.

Kita bayangkan di masa depan setiap mobil dan kendaraan lain yang berlalu lalang di jalan raya memiliki kemampuan ‘belajar nyupir’ hingga menempatkan diri di tempat parkir setelah terlebih dulu menemukan ruang kosong. Robot pembersih mampu melihat jenis lantai dan kotoran yang ada dan kemudian menentukan apa yang harus dilakukan untuk menyelesaikan tugasnya. Sistem pengamanan rumah pun bisa menentukan apakah yang sedang berteriak di depan pintu adalah si pemilik yang sedang kehilangan kunci rumah ataukah tukang sayur yang kebetulan mampir.

Sungguh sangat layak kita senantiasa bertasbih, Maha Suci Allah yang telah menciptakan semua makhluknya dengan kesempurnaan. Sebagai muslim, insya Allah kita semua meyakini bahwa ada berbagai rahasia Allah lainnya yang masih ‘berserakan’ dan menunggu untuk ditemukan oleh manusia dalam rangka memberikan kebaikan kepada seluruh alam. Upaya itu akan semakin menemukan hasil, insya Allah bersamaan dengan tumbuhnya kesadaran umat ini dalam mendekat dan berjuang menuju kejayaan Islam.

QS. 10:3. Sesungguhnya Tuhan kamu ialah Allah Yang menciptakan langit dan bumi dalam enam masa, kemudian Dia bersemayam di atas ‘Arsy untuk mengatur segala urusan. Tiada seorangpun yang akan memberi syafa’at kecuali sesudah ada izin-Nya. (Dzat) yang demikian itulah Allah, Tuhan kamu, maka sembahlah Dia. Maka apakah kamu tidak mengambil pelajaran?

QS. 16:13. dan Dia (menundukkan pula) apa yang Dia ciptakan untuk kamu di bumi ini dengan berlain-lainan macamnya. Sesungguhnya pada yang demikian itu benar-benar terdapat tanda (kekuasaan Allah) bagi kaum yang mengambil pelajaran.

Allahu a’lam.

Sumber : warnaislam.com

Tinggalkan komentar