Skip to main content

Genetic Algorithm for VQC ansatz search.

Project description

GA for VQC Ansatz Search

This is a module to support Variational Quantum Circuits by optimizing the ansatz. The ansatz optimization is performed using a Genetic Algorithm, which can be parallelized with GPUs.

For a detailed example of using this package see the https://github.com/tcoulvert/QAE_4_HEP repository.

Installation

Run the following to install:

$ pip install ga-vqc

Contributors

This module was developed through the Caltech SURF program. Special thanks to my mentor at Caltech.

  • Jean-Roch (California Institute of Technology, Pasadena, CA 91125, USA)

Usage

import ga_vqc as gav

## Config (hyperparameters) for GA, see full list in example ##

vqc_main = <'Function that handles running your VQC optimization'>

# Example of allowed optimization gates, see Genepool.py for documentation
gates_dict = {"I": (1, 0), "RX": (1, 1), "CNOT": (2, 0)}
gates_probs = [0.35, 0.35, 0.3]
genepool = gav.Genepool(gates_dict, gates_probs)

vqc_config = {
    'num_qubits': 3,
    'etc': <'whatever config params your VQC model requires'>
}

ga_output_path = FILEPATH_FOR_GA_OUTPUT

config = gav.Config(vqc_main, vqc_config, genepool, ga_output_path)

# Create the GA with the given hyperparameters
ga = gav.setup(config)

# Evolve the GA and search for the best ansatz
ga.evolve()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ga_vqc-1.0.8.tar.gz (17.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ga_vqc-1.0.8-py3-none-any.whl (18.9 kB view details)

Uploaded Python 3

File details

Details for the file ga_vqc-1.0.8.tar.gz.

File metadata

  • Download URL: ga_vqc-1.0.8.tar.gz
  • Upload date:
  • Size: 17.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.6

File hashes

Hashes for ga_vqc-1.0.8.tar.gz
Algorithm Hash digest
SHA256 991ccc8c86c08e951c77f92a22294874170aa10db9b9390ea03519951cffe416
MD5 95d8935f3c38b7714e0671935e443a20
BLAKE2b-256 9368501150c195a512e08fce80a435e6917f4b9981d8f44957c0197af3666a81

See more details on using hashes here.

File details

Details for the file ga_vqc-1.0.8-py3-none-any.whl.

File metadata

  • Download URL: ga_vqc-1.0.8-py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.6

File hashes

Hashes for ga_vqc-1.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 3c23fc205ace4f6b1be559103dfe94a78912ebebe369a6b656bd4ec3704b81ff
MD5 f177e013353ccf1274ca9ca4ec557dc1
BLAKE2b-256 bb659c0361ab0e8720895a8479c2b3dea3177b835d9932843bc4b299583e7d77

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page