Algorithms for a "Travelling Salesman with radius / time limit"? I can't talk about my real-world situation I need this for, but imagine you walk around a warehouse that has things with RFID tags scattered around in it, and you have ten minutes to get within 2m of as many tags as possible. Thus unlike a Travelling Salesman, who needs to hit exact targets, I only need to be within a certain radius.
Another example would be the game agar.io, where you control a big blob and need to pick up as many little blobs as possible (defined as "their center is within your radius").
Unlike a Travelling Salesman, I don't want to -visit-every-city- pick up every item. Just as many as possible within a given time (i.e. length of travelled distance; I can ignore acceleration for the moment).
A reasonable approximation might be to start with r=0, i.e. find a route of at most length N which starts at a given point (the door of the warehouse) and touches as many points as possible, and then improve that (by "cutting corners").
 A: Let the parts have coordinates $(p_{ix},p_{iy})$ for $i=1,\ldots n$, $r$ the maximum distance from the starting location to a part, and $(x_0,y_0)$ be the starting location. We want to choose a sequence of points $(z_{jx},z_{jy})$, $1\leqslant j\leqslant n$ that maximizes the number of parts covered (if $k<n$ moves are used, set $(z_{lx},z_{ly})=(z_{kx},z_{ky}$ for $k< l\leqslant n$. Set $(z_{0x},z_{0y})$ for convenience. Let
$$
w_{ij} =\begin{cases}
1,& \text{if move } j \text{ covers part } i\\
0,& \text{otherwise}.
\end{cases}
$$
Then we can model this problem by an integer quadratically constrained program:
\begin{align}
\max&\quad \sum_{i=1}^n\sum_{j=1}^n w_{ij}\\
\mathrm{s.t.}&\quad \sum_{j=1}^n \sqrt{(z_{jx}-z_{j-1,x})^2 + (z_{jy}-z_{j-1,y})^2}\leqslant D\\
&\quad w_{ij}\leqslant \left(\frac{z_{jx}-p_{ix}}R\right)^2 + \left(\frac{z_{jy}-p_{iy}}R\right)^2\quad \forall\ i,j\\
&\quad \sum_{j=1}^n w_{ij} \leqslant 1\quad \forall\ i\\
&\quad w_{ij}\in\{0,1\}\quad \forall i,j
\end{align}
