Team: Anthony Le, Shangun Bothra
This repository contains the progression of poker bots developed for MIT's Poker Bot competition (2026), competing in a variant called Toss or Hold'em. The strongest iteration is week3_bot, which implements advanced opponent modeling and position-aware decision making.
Toss or Hold'em is a simplified poker format where:
- Players start with 3 cards (preflop)
- Each player discards 1 card (toss phase)
- Two community cards are revealed
- Players play the final 5-card hand
- Monte Carlo simulation to evaluate win rates for each discard option
- Position exploitation: In-position players leverage opponent discard information to refine future decisions
- Entropy modeling: Dynamically adjusts discard strategy based on board uncertainty and opponent tendencies
- Adaptive budget allocation: Simulation count scales with decision importance and time pressure
Preflop (3-card):
- Premium hands (pairs 9+, Ace-Broadway): Aggressive 3-betting
- Strong holdings (pairs 7-8, high broadway): Position-dependent raising
- Medium hands: Defensive calling
- Weak hands: Fold to aggression or check/call
Postflop (2-card):
- Strong hands (≥0.75): Value betting with EV-optimized sizing
- Medium hands (0.40-0.75): Semi-bluffing in position, pot-odds adjusted calls
- Weak hands: Positional bluffing with controlled frequency
- Bet sizing: Non-deterministic ±15% variance to obscure hand strength
- Tracks opponent discard patterns (high cards, entropy-adding cards)
- Laplace-smoothed statistics prevent early-game bias
- Adjusts aggression based on inferred opponent tendencies
week3_bot demonstrates consistent performance against week2_bot:
- Mean winnings: ~37,374 chips per game
- Cumulative growth over 100 games shows sustained profitability
- Superior to earlier iterations through exploit and adaptive strategies
