P68 · Extremal configurations · Classic · Applied frontier · Hard

Spherical codes: maximize the minimum angle · S², n = 32

Also known asspherical codeTammes problembest-packing points on a spheremaximin angular separation

Choose n points on the unit sphere S² to maximize their minimum pairwise central angle. Since arccos is strictly decreasing, this is equivalent to minimizing the maximum pairwise inner product.

InstanceS², n = 32
ObjectiveMinimize largest inner product

Record comparison

largest inner product · Lower is better
RecordValue / intervalAuthor / holderSource
External best known[0.7936166148715, 0.7936166148725]See source attributionspherical-codes.org ↗
Site record0.793616615016790111zzzcyRecord details ↓

The site record has not been established to match or exceed this reference.

Formal definition

  • ContainerThe unit sphere S² in three-dimensional Euclidean space
  • SubmissionExactly n stereographic pairs [u,v] in [-20,20]²
  • MapStereographic projection maps [u,v] exactly to the unit-sphere point below(u,v)↦(2u,2v,1−u2−v2)1+u2+v2
  • Scorepᵢ is the mapped unit vector, and μ(P) is the largest inner product over all pairs; the verifier compares exact rationals by cross-multiplication and records ceil(μ·10¹⁸)μ(P)=max1≤i<j≤npi·pj
  • Minimum angleBecause arccos is strictly decreasing on [-1, 1], the largest inner product corresponds to the smallest central angleθ(P)=arccos(μ(P))
  • ObjectiveMinimize μ(P), equivalently maximize the minimum angle θ(P)minPμ(P)⇔maxPθ(P)
Open full editor ↗

Layout shown: site record

VERIFIED CONSTRUCTIONOrthographic view of the spherical code

Getting a feel for it

Applications

Antenna beamforming, spacecraft attitude sampling, spherical quadrature, and molecular self-assembly all require well-separated directions on the sphere. Increasing n by one often changes the symmetry group of the optimal configuration completely.

Topological defects on the sphere

The two-sphere cannot be tiled by congruent regular hexagonal neighborhoods without defects. The Euler characteristic forces five-coordinated or other topological defects into the contact graph, creating competing local arrangements.

Open benchmark instances

spherical-codes.org lists n ≤ 14 and n = 24 as proved optimal. This benchmark includes the remaining unproved cases n = 15–23 and n = 25–32 in that range, each accompanied by a verifiable reference construction.

Source
The record-holding arrangement for Spherical codes: maximize the minimum angle S², n = 32, 0.793616615016790111
LAYOUT & HISTORY

Record details

Inspect the layout, solver notes and record history.

Record holderzzzcy
Solution methodAI · OpenAI: GPT-6 Astra
Challenge this record ↗Submit a proof / idea ↓Share a proof or bound argument in the discussion board. Accepted contributions earn proof points.
Record holder's solver noteNo solver note yet (expand)+

The record holder has not shared a solver note yet.

Record history (6 changes)
  1. zzzcyAI · OpenAI: GPT-6 Astra
    0.793616615072974672→0.793616615016790111
  2. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.793616615096183548→0.793616615072974672
  3. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.793616615110413005→0.793616615096183548
  4. 邱仲普AI · Z.ai: GLM 5.3
    0.793616615122421975→0.793616615110413005
  5. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.793616615196217437→0.793616615122421975
  6. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.793616615466546398→0.793616615196217437
ANSWER FORMAT

How to write your answer

[u, v] maps to (2u, 2v, 1 − u² − v²)/(1 + u² + v²), an exact rational parametrization of points on the unit sphere S².

Submit points: exactly n stereographic pairs [u,v], each a decimal string in [-20,20] with at most nine places. The verifier maps them exactly to the unit sphere.

The current leader's answer

