Robot decision layer#

Components that turn models of people and uncertain perception into decisions: ask or act, calibrate, route, plan questions, personalise and hand over. 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.

Human-model ensemble#

Unique to Quantum Mind Mixed

Competing models of how people answer, weighted by evidence; reports the predicted answers and how much the models disagree.

        flowchart LR
    accTitle: Block diagram of Human-model ensemble
    accDescr: Competing models of how people answer, weighted by evidence; reports the predicted answers and how much the models disagree.
    D[("answers so far")]:::hum --> F["fit each model<br/>QL · Bayes · anchoring"]:::op --> W["BIC weights"]:::op
    W --> P["weighted prediction"]:::out
    W --> U["disagreement (bits)"]:::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: HumanModelEnsemble

  • Compared with: single-model prediction

  • Tutorial: When should a robot ask for help?

  • Origin: Unique to Quantum Mind: designed in this library; it builds on the methods cited with it.

  • Category: Mixed: combines parts from more than one of these categories.

  • Reference: Wagenmakers, E.-J., & Farrell, S. (2004). Psychonomic Bulletin & Review, 11, 192-196.

Ask or act#

Unique to Quantum Mind Classical

Ask when the expected cost of acting (error cost × (1 − p), by hazard) exceeds the cost of asking, or when the human models disagree.

        flowchart LR
    accTitle: Block diagram of Ask or act
    accDescr: Ask when the expected cost of acting (error cost × (1 − p), by hazard) exceeds the cost of asking, or when the human models disagree.
    p["confidence p<br/>(or lower bound)"]:::in --> E["error cost × (1 − p)"]:::op
    hz["hazard level"]:::in --> E
    d["model disagreement"]:::in --> G{"disagree?"}:::op
    E --> C{"vs ask cost"}:::op
    G -->|yes| ask["ask"]:::out
    C -->|higher| ask
    C -->|lower| act["act"]:::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: ask_or_act(), risk_aware_ask_or_act()

  • Tutorial: When should a robot ask for help?

  • Origin: Unique to Quantum Mind: designed in this library; it builds on the methods cited with it.

  • Category: Classical: classical statistics, decision theory or baselines.

  • Reference: Howard, R. A. (1966). IEEE Transactions on Systems Science and Cybernetics, 2(1), 22-26.

Human-model service#

Software tool Classical

Middleware-independent service around the ensemble, used by the ROS 2 node.

        flowchart LR
    accTitle: Block diagram of Human-model service
    accDescr: Middleware-independent service around the ensemble, used by the ROS 2 node.
    ros["ROS 2 node / any caller"]:::in --> S["HumanModelService"]:::op --> E["ensemble update · predict"]:::op --> R["prediction + decision"]:::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: HumanModelService

  • Origin: Software tool: infrastructure rather than a model.

  • Category: Classical: classical statistics, decision theory or baselines.

Intent resolution#

Unique to Quantum Mind Quantum-like

Which object does the person mean? Cues as bases in a shared space; incompatible cues give order-dependent posteriors.

        flowchart LR
    accTitle: Block diagram of Intent resolution
    accDescr: Which object does the person mean? Cues as bases in a shared space; incompatible cues give order-dependent posteriors.
    c1["cue 1 (speech)"]:::in --> R1["rotate to cue basis<br/>angle θ₁"]:::op
    c2["cue 2 (gaze)"]:::in --> R2["angle θ₂"]:::op
    R1 & R2 --> PO["posterior over intents"]:::out
    BY["Bayesian product of likelihoods"]:::base -.-> PO
    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: QuantumIntentResolver, BayesIntentResolver

  • Compared with: BayesIntentResolver

  • Tutorial: Fusing vision, speech and gaze

  • Origin: Unique to Quantum Mind: designed in this library; it builds on the methods cited with it.

  • Category: Quantum-like: quantum probability used to model people; runs on an ordinary computer.

  • Reference: Busemeyer & Bruza (2024), ch. 4.

Recalibration#

Published method Classical

