什么是算法
‘壹’ 什么是迪科斯彻演算法
Dijkstra算法(狄克斯特拉算法) Dijkstra算法是由荷兰计算机科学家 狄克斯特拉 ( Dijk stra )于1959 年提出的,因此又叫狄克斯特拉算法。 是从一个顶点到其余各顶点的最短路径算法, 解决的是有向图中最短路径问题。
‘贰’ 算法是什么主要的数学意义是什么
东风数学主要特征:1具有实用性,有较强的社会性;2算法程序化模型化;3寓理与算并且是开放的归纳系统
西方数学主要特征:1封闭的逻辑演绎体系季节化的算法;2古希腊的数字与神秘性结合;3将数学抽象化;4希腊数学重视数学在美学上的意义
希腊人在数学上的贡献主要是创立了平面几何,立体几何,平面与球面三角,数论。推广了算数与代数。
东方数学注重实用性社会性,使数学与我们的生活密切联系,二者都推动了现代数学的发展,都开创了数学的先河。
‘叁’ 进化论算法
进化首先是生物学的概念。根据达尔文“生物进化论”的观点:生物的发展和演变是根据自然选择的方式进行。生物机能和形态的变化,可从它所处的环境中寻找解释。生物的进化过程也许完全不是随机的,高级生物的进化过程很可能是“合情的产生与检验”的过程,即也许自然界掌握着一种很高明的“自动程序设计”方法进行遗传“程序”的书写。 模仿上述生物进化论所形成的应用算法称为进化论算法。[1]
‘肆’ 基因遗传算法是个啥求详解
基因遗传算法主要理论就是优胜劣汰的进化论。
它的主要精神是透过每次迭代都能比上次更进步,逐步演化,表现出针对一个目标函数寻求最佳解的过程。但是因为是随机搜索,所以虽然基因算法设置如交配、突变等来避免,却仍可能会陷入区域最佳解;也有可能最后得到的不是最佳解,只是在结束条件之前找到的最好的解。
基本的基因算法流程:
1.初始化族群:假定这个族群中有4条染色体,每条染色体有5个基因。
基因 -从目标函数的角度来看,就是自变数。
例如:用基因算法解目标函数 f(X,Y,Z)=2X+3Y-Z,
限制式为“X,Y,Z={1,0}”※,
求目标函数的最大值。
此题目对应到染色体的概念,就有3个基因,
三个基因分别代表X、Y、Z三个自变数的值。
染色体 -单一组解
例如:有很多符合目标函数限制式的(X,Y,Z),
其中一组是(x1,y1,z1)=(1,0,0),
函数值 f(x1,y1,z1)为2*1+3*0-0=2。
此例中,这组解当然不是最佳解,但它是这个题目的一个可行解。
*想象我们用直觉解题,拿张计算纸,把所有可行解都列出来,
然后比较所有我们想得到的可行解,最后可以得
到最佳的一组(X,Y,Z),因为它的f(X,Y,Z)为最大值。
族群 -多组解的集合
例如:族群中有四条染色体,这四条染色体就是四组可行解。
2.设定交配率和突变率:假定交配率a为0.6,突变率b为0.1。
交配率 -每个世代中,族群内有多少比率的染色体会互相交配。
突变率 -每个世代中,族群内的染色体有多少机率会突变。
3.迭代世代。
For iter=10 -假定做十次优胜劣汰。
3.1. 天择:在这个世代中,根据每条染色体的权重,随机选择母代来产生后代,
用以做下一个运算。
通常使用轮盘法来作天择,也就是说,
如果染色体甲的解是这个族群中最好的,
那么甲的权重就是最高的。反之则是最低的。
*轮盘法:假定这次族群为“[1,1,1],[0,1,1],[1,0,1],[1,0,0]”,
四条染色体的适应值分别是“4,2,1,2”,
适应值总和为4+2+1+2=9,
则四条染色体被选到的机会为“4/9,2/9,1/9,2/9”
=“0.4,0.2,0.1,0.2”。这个机会就是权重。
为了不让每次选择都选到同一条染色体,所以只是
“有比较高的机会”选择到“有更好适应值的染色体”,
而不是一定会选择这个好适应值的染色体。
3.2. 交配:母代产生后,依照交配率a,随机选择染色体来作交配。
比较交配前的子代1和交配后的子代2,在8条染色体中,
选择适应值最好的4条染色体留下来。
最简单的交配方式就是交换两条染色体的某个基因。
*例如,染色体S=[0,1,0],染色体Q=[1,1,1],交配位于首位的基因,
则可以得到新的两条染色体S'=[1,1,0]、Q'=[0,1,1]。
3.3. 突变:交配完后,依照突变率b,决定这一个世代要不要突变。
假设要突变,则若突变后子代3的适应值比突变前子代2好,就用子代3取代子代2。
最简单的突变方式就是随机选择某条染色体的某个基因,改变它。
*例如,随机选中染色体M=[1,0,1],随机突变中间的基因,
得到新染色体M'=[1,1,1] 。
3.4. 更新:最后得到的族群中,所有染色体的适应值。
END For
4. 比较所有染色体的适应值,列出最好的那一个染色体为算法最后的解。
※一般使用二元染色体,限制染色体的基因只会等于零或壹。
在此处只是方便解说,所以直接把限制式设成零和壹。
假设我们用二元染色体来解目标函数f(x)=x^2的最大值,限制式为0<=x<=7,x为整数。
用基因算法求解,则需要产生log_2(8)=3个基因,
简单说来,就是用二进位表示一个有限整数值。
(也可以把基因想成电脑的位元数,我们用三个位元来表示一个有限的整数值。)
这样做的话,突变的方法就是直接把某个基因转成零或壹,
不用设定要更改多少值(例如加3、加100或减0.8)(基因算法应该一般不会这样做);
计算适应值时,互相转换二进位与十进位。
基因三个,则可以表达:
111=2^2+2^1+2^0=4+2+1=7
110=2^2+2^1=4+2=6
101=2^2+2^0=4+1=5
100=4
001=1
000=0
011=3
010=2
‘伍’ 什么是演化算法
演化算法是解决组合优化问题的高效搜索算法.该文在现有求解TSP问题的演化算法的基础上,通过引入映射算子、优化算子以及增加一些控制策略,提出了一种高效的演化搜索算法.实验表明,该算法是有效的,通过对CHN144以及国际通用的TSPLIB中不同城市规模的数据进行测试表明,其中实例CHN144得到的最短路径为30353.860997,优于吴斌等运用分段算法得到的最短路径30354.3,亦优于朱文兴等人的结果,实例st70和kroB150得到的最短路径分别与运用分段算法得到的最短路径值相同,实例pr136得到的最短路径值为96770.924122,优于TSPLIB中提供的最短路径96772,对于其它实例也均能快速地得到和TSPLIB中提供的最优路径相同或更优的路径,该算法不仅很容易收敛到问题的最优解,而且求解速度极快.
‘陆’ Algorithm算法的介绍
Algorithm算法本来是学术(如数学、程序)领域中的用语,然而当套用在音乐电子器材上的时候,它指的是:不同的数字效果器串接的顺序。 大部份的数字效果处理机都已含有各种算法。
‘柒’ 太极八卦算法科学吗它该归入哪门学科
其实不是很懂你说得太极八卦算法是指什么,我的理解是八卦图的一个成型样式,以前阅书的点滴记忆里,八卦以阴阳的图示进行排列,一长横线和两短横线的排列组合,继而在不同位置的组合又代表不同的意义,其间包含数学、天文学,甚至哲学、数学,现在还没有一套完整的科学系统能够完全解释八卦的产生,个人觉得,就我浅薄所知,数学就占了很显眼的一点,但并不能将其直接归为数学,它仍需在人们的探索研究中被继续认识。
不知道是不是讲了风马牛不相及的两样东西了。。。。。。
‘捌’ “运算”,“计算”,“演算”有什么不同
你是说,问一下,运算,计算,演算有什么区别和不同。实际上运算和计算是一种算法。而演算是反回来算。看一看运算或计算的答案对吗?如运算2十3=5。那么演算就是返回算如5一3是否等于2。
‘玖’ 什么是即时演算
一: 我们先述说它的定义,然后我再举一些典型的例子来说明一下.
说到即时演算,很多人会为比较悬,似乎很深奥,其实即时演算(尤其是游戏范畴的)就是图形技术的一种表现形式.
英文里面, real time rendering,翻译成中文就是我们通常说的“即时演算”.
即时演算的主要的工作都是由图形芯片来完成的,经过指令的指挥和复杂的计算,游戏中的人物和场景就出现在我们的屏幕上.
其实,提到"即时演算"的时候,我们伴随着提到最多的还有CG动画.
我想把"即时演算"和"CG动画"对比着来说,我们就很明白啦.
先说说"CG动画",所谓的CG动画,大部分工作是由动画制作人员来完成的,他们把建立好的模型在他们的电脑上渲染成完成的图,也即相当于经过了一道流水线,只不过流水线上的工作人员是动画制作人员,渲染结束后呢,我们的游戏机只需通过识别这些动画的编码,进行解码之后以每秒钟24幅画或者30幅画的速度播放出来就行啦,如果没有专门对应的芯片(这些芯片一般来说可编译的芯片,储存有编解码信息,解码时可以很方便的找到对应的输出),这个时候就要通过软件的算法来利用CPU的计算能力进行叽里呱啦的计算之后产生对应的图形输出,这就是往往我们嘴巴中间说的“播片能力”.
我下面举个例子来说明.
比如,游戏的开场CG动画部分就是我们非常熟悉的动画部分,这部分视频是游戏制作人事先已经制作好了的,只是播发即可,虽然我们看上去很色彩绚丽,其实并不占系统资源. 我们都有这样的体会,就是当系统配置不够的时候,往往能够顺利播发CG动画, 但是CG动画过后,立即退出了游戏,要么就黑屏, 就是这个道理.
那么为何退出游戏呢,下面就牵扯到了即时验算.即时验算在游戏中是最吃系统的,即使非常小一部分的即时验算都会耗费相当大的系统资源.
再举个即时验算的例子, 即时验算的份量最大的就属欧美制作的大型游戏,所以我就拿<上古4>为例吧:
<上古4>中有很多这样的场景,就是在对付敌人的时候,你既可以选择使用冷兵器攻击敌人,也可以使用魔法攻击,还可以互相交替进行攻击,还可以与对方沟通,还可以放弃战斗而逃跑, 那么在你瞬间选择的时候,系统并不知道你将采用哪种方式进行攻击,当你突然选择使用冷兵器的时候,渲染系统就要从预留的渲染文件中调出使用冷兵器的图形文件,进行即时渲染,这就是即时验算,,这个瞬间的即时验算完全是有CPU来进行的.而显卡和内存负责将CPU下达的指令进行合成然后完美还原计算,呈现出来的就是华丽的画面图形.
因此,需要系统有足够的容量储备来应付瞬间的图形计算,否则就出现我们经常说的"卡", 这就是由于系统配置跟不上,我们说的所谓的"卡" 其实就是丢祯现象, 因为系统在计算的时候已经出现了不连贯, 反映在屏幕上就是人物定格, 一祯一祯往前跳.
因此,即时验算非常考验系统。
‘拾’ 台湾的大学课程算法相当于大陆的哪门课
就是大陆学校里的算法设计与分析