Re: Eureqa - Re: fitting a dynamical system model

74 views
Skip to first unread message

Dave Nunez

unread,
May 1, 2013, 6:48:22 PM5/1/13
to Eureqa Group
Hmm.. have you looked into the require() operator ? a quick search on the on the the group will give you

https://groups.google.com/forum/?hl=en&fromgroups=#!searchin/eureqa-group/require/eureqa-group/my9aCykM2V8/ddVm5TswJO8J

--
To require f(x) to contain x, you could do:

y = f(x) + 0*require(contains(f(x), x))
--

But surely "x = delay(x,1) + k" is simpler then "x = 0.5*(delay(x,1)) + f1(u)".. another thing you might also want to experiment with is turning off constants.

hth, -d




On Wed, May 1, 2013 at 1:45 AM, Giovanni DG <giov...@giodegas.it> wrote:
t is the discrete time in seconds

u is the measured input signal

x is the state variable

In a linear case you would have:
x(t+dt) = A x(t)+ B u(t)

If I use as a target function:
x = f0(delay(x,1)) + f1(u)

formulize would quite fast converge to something like

x = delay(x,1) + k

k constant

forgetting about the u contribution .
But if I use :
x = 0.5*(delay(x,1)) + f1(u)

I will force it to consider the u contribution.

Is it clear?

GdG

--
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.





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

Michael Schmidt

unread,
May 15, 2013, 7:16:59 PM5/15/13
to eureqa...@googlegroups.com
I'm with Dave, go with what's simpler and more accurate. Eureqa should identify both of those if they're truly non-dominated, and you give it enough cpu time.

Another thing you might do is just assume both terms have coefficients so this isn't a concern. You could do:

x = f0()*f1(delay(x,1)) + f2()*f3(u)

Michael


Reply all
Reply to author
Forward
0 new messages