{
  "sources": [
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/shape-packing-challenge/78a78626f098cd236f3a09bb2cb242f72951599d/README.md",
      "quote": "Pack **15 unit semicircles** (radius = 1) into the smallest possible enclosing circle."
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/shape-packing-challenge/78a78626f098cd236f3a09bb2cb242f72951599d/README.md",
      "quote": "**Precision:** Coordinates are rounded to 6 decimal places before validation and scoring."
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/shape-packing-challenge/78a78626f098cd236f3a09bb2cb242f72951599d/src/semicircle_packing/config.py",
      "quote": "POLYGON_ARC_POINTS = 4096"
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/shape-packing-challenge/78a78626f098cd236f3a09bb2cb242f72951599d/src/semicircle_packing/config.py",
      "quote": "OVERLAP_TOL = 1e-6"
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/shape-packing-challenge/78a78626f098cd236f3a09bb2cb242f72951599d/src/semicircle_packing/config.py",
      "quote": "CONTAINMENT_TOL = 1e-9"
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/shape-packing-challenge/78a78626f098cd236f3a09bb2cb242f72951599d/src/semicircle_packing/geometry.py",
      "quote": "return pa.intersection(pb).area > OVERLAP_TOL"
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/shape-packing-challenge/78a78626f098cd236f3a09bb2cb242f72951599d/src/semicircle_packing/scoring.py",
      "quote": "if dist > cr + 1e-12:"
    },
    {
      "url": "https://www.paradigm.xyz/puzzles/api/v1/packing/leaderboard",
      "quote": "\"score\":2.948526966725367"
    },
    {
      "url": "https://www.paradigm.xyz/puzzles/packing/submissions/2e11614c-b011-4d61-9283-a2d810cb628b",
      "quote": "Solution coordinates are hidden. Only the author can view their packing."
    },
    {
      "url": "https://raw.githubusercontent.com/compusophy/pack-semicircles/1927e7f027cd696de1b329eea6438f39f7fd233c/README.md",
      "quote": "Use Simulated Annealing and Basin Hopping (Iterated Local Search) to escape local minima and find novel dense structures."
    },
    {
      "url": "https://buttondown.com/TillUntil/archive/the-gap-between-close-and-right/",
      "quote": "Run millions of iterations across six parallel workers, each starting from a different geometric seed (shells of 3-5-7, or 2-5-8, or 1-5-9 semicircles, and so on)."
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/shape-packing-challenge/78a78626f098cd236f3a09bb2cb242f72951599d/src/semicircle_packing/scoring.py",
      "quote": "def _in_circle(c, p, eps=1e-10):\n    return math.hypot(p[0] - c[0], p[1] - c[1]) <= c[2] + eps"
    }
  ]
}