Maximum $d$ you may get is a total number $N$ of $y_n$'s you have - 1. Larger $d$'s yield curvatures that can't be represented by N points. Solve a matrix equation $A\vec{t}=\vec{y}$ where $\vec{y}$ is a measurements vector (size $N \times 1$) and $A$ is a normalized version of matrix $X$ (size $N \times N$), where each column $A_j$ is calculated as: $A_{ij} = \frac {X_{ij}} {\sum \limits_j (X_{ij})^2}$ $X = \left [ \begin{matrix} x_0^0 & \cdots &x_0^{N-1} \\ \vdots & \ddots & \vdots \\ x_{N-1}^0 & \cdots & x_{N-1}^{N-1} \end{matrix} \right ]$ d you are interested in is a position of largest coefficient in a vector $\vec{t}$ (size $N \times 1$ starting from zero). Your approximation would be $y = t_d \cdot x^d$. This is a sort of exhaustive search, yes.