Senin, 13 Mei 2013

Algoritma parallel

Algoritma parallel atau algoritma konkuren, ini merupakan kebalikan dari algoritma tradisional sekuensial (serial). Algoritma parallel merupakan algoritma yang dapat dieksekusi dalam satu waktu pada banyak perangkat processing yang berbeda, dan pada akhirnya akan digabungkan kembali untuk mendapatkan hasil yang benar. Beberapa algoritma mudah untuk dibagi ke dalam cara ini. Contohnya, memisahkan pekerjaan dengan mengcek semua nomor dari satu sampat 100ribu untuk melihat pernyataan mana yang akan dijadikan landasan untuk menetapkan subset dari nomor setiap prosesor yang ada, dan kemudian menaruh data dengan hasil yang akan dkembalikan bersama-sama. Algoritma ini juga telah diterapkan untuk algoritma seperti rubik kubus dan dekripsi hash. Untuk penjelasan lebih lanjut dari algoritma parallel ini, perlu diketahui terdapat beberapa platform yang biasa digunakan dalam pemrograman parallel, yaitu OpenMp, MPI, CUDA, dan lain sebagainya. Di bawah ini akan dijelaskan mengenai platform tersebut, penjelasan singkat adalah sebagai berikut:

1. OpenMP

OpenMP yaitu API yang mendukung multiplatform untuk pemrograman multiprocessing shared memory pada C, C++, dan Fortran, di semua arsitektur prosesor dan OS termasuk platform Solaris, AIX, HP-UX, GNU/Linux. Max OS X, dan Windows. Ini terdiri dari kumpulan compiler directive, library routines, dan environment variable yang akan membuat run time pada semua keadaan. OpenMP merupakan suatu teknologi nonprofit yang diatur oleh OpenMP Architecture Review Board (or OpenMP ARB) termasuk didalamnyaa vendor hardware dan software yaitu AMD, IBM, Intel, Cray, HP, Fujitsu, Nvidia, NEC, Microsoft, Texas Instruments, Oracle Corporation, dan masih banyak lagi. 

2. MPI (Message Passing Interface)

MPI (Message Passing Interface) yaitu suatu standard dan message passing interface partabel system yang didesain oleh grup penelitian dari akademi dan industry untuk mengembangkan fungsi dan macam-macam dari computer parallel. Standar ini mendifinisikan sintaks dan semantic dari core library routine yang berguna untuk memperbesar jangkauan kepada user menulis portable program message passing pada Fortran 77 dan bahasa C. Bebedapa keebaikan dirasakan dan implementasi efisien dari  MPI termasuk beberapa free da nada pada domain public. Ini dipupuk kedalam pengembangan dalam parallel industry software, dan kemajuan portable development, dan kemampuan skala lebih besari aplikasi parallel.

3. CUDA (Compute Unified Device Architecture)

CUDA (Compute Unified Device Architecture) merupakan platform parallel computing dan model pemrograman yang telah dibuat oleh NVIDIDA dan diimplementasikan oleh GPU(Graphic Processing Unit). CUDA memberikan akses pengembangan untuk kumpulan visual instruction dan ingatan dari parallel computasional elemen CUDA GPU.

Dalam beberapa kasus, algoritma sekuensial dengan mudah dapat diadaptasi ke dalam lingkungan paralel. Namun dalam kebanyakan kasus, problem komputasi harus dianalisa ulang dan menghasilkan algoritma paralel yang baru. Terdapat beberapa penelitian mengenai perancangan algoritma paralel untuk problem-problem praktis seperti pengurutan, pemrosesan geraf, solusi untuk persamaan lanjar, solusi untuk persamaan diferensial, dan untuk simulasi. Teknik pembangunan algoritma paralel dapat dibedakan sebagai berikut :

Paralisme Data