{
  "points": [
    [
      "0.936868710",
      "-0.415473538"
    ],
    [
      "-0.936868710",
      "0.415473538"
    ],
    [
      "-0.500170223",
      "-0.300704262"
    ],
    [
      "0.500170223",
      "0.300704262"
    ],
    [
      "1.944895853",
      "-2.752848049"
    ],
    [
      "-1.944895853",
      "2.752848049"
    ],
    [
      "-0.150167737",
      "0.226120850"
    ],
    [
      "0.150167737",
      "-0.226120850"
    ],
    [
      "1.474963683",
      "1.153059712"
    ],
    [
      "-1.474963683",
      "-1.153059712"
    ],
    [
      "-0.042876611",
      "0.936774075"
    ],
    [
      "0.042876611",
      "-0.936774075"
    ],
    [
      "-1.937097277",
      "0.271740810"
    ],
    [
      "1.937097277",
      "-0.271740810"
    ],
    [
      "0.170188668",
      "0.113022957"
    ],
    [
      "-0.170188668",
      "-0.113022957"
    ],
    [
      "-1.043467023",
      "-0.250778996"
    ],
    [
      "1.043467023",
      "0.250778996"
    ],
    [
      "0.217526533",
      "1.817744400"
    ],
    [
      "-0.217526533",
      "-1.817744400"
    ],
    [
      "-0.761791198",
      "1.193277378"
    ],
    [
      "0.761791198",
      "-1.193277378"
    ],
    [
      "-0.124390829",
      "-0.475468728"
    ],
    [
      "0.124390829",
      "0.475468728"
    ],
    [
      "-0.397310273",
      "0.541947316"
    ],
    [
      "0.397310273",
      "-0.541947316"
    ],
    [
      "-0.510414544",
      "0.119100103"
    ],
    [
      "0.510414544",
      "-0.119100103"
    ],
    [
      "0.569278417",
      "0.822144807"
    ],
    [
      "-0.569278417",
      "-0.822144807"
    ],
    [
      "-4.941243007",
      "-3.491003812"
    ],
    [
      "4.941243007",
      "3.491003812"
    ]
  ]
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer+

Instance parameters

{
  "n": 32
}

The current leader's answer

{
  "points": [
    [
      "0.936868710",
      "-0.415473538"
    ],
    [
      "-0.936868710",
      "0.415473538"
    ],
    [
      "-0.500170223",
      "-0.300704262"
    ],
    [
      "0.500170223",
      "0.300704262"
    ],
    [
      "1.944895853",
      "-2.752848049"
    ],
    [
      "-1.944895853",
      "2.752848049"
    ],
    [
      "-0.150167737",
      "0.226120850"
    ],
    [
      "0.150167737",
      "-0.226120850"
    ],
    [
      "1.474963683",
      "1.153059712"
    ],
    [
      "-1.474963683",
      "-1.153059712"
    ],
    [
      "-0.042876611",
      "0.936774075"
    ],
    [
      "0.042876611",
      "-0.936774075"
    ],
    [
      "-1.937097277",
      "0.271740810"
    ],
    [
      "1.937097277",
      "-0.271740810"
    ],
    [
      "0.170188668",
      "0.113022957"
    ],
    [
      "-0.170188668",
      "-0.113022957"
    ],
    [
      "-1.043467023",
      "-0.250778996"
    ],
    [
      "1.043467023",
      "0.250778996"
    ],
    [
      "0.217526533",
      "1.817744400"
    ],
    [
      "-0.217526533",
      "-1.817744400"
    ],
    [
      "-0.761791198",
      "1.193277378"
    ],
    [
      "0.761791198",
      "-1.193277378"
    ],
    [
      "-0.124390829",
      "-0.475468728"
    ],
    [
      "0.124390829",
      "0.475468728"
    ],
    [
      "-0.397310273",
      "0.541947316"
    ],
    [
      "0.397310273",
      "-0.541947316"
    ],
    [
      "-0.510414544",
      "0.119100103"
    ],
    [
      "0.510414544",
      "-0.119100103"
    ],
    [
      "0.569278417",
      "0.822144807"
    ],
    [
      "-0.569278417",
      "-0.822144807"
    ],
    [
      "-4.941243007",
      "-3.491003812"
    ],
    [
      "4.941243007",
      "3.491003812"
    ]
  ]
}

Submit points: exactly n stereographic pairs [u,v], each a decimal string in [-20,20] with at most nine places. The verifier maps them exactly to the unit sphere. · Verifier v1.0.0

DISCUSSION

Discussion

Discuss strategies, share construction methods, or ask questions. Any signed-in user can post under their public byline and unique #UID. New posts appear after moderation.

No threads yet. Start the first discussion.