Estimate exponential equation from graph

estimationexponential function

Output y of a system is a non increasing function of an input x
Based on my studies I have found that it can be estimated as below
$$
y = be^{ax}+c
$$

From measurement I have five values of y for x that are not equally spaced. I.e I have values of y for x= 5,10,20,40,50.
Values of y are exponentially decreasing and hence should fit the generic equation above.

The task at hand is to find values of a,b and c from these five measurement data. I understand that I have enough points of data for calculating three unknowns. I want to know a iterative/generic logic to come up with estimations of these unknowns, since I have to do this for hundreds of measurements.

PS:
Some points already known to me

  • c can be estimated by looking for asymptotes
  • a is negative as my function is exponentially decreasing with x

I am new to this community, Please consider that while you answer/comment

Best Answer

If $c$ is known then we have points of the form $$(x_i,be^{ax_i})$$ after shifting the data by $(0,-c)$. This relation can be rewritten as $$y=be^{ax}\implies\ln{(y)}=ax+\ln{(b)}$$ So the variables $\ln{(y)}$ and $x$ are linearly related. The Least Squares Regression line can then be found for $\ln{(y)}$ and $x$ giving a relation of the form $$\ln{(y)}=mx+c=ax+\ln{(b)}$$ Hence the value of $a$ is given by the gradient $m$ of the Least Squares Regression line between $\ln{(y)}$ and $x$. Also, the value of $b$ is given by $e^c$ where $c$ is the $y$-axis intercept of the Least Squares Regression line between $\ln{(y)}$ and $x$.

Related Question