Teknik paralelisme data merupakan teknik yang paling banyak digunakan dalam program paralel. Teknik ini lahir dari penelitian bahwa aplikasi utama komputasi paralel adalah dalam bidang sain dan engineer, yang umumnya melibatkan array multi-dimensi yang sangat besar. Dalam program sekuensial biasa, array ini dimanipulasi dengan mempergunakan perulangan bersarang untuk mendapatkan hasil. Kebanyakan program paralel dibentuk dengan mengatur ulang algoritma sekuensial agar perulangan bersarang tersebut dapat dilaksanakan secara paralel. Paralelisme data menunjukkan bahwa basis data dipergunakan sebagai dasar untuk membentuk aktifitas paralel, dimana bagian yang berbeda dari basis data akan diproses secara paralel. Dengan kata lain paralelisme dalam program ini dibentuk dari penerapan operasi-operasi yang sama ke bagian array data yang berbeda. Prinsip paralelisme data ini berlaku untuk pemrograman multiprosesor dan multikomputer.

Partisi Data

Merupakan teknik khusus dari Paralelisme Data, dimana data disebar ke dalam memori-memori lokal multikomputer. Sebuah proses paralel kemudian ditugaskan untuk mengoperasikan masingmasing bagian data. Proses tersebut harus terdapat dalam lokal memori yang sama dengan bagian data, karena itu proses dapat mengakses data tersebut secara lokal. Untuk memperoleh kinerja yang baik, setiap proses harus memperhatikan variabel-variabel dan data-data lokalnya masing-masing. Jika suatu proses membutuhkan akses data yang terdapat dalam remote memori, maka hal ini dapat dilakukan melalui jaringan message passing yang menghubungkan prosesor-prosesor. Karena komunikasi antar prosesor ini menyebabkan terjadinya waktu tunda, maka messsage passing ini sebaiknya dilakukan dalam frekuensi yang relatif kecil. Dapat disimpulkan bahwa tujuan dari partisi data adalah untuk mereduksi waktu tunda yang diakibatkan komunikasi messsage passing antar prosesor. Algoritma paralel mengatur agar setiap proses dapat melakukan komputasi dengan local data masing-masing.

Algoritma Relaksasi

Pada algoritma ini, setiap proses tidak membutuhkan sinkronisasi dan komunikasi antar proses. Meskipun prosesor mengakses data yang sama, setiap prosesor dapat melakukan komputasi sendiri tanpa tergantung pada data antara yang dihasilkan oleh proses lain. Contoh algoritma relaksasi adalah algoritma perkalian matrik, pengurutan dengan mengunakan metode ranksort dan lain sebagainya.

Paralelisme Sinkron


Aplikasi praktis dari komputasi paralel adalah untuk problem yang melibatkan array multi-dimensi yang sangat besar. Problem tersebut mempunyai peluang yang baik untuk paralelisme data karena elemen yang berbeda dalam array dapat diproses secara paralel. Teknik komputasi numerik pada array ini biasanya iteratif, dan setiap iterasi akan mempengaruhi iterasi berikutnya untuk menuju solusi akhir. Misalnya saja untuk solusi persamaan numerik pada sistem yang besar. Umumnya, setiap iterasi mempergunakan data yang dihasilkan oleh iterasi sebelumnya dan program akhirnya menuju suatu solusi dengan akurasi yang dibutuhkan. Algoritma iterasi ini mempunyai peluang paralelisme pada setiap iterasinya. Beberapa proses parallel dapat dibentuk untuk bekerja pada array bagian yang berbeda. Namun setelah setiap iterasi, prosesproses harus disinkronkan, karena hasil yang diproduksi oleh satu proses dipergunakan oleh prosesproses lain pada iterasi berikutnya.

Teknik pemrograman paralel seperti ini disebut paralelisme sinkron. Contohnya adalah perhitungan numerik pada Metode Eliminasi Gauss. Pada paralelisme sinkron ini, struktur umum programnya biasanya terdiri dari perulangan FORALL yang akan membentuk sejumlah besar proses paralel untuk dioperasikan pada bagian array data yang berbeda. Setiap proses diulang dan disinkronkan pada akhir iterasi. Tujuan dari sinkronisasi ini adalah untuk meyakinkan bahwa seluruh proses telah menyelesaikan iterasi yang sedang berlangsung, sebelum terdapat suatu proses yang memulai iterasi berikutnya.

Komputasi Pipeline

