乐于分享
好东西不私藏

多团队敏捷软件项目如何高效调度?一种结合遗传规划与近端策略优化的求解方法

多团队敏捷软件项目如何高效调度?一种结合遗传规划与近端策略优化的求解方法

在敏捷软件开发中,项目通常被拆分为多个短周期冲刺。每个冲刺开始前,项目经理都需要回答三个问题:哪些用户故事应进入当前冲刺?这些用户故事应分配给哪个开发团队?进一步拆分后的任务又应由哪些员工完成?

在单团队、小规模项目中,这些问题或许可以依赖经验判断。但在多团队敏捷开发场景下,调度难度会显著增加。不同团队具有不同的开发经验、开发偏好和开发速度;用户需求可能在开发过程中动态新增;员工可用工作时间也可能随冲刺变化。因此,传统依赖人工经验或固定规则的调度方式,难以充分适应复杂动态环境。

围绕这一问题,本课题组构建了考虑团队属性的敏捷软件项目调度模型,并提出一种结合遗传规划与近端策略优化的求解算法EPPO-GP,为多团队敏捷软件项目提供智能化调度决策支持。相关研究已发表在人工智能领域SCI一区top期刊《Engineering Applications of Artificial Intelligence》中。

敏捷软件项目开发流程

一、面向多团队敏捷开发的调度建模

多团队敏捷软件项目调度并不是简单的任务分配问题,而是一个包含多层级决策的动态优化过程。本文将每个冲刺中的调度过程划分为三个紧密关联的子问题:用户故事冲刺分配、用户故事团队分配、任务员工分配。

其中,用户故事冲刺分配决定哪些用户故事进入当前冲刺;用户故事团队分配决定每个用户故事由哪个团队负责;任务员工分配则进一步确定用户故事拆分后的具体任务由哪些员工完成。这三个子问题相互影响,共同决定项目的执行效率和资源利用效果。

在此基础上,本文进一步考虑团队开发经验、团队开发偏好、用户故事动态新增以及员工最大工作时长变化等因素,使调度模型能够更好地反映多团队敏捷开发中的动态性和复杂性。

二、用遗传规划自动生成调度规则

在使用PPO算法求解调度问题时,智能体需要根据当前项目状态选择合适的调度动作。对于本文问题而言,动作可以理解为选择哪一条调度规则来生成当前冲刺的调度方案。

传统方法通常依赖人工设计启发式规则构造动作空间,但人工规则容易受经验限制,也难以适应复杂多变的项目环境。为降低对人工规则的依赖,本文引入遗传规划自动生成调度规则。

GP能够通过选择、交叉和变异等操作,不断进化候选规则,最终形成一组质量较高且具有多样性的调度规则。也就是说,算法不再完全依赖人工预设优先选择价值最高的用户故事优先分配给开发速度最快的团队等固定规则,而是通过迭代进化自动形成更适合当前调度场景的规则集合。

图2 GP算法的运行流程图

三、EPPO-GP:用近端策略优化选择更合适的规则

为了提升算法在复杂动态环境下的探索能力,本文还对PPO进行了改进,得到探索增强型PPO算法,即EPPO。一方面,在Actor网络损失函数中引入策略熵,使智能体在学习过程中保持一定的策略多样性;另一方面,在Actor网络损失函数的梯度更新过程中加入OU噪声,降低算法陷入局部最优的风险。

本文将EPPOGP结合,形成EPPO-GP算法。其核心思路可以概括为两步:首先,由GP自动进化生成候选调度规则,构造智能体动作空间;其次,由EPPO根据当前环境状态选择调度规则,并通过与环境交互不断优化策略。

图3 所提算法EPPO-GP的算法框架

四、实验结果:更高的累计奖励与更稳定的调度性能

为验证所提方法的有效性,本文在小、中、大三组人工合成算例和一组真实实例上进行了实验。实验算例覆盖不同规模的用户故事数量、团队数量和团队初始速度,并设置了动态新增用户故事、员工最大工作时长变化等动态因素。

在算法性能验证部分,EPPO-GP与多种代表性强化学习、深度强化学习和智能优化算法进行了对比,包括DDQNDDPGSarsaTD3PPO等。实验结果表明,EPPO-GP在四组测试集上均取得最优平均累计奖励,较第二优算法分别提高2.32%2.96%2.13%2.92%

图4 EPPO-GP与九种对比算法的累计奖励随训练代数变化曲线

表1 EPPO-GP与九种对比算法在20次测试中的平均累计奖励

五、研究意义

本文的研究价值主要体现在三个方面。

首先,在模型层面,本文面向多团队敏捷开发场景,将团队开发经验、团队开发偏好、新用户故事到达和员工工作时长变化等动态因素纳入统一调度框架,使模型更加贴近真实敏捷开发环境。

其次,在算法层面,本文将遗传规划与近端策略优化相结合,利用遗传规划自动生成调度规则,降低了动作空间构造对人工经验的依赖;同时,通过策略熵和OU噪声增强PPO的探索能力,提高了算法在复杂动态环境下的学习效果。

最后,在应用层面,EPPO-GP能够在每个冲刺开始时自动生成用户故事选择、团队分配和员工任务分配方案,为项目经理提供兼顾用户故事价值、团队效率、团队满意度和员工时间利用率的候选调度方案。

作者介绍

申晓宁:女,教授,就职于南京信息工程大学自动化学院,研究方向为基于智能优化算法的综合能源系统优化、低空复杂环境下的多无人机协同调度、移动群智感知任务分配、软件项目调度等。

施江熠:男,硕士生,就读于南京信息工程大学自动化学院,研究方向为智能计算、深度强化学习、智能计算、深度强化学习、敏捷软件项目调度

张光慧:女,硕士生,就读于南京信息工程大学自动化学院,研究方向为智能计算、深度强化学习、综合能源系统优化。

王智龙:男,硕士生,就读于南京信息工程大学自动化学院,研究方向为进化算法、多无人机协同规划。