Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Skip to content
VQE Portfolio Optimization
VQE Portfolio Optimization

User Guide

  • Usage
  • Theory
  • Algorithms
    • Quantum algorithms
      • Binary VQE
      • Filtering VQE (F-VQE)
      • QAOA with X mixing
      • QAOA with XY exchange mixing
      • CVaR training for Binary VQE and QAOA
      • Variational quantum allocator
    • Classical algorithms
      • Exhaustive binary search
      • Top-return selection
      • Minimum-variance binary selection
      • Markowitz support enumeration
      • Equal-weight allocation
      • Convex Markowitz QP (OSQP)
      • Binary MILP (HiGHS)
      • Binary quadratic optimization (SCIP)
      • QP relaxation, rounding, and refinement
      • Multistart swap local search
      • Simulated annealing
      • Parallel tempering / replica exchange
      • Tabu search
      • Memetic genetic algorithm
      • Iterated local search (ILS)
      • GRASP
      • Variable neighborhood search (VNS)
      • Projected gradient descent (PGD)
      • Frank–Wolfe with away steps
      • Random exact-K sampling
  • Architecture and development
  • Results
  • Quantum advantage research
Back to top

Tabu search¶

Track: exact-K binary selection. Method ID: tabu.

Takes the best admissible swap, including uphill moves. The reverse swap is tabu for a fixed tenure; aspiration permits a tabu move that improves the global incumbent. Memory resets at each restart.

Dependencies: NumPy; no extra dependencies.

Key parameters: seed, restarts, max_iterations, tabu_tenure, and an optional candidate_callback.

Guarantees and limits: Preserves K and returns the best feasible incumbent. Stops at the iteration cap or when no move is admissible. Neither stopping condition certifies global optimality.

Example¶

Use the shared inputs.

from vqe_portfolio.baselines import tabu_search_binary_baseline

result = tabu_search_binary_baseline(mu, Sigma, lam=4.0, k=2, seed=0, restarts=2)
Next
Memetic genetic algorithm
Previous
Parallel tempering / replica exchange
Copyright © 2026, Sid Richards
Made with Sphinx and @pradyunsg's Furo
On this page
  • Tabu search
    • Example