QComp2019
Wiki for the Bachelor thesis project "Simulera kvantsystem på en kvantdator"
Background
The specific aim of this project is to simulate a simple quantum system with the Variational Quantum Eigensolver (VQE) algorithm. In this approach we will combine quantum-state measurements on a quantum processor (QPU), or rather an emulated quantum virtual machine, with optimization of variational ansatz parameters performed on a CPU.
Specific aims of the project
- Study a specific quantum system (one per group):
- Perform a jordan-wigner transformation to a spin basis that preserves the fermionic commutation relations
- Solve (simple versions) of the system on a quantum virtual machine (QVM) using the variational quantum eigensolver VQE (Attach:Nature_Comm_VQE.pdf)
- Requires iterative optimization performed on the CPU; possibly using the Nelder-Mead algorithm
- Analyze the results with respect to varying noise levels and gate depths
A preliminary list of milestones (to be discussed and possibly modified):
- Enumerated list:
- Sub bullets
Programming language and environment
We will use the python programming language with relevant modules (see setup instructions below). We recommend using the git version control system for code development. This can also be used for collaborative writing, or you can use ShareLatex. See relevant reference material on this page.
Setup instructions (using conda):
1. install miniconda from https://repo.continuum.io/miniconda/
- Download and run the Linux installer shell script (x86, 64 bit)
- See also the conda online documentation
- Make sure that the path is set to find 'conda'
- conda update conda
2. Create the virtual environment with the needed packages
- conda create -n quantum_computing python=3.6
- source activate quantum_computing
- conda install -c conda-forge jupyter
- conda install -c conda-forge pyquil
- conda install -c conda-forge urllib3
- conda install -c conda-forge grove
- conda install -c conda-forge h5py=2.8.*
- conda install -c conda-forge hdf5=1.10.2.*
- conda install -c psi4 openfermion
- pip install forestopenfermion
- conda install -c conda-forge matplotlib
- conda install -c conda-forge libsodium
3.Install the Rigetti QVM and Compiler on Linux (bare-bones)
- See: http://docs.rigetti.com/en/latest/start.html#installing-the-qvm-and-compiler-on-linux-bare-bones
4. Start the qvm and quilc servers in two different terminals and run in the background
- ~/rigetti/forest-sdk_2.2.0-linux-barebones/qvm -S
- ~/rigetti/forest-sdk_2.2.0-linux-barebones/quilc -S
Box
We suggest to put relevant files (documents, planning report, references, figures, etc.) in a Box folder. Please crete a project folder and invite all group members and your supervisors. However, from experience this cloud storage should not be used as a working directory for code development. Use git instead.
Students
TIFX04–19–06 (lipkin):
- Axel (axelna)
- Carl E (carlekl)
- Eric (nieric)
- Joel (kajoel)
- Sebastian (holmins)
TIFX04–19–80 (enelektronatom)
- Adel (hasic)
- Carl A (anderca)
- Gustaf (gussjos)
- Simon (simjac)
Supervisors
- Andreas Ekström (andreas.ekstrom@chalmers.se)
- Christian Forssén (christian.forssen@chalmers.se)
Co-supervisors (local system administrator)
- Håkan Johansson (f96hajo@chalmers.se)