Solving GA optimization with multi-variable fitness function, having different ranges

Hi,
I have a multi-variable fitness function in GA. These variables have different ranges. For example, one variable is in radians while the other is in cm. As a result, one of the variables has a bound of [-pi pi] radian, while the other variable has a bound [-400 400] mm. Right now I am just giving the lower bound as [-pi -400] and a higher bound of [pi 400]. This definitely gives me a wrong optimized value because as far as I understand, with variables having different ranges, we first need to scale them. However, if I give the scaled values to GA, how do I retrieve the non-scaled optimized value?
Thanks,
Surabhi

3 Comments

There is nothing inherently wrong with one variable being less than pi in absolute value, and the other being less than 40. Scaling makes sense when the variables are many orders of magnitude apart.
My question for you is why are you using ga? In general, other solvers are better, as the solver decision table shows.
Alan Weiss
MATLAB mathematical toolbox documentation
Hi Alan,
Thanks for your response. I am using GA as I am trying to find the global minima in a highly non-convex cost function. As far as I understand, GA works well in such a scenario.
Thanks,
Surabhi
Sorry, my bad! the input was in mm and I solved my problem by converting mm to meters and now the input data has similar ranges.

Sign in to comment.

Answers (0)

Tags

Asked:

on 9 Jan 2019

Edited:

on 11 Jan 2019

Community Treasure Hunt

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

Start Hunting!