【求助】在isight里面,如何对约束的惩罚力度加大?
在优化的时候,经常发生violation,优化出来的结果往往不满意,我希望的是在约束严格满足的情况下,得到优化的结果。
所以,请问,如何加大对约束的惩罚力度,还是让约束更加起作用!
回复: 【求助】在isight里面,如何对约束的惩罚力度加大?
有谁知道,帮我看看~谢谢~回复: 【求助】在isight里面,如何对约束的惩罚力度加大?
这个是结果图。请帮我分析下。谢谢!
回复: 【求助】在isight里面,如何对约束的惩罚力度加大?
是不是在给定参数范围内,得到约束范围内的结果是不可能的阿回复: 【求助】在isight里面,如何对约束的惩罚力度加大?
这其实很复杂,做优化到最后都会遇到优化方法问题。建议多看看优化的书。赖兄有好多关于多目标优化,多峰优化的资料,大家和他要啊。呵呵 ;)回复: 【求助】在isight里面,如何对约束的惩罚力度加大?
1、罚函数算法和直接优化算法对约束的处理有所不同。2、iSIGHT的计算公式为:
Penalty=Base+ Sum(Multiplier*[(ViolatedConstraintValue-Boundary)*ConstraintWeight/ConstraintScaleFactor]^Exponet
见Userguide.pdf , MDOL.guide
3、调节这些因子的办法:
约束惩罚因子可以通过.desc文件中加入如下的初始化语句实现:
Initialization BEAM
Tcl
set tn
api_SetPenaltyMultiplier $tn 1000000.0
api_SetDeltaForInEqualityConstraintViolation $tn .004
End Tcl
End Initialization BEAM 不好意思,我看不懂程序,请详细点。。。
谢谢,,具体指什么意思???:handshake 因子是怎么赋值的??
页:
[1]