To solve the problem that most existing research only considers static environments and a single objective, we will construct a realistic mathematical model for software project scheduling with dynamic and multi-objective features. Our model will capture the characteristics of dynamic events and uncertain attributes, introduce willingness as one of the attributes of software engineers, considers the objective of their satisfaction, and optimize the robustness and stability in dynamic and uncertain environments simultaneously. To adapt to dynamic environments, based on the environment learning ability of reinforcement learning, we will propose a self-learning multi-objective memetic algorithm which can determine the best searching operators in the current conditions automatically. Solving large scale project scheduling problems will be studied based on the proposed algorithm. For the feature of having a huge exploring space, a dynamic scheduling mechanism which can handle various dynamic factors and a problem specific heuristic dynamic optimization strategy will be further introduced into the algorithm, with the aim to obtain a series of time-dependent representative Pareto non-dominated solution sets efficiently. Our research is significant for improving the model and approach of project scheduling, and promoting interdisciplinary studies of software engineering and computational intelligence.
针对现有研究大多只考虑了静态环境、优化目标单一的不足,本项目拟建立与实际接轨的、具有动态多目标优化特征的软件项目调度数学模型。该模型将捕捉软件开发环境中动态事件和不确定属性的特点,引入软件工程师意愿的属性和满意度目标,并同时优化动态不确定环境下的项目抗风险能力和稳定性。为了适应动态变化的环境,本项目拟利用强化学习的环境学习能力,提出能够自主确定当前条件下搜索效果最佳的搜索算子的自学习多目标Memetic算法。基于所提算法求解大规模软件项目调度问题,针对该问题搜索空间庞大的特点,本项目拟在所提算法中,进一步引入能够同时处理多种动态因素的主动-反应式动态调度机制,以及与问题知识相关的启发式动态优化策略,以高效地搜索到一系列随时间不断变化的、具有代表性的Pareto非支配解集。本项目研究对于完善软件项目调度的模型和方法、促进软件工程和计算智能领域的学科交叉具有重要意义。
随着软件行业的飞速发展,为了赢得市场,软件公司必须进行有效的项目调度以尽可能减小软件开发的成本和周期。在一些新兴的软件开发领域,项目的规模往往很大,需要上百名软件开发人员协作完成数百项任务。随着搜索空间的激增,软件项目人力资源调度问题变得非常复杂和具有挑战性。针对现有研究大多只考虑了静态环境、优化目标单一的不足,本项目创新性地建立了具有动态多目标优化特征的软件项目调度数学模型,提出一种基于演化算法的主动-反应式动态项目调度方法,以同时处理实际项目开发环境中的紧急动态事件和不确定性属性这两类动态因素,实现软件工程师在各项任务中的有效分配。在18种标准测试实例和3种实际软件项目实例中的大量实验结果表明,所提新方法是非常有效的。通过引入鲁棒性和稳定性目标,以及为动态软件项目调度问题专门设计的动态优化策略,所提出的基于演化算法的主动-反应式调度方法在动态项目调度环境中取得了非常好的整体性能。在此工作基础上,考虑开发人员主观能动性对项目开发效率的影响,本项目又建立了一个更加实际的数学模型。提出了一种基于Q学习memetic算法的动态多目标软件项目调度方法,以在实际动态不确定的项目开发环境中,动态捕捉当前环境的特征,自主学习适当的全局和局部搜索算子,同时引入了与问题知识相关的启发式动态优化策略,以高效地搜索到一系列随时间不断变化的、具有代表性的Pareto非支配解集。将所提方法与7种已有的元启发式方法在18种标准测试实例和3种实际软件项目实例中进行对比实验,结果表明所提新方法采用的策略能够非常有效地提高算法在动态环境中的收敛性能,同时解集也具有较好的分布性能。基于Q学习的学习机制能够在不同的调度环境中选择出适当的搜索算子。本项目研究对于完善软件项目调度的模型和方法、促进软件工程和计算智能领域的学科交叉具有重要意义。
{{i.achievement_title}}
数据更新时间:2023-05-31
涡度相关技术及其在陆地生态系统通量研究中的应用
内点最大化与冗余点控制的小型无人机遥感图像配准
基于公众情感倾向的主题公园评价研究——以哈尔滨市伏尔加庄园为例
面向云工作流安全的任务调度方法
惯性约束聚变内爆中基于多块结构网格的高效辐射扩散并行算法
基于智能体多目标进化的应急资源调度模型与算法
面向动态多目标优化的量子Memetic计算策略与算法研究
基于自生式多目标Memetic算法的高维数据特征选择研究
基于Memetic多目标时变优化的全基因代谢网络重构算法研究