How to perform an optimization in Matlab if the number of design variables vary throughout every iteration ?
3 views (last 30 days)
Show older comments
Aravind Sasikumar
on 8 Feb 2016
Commented: Aravind Sasikumar
on 9 Feb 2016
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 !!!
0 Comments
Accepted Answer
Matt J
on 8 Feb 2016
Edited: Matt J
on 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 Comments
More Answers (0)
See Also
Categories
Find more on Get Started with Optimization Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!