A.
TEORI KOMPUTASI
Ø PENGERTIAN TEORI KOMPUTASI
Teori komputasi adalah cabang ilmu
komputer teoritis, berkaitan dengan studi bagaimana persoalan(problem) dapat
diselesaikan pada sebuah model dengan menggunakan algoritma. Model tersebut
dinamakan model komputasi.
Ø TEORI KOMPUTASI DIBAGI MENJADI 3
1. Teori otomata (automata theory)
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.
2. Teori komputabilitas (computability
theory)
Teori
komputabilitas bertujuan untuk memeriksa apakah persoalan komputasi dapat
dipecahkan pada suatu model komputasi teoritis. Dengan kata lain, teori
komputabilitas mengklasifikasikan persoalan sebagai dapat dipecahkan (solvable)
atau persoalan yang tidak dapat dipecahkan (unsolvable).
3. Teori kompleksitas (computational
complexity theory)
Teori
kompleksitas bertujuan untuk mengkaji kebutuhan waktu dan ruang untuk
memecahkan persoalan yang diselesaikan dengan pendekatan yang berbeda-beda.
Dengan kata
lain, teori kompleksitas mengklasifikasikan persoalan sebagai persoalan mudah
(easy) atau persoalan susah (hard). Teori komputabilitas memperkenalkan
beberapa konsep yang digunakan di dalam teori kompleksitas. Teori otomata
mengacu pada definisi dan sifat-sifat model komputasi. Di dalam teori komputasi.
Ø BEBERAPA MODEL KOMPUTASI:
1. Finite State Automata (FSA)/Finite
State Machine (FSM)(bentuk tunggal: automaton, plural: automata)
Finite State Machine dapat berupa suatu
mesin yang tidak memiliki output. Finite State Machine yang tidak mengeluarkan
output ini dikenal sebagai Finite State Automata (FSA).
Secara formal FSA dapat
didefinisikan sebagai TUPLE-5 : (K, VT, M, S, Z)
Dimana :
K : himpunan
hingga stata,
VT : himpunan
hingga simbol input (alfabet)
M : fungsi
transisi, menggambarkan transisi stata AH akibat pembacaan symbol input.
(Fungsi transisi ini biasanya diberikan dalam bentuk tabel.)
S : stata awal
Z : himpunan stata penerima
Ada dua jenis Finite State Automata :
• Deterministic Finite Automata : transisi stata AH akibat
pembacaan sebuah simbol
bersifat tertentu. “Jika pada setiap state dari FSA tersebut
apabila menerima input
sebuah simbol maka HANYA ada SATU NEXT STATE yang mungkin
dituju.”
M(DFA) : K x VT x
K
• Non Deterministik Finite Automata : transisi stata AH
akibat pembacaan sebuah simbol
bersifat tak tentu. “Jika FSA tersebut menerima input simbol
maka minimal ada satu
state yang akan berpindah ke LEBIH DARI SATU NEXT STATE yang
mungkin dituju.”
M(AHN) : K x VT
x 2K
2. Push Down Automata (PDA)
PDA
adalah mesin otomata yang memiliki kendali masukan menggunakan teknik LIFO
(Last In First Out), untuk menentukan apakah suatu output diterima atau tidak
oleh mesin tsb. Dalam melakukan proses peneerimaan input, PDA menggunakan
memory stack.
Mekanisme kerja memory stack adalah
menyimpan input pertama pada alamat paling bawah, input berikutnya di simpan
pada alamat di atasnya, dan input terakhir di simpan pada alamat paling atas.
Perintah operasi yang digunakan untuk menyimpan input pada stack adalah “push”.
Sedangkan perintah operasi untuk mengeluarkan input yang telah tersimpan adalah
“pop”.
Sebuah PDA dinyatakan dengan 7
Tupel:
Q = himpunan
state
Σ = himpunan simbol input
T = simbol stack
Δ = fungsi transisi
S = state awal
F = state akhir
Z = top of stack
3. Mesin Turing(Turing Machine atau TM)
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."
CONTOH
Ø BIDANG - BIDANG COMPUTING
•ACM Computing Curricula 2005, membagi bidang computing menjadi
5 domain:
1. Computer Science(CS)
2. Software Engineering(SE)
3. Information System(IS)
4. Computer Engineering(CE)
5. Information Technology(TI)
·
Computer
science fokus pada kajian aspek teoritis dan algoritmis bidang computing hinggaaplikasinya.
aplikasinya.
·
Software
engineering fokus pada Pengembangan (analisis, desain,implementasi, testing),
pengoperasian, dan pemeliharan perangkat lunaksecara sistematis dan terukur.
·
Information
systems fokus pada pengintegrasian solusi teknologi informasi dan proses bisnis
untuk mempertemukan kebutuhan informasi bisnis suatu enterprise.
·
Computer
engineering fokus pada desain konstruksi komputer atau sistem berbasis
computer.
·
Information
technology fokus pada penggunaan teknologi komputer untuk mempertemukan
teknologi computer untuk kebutuhan bisnis, pemerintahan, pendidikan, kesehatan,
dan organisasi lain.
B.
IMPLEMENTASI KOMPUTASI
Ø Implementasi adalah kegiatan yang dilakukan
untuk menguji data dan menerapkan sistem yang diperoleh dari kegiatan seleksi.
Implementasi merupakan salah satu pertahanan dari keseluruhan pembangunan
sistem komputerisasi dan unsur yang harus dipertimbangkan dalam pembangunan
sistem komputerisasi yaitu masalah perangkat lunak, karena perangkat lunak yang
digunakan haruslah sesuai dengan masalah yang akan diselesaikan disamping
masalah perangkat keras. Contoh aplikasi berbasis cloud computing adalah
salesforce.com, Google Docs. salesforce.com adalah aplikasi Customer
Relationship Management (CRM) berbasis software as services, dimana kita bisa
mengakses aplikasi bisnis: kontak, produk, sales tracking, dashboard, dll.
Google Docs adalah aplikasi word processor, spreadsheet, presentasi semacam
Microsoft Office, yang berbasis di server. Terintegrasi dengan Google Mail,
file tersimpan dan dapat di proses dari internet.
Di zaman/masa modern saat ini
perkembangan teknologi yang begitu cepat, Implementasi Komputasi banyak
digunakan untuk berbagai bidang. Seperti : Bidang Fisika, Kimia, Matematika,
Ekonomi, Geografi dan Geologi.
1.
Bidang Fisika
Implementasi komputasi modern di
bidang Fisika adalah Computational Physics yang mempelajari suatu gabungan
antara Fisika, Komputer Sains dan Matematika Terapan untuk memberikan solusi
pada “Kejadian dan masalah yang kompleks pada dunia nyata” baik dengan
menggunakan simulasi juga penggunaan Algoritma yang tepat.
Pemahaman Fisika pada teori,
eksperimen dan komputasi haruslah sebanding. Agar dihasilkan solusi numerik dan
visualisasi atau pemodelan yang tepat untuk memahami masalah Fisika. Untuk
melakukan pekerjaan seperti evaluasi integral, penyelesaian persamaan
differensial, penyelesaian persamaan simultan, mem-plot suatu fungsi/data,
membuat pengembangan suatu seri fungsi, menemukan akar persamaan dan bekerja
dengan bilangan kompleks yang menjadi tujuan penerapan Fisika komputasi.
Banyak perangkat lunak ataupun
bahasa yang digunakan, seperti : MatLab, Visual Basic, Fortran, Open Source
Physics (OSP), Labview, Mathematica, dan lain sebagainya digunakan untuk
pemahaman dan pencarian solusi numerik dari masalah-masalah pada Fisika
komputasi.
2.
Bidang Kimia
Implementasi komputasi modern di
bidang Kimia adalah Computational Chemistry yaitu penggunaan ilmu komputer
untuk membantu menyelesaikan masalah Kimia. Contohnya penggunaan super komputer
untuk menghitung struktur dan sifat molekul. Istilah Kimia teori dapat
didefinisikan sebagai deskripsi Matematika untuk Kimia, sedangkan Kimia
komputasi biasanya digunakan ketika metode Matematika dikembangkan dengan cukup
baik untuk dapat digunakan dalam program komputer. Perlu dicatat bahwa kata
“tepat” atau “sempurna” tidak muncul di sini, karena sedikit sekali aspek Kimia
yang dapat dihitung secara tepat. Hampir semua aspek kimia dapat digambarkan
dalam skema komputasi kualitatif atau kuantitatif hampiran.
3.
Bidang Matematika
Menyelesaikan sebuah masalah yang
berkaitan dengan perhitungan Matematis, namun dalam pengertian yang akan
dibahas dalam pembahasan komputasi modern ini merupakan sebuah sistem yang akan
menyelesaikan masalah Matematis menggunakan komputer dengan cara menyusun
Algoritma yang dapat dimengerti oleh komputer yang berguna untuk menyelesaikan
masalah manusia.
4.
Bidang Ekonomi
Pemrograman yang didesain khusus
untuk komputasi Ekonomi dan pengembangan alat bantu dalam pendidikan komputasi
Ekonomi. Karena dibidang Ekonomi pasti memiliki permasalahan yang harus
dipecahkan oleh Algoritma. Contohnya adalah memecahkan teori statistika untuk
memecahkan permasalahan keuangan. Salah satu contoh komputasi di bidang Ekonomi
adalah komputasi statistik. Komputasi statistik adalah jurusan yang mempelajari
teknik pengolahan data, membuat program dan analisis data serta teknik
penyusunan sistem informasi statistik, seperti : penyusunan basis data,
komunikasi data, sistem jaringan, dan diseminasi data statistik.
5.
Bidang Geografi
Geografi adalah ilmu yang
mempelajari tentang lokasi serta persamaan dan perbedaan (variasi) keruangan
atas fenomena fisik dan manusia di atas permukaan bumi. Komputasi dalam bidang
Geografi biasanya di gunakan untuk peramalan cuaca, di Indonesia khususnya ada
salah satu instansi Negara dengan nama BMKG (Badan Meteorologi Klimatologi dan
Geofisika) yakni instansi negara yang meneliti mengamati tentang Metereologi,
Klimatologi kualitas udara dan Geofisika supaya tetap sesuai dengan perundang
undangan yang berlaku di Indonesia.
6.
Bidang Geologi
Geologi merupakan cabang Ilmu sains
yang mempelajari tentang Bumi. Yakni komposisi, struktur, sifat-sifat, sejarah
dan proses, komputasi Geologi umumnya digunakan dibidang pertambangan sebuah
sistem komputer digunakan untuk menganalisa bahan-bahan mineral dan barang
tambang yang terdapat didalam tanah. Implementasi pada bidang ini untuk
memetakan letak sumber daya dan kontur dari permukaan bumi yang terdapat hasil
tambang.