Selasa, 16 Juni 2015

Quantum Computation

Quantum Computation

Dalam bahasa Indonesia yaitu komputer kuantum, merupakan komputer yang memanfaatkan fenomena-fenomena dari mekanika quantum, seperti quantum superposition dan quantum entanglement, yang digunakan untuk pengoperasian data.Komputasi kuantum adalah bidang studi difokuskan pada teknologi komputer berkembang berdasarkan prinsip-prinsip teori kuantum , yang menjelaskan sifat dan perilaku energi dan materi pada kuantum (atom dan subatom) tingkat. Pengembangan komputer kuantum , jika praktis, akan menandai lompatan maju dalam kemampuan komputasi jauh lebih besar daripada yang dari sempoa ke modern superkomputer , dengan keuntungan kinerja di alam miliar kali lipat dan seterusnya.

 Komputer kuantum, mengikuti hukum fisika kuantum, akan memperoleh kekuatan pengolahan yang besar melalui kemampuan untuk berada di beberapa negara, dan untuk melakukan tugas-tugas menggunakan semua kemungkinan permutasi secara bersamaa. Kini pusat penelitian di komputasi kuantum termasuk MIT, IBM, Oxford University, dan Los Alamos National Laboratory.

Entanglement

Entanglement merupakan keadaan dimana dua atom yang berbeda berhubungan sedemikian hingga satu atom mewarisi sifat atom pasangannya. “Entanglement adalah esensi komputasi kuantum karena ini adalah jalinan kualitas yang berhubungan dengan lebih banyak informasi dalam bit kuantum dibanding dengan bit komputing klasik,” demikian Andrew Berkley, salah satu peneliti.

Para ahli fisika dari University of Maryland telah satu langkah lebih dekat ke komputer kuantum dengan mendemonstrasikan eksistensi entanglement antara dua gurdi kuantum, masing-masing diciptakan dengan tipe sirkuit padat yang dikenal sebagai persimpangan Josephson. Temuan terbaru ini mendekatkan jalan menuju komputer kuantum dan mengindikasikan bahwa persimpangan Josephson pada akhirnya dapat digunakan untuk membangun komputer supercanggih.

Pengoperasian Data Qubit

Proses komputasi dilakukan pada partikel ukuran nano yang memiliki sifat mekanika quantum, maka satuan unit informasi pada Komputer Quantum disebut quantum bit, atau qubit. Berbeda dengan bit biasa, nilai sebuah qubit bisa 0, 1, atau superposisi dari keduanya. State dimana qubit diukur adalah sebagai vektor atau bilangan kompleks. Sesuai tradisi dengan quantum states lain, digunakan notasi bra-ket untuk merepresentasikannya.

Pure qubit state adalah superposisi liner dari kedua state tersebut. Lebih jelasnya, sebuah pure qubit state dapat direpresentasikan oleh kombinasi linear dari state|0> dan state |1> : Dengan α dan β adalah amplitudo probabilitas yan dapat berupa angka kompleks. State space dari sebuah qubit secara geometri dapat direpresentasikan Bloch sphere

Bloch sphere adalah ruang 2 dimensi yang merupakan geometri untuk permukaan bola. Dibandingkan bit konvensional yang hanya dapat beradai di salah satu kutub, Qubit dapat berada dimana saja dalam permukaan bola. Untuk penerapan fisiknya, semua sistem 2 level, selama ukurannya cukup kecil untuk hukum mekanika quantum berlaku. Berbagai jenis implementasi fisik telah dikemukakan, contohnya antara lain: polarisasi cahaya, spin elektron, muatan listrik, dll.

Superposisi quantum adalah inti perbedaan antara qubit dengan bit biasa. Dalam keadaan superposisi, sebuah qubit akan bernilai |0> dan |1> pada saat bersamaan. Menurut interpretasi Copenhagen, bila dilakukan pengukuran terhadap qubit, maka hanya akan muncul satu state saja. State lainnya “kolaps” dalam arti hancur dan tidak mungkin diambil kembali.

