CN106600054A - 基于mic卡的人工鱼群算法并行处理tsp问题的方法及装置 - Google Patents
基于mic卡的人工鱼群算法并行处理tsp问题的方法及装置 Download PDFInfo
- Publication number
- CN106600054A CN106600054A CN201611141307.9A CN201611141307A CN106600054A CN 106600054 A CN106600054 A CN 106600054A CN 201611141307 A CN201611141307 A CN 201611141307A CN 106600054 A CN106600054 A CN 106600054A
- Authority
- CN
- China
- Prior art keywords
- behavior
- fish
- artificial fish
- mpi
- artificial
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Development Economics (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例公开了一种基于MIC卡的人工鱼群算法并行处理TSP问题的方法及装置,通过MIC卡进行初始化鱼群及初始化MPI处理;通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目;通过MPI对邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的人工鱼进行群聚行为、觅食行为处理;通过MPI获取到追尾行为、群聚行为、觅食行为处理后确定的最优解人工鱼群状态值,解决了目前的算法都只支持串行运算,对于一些较大计算量的算法,效率往往就比较低,及现存的人工鱼群算法在针对旅行商问题上并没有很完美的性能优化以及最优结果,同时,目前的并行优化技术,在CPU上,受到芯片计算单元数量的限制,导致的在处理大规模的计算时,难以高效率地执行的技术问题。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于MIC卡的人工鱼群算法并行处理TSP问题的方法及装置。
背景技术
人工鱼群算法是在一片水域中,鱼往往能自行或尾随其他鱼找到营养物质多的地方,因而鱼生存数目最多的地方一般就是本水域中营养物质最多的地方,人工鱼群算法就是根据这一特点,通过构造人工鱼来模仿鱼群的觅食、聚群及追尾行为,从而实现寻优,以下是鱼的几种典型行为:(1)觅食行为:一般情况下鱼在水中随机地自由游动,当发现食物时,则会向食物逐渐增多的方向快速游去。(2)聚群行为:鱼在游动过程中为了保证自身的生存和躲避危害会自然地聚集成群,鱼聚群时所遵守的规则有三条:分隔规则:尽量避免与临近伙伴过于拥挤;对准规则:尽量与临近伙伴的平均方向一致;内聚规则:尽量朝临近伙伴的中心移动。(3)追尾行为:当鱼群中的一条或几条鱼发现食物时,其临近的伙伴会尾随其快速到达食物点。(4)随机行为:单独的鱼在水中通常都是随机游动的,这是为了更大范围地寻找食物点或身边的伙伴。
作为人工鱼群算法应用,讨论旅行商问题(Travelling Salesman Problem,TSP):设有n个城市,用数(1,…,n)代表。城市i和城市j之间的距离为d(i,j)i,j=1,…,n.TSP问题的目标是要找遍访每个域市恰好一次,最后回到出发城市,形成一条回路,且其路径总长度为最短。解空间:解空间S是遍访每个城市恰好一次的所有回路。
现阶段,很多算法都只支持串行运算,对于一些较大计算量的算法,效率往往就比较低,另外,现存的人工鱼群算法在针对旅行商问题上并没有很完美的性能优化以及最优结果,同时,目前的并行优化技术,在CPU上,受到芯片计算单元数量的限制,导致在处理大规模的计算时,难以高效率地执行的技术问题。
发明内容
本发明实施例提供的一种基于MIC卡的人工鱼群算法并行处理TSP问题的方法及装置,解决了目前的算法都只支持串行运算,对于一些较大计算量的算法,效率往往就比较低,及现存的人工鱼群算法在针对旅行商问题上并没有很完美的性能优化以及最优结果,同时,目前的并行优化技术,在CPU上,受到芯片计算单元数量的限制,导致的在处理大规模的计算时,难以高效率地执行的技术问题。
本发明实施例提供的一种基于MIC卡的人工鱼群算法并行处理TSP问题的方法,包括:
通过MIC卡进行初始化鱼群及初始化MPI处理;
通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目;
通过MPI对所述邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的所述人工鱼进行群聚行为、觅食行为处理;
通过MPI获取到所述追尾行为、所述群聚行为、所述觅食行为处理后确定的最优解人工鱼群状态值。
可选地,通过MIC卡进行初始化鱼群及初始化MPI处理具体包括:
通过MIC卡初始化鱼群;
进行初始化MPI及线程同步MPI_Barrier处理,并开始MPI迭代。
可选地,通过MIC卡初始化鱼群具体包括:
确定最大迭代次数num,拥挤度因子δ,视野范围visual,试探次数try_number并在可行域内随机生成N条人工鱼,形成初始鱼群;
根据随机生成N条所述人工鱼状态计算其路径长度,比较大小,取最小值,并更新公告板。
可选地,通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目具体包括:
通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定嗅觉范围内人工鱼的数目。
可选地,通过MPI对所述邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的所述人工鱼进行群聚行为、觅食行为处理具体包括:
判断嗅觉范围内人工鱼的数目,若小于预置数值,则确定所述嗅觉范围内人工鱼的中心位置为非拥挤,则进行所述聚群行为处理,否则,聚群失败,进行所述觅食行为处理。
本发明实施例提供的一种基于MIC卡的人工鱼群算法并行处理TSP问题的装置,包括:
初始化单元,用于通过MIC卡进行初始化鱼群及初始化MPI处理;
嗅觉识别单元,用于通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目;
行为处理单元,用于通过MPI对所述邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的所述人工鱼进行群聚行为、觅食行为处理;
最优解单元,用于通过MPI获取到所述追尾行为、所述群聚行为、所述觅食行为处理后确定的最优解人工鱼群状态值。
可选地,初始化单元具体包括:
第一初始子单元,用于通过MIC卡初始化鱼群;
第二初始子单元,用于进行初始化MPI及线程同步MPI_Barrier处理,并开始MPI迭代。
可选地,第一初始子单元具体包括:
确定模块,用于确定最大迭代次数num,拥挤度因子δ,视野范围visual,试探次数try_number并在可行域内随机生成N条人工鱼,形成初始鱼群;
计算更新模块,用于根据随机生成N条所述人工鱼状态计算其路径长度,比较大小,取最小值,并更新公告板。
可选地,嗅觉识别单元,具体用于通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定嗅觉范围内人工鱼的数目。
可选地,行为处理单元,具体用于判断嗅觉范围内人工鱼的数目,若小于预置数值,则确定所述嗅觉范围内人工鱼的中心位置为非拥挤,则进行所述聚群行为处理,否则,聚群失败,进行所述觅食行为处理。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例提供的一种基于MIC卡的人工鱼群算法并行处理TSP问题的方法及装置,其中,基于MIC卡的人工鱼群算法并行处理TSP问题的方法包括:通过MIC卡进行初始化鱼群及初始化MPI处理;通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目;通过MPI对邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的人工鱼进行群聚行为、觅食行为处理;通过MPI获取到追尾行为、群聚行为、觅食行为处理后确定的最优解人工鱼群状态值。本实施例中,通过MIC卡进行初始化鱼群及初始化MPI处理;通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目;通过MPI对邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的人工鱼进行群聚行为、觅食行为处理;通过MPI获取到追尾行为、群聚行为、觅食行为处理后确定的最优解人工鱼群状态值,解决了目前的算法都只支持串行运算,对于一些较大计算量的算法,效率往往就比较低,及现存的人工鱼群算法在针对旅行商问题上并没有很完美的性能优化以及最优结果,同时,目前的并行优化技术,在CPU上,受到芯片计算单元数量的限制,导致的在处理大规模的计算时,难以高效率地执行的技术问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种基于MIC卡的人工鱼群算法并行处理TSP问题的方法的一个实施例的流程示意图;
图2为本发明实施例提供的一种基于MIC卡的人工鱼群算法并行处理TSP问题的装置的一个实施例的结构示意图;
图3为图2的应用例示意图。
具体实施方式
本发明实施例提供的一种基于MIC卡的人工鱼群算法并行处理TSP问题的方法及装置,解决了目前的算法都只支持串行运算,对于一些较大计算量的算法,效率往往就比较低,及现存的人工鱼群算法在针对旅行商问题上并没有很完美的性能优化以及最优结果,同时,目前的并行优化技术,在CPU上,受到芯片计算单元数量的限制,导致的在处理大规模的计算时,难以高效率地执行的技术问题。
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例提供的一种基于MIC卡的人工鱼群算法并行处理TSP问题的方法的一个实施例包括:
101、通过MIC卡进行初始化鱼群及初始化MPI处理;
通过MIC卡初始化鱼群;
进行初始化MPI及线程同步MPI_Barrier处理,并开始MPI迭代;
需要说明的是,通过MIC卡初始化鱼群具体包括:
确定最大迭代次数num,拥挤度因子δ,视野范围visual,试探次数try_number并在可行域内随机生成N条人工鱼,形成初始鱼群;
根据随机生成N条人工鱼状态计算其路径长度,比较大小,取最小值,并更新公告板。
102、通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目;
通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定嗅觉范围内人工鱼的数目。
103、通过MPI对邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的人工鱼进行群聚行为、觅食行为处理;
判断嗅觉范围内人工鱼的数目,若小于预置数值,则确定嗅觉范围内人工鱼的中心位置为非拥挤,则进行聚群行为处理,否则,聚群失败,进行觅食行为处理。
104、通过MPI获取到追尾行为、群聚行为、觅食行为处理后确定的最优解人工鱼群状态值。
如图3所示,下面以一具体应用场景进行描述,应用例包括:
本实施例在程序运行开始初就开始使用MPI进行优化处理,最后迭代完毕后才结束MPI的处理,迭代开始与结束都会使用线程同步来保证最优解的有效性,算法描述大概如下:此程序在执行MPI初始化后将等待全部线程完成初始化后才开始执行for循环的迭代计算,在迭代计算过程中,将先在嗅觉范围内计算邻居个数,先执行追尾行为,tmp则是临时变量,用以记录各个行为后的结果,若追尾失败则将执行群聚行为,群聚行为失败后再执行觅食行为,最后若三种行为结束后,若食物浓度比原来初始化的值要小,则更换人工鱼群的值,食物浓度越小越好,映射出城市间距离越小越好;结束三种行为的操作后,则将实现全局归约,执行更新公告板操作;直到迭代结束后,将输出公告板数值以及运行时间,关闭MPI。
算法伪代码如下:
添加了嗅觉参数以及MPI并行处理的算法具体流程如下:
1)产生初始化鱼群:定义最大迭代次数num,拥挤度因子δ,视野范围visual,试探次数try_number并在可行域内随机生成N条人工鱼,形成初始鱼群;
2)随机生成的人工鱼状态计算其路径长度,比较大小,取最小值,并及时更新公告板;
3)按照人工鱼群的行为准则,先用嗅觉识别邻居个数,再进行追尾行为,追尾失败后才进行后面的聚群行为,若聚群行为也失败了才进行觅食行为;
4)各人工鱼进行行为选择后,检查自身的值与公告板的值,如果优于公告板,则以自身取代,同时更新公告板上的人工鱼状态;
5)判断是否满足终止条件,若不满足终止条件则转到步骤3执行,进行下一步鱼群优化过程,否则转到下一步执行。
6)算法终止,输出公告板上的最优解人工鱼群状态值。
(1)进行MPI并行化
for(i=0;i<ITERATE;++i)//迭代
for(j=0;j<FISH_NUMBER;++j)//鱼群中的每条鱼
人工鱼群算法
同步
使用MPI_Reduce收集最优解
使用MPI_Bcast分发最优解,用于下次迭代更新
同步
(2)添加嗅觉参数
fish.smell_num*1.0/FISH_NUMBER<AF.delta
通过得到嗅觉范围内伙伴的数目smell_num,如果smell_num/FISH_NUMBER<δ,则表明伙伴中心位置不太拥挤,可以进行聚群行为。否则聚群失败,进行下一步操作。
添加该参数能够在一定程度上防止在聚群过程中陷入局部最优解。
(3)进行线程同步
在合适的位置使用MPI_Barrier进行进程的同步,可以保证在进行了一些操作之后,所有的状态都能够相同,以保证最优解的有效性。
MIC卡的硬件设备非常适合于做并行处理,以往的CPU与GPU结合做并行化处理都会受限于兼容性等问题,但MIC卡才用的架构是与CPU相似,且都与CPU共用一套指令集,所以兼容性及其高。另外,MIC卡包含众多的物理核,同时每个核上可以开启4个线程,因此,程序员只有设计足够多的线程/进程才可以把所有的核利用起来。MIC卡的微异构架构、高性能、低功耗与五种高效的编程模式使得它在并行优化上具有很强的竞争力
本实施例中,通过MIC卡进行初始化鱼群及初始化MPI处理;通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目;通过MPI对邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的人工鱼进行群聚行为、觅食行为处理;通过MPI获取到追尾行为、群聚行为、觅食行为处理后确定的最优解人工鱼群状态值,解决了目前的算法都只支持串行运算,对于一些较大计算量的算法,效率往往就比较低,及现存的人工鱼群算法在针对旅行商问题上并没有很完美的性能优化以及最优结果,同时,目前的并行优化技术,在CPU上,受到芯片计算单元数量的限制,导致的在处理大规模的计算时,难以高效率地执行的技术问题。
请参阅图2,本发明实施例中提供的一种基于MIC卡的人工鱼群算法并行处理TSP问题的装置的一个实施例包括:
初始化单元201,用于通过MIC卡进行初始化鱼群及初始化MPI处理;
初始化单元201具体包括:
第一初始子单元2011,用于通过MIC卡初始化鱼群;
第一初始子单元2011具体包括:
确定模块2011a,用于确定最大迭代次数num,拥挤度因子δ,视野范围visual,试探次数try_number并在可行域内随机生成N条人工鱼,形成初始鱼群;
计算更新模块2011b,用于根据随机生成N条人工鱼状态计算其路径长度,比较大小,取最小值,并更新公告板。
第二初始子单元2012,用于进行初始化MPI及线程同步MPI_Barrier处理,并开始MPI迭代。
嗅觉识别单元202,用于通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目,嗅觉识别单元202,具体用于通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定嗅觉范围内人工鱼的数目。
行为处理单元203,用于通过MPI对邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的人工鱼进行群聚行为、觅食行为处理,行为处理单元203,具体用于判断嗅觉范围内人工鱼的数目,若小于预置数值,则确定嗅觉范围内人工鱼的中心位置为非拥挤,则进行聚群行为处理,否则,聚群失败,进行觅食行为处理。
最优解单元204,用于通过MPI获取到追尾行为、群聚行为、觅食行为处理后确定的最优解人工鱼群状态值。、
本实施例中,通过MIC卡进行初始化鱼群及初始化MPI处理;通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目;通过MPI对邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的人工鱼进行群聚行为、觅食行为处理;通过MPI获取到追尾行为、群聚行为、觅食行为处理后确定的最优解人工鱼群状态值,解决了目前的算法都只支持串行运算,对于一些较大计算量的算法,效率往往就比较低,及现存的人工鱼群算法在针对旅行商问题上并没有很完美的性能优化以及最优结果,同时,目前的并行优化技术,在CPU上,受到芯片计算单元数量的限制,导致的在处理大规模的计算时,难以高效率地执行的技术问题。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元和模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元和模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元和模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元和模块可以是或者也可以不是物理上分开的,作为单元和模块显示的部件可以是或者也可以不是物理单元和模块,即可以位于一个地方,或者也可以分布到多个网络单元和模块上。可以根据实际的需要选择其中的部分或者全部单元和模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元和模块可以集成在一个处理单元和模块中,也可以是各个单元和模块单独物理存在,也可以两个或两个以上单元和模块集成在一个单元和模块中。上述集成的单元和模块既可以采用硬件的形式实现,也可以采用软件功能单元和模块的形式实现。
所述集成的单元和模块如果以软件功能单元和模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于MIC卡的人工鱼群算法并行处理TSP问题的方法,其特征在于,包括:
通过MIC卡进行初始化鱼群及初始化MPI处理;
通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目;
通过MPI对所述邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的所述人工鱼进行群聚行为、觅食行为处理;
通过MPI获取到所述追尾行为、所述群聚行为、所述觅食行为处理后确定的最优解人工鱼群状态值。
2.根据权利要求1所述的基于MIC卡的人工鱼群算法并行处理TSP问题的方法,其特征在于,通过MIC卡进行初始化鱼群及初始化MPI处理具体包括:
通过MIC卡初始化鱼群;
进行初始化MPI及线程同步MPI_Barrier处理,并开始MPI迭代。
3.根据权利要求1所述的基于MIC卡的人工鱼群算法并行处理TSP问题的方法,其特征在于,通过MIC卡初始化鱼群具体包括:
确定最大迭代次数num,拥挤度因子δ,视野范围visual,试探次数try_number并在可行域内随机生成N条人工鱼,形成初始鱼群;
根据随机生成N条所述人工鱼状态计算其路径长度,比较大小,取最小值,并更新公告板。
4.根据权利要求1所述的基于MIC卡的人工鱼群算法并行处理TSP问题的方法,其特征在于,通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目具体包括:
通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定嗅觉范围内人工鱼的数目。
5.根据权利要求1所述的基于MIC卡的人工鱼群算法并行处理TSP问题的方法,其特征在于,通过MPI对所述邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的所述人工鱼进行群聚行为、觅食行为处理具体包括:
判断嗅觉范围内人工鱼的数目,若小于预置数值,则确定所述嗅觉范围内人工鱼的中心位置为非拥挤,则进行所述聚群行为处理,否则,聚群失败,进行所述觅食行为处理。
6.一种基于MIC卡的人工鱼群算法并行处理TSP问题的装置,其特征在于,包括:
初始化单元,用于通过MIC卡进行初始化鱼群及初始化MPI处理;
嗅觉识别单元,用于通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定邻居人工鱼数目;
行为处理单元,用于通过MPI对所述邻居人工鱼数目进行追尾行为的确定,并对追尾行为的确定的所述人工鱼进行群聚行为、觅食行为处理;
最优解单元,用于通过MPI获取到所述追尾行为、所述群聚行为、所述觅食行为处理后确定的最优解人工鱼群状态值。
7.根据权利要求6所述的基于MIC卡的人工鱼群算法并行处理TSP问题的装置,其特征在于,初始化单元具体包括:
第一初始子单元,用于通过MIC卡初始化鱼群;
第二初始子单元,用于进行初始化MPI及线程同步MPI_Barrier处理,并开始MPI迭代。
8.根据权利要求6所述的基于MIC卡的人工鱼群算法并行处理TSP问题的装置,其特征在于,第一初始子单元具体包括:
确定模块,用于确定最大迭代次数num,拥挤度因子δ,视野范围visual,试探次数try_number并在可行域内随机生成N条人工鱼,形成初始鱼群;
计算更新模块,用于根据随机生成N条所述人工鱼状态计算其路径长度,比较大小,取最小值,并更新公告板。
9.根据权利要求6所述的基于MIC卡的人工鱼群算法并行处理TSP问题的装置,其特征在于,嗅觉识别单元,具体用于通过MPI根据初始化鱼群后随机生成的人工鱼群的行为准则进行嗅觉识别确定嗅觉范围内人工鱼的数目。
10.根据权利要求6所述的基于MIC卡的人工鱼群算法并行处理TSP问题的装置,其特征在于,行为处理单元,具体用于判断嗅觉范围内人工鱼的数目,若小于预置数值,则确定所述嗅觉范围内人工鱼的中心位置为非拥挤,则进行所述聚群行为处理,否则,聚群失败,进行所述觅食行为处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611141307.9A CN106600054A (zh) | 2016-12-12 | 2016-12-12 | 基于mic卡的人工鱼群算法并行处理tsp问题的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611141307.9A CN106600054A (zh) | 2016-12-12 | 2016-12-12 | 基于mic卡的人工鱼群算法并行处理tsp问题的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106600054A true CN106600054A (zh) | 2017-04-26 |
Family
ID=58598802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611141307.9A Pending CN106600054A (zh) | 2016-12-12 | 2016-12-12 | 基于mic卡的人工鱼群算法并行处理tsp问题的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106600054A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688848A (zh) * | 2017-07-31 | 2018-02-13 | 天津大学 | 基于人工鱼群算法的随机哈密顿回路生成方法 |
CN108470207A (zh) * | 2018-03-28 | 2018-08-31 | 天津大学 | 一种人工鱼群算法的并行实现方法 |
CN109491791A (zh) * | 2018-11-09 | 2019-03-19 | 华东师范大学 | 基于申威众核处理器的nsga-ii的主从增强式运行方法及装置 |
CN113821321A (zh) * | 2021-08-31 | 2021-12-21 | 上海商汤阡誓科技有限公司 | 任务处理芯片、方法、装置、计算机设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104392283A (zh) * | 2014-11-27 | 2015-03-04 | 上海电机学院 | 基于人工鱼群算法的交通路径搜索方法 |
-
2016
- 2016-12-12 CN CN201611141307.9A patent/CN106600054A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104392283A (zh) * | 2014-11-27 | 2015-03-04 | 上海电机学院 | 基于人工鱼群算法的交通路径搜索方法 |
Non-Patent Citations (3)
Title |
---|
朱命昊 等: "求解旅行商问题的改进人工鱼群算法", 《计算机应用研究》 * |
李双等: "基于多核机群的人工鱼群并行算法", 《计算机应用》 * |
王寅峰 等: "MIC商用并行编程性能优化分析", 《深圳信息职业技术学院学报》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107688848A (zh) * | 2017-07-31 | 2018-02-13 | 天津大学 | 基于人工鱼群算法的随机哈密顿回路生成方法 |
CN107688848B (zh) * | 2017-07-31 | 2020-07-21 | 天津大学 | 基于人工鱼群算法的随机哈密顿回路生成方法 |
CN108470207A (zh) * | 2018-03-28 | 2018-08-31 | 天津大学 | 一种人工鱼群算法的并行实现方法 |
CN109491791A (zh) * | 2018-11-09 | 2019-03-19 | 华东师范大学 | 基于申威众核处理器的nsga-ii的主从增强式运行方法及装置 |
CN109491791B (zh) * | 2018-11-09 | 2021-11-19 | 华东师范大学 | 基于申威众核处理器的nsga-ii的主从增强式运行方法及装置 |
CN113821321A (zh) * | 2021-08-31 | 2021-12-21 | 上海商汤阡誓科技有限公司 | 任务处理芯片、方法、装置、计算机设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106600054A (zh) | 基于mic卡的人工鱼群算法并行处理tsp问题的方法及装置 | |
Zhang et al. | An effective modified migrating birds optimization for hybrid flowshop scheduling problem with lot streaming | |
Hong et al. | Efficient parallel graph exploration on multi-core CPU and GPU | |
Wang et al. | Stud krill herd algorithm | |
Soman et al. | Fast community detection algorithm with gpus and multicore architectures | |
Rodriguez et al. | An artificial bee colony algorithm for the maximally diverse grouping problem | |
Adamski et al. | Distributed deep reinforcement learning: Learn how to play atari games in 21 minutes | |
Segal | On the scalability of parallel UCT | |
Rocki et al. | Large-scale parallel Monte Carlo tree search on GPU | |
CN105468439A (zh) | 在cpu-gpu异构框架下遍历固定半径内邻居的自适应并行算法 | |
CN111191728A (zh) | 基于异步或同步的深度强化学习分布式训练方法及系统 | |
Campeotto et al. | A GPU implementation of large neighborhood search for solving constraint optimization problems | |
CN104463322A (zh) | 一种异构系统的并行混合人工蜂群方法 | |
CN113469372A (zh) | 强化学习训练方法、装置、电子设备以及存储介质 | |
CN105404635B (zh) | 字符串匹配的方法、设备和异构计算系统 | |
Deng et al. | Migrating birds optimization with a diversified mechanism for blocking flow shops to minimize idle and blocking time | |
Brand et al. | Multi‐core scalable and efficient pathfinding with Parallel Ripple Search | |
Prasain et al. | A parallel particle swarm optimization algorithm for option pricing | |
Barriga et al. | Parallel UCT search on GPUs | |
Jiang et al. | Hybrid algorithm based on particle swarm optimization and artificial fish swarm algorithm | |
Atilgan et al. | Efficient protein-ligand docking using sustainable evolutionary algorithm | |
KR20110069259A (ko) | 상호충돌검사 기반 병렬충돌검사 방법 및 컴퓨터 판독가능 매체 | |
Brand et al. | Parallel ripple search–scalable and efficient pathfinding for multi-core architectures | |
Ruz et al. | Reconstruction of Boolean regulatory models of flower development exploiting an evolution strategy | |
Li et al. | Search experience-based search adaptation in artificial bee colony algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170426 |