HomeCognitive ScienceConfirmation Bias: Asymmetric Belief Updating

Confirmation Bias: Asymmetric Belief Updating

Watch two Bayesian agents read the same stream of ambiguous evidence: a rational updater and a confirmation-biased one that overweights belief-confirming evidence and discounts belief-contradicting evidence. Tune evidence strength and bias weights and watch the biased agent polarize even when the world is perfectly ambiguous.

Cognitive Science3DModerate60 FPS
confirmation-bias-belief-updating ↗ Open standalone

Confirmation bias is usually described loosely as "seeking out evidence that agrees with you," but its sharpest form is subtler and more damaging: even when both sides of an argument arrive on schedule, an already-committed mind quietly gives more weight to the piece that agrees with it and less weight to the piece that doesn't. This simulator makes that asymmetry literal. A single stream of ambiguous evidence — controlled by one shared world-ambiguity parameter — is broadcast to two Bayesian agents running the same log-odds update rule. The rational agent weighs every piece of evidence equally, so its belief tracks the true rate the world is generating. The biased agent multiplies belief-confirming evidence by a configurable "confirm weight" and belief-contradicting evidence by a smaller "disconfirm weight," and nothing else. Watch the two belief traces on the scrolling graph: even with a perfectly 50/50 ambiguous world, the biased line reliably runs away to near-certainty in whichever direction it happened to lean first, while the rational line stays anchored near the truth. Tune the weights down to 1× each and the two lines converge — proof that the divergence is coming entirely from how the evidence is weighted, not from what the evidence says.

⚙ Under the hood

Two Bayesian agents read the same ambiguous evidence stream: a rational updater weighs every fact equally, a confirmation-biased one overweights belief-confirming evidence and discounts belief-contradicting evidence. Tune the world's ambiguity and both bias weights and watch the biased agent polarize even under a perfectly 50/50 evidence stream.

Three.jsWebGLcognitive biasBayesian inferencepsychologydecision making

3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)