Pada komputasi pipeline, data dialirkan melalui seluruh struktur proses, dimana masing-masing proses membentuk tahap-tahap tertentu dari keseluruhan komputasi . Algoritma ini dapat berjalan dengan baik pada multikomputer, karena adanya aliran data dan tidak banyak memerlukan akses ke data bersama. Contoh komputasi pipeline adalah teknik penyulihan mundur yang merupakan bagian dari metoda Eliminasi.

Synchronization Delay

Ketika proses paralel disinkronkan, berarti bahwa suatu proses akan harus menunggu proses lainnya. Dalam beberapa program paralel, jumlah waktu tunda ini dapat menyebabkan bottleneck dan mengurangi speedup keseluruhan. Load Imbalance Dalam beberapa program paralel, tugas komputasi dibangun secara dinamis dan tidak dapat diperkirakan sebelumnya. Karena itu harus selalu ditugaskan ke prosesor-prosesor sejalan dengan pembangunan tugas tersebut. Hal ini dapat menyebabkan suatu prosesor tidak bekerja (idle), sementara prosesor lainnya tidak dapat mengerjakan task yang ditugaskannya.

Komputasi Paralel dengan Parallel Virtual Machine (PVM)


Komputasi  paralel   adalah   salah   satu   teknik  melakukan  komputasi  secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. Ini umumnya diperlukan saat kapasitas yang diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar (di industri keuangan, bioinformatika, dll) ataupun karena tuntutan proses komputasi yang banyak.

Penggunaan komputasi parallel prosessing merupakan pilihan yang cukup handal untuk saat ini untuk pengolahan data yang besar dan banyak, hal ini apabila dibandingkan dengan membeli suatu super komputer yang harganya sangat mahal maka penggunaan komputasi parallel prosessing merupakan pilihan yang sangat tepat untuk pengolahan data tersebut.

Aspek keamanan merupakan suatu aspek penting dalam sistem parallel prosessing komputasi ini, karena di dalam sistem akan banyak berkaitan dengan akses data, hak pengguna, keamanan data, keamanan jaringan terhadap peyerangan sesorang atau bahkan virus sehingga akan menghambat kinerja dari system komputasi ini.

Komputasi     parallel     adalah     melakukan     perhitungan     komputasi     dengan menggunakan 2 atau lebih CPU/Processor dalam suatu komputer yang sama atau komputer yang berbeda dimana dalam hal ini setiap instruksi dibagi kedalam beberapa instruksi kemudian dikirim ke processor yang terlibat komputasi dan dilakukan secara bersamaan. Untuk proses pembagian proses komputasi tersebut dilakukan oleh suatu software yang betugas untuk mengatur komputasi dalam hal makalah ini akan digunakan Parallel Virtual Machine (PVM).

Pada sistem komputasi parallel terdiri dari beberapa unit prosesor dan beberapa unit memori. Ada dua teknik yang berbeda untuk mengakses data di unit memori, yaitu shared memory address dan message passing. Berdasarkan cara mengorganisasikan memori ini komputer paralel dibedakan menjadi shared memory parallel machine dan distributed memory parallel machine.

Prosesor dan memori ini didalam mesin paralel dapat dihubungkan (interkoneksi) secara statis maupun dinamis. Interkoneksi statis umumnya digunakan oleh distributed memory system (sistem memori terdistribusi). Sambungan langsung peer to peer digunakan untuk menghubungkan semua prosesor. Interkoneksi dinamis umumnya menggunakan switch untuk menghubungkan antar prosesor dan memori.

Komunikasi data pada sistem paralel memori terdistribusi, memerlukan alat bantu komunikasi. Contoh alat bantu yang sering digunakan oleh sistem seperti PC Jaringan pada saat ini adalah standar PVM (Parallel Virtual Machine) yang bekerja diatas TCP/IP communication layer. Standar ini memerlukan fungsi remote access agar dapat menjalankan program pada masing-masing unit prosesor.

