文档库 最新最全的文档下载
当前位置:文档库 › 基于内存映射文件的进化算法数据存储引擎

基于内存映射文件的进化算法数据存储引擎

2015,51(1)1引言基于统计和机器学习的进化算法目前日益引起人们的重视。进化算法[1]是一种通过多次迭代搜索来获取全局最优解的随机优化算法[2]。作为一类启发式搜索算法,是否具备良好的搜索记忆功能,即通过一定方式存储并利用已搜索的解空间,是评价算法好坏的关键之一。从本质上来说,进化算法维护的种群和其他信息实际上可以看作是一个动态变化的数据集(数据库)。当前及历史数据集隐含了进化算法搜索的规律,因此可以通过模式识别和机器学习的方法来挖掘隐含在这些数据集中的规律并指导进化算法的搜索。有效存储和组织当前和历史群体信息,是实现这类算法的前提。由于进化算法的搜索空间往往比较大,存储记忆时需要平衡算法效率和磁盘空间[3]。随着计算机磁盘容量的迅速增长和单位容量成本的降低,可以将更多的算法

数据存储到磁盘中。但是在性能上,现有的通用数据库技术或传统文件存储方式并不能很好地满足这种需求。使用通用数据库时,需要额外搭建专有的数据服务系统,进行数据库维护,并且由于数据库索引等机制的存在,数据库对于大量实时算法数据的存储效率并不理

想。算法设计人员因而往往将数据以文件的形式直接存储到磁盘上。由于磁盘I/O 的效率问题,采用传统文件方式保存数据会大量增加算法的执行时间。现代操作系统支持基于虚拟内存技术的内存映射文件机制。通过使用内存映射文件,存储速度相比于传统文件I/O 方式可以得到极大提升[4]。

内存映射是将磁盘上的文件或部分文件内容映射到进程地址空间内部区域的一种机制。通过创建内存基金项目:国家自然科学基金(No.61273313)。

作者简介:姜三义(1981—),男,硕士研究生,研究领域为进化算法,图像处理;代真真(1987—),硕士研究生,研究领域为进化计

算,实验设计;李阳(1989—),硕士研究生,研究领域为进化计算;周爱民(1978—),副教授,主研领域为进化计算,机器学习。E-mail :sanyi0127@https://www.wendangku.net/doc/af2119387.html,

收稿日期:2013-03-14修回日期:2013-06-04文章编号:1002-8331(2015)01-0049-05

CNKI 网络优先出版:2013-06-26,https://www.wendangku.net/doc/af2119387.html,/kcms/detail/11.2127.TP.20130626.1539.008.html 基于内存映射文件的进化算法数据存储引擎

姜三义,代真真,李阳,周爱民

JIANG Sanyi,DAI Zhenzhen,LI Yang,ZHOU Aimin

华东师范大学计算机科学技术系,上海200241

Department of Computer Science &Technology,East China Normal University,Shanghai 200241,China

JIANG Sanyi,DAI Zhenzhen,LI Yang,et al.Data storage engine based on memory-mapped file for evolutionary https://www.wendangku.net/doc/af2119387.html,puter Engineering and Applications,2015,51(1):49-53.

Abstract :In order to observe and analyze the execution of Evolutionary Algorithms (EAs ),large volumes of data generated during algorithm execution are always stored in disk files.An embedded data storage engine,named as the Evolutionary Algorithm Database (EADB ),provides simple yet flexible data storage interfaces for evolutionary algorithms,and facilitates fast large data storage by using memory-mapped https://www.wendangku.net/doc/af2119387.html,pared to storage methods using traditional file I/O and general database storage engine,EADB is tremendous faster.

Key words :evolutionary algorithm;memory-mapped file;data storage engine;file I/O

摘要:为了观察和分析进化算法的执行情况,往往需要将算法执行过程中产生的大量数据存储在磁盘文件中。用于进化算法的嵌入式数据存储引擎EADB (Evolutionary Algorithm Database )提供了简便灵活的数据存储接口,通过使用内存映射文件技术来实现数据的快速和大量存储。相较于传统文件I/O 存储方式和一般的通用数据存储引擎,EADB 大大加快了存储速度。

关键词:进化算法;内存映射文件;数据存储引擎;文件I/O

文献标志码:A 中图分类号:TP311doi :10.3778/j.issn.1002-8331.1303-0166

Computer Engineering and Applications 计算机工程与应用

49

相关文档
相关文档 最新文档