Regression Problem using JGAP

View: New views
6 Messages — Rating Filter:   Alert me  

Regression Problem using JGAP

by Diego Humberto Kalegari :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello,
 
I`m trying to use JGAP to solve a regression problem. The function that I`m trying to look is really complex. Regarding this I have some issues.
 
 - Why does JGAP does no provide LOG as on of its basic types function.
 
The other issues is the following. Its more like a programing issue.. I have a set of points X and Y.. the result Y of the regressions can`t be greater then 10% the value that I already know for Y on each point... So I used something like this
 
 double erroPoint  = Math.abs((result - y[i])/y[i]);  //calculate the error of this especific point.
 
If this errorPoint is lower then 10% (0.1).. I can add it on the funciotn error, like erro+=erroPoint..
 
But the thing is I don`t really know what to do when this error is greated then 10%... what whould I do to make surre that the total error will be good when I have all the erroPoint lower or equal 10%.
 
Regards
 
Diego
 

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
jgap-users mailing list
jgap-users@...
https://lists.sourceforge.net/lists/listinfo/jgap-users

Re: Regression Problem using JGAP

by esmail bonakdarian-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Some parts of this message have been removed. Learn more about Nabble's security policy.
> Date: Thu, 1 May 2008 17:20:07 -0300 > From: kalegari@... > To: jgap-users@... > Subject: [jgap-users] Regression Problem using JGAP > Hello, > > I`m trying to use JGAP to solve a regression problem. Sorry, I have no answer for you .. but a question instead :-) It looks like you are planing to compute the regression yourself? Or will you be calling some external library/function and if so which? Thanks.

Windows Live SkyDrive lets you share files with faraway friends. Start sharing.
-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
jgap-users mailing list
jgap-users@...
https://lists.sourceforge.net/lists/listinfo/jgap-users

Re: Regression Problem using JGAP

by Diego Humberto Kalegari :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello Esmail and All..
 
I`m not trying to compute the regression my self. The problem I wanna solve is this.
 
I have the following sets of entries.. (look for file attached) Dado  X and Y .
 
I want to find what function generates a curve like the one plotted. But the main problem of this example is that the error for each point needs to be lower or equals to 10%. And this is something that I`m trying to understand.. How to set you the RawFitness function to calculate it..
 
The other issue is that I did not reall understand how to create the terminals and there is 2 kinds of things that i need to set

Class[] types  and   Class[][] argTypes  .. I dont know the difference between them.

I also want to know if its possible to generate the initial population using the hanped-half-and-half method or any other method.. If so how this done.

Hopefully someone can help me solving this issues.. I already spent a lot of time but so far I did not made any progresse..

Thankx

 


 
On Sat, May 3, 2008 at 8:28 AM, esmail bonakdarian <ebonak@...> wrote:
> Date: Thu, 1 May 2008 17:20:07 -0300 > From: kalegari@... > To: jgap-users@... > Subject: [jgap-users] Regression Problem using JGAP > Hello, > > I`m trying to use JGAP to solve a regression problem. Sorry, I have no answer for you .. but a question instead :-) It looks like you are planing to compute the regression yourself? Or will you be calling some external library/function and if so which? Thanks.

Windows Live SkyDrive lets you share files with faraway friends. Start sharing.

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
jgap-users mailing list
jgap-users@...
https://lists.sourceforge.net/lists/listinfo/jgap-users



-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
jgap-users mailing list
jgap-users@...
https://lists.sourceforge.net/lists/listinfo/jgap-users

Re: Regression Problem using JGAP

by Klaus Meffert-5 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Diego,
 
JGAP cannot contain all functions, even if you go for the basic ones. Please always remember what you are paying for JGAP: nothing. It is an open source project with enormous effort put in. If you want to enhance progress you are free to contribute code or to donate via jgap.sf.net.
 
About the second question:
If you don't know what to do when the error is greater 10%, the algorithms cannot either. As I understood your question, you want an answer from the community. Could you please clarify your question a bit?
 
Best
 


From: jgap-users-bounces@... [mailto:jgap-users-bounces@...] On Behalf Of Diego Humberto Kalegari
Sent: Thursday, May 01, 2008 10:20 PM
To: jgap-users@...
Subject: [jgap-users] Regression Problem using JGAP

Hello,
 
I`m trying to use JGAP to solve a regression problem. The function that I`m trying to look is really complex. Regarding this I have some issues.
 
 - Why does JGAP does no provide LOG as on of its basic types function.
 
The other issues is the following. Its more like a programing issue.. I have a set of points X and Y.. the result Y of the regressions can`t be greater then 10% the value that I already know for Y on each point... So I used something like this
 
 double erroPoint  = Math.abs((result - y[i])/y[i]);  //calculate the error of this especific point.
 
If this errorPoint is lower then 10% (0.1).. I can add it on the funciotn error, like erro+=erroPoint..
 
But the thing is I don`t really know what to do when this error is greated then 10%... what whould I do to make surre that the total error will be good when I have all the erroPoint lower or equal 10%.
 
Regards
 
Diego
 

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
jgap-users mailing list
jgap-users@...
https://lists.sourceforge.net/lists/listinfo/jgap-users

