Quantum supremacy, the significant edge that quantum computers have compared to classical computers for some specialized problem sets, was recently demonstrated.Quantum computing has the potential to render our current standards of encryption obsolete, as well as the potential to revolutionize other computing problems.In this paper, I summarize my work on developing a quantum computer engineering course for senior-and master-level students.This was a challenging course for both the students and instructor, as we only had a single semester, and students had no prior background in quantum mechanics.We used the IBM Quantum Experience to give the students hands-on experience.This was essential to helping the student grasp the quantum concepts, which are often non-intuitive.
Quantum supremacy, the significant edge that quantum computers have compared to classical computers for some specialized problem sets, was recently demonstrated.Quantum computing has the potential to render our current standards of encryption obsolete, as well as the potential to revolutionize other computing problems.In this paper, I summarize my work on developing a quantum computer engineering course for senior-and master-level students.This was a challenging course for both the students and instructor, as we only had a single semester, and students had no prior background in quantum mechanics.We used the IBM Quantum Experience to give the students hands-on experience.This was essential to helping the student grasp the quantum concepts, which are often non-intuitive.
Abstract This practical guide introduces hands-on quantum computing, based on IBM Q learning resources. The exercises were completed by the author on April 28, 2024, using IBM Q cloud resources. The course provides a practical framework for understanding and experimenting with modern quantum computers, covering realistic use cases, circuit execution, and best practices for operating quantum processors with 100 or more qubits. Participants explore the concept of quantum usefulness, which refers to the practical utility of quantum computers in solving real-world problems, distinguishing it from quantum advantage, which is the point where quantum systems outperform classical computers on meaningful tasks. The course emphasizes that while classical computers remain highly powerful and adaptive, the evolving capabilities of quantum processors offer unique opportunities in computation that can complement classical methods. Hands-on exercises guide participants through practical aspects of designing and executing quantum circuits, running experiments on simulators and cloud-accessible quantum hardware, and interpreting results. This approach bridges theoretical knowledge with applied skills, enabling students and researchers to explore the current potential and limitations of quantum computing. The guide also contextualizes quantum computing within decades of classical computational development, highlighting how quantum devices may transform computational paradigms in fields such as optimization, chemistry, cryptography, and machine learning.
Investments in quantum technologies, which are based on the effects of quantum mechanics, have escalated in recent years, with big players such as IBM, Google, and Microsoft engaging in the race for quantum supremacy. Some potential benefits of this cutting-edge technology include developing new drugs and materials through accurate molecule simulation, establishing more secure and reliable communication channels, and finding faster solutions for complex optimization problems. As quantum technologies evolve, however, the demand for new software, interfaces, and end-to-end systems to properly program and explore the advantages of quantum mechanics becomes paramount. This requires engineers, especially software engineers, and computer scientists, to have multidisciplinary knowledge and skills. Unfortunately, introductory quantum computing and technologies courses are mostly available in physics, and most engineering and computer science courses do not have modules on quantum physics, leading to a talent gap in the current job market. Therefore, this paper proposes a short teaching plan for introducing quantum computing to students with a more technology-based background, such as computer science and engineering students. This plan uses active learning methodologies, such as Challege-Based Teaching, to better engage these students and contextualize the many applications of this new technology. The initial teaching plan consists of a 3-hour seminar introducing the main quantum mechanics concepts and the technology applications, a 3-hour introduction to the math fundamentals and quantum logic gates, and a 3-hour handson workshop using the IBM Qiskit platform. Two versions of this plan were executed in two different moments: (1) a one-day event open to undergraduate students from different institutions and backgrounds, and (2) a 3-day internal training course for computer science and information technology management undergraduate students from our higher education institution. Data was collected during both events through online forms and interviews to measure the learning outcomes of the produced material and better understand the public interest in the field. The results identified key elements for better teaching quantum computing for computer scientists and engineers, providing guidelines for developing a more extensive and term-long teaching plan for undergraduate technology courses.
As quantum computers are becoming available for experiments, their enormous potential is being recognized among college communities. The goal of introducing quantum computing in college level computer science programs is becoming attractive. However, this goal comes with opportunities and challenges. of the challenges is that quantum computing appears to require substantial background in physics as well as in computer science. However, it is hard to convince students to major in these two fields. Computer Science students with a minor in physics can also be considered. Several alternative curriculum structures are possible. A non-consecutive two-course framework is proposed here. A course on Introduction to Quantum Computing may be offered to sophomore level students. This introductory course may teach fundamental ideas about quantum computing with basic concepts behind BQP (Bounded Error Quantum Polynomial) and related topics. This introductory course may be followed up by some physics courses (on related topics such as quantum mechanics) and some computer science courses. Then, a senior level course on Advanced Quantum Computing may be offered that may include some well-known algorithms (such as Shor's Algorithm for Quantum Factorization and Grover's Algorithm for Quantum Search) and their implementation and practices on some simulators (such as QuIDE from http://www.quide.eu/) or some prototype quantum processors (such as IBM's prototype quantum processors). For advanced level courses, some course materials are available from various sources (such as MIT OpenCourseWare). The greater challenge would be in teaching the introductory course mentioned earlier that motivates students towards investing time and efforts in learning quantum computing and related physics, math and computational topics. The challenges of teaching the introductory course should not be underestimated. Some flexible strategies can be suggested for this course so that the biggest challenges can be overcome. Some initial assessments of the students may help adjusting the introduction strategies with student's preparation. What is recommended is that the instructor should be able to adjust the coverage of topics, rigor and depth of treatment. That is, the introductory course should not be rigidly defined. It should be recognized that the main emphasis of the introductory course is actually instilling motivations and curiosity in student's mind about potentials of quantum computing through adaptive teaching of some selected topics where traditional digital computers do not provide tractable solutions. Ideally a balance could be achieved among aspects of depth of treatment, rigor, inspiration, motivation and coverage of topics. Students should be able to realize that the emerging quantum computing technology would be able to provide elegant solutions to some of the classical intractable problems combining ideas from physics, math and computer science in an innovative way. One size fits all is not a good approach and discussion of issues may help us face the challenges better by pragmatically considering a range of possible alternatives. Resources that are currently available may also need to be reviewed for the purpose of introducing quantum computing adequately.
We present a practical course targeting graduate students with prior knowledge of the basics of quantum computing. The practical aims to deepen students' understanding of fundamental concepts in quantum computing by implementing quantum circuit simulators. Through hands-on experience, students learn about different methods to simulate quantum computing, including state vectors, density matrices, the stabilizer formalism, and matrix product states. By implementing the simulation methods themselves, students develop a more in-depth understanding of fundamental concepts in quantum computing, including superposition, entanglement, and the effects of noise on quantum systems. This hands-on experience prepares students to do research in the field of quantum computing and equips them with the knowledge and skills necessary to tackle complex research projects in the field. In this work, we describe our teaching approach and the structure of our practical, and we discuss evaluations and lessons learned.
Quantum computing is an interdisciplinary field that spans physics, mathematics, computer engineering, and computer science. Teaching quantum computing effectively within a constrained timeframe presents a challenge, particularly for engineering students with diverse academic backgrounds. This paper presents an approach to integrating quantum computing into a broader course on Technologies of Computing Systems (TCS) through a dedicated two-week module. The course structure combines lectures, interactive problem-solving, lab exercises, and a hands-on project to ensure an engaging and practical learning experience. The curriculum covers fundamental quantum computing principles, quantum gates, circuits, algorithms, and quantum technology. Assessment includes project work, exams, and student feedback, demonstrating increased engagement and comprehension. The results indicate that this quantum computing module successfully bridges the gap between classical and quantum paradigms, fostering student interest and understanding within a short period.
Quantum computing harnesses quantum laws of nature to enable new types of algorithms, not efficiently possible on traditional computers, that may lead to breakthroughs in crucial areas like materials science and chemistry. There is rapidly growing demand for a quantum workforce educated in the basics of quantum computing, in particular in quantum programming. However, there are few offerings for non-specialists and little information on best practices for training computer science and engineering students. In this report we describe our experience teaching an undergraduate course on quantum computing using a practical, software-driven approach. We centered our course around teaching quantum algorithms through hands-on programming, reducing the significance of traditional written assignments and relying instead on self-paced programming exercises ("Quantum Katas''), a variety of programming assignments, and a final project. We observed that the programming sections of the course helped students internalize theoretical material presented during the lectures. In the survey results, students indicated that the programming exercises and the final project contributed the most to their learning process. We describe the motivation for centering the course around quantum programming, discuss major artifacts used in this course, and present our lessons learned and best practices for a future improved course offering. We hope that our experience will help guide instructors who want to adopt a practical approach to teaching quantum computing and will enable more undergraduate programs to offer quantum programming as an elective.