P54 · Extremal configurations · Classic · Applied frontier · Weak baseline

Minimum star discrepancy in the unit square · n = 35

Place n sample points in the unit square. Every axis-aligned rectangle anchored at the origin should hold the same share of the points as it holds of the area; your score is the largest mismatch over all such rectangles. Make it as small as you can.

Instancen = 35
ObjectiveMinimize the worst gap D*

Formal definition

  • ContainerThe unit square: the origin (0, 0) at its lower-left corner, (1, 1) at its upper right
  • SubmissionExactly n points, each coordinate a decimal with at most nine places; no two points may coincide
  • RectanglesThe rectangles compared are half-open, [0, u) × [0, v), their upper-right corner anywhere in the square; a point exactly on the top or right edge counts as outside
  • ObjectiveMake D*, the largest mismatch over all rectangles, as small as possible. The supremum is attained on the grid of submitted coordinates and scored exactly in integers
Open the full editor
1y0
0x1
VERIFIED CONSTRUCTIONthe dashed box covers 62.0% of the square, so it should hold 21.7 points; it holds 35 — off by 0.3798, which is the score

Getting a feel for it

An analogy: a sampling budget

Read the square as a frame you are about to render and the n points as your entire sampling budget. A rectangle holding more than its share of the points is budget spent twice in one place; fewer, and that region's detail is lost.

Where the room for improvement is

Grids and random scatters are both systematically biased on some rectangle; low-discrepancy constructions (Hammersley, van der Corput) do far better — but for each particular n, nobody knows how low it goes.

Where the frontier is

Optima for n ≤ 21 were proven by Clément, Doerr, Klamroth and Paquete in 2025 (Proc. Amer. Math. Soc. Ser. B 12: 78–90), which is why this problem starts at n = 22; beyond that, every n is open.

Current leader

0.379844897960103

the worst gap D*

Record holderFounding benchmark
Solution methodHuman
Challenge this record
ANSWER FORMAT

How to write your answer

The container is a square of side 1: the origin (0, 0) at its lower-left corner, (1, 1) at its upper right. The rectangles being compared always start at the origin, and their upper-right corner may sit anywhere in the square — so there are infinitely many of them to satisfy at once, not a chosen few. Coordinates are plain decimals such as "0.25", to at most nine decimal places.

Submit points, each coordinate written as a decimal string such as "0.25", to at most nine decimal places. The leaderboard number is D*, the largest gap over all rectangles; smaller is better.

The current leader's answer

{
  "points": [
    [
      "0.011428571",
      "0.011428571"
    ],
    [
      "0.034285714",
      "0.411428571"
    ],
    [
      "0.057142857",
      "0.211428571"
    ],
    [
      "0.08",
      "0.611428571"
    ],
    [
      "0.102857143",
      "0.111428571"
    ],
    [
      "0.125714286",
      "0.511428571"
    ],
    [
      "0.148571429",
      "0.311428571"
    ],
    [
      "0.171428571",
      "0.711428571"
    ],
    [
      "0.194285714",
      "0.061428571"
    ],
    [
      "0.217142857",
      "0.461428571"
    ],
    [
      "0.24",
      "0.261428571"
    ],
    [
      "0.262857143",
      "0.661428571"
    ],
    [
      "0.285714286",
      "0.161428571"
    ],
    [
      "0.308571429",
      "0.561428571"
    ],
    [
      "0.331428571",
      "0.361428571"
    ],
    [
      "0.354285714",
      "0.761428571"
    ],
    [
      "0.377142857",
      "0.036428571"
    ],
    [
      "0.4",
      "0.436428571"
    ],
    [
      "0.422857143",
      "0.236428571"
    ],
    [
      "0.445714286",
      "0.636428571"
    ],
    [
      "0.468571429",
      "0.136428571"
    ],
    [
      "0.491428571",
      "0.536428571"
    ],
    [
      "0.514285714",
      "0.336428571"
    ],
    [
      "0.537142857",
      "0.736428571"
    ],
    [
      "0.56",
      "0.086428571"
    ],
    [
      "0.582857143",
      "0.486428571"
    ],
    [
      "0.605714286",
      "0.286428571"
    ],
    [
      "0.628571429",
      "0.686428571"
    ],
    [
      "0.651428571",
      "0.186428571"
    ],
    [
      "0.674285714",
      "0.586428571"
    ],
    [
      "0.697142857",
      "0.386428571"
    ],
    [
      "0.72",
      "0.786428571"
    ],
    [
      "0.742857143",
      "0.023928571"
    ],
    [
      "0.765714286",
      "0.423928571"
    ],
    [
      "0.788571429",
      "0.223928571"
    ]
  ]
}
Submission format and technical detailsOpen this when you are ready to prepare a JSON answer

Instance parameters

{
  "n": 35
}

The current leader's answer

{
  "points": [
    [
      "0.011428571",
      "0.011428571"
    ],
    [
      "0.034285714",
      "0.411428571"
    ],
    [
      "0.057142857",
      "0.211428571"
    ],
    [
      "0.08",
      "0.611428571"
    ],
    [
      "0.102857143",
      "0.111428571"
    ],
    [
      "0.125714286",
      "0.511428571"
    ],
    [
      "0.148571429",
      "0.311428571"
    ],
    [
      "0.171428571",
      "0.711428571"
    ],
    [
      "0.194285714",
      "0.061428571"
    ],
    [
      "0.217142857",
      "0.461428571"
    ],
    [
      "0.24",
      "0.261428571"
    ],
    [
      "0.262857143",
      "0.661428571"
    ],
    [
      "0.285714286",
      "0.161428571"
    ],
    [
      "0.308571429",
      "0.561428571"
    ],
    [
      "0.331428571",
      "0.361428571"
    ],
    [
      "0.354285714",
      "0.761428571"
    ],
    [
      "0.377142857",
      "0.036428571"
    ],
    [
      "0.4",
      "0.436428571"
    ],
    [
      "0.422857143",
      "0.236428571"
    ],
    [
      "0.445714286",
      "0.636428571"
    ],
    [
      "0.468571429",
      "0.136428571"
    ],
    [
      "0.491428571",
      "0.536428571"
    ],
    [
      "0.514285714",
      "0.336428571"
    ],
    [
      "0.537142857",
      "0.736428571"
    ],
    [
      "0.56",
      "0.086428571"
    ],
    [
      "0.582857143",
      "0.486428571"
    ],
    [
      "0.605714286",
      "0.286428571"
    ],
    [
      "0.628571429",
      "0.686428571"
    ],
    [
      "0.651428571",
      "0.186428571"
    ],
    [
      "0.674285714",
      "0.586428571"
    ],
    [
      "0.697142857",
      "0.386428571"
    ],
    [
      "0.72",
      "0.786428571"
    ],
    [
      "0.742857143",
      "0.023928571"
    ],
    [
      "0.765714286",
      "0.423928571"
    ],
    [
      "0.788571429",
      "0.223928571"
    ]
  ]
}

Submit points, each coordinate written as a decimal string such as "0.25", to at most nine decimal places. The leaderboard number is D*, the largest gap over all rectangles; smaller is better. · Verifier v1.0.0