首页 理论教育 任务智能体优化方案

任务智能体优化方案

时间:2023-06-02 理论教育 版权反馈
【摘要】:以下逐一描述任务agent在各个阶段的工作。此时aagj需要决定是提交非抢占调度方案还是抢占调度方案。抢占的效用函数如式所示:aagj根据U[ja,Sopt]的大小决定向sag提交的方案。aagj以请求的方式提交调度方案。,rjm)是资源需求;is_preemptive∈{true,false},true表示提交的是抢占方案,false表示提交的是非抢占方案。

任务智能体优化方案

任务agent也设计为慎思型agent,但行为模式较调度agent简单。以下逐一描述任务agent在各个阶段的工作。

1.初始化阶段

任务agent在初始化阶段完成注册,将各自所负责的任务的资源需求、紧前任务等提交给调度agent。

2.再调度阶段

当任务j在可行任务集ESstage中时,aagj启动。aagj根据从黑板系统读取到的全局信息,分别计算非抢占情况下的开始时间sj和抢占情况下的开始时间sja。如果sj=sja,则任务只有一种非抢占调度方案。

如果sj>sja,则表示找到了抢占调度方案。此时aagj需要决定是提交非抢占调度方案还是抢占调度方案。这一决定通过计算抢占的效用来完成。抢占的效用函数如式(10.9)所示:(www.xing528.com)

aagj根据U[ja,Sopt(RCPSP)]的大小决定向sag提交的方案。如果U[ja,Sopt(RCPSP)]>δj,δj∈(0,1)为一个预定义的阈值,则aagj提交抢占调度方案;否则提交非抢占调度方案。

aagj以请求的方式提交调度方案。请求的结构为:

其中,τ∈{a,b},表示任务的第一部分或第二部分;s是任务j的τ部分的开始时间,d是任务jτ请求持续的时间;(rj1,rj2,…,rjm)是资源需求;is_preemptive∈{true,false},true表示提交的是抢占方案,false表示提交的是非抢占方案。如果τ=a,且is_preemptive=false,则表示提交的是非抢占方案,此时有d=dja=dj;如果τ=a,且is_preemptive=true,则表示提交的是抢占方案,此时d=dja<dj;如果τ=b,则此时必有is_preemptive=false,且d=djb=dj−dja

3.迭代改进阶段

任务agent在迭代改进阶段的决策行为与在调度阶段一样,配合调度agent,从黑板系统读取环境信息、计算调度方案、评估调度方案以及决定提交的调度方案。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