Pemanfaatan sifat superposisi qubit ini adalah Paralellisme Quantum. Paralelisme Quantum muncul dari kemampuan quantum register untuk menyimpan superposisi dari base state. Maka setiap operasi pada register berjalan pada semua kemungkinan dari superposisi secara simultan. Karena jumlah state yang mungkin adalah 2n, dengn n adalah jumlah qubit pada quantum register, kita dapat melakukan pada komputer quantum satu kali operasi yang membutuh kan waktu eksponensial pada komputer konvensional. Kelemahan dari metode ini adalah, semakin besar base state yang bersuperposisi, semakin kecil kemungkinan hasil pengukuran dari nilai hasil pengukuran tersebut benar. Kelemahan ini membuat pararellisme quantum tidak berguna bila operasi dilakukan pada nilai yang spesifik. Namun kelemahan ini tidak begitu berpengaruh pada fungsi yang memperhitungkan nilai dari semua input, bukan hanya satu.





Quantum Gate

Dalam komputasi kuantum dan khusus kuantum sirkuit model komputasi, gerbang kuantum (atau Gerbang logika kuantum) adalah rangkaian dasar kuantum yang beroperasi di sejumlah kecil qubits. Mereka adalah blok bangunan dari kuantum sirkuit, seperti gerbang logik klasik sirkuit digital konvensional.

Tidak seperti logika klasik pintu gerbang pada umumnya, logika kuantum bersifat reversibel. Namun, komputasi klasik hanya dapat dilakukan dengan menggunakan gerbang reversibel. Sebagai contoh, gerbang Toffoli reversibel dapat melaksanakan semua fungsi Boolean. Gerbang ini memiliki penyetaraan kuantum secara langsung, menampilkan bahwa sirkuit kuantum dapat melakukan semua operasi yang dilakukan oleh sirkuit klasik.

Gerbang logik kuantum yang diwakili oleh kesatuan matriks. Gerbang kuantum yang paling umum beroperasi pada ruang dari satu atau dua qubits, seperti Gerbang logika klasik umum beroperasi pada satu atau dua bit. Ini berarti bahwa sebagai matriks, gerbang kuantum dapat dijelaskan oleh 2 × 2 atau 4 × 4 kesatuan matriks.

Algoritma Shor

Algoritma Shor merupakan sebuah metode yang dikembangkan tahun 1994 oleh ilmuwan AT&T  Peter Shor untuk menggunakan komputer kuantum yang futuristis untuk menemukan faktor-faktor dari sebuah bilangan. Bilangan-bilangan yang diperkalikan satu dengan yang lain  untuk  memperoleh  bilangan  asli.  Saat ini, pemfaktoran (factoring) sebuah bilangan besar masih terlalu sulit bagi komputer konvensional meskipun begitu mudah untuk  diverifikasi. Itulah sebabnya pemfaktoran bilangan besar ini banyak digunakan dalam metode kriptografi untuk melindungi data.


Sumber / Referensi :


Cloud Computing

Cloud Computing

Cloud Computing adalah sebuah istilah dalam ilmu komputer yang berarti komputasi awan yang berbasis internet atau biasa dalam dunia IT dengan sebutan "The Cloud". Istilah lain dalam teknologi cloud computing yaitu Sebuah jaringan komputer yang saling berhubungan dengan komputer lain yang dapat dijalankan secara bersamaan. Cloud computing sebenarnya penerapannya terpaku pada satu server atau banyak yang telah disediakan yang layanannya berupa penyimpanan data di server.

Berdasarkan jenis layanan-nya, Cloud Computing dibagi menjadi berikut ini:
  1. Software as a Service (SaaS)
  2. Platform as a Service (PaaS)
  3. Infrastructure as a Service (IaaS)