Salah satu protocol yang dipergunakan pada komputasi parallel adalah Network File System (NFS), NFS adalah protokol yang dapat membagi sumber daya melalui jaringan. NFS dibuat untuk dapat independent dari jenis mesin, jenis sistem operasi, dan jenis protokol transport yang digunakan. Hal ini dilakukan dengan menggunakan RPC. NFS memperbolehkan user yang telah diijinkan untuk mengakses file-file yang berada di remote  host  seperti  mengakses  file  yang  berada  di  lokal.  Protokol  yang  digunakan protokol mount menentukan host remote dan jenis file sistem yang akan diakses dan menempatkan di suatu direktori, protokol NFS melakukan I/O pada remote file system. Protokol  mount  dan  protokol  NFS  bekerja  dengan  menggunakan RPC  dan  mengiri dengan protokol TCP dan UDP. Kegunaan dari NFS pada komputasi parallel adalah untuk melakukan sharing data sehingga setiap node slave dapat mengakses program yang sama pada node master.

READ MORE - Algoritma parallel

Minggu, 14 April 2013

Komputasi Modern

  • 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.

  •  Komputasi Modern
Komputasi adalah cara untuk menyelesaikan sebuah masalah dari inputan data dengan menggunakan algoritma. Secara umum ilmu 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). 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. Dalam kerjanya komputasi modern menghitung dan mencari solusi dari masalah yang ada, dan perhitungan yang dilakukan itu meliputi: 1. Akurasi (big, Floating point) 2. Kecepatan (dalam satuan Hz) 3. Problem Volume Besar (Down Sizzing atau pararel) 4. Modeling (NN & GA) 5. Kompleksitas (Menggunakan Teori big O)
 
  • Karakteristik dari Komputasi Modern
Karakteristik komputasi modern ada 3 macam, yaitu : 
1. Komputer-komputer penyedia sumber daya bersifat heterogenous karena terdiri dari berbagai jenis perangkat keras, sistem operasi, serta aplikasi yang terpasang. 
2. Komputer-komputer terhubung ke jaringan yang luas dengan kapasitas bandwidth yang beragam. 3. Komputer maupun jaringan tidak terdedikasi, bisa hidup atau mati sewaktu-waktu tanpa jadwal yang jelas.
 
  • Jenis-Jenis Komputasi Modern
 
1. Mobile Computing atau Komputasi Bergerak Mobile computing (komputasi bergerak) merupakan kemajuan teknologi komputer sehingga dapat berkomunikasi menggunakan jaringan tanpa menggunakan kabel serta mudah dibawa atau berpindah tempat, tetapi berbeda dengan komputasi nirkabel.
 2. Grid Computing Komputasi grid memanfaatkan kekuatan pengolahan idle berbagai unit komputer, dan menggunakan kekuatan proses untuk menghitung satu pekerjaan. 
3. Cloud Computing atau Komputasi Awan Cloud computing adalah perluasan dari konsep pemrograman berorientasi objek abstraksi. Abstraksi, sebagaimana dijelaskan sebelumnya, menghapus rincian kerja yang kompleks dari visibilitas. 
  • Dampak adanya komputasi modern
Salah satu dampak dari adanya komputasi modern adalah dapat membantu manusia untuk menyelesaikan masalah-masalah yang kompleks dengan menggunakan computer. Salah satu contohnya adalah biometric. Biometric berasal dari kata Bio dan Metric. Kata bio diambil dari bahasa yunani kuno yang berarti Hidup sedangkan Metric juga berasal dari bahasa yunani kuno yang berarti ukuran, jadi jika disimpulkan biometric berarti pengukuran hidup. Tapi secara garis besar biometric merupakan pengukuran dari statistic analisa data biologi yang mengacu pada teknologi untuk menganalisa karakteristik suatu tubuh ( individu ). Nah dari penjelasan tersebut sudah jelas bahwa Biometric menggambarkan pendeteksian dan pengklasifikasian dari atribut fisik. Terdapat banyak teknik biometric yang berbeda, diantaranya: - Pembacaan sidik jari / telapak tangan - Geometri tangan - Pembacaan retina / iris - Pengenalan suara - Dinamika tanda tangan.

  • Kesimpulan
Komputasi modern dapat membantu manusia untuk menyelesaikan masalah-masalah yang kompleks dengan menggunakan komputer serta memenuhi kebutuhan tidak hanya menghitung tapi dalam hal program dan jaringan sehingga dapat mengerjakan suatu masalah dengan cepat.
 
  • Contoh-contoh 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. Beberapa keterbatasan dan resiko dari mobile computing: - Kurangnya Bandwith Akses internet pada peralatan ini umumnya lebih lambat dibandingkan dengan koneksi kabel. - Gangguan Transmisi Banyak faktor yang bisa menyebabkan gangguan sinyal pada mobile computing seperti cuaca, medan dan jarak alat mobile computing dengan titik pemancar sinyal terdekat.

