Komputasi
Komputasi
sebetulnya bisa diartikan sebagai cara untuk menemukan pemecahan masalah dari
data input dengan menggunakan suatu algoritma. Hal ini ialah apa yang disebut
dengan teori komputasi, 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.
Secara umum
iIlmu komputasi adalah bidang ilmu yang mempunyai perhatian pada penyusunan
model matematika dan 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.
Bidang ini
berbeda dengan ilmu komputer (computer science), yang mengkaji komputasi,
komputer dan pemrosesan informasi. Bidang ini juga berbeda dengan teori dan
percobaan sebagai bentuk tradisional dari ilmu dan kerja keilmuan. Dalam ilmu
alam, pendekatan ilmu komputasi dapat memberikan berbagai pemahaman baru,
melalui penerapan model-model matematika dalam program komputer berdasarkan
landasan teori yang telah berkembang, untuk menyelesaikan masalah-masalah nyata
dalam ilmu tersebut.
Teori Komputasi
Teori
komputasi adalah cabang ilmu komputer dan matematika yang membahas apakah dan
bagaimanakah suatu masalah dapat dipecahkan pada model komputasi, menggunakan
algoritma. Bidang ilmu ini terutama membahas hal terkait komputabilitas dan
kompleksitas, dalam kaitannya dengan formalisme komputasi.
Untuk
melakukan studi komputasi dengan ketat, ilmuwan komputer bekerja dengan
abstraksi matematika dari komputer yang dinamakan model komputasi. Ada beberapa
model yang digunakan, namun yang paling umum dipelajari adalah mesin Turing.
Sebuah mesin Turing dapat dipikirkan sebagai komputer pribadi meja dengan
kapasitas memori yang tak terhingga, namun hanya dapat diakses dalam
bagian-bagian terpisah dan diskret. Ilmuwan komputer mempelajari mesin Turing
karena mudah dirumuskan, dianalisis dan digunakan untuk pembuktian, dan karena
mesin ini mewakili model komputasi yang dianggap sebagai model paling masuk
akal yang paling ampuh yang dimungkinkan. Kapasitas memori tidak terbatas
mungkin terlihat sebagai sifat yang tidak mungkin terwujudkan, namun setiap
permasalahan yang "terputuskan" (decidable) yang dipecahkan oleh
mesin Turing selalu hanya akan memerlukan jumlah memori terhingga. Jadi pada
dasarnya setiap masalah yang dapat dipecahkan (diputuskan) oleh meisn Turing
dapat dipecahkan oleh komputer yang memiliki jumlah memori terbatas.
Komputasi Modern
Komputasi
modern adalah sebuah konsep sistem yang menerima intruksi-intruksi dan
menyimpannya dalam sebuah memory, memory disini bisa juga dari memory komputer.
Oleh karena pada saat ini kita melakukan komputasi menggunakan komputer maka
bisa dibilang komputer merupakan sebuah komputasi modern. Konsep ini pertama
kali digagasi oleh John Von Neumann (1903-1957). Beliau adalah ilmuan yang meletakkan
dasar-dasar komputer modern. Von Neumann telah menjadi ilmuwan besar abad 21.
Von Neumann memberikan berbagai sumbangsih dalam bidang matematika, teori
kuantum, game theory, fisika nuklir, dan ilmu komputer yang di salurkan melalui
karya-karyanya . Beliau juga merupakan salah satu ilmuwan yang terkait dalam
pembuatan bom atom di Los Alamos pada Perang Dunia II lalu. Kegeniusannya dalam
matematika telah terlihat semenjak kecil dengan mampu melakukan pembagian
bilangan delapan digit (angka) di dalam kepalanya.
Sejarah Komputasi Modern
Awal mula dari
komputasi adalah adanya perhitungan-perhitungan angka yang dilakukan manusia.
Manusia telah mengenal angka dan perhitungan sejak berabad-abad yang lalu.
Bangsa romawi pun telah dapat menghitung sistem kalender dan rasi bintang.
Seiring dengan perkembangan zaman manusia pun melakukan perhitungan-perhitungan
yang lebih kompleks. Otak manusia juga mengalami keterbatasan dalam menghitung
angka yang jumlahnya bisa berdigit-digit, kemudian diciptakan alat sempoa untuk
menghitung, kemudian dekembangkan menjadi kalkulator, Karena semakin
berkembangnya alat dan kebutuhan semakin banyak pula data-data yang ingin
dihitung, dan mulailah ide pembuatan untuk membuat komputer sebagai alat hitung
dengan konsep komputasi modern. Tidak hanya itu, komputer yang diciptakan
hingga sekarang ini bukan menjadi sebuah alat yang digunakan untuk menghitung,
tapi juga bisa menyimpan,mengedit dan mengolah kata serta masih banyak lagi
kegunaan dan kelebihan yang dimiliki oleh komputer.
Karakteristik dari Komputasi Modern
Karakteristik komputasi modern
ada 3 macam, yaitu :
·
Komputer-komputer penyedia sumber daya bersifat
heterogenous karena terdiri dari berbagai jenis perangkat keras, sistem
operasi, serta aplikasi yang terpasang.
·
Komputer-komputer terhubung ke jaringan yang
luas dengan kapasitas bandwidth yang beragam.
·
Komputer maupun jaringan tidak terdedikasi, bisa
hidup atau mati sewaktu-waktu tanpa jadwal yang jelas.
Jenis-jenis Komputasi Modern
Komputasi modern terbagi tiga macam, yaitu komputasi mobile (bergerak),
komputasi grid, dan komputasi cloud (awan). Penjelasan lebih lanjut dari
jenis-jenis komputasi modern sebagai berikut :
1. Mobile
Computing
Mobile computing atau komputasi bergerak memiliki beberapa penjelasan,
salah satunya komputasi bergerak merupakan kemajuan teknologi komputer sehingga
dapat berkomunikasi menggunakan jaringan tanpa menggunakan kabel dan mudah
dibawa atau berpindah tempat, tetapi berbeda dengan komputasi nirkabel. Contoh
dari perangkat komputasi bergerak seperti GPS, juga tipe dari komputasi
bergerak seperti smart phone, dan lain sebagainya.
2. Grid
Computing
Komputasi grid menggunakan komputer yang terpisah oleh geografis,
didistibusikan dan terhubung oleh jaringan untuk menyelasaikan masalah
komputasi skala besar.
3. Cloud
Computing
Komputasi cloud merupakan gaya komputasi yang terukur dinamis dan
sumber daya virtual yang sering menyediakan layanan melalui internet. Komputasi
cloud menggambarkan pelengkap baru, konsumsi dan layanan IT berbasis model
dalam internet, dan biasanya melibatkan ketentuan dari keterukuran dinamis dan
sumber daya virtual yang sering menyediakan layanan melalui internet.
Teori Otomata dan Bahasa Formal
Teori Otomata
adalah teori mengenai mesin-mesin abstrak, dan berkaitan erat dengan teori
bahasa formal. ada beberapa hal yang berkaitan dengan Otomata, yaitu Grammar.
Grammar adalah bentuk abstrak yang dapat diterima (accept) untuk membangkitkan
suatu kalimat otomata berdasarkan suatu aturan tertentu.
Teori bahasa
membicarakan bahasa formal (formal language), terutama untuk kepentinga
perancangan kompilator (compiler) dan pemroses naskah(text processor). Bahasa
formal adalah kumpulan kalimat. Semua kalimat dalam sebuah bahasa dibangkitkan
oleh sebuah tata bahasa (grammar) yang sama. Sebuah bahasa formal bisa
dibangkitkan oleh dua atau lebih tata bahasa berbeda. Dikatakan bahasa formal
karena grammar diciptakan mendahului pembangkitan setiap kalimatnya. Bahasa
manusia bersifat sebaliknya; Grammar diciptakan untuk meresmikan kata-kata yang
hidup di masyarakat. Dalam pembicaraan selanjutnya ‘bahasa formal’ disebut
‘bahasa’ saja.
Finite State Machine (FSM)
Ada beberapa
definisi mengenai Finite State Machine (FSM) atau sering juga disebut
dengan Finite State Automata (FSA), sebagai berikut :
·
FSM didefenisikan sebagai perangkat komputasi
yang memiliki input berupa string dan output yang merupakan satu dari dua nilai
yang dapat di-accept dan reject (Rich : 2009).
·
Finite Automata adalah model matematika sistem
dengan masukan dan keluaran diskrit. Sistem dapat berada di salah satu dari
sejumlah berhingga konfigurasi internal disebut state (Hariyanto : 2004).
·
FSM adalah sebuah metodologi perancangan sistem
kontrol yang menggambarkan tingkah laku atau prinsip kerja sistem dengan
menggunakan tiga hal berikut: State (Keadaan), Event (kejadian) dan action
(aksi). Pada satu saat dalam periode waktu yang cukup signifikan, sistem akan
berada pada salah satu state yang aktif. Sistem dapat beralih atau bertransisi
menuju state lain jika mendapatkan masukan atau event tertentu, baik yang
berasal dari perangkat luar atau komponen dalam sistemnya itu sendiri. Transisi
keadaan ini umumnya juga disertai oleh aksi yang dilakukan oleh sistem
ketika menanggapi masukan yang terjadi. Aksi yang dilakukan tersebut dapat
berupa aksi yang sederhana atau melibatkan rangkaian proses yang relatif
kompleks (Setiawan : 2006).
FSM memiliki beberapa kelebihan
(Brownlee, 2010), diantaranya :
1. Sederhana,
sehingga mudah diimplementasikan
2. Bisa
diprediksi responnya
3. Komputasi
ringan
4. Relatif
fleksibel
5. Merupakan
metode AI lama yang bisa digunakan pada berbagai sistem
6. Mudah
ditransfer dari abstrak menjadi kode program
Selain memiliki banyak kelebihan,
FSM juga mempunyai beberapa kelemahan (Brownlee, 2010), diantaranya :
1. Karena
sifatnya bisa diprediksi, maka implementasi pada game kurang disukai
2. Implementasi
pada sistem yang lebih besar lebih sulit karena pengaturan dan pemeliharaannya
jadi kompleks
3. Sebaiknya
hanya digunakan pada sistem dimana sifat sistem bisa didekomposisi menjadi
state.
4. Kondisi
untuk transisi state adalah tetap
Mesin Turing
Mesin Turing
adalah model komputasi teoretis yang ditemukan oleh Alan Turing, berfungsi
sebagai model ideal untuk melakukan perhitungan matematis. Walaupun model ideal
ini diperkenalkan sebelum komputer nyata dibangun, model ini tetap diterima
kalangan ilmu komputer sebagai model komputer yang sesuai untuk menentukan
apakah suatu fungsi dapat selesaikan oleh komputer atau tidak (menentukan
computable function). Mesin Turing terkenal dengan ungkapan " Apapun yang
bisa dilakukan oleh Mesin Turing pasti bisa dilakukan oleh komputer."
Sebuah mesin
turing terdiri atas barisan sel tersusun berupa pita yang dapat bergerak maju
mundur, komponen aktif baca/tulis pita yang memiliki status perhitungan serta
dapat mengubah/menulisi sel aktif yang ada di pita tadi, dan suatu kumpulan
instruksi bagaimana komponen baca/tulis ini harus melakukan modifikasi terhadap
sel aktif pada pita, serta bagaimana menggerakkan pita tersebut. Pada setiap
langkah dalam komputasi, mesin ini akan dapat mengubah isi dari sel yang aktif,
mengubah status dari komponen baca/tulis, dan mengubah posisi pita ke kiri atau
ke kanan.
Sumber :