Dibawah ini kita bahas, masing-masing jenis layanan diatas:
  • Software as a Service (SaaS) adalah layanan dari Cloud Computing dimana kita tinggal memakai software (perangkat lunak) yang telah disediakan. Kita cukup tahu bahwa perangkat lunak bisa berjalan dan bisa digunakan dengan baik. Contoh: layanan email publik (Gmail, YahooMail, Hotmail, dsb), social network (Facebook, Twitter, dsb) instant messaging (YahooMessenger, Skype, GTalk, dsb) dan masih banyak lagi yang lain.  Dalam perkembangan-nya, banyak perangkat lunak yang dulu hanya kita bisa nikmati dengan menginstall aplikasi tersebut di komputer kita (on-premise) mulai bisa kita nikmati lewat Cloud Computing. Keuntungan-nya, kita tidak perlu membeli lisensi dan tinggal terkoneksi ke internet untuk memakai-nya. Contoh: Microsoft Office yang sekarang kita bisa nikmati lewat Office 365, Adobe Suite yang bisa kita nikmati lewat Adobe Creative Cloud, dsb.
  • Platform as a Service (PaaS) adalah layanan dari Cloud Computing dimana kita menyewa “rumah” berikut lingkungan-nya (sistem operasi, network, databbase engine, framework aplikasi, dll), untuk menjalankan aplikasi yang kita buat. Kita tidak perlu pusing untuk menyiapkan “rumah” dan memelihara “rumah” tersebut. Yang penting aplikasi yang kita buat bisa berjalan dengan baik di “rumah” tersebut. Untuk pemeliharaan “rumah” ini menjadi tanggung jawab dari penyedia layanan. Sebagai analogi, misal-nya kita sewa kamar hotel, kita tinggal tidur di kamar yang sudah kita sewa, tanpa peduli bagaimana “perawatan” dari kamar dan lingkungan-nya. Yang penting, kita bisa nyaman tinggal di kamar itu, jika suatu saat kita dibuat tidak nyaman, tinggal cabut dan pindah ke hotel lain yang lebih bagus layanan-nya. Contoh penyedia layanan PaaS ini adalah: Amazon Web Service, Windows Azure,  bahkan tradisional hosting-pun merupakan contoh dari PaaS. Keuntungan dari PaaS adalah kita sebagai pengembang bisa fokus pada aplikasi yang kita buat, tidak perlu memikirkan operasional dari “rumah” untuk aplikasi yang kita buat.
  • Infrastructure as a Service (IaaS) adalah layanan dari Cloud Computing dimana kita bisa “menyewa” infrastruktur IT (komputasi, storage, memory, network dsb). Kita bisa definisikan berapa besar-nya unit komputasi (CPU), penyimpanan data (storage) , memory (RAM), bandwith, dan konfigurasi lain-nya yang akan kita sewa. Mudah-nya, IaaS ini adalah menyewa komputer virtual yang masih kosong, dimana setelah komputer ini disewa kita bisa menggunakan-nya terserah dari kebutuhan kita. Kita bisa install sistem operasi dan aplikasi apapun diatas-nya. Contoh penyedia layanan IaaS ini adalah: Amazon EC2, Windows Azure (soon), TelkomCloud, BizNetCloud, dsb. Keuntungan dari IaaS ini adalah kita tidak perlu membeli komputer fisik, dan konfigurasi komputer virtual tersebut bisa kita rubah (scale up/scale down) dengan mudah. Sebagai contoh, saat komputer virtual tersebut sudah kelebihan beban, kita bisa tambahkan CPU, RAM, Storage dsb dengan segera.

Virtualisasi Pada Cloud Computing

Virtualisasi tidak akan lepas dari cloud computing. Salah satu karakteristik cloud computing yang merupakan turunan dari virtualisasi ini adalah elastisitas dan fleksibilitas. Pengguna bisa menggunakan cloud computing dalam jangka waktu yang pendek sekalipun dan bisa dengan mudah menambah atau mengurangi resource computing mereka. Sebagai contoh, untuk memenuhi kebutuhan trial atau development sebuah aplikasi yang hanya membutuhkancomputing resource dalam 2-3 minggu lamanya. Hal ini akan sulit jika pengguna masih menggunakan server fisik karena justifikasinya akan kurang bisa diukur bagi managemen organisasi tersebut.

Database yang Terintegrasi dengan Cloud Computing

Dalam cloud computing terdapat beberapa database ygang dapat digunakan. Salah satu contohnya yaitu database yang berbasis web, antara lain : Socrata, Cebase, Dabble DB. Berikut ini penjelasan dari masing-masing database berbasis web tersebut.

1.  Socrata

Awalnya website ini bernama www.blist.com, tapi karena mengalami perubahan servis dan layanan diubah menjadi Socrata yang beralamat di www.socrata.com. Socrata adalah aplikasi database online yang relatif mudah digunakan dan dirancang untuk keperluan nonteknis pebisnis, seperti spreadsheet dan pemrograman database.

2.  Cebase

Cebase (www.cebase.com) memungkinkan anda untuk membuat aplikasi database baru secara online dengan hanya beberapa klik dari mouse komputer anda. Anda juga dapat mendesain tampilan program database seperti membuat form, membuat kolom data entri, dan sebagainya.