2. Grid computing 
Komputasi grid menggunakan komputer yang terpisah oleh geografis, didistibusikan dan terhubung oleh jaringan untuk menyelasaikan masalah komputasi skala besar. Ada beberapa daftar yang dapat dugunakan untuk mengenali sistem komputasi grid, adalah : - Sistem untuk koordinat sumber daya komputasi tidak dibawah kendali pusat. - Sistem menggunakan standard dan protocol yang terbuka. - Sistem mencoba mencapai kualitas pelayanan yang canggih, yang lebih baik diatas kualitas komponen individu pelayanan komputasi grid. 
 
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. Adapun perbedaan antara komputasi mobile, komputasi grid dan komputasi cloud, dapat dilihat penjelasannya dibawah ini : - Komputasi mobile menggunakan teknologi komputer yang bekerja seperti handphone, sedangkan komputasi grid dan cloud menggunakan komputer. - Biaya untuk tenaga komputasi mobile lebih mahal dibandingkan dengan komputasi grid dan cloud. - Komputasi mobile tidak membutuhkan tempat dan mudah dibawa kemana-mana, sedangkan grid dan cloud membutuhkan tempat yang khusus. - Untuk komputasi mobile proses tergantung si pengguna, komputasi grid proses tergantung pengguna mendapatkan server atau tidak, dan komputasi cloud prosesnya membutuhkan jaringan internet sebagai penghubungnya.
READ MORE - Komputasi Modern

Kamis, 11 April 2013

V-Class Pemrograman Jaringan

Program di bawah ini untuk mengetahui nama Komputer yang user gunakan

import java.net.*;
public class getName{
public static void main(String args[]) throws Exception{
InetAddress host = null ;
host = InetAddress.getLocalHost();
System.out.println("Nama komputer Anda :" + host.getHostName());
}
}

Tampilan dari getName.java


Program dibawah ini bertujuan untuk mendapatkan nama komputer dari Alamat IP.

import java.net.*;
public class IPtoName{
public static void main(String args[]){
if (args.length == 0){
System.out.println("Pemakaian : java IPtoName ");
System.exit(0);
}
String host = args[0] ;
InetAddress address = null ;
try{
address = InetAddress.getByName(host);
}catch(UnknownHostException e){
System.out.println("invalid IP");
System.exit(0);
}
System.out.println(address.getHostName());
}
}

Jalankan dengan argumen IP komputer lokal dan komputer lain.$ javac IPtoName.java
$ java IPtoName
$ java IPtoName
$ java IPtoName

Hasil dari IPtoName.java
 
 

Program di bawah ini, digunakan untuk menampilkan alamat IP. Misalnya masukkan www.kaskus.co.id maka akan ditampilkan Alamat IP dari www.kaskus.co.id. 

import java.net.*;
import java.io.*;
public class IPFinder{
public static void main(String args[]) throws IOException{
String host;
BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter host name : ");
host = input.readLine();
try{
InetAddress address = InetAddress.getByName(host);
System.out.println("IP Address : " + address);
}catch(UnknownHostException e){
System.out.println("Could not find " + host);
}
}
}

Hasil dari IPFinder.java


READ MORE - V-Class Pemrograman Jaringan

Rabu, 03 April 2013

Pengantar Komputasi Modern bagian Modelling

1. Definisi Komputasi
Komputasi bisa diartikan sebagai cara untuk menyelesaikan sebuah masalah dari inputan data dengan menggunakan algoritma. Teknologi komputasi adalah aktivitas penggunaan dan pengembangan teknologi komputer, perangkat keras, dan perangkat lunak komputer. Ia merupakan bagian spesifik komputer dari teknologi informasi.
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.
Ilmu 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. 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. Akan tetapi secara istilahnya, komputasi itu diartikan sebagai cara untuk menyelesaikan sebuah masalah dari inputan data dengan menggunakan algoritma. Teknologi komputasi adalah aktivitas penggunaan dan pengembangan teknologi komputer, perangkat keras, dan perangkat lunak komputer. Ia merupakan bagian spesifik komputer dari teknologi informasi.
2. Pengertian 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.

