正在加载图片...
后再对该函数面求极值。无疑这是一种普适的优化方法,不容易陷入局部极值点, 但优化精度一般不是很高,因此多用来做粗优化的手段 另外一种是针对第一种优化方法缺点的改进方法,叫做梯度寻优。如果说第 种方法是C0阶、大范围普适的粗优化方法;第二种方法就是C1阶、局部寻 优的精优化方法。一般来说,一个比较负责的问题都需要同时采用两种优化方法, 先用函数逼进的第一类方法初步求得最优解基本位置,然后再采用梯度寻优的对 最优解的位置进行更精确的确定。(注:但用第二类梯度寻优进行优化,不仅时 间消耗长,还可能陷入局部最小点,因此通常的问题都建议使用0阶函数逼进优 化subp) 前面讨论了 ANSYS的两种优化方法,但光了解优化进行的方式是不够的。 ANSYS进行优化计算,都是一个不断迭代的过程。有时候,了解优化过程什么 时候结束比了解优化过程本身更加重要。下面我们就来谈谈决定优化过程什么时 候结束的条件:优化准则。 假设F、Ⅺ和F、Ⅺ分别为目标函数、设计变量第j次迭代和第j-l次迭 代的结果(X为矢量),Fb和Xb分别是当前的最优目标函数和其相应的设计变量 值。如果满足F-FA或者F,-F≤r,为目标函数的公差,那么认为迭 代收敛,于是迭代停止。假设x-XA≤或者x-XA≤,那么也认为设计 变量的搜索已经趋于收敛,于是迭代停止。当然,为了防止优化过程在某些问题 中不收敛, ANSYS还提供了循环数量控制。比如说,如果你使用的是0阶函数 逼进优化,你可以用 opsu命令设定最多循环多少次退出,已经当不可行解连 续出现多少次就认为优化过程发散,强行退出等。(注:在0阶函数逼进优化中 默认的最大循环次数为30;默认当连续出现7次不可行解,就认为优化过程发 散) 在上面的描述中,可能只有公差τ和不可行解这两个概念在 ANSYS中的意 义我们不甚了解了。可行解与不可行解的定义将在下一小节中详细定义,这里说 明一下公差τ。从例子里面可以看出,我对设计变量、状态变量、日标函数都给 出了公差限制。从上面一段的的分析可以得知,设计变量、目标函数的公差可以 控制优化过程的收敛性。其实设计变量也一样,如果前后两次设计变量之间的误 差小于设计变量的公差时,优化过程也会自动停止,不过对它的限制主要是来控 制可行性(下一节介绍可行性),三大变量的公差都有一个默认值: 对于设计变量,歇认公差就是001×(上限下限),如果只有上限,默认公差为 001×上限绝对值。(设计变量定义时必须指定上限)。 对于目标函数,由于定义时不指定上下限,默认公差为001×当前目标函数值。 对于状态变量,如果指定了上下限,默认公差为0.01×(上限下限),如果只有 上限或者下限,默认公差为0.01×上限或者下限的绝对值。 上述默认公差的定义都能在 ANSYS的随机帮助中查到,这里为什么如此冗后再对该函数面求极值。无疑这是一种普适的优化方法,不容易陷入局部极值点, 但优化精度一般不是很高,因此多用来做粗优化的手段。 另外一种是针对第一种优化方法缺点的改进方法,叫做梯度寻优。如果说第 一种方法是 C0 阶、大范围普适的粗优化方法;第二种方法就是 C1 阶、局部寻 优的精优化方法。一般来说,一个比较负责的问题都需要同时采用两种优化方法, 先用函数逼进的第一类方法初步求得最优解基本位置,然后再采用梯度寻优的对 最优解的位置进行更精确的确定。(注:但用第二类梯度寻优进行优化,不仅时 间消耗长,还可能陷入局部最小点,因此通常的问题都建议使用 0 阶函数逼进优 化 subp) 前面讨论了 ANSYS 的两种优化方法,但光了解优化进行的方式是不够的。 ANSYS 进行优化计算,都是一个不断迭代的过程。有时候,了解优化过程什么 时候结束比了解优化过程本身更加重要。下面我们就来谈谈决定优化过程什么时 候结束的条件:优化准则。 假设 Fj、Xj 和 Fj-1、Xj-1 分别为目标函数、设计变量第 j 次迭代和第 j-1 次迭 代的结果(Xj 为矢量),Fb 和 Xb 分别是当前的最优目标函数和其相应的设计变量 值。如果满足 −   Fj Fj−1 或者 −   Fj Fb , 为目标函数的公差,那么认为迭 代收敛,于是迭代停止。假设 −   X j X j−1 或者 −   X j Xb ,那么也认为设计 变量的搜索已经趋于收敛,于是迭代停止。当然,为了防止优化过程在某些问题 中不收敛,ANSYS 还提供了循环数量控制。比如说,如果你使用的是 0 阶函数 逼进优化,你可以用 opsubp 命令设定最多循环多少次退出,已经当不可行解连 续出现多少次就认为优化过程发散,强行退出等。(注:在 0 阶函数逼进优化中, 默认的最大循环次数为 30;默认当连续出现 7 次不可行解,就认为优化过程发 散) 在上面的描述中,可能只有公差  和不可行解这两个概念在 ANSYS 中的意 义我们不甚了解了。可行解与不可行解的定义将在下一小节中详细定义,这里说 明一下公差  。从例子里面可以看出,我对设计变量、状态变量、目标函数都给 出了公差限制。从上面一段的的分析可以得知,设计变量、目标函数的公差可以 控制优化过程的收敛性。其实设计变量也一样,如果前后两次设计变量之间的误 差小于设计变量的公差时,优化过程也会自动停止,不过对它的限制主要是来控 制可行性(下一节介绍可行性),三大变量的公差都有一个默认值: 对于设计变量,默认公差就是 0.01×(上限-下限),如果只有上限,默认公差为 0.01×上限绝对值。(设计变量定义时必须指定上限)。 对于目标函数,由于定义时不指定上下限,默认公差为 0.01×当前目标函数值。 对于状态变量,如果指定了上下限,默认公差为 0.01×(上限-下限),如果只有 上限或者下限,默认公差为 0.01×上限或者下限的绝对值。 上述默认公差的定义都能在 ANSYS 的随机帮助中查到,这里为什么如此冗
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有