Parent Message unknown Re: Regression Problem using JGAP

by Klaus Meffert-5 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Message

Diego,

there are some GP examples (directory examples/gp) which you could look at to get a better understanding. There could be more documentation for GP but it is not (it's an Open-Source project).

Your good questions help considering relevant aspects for future documentations!

Best

Klaus

----- original Nachricht --------

Betreff: Re: [jgap-users] Regression Problem using JGAP
Gesendet: So, 04. Mai 2008
Von: Diego Humberto Kalegari

Hello Esmail and All..
 
I`m not trying to compute the regression my self. The problem I wanna solve is this.
 
I have the following sets of entries.. (look for file attached) Dado  X and Y .
 
I want to find what function generates a curve like the one plotted. But the main problem of this example is that the error for each point needs to be lower or equals to 10%. And this is something that I`m trying to understand.. How to set you the RawFitness function to calculate it..
 
The other issue is that I did not reall understand how to create the terminals and there is 2 kinds of things that i need to set

Class[] types  and   Class[][] argTypes  .. I dont know the difference between them.

I also want to know if its possible to generate the initial population using the hanped-half-and-half method or any other method.. If so how this done.

Hopefully someone can help me solving this issues.. I already spent a lot of time but so far I did not made any progresse..

Thankx

 


 
On Sat, May 3, 2008 at 8:28 AM, esmail bonakdarian <ebonak@...> wrote:
> Date: Thu, 1 May 2008 17:20:07 -0300 > From: kalegari@... > To: jgap-users@... > Subject: [jgap-users] Regression Problem using JGAP > Hello, > > I`m trying to use JGAP to solve a regression problem. Sorry, I have no answer for you .. but a question instead :-) It looks like you are planing to compute the regression yourself? Or will you be calling some external library/function and if so which? Thanks.

Windows Live SkyDrive lets you share files with faraway friends. Start sharing.

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
jgap-users mailing list
jgap-users@...
https://lists.sourceforge.net/lists/listinfo/jgap-users




--- original Nachricht Ende ----

-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
jgap-users mailing list
jgap-users@...
https://lists.sourceforge.net/lists/listinfo/jgap-users

Re: Regression Problem using JGAP

by Bastian-12 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Diego,

i'm not sure to understand your problem.
but it seems to be a question how to 'design' the fitness function to
discriminate solutions with an error>10%.
not?

you can:
a)
a individual with ONE error>10% (from the testset with n entries) get a
fitness of 0
--> rapid implementation, simple, but extremely non-continuous and so
it's really hard to drive on the error curve


b)
ignore the 10%-thing, use a normal fitness function and check if the
final solution will do the job
it is promising, i think

c)
a small penalty for every error>10%; maybe power (²) to penalize
'multi-bad-individual' :-)

: for testset
:      current_error=.......
:      sum_error += current_error;
:      if current_error > 10%
:             count_big_errors++;
:
:fitness=sum_error + (count_big_errors^2 * my_penalty_for_evil_solutions);
// NOTE: maximum fitness == 0!!!
// see DeltaFitnessEvaluator vs. FitnessEvaluator

--> no huge extra performance, but still non-continuous

d)
just penalize the part of the error that is >10%

: for testset
:      current_error=.......
:      sum_error += current_error;
:      if current_error > 10%
:             sum_error+= (current_error-10%)^2

--> simple, continuous but no explicit penalty for 'multi-bad-individual'


e)
have a look at the probability distribution of any alternative above ...
maybe you get an idea


my experience: always try to design a continuous function (and if
possible even a differentiable)
the FF is still nothing else than a error function and we need JGAP
sliding  the error curve (with some mutation-hops of course)


Bastian





Diego Humberto Kalegari schrieb:

> Hello,
>  
> I`m trying to use JGAP to solve a regression problem. The function
> that I`m trying to look is really complex. Regarding this I have some
> issues.
>  
>  - Why does JGAP does no provide LOG as on of its basic types function.
>  
> The other issues is the following. Its more like a programing issue..
> I have a set of points X and Y.. the result Y of the regressions can`t
> be greater then 10% the value that I already know for Y on each
> point... So I used something like this
>  
> * double* erroPoint  = Math.abs((result - y[i])/y[i]);  //calculate
> the error of this especific point.
>  
> If this errorPoint is lower then 10% (0.1).. I can add it on the
> funciotn error, like erro+=erroPoint..
>  
> But the thing is I don`t really know what to do when this error is
> greated then 10%... what whould I do to make surre that the total
> error will be good when I have all the erroPoint lower or equal 10%.
>  
> Regards
>  
> Diego
>  
> ------------------------------------------------------------------------
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
> Don't miss this year's exciting event. There's still time to save $100.
> Use priority code J8TL2D2.
> http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
> ------------------------------------------------------------------------
>
> _______________________________________________
> jgap-users mailing list
> jgap-users@...
> https://lists.sourceforge.net/lists/listinfo/jgap-users
>  



-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference
Don't miss this year's exciting event. There's still time to save $100.
Use priority code J8TL2D2.
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
jgap-users mailing list
jgap-users@...
https://lists.sourceforge.net/lists/listinfo/jgap-users
LightInTheBox - Buy quality products at wholesale price