Sabtu, 22 April 2017

Quantum Computing

Pengertian  Quantum Computing

Merupakan alat hitung yang menggunakan mekanika kuantum seperti superposisi dan keterkaitan, yang digunakan untuk peng-operasi-an data. Perhitungan jumlah data pada komputasi klasik dihitung dengan bit, sedangkan perhitungan jumlah data pada komputer kuantum dilakukan dengan qubit. Prinsip dasar komputer kuantum adalah bahwa sifat kuantum dari partikel dapat digunakan untuk mewakili data dan struktur data, dan bahwa mekanika kuantum dapat digunakan untuk melakukan operasi dengan data ini. Dalam hal ini untuk mengembangkan komputer dengan sistem kuantum diperlukan suatu logika baru yang sesuai dengan prinsip kuantum.


Sejarah singkat

Pada tahun 1970-an pencetusan atau ide tentang komputer kuantum pertama kali muncul oleh para fisikawan dan ilmuwan komputer, seperti Charles H. Bennett dari IBM, Paul A. Benioff dari Argonne National Laboratory, Illinois, David Deutsch dari University of Oxford, dan Richard P. Feynman dari California Institute of Technology (Caltech).
Feynman dari California Institute of Technology yang pertama kali mengajukan dan menunjukkan model bahwa sebuah sistem kuantum dapat digunakan untuk melakukan komputasi. Feynman juga menunjukkan bagaimana sistem tersebut dapat menjadi simulator bagi fisika kuantum.
Pada tahun 1985, Deutsch menyadari esensi dari komputasi oleh sebuah komputer kuantum dan menunjukkan bahwa semua proses fisika, secara prinsipil, dapat dimodelkan melalui komputer kuantum. Dengan demikian, komputer kuantum memiliki kemampuan yang melebihi komputer klasik.
Pada tahun 1995, Peter Shor merumuskan sebuah algoritma yang memungkinkan penggunaan komputer kuantum untuk memecahkan masalah faktorisasi dalam teori bilangan.
Sampai saat ini, riset dan eksperimen pada bidang komputer kuantum masih terus dilakukan di seluruh dunia. Berbagai metode dikembangkan untuk memungkinkan terwujudnya sebuah komputer yang memilki kemampuan yang luar biasa ini. Sejauh ini, sebuah komputer kuantum yang telah dibangun hanya dapat mencapai kemampuan untuk memfaktorkan dua digit bilangan. Komputer kuantum ini dibangun pada tahun 1998 di Los Alamos, Amerika Serikat, menggunakan NMR (Nuclear Magnetic Resonance).


Entanglement

Entanglement adalah efek mekanik kuantum yang mengaburkan jarak antara partikel individual sehingga sulit menggambarkan partikel tersebut terpisah meski Anda berusaha memindahkan mereka. Contoh dari quantum entanglement: kaitan antara penentuan jam sholat dan quantum entanglement. Mohon maaf bagi yang beragama lain saya hanya bermaksud memberi contoh saja. Mengapa jam sholat dibuat seragam? Karena dengan demikian secara massal banyak manusia di beberapa wilayah secara serentak masuk ke zona entanglement bersamaan.


Pengoperasian Data Qubit

Komputer kuantum memelihara urutan qubit. Sebuah qubit tunggal dapat mewakili satu, nol, atau, penting, setiap superposisi quantum ini, apalagi sepasang qubit dapat dalam superposisi kuantum dari 4 negara, dan tiga qubit dalam superposisi dari 8. Secara umum komputer kuantum dengan qubit n bisa dalam superposisi sewenang-wenang hingga 2 n negara bagian yang berbeda secara bersamaan (ini dibandingkan dengan komputer normal yang hanya dapat di salah satu negara n 2 pada satu waktu). Komputer kuantum yang beroperasi dengan memanipulasi qubit dengan urutan tetap gerbang logika quantum. Urutan gerbang untuk diterapkan disebut algoritma quantum.

Sebuah contoh dari implementasi qubit untuk komputer kuantum bisa mulai dengan menggunakan partikel dengan dua putaran menyatakan: “down” dan “up”. Namun pada kenyataannya sistem yang memiliki suatu diamati dalam jumlah yang akan kekal dalam waktu evolusi dan seperti bahwa A memiliki setidaknya dua diskrit dan cukup spasi berturut-turut eigen nilai , adalah kandidat yang cocok untuk menerapkan sebuah qubit. Hal ini benar karena setiap sistem tersebut dapat dipetakan ke yang efektif spin -1/2 sistem.


