
线性代数的应用论文
:代数的应用与心得体会班级:姓名:学:指导老师:完成时间:2014年10月20日目摘要】2【关键词】2一、线性代数被广泛运用的原因2二、线性代数在实际中的应用21.用二阶行列式求平行四边形面积,用三阶行列式求平行六面面体22.希尔密码23.在人们平常日常生活的应用——减肥配方的实现34、在城市人们出行的应用——交通流的分析45、马尔可夫链56、在人口迁移的应用人口迁徙模型6三、心得与体会7【摘要】我们对线性代数的了解大概是,线性代数理论有着悠久的历史和丰富的内容,还有其主要知识:矩阵、方程组和向量;我们也应该了解其在众多的科学技术领域和实际生活中的应用都十分广泛。
下面就是看一些具体实例应用,和一些心得体会。
【关键词】线性代数;实际生活;应用实例;心得体会;。
一、线性代数被广泛运用的原因为什么线性代数得到广泛运用,也就是说,为什么在实际的科学研究中解线性方程组是经常的事,而并非解非线性方程组是经常的事呢
原因之一,大自然的许多现象恰好是线性变化的,研究的是单个变量之间的关系。
例如我们高中学过的物理学科中,物理可以分为机械运动、电运动、还有量子力学的运动。
而比较重要的机械运动的基本方程是牛顿第二定律,即物体的加速度同它所受到的力成正比,其实这又恰恰符合基本的线性微分方
计量经济学中DW统计量是什么意思
在N多模型检验中,DW统计量的结果反映什么问题,求简单明了的解释
并行遗传算法及其应用1、遗传算法(GA)概述GA是一类基于自然选择和遗传学原理的有效搜索方法,它从一个种群开始,利用选择、交叉、变异等遗传算子对种群进行不断进化,最后得到全局最优解。
生物遗传物质的主要载体是染色体,在GA中同样将问题的求解表示成“染色体Chromosome”,通常是二进制字符串表示,其本身不一定是解。
首先,随机产生一定数据的初始染色体,这些随机产生的染色体组成一个种群(Population),种群中染色体的数目称为种群的大小或者种群规模。
第二:用适值度函数来评价每一个染色体的优劣,即染色体对环境的适应程度,用来作为以后遗传操作的依据。
第三:进行选择(Selection),选择过程的目的是为了从当前种群中选出优良的染色体,通过选择过程,产生一个新的种群。
第四:对这个新的种群进行交叉操作,变异操作。
交叉、变异操作的目的是挖掘种群中个体的多样性,避免有可能陷入局部解。
经过上述运算产生的染色体称为后代。
最后,对新的种群(即后代)重复进行选择、交叉和变异操作,经过给定次数的迭代处理以后,把最好的染色体作为优化问题的最优解。
GA通常包含5个基本要素:1、参数编码:GA是采用问题参数的编码集进行工作的,而不是采用问题参数本身,通常选择二进制编码。
2、初始种群设定:GA随机产生一个由N个染色体组成的初始种群(Population),也可根据一定的限制条件来产生。
种群规模是指种群中所含染色体的数目。
3、适值度函数的设定:适值度函数是用来区分种群中个体好坏的标准,是进行选择的唯一依据。
目前主要通过目标函数映射成适值度函数。
4、遗传操作设计:遗传算子是模拟生物基因遗传的操作,遗传操作的任务是对种群的个体按照它们对环境的适应的程度施加一定的算子,从而实现优胜劣汰的进化过程。
遗传基本算子包括:选择算子,交叉算子,变异算子和其他高级遗传算子。
5、控制参数设定:在GA的应用中,要首先给定一组控制参数:种群规模,杂交率,变异率,进化代数等。
GA的优点是擅长全局搜索,一般来说,对于中小规模的应用问题,能够在许可的范围内获得满意解,对于大规模或超大规模的多变量求解任务则性能较差。
另外,GA本身不要求对优化问题的性质做一些深入的数学分析,从而对那些不太熟悉数学理论和算法的使用者来说,无疑是方便的。
2、遗传算法的运行机理:对GA运行机理的解释有两类: 一是传统的模式理论;二是1990 年以后发展起来的有限状态马尔可夫链模型。
(1)模式理论:由Holland创建,主要包括模式定理,隐并行性原理和积木块假说三部分。
模式是可行域中某些特定位取固定值的所有编码的集合。
模式理论认为遗传算法实质上是模式的运算,编码的字母表越短,算法处理一代种群时隐含处理的模式就越多。
当算法采用二进制编码时,效率最高,处理规模为N的一代种群时,可同时处理O(N3)个模式。
遗传算法这种以计算少量编码适应度而处理大量模式的性质称为隐并行性。
模式理论还指出,目标函数通常满足积木块假说,即阶数高,长度长,平均适应度高的模式可以由阶数低,长度短,平均适应度高的模式(积木块)在遗传算子的作用下,接合而生成。
而不满足积木块假说的优化问题被称为骗问题(deceptive problem)。
模式理论为遗传算法构造了一条通过在种群中不断积累、拼接积木块以达到全局最优解的寻优之路。
但近十多年的研究,特别是实数编码遗传算法的广泛应用表明,上述理论与事实不符。
(2)有限状态马尔可夫链模型:由于模式理论的种种缺陷,研究者开始尝试利用有限状态马尔可夫链模型研究遗传算法的运行过程。
对于遗传算法可以解决的优化问题,问题的可行域都是由有限个点组成的,即便是参数可以连续取值的问题,实际上搜索空间也是以要求精度为单位的离散空间,因此遗传算法的实际运行过程可以用有限状态马尔可夫链的状态转移过程建模和描述。
对于有 m 个可行解的目标函数和种群规模为N的遗传算法,N 个个体共有 种组合,相应的马尔可夫模型也有 个状态。
实际优化问题的可行解数量 m 和种群规模 N 都十分可观,马尔可夫模型的状态数几乎为天文数字,因此利用精确的马尔可夫模型计算种群的状态分布是不可能的。
为了换取模型的可执行性,必须对实际模型采取近似简化,保持算法的实际形态,通过对目标函数建模,简化目标函数结构实现模型的可执行性。
遗传算法优化的过程,可以看作算法在循环过程中不断对可行域进行随机抽样,利用前面抽样的结果对目标点的概率分布进行估计,然后根据估计出的分布推算下一次的抽样点。
马尔可夫模型认为遗传算法是通过对搜索空间不同区域的抽样,来估计不同区域的适应度,进而估计最优解存在于不同区域的概率,以调整算法对不同区域的抽样密度和搜索力度,进而不断提高对最优解估计的准确程度。
可见,以邻域结构为依据划分等价类的马尔可夫模型更符合实际,对问题的抽象更能体现优化问题的本质。
3、并行遗传算法(PGA)虽然在许多领域成功地应用遗传算法,通常能在合理的时间内找到满意解,但随着求解问题的复杂性及难度的增加,提高GA的运行速度便显得尤为突出,采用并行遗传算法(PGA)是提高搜索效率的方法之一。
由于GA从种群出发,所以具有天然的并行处理特性,非常适合于在大规模并行计算机上实现,而大规模并行计算机的日益普及,为PGA奠定了物质基础。
特别是GA中各个体适值计算可独立进行而彼此间无需任何通信,所以并行效率很高。
实现PGA,不仅要把串行GA等价地变换成一种并行方案,更重要的是要将GA的结构修改成易于并行化实现的形式,形成并行种群模型。
并行种群模型对传统GA的修改涉及到两个方面:一是要把串行GA的单一种群分成多个子种群,分而治之;二是要控制、管理子种群之间的信息交换。
不同的分治方法产生不同的PGA结构。
这种结构上的差异导致了不同的PGA模型:全局并行模型、粗粒度模型、细粒度模型和混合模型。
3、1全局PGA模型该模型又称主从PGA模型,它是串行GA的一种直接并行化方案,在计算机上以master-slave编程模式实现。
它只有一个种群,所有个体的适应度都根据整个种群的适应度计算,个体之间可以任意匹配,每个个体都有机会和其他个体杂交而竞争,因而在种群上所作的选择和匹配是全局的。
对于这个模型有多种实现方法:第一种方法是仅仅对适值度函数计算进行并行处理;第二种方法是对遗传算子进行并行处理。
全局模型易于实现,如果计算时间主要用在评价上,这是一种非常有效的并行化方法。
它最大的优点是简单,保留了串行GA 的搜索行为,因而可直接应用GA 的理论来预测一个具体问题能否映射到并行GA上求解。
对于适应度估值操作比其他遗传算子计算量大的多时,它是很有效的,并且不需要专门的计算机系统结构。
3、2粗粒度PGA模型该模型又称分布式、MIMD、岛模式遗传算法模型,它是对经典GAs 结构的扩展。
它将种群划分为多个子种群(又称区域),每个区域独自运行一个GA。
此时,区域选择取代了全局选择,配偶取自同一区域,子代与同一区域中的亲本竞争。
除了基本的遗传算子外,粗粒度模型引入了“迁移”算子,负责管理区域之间的个体交换。
在粗粒度模型的研究中,要解决的重要问题是参数选择,包括:迁移拓扑、迁移率、迁移周期等。
在种群划分成子种群(区域)后,要为种群指定某种迁移拓扑。
迁移拓扑确定了区域之间个体的迁移路径,迁移拓扑与特定的并行机结构有着内在的对应关系,大多采用类似于给定并行处理机的互连拓扑。
如果在顺序计算机上实现粗粒度模型,则可以考虑采用任意结构。
拓扑结构是影响PGA 性能的重要方面,也是迁移成本的主要因素。
区域之间的个体交换由两个参数控制:迁移率和迁移周期。
迁移基本上可以采用与匹配选择和生存选择相同的策略,迁移率常以绝对数或以子种群大小的百分比形式给出,典型的迁移率是子种群数目的10%到20%之间。
迁移周期决定了个体迁移的时间间隔,一般是隔几代(时期) 迁移一次,也可以在一代之后迁移。
通常,迁移率越高,则迁移周期就越长。
有的采用同步迁移方式,有的采用异步迁移方式。
迁移选择负责选出迁移个体,通常选择一个或几个最优个体,有的采用适应度比例或者排列比例选择来选择迁移个体,也有采用随机选取和替换的。
在大多数情况下,是把最差或者有限数目的最差个体替换掉.与迁移选择类似,可采用适应度比例或者排列比例选择,确定被替换的个体,以便对区域内部的较好个体产生选择压力。
基于国内的现状,分布式PGA为国内PGA研究的主要方向。
分布式PGA作为PGA的一种形式,一般实行粗粒度及全局级并行,各子种群间的相互关系较弱,主要靠一些几乎串行GA来加速搜索过程。
采用分布式PGA求解问题的一般步骤为:(1)将一个大种群划分为一些小的子种群,子种群的数目与硬件环境有关;(2)对这些子种群独立的进行串行GA操作,经过一定周期后,从每个种群中选择一部分个体迁移到另外的子种群。
对于个体迁移存在多种方法,第一种方法,在执行迁移操作时,每次从子种群中随机选择一部分染色体发送出去,接收的染色体数应该与发出的染色体相同。
第二种方法,在执行迁移操作时,首先在每个子种群内只使用选择而不使用其它遗传算子繁殖一些后代,这些后代的数目与迁移数相同。
然后再将这些后代的原子种群合并成一个大子种群并均匀随即地从该子种群中选择个体进行迁移。
这样,待迁移后子种群的规模便又恢复到正常状态。
而当子种群接收到从其他子种群迁移来的个体时则均匀随即地替换掉子种群内的个体。
第三种方法,将其中一个子种群设置为中心子种群,其他子种群与中心子种群通信。
中心子种群始终保持着整个种群中当前的最优个体,其他子种群通过“引进”中心子种群中的最优个体来引导其加快收敛速度,改善个体特征。
3、3 细粒度PGA模型该模型又称领域模型或SIMD PGA模型,对传统GA作了修改。
虽然细粒度模型也只有一个种群在进化,但在种群平面网格细胞上,将种群划分成了多个非常小的子种群(理想情况是每个处理单元上只有一个个体),子种群之间具有极强的通信能力,便于优良解传播到整个种群。
全局选择被领域选择取代,个体适应度的计算由局部领域中的个体决定,重组操作中的配偶出自同一领域,且子代同其同一领域的亲本竞争空间,即选择和重组只在网格中相邻个体之间进行。
细粒度模型要解决的主要问题是领域结构和选择策略。
领域结构既决定了种群中个体的空间位置,也确定了个体在种群中传播的路径。
领域结构主要受特定并行计算机的内存结构和通信结构影响。
领域拓扑确定一个个体的邻居,构成该个体的局部领域。
通常,只有一个拓扑的直接领域才属于其局部领域,若把某个固定步数内所能到达的所有个体也包含在内,则可以扩大领域半径。
在确定选择策略时,要考虑到选择压力的变化,而选择压力与领域结构有关。
与全局匹配选择类似,局部匹配选择可以采用局部适应度比例、排列比例选择,以及随机行走选择。
局部生存选择确定局部邻域中被替换的个体,如果子代自动替换邻域中心的那个个体,那么可以直接使用代替换作为局部生存策略。
3、4 混合PGA模型该模型又称为多层并行PGA模型,它结合不同PGA模型的特性,不仅染色体竞争求取最优解,而且在GA结构上也引入了竞争以提供更好的环境便于进化。
通常,混合PGA以层次结构组合,上层多采用粗粒度模型,下层既可采用粗粒度模型也可采用细粒度模型。
或者,种群可以按照粗粒度PGA模型分裂,迁移操作可以采用细粒度PGA模型。
3、5 四种模型的比较就现有的研究结果来看,很难分出各模型的高低。
在评价并行模型的差异时,有时还得深入到实现细节上,如问题的差异、种群大小、或者不同的局部搜索方法等。
但有一个结论是肯定的:不采用全局并行模型,而采用粗粒度模型或者细粒度模型通常能获得更好的性能。
粗粒度模型与细粒度模型孰优孰劣,尚是一个未知数。
目前,以粗粒度模型最为流行,因为一是其实现较容易,只需在串行GA中增加迁移子例程,在并行计算机的节点上各自运行一个副本,并定期交换几个个体即可;二是在没有并行计算机时,也可在网络或单机系统上模拟实现。
虽然并行GA能有效地求解许多困难的问题,也能在不同类型的并行计算机上有效地实现,但仍有一些基本的问题需要解决。
种群大小可能既影响大多数GA的性能,也决定GA找到解所需时间的主要因素。
在PGA中,另一个重要问题是如何降低通信开销,包括迁移率的确定,使得区域的行为象单个种群一样;确定通信拓扑,既能充分地组合优良解,又不导致过多的通信开销;能否找到一个最优的区域数等。
另外,对不同的应用问题,混合模型难以设定基本GA的参数,其节点的结构是动态变化的,它比粗粒度和细粒度模型更具有一般性,算法更为复杂,实现代价更高。
4、并行遗传算法的评价模型:并行遗传算法的性能主要体现在收敛速度和精度两个方面,它们除了与迁移策略有关,还与一些参数选取的合理性密切相关,如遗传代数、种群数目、种群规模、迁移率和迁移间隔。
利用Amdahl定律评价并行遗传算法,即绝对加速比(speedup) = Ts\\\/Tp,其中,Ts为串行遗传算法(单个处理器)的执行时间;Tp为并行遗传算法的执行时间。
Amdahl定律适用于负载固定的情况,对于并行遗传算法而言,就是适用于总种群规模不变的情况。
所以,Amdahl定律适用于主从式和细粒度模型,在适应度评价计算量较大时,主从式模型可以得到接近线性的加速比。
由于细粒度模型的应用较少,适用的SIMD并行机的可扩展性也不突出,所以很少有人评价细粒度模型的加速比。
利用Amdahl定律评价粗粒度模型时,需保持总的种群规模,即子种群数量和子种群规模成反比。
这种情况下粗粒度模型的加速比接近线性,这是由于粗粒度模型的通信开销和同步开销都不大。
5、实例:带约束并行多机调度5、1 问题描述最小化完工时间的带约束并行多机调度问题可描述如下:有 n 个相关的工件,m 台机器,每个工件都有确定的加工时间,且均可由 m 台机器中的任一台完成加工任务。
要找一个最小调度,即确定每台机器上加工的工件号顺序,使加工完所有工件所需时间最短。
算法关键在于:(1) 如何表示工件之间的关系。
可以把 n 个相关工件表示成一个后继图,如上图所示。
图中节点间的有向边表示工件之间的后继或编序关系。
因此,Ti →Tj 表示工件 Tj 在完成之后才能启动工件Ti。
显然对于 n 个相关工件,我们可以根据工件间的约束关系所表示成的后继图产生一符合约束条件的工件序列( a0,a1,…,ai,…,an-1) (0 ≤ai 例如,根据上图所示的后继图, 可产生工件序列(0,2,5,1,3,4,7,6,8),按该工件序列调度满足工件之间的约束关系。 (2) 如何表示问题的目标函数。 设t(j)为机器加工工件 j 所需时间,tb(i ,j) 为机器 i 加工工件 j 的最早时刻。 为了使GA算法解决问题方便,我们用x(i ,j) 表示工件 j 在机器 i 上是否加工,若x(i ,j) = 1,则表示工件 j 在机器 i 上加工;若x(i ,j) = 0,则表示工件 j 不在机器 i 上加工。 因而x(i ,j ) t (j) 为机器 i 加工工件 j 的实际加工时间。 问题的目标函数可表示为:minGms = min{max[ finish(0), finish(1), ...,finish(i), ..., finish (m - 1) ]}。 其中finish(i)表示第 i 台处理机加工分配的工件所需时间。 finish(i) = max{ x(0 , a0) [ tb(i, a0) + t(a0) ] ,x(1, a1) [ tb(i, a1) + t(a1) ], ..., x(n-1, an-1) [ tb(i, an-1) + t(an-1) ]}。 5、2 并行GA实现带约束并行多机调度问题的并行GA实现如下:(1) 产生一个进程(该进程为父进程,在进行串行GA的同时,用于存放和发送当前最优个体);(2) 由父进程产生m - 1 个子进程(每个子进程用于实现串行GA);(3) 各子进程(包括父进程)进行串行GA,当子进程中遗传代数(ge)被10整除,子进程发送最优个体至父进程;(4) 父进程选择当前各子进程中最优个体(molist),发送给各子进程;(5) 各子进程把molist替换各子进程当前代种群中适应值最低个体;(6) 若ge = gmax (gmax为设定最大繁殖代数),转第(7)步,否则转第(3)步;(7) 算法终止。 6、总结: 组合优化是遗传算法最基本的也是最重要的研究和应用领域之一。 一般来说,组合优化问题通常带有大量的局部极值点,往往是不可微的、不连续的、多维的、有约束条件的、高度非线性的NP完全问题,因此,精确的求解组合优化问题的全局最优解一般是不可能的。 遗传算法是一种新型的、模拟生物进化过程的随机化搜索、优化方法,近十几年来在组合优化领域得到了相当广泛的研究和应用,并已在解决诸多典型组合优化问题中显示了良好的性能和效果。 参考文献:1、Zdeněk Konfrst. Parallel Genetic Algorithms: Advances, Computing Trends, Aplications and Perspectives. Proceedings of the 18th International Parallel and Distributed Proecessing Symposium, 2004.2、郭彤城, 慕春棣. 并行遗传算法的新进展. 系统工程理论与实践, 2002.3、曾国荪, 丁春玲. 并行遗传算法分析. 计算机工程, 2001.4、王大明, 毛宗源. 并行遗传算法综述. 暨南大学学报(自然科学版), 1998.5、吴昊. 并行遗传算法的研究与应用. 安徽大学硕士学位论文, 2001.6、王冠. 并行遗传算法及其在组合优化问题上的分布式应用, 武汉理工大学硕士学位论文, 2003.7、吴昊, 程锦松. 用并行遗传算法解决带约束并行多机调度问题. 微机发展, 2001. 线性代数有什么用 线性代数有什么用 这是每一个圈养在象牙塔里,在灌输式教学模式下的“被学习”的学生刚刚开始思考时的第一个问题。 我稍微仔细的整理了一下学习线代的理由,竟然也罗列了不少,不知道能不能说服你:1、 如果你想顺利地拿到学位,线性代数的学分对你有帮助;2、 如果你想继续深造,考研,必须学好线代。 因为它是必考的数学科目,也是研究生科目《矩阵论》、《泛函分析》的基础。 例如,泛函分析的起点就是无穷多个未知量的无穷多线性方程组理论。 3、 如果你想提高自己的科研能力,不被现代科技发展潮流所抛弃,也必须学好,因为瑞典的L.戈丁说过,没有掌握线代的人简直就是文盲。 他在自己的数学名著《数学概观》中说:要是没有线性代数,任何数学和初等教程都讲不下去。 按照现行的国际标准,线性代数是通过公理化来表述的。 它是第二代数学模型,其根源来自于欧几里得几何、解析几何以及线性方程组理论。 …,如果不熟悉线性代数的概念,像线性性质、向量、线性空间、矩阵等等,要去学习自然科学,现在看来就和文盲差不多,甚至可能学习社会科学也是如此。 4、 如果毕业后想找个好工作,也必须学好线代:l 想搞数学,当个数学家(我靠,这个还需要列出来,谁不知道线代是数学)。 恭喜你,你的职业未来将是最光明的。 如果到美国打工的话你可以找到最好的职业(参考本节后附的一份小资料)。 l 想搞电子工程,好,电路分析、线性信号系统分析、数字滤波器分析设计等需要线代,因为线代就是研究线性网络的主要工具;进行IC集成电路设计时,对付数百万个集体管的仿真软件就需要依赖线性方程组的方法;想搞光电及射频工程,好,电磁场、光波导分析都是向量场的分析,比如光调制器分析研制需要张量矩阵,手机信号处理等等也离不开矩阵运算。 l 想搞软件工程,好,3D游戏的数学基础就是以图形的矩阵运算为基础;当然,如果你只想玩3D游戏可以不必掌握线代;想搞图像处理,大量的图像数据处理更离不开矩阵这个强大的工具,《阿凡达》中大量的后期电脑制作没有线代的数学工具简直难以想象。 l 想搞经济研究。 好,知道列昂惕夫(Wassily Leontief)吗 哈佛大学教授,1949年用计算机计算出了由美国统计局的25万条经济数据所组成的42个未知数的42个方程的方程组,他打开了研究经济数学模型的新时代的大门。 这些模型通常都是线性的,也就是说,它们是用线性方程组来描述的,被称为列昂惕夫“投入-产出”模型。 列昂惕夫因此获得了1973年的诺贝尔经济学奖。 l 相当领导,好,要会运筹学,运筹学的一个重要议题是线性规划。 许多重要的管理决策是在线性规划模型的基础上做出的。 线性规划的知识就是线代的知识啊。 比如,航空运输业就使用线性规划来调度航班,监视飞行及机场的维护运作等;又如,你作为一个大商场的老板,线性规划可以帮助你合理的安排各种商品的进货,以达到最大利润。 l 对于其他工程领域,没有用不上线代的地方。 如搞建筑工程,那么奥运场馆鸟巢的受力分析需要线代的工具;石油勘探,勘探设备获得的大量数据所满足的几千个方程组需要你的线代知识来解决;飞行器设计,就要研究飞机表面的气流的过程包含反复求解大型的线性方程组,在这个求解的过程中,有两个矩阵运算的技巧:对稀疏矩阵进行分块处理和进行LU分解; 作餐饮业,对于构造一份有营养的减肥食谱也需要解线性方程组;知道有限元方法吗 这个工程分析中十分有效的有限元方法,其基础就是求解线性方程组。 知道马尔科夫链吗 这个 “链子”神通广大,在许多学科如生物学、商业、化学、工程学及物理学等领域中被用来做数学模型,实际上马尔科夫链是由一个随机变量矩阵所决定的一个概率向量序列,看看,矩阵、向量又出现了。 l 另外,矩阵的特征值和特征向量可以用在研究物理、化学领域的微分方程、连续的或离散的动力系统中,甚至数学生态学家用以在预测原始森林遭到何种程度的砍伐会造成猫头鹰的种群灭亡;大名鼎鼎的最小二乘算法广泛应用在各个工程领域里被用来把实验中得到的大量测量数据来拟合到一个理想的直线或曲线上,最小二乘拟合算法实质就是超定线性方程组的求解;二次型常常出现在线性代数在工程(标准设计及优化)和信号处理(输出的噪声功率)的应用中,他们也常常出现在物理学(例如势能和动能)、微分几何(例如曲面的法曲率)、经济学(例如效用函数)和统计学(例如置信椭圆体)中,某些这类应用实例的数学背景很容易转化为对对称矩阵的研究。 嘿嘿(脸红),说实在的,我也没有足够经验讲清楚线代在各个工程领域中的应用,只能大概人云亦云地讲述以上线代的一些基本应用。如何 编程 建立 shogun toolbox v0.10.0