Data anda akan ditampilkan dalam tata letak seperti spreadsheet. Anda dapat menyortir, menambah, menghapus, serta menyaring dari kelompok data anda yang diinginkan.

3.  Dabble DB

Cara pemakaian Dabble DB (www.dabbledb.com) mirip dengan Cebase. Anda tinggal klik-klik saja pada settingan database yang ingin dibuat. DB menawarkan tiga cara untuk berbagi data. Page Option memungkinkan anda untuk mengumpulkan data dari pengguna lain, tanpa memberikan akses ke database. User Option memungkinkan pengguna lain untuk mengakses data mentah di database. Schema Option dapat mengaktifkan JavaScript API untuk membiarkan orang lain berinteraksi dengan data anda pada situs-situs lain.

Komputasi Terdistribusi dalam Cloud Computing

Komputasi Terdistribusi merupakan salah satu tujuan dari Cloud Computing, karena menawarkan pengaksesan sumber daya secara paralel, para pengguna juga bisa memanfaatkannya secara bersamaan (tidak harus menunggu dalam antrian untuk mendapatkan pelayanan), terdiri dari banyak sistem sehingga jika salah satu sistem crash, sistem lain tidak akan terpengaruh dan juga dapat menghemat biaya operasional karena tidak membutuhkan sumber daya (resourches).

Map Reduce dan NoSQL

Map Reduce dan NoSQL (Not Only SQL) adalah sebuah pemogramaan framework guna untuk membantu user mengembangankan sebuah data yang ukuran besar dapat terdistribusi satu sama lain. Map-Reduce adalah salah satu konsep teknis yang sangat penting di dalam teknologi cloud terutama karena dapat diterapkannya dalam lingkungan distributed computing. Dengan demikian akan menjamin skalabilitas aplikasi kita.

Komputasi Grid

Grid computing merupakan salah satu jenis dari komputasi modern. Grid computing adalah arsitektur TI baru yang menghasilkan sistem informasi perusahaan yang berbiaya rendah dan lebih adaptif terhadap dinamika bisnis. Dengan grid computing, sejumlah komponen hardware dan software yang modular dan independen akan dapat dikoneksikan dan disatukan untuk memenuhi tuntutan kebutuhan bisnis. Lebih jauh, dari sisi ekonomi, implementasi grid computing berarti membangun pusat komputasi data yang tangguh dengan struktur biaya variatif yang bias disesuaikan dengan kebutuhan.

Referensi : 

Selasa, 31 Maret 2015

Implementasi Komputasi Modern Pada Bidang Matematika (Numerical Analysis)

1.1 Latar belakang

Sebuah komputasi bermula karena tidak ada alat hitung yang dapat
menghitung dalam jumlah besar pada zaman dahulu kala, namun seiring
perkembangan zaman fungsi dari sebuah komputasi bertambah bukan hanya
untuk menghitung namun juga untuk memperagakan simulasi, pemrosesan
data yang banyak, membantu manusia dalam membuat keputusan dan
lainnya.


1.2 Tujuan

Tujuan dari penulisan ini diharapkan dapat mengetahui bagaimana
proses komputasi bermula dan di manfaatkan untuk mempermudah manusia
dalam melakukan pekerjaan dibidang apapun.


2.1 Penjelasan 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 sewaktuwaktu
tanpa jadwal yang jelas.

Selanjutnya Menjelaskan Macam-macam Komputasi Modern

Komputasi modern terbagi tiga macam, yaitu komputasi mobile (bergerak),
komputasi grid dan komputasi cloud. Penjelasan lebih lanjut dari jenis-jenis
komputasi modern sebagai berikut:

Mobile Computing.
Mobile Computing atau komputasi bergerak memiliki beberapa penjelasan,
salah satunya komputasi bergerak merupakan kemajuan teknologi komputer
sehingga dapat berkomunikasi menggunakan jaringan tanpa 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 smartphone dan lain sebagainya.

Grid Computing
Komputasi Grid menggunakan komputer yang terpisah oleh geografis,
didistribusikan dan terhubung oleh jaringan untuk menyelesaikan masalah
komputasi skala besar. Ada beberapa daftar yang dapat digunakan untuk
mengenali sistem komputasi grid, yaitu:
a.Sistem untuk koordinat sumber daya komputasi tidak dibawah kendali
pusat.
b.Sistem menggunakan standart dan protocol yang terbuka.
c.Sistem mencoba mencapai kualitas pelayanan yang canggi. yang lebih baik
diatas kualitas komponen individe pelayan komputasi grid.

