Skip to main content

Module quantum_classical

Module quantum_classical 

Source
Expand description

Quantum-Classical Hybrid Optimization

This module provides classical simulation of quantum optimization algorithms:

  • QAOA (Quantum Approximate Optimization Algorithm) for combinatorial problems
  • VQE (Variational Quantum Eigensolver) for ground-state energy estimation
  • Tensor network methods (MPS/DMRG) for quantum many-body systems

§Overview

The module implements exact statevector simulation of quantum circuits, enabling benchmarking of quantum optimization protocols on small problem instances (up to ~20 qubits on classical hardware).

§Example: MaxCut with QAOA

use scirs2_optimize::quantum_classical::qaoa::{MaxCutProblem, QaoaConfig, QaoaCircuit};

// Triangle graph: edges (0,1), (1,2), (0,2)
let problem = MaxCutProblem::new(3, vec![(0, 1, 1.0), (1, 2, 1.0), (0, 2, 1.0)]);
let config = QaoaConfig::default();
let circuit = QaoaCircuit::new(problem, config);
let result = circuit.optimize().expect("QAOA should converge");
println!("Expected cut value: {:.4}", result.optimal_value);

Re-exports§

pub use qaoa::MaxCutProblem;
pub use qaoa::QaoaCircuit;
pub use qaoa::QaoaConfig;
pub use qaoa::QaoaResult;
pub use statevector::Statevector;
pub use tensor_network::ising_1d_mpo;
pub use tensor_network::MPS;
pub use vqe::HardwareEfficientAnsatz;
pub use vqe::PauliHamiltonian;
pub use vqe::PauliOp;
pub use vqe::VqeOptimizer;
pub use vqe::VqeResult;

Modules§

qaoa
QAOA (Quantum Approximate Optimization Algorithm) for combinatorial optimization
statevector
N-qubit statevector simulator
tensor_network
Tensor network methods: MPS, MPO and DMRG-lite
vqe
VQE (Variational Quantum Eigensolver) for ground-state energy estimation

Structs§

QcConfig
Configuration for quantum-classical optimizers
QcOptResult
Result of a quantum-classical optimization run

Traits§

QuantumClassicalOptimizer
Trait for quantum-classical hybrid optimizers

Type Aliases§

QcResult
Result type for quantum-classical optimization operations