How to reverse engineer a logarithmic equation I am trying to reverse engineer the parameters of a human-designed logarithmic equation. Here are the facts:

The equation is of the type a = x * ( y ^ b )

a and b are known, x and y are unknown and need to be determined

I have a table of values giving b as an exact value and a as the rounded integer result. For example, b might be 7 and a might be 68 where the 68 is a value rounded to the nearest integer. The number of values in the table is around 12-15 or so.

x will be some number which is human selected, so it will be a relatively round number to +/- 0.05. So, for example, x might be 53 or 52.75, but it would not be 51.1938434.

y is some positive rational value like &quot;1.093534&quot;.


So, given the table of values of a and b and the facts above, how can I do an estimation to determine the most likely values of x and y?
You can determine the most likely values for $\log x$ and $\log y$ by linear regression since your relationship implies:
$\log a = b.\log y + \log x$
So run regression on $b$ as input and $\log a$ as output. The gradient will be $\log y$ and the intercept $\log x$