第十章优化教程文件
- 格式:doc
- 大小:213.50 KB
- 文档页数:36
第10章 ADAMS参数化建模及优化设计机械系统动力学分析及ADAMS应用本章将通过一个具体的工程实例,介绍ADAMS/View的参数化建模以及ADAMS/View 提供的3种类型的参数化分析方法:设计研究(Design study)、试验设计(Design of Experiments, DOE)和优化分析(Optimization)。
其中DOE是通过ADAMS/Insight来完成,设计研究和优化分析在ADAMS/View中完成。
通过本章学习,可以初步了解ADAMS参数化建模和优化的功能。
10.1 ADAMS参数化建模简介ADAMS提供了强大的参数化建模功能。
在建立模型时,根据分析需要,确定相关的关键变量,并将这些关键变量设置为可以改变的设计变量。
在分析时,只需要改变这些设计变量值的大小,虚拟样机模型自动得到更新。
如果,需要仿真根据事先确定好的参数进行,可以由程序预先设置好一系列可变的参数,ADAMS自动进行系列仿真,以便于观察不同参数值下样机性能的变化。
进行参数化建模时,确定好影响样机性能的关键输入值后,ADAMS/View提供了4种参数化的方法:(1)参数化点坐标在建模过程中,点坐标用于几何形体、约束点位置和驱动的位置。
点坐标参数化时,修改点坐标值,与参数化点相关联的对象都得以自动修改。
(2)使用设计变量通过使用设计变量,可以方便的修改模型中的已被设置为设计变量的对象。
例如,我们可以将连杆的长度或弹簧的刚度设置为设计变量。
当设计变量的参数值发生改变时,与设计变量相关联的对象的属性也得到更新。
(3)参数化运动方式通过参数化运动方式,可以方便的指定模型的运动方式和轨迹。
(4)使用参数表达式使用参数表达式是模型参数化的最基本的一种参数化途径。
当以上三种方法不能表达对象间的复杂关系时,可以通过参数表达式来进行参数化。
参数化的模型可以使用户方便的修改模型而不用考虑模型内部之间的关联变动,而且可以达到对模型优化的目的。
SEO搜索优化教程和实操手册第1章 SEO基础概念 (4)1.1 网站优化的重要性 (4)1.2 搜索引擎工作原理 (5)1.3 关键词研究与选择 (5)1.4 网站结构优化 (5)第2章网站关键词策略 (6)2.1 关键词布局 (6)2.1.1 关键词分类 (6)2.1.2 网站结构布局 (6)2.1.3 关键词位置 (6)2.2 长尾关键词挖掘 (6)2.2.1 搜索建议 (6)2.2.2 竞争对手分析 (7)2.2.3 问答平台 (7)2.2.4 关键词工具 (7)2.3 关键词密度与优化 (7)2.3.1 关键词密度计算 (7)2.3.2 优化建议 (7)2.4 竞争对手分析 (7)2.4.1 关键词分析 (7)2.4.2 网站结构分析 (7)2.4.3 外链分析 (7)2.4.4 内容分析 (8)第3章网站技术优化 (8)3.1 网站速度优化 (8)3.1.1 优化网页加载时间 (8)3.1.2 优化服务器响应时间 (8)3.1.3 优化资源加载 (8)3.2 网站移动端优化 (8)3.2.1 响应式设计 (8)3.2.2 优化触摸体验 (8)3.2.3 移动端页面加载速度 (8)3.3 网站URL优化 (9)3.3.1 简洁明了的URL结构 (9)3.3.2 URL层级优化 (9)3.3.3 URL唯一性 (9)3.4 网站图片优化 (9)3.4.1 图片压缩和格式优化 (9)3.4.2 图片尺寸优化 (9)3.4.3 图片alt标签和属性 (9)3.4.4 图片懒加载 (9)4.1 高质量内容创作 (10)4.1.1 了解目标用户群体 (10)4.1.2 关键词研究 (10)4.1.3 文章结构优化 (10)4.1.4 内容丰富性 (10)4.1.5 专业性 (10)4.2 内容更新频率 (10)4.2.1 制定内容更新计划 (10)4.2.2 保持更新频率 (10)4.2.3 更新策略调整 (10)4.3 内容原创性检测 (10)4.3.1 原创性检测工具 (10)4.3.2 人工审核 (10)4.3.3 避免过度优化 (11)4.4 用户体验优化 (11)4.4.1 网站速度优化 (11)4.4.2 移动端优化 (11)4.4.3 导航优化 (11)4.4.4 内部策略 (11)4.4.5 互动性提升 (11)第5章网站内链与外链策略 (11)5.1 内链优化策略 (11)5.1.1 合理规划网站结构 (11)5.1.2 关键词锚文本多样化 (11)5.1.3 优化导航及次导航 (11)5.1.4 适当使用面包屑导航 (11)5.1.5 合理布局锚文本位置 (12)5.2 外链建设方法 (12)5.2.1 高质量内容创作 (12)5.2.2 合作伙伴互换 (12)5.2.3 社交媒体推广 (12)5.2.4 论坛和博客参与 (12)5.2.5 问答平台解答问题 (12)5.3 避免外链作弊 (12)5.3.1 买卖 (12)5.3.2 私藏 (12)5.3.3 大量垃圾外链 (12)5.3.4 农场 (13)5.4 评估外链质量 (13)5.4.1 外链来源网站权重 (13)5.4.2 外链锚文本相关性 (13)5.4.3 外链页面内容质量 (13)5.4.4 外链增长速度 (13)6.1 社交媒体营销策略 (13)6.2 社交分享按钮设置 (13)6.3 社交媒体内容优化 (13)6.4 社交媒体影响力提升 (14)第7章本地SEO优化 (14)7.1 本地关键词策略 (14)7.1.1 关键词研究 (14)7.1.2 关键词布局 (14)7.1.3 本地关键词优化技巧 (14)7.2 Google我的商家优化 (14)7.2.1 注册和验证 (14)7.2.2 商家信息优化 (15)7.2.3 用户评价和互动 (15)7.3 本地评价与问答 (15)7.3.1 本地评价优化 (15)7.3.2 本地问答优化 (15)7.4 移动端本地搜索优化 (15)7.4.1 移动端网站优化 (15)7.4.2 本地搜索广告优化 (15)7.4.3 移动端本地应用推广 (16)第8章 SEO监控与分析 (16)8.1 网站数据分析工具 (16)8.1.1 Google Analytics (16)8.1.2 百度统计 (16)8.1.3 搜狗分析 (16)8.2 网站流量分析 (16)8.2.1 流量来源 (16)8.2.2 用户行为 (17)8.2.3 转化跟踪 (17)8.3 关键词排名监控 (17)8.3.1 选择关键词 (17)8.3.2 监控工具 (17)8.3.3 排名分析 (17)8.4 网站优化效果评估 (17)8.4.1 流量增长 (17)8.4.2 关键词排名提升 (17)8.4.3 转化率提高 (17)第9章 SEO作弊与惩罚 (17)9.1 常见SEO作弊手段 (18)9.1.1 关键词堆砌 (18)9.1.2 隐藏文本 (18)9.1.3 买卖 (18)9.1.4 刷 (18)9.1.5 快速获取外链 (18)9.2 搜索引擎惩罚原因 (18)9.2.1 违反搜索引擎指南 (18)9.2.2 用户体验受损 (18)9.2.3 内容质量低下 (18)9.2.4 网站结构混乱 (18)9.3 避免SEO作弊策略 (18)9.3.1 严格遵守搜索引擎指南 (19)9.3.2 提高内容质量 (19)9.3.3 优化网站结构 (19)9.3.4 诚信获取外链 (19)9.4 惩罚后的恢复方法 (19)9.4.1 立即停止作弊行为 (19)9.4.2 提交整改报告 (19)9.4.3 优化网站内容 (19)9.4.4 积极拓展外链 (19)9.4.5 关注用户反馈 (19)第10章 SEO实战案例分析 (19)10.1 成功案例解析 (19)10.1.1 案例背景 (19)10.1.2 优化策略 (19)10.1.3 优化成果 (20)10.2 失败案例反思 (20)10.2.1 案例背景 (20)10.2.2 问题分析 (20)10.2.3 教训总结 (20)10.3 行业SEO策略分析 (21)10.3.1 教育行业特点 (21)10.3.2 优化策略 (21)10.4 SEO优化实战经验分享 (21)第1章 SEO基础概念1.1 网站优化的重要性在互联网高速发展的时代,信息量呈现出爆炸式增长。
win10最详细优化设置win10全面优化教程win10最详细优化设置,win10全面优化教程。
部分win10用户升级win10后发现,win10并没想象中顺畅,反而很占资源。
其实,这是因为用户没有将系统win10优化。
进一步优化windows10,会让Win10在流畅的基础上变得更流畅一些。
接下来我系统天地小编就带大家来了解win10最详细优化设置,请看win10全面优化教程详细内容。
虽然win10与之前版本相比,Win10在底层性能上已经是非常不错的了,但毕竟要照顾不同的使用人群,因此它的很多项目还是偏向于保守和大众化的。
其实每个人使用Win10的目的都不同,有选择性地关闭一些服务,就可以让Win10跑得更快!win10全面优化教程:1、关闭Windows Search会在后台偷偷查户口服务WindowsSearch禁用。
控制面板–管理工具–服务- Windows Search禁用,但windows firewall (windows防火墙服务)千万不能停用。
可在控制面板里面的防火墙的“高级设置”里面的“属性”把“域配置文件”、“专用配置文件”、“公用配置文件”的状态改成关闭,这样就可以在不禁用防火墙服务的情况下关闭防火墙。
3、关闭讨厌的第三方软件服务项Win+ R输入“msconfig”→确定,运行系统配置→勾选隐藏所有的Microsoft服务去掉不需要执行的服务。
4、关闭性能特效(配置不好的机器可以关闭)系统属性》高级》性能》设置》关闭淡出淡入效果。
运行文件夹,系统之家,小软件很快的。
5、清理产生的Windows.old文件夹(针对直接升级的系统)方案1:快捷键Win+X命令提示符,输入rd X:windows.old /s(X 代表盘符)方案2(推荐):C盘右键》属性》磁盘清理,选中以前的Windows安装复选框,确定清理。
C盘–右键–属性-磁盘清理-选中以前的Windows 安装复选框–确定清理。
第10章具有约束方程的最优化10.1基本约束优化问题10.2 一阶必要条件10.3二阶充分条件10.4最优解的比较静态分析10.5 Lagrange 乘子的数学含义10.6目标函数最优值的比较静态分析10.1基本约束优化问题般标准的极大化问题:max f (人,乂2,川,乂" 或者:max f (x)s.tg(X1,X2,ill,X n)乞b j s.t g(x)乞bh j(X1,X2」li,X n)二a i h(x)工a一般标准的极小化问题:min f (石公2」||风) 或者:min f (x) s.tg(X1,X2」ll,X n) - b j s.t g(x) - bh j(X1,X2,lli,X n)二a i h(x)二a10.2+10.3 :—阶必要条件和二阶充分条件1、等式约束优化问题(1 )两个变量一个等式约束的情形极大化问题:max f (x, y)s.t h(x, y) = c例:消费者的效用最大化问题maxU (x1, x2)s.t p/ + p2x2= I构造拉格朗日函数:L(x, y,)二f (x,y)- [h(x, y)- c] 二f (x, y) [c- h(x, y)]一阶必要条件:c- h(x,y)二0L x = f x - h x = 0L y 二f y - h y= 0注:通过将L视为三个选择变量的自由函数,将约束优化转化为了无约束优化。
拉格朗日乘数的解释:*是Z*(最优值)对约束变化敏感性的度量。
特别的,c增加(预算增加)的影响表明约束条件的放宽如何影响最优解。
设:根据一阶必要条件得到的最优解为*,X*,y*,贝,*,x*, y*满足:L = c _ h(x*, y*)二0L x = f x(x*, y*r * h x(x*, y*)二0L厂f y(x*, y*) - *h y(x*, y*) = 0最优值为:L* 二f (x*, y*) *[ c- h(x*, y*)]由三个必要条件,可以确定:X* = x*( c), y*二y*(c)因此,L*对c的导数:dL * dx * dy * d *丁二f xL f y-^ ux *y, *-)+dc dc dc dcJi 一hx^-h y 竽)dc dc= (f x- *h x)乎(f y- *h y)d y* dc dc弘*[c- h(x*, y*)] *dc=■ *结论:拉格朗日乘数的解值是由参数c引起的约束条件变化对目标函数最优值影响的度量。
第十章 优化 知识结构: 概述 基本块的划分 局部优化 基本块的DAG表示 DAG的应用 优化 程序流图 循环优化 循环优化 数据流分析 第一节 概述 一、优化的原则 1、等价原则 经过优化后不应改变程序运行的结果。 2、有效原则 使优化后生成的目标代码运行的时间较短,占用的存储空间较小。 3、合算原则 应尽可能以较低的代价取得较好的优化效果。 二、优化的分类 1、与计算机无关的优化 是在中间代码级上不依赖具体计算机的优化。只注重于程序的结构,对程序流程进行有效性、等价性的处理。 ⑴ 局部优化 对只有一个入口和一个出口,并且程序结构是顺序结构的程序段进行优化(基本块内的优化)。采用的技术: ① 合并已知量(编译时对常数直接进行运算); ② 消除多余运算(公共子表达式); ③ 消除无用赋值(无用代码)。 ⑵ 循环优化 对循环语句产生的中间代码进行优化。采用的技术: ① 代码外提(循环不变运算的外提); ② 强度消弱; ③ 删除归纳变量(循环控制条件的改变)。 ⑶ 全局优化 非线性程序段上(包含多个基本块)的优化,需要分析程序控制流、数据流。 2、依赖计算机的优化 依赖具体计算机的硬件环境,在生成目标代码时进行优化。 三、中间代码优化技术的概述 例:求两个数组积的Pascal程序段 PROD := 0; For I:=1 to 20 do PROD := PROD+ A[I]*B[I] 其中:数组元素按字节编写地址;每个元素占4个字节。 ⑴ 数组元素地址为 addr(A)+(I-1)*4=addr(A)-4+4*I 四元式中间代码为: B1
B2
⑵ 删除公共子表达式 某些运算在程序段中多次出现,而在相继两次出现之间又没有改变其运算的结果,优化时只是引用结果。 如: ⑶ T1:=4*I ┆ …无对I重新赋值 ⑹ T4:=4*I 优化后为T4=T1。
⑶ 代码外提 对于运算结果在循环重复执行的过程中是不变的,将其运行代码提到循环体外执行一次。 如:⑷ T2:=addr(A)-4 ⑺ T5:=addr(B)-4
(3)T1:=4*I (4)T2 := addr(A)-4 (5)T3 := T2[T1] (6)T4 := 4*I (7)T5 := addr(B)-4 (8)T6 := T5[T4] (9)T7 := T3 *T6 (10)PROD := PROD+T7
(11)I := I+1
(12)if I≤20 goto(3)
(1)PROD := 0 (2)I := 1 把⑷⑺从循环内B2提到循环外 B1 中。 B1
B2
⑷ 削弱强度 把乘法运算用加法运算(加减法运算速度快)。
如:I:=1,T1:=4*I(初值),⑶T1:=4*I 改为 T1:=T1+4 B1
B2
(1)PROD := 0 (2)I := 1 (4)T2 := addr(A)-4 (7)T5 := addr(B)-4
(3)T1::= 4*I (5)T3 := T2[T1] (6)T4: := T1 (8)T6 := T5[T4] (9)T7 := T3.*T6 (10)PROD:=PROD+T7
(11)I := I+1
(12)if I≤20 goto(3)
(1)PROD := 0 (2)I := 1 (4)T2 := addr(A)-4 (7)T5 := addr(B)-4 (3) T1:=4*I
(5)T3 := T2[T1] (6)T4: := T1 (8)T6 := T5[T4] (9)T7 := T3.*T6 (10)PROD:=PROD+T7
(11)I := I+1
(3’) T1 := T1 +4 (12)if I≤20 goto(3) ⑸ 删除归纳变量(变换控制条件) 控制变量和某些计算随着循环的重复执行保持同步变化,利用计值结果作为控制变量。 如:T1:=4*I(T1与I存在线性关系),用T1作为控制条件。 ⑿ if I≤20 goto (5)优化后if T1≤80 goto(5)。 ⑹ 合并已知量 编译时已知的运算量在编译时计算出来。 如:⑵I:=1,⑶T1:=4*I(已知量)优化后为T1:=4。 ⑺ 复写传播 两个不同的运算对象,在相继出现之间结果相同,采用替换方式,如:⑹T4:=T1,⑻T6:=T5[T4]优化后为⑻T6:=T5[T1]。 B1
B2
⑻ 删除无用赋值
(1)PROD := 0 (2)I := 1 (4)T2 := addr(A)-4(7)T5:= addr(B)-4 (3) T1 := 4
(5)T3 := T2[T1] (6)T4 := T1 (8)T6 := T5[T1] (9)T7 := T3.*T6 (10)PROD := PROD+T7
(11)I := I+1
(3’) T1 := T1 +4 (12)if: T1≤80 goto(5) 删除在程序运行中没有任何作用的代码。 如:⑵、⑹、⑾均为无用赋值(删除)。 B1
B2
四、诊断编译程序和优化编译程序 优化编译程序: 着重于提高目标代码效率的编译程序称优化编译程序。优化需要花费大量编译时间,若一个简单编译程序只需实现基本翻译功能,那么该编译程序可以不需要优化部分。 诊断编译程序: 专门用于帮助程序开发和调试的编译程序称诊断编译程序, 该编译程序一般不包含优化部分。 第二节 局部优化 对一个给定的程序,把它划分为一系列的基本块。在各个基本块范围内,分别进行优化。局限于基本块范围内的优化称为基本块内的优化(或称为局部优化)。
(1)PROD := 0 (4)T2 := addr(A)-4(7)T5:= addr(B)-4 (3) T1 := 4
(5)T3 := T2[T1] (8)T6 := T5[T4] (9)T7 := T3*T6 (10)PROD := PROD+T7
(3’) T1 := T1 +4
(12)if: T1≤80 goto(5) 一、基本块及其流图 1、基本块 ⑴ 是指程序中一个顺序执行的语句序列。 ⑵ 其中只有一个入口和一个出口,入口就是其中的第一个语句,出口就是其中的最后一个语句。 ⑶ 对一个基本块来说,执行时只能从其入口进入,从其出口退出。 例 一个基本块的三地址语句序列: T1:=a*b T2:=a*b T3:=2*T2
T4:=T1+T2
T5:=b*b
T6:=T4+T5 2、划分基本块的算法
⑴ 求出四元式程序中各个基本块的入口语句。 ① 程序的第一个语句; ② 能由条件转移语句或无条件转移语句转移到的语句; ③ 紧跟在条件转移语句后面的语句。 ⑵ 对每一入口语句,构造其所属的基本块。它是由该入口语句到另一入口语句(不包括该入口语句),或到一转移语句(包括该转移语句),或到一停语句(包括该停语句)之间的语句序列组成的。 ⑶ 凡未被纳入某一基本块中的语句,都是程序中控制流程无法到达的语句,从而也是不会被执行到的语句,把它们从程序中删除。 例 考察下列三地址代码程序 求最大公因子程序: (1) •read X (2) read Y (3) •R:=X mod Y (4) if R=0 goto(8) (5) •X:=Y (6) Y:=R (7) goto (3) (8) •write Y (9) halt 程序流图:
B1 B2 B3 B4
程序流图是以每个基本块为一个结点,B1到B2构造有向边: ①B2紧跟在B1之后,并且B1的最后一条语句不是一条无条件转移语句; ②有一个条件转移语句或无条件转移语句从B1的最后一条
(1) read X (2) read Y
(3) R := X mod Y (4) if R=0 goto (8)
(5) X := Y (6) Y := R (7) goto (3) (8) write Y (9) halt 语句转移到B2的第一条语句。 注意: 程序流图与程序流程图不同,上例程序流程图如下:
no yes
二、基本块内的优化(利用DAG图优化) 1、删除公共子表达式 T1:=4*I T4:=4*I 优化后为 T4:= T1 2、删除无用赋值 R := X (无用赋值,优化后删除) A :=B+C R := Y R:=R (无用赋值,优化后删除) 无用赋值的规定:
① 对变量R赋值后,R的值不在被引用; ② 对变量R赋值后,R的值在被引用前又被重新赋值; ③ 对变量R进行递归赋值,R的值仅在递归赋值时被引用。
read X; read Y
R:=X mod Y R=0? X:=Y; Y:=R write Y halt