The No-three-in-line problem asks how many points can be placed on a n \times n grid so that no three points are on the same line, where the lines considered are of any slope and not just orthogonal and diagonal. Each row/column can contain at most 2 points, so clearly the answer is at most 2n. The real question is, can we actually achieve 2n for every grid size? It’s conjectured that the answer is “no” for grids large enough, but we don’t know where the crossover point is and there’s no indication that the number of 2n-point solutions is falling away from exponential growth, at least up to 18 \times 18!
To my eye, the configurations that work can be quite balanced and attractive. Here are some symmetrical ones for 14 \times 14 (though in general the solutions are not necessarily symmetric in this way):
The most extensive searches for configurations so far have been done
by Achim
Flammenkamp
and later by Ben Chaffin. I’ve written
some CUDA codeBy the way,
the existing cuda-mode for Emacs is a bit messed up, I have a fork
with some bugfixes here. of my
own with the goal of pushing things a little further, and I’ll explain
it in the rest of this post.