Tes
Selasa, 03 Juli 2018
Jumat, 11 Mei 2018
PEMBAHASAN MATERI PEMROGRAMAN JARINGAN
LATIHAN GET IP
- Listing Program
- Logika Program
Bagian awal adalah mengimport fungsi yang terdapat pada bagian library java.net, lalu menamai class dengan nama getIP dan lalu mendeklarasikan variable hostnya yang selanjutnya akan memberikan nilai kepada variable host dengan fungsi getLocalHost() dan nanti akan menghasilkan ip host dari komputer yang digunakan untuk program ini.
Untuk mendapatkan ip dari host yang sudah tersedia, bisa dipanggil dengan getAddress yang berfungsi menghasilkan alamat ip berdasar nama host dan alamat ip akan disimpan dalam byte array ip. Agar dapat memunculkan alamat ip dengan benar maka perlu loop. Setiap looping akan mencetak 1 element dari variable ip berdasarkan indeks yang diberikan sekaligus menjadi value.
- Output Program
LATIHAN GET NAME
- Listing Program
- Logika Program
Selanjutnya adalah untuk mendapatkan nama host dari program, awal adalah mengimport fungsi pada bagian libraray java.net, lalu mendeklarasikan variabel host dengan InetAddress yang akan memberikan nilai kepada variable host dengan fungsi getLocalHost() dan nanti akan menghasilkan ip host dari komputer yang digunakan untuk program ini. Lalu mencetak “ Nama komputer anda : “ dan hasil dari pemanggilan fungsi getHostName().
- Output Program
LATIHAN IP TO NAME
- Listing Program
- Logika Program
Selanjutnya adalah untuk mengambil nama host berdasarkan dapat ip yang diberikan sebagai argumen pada program. Awal program akan melakukan pengecekan apabila program tidak menerima apapun, maka akan mencetak “ Pemakaian: java IPtoName ” dan program akan berhenti. apabila kondisi tidak terpenuhi maka program akan mendeklaraskan variabel host yang bertipe String dan memberikan valuenya yakni argumen pertama yang diterima program, dan juga program akan mendeklarasikann variabel address, dimana variabel address akan digunakan untuk memperoleh nama host.
Selanjutnya program akan mencoba untuk mengambil data ip dari String host yang hasilnya akan disimpan dalam variabel address, apabila value dari String host tidak memberikan hasil bagi variabel address, maka program akan mencetak “invalid IP – malformed IP” dan kemudian program akan berhenti. Apabila variabel address berhasil menerima hasi dari pemanggilan fungsi getByName(), maka program akan mencetak nama host berdasarkan ip yang tersimpan dalam variabel address.
- Output Program
LATIHAN NSLOOKUP
- Listing Program
- Logika Program
Selanjutnya adalah program mengambil data ip berdasarkan nama host yang diberikan sebagai argumen pada program. Awal program akan melakukan pengecekan apabila program tidak menerima apapun, maka akan mencetak “ Pemakaian: java IPtoName ” dan program akan berhenti. apabila kondisi tidak terpenuhi maka program akan mendeklaraskan variabel host yang bertipe String dan memberikan valuenya yakni argumen pertama yang diterima program, dan juga program akan mendeklarasikann variabel address, dimana variabel address akan digunakan untuk memperoleh nama host.
Selanjutnya program akan mencoba untuk mengambil data ip dari String host yang hasilnya akan disimpan dalam variabel address, apabila value dari String host tidak memberikan hasil bagi variabel address, maka program akan mencetak “Unknown Host” dan kemudian program akan berhenti. Agar dapat memunculkan alamat ip dengan benar maka perlu loop. Setiap looping akan mencetak 1 element dari variable ip berdasarkan indeks yang diberikan sekaligus menjadi value.
- Output Program
MEMBANGUN APLIKASI CLIENT-SERVER TCP SEDERHANA
- Listing Program
Server
- Logika Program
Server
Selanjutnya membuat program client-server yang bisa mengirim pesan. Awal program akan mengimport seluruh fungsi yang terdapata dalam librari java.net dan java.io, kemudian program akan mendeklarasikan variabel TESTPORT yang bertipe data integer sebagai alamat port yang akan digunakan program, dan juga program akan mendeklarasikan variabel checkServer, line, is, os, dan cliensocket.
Selanjutnya membuat program client-server yang bisa mengirim pesan. Awal program akan mengimport seluruh fungsi yang terdapata dalam librari java.net dan java.io, kemudian program akan mendeklarasikan variabel TESTPORT yang bertipe data integer sebagai alamat port yang akan digunakan program, dan juga program akan mendeklarasikan variabel checkServer, line, is, os, dan cliensocket.
Selanjutnya program akan menguji port yang diberikan dengan menginisialisasi objek ServerSocket dengan argumen TESTPORT kemudian program akan mencetak “Aplikasi Server hidup …”, apabila terjadi kesalahan maka akan dilakukan eksepsi IOException, kemudian program akan mencoba menerima data yang dikirimkan dari client dengan menggunakan fungsi accept(). lalu program akan menciptakan inputan dan aliran output untuk client berdasarkan value yang diperoleh dari client.
Selanjutnya program akan mengecek isi dari inputan yang diberikan oleh client, apabila data tersebut berisikan “salam” maka program akan mengirimkan output “salam juga” kepada client, slain dari itu program akan mengirimkan “Maaf, saya tidak mengerti”.
Client
Awal program akan mengimport seluruh fungsi yang terdapata dalam librari java.net dan java.io, kemudian program akan mendeklarasikan variabel TESTPORT yang bertipe data integer sebagai alamat port yang akan digunakan program, dan juga program akan mendeklarasikan variabel cl, stdin, is, os, userInput, dan output. selanjutnya program akan mengecek apakah ip yang diberikan sebagai argumen merupakan host yang sedang menjalankan program server. kemudian program akan meminta user untuk memberikan inputan sebagai data yang akan dikirimkan ke server, setelah data dikirimkan program client akan langsung menerima hasil yang dikirimkan oleh server.
Client
Awal program akan mengimport seluruh fungsi yang terdapata dalam librari java.net dan java.io, kemudian program akan mendeklarasikan variabel TESTPORT yang bertipe data integer sebagai alamat port yang akan digunakan program, dan juga program akan mendeklarasikan variabel cl, stdin, is, os, userInput, dan output. selanjutnya program akan mengecek apakah ip yang diberikan sebagai argumen merupakan host yang sedang menjalankan program server. kemudian program akan meminta user untuk memberikan inputan sebagai data yang akan dikirimkan ke server, setelah data dikirimkan program client akan langsung menerima hasil yang dikirimkan oleh server.
- Output Program
Client
Server
Sabtu, 14 April 2018
Review Paper "Kajian Tentang Komputer Kuantum Sebagai Pengganti Komputer Konvensional Di Masa Depan"
Judul Kajian “Kajian Tentang Komputer Kuantum Sebagai Pengganti
Komputer Konvensional Di Masa Depan”
Nama Peneliti : Herlambang Saputra
Saya akan mereview paper dari sebuah kajian dengan Tema “Kajian Tentang Komputer Kuantum Sebagai Pengganti Komputer Konvensional Di Masa Depan” untuk menunjang salah tugas mata kuliah Pengantar Komputasi Modern (Softskill) semester 8 ATA 2017/2018, Jurusan Teknik Informatika, Universitas Gunadarma.
Saya akan mereview paper dari sebuah kajian dengan Tema “Kajian Tentang Komputer Kuantum Sebagai Pengganti Komputer Konvensional Di Masa Depan” untuk menunjang salah tugas mata kuliah Pengantar Komputasi Modern (Softskill) semester 8 ATA 2017/2018, Jurusan Teknik Informatika, Universitas Gunadarma.
- Tahun Penelitian
2009
- Tujuan Penelitian
Mengkaji sejauh mana teori-teori yang berkembang tentang
komputer kuantum yang berkembang akhir-akhir ini.
- Metode Penilitian
Metode yang kaji adalah Konvensional, Qubit, Gate pada computer
kuantum.
- Hasil penelitian
Pada memory komputer digital menggunakan sistem binary atau
sistem angka basis 2 (0 dan 1) yang dikenal sebagai BIT (singkatan dari Binary
digIT). Konversi dari angka decimal yang biasa kita gunakan (angka berbasis 10
yang memiliki nilai 0 sampai 9) adalah sebagai berikut:
0 = 0 5 = 101 10
= 1010
1 = 1 6 = 110 11
= 1011
2 = 10 7 = 111 12
= 1100
3 = 11 8 = 1000 13
= 1101
4 = 100 9 = 1001
Untuk menghitung angka apa yang dilambangkan oleh 101001
caranya sebagai berikut :
(1 x 32) + (0 x 16) + (1 x 8) + (0 x 4) + (0 x 2) + (1 x 1)
= 32 + 0 + 8 + 0 + 0 +1 = 41.
Contoh perhitungan penjumlahan matematika menggunakan sistem
binary :
10 1010
23 + 10111 +
33 100001
Sistem inilah yang selama ini kita gunakan saat kita mengolah
informasi menggunakan komputer digital atau komputer konvensional yang ada saat
ini.
Komputer Kuantum memanfaatkan fenomena yaitu keadaan
superposisi. Ketika Atom memiliki konfigurasi spin, atom dapat keatas maupun
kebawah. Komunikasi menggunakan komputer kuantum bisa mencapai kecepatan yang
begitu luar biasa karena informasi dari satu tempat ke tempat lain dapat ditransfer
secara instant. Begitu cepatnya sehingga terlihat seakan-akan mengalahkan kecepatan
cahaya.
Qubit pada system quantum yang ditulis Boolean dengan angka
0 dan 1 dengan tipikal system mikroskopik.
Gate logika kuantum merupakan alat yang melakukan operasi gabungan
yang benar pada qubit yang terpilih dan pada waktu yang juga tepat. Jaringan kuantum
adalah sebuah alat yang terdiri dari gate logika kuantum yang langkah komputasionalnya
disingkronisasikan dengan waktu. Output dari sejumlah gate dihubungkan oleh
sejumlah kabel mengarah ke input lainnya. Ukuran jaringan adalah jumlah gate didalamnya.
- Kesimpulan
Berdasarkan uraian diatas dapat disimpulkan bahwa system pada
komputer konvensional (komputer digital) sangat berbeda. Untuk komputer
konvensional menggunakan bit 0 dan 1. Untuk computer kuantum menggunakan qubit
0 , 1 dan superposisi 0 dan 1.
Kecepatan komputer quantum lebih cepat dari pada komputer
konvensional (komputer digital) karena melakukan proses secara simultan tidak
secara linear seperti computer konvensional.
Saat ini perkembangan teknologi sudah menghasilkan komputer
kuantum sampai 7 qubit, tetapi menurut penelitian dan analisa yang ada, dalam
beberapa tahun mendatang teknologi komputer kuantum bisa mencapai 100 qubit.
Kita bisa membayangkan betapa cepatnya komputer masa depan nanti. Semua perhitungan
yang biasanya butuh waktu berbulan-bulan, bertahun-tahun, bahkan berabad-abad
pada akhirnya bisa dilaksanakan hanya dalam hitungan menit.
Sumber :
Jumat, 16 Maret 2018
PENGANTAR QUANTUM COMPUTATION
PENDAHULUAN
Sumber :
Quantum
Computation sendiri adalah bidang studi yang difokuskan pada
teknologi komputer berkembang berdasarkan prinsip-prinsip teori kuantum, yang
menjelaskan sifat dan perilaku energi dan materi pada kuantum (atom dan
subatom) tingkat.
Ada juga Quantum Computer. Lalu apa
bedanya dengan Quantum Computer?
Quantum
Computer adalah alat untuk perhitungan yang menggunakan sebuah
fenomena mekanika kuantum, seperti superposisi dan keterkaitan, untuk melakukan
operasi pada data. Cara kerja quantum computer sendiri berbeda dengann komputer
biasanya. Dalam komputasi klasik, jumlah data dihitung
dengan bit dalam komputer kuantum hal ini dilakukan dengan qubit
(quantum bit) yang berarti jika di komputer biasa hanya mengenal 0 atau 1,
dengan qubit sebuah komputer quantum dapat mengenal keduanya secara bersamaan
dan itu membuat kerja dari komputer quantum itu lebih cepat dari pada komputer
biasa.
Quantum Computer dapat jauh lebih cepat dari komputer konvensional pada banyak masalah, salah satunya yaitu masalah yang memiliki sifat berikut:
Quantum Computer dapat jauh lebih cepat dari komputer konvensional pada banyak masalah, salah satunya yaitu masalah yang memiliki sifat berikut:
- Satu-satunya cara adalah menebak dan mengecek jawabannya berkali-kali
- Terdapat n jumlah jawaban yang mungkin
- Setiap kemungkinan jawaban membutuhkan waktu yang sama untuk mengeceknya
- Tidak ada petunjuk jawaban mana yang kemungkinan benarnya lebih besar: memberi jawaban dengan asal tidak berbeda dengan mengeceknya dengan urutan tertentu.
Contoh dari masalah itu misalnya password cracker yang mencoba menebak password dari file terenkripsi (dengan asumsi passwordnya memiliki panjang maksimal). Untuk masalah seperti di atas, waktu yang dibutuhkan oleh komputer quantum untuk menyelesaikannya proporsional dengan akar dari n. Hal ini dapat membuat waktu yang dibutuhkan dari tahunan menjadi hitungan menit.
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.
Pengertian Lain
Quantum entanglement adalah bagian dari
fenomena quantum mechanical yang menyatakan bahwa dua atau lebih objek dapat
digambarkan mempunyai hubungan dengan objek lainnya walaupun objek tersebut
berdiri sendiri dan terpisah dengan objek lainnya. Quantum entanglement
merupakan salah satu konsep yang membuat Einstein mengkritisi teori Quantum
mechanical. Einstein menunjukkan kelemahan teori Quantum Mechanical yang
menggunakan entanglement merupakan sesuatu yang “spooky action at a distance”
karena Einstein tidak mempercayai bahwa Quantum particles dapat mempengaruhi
partikel lainnya melebihi kecepatan cahaya. Namun, beberapa tahun kemudian,
ilmuwan John Bell membuktikan bahwa “spooky action at a distance” dapat dibuktikan
bahwa entanglement dapat terjadi pada partikel-partikel yang sangat kecil.
Penggunaan quantum entanglement saat
ini diimplementasikan dalam berbagai bidang salah satunya adalah pengiriman
pesan-pesan rahasia yang sulit untuk di-enkripsi dan pembuatan komputer yang
mempunyai performa yang sangat cepat.
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. Sebagaimana ditunjukkan pada Algoritma
Shor.
QUANTUM GATES
Gate
sendiri dalam bahasa Indonesia adalah Gerbang.jadi Quantum Gates adalah sebuah
gerbang kuantum yang dimana berfungsi mengoperasikan bit yang terdiri dari 0
dan 1 menjadi qubits. dengan demikian Quantum gates mempercepat banyaknya
perhitungan bit pada waktu bersamaan.
Gerbang
kuantum biasanya direpresentasikan sebagai matriks. Sebuah gerbang yang bekerja
pada k qubit diwakili oleh 2 x 2 k k matriks kesatuan. Jumlah qubit dalam input
dan output dari gerbang harus sama. Tindakan dari gerbang kuantum ditemukan
dengan mengalikan matriks mewakili gerbang dengan vektor yang mewakili keadaan
kuantum. Tidak seperti banyak gerbang logika klasik, gerbang logika kuantum
yang reversibel (model komputasi dimana proses komputasi sampai batas tertentu
adalah reversibel, yaitu waktu-dibalik).
Pada
saat ini, model sirkuit komputer adalah abstraksi paling berguna dari proses
komputasi dan secara luas digunakan dalam industri komputer desain dan
konstruksi hardware komputasi praktis. Dalam model sirkuit, ilmuwan komputer
menganggap perhitungan apapun setara dengan aksi dari sirkuit yang dibangun
dari beberapa jenis gerbang logika Boolean bekerja pada beberapa biner (yaitu,
bit string) masukan. Setiap gerbang logika mengubah bit masukan ke dalam satu
atau lebih bit keluaran dalam beberapa mode deterministik menurut definisi dari
gerbang. dengan menyusun gerbang dalam grafik sedemikian rupa sehingga output
dari gerbang awal akan menjadi input gerbang kemudian, ilmuwan komputer dapat
membuktikan bahwa setiap perhitungan layak dapat dilakukan. Quantum Logic
Gates, Prosedur berikut menunjukkan bagaimana cara untuk membuat sirkuit
reversibel yang mensimulasikan dan sirkuit ireversibel sementara untuk membuat
penghematan yang besar dalam jumlah ancillae yang digunakan.
– Pertama mensimulasikan
gerbang di babak pertama tingkat.
– Jauhkan hasil gerbang di
tingkat d / 2 secara terpisah.
– Bersihkan bit ancillae.
– Gunakan mereka untuk
mensimulasikan gerbang di babak kedua tingkat.
– Setelah menghitung output,
membersihkan bit ancillae.
– Bersihkan hasil tingkat d /
2.
Sekarang
kita telah melihat gerbang reversibel ireversibel klasik dan klasik, memiliki
konteks yang lebih baik untuk menghargai fungsi dari gerbang kuantum. Sama
seperti setiap perhitungan klasik dapat dipecah menjadi urutan klasik gerbang
logika yang bertindak hanya pada bit klasik pada satu waktu, sehingga juga bisa
setiap kuantum perhitungan dapat dipecah menjadi urutan gerbang logika kuantum
yang bekerja pada hanya beberapa qubit pada suatu waktu. Perbedaan utama adalah
bahwa gerbang logika klasik memanipulasi nilai bit klasik, 0 atau 1, gerbang
kuantum dapat sewenang-wenang memanipulasi nilai kuantum multi-partite termasuk
superposisi dari komputasi dasar yang juga dilibatkan. Jadi gerbang logika
kuantum perhitungannya jauh lebih bervariasi daripada gerbang logika
perhitungan klasik.
ALGORITMA SHOR
Salah
satu algoritma yang digunakan dalam quantum computing yaitu Algoritma shor.
Algoritma shor itu sebuah teori algoritma yang mewakili sistem keamanan
komputer dalam komputer quantum, dapat merancang dan memecahkan kode rahasia
atau untuk mengamankan pengiriman data dari serangan yang tidak punya hak
akses.
Algoritma
yang ditemukan oleh matematikawan Peter Shor pada tahun 1995 ini adalah
algoritma kuantum yang berjalan pada komputer kuantum untuk memecahkan
permasalahan kode rahasia yang saat ini secara umum digunakan untuk mengamankan
pengiriman data. Kode ini disebut kode RSA. Jika disandikan melalui kode RSA,
data yang dikirimkan akan aman karena kode RSA tidak dapat dipecahkan dalam
waktu yang singkat. Selain itu juga pemecahan kode RSA membutuhkan kerja dari
ribuan komputer secara paralel, jadi kerja pemecahan tersebut tidaklah efektif.
Efisiensi
algoritma Shor adalah karena efisiensi kuantum Transformasi Fourier , dan
modular eksponensial. Jika sebuah komputer kuantum dengan jumlah yang memadai
qubit dapat beroperasi tanpa mengalah kebisingan dan fenomena interferensi
kuantum lainnya, algoritma Shor dapat digunakan untuk memecahkan kriptografi
kunci publik skema seperti banyak digunakan skema RSA. Algoritma Shor terdiri
dari dua bagian:
- 1. Penurunan yang bisa dilakukan pada komputer klasik, dari masalah anjak untuk masalah ketertiban-temuan.
- 2. Sebuah algoritma kuantum untuk memecahkan masalah order-temuan.
Hambatan runtime dari
algoritma Shor adalah kuantum eksponensial modular yang jauh lebih lambat
dibandingkan dengan kuantum Transformasi Fourier dan pre-/post-processing
klasik. Ada beberapa pendekatan untuk membangun dan mengoptimalkan sirkuit
untuk eksponensial modular. Yang paling sederhana dan saat ini yaitu pendekatan
paling praktis adalah dengan menggunakan meniru sirkuit aritmatika konvensional
dengan gerbang reversibel , dimulai dengan penambah ripple-carry. Sirkuit
Reversible biasanya menggunakan nilai pada urutan n ^ 3, gerbang untuk n qubit.
Teknik alternatif asimtotik meningkatkan jumlah gerbang dengan menggunakan
kuantum transformasi Fourier , tetapi tidak kompetitif dengan kurang dari 600
qubit karena konstanta tinggi.
Sumber :
Rabu, 17 Januari 2018
Langganan:
Postingan
(
Atom
)