Algoritma pada Quantum Computing

Para ilmuwan mulai melakukan riset mengenai sistem kuantum tersebut, mereka juga berusaha untuk menemukan logika yang sesuai dengan sistem tersebut. Sampai saat ini telah dikemukaan dua algoritma baru yang bisa digunakan dalam sistem kuantum yaitu algoritma shor dan algoritma grover.

1. Algoritma Shor
Algoritma yang ditemukan oleh Peter Shor pada tahun 1995. Dengan menggunakan algoritma ini, sebuah komputer kuantum dapat memecahkan sebuah kode rahasia yang saat ini secara umum digunakan untuk mengamankan pengiriman data. Kode yang disebut kode RSA ini, jika disandikan melalui kode RSA, data yang dikirimkan akan aman karena kode RSA tidak dapat dipecahkan dalam waktu yang singkat. Selain itu, pemecahan kode RSA membutuhkan kerja ribuan komputer secara paralel sehingga kerja pemecahan ini tidaklah efektif.

2. Algoritma Grover
Algoritma Grover adalah sebuah algoritma kuantum yang menawarkan percepatan kuadrat dibandingkan pencarian linear klasik untuk list tak terurut. Algoritma Grover menggambarkan bahwa dengan menggunakan pencarian model kuantum, pencarian dapat dilakukan lebih cepat dari model komputasi klasik. Dari banyaknya algoritma kuantum, algoritma grover akan memberikan jawaban yang benar dengan probabilitas yang tinggi. Kemungkinan kegagalan dapat dikurangi dengan mengulangi algoritma. Algoritma Grover juga dapat digunakan untuk memperkirakan rata-rata dan mencari median dari serangkaian angka, dan untuk memecahkan masalah Collision.


Implementasi Quantum Computing

Pada 19 Nov 2013 Lockheed Martin, NASA dan Google semua memiliki satu misi yang sama yaitu mereka semua membuat komputer kuantum sendiri. Komputer kuantum ini adalah superkonduktor chip yang dirancang oleh sistem D – gelombang dan yang dibuat di NASA Jet Propulsion Laboratories.

NASA dan Google berbagi sebuah komputer kuantum untuk digunakan di Quantum Artificial Intelligence Lab menggunakan 512 qubit D -Wave Two yang akan digunakan untuk penelitian pembelajaran mesin yang membantu dalam menggunakan jaringan syaraf tiruan untuk mencari set data astronomi planet ekstrasurya dan untuk meningkatkan efisiensi searchs internet dengan menggunakan AI metaheuristik di search engine heuristical.

A.I. seperti metaheuristik dapat menyerupai masalah optimisasi global mirip dengan masalah klasik seperti pedagang keliling, koloni semut atau optimasi swarm, yang dapat menavigasi melalui database seperti labirin. Menggunakan partikel terjerat sebagai qubit, algoritma ini bisa dinavigasi jauh lebih cepat daripada komputer konvensional dan dengan lebih banyak variabel.

Penggunaan metaheuristik canggih pada fungsi heuristical lebih rendah dapat melihat simulasi komputer yang dapat memilih sub rutinitas tertentu pada komputer sendiri untuk memecahkan masalah dengan cara yang benar-benar cerdas . Dengan cara ini mesin akan jauh lebih mudah beradaptasi terhadap perubahan data indrawi dan akan mampu berfungsi dengan jauh lebih otomatisasi daripada yang mungkin dengan komputer normal


Perbandingan Komputer Klasik Dengan Komputer Kuantum

Komputasi klasik bergantung pada tingkat akhir, pada prinsip-prinsip yang diungkapkan oleh aljabar Boolean. Data harus diproses dalam keadaan biner eksklusif pada setiap titik waktu atau bit. Sedangkan saat itu setiap transistor atau kapasitor perlu dalam kondisi 0 atau 1 sebelum beralih status yang sekarang diukur dalam miliar detik. Masih ada batas untuk seberapa cepat perangkat ini dapat dibuat untuk mengalihkan statu. Sebagaimana pengembangan yang mengarah ke ke sirkuit yang lebih kecil dan lebih cepat, kita mulai mencapai batas fisik material dan ambang batas untuk hukum klasik fisika untuk diterapkan. Dalam hal ini, dunia kuantum mengambil alih.