Yang terkait dengan komputasi modern adalah :
1. Akurasi : yang berhubungan dengan bit dan floating point
2. Kecepatan : dalam satuan hertz (processor tunggal, pipeline, parallel processing)
3. Problem volume besar : down sizing, parallel
4. Modelling : NN, GA
5. Kompleksitas : menggunakan teori big O

Modelling Komputasi
  • Mesin Mealy
 
Dalam teori komputasi sebagai konsep dasar sebuah komputer, mesin Mealy adalah otomasi fasa berhingga (finite state automaton atau finite state tranducer) yang menghasilkan keluaran berdasarkan fasa saat itu dan bagian masukan/input. Dalam hal ini, diagram fasa (state diagram) dari mesin Mealy memiliki sinyal masukan dan sinyal keluaran untuk tiap transisi. Prinsip ini berbeda dengan mesin Moore yang hanya menghasilkan keluaran/output pada tiap fasa.
Nama Mealy diambil dari “G. H. Mealy” seorang perintis mesin-fasa (state-machine) yang menulis karangan “A Method for Synthesizing Sequential Circuits” pada tahun 1955.
( Diagram fasa dari mesin Mealy sederhana )

  • Mesin Moore
Dalam teori komputasi sebagai prinsip dasar komputer, mesin Moore adalah otomasi fasa berhingga (finite state automaton) di mana keluarannya ditentukan hanya oleh fasa saat itu (dan tidak terpengaruh oleh bagian masukan/input). Diagram fasa (state diagram) dari mesin Moore memiliki sinyal keluaran untuk masing-masing fasa. Hal ini berbeda dengan mesin Mealy yang mempunyai keluaran untuk tiap transisi.
Nama Moore diambil dari “Edward F. Moore” seorang ilmuwan komputer dan perintis mesin-fasa (state-machine) yang menulis karangan “Gedanken-experiments on Sequential Machines”.


  • Petri net
Contoh transisi token pada Petri net
Petri net adalah salah satu model untuk merepresentasikan sistem terdistribusi diskret. Sebagai sebuah model, Petri net merupakan grafik 2 arah yang terdiri dari place, transition, dan tanda panah yang menghubungkan keduanya. Di samping itu, untuk merepresentasikan keadaan sistem, token diletakkan pada place tertentu. Ketika sebuah transition terpantik, token akan bertransisi sesuai tanda panah.

Penggunaan Komputasi
Salah satu contoh penggunaan komputasi adalah dalam bidang kedokteran,yaitu dalam pencarian obat. Untuk meramalkan aktivitas sejumlah besar calon obat, seorang praktisi komputasi meniru suasana pengujian aktivitasnya di laboratorium basah dengan model-model Fisika atau Matematika (seperti: struktur 3 dimensi calon obat) sebagai pengganti bahan-bahan laboratorium tersebut. Model-model ini kemudian dinyatakan di dalam persamaan-persamaan Matematika yang kemudian diselesaikan oleh komputer dengan kapasitas dan kelajuan yang melebihi kapasitas dan kelajuan manusia. Hasilnya berupa suatu bilangan bagi tiap calon obat yang dapat dibandingkan satu dengan yang lainnya. Perbandingan ini merupakan ramalan tingkat aktivitas suatu calon obat relatif terhadap calon obat lainnya. Demikianlah cara meramalkan aktivitas calon obat dengan metode komputasi. Dengan demikian, calon-calon obat yang diramalkan akan memberikan aktivitas yang rendah dapat dihindari.

Sumber :
http://id.wikipedia.org/wiki/Komputasi
http://www.beritanet.com/Education/John-Von-Neumann.html
http://id.wikipedia.org/wiki/Teknologi_komputasi
http://www.scribd.com/doc/24593215/SEJARAH-KOMPUTASI
READ MORE - Pengantar Komputasi Modern bagian Modelling
Powered By Blogger

OKe

no hal

Search