Cloud Computing
Komputasi Cloudmerupakan gaya komputasi yang terukut dinamis dan
sumber daya virtual yang sering menyediakan layanan melalui internet.
Komputasi Cloud menggambarkan pelengkap baru, konsumsi dan layanan IT
berbasi model dalam internet, dan biasanya melibatkan ketentuan dari
keterukuran dinamis dan sumber daya virtual yang sering menyediakan
layanan melalui internet.
Komputasi modern dapat dimanfaakan untuk memecahkan masalah seperti
dibawah ini :

Modeling (NN&GA)
Modeling merupakan suatu hal yang penting dalam melakukan suatu
perhitungan yang rumit.

Problem Volume Besar (Down Sizzing atau paralel)
Data yang besar tentu membutuhkan suatu cara penyelesaian yang khusus.
Karena data yang besar dapat menjadi masalah jika ada yang terlewatkan.
Dengan metode ini data yang besar diparalelkan dalam pengolahan sehingga
dapat diorganisir dengan baik.
Akurasi (big, Floating point)
Akurasi dibutuhkan dalam memecahkan masalah. Maka dari itu sebuah
komputasi modern digunakan untuk menemukan sebuah jawaban yang
akurat.

Kompleksitas
Untuk menangani masalah yang kompleks maka sebuah komputasi
diharapkan dapat melakukan perhitungan yang kompleks.

Kecepatan
Masalah diharapkan dapat diselesaikan dengan cepat maka kecepatan
menjadi sesuatu yang penting dalam mempersingkat waktu menjawab
masalah.

2.3 Implementasi Komputasi Modern pada bidang Matematika

Implementasi komputasi modern di bidang matematika ada numerical
analysis yaitu sebuah algoritma dipakai untuk menganalisa masalah –
masalah matematika. Bidang analisis numerik sudah sudah dikembangkan
berabad-abad sebelum penemuan komputer modern. Interpolasi linear sudah
digunakan lebih dari 2000 tahun yang lalu. Banyak matematikawan besar dari
masa lalu disibukkan oleh analisis numerik, seperti yang terlihat jelas dari
nama algoritma penting seperti metode Newton,interpolasi polinomial
Lagrange, eliminasi Gauss, atau metode Euler. Buku-buku besar berisi rumus
dan tabel data seperti interpolasi titik dan koefisien fungsi diciptakan untuk
memudahkan perhitungan tangan. Dengan menggunakan tabel ini (seringkali
menampilkan perhitungan sampai 16 angka desimal atau lebih untuk
beberapa fungsi), kita bisa melihat nilai-nilai untuk diisikan ke dalam rumus
yang diberikan dan mencapai perkiraan numeris sangat baik untuk beberapa
fungsi. Karya utama dalam bidang ini adalah penerbitan NIST yang disunting
oleh Abramovich dan Stegun, sebuah buku setebal 1000 halaman lebih. Buku
ini berisi banyak sekali rumus yang umum digunakan dan fungsi dan nilainilainya
di banyak titik. Nilai f-nilai fungsi tersebut tidak lagi terlalu berguna
ketika komputer tersedia, namun senarai rumus masih mungkin sangat
berguna.Kalkulator mekanik juga dikembangkan sebagai alat untuk
perhitungan tangan. Kalkulator ini berevolusi menjadi komputer elektronik
pada tahun 1940. Kemudian ditemukan bahwa komputer juga berguna untuk
tujuan administratif. Tetapi penemuan komputer juga mempengaruhi bidang
analisis numerik, karena memungkinkan dilakukannya perhitungan yang lebih
panjang dan rumit.

Kesimpulan
Berdasarkan penjelasan yang dipaparkan diatas perkembangan dunia
komputasi mengalami banyak peningkatan pada bidang manapun dan
diharapkan dapat membantu pekerjaan manusia dan menyelesaikan setiap
masalah yang di alami manusia.

Daftar Pustaka

http://livemakefun.blogspot.com/2014/03/perkembangan-teori-komputasimodern_16.html  

http://amoekinspirasi.wordpress.com/2014/03/16/perkembangan-teorikomputasi-  dan-implementasinya/