论文标题
通过实用软件驱动的方法教学量子计算:经验报告
Teaching Quantum Computing through a Practical Software-driven Approach: Experience Report
论文作者
论文摘要
量子计算利用自然界的量子定律,使新型算法能够在传统计算机上有效,这可能会导致材料科学和化学等关键领域的突破。对量子计算基础知识(尤其是在量子编程中)教育的量子队伍的需求迅速增长。但是,非专家的产品很少,关于培训计算机科学和工程专业学生的最佳实践信息很少。 在本报告中,我们描述了我们使用实用,软件驱动的方法教授量子计算本科课程的经验。我们通过动手编程来教授量子算法的课程,从而降低了传统书面作业的重要性,并依靠自定进度的编程练习(“量子Katas”),各种编程任务和最终项目。我们观察到该课程的编程部分有助于学生内部化讲座期间提出的理论材料。在调查结果中,学生指出,编程练习和最终项目对他们的学习过程做出了最大的贡献。 我们描述了围绕量子编程的课程,讨论本课程中使用的主要文物的动机,并介绍了我们的经验教训和最佳实践,以改善未来的课程。我们希望我们的经验将有助于指导想要采用实用方法教学量子计算的教师,并使更多的本科课程能够作为选修课提供量子计划。
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.