Map raw scores to calibrated probabilities, fitted on held-out data.

        flowchart LR
    accTitle: Block diagram of Recalibration
    accDescr: Map raw scores to calibrated probabilities, fitted on held-out data.
    s["raw scores / logits"]:::in --> m{"method"}:::op
    m --> pl["Platt: sigmoid(a·s + b)"]:::op
    m --> ts["temperature: softmax(z / T)"]:::op
    m --> iso["isotonic: monotone fit (PAV)"]:::op
    pl & ts & iso --> p["calibrated probability"]:::out
    p --> ece["ECE · Brier · reliability diagram"]:::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
    

Conformal prediction sets#

Published model, extended Classical

Sets of labels that contain the truth with probability ≥ 1 − α for exchangeable data; the adaptive version keeps its long-run coverage for one person’s answers while that person changes.

        flowchart LR
    accTitle: Block diagram of Conformal prediction sets
    accDescr: Sets of labels that contain the truth with probability ≥ 1 − α for exchangeable data; the adaptive version keeps its long-run coverage for one person's answers while that person changes.
    cal[("calibration data")]:::in --> sc["non-conformity scores"]:::op --> q["(1 − α) quantile"]:::op
    new["new scores"]:::in --> S["labels with score ≤ q"]:::op
    q --> S --> set["prediction set<br/>size > 1 → ask"]:::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: SplitConformalClassifier, AdaptiveConformalSets

  • Compared with: top-1 prediction

  • Tutorial: Calibrated confidence and conformal sets

  • Origin: Published model, extended: implements the cited model as published; Quantum Mind adds the capabilities listed.

  • Category: Classical: classical statistics, decision theory or baselines.

  • Quantum Mind adds: adaptive conformal sets for a person’s next answer, which keep their long-run coverage while the person changes, and tell the robot when to ask.

  • Reference: Angelopoulos, A. N., & Bates, S. (2023). Foundations and Trends in Machine Learning, 16(4), 494-591; Gibbs, I., & Candès, E. (2021). Adaptive conformal inference under distribution shift. NeurIPS 34.

Calibration monitor#

Published method Classical

Running accuracy per confidence bin with an exact lower bound.

        flowchart LR
    accTitle: Block diagram of Calibration monitor
    accDescr: Running accuracy per confidence bin with an exact lower bound.
    o["(confidence, correct) stream"]:::in --> b["bin counts"]:::op --> cp["Clopper-Pearson bound"]:::op --> lb["p_lower for ask-or-act"]:::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
    

Confidence gate#

Published method Classical

Pick the module with the best calibrated confidence minus λ × cost, within a budget.

        flowchart LR
    accTitle: Block diagram of Confidence gate
    accDescr: Pick the module with the best calibrated confidence minus λ × cost, within a budget.
    m1["module 1 conf, cost"]:::in & m2["module 2 conf, cost"]:::in & m3["module 3 conf, cost"]:::in --> cal["calibrate"]:::op --> sc["conf − λ·cost"]:::op
    bud["budget window"]:::in --> sc
    sc --> pick["selected module"]:::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: ConfidenceGate

  • Compared with: highest raw confidence

  • Tutorial: Choosing between perception modules

  • Origin: Published method: implements the cited method as published.

  • Category: Classical: classical statistics, decision theory or baselines.

Meta-calibrated gate#

Unique to Quantum Mind Classical

Learn each module’s typical confidence bias from earlier tasks and use it as a prior on a new task.

        flowchart LR
    accTitle: Block diagram of Meta-calibrated gate
    accDescr: Learn each module's typical confidence bias from earlier tasks and use it as a prior on a new task.
    logs[("logs of earlier tasks")]:::in --> eb["empirical Bayes:<br/>mean bias, prior strength"]:::op
    eb --> g["gate on new task"]:::op
    fb["successes on new task"]:::in --> up["posterior bias update"]:::op --> g
    g --> sel["module choice"]:::out
    sc["learn from scratch"]:::base -.-> sel
    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: MetaCalibratedGate, meta_fit_offsets()

  • Compared with: gate without a prior

  • Tutorial: Choosing between perception modules

  • Origin: Unique to Quantum Mind: designed in this library; it builds on the methods cited with it.

  • Category: Classical: classical statistics, decision theory or baselines.

  • Reference: Efron, B., & Morris, C. (1975). JASA, 70, 311-319.

