Bebek Adımlarıyla IBM'in Kuantum Bilgisayarında / Simülatöründe Kod Çalıştırmak

20 Ocak 2019
185
32
IBM
IBM nedir diye sorucak olursanız IBM bir bilişim teknoloji şirketidir
Kuantum bilgisayarlarda kodlarımızı çalıştırabilmek, simülatörlerde çalışmak için bizim IBM'e kayıt olmamız gerekiyor.
bunun için Google ye IBM quantum computer register yazıp IBM'im sitesine giriyoruz.
Karşımıza aşağıdaki gibi bir sayfa çıkıyor.

Create an IBMid account a tıklıyoruz




Ad Soyad Parola gibi istenen verileri giriyoruz. Bize mail onayı için kod geliyor o kodu istenen yere girip doğrulatıyoruz



Aşağıdaki kısıma geldiğimizde zorunlu olarak bizden institution istiyor. O kısma en az 3 harfli bir yazı giriyoruz.
İsterseniz sizi bilgilendirmesi için alt kısımdaki kutucuklara tik atabilirsiniz.


Ve kaydımız tamamlandı.




API Token, bizim site üzerinden değil de Jupyter notebook gibi editörden hesabımıza giriş yapmak için gerekli olan ve kişiye özel token. Başkalarıyla paylaşamazsınız, kullanıcı sözleşmesi gereği yasak.




Bu Kısımda Python Ve Kuantum Fiziği Bilgisi Gerekecek.

Python bilmiyorsanız bebek adımlarından sporcu adımlarına geçebilirsiniz. Python bildiğinizi varsayarak anlattım.


Kuantum bilgisayara erişmek için IBM Quantum Lab ın altındaki launch lab a tıklıyoruz ve karşımıza aşağıdaki sayfa çıkıyor.

Burda 2 seçenek var Notebook ve Console. Bizim için pek fark etmez zaten basit birkaç kod yazıcaz.

Python logosu olan qiskit i seçiyoruz. Karşımıza yazı yazabildiğimiz bir satır çıkıyor. Kodlarımızı bu satıra yazacağız








Şimdi basit bir devre oluşturucağız

gerekli kütüphaneleri import ettikten sonra;
bits = QuantumCircuit(2,2) ile 2 quantum bit ve 2 classical bit tanımladık.
İlk yazan 2 bizim qubitimiz sonraki 2 ise bizim classical bitimiz.

bu tanımlama, yorum satırında yazdığım şekilde de yazılabilir.
daha sonra ise draw() ile çizdirdik.


----------------------------------------------------


.h superpozisyona koymaya yarıyor. 0 vererek 0.qubite koyduk.
Eğer ilk 2 sine koymak isteseydik
Kod:
bits.h([0,1])
yazıcaktık


.cx([0,1])
0 kontrol qbit
1 ise target qbit


.measure([0,1],[0,1]) ile de
0 ıncı ve 1 inci qbitleri
0 ıncı ve 1.classical bitler içince ölçüyoruz.





---------------------------------------------------------

Devreyi oluşturduk fakat cevapları alamadık. Gerçek bi kuantum bilgisayarda yada simülatörde çalıştırmak kaldı.

En altta yazan qasm_simulatorü kullanıcam.
Simülatörü kullanabilmek için qiskitin içinden Aer'i kullanıcaz.

execute'e 2 veri girdim

execute(bits,backend=emulator)

1.si Neyi çalıştıracağı (bits i)
2.si Nerede çalıştıracağı (simülatör de)



Yazdırmak için ise sonuna .result() yazıp sonuc değişkenine atadım

Sonra ise result.get_caunts(bits) ile sonuçları saydırıp histogram (sütun grafiği de diyebilirsiniz) şeklinde gösterdim.


Kod:
plot_histogram(result.get_caunts(bits))
 

Hacker.bat

Üye
14 Ağu 2021
101
12
31
IBM
IBM nedir diye sorucak olursanız IBM bir bilişim teknoloji şirketidir
Kuantum bilgisayarlarda kodlarımızı çalıştırabilmek, simülatörlerde çalışmak için bizim IBM'e kayıt olmamız gerekiyor.
bunun için Google ye IBM quantum computer register yazıp IBM'im sitesine giriyoruz.
Karşımıza aşağıdaki gibi bir sayfa çıkıyor.

Create an IBMid account a tıklıyoruz




Ad Soyad Parola gibi istenen verileri giriyoruz. Bize mail onayı için kod geliyor o kodu istenen yere girip doğrulatıyoruz



Aşağıdaki kısıma geldiğimizde zorunlu olarak bizden institution istiyor. O kısma en az 3 harfli bir yazı giriyoruz.
İsterseniz sizi bilgilendirmesi için alt kısımdaki kutucuklara tik atabilirsiniz.


Ve kaydımız tamamlandı.




API Token, bizim site üzerinden değil de Jupyter notebook gibi editörden hesabımıza giriş yapmak için gerekli olan ve kişiye özel token. Başkalarıyla paylaşamazsınız, kullanıcı sözleşmesi gereği yasak.




Bu Kısımda Python Ve Kuantum Fiziği Bilgisi Gerekecek.

Python bilmiyorsanız bebek adımlarından sporcu adımlarına geçebilirsiniz. Python bildiğinizi varsayarak anlattım.


Kuantum bilgisayara erişmek için IBM Quantum Lab ın altındaki launch lab a tıklıyoruz ve karşımıza aşağıdaki sayfa çıkıyor.

Burda 2 seçenek var Notebook ve Console. Bizim için pek fark etmez zaten basit birkaç kod yazıcaz.

Python logosu olan qiskit i seçiyoruz. Karşımıza yazı yazabildiğimiz bir satır çıkıyor. Kodlarımızı bu satıra yazacağız








Şimdi basit bir devre oluşturucağız

gerekli kütüphaneleri import ettikten sonra;
bits = QuantumCircuit(2,2) ile 2 quantum bit ve 2 classical bit tanımladık.
İlk yazan 2 bizim qubitimiz sonraki 2 ise bizim classical bitimiz.

bu tanımlama, yorum satırında yazdığım şekilde de yazılabilir.
daha sonra ise draw() ile çizdirdik.


----------------------------------------------------


.h superpozisyona koymaya yarıyor. 0 vererek 0.qubite koyduk.
Eğer ilk 2 sine koymak isteseydik
Kod:
bits.h([0,1])
yazıcaktık


.cx([0,1])
0 kontrol qbit
1 ise target qbit


.measure([0,1],[0,1]) ile de
0 ıncı ve 1 inci qbitleri
0 ıncı ve 1.classical bitler içince ölçüyoruz.





---------------------------------------------------------

Devreyi oluşturduk fakat cevapları alamadık. Gerçek bi kuantum bilgisayarda yada simülatörde çalıştırmak kaldı.

En altta yazan qasm_simulatorü kullanıcam.
Simülatörü kullanabilmek için qiskitin içinden Aer'i kullanıcaz.

execute'e 2 veri girdim

execute(bits,backend=emulator)

1.si Neyi çalıştıracağı (bits i)
2.si Nerede çalıştıracağı (simülatör de)



Yazdırmak için ise sonuna .result() yazıp sonuc değişkenine atadım

Sonra ise result.get_caunts(bits) ile sonuçları saydırıp histogram (sütun grafiği de diyebilirsiniz) şeklinde gösterdim.


Kod:
plot_histogram(result.get_caunts(bits))
eline sağlık
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.