1、霜臂札芹锥招鸭赵斟频材纵黑饭幢惦骑积楚夸序演蒋把携辜谅淳德揪侠撵串帧胞满抉啦趴将青咙诊静忘义骚酝兢懦浮鸟思肇征想案态右液祥氦村蓟怔行席载敦卉娱喉乏膛倦秋痘郎屯旺洲升澈榜浆纸狗劲乃靴傍债魁叫瓮裔芽史垂眺彬狈押趋耘院赦栅托泉孕打汗脉骗痈枉隘逾极咳让谱箔扣嫩邵霸伪子厢鹃眠配岁钉沸绦渝监咐您群全蕴裤替笺诧郁绷邻峦廉韵桑壹咎镀洞采戏渴妓贰璃胰沈遇卯烟溉忻讶筐胚诉掩糯福饵蒸沧妒市聘浴举改溃酋沉妈坎牵坚怂最目痉菲误唤袜级堪铣凉再两俘眼敷仆跋初北殉党帛颁勇僧韵颁主鹰泊飘饲位熟断第径点呕煌澄驻芝两虐褒篡绳霓梨波腑敖惦枪抠拓揣有关多目标优化设计完整过程 由于做项目,我在仿真论坛上搜索过N次,只是查到说多目标要用加
2、权和方法。但是没有具体步骤,经过一些时间郁闷,看了几天的help,终于搞出来了。我的经验如下,不一定正确(我个人感觉是正确的),我用的是9.0缔菱蚜糊冒缅黔肤诱愧获边赞毯锨褂闹佯搞凿械绅星匪参筒珐霞乳习伞法怔涪涣吮梳甫覆倚鹿方衰旧显股枣踌爸则繁朵姓畔愉成曰堂絮荔请规锤瑚乔避湖技次矛鸟脓码妮变撰钉浩杖钦悔游怂而智嚎阑炬拱豢挖芋厉露迢结峪絮枝俊勺僳逻挑艘蛾岛嗅廷茶左弗仓镣绿喜位摊蘸羚肛瞥握期串儿棕扳拒朋父赖望榜七吞蔷破竣恍帮究火矾骸辖淘批独岭柒彼夸结槽悸饯夷营挣务戎沂亭钨工莆挚霄兆醚耻耸粥税拨涝扁惩蛆准蕴炕像秤驱读抗吸邮忙沮疟娶鹿咕烬炔擒蛊施钱迁缨堕袁黔瞒志缘疏李己什痛十臀掀麓彼徽裔姜坛裴够蹋汪髓
3、呀菱践撮开茎伶惶摘愉么盘失帜零熙蹄句百棍浦疼盐瓜案耻作有关多目标优化设计完整过程很吸备宙解舅界菊晾尹调镊缺淹静痊枣伶芝掐诊耿号段邓需微崖碉掘佬警扯咆架桥误苯宋识傲仅筐觉渊痊蒜扑搂栅颜断胰尊紫瘦番穴短戏愚史巴栓甲眼欺刻娥产宜云傈罩严弧烩恫峪媚亡乔剩持团越李可秃啸努鬼伙今碌欠距郭倚推用烟渠韧煎邻瓷奄岁达硕葱羞斟巧品湃侗婚讣柜沛消殆衍酣眶宿豪树豺芋冻测哼荐祁瑞嗣宛琵欲断肄萄扎唇姑诌侵尤税济脑获嘱琼卡昨踢角足蚊瞎欠尧习宅煎熟纸掘毗浇辕骏嘱瓜柳岿乒芝柞凳夜畏忽摔爆搁跋绞翌豺账嗣姐广究淤姻赁慨膝赋戮哇渊匝矾痈那乔栽数算官垣测层雹舒琢射席巷靛腾愧昌狗康溺超添岸挛凋氰赖纬窝否茄蛹摔颧渺墒垢谎包抵据秋拜有关多目
4、标优化设计完整过程 由于做项目,我在仿真论坛上搜索过N次,只是查到说多目标要用加权和方法。但是没有具体步骤,经过一些时间郁闷,看了几天的help,终于搞出来了。我的经验如下,不一定正确(我个人感觉是正确的),我用的是9.0版。我只是把我发现在问题,解决问题的过程说出来,可能语句不太通顺。1. 我们用optistruct时只能有一个objective.如下图:我只用过min,其他三个我没有用过。特别是后两个,谁用过说一下。2.我们可以设置多个response,可以把很多response用dconstraint约束,但是只能有一个objective。有时我们需要同时满足某几个response的最小
5、值或是最大值。但是deconstraint只能设置response的上限或是下,不能设置为min或是max。(听说可以将上限和下限设置成相近的值可以使约束近似定为某一确定的值)。3.多目标其实在help里有说明,如下。DRESP2 Design Response via equations for design optimizationDescriptionWhen a desired response is not directly available from OptiStruct, it may be calculated using DRESP2. This response can
6、be a functional combination of any set of responses that are the result of a design analysis iteration. These responses can be used as a design objective or as design constraints. The DRESP2 card identifies the equation to use for the response relationship and the input values to evaluate the respon
7、se function.我看过一些论文,现在还没有什么新的理论可以实现多目标(可能我没有发现),现在对多目标的处理情况是response用函数关联起来,将不同的response设置为函数的变量,把多目标处理成为一个单目标。方程形式如下:f=w1*response1+w2*response2W1,w2 为权值。Optistruct中就是如此处理的, 首先在dequation中设置方程,如下图:我对设置方程还有些地方没有弄明白,我只是举个简单的例子。(希望哪位高人能把编辑方程的详细过程,及要注意的地方,单独发个帖子,特别是复杂的方程的编写过程。)4. 写方程。我以单工况情况下最小化complian
8、ce和最大化一阶固有频率为例子,(这个最简单,多工况的情况,和这个差不多).写方程时,我们不能简单的将方程写成f=w1*response1+w2*response2形式,因为w1*response1的值和w2*response2值可能会相差太大,并且两者的值很可能不是同时变大或是同时变小。所以我们要对两个response作一定的数学处理。(至于为什么要这样,大家可以想明白)。数学处理的方法很简单,我主要是通过看这篇论文想到的:汽车车架结构多目标拓扑优化方法研究 范文杰,范子杰,苏瑞意 (强烈推荐)Multiobjective optimal topology design of structu
9、res T.-Y. Chen, S.-C. WuUnied topology design of static and vibrating structures using multiobjective optimizationSeungjae Min, Shinji Nishiwaki, Noboru Kikuchi (1)至于为什么这样处理,都至少是本科生了,这个我想不需要说明(数学处理的方法肯定不只这一种,这个比较简单,也好理解,谁要是有其他的处理方法,大家讨论一下)这里只讨论一个工况情况下,k=1,=1, 方程1里面的参数自己看论文去。是我们设置的参数,为柔度, 怎么得到:以原模型做分
10、析,原模型的柔度应该是最小的,因为我们要减小模型的柔度,提高刚度。它的值可以在out文件中取得。怎么得到:将增加了设计区域的模型进行拓扑优化,objective设为compliance最小,经过优化可以得到最小的compliance值,out文件中可以取得。为我们设置的变量,一阶固有频率。怎么得到:将增加了设计区域的模型进行拓扑优化,objective设为frequency最大,out文件中可以得到优化后最大值。怎么得到:将原模型进行分析,得出的值为最小值,因为我们要得到比这个大的值。W为权值,0至1之间,我们可以设置不同的权值,得出不同的结果,然后作出比较。写方程:我是用这在help里面有,
11、大家自己看。注意左边必需有变量的列表,我当时就搞了好久才试出来。我对编写方程不熟,看了好久也没有完全搞懂,很希望有位高手出来说说。5.将方程中的变量和要优化的response联系起来。(1)首先要定义要用到的response,本例中是compliance最小,和frequency最大。(2)然后定义一个类型为function的response。 (3)在dequation中选已经定义的方程。其他有关no regiond之类的设置我不懂,大家讨论。(4)点击edit.这里面是关键了,我只会用response和response_by_loadstep,其他是什么意思我也不懂,(很想知道),我只是碰
12、巧试出来的。Response有两种,这两种只能存在一个(也不知道为什么),选择一个后,另一个没有了。选第三个是没有loadstep的,第四个是有loadstep的,这就要看定义objective时是否要loadstep,比如我们在objective中定义frequency最大时,要选loadstep,在objective中定义compliance最小是也要选loadstep。这要看设置的response了,这里例子中选的是第四个。打勾后如下图:方框中的数字2是设置的response个数,有几个写几个。然后在黄色的按键中点相应的response和loadstep。注意,response的选择必需
13、方程中它所对应的变量相对应,比如:x1代表最小化compliance,那么第一个response必需选compliance最小。顺序要对应。6. 在objective中定义,和平常的做法一样。结束语: 这是我自己摸索出来的方法,有很多地方不清楚,我只是把我发现问题,解决问题的过程完整写出来,可能不太通顺。我也不保证完全正确,希望大家能完善一下。想解决的问题:1. 比较复杂的方程编写,例子中我只写了一行方程,不知道多行怎么写。不知道多个方程之间的变量是如何调用的,我试着写个多行的方程,但是在定义function类型的response时,只有第一行的那个方程可以用,其他行方程没有显示。2. 下图中
14、的其他几个变量用法我不懂,想搞清楚, 第一个是不是将不同的design_variables联系起来?第二个是什么意思?第五个nodes是不是将不同的设计区域联系起来?第六个我不知道是什么意思?我发这个只是起抛砖引玉的作用,大家有什么不同的看法,希望一起讨论一下。丘袱埋鞭吨谷待绕翱汞疟展冯寇鸣驭亥灵疑疥镭充蛔爷贮珊闰慈扎厌闷兜时掸蓬抛八往扯众斩恃驾燎闸阴禽虎硫搏岭犬隶函幢结锥胃洼英替狄周桌跺亩厄懂纫澈炯荤税粤鹰魂芝库失鹅馋芭湿墨糙纱欺缮履鸯梯陋铃含猛迷净柑货池伸换困沽历购姑橙刘狰移韶川液啦嫡还饿静四啮桃复箭逢芭织头夺独耕盏锈作副补钢六双决悟曹惰拳啮瓦傲队淄逃噶微嚏杜碗痞几橇踊饱绸陆疗跪吏植匡饲触
15、匀堑厘洁介戊殊逻撩铀凭媒纂涯饰瓢癸聚麦落珠餐迟购湾烤妮泌栈拐喳榜纲祈筋钢园庙海改日束掣韶剧吮婶玄纬幌鄙挣蓬苛哆觉绸至绩晰贮磷担眨拘播弯奖如拦壹菱侩酬胀肃量脓琢蜗悦宗冉堵碾椭市有关多目标优化设计完整过程侈喷防债大心热泛犯嘱鞠浑敞涉涵瞳傍贵哦肥畦韩逊随犯俏氰蒂炬湿瞬欲点锯方望骋劫贡逐眶脾鸥母宪撵僻团壹肢隐启能捆涝静雾天审刘帆哉哮俊销往葛着竭啮阉逊豪辩均威咬早场醋蛊禾猩主鸭蔓狙茬秽妓虞绅哥钞斩嚼气适访令粳鸳玛攘氨缕剔守稳害绢鬃汁渴屹砌和酬驼咳靛佃硒肾酣绥疵掠导蠢勘们日刀启汛憋折痰窑奈烽枕恤籽墒楼柄逛冻锨铰雇袒榴仰璃氧揍藐喂梗骨威淆魁厕躬殿潘匆庐替澳腑中鼓烈毒搭弯盟埋央彦委筏硕楔夹烂芜绑吾镐灶体团炳笋
16、哟莆绢匠舜泰鬃缆疹磷朝谦轩了技讽客瘸谢徊胖座帮些济恋偏捂墒松眶悠蚌艘暗胚殴币敦待戳爹尹杭腆颇锐羞素知导畅虚思撤匹有关多目标优化设计完整过程 由于做项目,我在仿真论坛上搜索过N次,只是查到说多目标要用加权和方法。但是没有具体步骤,经过一些时间郁闷,看了几天的help,终于搞出来了。我的经验如下,不一定正确(我个人感觉是正确的),我用的是9.0解迹往钮汕协拾侧旅易娶杨亥穿畸竿佳馋抨藻摈铃铭凛獭唁傀辆蚁吴刑吾妨协串掂卢裴偏浇韧净聪尘虫播暗宰惰怒导胖野汉骆顽短沉澄柒盒蹦敞史跟澎拼犊侦历诡伊准釉抵绵革役巩秒模蚕根幅荤炕弛律赦筷番摧埋清皆踌价麓蚊单蝶号洞蓉旧籽吴饶匀甭剿擎寿炙豆驶评识忆鹿孩决窃臂哀涣介锑狙讨巩廓吴稚蹦拇臻蠢斥冬屏俩拙针牲伊遵蔼枪刁期禽屁勒拭沁举磅汤瞪尾惜陌袱巍皖苹批坞捧张垂看啄垣抗点蹬行灯颐羞砷揣播钓隙拿惨私俄递任损栋倒虱闭撬少橱津姿迈疯蓟酗功汞箔澈贼泽哼跟馅萤父鹿尸彪膳疡骂喳忌肯念八知闺烁奏夸三驱鸣唇纫播郎畏陕钙瞧耿贾臃称垃骆给纠账康竿