Quantum computing for robot algorithms#
Robot problems as binary optimisation, the classical baselines a quantum result must be reported against, and a thin adapter to Qiskit’s QAOA. The equations are on the mathematics page.
Legend: blue inputs, violet internal steps, green outputs, coral people, dashed grey classical baselines. Each entry is labelled by origin: Unique to Quantum Mind designed in this library; it builds on the methods cited with it, Published model, extended implements the cited model as published; Quantum Mind adds the capabilities listed, Published method implements the cited method as published, Software tool infrastructure rather than a model; and by category: Quantum-like quantum probability used to model people; runs on an ordinary computer, Quantum computing quantum circuits; run on the simulator or sent to quantum hardware, Classical classical statistics, decision theory or baselines, Mixed combines parts from more than one of these categories.
Robot problems as QUBOs#
Published model, extended Mixed
Multi-robot allocation, grasp selection and slot scheduling with their QUBO encodings, true objectives, feasibility checks and decoders.
flowchart LR
accTitle: Block diagram of Robot problems as QUBOs
accDescr: Multi-robot allocation, grasp selection and slot scheduling with their QUBO encodings, true objectives, feasibility checks and decoders.
pr["robot problem<br/>costs · grasps · conflicts"]:::in --> q["QUBO encoding<br/>penalty terms"]:::op
pr --> obj["true objective<br/>feasibility · decode"]:::out
q --> sol["any solver"]:::op --> x["bit string"]:::out --> obj
classDef in fill:#0b2a4a,stroke:#79c0ff,color:#e6edf3
classDef op fill:#2a1b3d,stroke:#d2a8ff,color:#e6edf3
classDef out fill:#0f2e1a,stroke:#7ee787,color:#e6edf3
classDef hum fill:#3d1414,stroke:#ff7b72,color:#e6edf3
classDef base fill:#262626,stroke:#8b949e,color:#e6edf3,stroke-dasharray:4 3
API:
multi_robot_allocation(),grasp_selection(),slot_scheduling(),RobotProblemTutorial: Quantum computing for robot algorithms
Origin: Published model, extended: implements the cited model as published; Quantum Mind adds the capabilities listed.
Category: Mixed: combines parts from more than one of these categories.
Quantum Mind adds: robot objectives, feasibility checks and decoders on top of the published penalty encodings.
Reference: Lucas, A. (2014). Ising formulations of many NP problems. Frontiers in Physics, 2, 5.
Classical baselines for QUBOs#
Published method Classical
Exhaustive search, greedy descent with restarts, simulated annealing and random sampling with the same number of shots: what a quantum result has to beat.
flowchart LR
accTitle: Block diagram of Classical baselines for QUBOs
accDescr: Exhaustive search, greedy descent with restarts, simulated annealing and random sampling with the same number of shots: what a quantum result has to beat.
q["QUBO"]:::in --> ex["exhaustive<br/>(optimum)"]:::base & gd["greedy descent"]:::base & sa["simulated annealing"]:::base & rs["random sampling<br/>(null baseline)"]:::base
classDef in fill:#0b2a4a,stroke:#79c0ff,color:#e6edf3
classDef op fill:#2a1b3d,stroke:#d2a8ff,color:#e6edf3
classDef out fill:#0f2e1a,stroke:#7ee787,color:#e6edf3
classDef hum fill:#3d1414,stroke:#ff7b72,color:#e6edf3
classDef base fill:#262626,stroke:#8b949e,color:#e6edf3,stroke-dasharray:4 3
API:
exhaustive(),greedy_descent(),simulated_annealing(),random_sampling()Tutorial: Quantum computing for robot algorithms
Origin: Published method: implements the cited method as published.
Category: Classical: classical statistics, decision theory or baselines.
Reference: Kirkpatrick, S., Gelatt, C. D., & Vecchi, M. P. (1983). Optimization by simulated annealing. Science, 220, 671-680.
QAOA adapter (Qiskit)#
Software tool Quantum computing
QAOA through Qiskit’s QAOAAnsatz on an exact simulator: the problem’s Ising Hamiltonian goes in, the best sampled solution, the expected energy and the probability of the optimum come out.
flowchart LR
accTitle: Block diagram of QAOA adapter (Qiskit)
accDescr: QAOA through Qiskit's QAOAAnsatz on an exact simulator: the problem's Ising Hamiltonian goes in, the best sampled solution, the expected energy and the probability of the optimum come out.
q["QUBO"]:::in --> ising["Ising Hamiltonian"]:::op --> an["Qiskit QAOAAnsatz<br/>depth p"]:::op --> opt["classical optimiser<br/>COBYLA, restarts"]:::op
opt --> sv["exact statevector"]:::op --> out["best sample · P(optimal) · ratio"]:::out
out -.-> rs["random sampling, same shots"]:::base
classDef in fill:#0b2a4a,stroke:#79c0ff,color:#e6edf3
classDef op fill:#2a1b3d,stroke:#d2a8ff,color:#e6edf3
classDef out fill:#0f2e1a,stroke:#7ee787,color:#e6edf3
classDef hum fill:#3d1414,stroke:#ff7b72,color:#e6edf3
classDef base fill:#262626,stroke:#8b949e,color:#e6edf3,stroke-dasharray:4 3
API:
qaoa()Compared with: random sampling with the same shots; greedy descent; simulated annealing
Tutorial: Quantum computing for robot algorithms
Origin: Software tool: infrastructure rather than a model.
Category: Quantum computing: quantum circuits; run on the simulator or sent to quantum hardware.
Reference: Farhi, E., Goldstone, J., & Gutmann, S. (2014). A quantum approximate optimization algorithm. arXiv:1411.4028.
Solver comparison#
Software tool Mixed
Run several solvers on one robot problem and report them in the robot’s terms: feasibility, true objective and gap to the exact optimum.
flowchart LR
accTitle: Block diagram of Solver comparison
accDescr: Run several solvers on one robot problem and report them in the robot's terms: feasibility, true objective and gap to the exact optimum.
p["robot problem"]:::in --> s["solvers"]:::op --> r["feasible? · objective · gap"]:::out
classDef in fill:#0b2a4a,stroke:#79c0ff,color:#e6edf3
classDef op fill:#2a1b3d,stroke:#d2a8ff,color:#e6edf3
classDef out fill:#0f2e1a,stroke:#7ee787,color:#e6edf3
classDef hum fill:#3d1414,stroke:#ff7b72,color:#e6edf3
classDef base fill:#262626,stroke:#8b949e,color:#e6edf3,stroke-dasharray:4 3
API:
compare_solvers()Tutorial: Quantum computing for robot algorithms
Origin: Software tool: infrastructure rather than a model.
Category: Mixed: combines parts from more than one of these categories.