Giter Site home page Giter Site logo

pengdauan / quantum_control_rl_server Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bbrock89/quantum_control_rl_server

0.0 0.0 0.0 21.17 MB

Model-Free Quantum Control with Reinforcement Learning.

License: GNU General Public License v2.0

Python 100.00%

quantum_control_rl_server's Introduction

Model-Free Quantum Control with Reinforcement Learning

Fork of v-sivak/quantum-control-rl; in this version the server (RL agent) and client (experiment or sim) communicate over tcpip. This may be a bottleneck for some applications, but it's very convenient for others.

This code was used in the following publications:

Model-Free Quantum Control with Reinforcement Learning; Phys. Rev. X 12, 011059 (2022)

Real-time quantum error correction beyond break-even; Nature 616, 50โ€“55 (2023)

High-fidelity, frequency-flexible two-qubit fluxonium gates with a transmon coupler; arXiv:2304.06087 (2023)

Requirements

Requires a variety of packages, but for ease of use one should create the conda environment defined in qcrl-server-tf240.yml. See the installation section for more details. The included qcrl-server environment uses tensorflow v2.4.0 and tf-agents v0.6.0, which has been tested to work with CUDA v11.0 and cudnn v8.0.5 for GPU acceleration. Without CUDA set up, this package will still work using the CPU, but this may limit performance depending on the application.

Installation

To install this package, first clone this repository. This package should be used with the conda environment defined in qcrl-server-tf240.yml. To create this environment from the file, open an anaconda cmd prompt, cd into the repo directory, and run:

conda env create -f qcrl-server-tf240.yml

To install this package into this conda environment qcrl-server, first activate the environment using

conda activate qcrl-server

then cd into the repo directory and run:

pip install -e .

CUDA Compatibility

The qcrl-server conda environment has been tested to work with CUDA v11.0 and cudnn v8.0.5.

Running the examples

Open two consoles, activate qcrl-server in both, and cd into the directory of the example you want to run in both (pi_pulse or pi_pulse_oct_style). In one console run *_training_server.py, and in the other run *_client.py.

quantum_control_rl_server's People

Contributors

v-sivak avatar liuhenry avatar bbrock89 avatar alec-eickbusch avatar dependabot[bot] avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.