论文部分内容阅读
演化计算是智能计算科学的一个重要组成部分,是一种优化算法。它是模拟自然界生物演化过程,采用某种编码技术表示问题的可能解,并通过对编码表示进行遗传操作和自然选择来解决问题。由于演化计算具有自组织、自适应、自学习等智能特征,且描述简单、使用灵活、易于操作和问题要求的限制条件少,以及适合于大规模并行计算等特点,它已在复杂优化问题求解、及其学习和众多工程领域中取得了很大成功,成为许多科学关注的一个热点。其中函数优化是演化算法的应用方向之一。
本文以演化算法函数优化组件库的设计为背景,借助于MATLAB遗传算法工具箱中的函数,对演化算法的发展情况及各种相关技术进行了全面的分析,并把软件复用思想和组件实现技术应用到演化算法函数优化组件库的设计和开发当中。同时对演化算法函数优化组件库的设计进行了深入的研究。
一、以MATLAB遗传算法工具箱中的函数为封装对象。
1.MATLAB有着丰富的由世界著名专家、学者开发出的各种工具箱,MATLAB的优化工具箱提供了对各种优化问题的一个完整的解决方案,而且已在30个广泛的应用领域得到了很好的测试。因此,本文借助于MATLAB遗传算法工具箱的思想来开发。
2.分析了MATLAB的外部编程接口各种技术,最后决定采用MATLAB引擎技术来实现与外界沟通。因为MATLAB引擎的最大优点就是可以充分利用MATLAB的功能,包括调用工具箱函数和图形函数。
3.由于MATLAB遗传算法工具箱是一个完成演化算法大部分重要功能的程序的集合,包括写好的优秀程序,所以本文对工具箱中的函数进行封装,缩短了开发周期,提高了开发效率。
二、采用软件复用技术来分析、设计和实现演化函数优化平台。
随着软件开发方法学的演变和发展,特别是软件模式、软件组件等概念的提出,给软件重用度、软件的可扩充性、软件的鲁棒性及软件开发效率的提高,提供了一个诱人的前景。
1.采用面向对象技术和以设计模式为指导思想进行演化函数优化平台的总体设计和详细设计。
因为面向对象技术是一个优秀的软件复用技术,而且采用面向对象技术设计的结果很容易封装为COM组件对象,所以本文采用面向对象技术进行平台的设计。
设计模式是一些面向对象软件设计和开发的经验总结,在软件开发中,合理地采用设计模式,有助于更快速地得到问题的正确解决方案。把设计模式作为指导思想是可行的。
2.采用COM组件技术通过MATLAB引擎对MATLAB遗传算法工具箱中的函数实现调用和封装实现。由于COM提供的是面向对象的组件模型,COM组件提供给客户的是以对象形式封装起来的实体,对MATLAB遗传算法工具箱函数程序集合的特点相吻合。
COM组件封装MATLAB遗传算法工具箱中函数基本思路是:首先封装MATLAB引擎函数;其次通过继承引擎接口实现各种算子的封装:最后在组件对象中实现这些接口的方法。
该平台具有高效、灵活、易用、易扩充等特点。达到了可重用性、可扩展性及可移植性的目的。