Dalam komputer kuantum, sejumlah partikel elemental seperti elektron atau foton dapat digunakan baik untuk pengisian atau polarisasi yang bertindak sebagai representasi dari 0 dan / atau 1. Setiap partikel ini dikenal sebagai bit kuantum, atau Qubit. Sifat dan perilaku partikel-partikel ini membentuk dasar dari komputasi kuantum.

Superposisi Quantum dan Keterikatan
Dua aspek yang paling relevan fisika kuantum adalah prinsip-prinsip superposisi dan keterikatan / belitan.

1. Superposisi
Pikirkan qubit sebagai elektron dalam medan magnet. Putaran elektron mungkin sejalan baik dengan bidang, yang dikenal sebagai status spin-up, atau berlawanan dengan bidang, yang dikenal sebagai keadaan spin-down. Menurut hukum kuantum, partikel memasuki status superposisi, di mana ia berperilaku seolah-olah itu di kedua status secara bersamaan. Setiap qubit dimanfaatkan bisa mengambil superposisi dari 0 dan 1.

2. Belitan
Partikel yang berinteraksi di beberapa titik mempertahankan jenis koneksi dan dapat dijerat dengan saling berpasangan. Dalam proses yang dikenal sebagai korelasi. Mengetahui keadaan spin atau putaran dari satu partikel terjerat – atas atau bawah – memungkinkan seseorang untuk mengetahui bahwa spin dari pasangannya adalah dalam arah yang berlawanan. Belitan kuantum memungkinkan qubit yang dipisahkan oleh jarak yang luar biasa untuk berinteraksi satu sama lain secara instan (tidak terbatas pada kecepatan cahaya). Tidak peduli seberapa besar jarak antara partikel berkorelasi, mereka akan tetap terjerat selama mereka terisolasi.

Secara bersama-sama, superposisi kuantum dan belitan memberikkan peningkatan pada daya komputasi yang sangat besar. Di mana 2-bit register di komputer biasa dapat menyimpan hanya satu dari empat konfigurasi biner (00, 01, 10, atau 11) pada waktu tertentu, register 2-qubit dalam komputer kuantum dapat menyimpan semua empat angka secara bersamaan, karena masing-masing qubit mewakili dua nilai. Jika qubit lebih ditambahkan, peningkatan kapasitas diperluas secara eksponensial. Berdasarkan laporan dari situs telegraph.co.uk, komputer kuantum lebih cepat 100 juta kali lipat dari komputer umum yang ada sekarang ini.


Keterbatasan Komputer Quantum

1. Interferensi
Selama fase perhitungan kuantum, gangguan sekecil apapun dalam sistem kuantum (seperti foton tersesat atau gelombang radiasi EM) menyebabkan perhitungan kuantum runtuh. Proses ini dikenal sebagai de-koherensi. Sebuah komputer kuantum harus benar-benar terisolasi dari semua gangguan eksternal selama fase perhitungan.

2. Koreksi Kesalahan
Mengingat sifat dari komputasi kuantum, koreksi kesalahan ultra kritis – bahkan satu kesalahan dalam perhitungan dapat menyebabkan validitas seluruh perhitungan runtuh.

3. Ketaatan Output
Terkait erat dengan dua poin diatas, mengambil data keluaran setelah perhitungan kuantum adalah risiko yang dapat merusak data.


Masa Depan Quantum Computing

Yang terbesar dan yang paling penting adalah kemampuan untuk jumlah yang sangat besar menjadi dua bilangan prima. Ini merupakan hal yang benar-benar penting karena hampir semua enkripsi aplikasi internet yang digunakan dan dapat di de-enkripsi. Sebuah komputer kuantum dapat melakukan hal tersebut relatif cepat. Menghitung posisi atom individu dalam molekul yang sangat besar seperti polimer dan virus. Jika Anda memiliki komputer kuantum Anda bisa menggunakannya untuk mengembangkan obat dan memahami bagaimana molekul bekerja sedikit lebih baik.
Meskipun ada banyak masalah untuk diatasi, terobosan dalam 15 tahun terakhir, dan terutama di babak ke 3, telah membuat beberapa bentuk komputasi kuantum se-praktis mungkin. Namun, potensi yang ditawarkan teknologi ini telah menarik minat luar biasa baik dari pemerintah dan sektor swasta. Ini adalah potensi yang cepat untuk mendobrak hambatan pada teknologi ini.

URL :
http://www.mobnasesemka.com/perbandingan-komputer-kuantum/