Question planner#

Unique to Quantum Mind Quantum-like

Choose the question with the highest value of information, or act when no question is worth asking.

        flowchart LR
    accTitle: Block diagram of Question planner
    accDescr: Choose the question with the highest value of information, or act when no question is worth asking.
    pr["posterior over hypotheses"]:::in --> v["value of information<br/>per question"]:::op --> d{"best VOI > 0?"}:::op
    am["answer model<br/>projective or independent"]:::in --> v
    d -->|yes| ask["ask it"]:::hum --> up["update posterior"]:::op --> pr
    d -->|no| act["act on the MAP hypothesis"]:::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: QuestionPlanner

  • Compared with: IndependentAnswerModel (order-free)

  • Tutorial: Planning which question to ask

  • Origin: Unique to Quantum Mind: designed in this library; it builds on the methods cited with it.

  • Category: Quantum-like: quantum probability used to model people; runs on an ordinary computer.

  • Reference: Howard (1966); Wang & Busemeyer (2013); related: Rosenthal, S., Dey, A. K., & Veloso, M. (2009). How robots’ questions affect the accuracy of the human responses. IEEE RO-MAN.

Answer models#

Unique to Quantum Mind Quantum-like

How a person with a given intent answers a sequence of questions.

        flowchart LR
    accTitle: Block diagram of Answer models
    accDescr: How a person with a given intent answers a sequence of questions.
    h["intent state"]:::hum --> pq["projectors per question"]:::op --> L["sequence likelihood<br/>(order-dependent)"]:::out
    h --> ind["independent per-question P(yes)"]:::base --> L2["order-free likelihood"]:::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
    

Personalised human models#

Published model, extended Classical

Partial pooling: each person’s parameters are shrunk towards the population, most when data are few.

        flowchart LR
    accTitle: Block diagram of Personalised human models
    accDescr: Partial pooling: each person's parameters are shrunk towards the population, most when data are few.
    pop[("many people")]:::hum --> pp["population prior<br/>mean, covariance"]:::op
    me[("this person's answers")]:::hum --> map["MAP fit<br/>or online posterior"]:::op
    pp --> map --> pers["personal model<br/>with credible intervals"]:::out
    ind["individual fit"]:::base -.-> pers
    one["one model for all"]:::base -.-> pers
    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: PopulationPrior, PersonalisedHumanModel, fit_map()

  • Compared with: population model, individual fits

  • Origin: Published model, extended: implements the cited model as published; Quantum Mind adds the capabilities listed.

  • Category: Classical: classical statistics, decision theory or baselines.

  • Quantum Mind adds: a full per-person posterior updated after every answer, with credible intervals (method=’online’).

  • Reference: Gelman, A., & Hill, J. (2007). Data Analysis Using Regression and Multilevel/Hierarchical Models.

Trust-aware hand-over#

Unique to Quantum Mind Quantum-like

Before each hand-over, choose hand over, slow hand-over, ask or wait by expected cost under the trust model.

        flowchart LR
    accTitle: Block diagram of Trust-aware hand-over
    accDescr: Before each hand-over, choose hand over, slow hand-over, ask or wait by expected cost under the trust model.
    b["trust belief"]:::hum --> c["expected cost of<br/>hand over · slow · ask · wait"]:::op --> a["chosen action"]:::out
    a --> o["outcome / answer"]:::in --> u["update belief"]:::op --> b
    mk["Markov-based policy · always hand over"]:::base -.-> a
    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: TrustAwareHandover

  • Compared with: Markov-based policy, always hand over

  • Tutorial: Trust on a qubit

  • Origin: Unique to Quantum Mind: designed in this library; it builds on the methods cited with it.

  • Category: Quantum-like: quantum probability used to model people; runs on an ordinary computer.

  • Reference: Hancock, P. A., et al. (2011). Human Factors, 53(5), 517-527.