Jump to content
Ms. Dimitrios Makris

Optimization of fitting with B-Splines and NSGA II problems

Recommended Posts

Hello everyone,

 

I am Dimitrios Makris working on my thesis, with Gregory Griropoulos, Professor at the Naval Architecture and Marine Engineering department of the NTUA.

 

I am currently working on optimization of fitting of non parametric curves with B-Spline curves. I use two executable files in order to fit with B-Splines, 11 points of the non parametric initial curve, with 9 of them being design variables (dv are actually the parameters that define the chord length to which each point lies on the curve - ranges equally spaced between 0 and 1) and the rest two the start and the end of the initial curve. There is also an additional dv that specifies a power used in my code that does the fitting (the range lies between the values being used by two different fitting methods).

 

I noticed that although the initial and the fitted B-splines curve are almost identical there is a difference in the chord length to which a point lies on each one, for the same parameter (e.g. 0.2). I have checked the total length of each curve with "getLength()" command and the two curves give almost the same value (the difference is quite small and certainly does not explain the difference in positions of the points). The result is that the optimizer tries to match points that normally should not match in an optimized design.

 

I managed to solve the problem by using the ".getParameterShortestDistanceSquared" command (which you could consider making it a bit shorter in order to comply with the purpose that it was created for!). The objective function is the sum of the lengths of lines connecting 20 different points along the B-Spline curve and their relevant points on the initial curve.

 

The second problem is that the NSGA II is not calculating the objective function which stays in pending state for all designs. There seems to be no problem with the executables and the I/O procedure of files being imported or exported to CAESES, as MOSA runs without (almost - the first two designs also stay in pending state) any problems in the same simulation and with the same options specified (I have copied them straight from the NSGA II).

 

Kind regards,

Makris Dimitrios

 

 

Share this post


Link to post
Share on other sites

Hi Dimitrios,

 

I have to admit that I have some problems to understand your first issue. However, I do understand your workaround i.e. how you finally do the fitting. So is there still something that you need?

 

The second problem could potentially be a bug, but also some kind of problems in the setup (like you said, I/O etc). So far, our tests have not shown any problems but we will have a look at it.

 

Thanks anyway

Joerg

Share this post


Link to post
Share on other sites

Hi Joerg,

 

You can find attached two pictures that show my first problem for which I don't need anything more as I have already solved it; I just mention it as something unexplained. As you can see there are two points in two different (but almost identical) curves, that are quite far from each other although the same parameter is used (chord length) for both curves in order to get the coordinates of the points.

 

Thanks,
Dimitris

 

x37.png

xsi8.png

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...