Mobile Computing

Mobile computing adalah sebuah teknologi yang memungkinkan penggunanya bisa memanfaatkan kemampuan komputer secara optimal, meski dalam posisi berpindah-pindah. Banyak kalangan menilai bahwa mobile computing akan menggeser keberadaan desktop atau PC yang selama ini kita kenal.Berbicara mengenai mobilitas, hal yang menjadi kritis adalah tenaga. Komponen-komponen kini memiliki performa yang terus meningkat baik dari segi kecepatan maupun kualitas, mengakibatkan kebutuhan akan tenaga listrik meningkat. intel Corporation, mengambil inisiatif menciptakan terobosan dalam hal power management dengan menghadirkan platform intel centrino Mobile Technology.

Power management di mobile computing akan mengatur power sesuai utilitas yang digunakan. Pada saat semua resource digunakan, baru penggunaan atau konsumsi daya mencapai 100 %. Jika utilitas hanya digunakan sedikit saja, maka konsumsi daya juga hanya sedikit. Perkembangan teknologi notebook yang mendukung mobile computing dipertegas dengan realisasi dari konektifitas nirkabel/wireless. Perpaduan kedua hal tersebut memberikan perubahan mendasar akan cara kita berkomputasi, berkomunikasi, dan berinteraksi dengan menghilangkan batasan geografis. Berbagai perusahaan pun berlomba-lomba menciptakan berbagai produk yang memanjakan pengguna 
menghadirkan dukungan pada pekerjaan dan hiburan.

Mengapa disebut mobile computing (komputasi bergerak) ? Karena:
1. Memiliki aplikasi yang sangat luas
2. Memiliki kemampuan melakukan perpindahan posisi
3. Memiliki kemampuan perpindahan peralatan
4. Memiliki kemampuan perpindahan jaringan,dll

Dengan membedakan sistem komputasi mobile dari sistem komputasi lain, kita bisa mengidentifikasi perbedaan dalam kinerja bagaimana dirancang, digunakan dan diatur dalam pembuatan sistem tersebut. Ada beberapa hal yang sistem komputasi mobile dapat melakukan apa yang tidak dapat dilakukan oleh sistem komputasi yang 
statis.

Alat-alat yang digunakan untuk mobile computing adalah Komputer Portabel, Tablet PC, Internet Tablet,PDA, Ultra mobile PC,Smart Phone,dll.

Walaupun mobile computing adalah teknologi yang sudah maju, namun teknologi ini juga mempunyai keterbatasan dan resiko jika tidak digunakan dalam situasi yang benar. Berikut adalah beberapa keterbatasan dan resiko dari mobile computing:
1. Kurangnya Bandwith
Akses internet pada peralatan ini umumnya lebih lambat dibandingkan dengan koneksi kabel, dengan menggunakan teknologi seperti GPRS, EDGE dan jaringan 3G yang baru – baru ini keluar. LAN nirkabel berkecepatan tinggi tidak mahal, tetapi memiliki rentang yang sangat terbatas.

2. Konsumsi Tenaga
Ketika sebuah stopkontak listrik atau generator portabel tidak tersedia, komputer mobile harus bergantung sepenuhnya pada daya baterai. Ini berarti baterai yang luar biasa mahal harus digunakan untuk mendapatkan masa pakai baterai yang diperlukan.

3. 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. Selain itu penerimaan sinyal di dalam terowongan, di beberapa gedung dan daerah pedesaan seringkali buruk.

4. Potensi Terjadinya Kecelakaan
Beberapa kecelakaan kendaraan bermotor baik mobil maupun motor sering disebabkan oleh pengendaranya menggunakan peralatan mobile seperti handphone saat sedang berkendara. Selain itu juga terdapat rumor bahwa sinyal telepon seluler bisa menyebabkan gangguan kesehatan.

5. Antarmuka Pengguna Dengan Alat
Layar dan keyboard yang cenderung kecil terkadang membuat peralatan tersebut sulit untuk digunakan. Metode input alternatif seperti input suara atau pengenalan tulisan tangan membutuhkan pelatihan untuk menggunakannya.

