Page 81 - 基于深度学习的人工智能技术研究
P. 81
第二章 人工智能核心技术
了传统软件工程问题利用算法求解的方式,而是利用群体智能优化算法将问题进
行优化,从而发现与问题最相似的最佳解法。在应用 SBSE 时需要满足两个前提
条件:其一是让问题表述转变为形式化的优化问题;其二是软件工程中很多问题
都有相关的软件度量标准,这也是初始适应度函数候选集的由来,在应用群体智
能时明确适应度函数,为后期工作做好准备。软件工程问题具备这两个特点为群
体智能应用提供了可能性,利用 SBSE 方法可以解决软件工程中形式化的优化问
题。目前,SBSE 研究领域不断发展,众多研究人员发表了关于 SBSE 领域的诸
多论文,为 SBSE 研究提供了更多数据支持和研究资源。
(2)众包软件工程
众包顾名思义就是公司或机构利用互联网将工作任务外包给大规模网络群体
的行为,这是一种开放协作的新兴模式。众包软件工程应用这种模式解决软件工
程问题,利用互联网在线平台将软件工程问题外包给众多个体解决问题,通过人
类群体智能得出最优解决方法。在这个过程中,互联网众包平台、开发者、提出
需求方这三方面是主要因素。其中公司和个人都可以是提出需求方,公司通过互
联网众包平台完成公司业务,从而实现公司节约成本、高效完成软件开发任务的
目的。开发者是帮助需求方解决问题、完成软件开发任务的个人或团队。互联网
众包平台是整个众包过程中的关键环节,是实现整个业务顺利开展的管理部门。
软件众包平台应具备软件开发环境和工具、知识分享和协同工具、项目管理工具
等条件。众包软件工程作为人类群体智能应用于软件工程的一种实践形式,大幅
度提升了软件开发速度和软件品质。鉴于众包软件工程的诸多优势,其发展速度
十分迅猛,并在不断完善、不断进步。
(3)软件工程方法统一框架
基于搜索的软件工程主要是利用优化算法解决相应问题,众包软件工程是人
类群体智能高效汇集和应用的一种代表形式,这两种群体智能的表现形式虽然不
同,但是问题求解空间和范围通常是有限的,尤其是群体智能利用个体间的交互
作用拓展了解决问题空间,从而顺利找到解决问题的最佳方案。对于基于群体智
能的软件工程问题求解统一框架而言,主要是在明确软件工程问题的基础上,以
引导群体中个体给出问题解决方案,再利用群体智能分析和评估这些解决方案,
以实现解决方案的优化,从而产生更好的解决方案。通过不断重复和循环这样的
过程,最后寻找到符合终止条件的群体智能最终求解结果。基于群体智能的软件
73

