|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/dummies-guide-to-practical-quantum-computing-with-ibm-qiskit/
课程评论:没有评论
课程名称:初学者指南:使用IBM Qiskit进行实用量子计算 课程概述:本课程旨在为量子计算爱好者提供一个简单易懂的入门指南。课程首先要求学员下载和安装Anaconda,并根据IBM Qiskit网站的说明安装IBM Qiskit软件。量子计算的基本概念与传统计算机截然不同。传统计算基于比特(1和0),每次只能处于一种状态,而量子比特(qubit)则可以同时存在于多个状态,使得量子计算在处理特定任务时能显著提高效率。 课程内容包括: 1. **量子力学基础**:介绍量子力学与经典物理的区别、粒子的波粒二象性、双缝实验、叠加态及量子纠缠等基本概念。 2. **比特与量子比特的比较**:探讨经典比特和量子比特(qubit)的运作,及其在信息处理中的优势。 3. **量子门的应用**:介绍经典门和量子门的工作原理、真值表等。重点讲解Pauli X、Y、Z门及Hadamard门等,分析其在量子计算中的使用。 4. **多量子比特操作**:深入理解如何运用CNOT门等多量子比特操作,以及与经典态的结合使用。 5. **量子算法**:学习Deutsch-Jozsa算法,展示量子并行性等重要算法及其实现。 6. **量子技术前沿**:探讨量子密钥分发和量子隐形传态等新兴技术。 课程强调实际操作,学员将以IBM Qiskit为工具,通过设置Python环境及编写量子电路,实践量子计算概念。课程内容附带的代码和Jupyter Notebook文件将提供给学员进行后续的学习和项目应用。 完成课程后,学员将获得结业证书,提升个人专业价值。本课程以IBM Qiskit文档为基础,旨在让初学者容易理解复杂的量子计算概念,帮助他们在未来的量子计算领域中取得成就。课程还提供丰富的学习资源和参考文献,助力学员进一步探索量子计算的奥秘。 期待在课堂上见到你,祝学习愉快!
DISCLAIMER: This course requires you to download and install Anaconda from anaconda website and install IBM Qiskit package using anaconda prompt as described in the IBM qiskit website. If you are a Udemy Business user, please check with your employer before downloading software.Hello and welcome to my new course The Dummies guide to Practical Quantum Computing with IBM Qiskit. Our current classical computing technology is based on bits or binary digits 1 and 0. 1 for ON and 0 OFF. Even though it have two states, a bit can exist in only one state at a time. Just like a coin having two faces head and tail. NOTE: In classical computers a programmer can simply WRITE HIGH LEVEL CODE AND RUN it. But for Quantum Computers we have to DESIGN CIRCUITS for performing specific tasks.Quantum computing concept is entirely different from classical one. It use the quantum mechanical property of tiny sub atomic particles like electrons to perform computation. Instead of 1 and 0, a qubit or quantum bit uses the spin position 'up' and 'down' of electrons. But unlike bits, qubits can exist in both state simultaneously. Like a coin keeps on spinning, we could say it is having equal probability for both head and tail. Or it is both head and tail at the same time.For example consider an 1 bit calculation of finding the best path. 0 means right and 1 means left. A classical computer with a single bit have to first set bit to 0 to go to left path and later 1 to go to right path to find the best path. But a quantum computer with a single qubit can go through both the path simultaneously and arrive at a solution in just only half the time. As the number of qubits increases, this speed increases exponentially compared to classical computers. Computations like data analytic, artificial intelligence which require large parallel processing ability can perform calculations in matter of milli-seconds where it now takes ages to complete.Even though its not going to replace our laptops or mobile phones, Quantum computers will be able to solve these road blocks of traditional computers in data processing. Recently Google announced it has a quantum computer that is 100 million times faster than any classical computer in its lab. The first section of our course from sessions 1 to 6, we are learning essential details about quantum mechanics, and quantum bits which will start with an introduction to quantum mechanics. We will try to have a quick understanding about the difference between quantum mechanics and classical physics, dual nature of particles, double slit experiment, superposition, quantum entanglement etc in the most simplest way of explanation.In the next session we will discuss about the difference between classical bits and quantum bits called qubits. Creating, representing and processing a classical bit. Then how a qubit is generated, what's inside the qubit, how data is represented in qubit and what makes it faster than classical bits.Then we will see in details how a qubit is created and how its retaining its information. We will also discuss the structure of a quantum computer and the way qubits are dealt within it.Then we will learn about scalars and vectors. How vectors and matrices are used to represent the state of a quantum bit. About representing the qubit as Ket vectors and matrices. We will also learn basic matrix operations.After learning about classical bits and qubits, we can now proceed with gates. At first we will learn about classical gates, its working and also different types of classical gates and their truth tables.In the next session, we will learn about the popular quantum frameworks by leading companies researching on quantum computers, their merits and demerits.Having all concepts clear, now we can proceed with the practical part of our course. We will at first setup our computer by installing python environment. Its made easy by installing python distribution called anaconda. Then we will proceed with installing and testing qiskit, the quantum framework by IBMOnce we have qiskit in our computer and the quantum simulator running, we will be coding our first quantum circuit using the simple quantum gate called the Pauli x gate. Later we will try customizing the input and output to the Pauli x gate and verify the operations.Once we verified in simulator, its time we can try that in a real quantum computer. IBM provides access to their number of quantum computers located in research facilities around the world. Using IBM quantum experience interface we can simply create our Pauli x gate circuit to work in a real quantum computer and get output.Then we will check how we can represent matrices as state vectors using dirac notation. We will see how Pauli x gate matrices will be represented as a state vector.Similarly we will proceed with Pauli Y gate. We will check the state vector and try with the operations in our qiskit simulator at first and then implement it in the IBM real quantum computer.Like that, another gate called the Pauli Z gate. For this one also we will learn about the operations in our qiskit simulator at first and then implement it in real quantum computer.In the next session, we will learn about the Eigen value and Eigen vectors of our already learnt Pauli x, y and z gates.After that, we will learn about a new gate called as the Hadamard gate or the H gate. This gate is capable of generating superposition from a classical qubit. We will have an introduction about the operations of H gate. Then we will implement the H gate in our qiskit simulator. We will check the bloch sphere and histogram representation using qiskit. Using H gate we will also try creating few custom circuits in which we will try to replicate an X gate operations only using the H and Z gates. In the next circuit we will check the phenomenon of collapsing the superposition when we measure the qubit.Then we will try the Hadamard gate in an IBM quantum computer.After H gate we will take few quick sessions dealing with few more gates. The first one called as the R Phi gate. Then we will check two more gates called as the S and T gates. And finally will deal with the U and I gates. We will check the transition matrix and operations of those gates.Those were gates with single qubit operations. Now we will proceed with gates that are capable of multi-qubit operations. Before that, we will learn about representing multi-qubits and its states. We will be using a package called qiskit-notebook for representing the multi-qiskit state vector. At first we will try to create a multi-qubit circuit using single qubit gates. At first we will try with X and H gates combined to form the circuit. And later we will try using two qubits and a single gate.After that we will proceed with a real multi-qubit gate called as CNOT gate or the Controlled NOT gate. We will learn more about CNOT gate, the truth table and its operations. At first we will try the CNOT gate with classical qubits. We will implement it in qiskit. Later we will try the CNOT gate with only one superposition qubit and after that with both superposition qubits.Then we will proceed with implementing CNOT gate in the Real quantum computer from IBM. We can also create identity circuits using CNOT gate. Using these equivalence circuit we can mimic operations of other gates which cannot be performed in a real quantum computer. At first we will create an identity circuit using a CNOT gate wrapped with H gates so that it will act like a CNOT gate placed in opposite direction.Then we will try another equivalence circuit using a CNOT gate in between Hadamard gates which will generate operations of a Controlled Z gate or CZ gate. Like that we will create an equivalence circuit for another theoretical gate called as the CY gate or the Controlled Y gate.There is another gate called as the SWAP gate. Like the name indicates, it can swap the qubit states between each other. We will also create circuit identity or circuit equivalence for swap gate. Similarly for another gate called the Tiffoli gate, we will create circuit identity or circuit equivalence for tiffoli gate and we will implement that circuit in qiskit.And that's all with gates, we will now proceed with learning an important algorithm called as the Deutsch-Jozsa algorithm or DJ algorithm which demonstrates quantum parallelism. The underlying mathematics of this algorithm is very complex and we are just trying learn it in just a very shallow manner. At first we will see the DJ problem that the algorithm is dealing with and later we will learn about the algorithm design. We will implement it in qiskit later and will verify the results.We will then proceed with discussing about two interesting technologies. The first one called as QKD or Quantum key distribution which utilizes the unique properties of quantum systems to generate and distribute cryptographic key. Quantum cryptography also uses the same physics principles to communicate virtually non-hackable data over a dedicated communications link. Then we will discuss about Quantum tele-portation which is a technique for transferring quantum information from a sender at one location to a receiver some distance away.Overall this will be a nice course for a beginner who are fascinated about quantum computing and want to learn more about quantum computing. Actual quantum computing is all about complex boring mathematics and formulas which I have tried my maximum to avoid convert it in a very simple way to make it understandable to a beginner. In this course we are strictly following the IBM Qiskit documentation and text book. Almost all of the illustrations and examples used in this course are from the IBM qiskit documentation website which you may refer for further learning from this point.Quantum computers could help the development of new breakthroughs in science, medications, machine learning, material science, finance which helps mankind to become the best civilization in the whole universe. In fact quantum computer is so powerful that no one knows how to use its true potential and till now no quantum algorithm is perfect. The hardware and code are still in its development stage providing great opportunities in future for quantum computing professionals. That's all about the topics which are currently included in this quick course. The code, and jupyter notebook files used in this course has been uploaded and shared in a folder. I will include the link to download them in the last session or the resource section of this course. You are free to use the code in your projects with no questions asked.Also after completing this course, you will be provided with a course completion certificate which will add value to your portfolio.So that's all for now, see you soon in the class room. Happy learning and have a great time.References and Credits:IBM's qiskit learnIBM's qiskit textbookIBM's qiskit documentationblog cloudflare - the-quantum-menacetowardsdatascience demystifying quantum gates one qubit at a time 54404ed80640wikipedia - Quantum_logic_gatejonathan-hui qc quantum computing series 10ddd7977abdyoutube - Coding with Qiskityoutube - Veritasium, a much simplified explanation to every complex quantum conceptsVery much inspired by works and articles of Professor Andrea Morello. Quantum Engineering, University of New South Wales