Kendala perkembangan mobile computing pada komputer notebook adalah kecilnya peluang untuk mengubah notebook sesuai yang kita inginkan. Di lain hal, semua komputer notebook yang ada di pasaran saat ini menggunakan desain propietary. Popietary tidak menguntungkan bagi pengguna karena tidak memberikan keleluasaan memilih komponen sesuai yang mereka butuhkan dan inginkan. Dari sisi harga juga memberatkan pengguna karena pola pemasaran dan distribusi yang tidak efisien menyebabkan harga yang tinggi dibebankan pada pengguna. Kendala lainnya adalah kecilnya kesempatan untuk pemain-pemain lain untuk berpartisipasi karena secara finansial membutuhkan investasi yang tidak kecil dimana hal ini hanya dapat dipenuhi oleh perusahaan-perusahaan multinasional (Multinational Company/MNC).

Tool yang dapat digunakan :
- Java ME, popular untuk game
- Symbian, general purpose, didukung Nokia
- Android adalah berbasis Linux
- iPhone , hanya pada Mac OS X
- Palm OS, kuat di US
- dll
  
Mobile computing device tidak selalu harus terhubung dengan jaringan telekomunikasi. Kalkulator, HP, laptop, netbook bisa dikategorikan sebagai perangkat mobile computing.

Untuk mengakses berbagai aplikasi stand alone atau remote applications dapat melalu:
a.        IR (IN Room) Network
Perangkat mobile yang dapat berkomunikasi dalam jangkauan terbatas/ pendek. Meliputi dua type:
– Infra red, cakupannya mencapai 50m dengan bandwidth yang didukung sekitar 1Mbps.
– Radio frequency, dengan jangkauan antara 1m-100m dan kecepatan transfer data sampai dengan 3Mbps

b.       Wireless LAN
Area service jaringan mencapai 200m. Terdapat beberapa standart yang tersedia untuk WLAN dan yang paling banyak dipakai saat ini yaitu IEEE 802.11

c.        Broadband Wireless Network
Jaringan nirkabel peta lebar adalah teknologi nirkabel yang memungkinkan pengiriman nirkabel secara simultan suara, data,dan video. Dua jenis teknologi ini adalah: Lokal Multi-point Distribusi Service (LMDS) dan Multi-point Multi-channel Distribution Service (MMDS). LMDS menggunakan frekuensi bandwidth tinggi nirkabel dalam jarak 20-31 GHz, sedangkan MMDS menggunakan bandwidth lebih rendah dengan frekuensi dalam 2 cakupan GHz dan memiliki jangkauan hingga 50 kilometer.

d.       Wireless Area Network
Wireless Wide Area Network dirancang untuk memberikan transmisi data dan infrastruktur perusahaan terdiri dari base stasiun, pusat kontrol jaringan dan switch untuk mengirimkan data. karakteristik WAN yang luas dan mobilitas tinggi.

e.        Satelitte Based Network
Jaringan satelit telah digunakan untuk relay suara, video atau data, sejak tahun 1960 (DeRose, 2002). karakteristik dari jaringan berbasis satelit adalah bahwa ia memiliki cakupan yang luas, mahal, komunikasi dua arah dan suara berkualitas rendah. Satelite memiliki cakupan wilayah yang luas. Sevara umum satellite digunakan berdasarkan hubungan mereka jarak dan ruang dengan bumi, yaitu Satelit geostasioner (GEOS), Medium Earth Orbit Satelit (MEOS), dan Orbit Satelit Bumi Rendah (Leos). GEOS, MEOS dan Leos masing-masing terletak di ketinggian 35.786 km, 10.000 km dan 1.000 km.

Contoh penggunaan mobile computing :
1. Kendaraan (untuk pemantauan dan koordinasi, GPS)
2. Peralatan Emergensi (akses dunia luar)
3. Akses web dalam keadaan bergerak
4. Location aware service
5/ Information service
6. Disconnected operations
7. Entertainment (network game groups)

URL :


Rabu, 05 April 2017

Pemrograman Jaringan: 5. Membangun Aplikasi Client-Server TCP Sederhana


Program di atas adalah simpleServer.java yang bertindak sebagai server. Server bertugas untuk menerima dan memproses request dari client. Saat program ini dijalankan, maka server akan aktif dengan mencetak "Aplikasi server hidup...". Saat server aktif, server menunggu masukan dari client berupa kata kunci yaitu "salam". Jika client menuliskan kata selain "salam", maka server akan merespon "Maaf, saya tidak mengerti".







Program ini berperan sebagai client. Client memasukkan kata kunci "salam" dan diteruskan ke server. Jika kata kunci cocok, maka server akan merespon "salam juga".

Berikut contoh output kedua program: