Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Can you do several data sets fitting in automode

132 views
Skip to first unread message

Mat Tamimi

unread,
Aug 5, 2013, 4:31:24 PM8/5/13
to eureqa...@googlegroups.com
Hi
I am new to Eurequa and I used a little.
I like the results that it produces.
I was wondering if it can be used to batch process large number of data sets without user input.
If yes where can I find examples.
 
My Question:-
 
1)  I have about 100 sets of (x,y) points that I would like to find the best fit for each one.
(i will have 100 equations at the end).  The data is columns in an excel sheet.
I would like to output result to text file to be read by another program.
 
My data is:
X(depth cm)   Y1(dose)   Y2(dose)   Y3(dose) ....... ...Y99(dose)  Y100(dose)
0.5
1.0
1.5
.
.
.
 
2) Can Eurequa perform curve fitting using several curves?
   The data I have in point 1 are simulated results and supose to be linearly added together to match a measured quantity.
   I am trying to find the "Linear combination" (real numbers that are > 1.0) of the results to match the measured quantity.
 
What I am trying to do:
 
                     Ytotal(dose) = f1*Y1+f2*Y2+f3*Y3+...........................+f99*Y99+f100*Y100
 
 
   Is that possible???   if yes   How can I do that ??
 
 
  I greatly appreciate all the help I can get.
 
Sincerely;
Mat M. Al-Tamimi

Alison Reynolds

unread,
Aug 6, 2013, 9:48:14 AM8/6/13
to eureqa...@googlegroups.com
Hi Mat,

There's not a way to automatically create a large number of searches in the desktop tool currently but it is something we can consider adding in the future.

You can use Eureqa to match several functions at once as in your example above by using f0(), f1(), etc.  Functions with no arguments can be used to represent unknown constants or coefficients.  So the target expression you want should look something like this:

y = f1()*y1+f2()*y2...

You can see more examples of sample target expressions on this tutorial page:  http://formulize.nutonian.com/target-expression/index.html

Regards,
Alison


Andrew Lamb

unread,
Aug 6, 2013, 6:44:41 AM8/6/13
to eureqa...@googlegroups.com
Hi Mat,

1) Eureqa searches can be automated via the public API, more details of which can be found at http://www.nutonian.com/download/eureqa-api/. The API source code contains examples for you to start from. 

2) Yes, Eureqa can search with multiple functions. 

If you are asking how to find a linear model of Ytotal(dose) with YXX(dose) as independent variables, simply use a target expression similar to the following:

Ytotal = f(Y1, Y2, ... Y100)

Disable the divide, sine, and cosine building blocks and the search will find the simplest linear combination of the inputs to model YTotal. I have included a screen shot of how the "Set Target" panel should look for such a search.

Do let us know what you decide to do and how it goes!

Andrew

Inline image 2


--
You received this message because you are subscribed to the Google Groups "Eureqa Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to eureqa-group...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

image.png

Mat Tamimi

unread,
Aug 7, 2013, 11:08:13 PM8/7/13
to eureqa...@googlegroups.com
Hi
thank you very much for the reply.
I truncated my variables to 40 and corrected my formula to match yours and had it as a function Ytotal = f(Y1, Y2, ... Y40).
When I ran the problem Eurqua came back with a linear combination using two functions (sorry I can not post a picture the browser is not allowing me to so).
One of the proposed solutions is:
 
Measurement = Y34 + 9.078e10*Y25 - 0.02204 - 1.853e11*Y2
Two questions: Can I force Eureqa
1) to use more coefficients (min - max)
2) to look for combination of coefficients  > 0 only
 
The solution should not have any negative coefficients since this is a
spectrum and negative coefficients do not make any physical sense.
Further; this system can be solved  using matrix algebra using either:
1- Jacobian    or 2- Gauss Seidle  methods
 
the issue using these methods is they can provide negative coefficients.
 
Thank you in advance for your help and assistance it is greatly appreciated.
 
Sincerely
Mat M Al-Tamimi

Andrew Lamb

unread,
Aug 8, 2013, 4:12:34 PM8/8/13
to eureqa...@googlegroups.com
1) to use more coefficients (min - max)

I am not sure what you are asking. Are you asking for a more complex model? If so, perhaps you can choose a model which has more complexity from the search results pane like so:

Inline image 1

2) to look for combination of coefficients  > 0 only

There isn't a general way to require only positive constants in solutions that I know of. However, if you wish to restrict the form of your models to linear models, you could do something similar to what was suggested here: https://groups.google.com/d/msg/eureqa-group/ARONJ8W3g0Y/3H5TB0GdEmoJ

Specifically, for your case perhaps you could set the target expression to something like the following?

Ytotal = abs(f0())*Y1 + abs(f1())*Y2 ... 
abs(f99())*Y100)

Andrew
image.png

Mat Tamimi

unread,
Aug 9, 2013, 7:54:03 AM8/9/13
to eureqa...@googlegroups.com
Hello
Andrew thank you very much for your continual feed back. 
Based on your feed back and some of the help pages I reduced my dependent variable to 40 and number of row data to 80 data  then setup Eurequa setup as follow:

This particular setup causes the software to crash. I do  not know why. The following is the start search tab:

the software starts but no results displayed. When I stop the search I get the following then the software become unresponsive. The following is screen shot:


the crashing generates two error reports on the desktop. They must be binary files. I am pretty sure the error is user error because I am telling the software to do something its not intended to do.
Please excuse my unfamiliarity with the software. Do you see what I am doing wrong & causing the software to crash? I am attaching my data file if you want to try on other systems. 
I can send the error files if you need them.

As I mentioned before I am trying to fit all these Y1 ... Y40 in linear combination (+ coefficient only) to match the measurement.
Thank you very much for you help and support.

Sincerely:
Mat M. Al-Tamimi
Group-Spectrum-6.fxp

Dave Nunez

unread,
Aug 9, 2013, 6:29:45 PM8/9/13
to Eureqa Group
Hi there, there is a bug that deals with constants  (or not having constants turned on) when you have multiple f().. turn on constants and it will fix the search problem.. You might want to give constants a high complexity value.

hth, -d
When things get too complicated, it sometimes makes sense to stop and wonder: Have I asked the right question?
-Enrico Bombieri

Mat Tamimi

unread,
Aug 9, 2013, 7:47:40 PM8/9/13
to eureqa...@googlegroups.com
Hi
Waw foo your the man. It worked fine when I did what you suggested. I gave constants a complexity of 5 does that make sense.
Eureqa gave me a fit that I think I can use.

The following are screen shots:





One more question:
How long do let the software look for solution? How do you decide when stop the search.?
What is the best way to do that?

Thank you in advance .

Sincerely;
Mat M. Al-Tamimi

Dave Nunez

unread,
Aug 9, 2013, 9:22:39 PM8/9/13
to Eureqa Group
Hey, glad it worked for you, under the start search tab, confidence, you will see stability and maturity, those two are meant to give you a ball park figure when the search has arrived at a "global minima"  -d
Reply all
Reply to author
Forward
0 new messages