Jump to content
  • Announcements

    • Rahul Ponginan

      Please click here for a short but important announcement   03/26/17

      Dear Users Our Commercial and Academic users around the world can use these same forums here as before i.e. the Altair Support Forum , Commercial users from India with solver queries can go to the Solver Forum for India Commercial Users , Academic Users from India and AOC India Participants are requested to go to the Forum for India Academic Users and AOC India Participants , We will be tending to all queries in all the forums promptly as before, thank you for your understanding. 
    • Rahul Ponginan

      ユーザーフォーラムについて   10/22/17

      アルテアエンジニアリングでは、弊社製品や技術について、ユーザー様同士がオンラインで情報交換できる場所を提供しています。 日常業務の中で起こるさまざまな問題の解決や、他ユーザー様との技術交流を図るための場として、お客様の環境に合わせてご活用ください。
Felix Baumgärtner

Constraints for groups of design variables

Recommended Posts

Hello,

I'm searching for an easy way to implement the following constraint for a group of design variables in an optimization study within the Hyperstudy interface.

 

Let's assume we have the variables A, B, and C wich should be varied within the following ranges:

A: Lower Bound: 0, Upper Bound: 1, Initial Value: 0.33

B: Lower Bound: 0, Upper Bound: 1, Initial Value: 0.33

C: Lower Bound: 0, Upper Bound: 1, Initial Value: 0.33

Whereas the general constraint A+B+C<=1 musn't be violated.

 

My approach using the function "Link Variables" did not lead to an appropriate result.

I would like to avoid a redefinition of the parameters within the solver input file (i.e. by A = A/(A+B+C), in consideration of the explicit assignment between the parameters defined by Hyperstudy and the "real" parameters used within the solver.

 

Does anybody know of an convenient way to implement the constraints as described?

Thank you for your efforts in advance.

 

Cheers,

Felix

Share this post


Link to post
Share on other sites

HST is structured so that all the unlinked design variables are truly independent, so there is no direct way to enforce an a prior constraint like this in HST today.Try adding constraints on dvs (by passing them as responses).But That would still result in wasted runs.This  comment is for Linking DVs.

 

We don’t have any setup today that allows to enforce this type of condition.  Our setup is dependent on their being indpenendent variables.

 

However, in the past we have accomplished the same thing by introducing a dummy variable which is a percentage (from 0 to 1) and is used to enforce the condition. 

 

For example, consider a condition that x + y < 10.

X = normal DV in range [0,10]

Z = dummy variable in range [0,1]

Y = (10-x)*z

 

See the attached scatter plot from a HST of a Hammersley DOE of this space, you can see the shape of the space matches your required space.  This setup has some less than ideal characteristics when you do optimization because the variables are not independent.  The optimization will still work, but the convergence may take longer.  I attached an example archive of this setup for your review.

 

Another option, which you pointed out below is to just the optimizer and tell it ignore failed runs.  You mentioned this below, and rightly pointed out that GRSM will not use the maximum number of runs.   But this is easily worked around by just increasing the number of runs.  Set it high (1000) and just kill it when you are satisfied with its number of runs.

 

I hope one of these two suggestions helps,

scatter.png

Study_1.hstx

Share this post


Link to post
Share on other sites

Hello Rahul,

 

I forgot mentioning that i am of course using a GRSM since we have to expect several local minima.

Thank you for alluding to this implication.

 

Your approach using dummy variables helped to increase the efficiency of the optimization, although it is not exactly what i was hoping to find.

 

Cheers,

Felix

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

×