Consider finite piece of lattice i.e. points of the form m*h1 + n*h2, for 0<m,n<N
h1, h2 -some vectors. Consider some point "P" on the plane. How to find (m,n) such that m*h1 + n*h2 is closest to "P" ?
I mean what is the simplest method ? Of course we can use brute force search since finite set of points, but may be there is elegant solution ?
The problem is that "lattice reduction" may bring us out the finite set of points...
The problem may be also reformulated like: minimize in int "k" f(k)= (x - (k*b mod a))^2 + (y-k*h)^2 , for given a,b,h,x,y (which may be assumed integers)
the first term is jumping in "k" because of mod a and this a problem...