How to do optimization without any equation required?

Hi All,
I have some experimental data. I would like to do an optimization to find what are the best parameter to get maximum output result.
For an example, below are the surface plot of the experimental data. My target is to do optimization based on this experimental data.
Capture.GIF
I tried to do neural network by using nntool (the reason because, I don't have any equation available and from my understanding neural network is based on the pattern). However, I could not find any optimization button in the nntool.
Did anyone faced this kind of problem before? Or have any idea what kind of optimization tool that I can use for my case?
Really appreciate any kind of comment.
Thanks in advance.
Regards,
Nur Arafah

2 Comments

Do you want to just find the maximum value of Z? Or what else do you mean by the optimization?
If this is the case, why not to do it with something like: kMax = find(Z==max(Z)); XMax=X(kMax), YMax=y(kMax); ?
Although, the actual commands depend on the format your your experimental data are kept in...
Hi,
Thanks for responding.
What I mean by optimization is, example what is the best X parameter should be used to get maximum Z value along Y axis.
This equation
"kMax = find(Z==max(Z)); XMax=X(kMax), YMax=y(kMax)"
is more like prediction right?
Thanks.
Regards,
Nur Arafah

Sign in to comment.

Answers (1)

For any given finite set of points given to finite precision, there is mathematically the infinity of real numbers of different equations that fit the set exactly . The probability that any one of those equations is the "right" equation is 1/infinity which is precisely zero.
It is not possible for you to do any optimization for fitting unless you restrict yourself to a limited set of forms of equations to work with. For example you could restrict yourself to multinomials in two variables with individual degree no more than 5, and you would be able to try all of those possible models to see which one was best. Looking at your data, it is unlikely that any of those is the "right" answer, but it would be a finite list of models and by going through each of them you could say which was best out of all of the models you tried.

5 Comments

Hi,
Thanks for responding.
When you said "It is not possible for you to do any optimization for fitting unless you restrict yourself to a limit set of forms of equations to work with". Is the "fitting" that you are referred to is similar to somehting like "Least Square Fitting"?
If it is "Least Square Fititng", I have tried it before. And I got one polynomial equation to represent my data. However, when I use the equation to predict the Z value and compared it with experimental Z value. I got big error, because "least square fitting" is more like a mean of data.
Therefore, I'm not sure if I can use "Least Square Fiiting" for optimization purpose.
Thank you.
Regards,
Nur Arafah
Is the "fitting" that you are referred to is similar to somehting like "Least Square Fitting"?
Yes.
Therefore, I'm not sure if I can use "Least Square Fiiting" for optimization purpose.
Least Squared can give you an idea of how well any particular model fits your data. What it cannot do is tell you which of several competing models is the "right" model.
In order to get an equation from your data, you need to pre-determine what forms of equations are to be tried. Then you try them all one by one, doing a fitting process and gettting back a residue for each one. You then choose one among the models with the lowest residue, not as being the "right" equation, but rather as being the equation that had the best match for your data.
If you do not know what your equation might look like, then there is no possible fitting process on finite data that will give you back "the" equation (this can be proven without much difficulty.)
Noted. Thanks alot. I will try to do the "Least Square Fitting" and get the equation. Then used the equation to do optimization process.
Thanks.
Regards.
Nur Arafah
If you have the Curve Fitting Toolbox, then cftool is useful for exploring potential equations.
Hi,
Noted, will try to use the cftool to get the equation based on the surface plot attached above.
Thanks.
Regards,
Nur Arafah

Sign in to comment.

Categories

Asked:

on 7 Jan 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!