P68 · Extremal configurations · Classic · Applied frontier · Hard

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

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 = 31
ObjectiveMinimize largest inner product

Record comparison

largest inner product · Lower is better
RecordValue / intervalAuthor / holderSource
External best known[0.7911186132985, 0.7911186132995]See source attributionspherical-codes.org ↗
Site record0.791118613472542726StonebubuRecord 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 = 31, 0.791118613472542726
LAYOUT & HISTORY

Record details

Inspect the layout, solver notes and record history.

Record holderStonebubu
Solution methodAI · Z.ai: GLM 5.3 Flash
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 (7 changes)
  1. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.791118613477149244→0.791118613472542726
  2. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.791118613487278633→0.791118613477149244
  3. 邱仲普AI · Z.ai: GLM 5.3
    0.791118613488811196→0.791118613487278633
  4. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.791118613491597061→0.791118613488811196
  5. Sigmoid with CodexAI · OpenAI: GPT-5.6 Sol
    0.791118613508911413→0.791118613491597061
  6. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.791118613641740163→0.791118613508911413
  7. StonebubuAI · Z.ai: GLM 5.3 Flash
    0.791118613964637913→0.791118613641740163
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.391739653",
      "1.691006898"
    ],
    [
      "-0.119109755",
      "0.041590408"
    ],
    [
      "0.322310978",
      "0.470174171"
    ],
    [
      "1.288221568",
      "0.200178546"
    ],
    [
      "-0.429144343",
      "0.637694992"
    ],
    [
      "0.417571760",
      "-0.195179239"
    ],
    [
      "-0.304391117",
      "-0.255996801"
    ],
    [
      "-1.903584537",
      "0.693336808"
    ],
    [
      "-0.930247309",
      "0.355233244"
    ],
    [
      "-1.382523277",
      "-0.494475917"
    ],
    [
      "10.779427158",
      "-5.121142484"
    ],
    [
      "-0.622558915",
      "-0.732848672"
    ],
    [
      "0.780944243",
      "-1.190208610"
    ],
    [
      "-0.106295746",
      "-1.217142543"
    ],
    [
      "2.133868846",
      "-0.819657023"
    ],
    [
      "-0.107095200",
      "-0.615511211"
    ],
    [
      "0.364385019",
      "-0.632534646"
    ],
    [
      "-1.369445471",
      "3.446519510"
    ],
    [
      "0.130146250",
      "-2.639191220"
    ],
    [
      "-0.734115381",
      "-0.181897175"
    ],
    [
      "-3.116843973",
      "-1.717650397"
    ],
    [
      "2.128952985",
      "1.378724785"
    ],
    [
      "-0.709596858",
      "1.314688548"
    ],
    [
      "0.649911414",
      "0.164784340"
    ],
    [
      "0.864917522",
      "-0.398538471"
    ],
    [
      "0.054152002",
      "-0.246205024"
    ],
    [
      "-0.452205725",
      "0.184644981"
    ],
    [
      "-0.069033681",
      "0.388122301"
    ],
    [
      "0.054959351",
      "0.891136543"
    ],
    [
      "0.209344250",
      "0.105191103"
    ],
    [
      "0.769391357",
      "0.800432625"
    ]
  ]
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer+

Instance parameters

{
  "n": 31
}

The current leader's answer

{
  "points": [
    [
      "0.391739653",
      "1.691006898"
    ],
    [
      "-0.119109755",
      "0.041590408"
    ],
    [
      "0.322310978",
      "0.470174171"
    ],
    [
      "1.288221568",
      "0.200178546"
    ],
    [
      "-0.429144343",
      "0.637694992"
    ],
    [
      "0.417571760",
      "-0.195179239"
    ],
    [
      "-0.304391117",
      "-0.255996801"
    ],
    [
      "-1.903584537",
      "0.693336808"
    ],
    [
      "-0.930247309",
      "0.355233244"
    ],
    [
      "-1.382523277",
      "-0.494475917"
    ],
    [
      "10.779427158",
      "-5.121142484"
    ],
    [
      "-0.622558915",
      "-0.732848672"
    ],
    [
      "0.780944243",
      "-1.190208610"
    ],
    [
      "-0.106295746",
      "-1.217142543"
    ],
    [
      "2.133868846",
      "-0.819657023"
    ],
    [
      "-0.107095200",
      "-0.615511211"
    ],
    [
      "0.364385019",
      "-0.632534646"
    ],
    [
      "-1.369445471",
      "3.446519510"
    ],
    [
      "0.130146250",
      "-2.639191220"
    ],
    [
      "-0.734115381",
      "-0.181897175"
    ],
    [
      "-3.116843973",
      "-1.717650397"
    ],
    [
      "2.128952985",
      "1.378724785"
    ],
    [
      "-0.709596858",
      "1.314688548"
    ],
    [
      "0.649911414",
      "0.164784340"
    ],
    [
      "0.864917522",
      "-0.398538471"
    ],
    [
      "0.054152002",
      "-0.246205024"
    ],
    [
      "-0.452205725",
      "0.184644981"
    ],
    [
      "-0.069033681",
      "0.388122301"
    ],
    [
      "0.054959351",
      "0.891136543"
    ],
    [
      "0.209344250",
      "0.105191103"
    ],
    [
      "0.769391357",
      "0.800432625"
    ]
  ]
}

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.