Azzera filtri
Azzera filtri

How to perform an optimization in Matlab if the number of design variables vary throughout every iteration ?

3 visualizzazioni (ultimi 30 giorni)
Hello Everyone,
Its been only a short time that I have been working with Matlab Optimization Tool box. So here, I have a doubt in a particular case where the number of design variables vary along with the whole process of optimization. I could put it this way, I need to optimize a composite laminate with the least number of layers which should also satisfy the failure criteria. But here, the design variables are the number of plies(N) and their corresponding angles, so if x(1)=N=10, then there are 11 design variables (10 angles and N). In this case, the value of N gets optimized and the number of design variables keep on changing. In this kind of a problem, how will I specify the lower and upper bounds initially ?
Because, if I provide the lb=[2 0 0] ub=[10 90 90 90 90 90 90 90 90 90 90], which means minimum of two plies and the least angle is zero degrees. The maximum is 10 plies and the upper bound for the angles is 90 degrees. Obviously this gives an error, as the dimensions are different for lb and ub.
Could anyone help me out in this kind of optimization problem. I could explain the problem elaborately if any one finds it hard to understand !!!

Risposta accettata

Matt J
Matt J il 8 Feb 2016
Modificato: Matt J il 8 Feb 2016
We probably need to see the objective function and constraints. However, one approach would be to loop over the nine different fixed values of N and solve the optimization problem for each one.
Also, I don't know the physics of this application, but I wonder if certain physical values of the angle (e.g., zero?) effectively mean the ply is not present. If so, just optimize under the assumption of N=10 and discard the plies with non-physical angles.
  2 Commenti
Aravind Sasikumar
Aravind Sasikumar il 9 Feb 2016
Modificato: Aravind Sasikumar il 9 Feb 2016
Hey Matt,
Thanks a lot for the immediate response. Well the objective function is N itself. I just need to minimize the value of N, which is to minimize the number of layers which inturn reduces the mass.
And regsrding the zero angled ply, it doesnt signify that the ply is not present , it means that the ply takes fibers in the zero degree angle.
I think looping over N would be a good idea to see how it goes on. I could come back to you to once I try this out. Once again thanks a lot for that useful piece of information.

Accedi per commentare.

Più risposte (0)


Scopri di più su Get Started with Optimization Toolbox in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by