Scoring Architecture & Logic

Understanding the core engine and scoring algorithms

Engine & Performance

The Sudoku World Tournament system is engineered to generate human-solvable sudoku boards. All boards are generated locally on the user's iPhone, optimized to fully leverage the microprocessor's multi-threading and multi-tasking capabilities. This ensures high performance without requiring a constant server connection.

Dynamic Scoring Logic

The scoring system is dynamic and rewards players for making correct cell placements based on specific logical techniques.

Why does the Scoring System have more techniques?
Validating a placement against a set of techniques is significantly less resource-intensive than the initial generation and solving process. Therefore, the validation engine supports a wider range of techniques (24) compared to the generator (13).

Rationalization Protocol:
It is possible for a player to use a technique different from the one they are credited for. This occurs because the algorithm searches for valid justifications in a strict sequence, from the easiest to the most complex. If the algorithm can rationalize a placement using a simple technique, the player is credited with that score, adhering to the principle of simplicity.

Note: If the algorithm cannot find a unique logical justification for a correct placement (meaning no supported technique dictates the move), it is credited as a "Guess" with a correspondingly modest point value.

HumanTechnique

Used by AdvancedHumanSolver
13 Active

These techniques are used to generate and guarantee the solvability of the boards.

  • nakedSingle
  • hiddenSingle
  • lockedCandidates
  • nakedPair
  • hiddenPair
  • nakedTriple
  • hiddenTriple
  • xyWing
  • xWing
  • swordfish
  • simpleColoring
  • wWing
  • twoStringKite

Technique (Scoring)

Superset used by Validation
24 Supported

Used to validate player moves and award points. Includes all Solver techniques plus advanced patterns.

  • nakedSingle, hiddenSingle
  • lockedCandidate
  • nakedPair, hiddenPair
  • nakedTriple, hiddenTriple
  • nakedQuad, hiddenQuad
  • xWing, finnedXWing
  • swordfish, finnedSwordfish
  • jellyfish
  • xyWing, xyzWing
  • wWing, remotePairs
  • skyscraper, twoStringKite
  • turbotFish
  • bugPlusOne, uniqueRectangle
  • aic, dlx

🚀 Future-Proofing & Advanced Scoring

The scoring engine includes 11 additional techniques not currently required for board generation but valid for scoring points. This allows for future difficulty expansions.

Advanced Quads
nakedQuad hiddenQuad
Complex Fish Variants
finnedXWing finnedSwordfish jellyfish
Advanced Chains & Logic Patterns
xyzWing remotePairs skyscraper turbotFish bugPlusOne uniqueRectangle
General Logic & Fallback
aic (Alternating Inference Chains) dlx (Dancing Links - Brute Force)