电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

动态任务分配范文

来源:莲生三十二作者:开心麻花2026-01-071

动态任务分配范文(精选9篇)

动态任务分配 第1篇

随着应急指挥网络系统复杂程度不断提高,系统规模将越来越大。这就造成应急指挥系统中网络的规模越来越大,功能越来越复杂,加之网络攻击技术与计算机病毒,使得网络故障的发生是不可避免的,而且发生的概率会越来越大,网络故障诊断逐渐成为应急指挥系统的关键。目前采用的故障诊断技术及方法无法满足应急指挥系统故障测试与诊断的要求。这时就需要协同故障诊断技术为网络系统提供更完备的综合保障支持。协同故障诊断技术包括任务分解,任务分配和决策融合等环节[1]。该文重点研究了其中的任务分配,提出了基于改进合同网的Agent动态任务分配算法,有效地避免了网络的拥塞,提高了协同故障诊断效率。

2 动态合同网算法

本文将管理Agent替代合同网算法的管理者,将执行Agent替代合同网算法的承包商完成合同网算法在Multi-Agent协同故障诊断中的应用,如图1所示。

传统合同网在MAS中的直接应用缺点较多,该文根据传统合同网算法的缺点提出了一下几点改进:

1) 减小管理Agent发标量。建立Agent性能库,使管理者根据所注册Agent的性能进行发标,避免了管理Agent广播标书带来的通信拥塞。

2) 与蚁群算法相结合。为每个执行Agent完成某项任务建立相应的信息素,这样就可以形成正反馈,管理Agent就可以根据前期经验进行任务分配。

3) 任务结果评估。传统合同网算法没有任务结果评估,该文将任务结果评估纳入到合同网算法中来,实现了系统的反馈。

2.1注册Agent性能库

管理者对每个注册Agent的能力都有一个数据库,例如Agent i执行任务j的能力为Cap(i,j) 。有能力执行任务的Agent将其初始能力值设为1,没有能力执行任务的Agent将其初始能力值设为0,这样就以数据库中的表的形式建立了Agent性能库。

设置性能库的本质是为了让管理者能够将任务分配给能够胜任的承包商执行,以减少资源耗费。所以有了注册承包商性能库,就可以根据性能库分发任务,这样就避免了传统合同网算法使用广播带来的通信量大的问题,有效避免的通信拥塞。

在合同网算法里,没有绝对的管理者,也没有绝对的承包商,它们之间是相互转化的,所以每一个有注册承包商的管理者都有性能库,而且性能库分为两部分:一部分为管理部分;另一部分为执行部分(执行部分只有自己的性能),如图2所示。

2.2 Agent信息素

传统合同网算法在竞标阶段执行Agent只要发现自己符合任务要求就会向管理Agent发送竞标标书,而且管理Agent会对每一个标书进行评估,这样就会导致管理Agent的负载过大,影响整个系统的效率。该文从减小执行Agent投送竞标标书的数量的角度出发,提高了执行Agent的自主性和竞争性,引入蚁群算法的蚂蚁信息素,对可执行任务的Agent进行进一步的寻优。

当管理有一个任务要进行分配时,将会有若干个执行代理可以执行,所以就引出了最优问题。为了让任务分配趋于最佳合理状态,引入了蚂蚁的信息素,并将蚁群算法中的转移概率公式改进为所需的代理i执行任务j的效果概率公式,如下式。

其中Pij(t) 表示t时刻,代理i执行完任务j后,在所有执行代理中的执行效果优劣概率;τ(i,j) 为t时刻代理i执行任务j的信息素值;capable为能够执行任务j的代理的集合;T(i,j) 为t时刻代理i执行任务j的执行时间的倒数,即:

其中Tc为任务的完成时间;Td为代理i到代理j的延迟时间,单位毫秒(ms)。

依据以上公式(1)算出每一个执行Agent执行任务j的完成优劣的概率,概率越大,该Agent完成任务j的效果就越好。所以本文根据P?ij(t) 的大小选择概率大的执行任务j,这样既保证了任务的完成质量和效率,又减小了系统的通信量和负载。

针对算法中信息素和参数是动态的这一特点,为了保证全局寻优,该文利用轮转赌法选择出来的Agent执行任务。轮转赌法是模仿轮盘转动进行选择[5],如图3所示,将各Agent执行任务完成的优劣概率在赌轮上划分成扇形区域,然后转动轮盘,使其随机转动。当轮盘停止转动时,指针所指向的扇区就是所要选择执行任务的Agent。所以完成优劣概率大,被选中的几率就大。被选中的概率与完成优劣概率成正比。

利用上述的轮转赌法可以选择完成能力优秀的Agent来执行任务j,显著提高了任务完成的效率。如果通过轮转赌法选择的Agent没有完成任务,那么会继续通过轮转赌法选择Agent执行任务,直到任务完成为止。

当任务完成后,会执行对执行任务的Agent信息素进行更新,更新的公式为:

根据上述公式可以将信息素更新,这样就可以将完成能力优秀的Agent找出,并且也可以根据信息素的大小来判定执行Agent执行某一任务的效率。

2.3 算法描述

1) 算法的初始化阶段,将所有数据进行初始化,包括τ0,ρ,Q,Td。

2) 定期测试网络延迟,以此来更新延迟时间Tc;更新注册Agent性能库的性能参数Cap(i,j) ,管理Agent下的注册Agent会定期上报更新其性能参数Cap(i,j) 。

3) 管理代理根据注册Agent性能库来确定能执行任务的执行Agent。

4) 利用公式(1)计算已选Agent的完成概率,然后进行排序。

5) 利用轮转赌法在可选执行Agent中选择要执行任务的Agent,并在可选执行Agent表中去除,然后向执行Agent下发标书。如果执行Agent投标则跳到6),否则重复本步骤。

6) 管理Agent接受到投标的执行Agent分发任务,然后等待执行结果。

7) 执行Agent执行完任务后,上报管理Agent,并更新完成时间Td,并更新信息素τij(t) 。

2.4 算法的效率

假设一个Multi-Agent系统由管理Agent和n个执行Agent组成。传统的合同网采用广播式发送标书,则Agent之间进行一次通信所需要的时间设为Tm,管理者Agent的评估时间设为Tp,Agent完成任务的时间设为Tc。则传统合同网总的时间耗费为T1= 3Tm+ n Tc+ Tp。而改进后的评估时间Tj,因为能力库的建立只对由能力完成任务的Agent进行评估,所以将会大大减少评估的时间,虽然需要计算完成优劣的概率,但是相较于评估标书减少,对评估时间的影响极小。设改进后算法参加评估的Agent的数量为αn(0 < α < 1) ,则αn?Tj< n Tc;由于改进的算法采用了全局寻优策略,有效的运用了前期任务完成情况的经验,所以改进后算法的任务完成时间Tv< Tc;改进后算法与传统合同网算法相比加大的减少了管理Agent发送标书和执行Agent发送竞标标书的数量,所以系统的通信资源耗费较少,系统的整体负载较低,因此改进后算法的一次通信时间Tn< Tm。改进后算法的时间开销为T2= 3Tn+ αn Tj+ Tv,可以看出T2远远的小于T1。综上所述,改进后的合同网算法在效率上远远高于传统合同网算法。

3仿真分析

本文根据协同故障诊断的需求搭建了如下的仿真环境。该仿真环境共有10台计算机。其中由1台管理Agent计算机,1台交换机,10台执行Agent计算机。其中5台安装Linux,5台安装Windows XP。参数的设置为:a=1,b=5,r=0.1,Q=1000,tij(0)=1,Td= 500。

将仿真平台的所有电脑安装上带有专家系统的Agent,并建立为每个Agent建立能力数据库和信息素数据库。给予管理Agent一个由20个任务(例如:链路诊断,网卡故障诊断,交换机端口诊断等)组成的复杂任务,在这20个任务中有执行Agent可以执行有的不可以,每台电脑的执行时间也不同。最后按照传统合同网算法和动态合同网算法进行任务分配,对20个任务进行30次分配,仿真结果如图4所示。

从图中可以看出,改进后的合同网算法完成任务的总时间明显小于传统合同网算法,提高了任务分解的效率;改进后合同网算法的完成总时间波动性较小,增加了任务分解的稳定性。反观传统合同网算法完成任务总时间较大,且有较大的波动性,算法的效率较低。

4 总结

针对域间协同故障诊断中传统MAS任务分配算法的不足和传统合同网算法的缺点,提出了动态合同网算法,提高了算法的效率,仿真结果表明,该算法有效地避免了网络的拥塞,提高了协同故障诊断效率。但是,协同故障诊断中任务的决策融合研究的较少,将是下一步研究的重点。

摘要:随着应急指挥网络系统规模不断增加,网络故障诊断逐渐成为应急指挥网络系统的关键。针对域间协同故障诊断中的任务分配问题,提出了基于改进合同网的Agent动态任务分配算法,建立了Agent性能库,使管理者根据所注册Agent的性能进行发标,同时,为每个执行Agent完成某项任务建立相应的信息素,实验结果表明,该算法有效地避免了网络的拥塞,提高了任务分解的效率。

任务分配 第2篇

一、第一任务组: 组 长: 孙礼超

成 员: 孙礼刚 丁 军、娄 玄、赵 威、刘培雪、代良坤、张 奎、孟 娜、时远征、潘金花 联络员: 赵 威

任 务:对应2012版二级医院评审标准第一章“医院功能任务”篇展开工作。

1、医院设置、功能和任务符合区域卫生规划和医疗机构设置规划要求;

(责任人:孙礼超、赵 威)

2、积极探索科学规范的公立医院内部管理体制;

(责任人:丁 军、娄 玄)

3、承担公立医院与基层医疗机构对口协作等政府指令性任务;

(责任人:张 奎、代良坤)

4、应急管理;

(责任人:刘培雪、营同标)

5、临床医学教育与继续医学教育;

(责任人:丁 军、时远征)

6、科研及其成果

(责任人:孙礼刚、潘金花)

二、第二任务组: 组 长:孙礼超

成 员:为全体分项目责任人 联络员:潘 彬

任 务:对应2012版二级医院评审标准第二章“医院服务”篇展开工作。

1、预约诊疗服务;(责任人:许 久)

2、门诊流程管理;(责任人:孙礼刚)

3、急诊绿色通道管理;(责任人:营同标)

4、住院、转诊、转科服务流程管理;(责任人:高贤路)

5、基本医疗保障服务管理;(责任人:潘彬)

6、保障患者合法权益;(责任人:王阿静)

7、投诉管理;(责任人:孙礼超)

8、就诊环境管理。(责任人:张崎峰)

三、第三任务组: 组 长:高幼丽

成 员:为全体分项目责任人 联络员:秦 伟 任 务:对应2012版二级医院评审标准第三章“患者安全”篇展开工作,做好患者安全相关制度制定,院感监控和院感重点防控工作。

1、确立查对制度,识别患者身份;(责任人:边 丽)

2、确立在特殊情况下医务人员之间有效沟通的程序、步骤;

(责任人:张雪莉)

3、确立手术安全核查制度,防止手术患者、手术部位及术式发生错误;

(责任人:王慧娟)

4、执行手卫生规范,落实医院感染控制的基本要求;

(责任人:李影)

5、加强特殊药物的管理,提高用药安全;

(责任人:娄 玄)

6、临床“危急值”报告制度;

(责任人:黄秀梅)

7、防范与减少患者跌倒、坠床等意外事件发生;

(责任人:武凤舞)

8、防范与减少患者压疮发生;

(责任人:徐雪)

9、妥善处理医疗安全(不良)事件;

(责任人:张莉)

10、患者参与医疗安全

(责任人:吴计侠)

四、第四任务组: 组 长:孙礼刚

成 员:为全体分项目责任人 联络员:时远征

任 务:对应2012版二级医院评审标准第四章“医疗质量安全管理与持续改进”篇与第七章“日常统计学评价”篇展开工作。

第四章:医疗质量管理与持续改进

1、医疗质量管理组织;(责任人:孙礼刚)

2、医疗质量管理与持续改进;(责任人:丁军)

3、医疗技术管理;(责任人:时远征)

4、临床路径与单病种质量管理与持续改进;(责任人:高贤路)

5、住院诊疗管理与持续改进;(责任人:高善礼)

6、手术治疗管理与持续改进;(责任人:朱严理)

7、麻醉管理与持续改进;(责任人:王阿静)

8、重症医学管理与持续改进;(责任人:孙礼刚)

9、感染性疾病管理与持续改进;(责任人:张雪莉)

10、中医管理与持续改进;(责任人:欧坤)

11、康复治疗管理与持续改进;(责任人:刘明)

12、疼痛治疗管理与持续改进;(责任人:闫筱)

13、精神科疾病的管理与持续改进;(责任人:孟娜)

14、药事和药物使用管理与持续改进;(责任人:娄玄)

15、临床检验管理与持续改进;(责任人:黄秀梅)

16、病理管理与持续改进;(责任人:)

17、医学影像管理与持续改进;(责任人:刘伟)

18、输血管理与持续改进;(责任人:)

19、医院感染管理与持续改进;(责任人:高幼丽)20、血液净化管理与持续改进;(责任人:)

21、医用氧舱管理与持续改进;(责任人:)

22、其他特殊诊疗管理与持续改进;(责任人:)

23、病历(案)管理与持续改进(责任人:高幼丽)

第七章:日常统计学评价(1、医院运行基本监测指标;

2、住院患者医疗质量与安全监测指标;

3、单病种质量监测指标;

4、重症医学(ICU)质量监测指标;

5、合理使用抗菌药物监测指标;

6、医院感染控制质量监测指标)

五、第五任务组: 组 长:高幼丽

成 员:为全体分项目责任人

联络员:边丽

任 务:对应2012版二级医院评审标准第五章“护理管理与质量持续改进”篇展开工作。

1、确立护理管理组织体系;(责任人:高幼丽)

2、护理人力资源管理;(责任人:边丽)

3、临床护理质量管理与改进;(责任人:徐雪)

4、护理安全管理;(责任人:李颖)

5、特殊护理单元质量管理与监测(责任人:张毛飞)

六、第六任务组: 组 长:代 超

成 员:为全体分项目责任人

联络员:秦庆良

任 务:对应2012版评审标准第六章“医院管理”篇展开工作,主要是资料收整归类。

1、依法执业;(责任人:王家队)

2、明确管理职责与决策执行机制,实行管理问责制;(责任人:孙礼刚)

3、依据医院的功能任务,确定医院的发展目标和中长期发展规划;(责任人:代超)

4、人力资源管理;(责任人:闫华)

5、信息与图书管理;(责任人:秦庆良)

6、财务与价格管理;(责任人:闫华)

7、医德医风管理;(责任人:孙礼刚)

8、后勤保障管理;(责任人:孙礼超)

9、医学装备管理;(责任人:夏云彩)

10、院务公开管理;(责任人:闫华)

11、社会评价。(责任人:刘培雪)

七、协调指导组 组 长:代 超 成 员:院委会成员 联络员:孙礼超 工作职责:

1、对照《评审标准》要求,组织自查、评价、考核,督导各临床、门诊医技及行管科室逐项落实。

2、督查各临床、门诊医技及行管科室开展工作情况,按照《评审标准》对分管范围的工作组织自评,于每周写出自评报告,说明丢分原因,以表格形式将自查报告上交综创办。

3、服从医院迎接二级综合医院评审领导小组及综创办的统一管理,及时落实各项目标任务。

4、督导检查和自查工作中发现的问题,及时向医院迎评领导小组及综 创办汇报,及时研究改进办法和措施,保证各项目不丢分。

多工厂企业生产任务分配方法探讨 第3篇

一、多工厂企业分配生产任务原理与传统求解法

首先以两个具体真实的工厂为例, 讨论如何分配生产任务的问题。由于在同一企业内部的多个工厂之间进行产量最优分配, 最核心的问题是明确这些工厂总的边际成本函数。为简单起见, 本文只介绍其中最关键的步骤即总边际成本的求法, 其它步骤并无二致。

原理:一个用两个工厂A和B生产的企业, 其边际成本分别为MCA和MCB, 经理将生产任务在两个工厂之间分配, 使其边际成本相等, 即:

MCA=MCB时, 企业产量QT=QA+QB的总成本最小。

生产部门可以提供给经理的两个工厂的边际成本, 为简单的线性函数:

MCA=28+0.04QA (1)

MCB=16+0.02QB (2)

注意:所估计的工厂A (1978年成立) 的边际成本要比工厂B (1995年成立) 的边际成本在每个产出水平上都高, 工厂B更有效率。

对于这类问题, 总是先求出总的边际成本函数, 然后再按照边际成本相等的原则进行分配。这里如何求得总的边际成本函数成为问题的关键。关于总边际成本函数的求法, 一般的求解方法如下:

首先从上面两个边际成本函数中分别求逆函数:

QA=25MCA-700

QB=50MCB-800

QT=QA+QB

同时记住这个简单加总要求:

MCA=MCB=MCT,

即QA=25MCA-700

QB=50MCB-800

将这两个边际成本反函数加总, 得到总成本函数:

QT=QA+QB=75MCT-1500

然后将该式反过来表示, 会得到下面的边际成本公式

MCT=20+0.0133QT

二、多工厂企业分配生产任务的简易求解法

事实上, 只要将 (1) +2 (2) 立即可以得到:

MCA+2MCB=60+0.04 (QA+QB)

我们知道, MCA=MCB=MCT, 同时QT=QA+QB, 就可得出:MCT=20+0.0133QT

三、多工厂企业分配生产任务的推广

为进一步说明本文算法的优势, 现假设一个大企业有很多工厂, 数目为N, 每个工厂的边际成本函数分别为:

MC1=a1+b1q1;MC2=a2+b2q2MCn=an+bnqn;

以上各个工厂的边际成本函数可以写作如下:

MC1/b1=a1/b1+q1

MC2/b2=a2/b2+q2

MCn/bn=an/bn+qn

将上列式子左右对应相加, 注意其中, MC1=MC2==MCn=MC;可得:

由于:q1+q2+qn=q

所以有:

这样就得到了任意多个工厂总的边际成本函数。

本文提出的这种简易算法没有改变原有的产量分配原则, 而是充分地、灵活地利用了分配原则。S.Charles Maurice与Christopher R.Thomas的算法本身便没有任何错误, 但过分拘泥于按照总边际成本的定义来求解, 在其给出的求解法中, 两次用了求逆和求反的方法, 导致算法过于复杂。简易算法的关键在于抓住QT=QA+QB, 为了保证这一点, 必须让Q1、Q2QN系数相同。在企业有更多工厂同时进行生产, 而经理要在各个工厂之间进行产量分配时, 本文提出的这种算法的相对优势就会进一步凸显出来。

参考文献

任务分配管理制度 第4篇

第一章 总则

第一条 本规定制定的目的:

(一)有利于公司规范化管理;

(二)各部门可通过任务分配本清楚地记录本部门对公司所做出的贡献;同时便于主管进行任务分配,减少员工工作的阻力;

(三)作为员工调薪、绩效考核、评优的依据,当多个领导下发任务造成任务冲突的解决依据。

第二条 任务分配的原则:公平、公开、公正、平等、自愿。第三条 凡任务分配都必须详细记录。任务分配本分公司任务分配本(用于跨部门任务分配)、部门任务分配本两种。

第四条 凡任务都须以会议的形式进行分配。

第五条 任务分配本上禁止乱涂乱画;分配本由各部门主管应妥善保管,不得遗失。

第六条 任务分配本凡涉及公司内部机密者,不得外泄。第七条 任务分配本用完之后请将其交于总经理助理处入档,并重领新的任务分配本。

第八条 任务可为两种:日常任务和临时性任务。日常任务包括每日/每周/每月应循环做的事,将日常任务事项列于临时性任务之前。

第二章 人员安排 第九条 任务分配的人员安排如下:

(一)总经理:指导、协调和监督各部门的任务分配,落实奖惩措施;

(二)主管:任务分配;

(三)员工:积极配合,执行任务;

(四)总经理助理:印制任务分配本,定时组织各部门主管讨论任务分配管理制度的落实效果,完善任务分配管理制度。

第三章 工作流程

第十条 任务分配的工作流程如下:

任务分配部门主管任务执行员工任务验收“谁安排,谁验收”任务监督监督小组 第十一条 任务分配表的填写方法:

(1)编号的编写以部门名称拼音首字母+当天日期为准,若当天出现多份任务分配表,以当天日期+(第几份)为准,如综合部2011年5月10日进行的任务分配为ZH20110504(1);

(2)完成时限由部门主管与员工协商确定;

(3)员式在自愿的原则下同意任务分配者,签名确认,若员工不同意任务分配,须在备注中说明原因,部门主管视任务紧急程度将信息及时反馈于总经理;

(4)返工次数采用“正”字记数法,满5次为一个“正”字,依此类推;

(5)验收实行“谁安排,谁验收”的原则,也就是说,谁安排分配了任务,谁就对任务进行验收;多次返工多次验收;

(6)验收评价分五等级,从高到低依次为:非常满意,满意,合格,需改进,不可接受(依次用5,4,3,2,1来代替);

(7)如验收人在员工完成任务后,暂时没时间验收,导致验收日期超过完成时限,请验收人验收后在备注中说明原因;

第十二条 回朔任务号的编写方法:每份任务分配表右上角的编号+序号。各部门分别持有一份任务分配本,用于记录本部门员工的任务分配和执行情况,凡任务分配都必须详细记录,本分配本作为员工绩效考核和员工调薪的依据,空白、不记录者将追究部门主管责任。

第十三条

若是跨部门的任务分配,流程如下图所示: 主管协调沟通会议的形式达成一致记录在公司任务分配本上并签名确认下达于员工记录在部门任务分配本上员工同意并执行项目负责人于完成时限内对部门主管进行验收,记录于公司任务分配本中;部门主管对员工进行验收,填于部门任务分配本中。验收

第十四条

若员工不同意任务分配,各部门主管可参考以下解决机制:(不局限于此解决方法,各部门可灵活应变)

(一)、部门主管应与员工沟通了解员工不同意任务分配的原因或任务解决存在的困难,共同探讨困难的解决办法;

(二)、在沟通无效下考虑能否将此任务交于其他员工来完成;

(三)、若其他员工不同意接受任务分配,部门主管应于1天内反馈(视任务的紧急程度,可采取打电话、面谈等方式)于总经理。

(四)、反馈后的协调处理机制:

1、判断分析:判断此项任务的重要性、紧急程度、解决的困难程度等;

2、与部门主管沟通协调:了解员工不同意任务分配的原因、探讨解决方法(如给予适当奖励或延长完成时限、将任务交给其他员工来完成、总经理对员工作思想工作)等;

3、部门主管进一步的落实。

第四章 监督

第十五条

设监督小组。从公司各部门抽调3~5名员工组成监督小组,每周或每月对各部门的任务分配情况进行抽查,并作好评价。

第五章 奖惩

第十六条

奖惩原则:有奖有罚,多奖轻罚,减轻员工压力。第十七条

设“每月之星”、“优秀员工”();年终奖、季度奖。

第十八条

无法按时完成任务,须接受惩罚。惩罚方式采取义务劳动的形式(如到综合部加班整理合同)。

第十九条

凡遗失任务分配本者,公司将对部门主管进行重罚,罚款200元。

第六章 附则

第二十条

一种动态频谱分配算法 第5篇

本文主要研究如何合理规划与优化分配资源提高频谱复用效率问题。模拟退火算法 (SA) 作为局部搜索算法的扩展, 在每一次修改模型的过程中, 随机产生一个新的状态模型, 然后以一定的概率选择邻域中能量值的状态。这种采用新模型的方式使其成为一种全局最优算法, 并得到理论证明和实际应用的验证。

1 模拟退火算法

模拟退火的概念是根据熔融金属中粒子的统计力学与复杂的组合最优化问题的求解过程的相似性而提出来的。统计力学的研究表明, 在温度T, 粒子停留在状态r满足波兹曼 (Boltzmann) 概率分布

式 (1) 中E (r) 为r状态的能量;kb>0, 为Boltzmann常数;T为绝对温度, 量纲为1;Z (T) 为概率分布的标准化因子

在温度T时, 根据金属内部粒子的状态选择规律, Metropolis等提出了以下准则:设初始状态i为当前状态, 该状态的能量为Ei, 然后对该状态作随机微扰, 得到一个新状态j, 新状态的能量为Ej。如果Ej<Ei, j就为重要状态;如果Ej>Ei, 考虑到热运动的影响, j是否为重要状态要根据固体处于该状态的概率来判断。固体处于状态i和j的概率的比值等于相应Boltmann因子的比值, 即

用随机数据发生器产生一个[0, 1]区间的随机数ε, 若r>ε, 则新状态j为重要状态, 就以j取代i成为当前状态, 否则仍以i为当前状态。再重复以上新状态的产生过程。在大量固体状态变换后, 系统趋于能量较低平衡状态, 固体状态的概率分布趋于Boltmann概率分布。

以上接受新状态的准则称为Metropolis准则, 相应的算法则称为Metropolis算法。SA中采用上述准则, 故成为全局寻优算法。

2 基于改进模拟退火算法的频率分配

2.1 模拟退火算法模型扰动

SA中新模型的产生是对当前模型进行扰动得到的, 常规用的是高斯分布法, 而快速模拟退火计划采用依赖于温度的似Cauchy分布法, 即

式 (4) 中:mi为当前模型中第i个变量;u为[0, 1]内均匀分布的随机数;[Ai, Bi]为mi的取值范围;m'i为扰动后的模型中第i个变量, 且m'i∈[Ai, Bi]。

Cauchy分布产生新模型的优点是:在高温情况下搜索范围大, 在低温搜索时, 仅在当前模型附近有一平坦的“尾巴”, 使其易于迅速跳出局部极值。这一改进加快了SA的收敛速度。

2.2 改进接收概率

由广义Boltmann-Gibbs分布, 可给出新的接收概率计算公式

式中:ΔE=E (m1) -E (m0) 。h为实数。当h→1时,

这是常规SA的接受概率公式, 为式 (6) 的特例。

2.3 基于改进算法的频率分配

基于改进模拟退火算法的频率分配算法步骤如下:

(1) 给定初温t0, 随机产生解Fold, 计算代价函数Cold;

(2) for k=1 to NUM loop

(3) 结束, 输出最优结果。

为证明频率分配方法的有效性和普遍性, 初始解在可用频率资源中随机生成。

通常SA算法应用于频率分配时, 新状态采取随机产生的方法, 这确保了全局收敛性能, 但也导致后期搜索速度慢;因此根据破坏约束的已有信息建立新状态, 有利于加速SA算法的收敛速度。新状态按如下步骤进行创建:

(1) 在计算代价函数的同时, 记录每个违反约束条件中任意一个频点, 已记录过的就不重复记录;

(2) 在以上违反约束频率记录的基础上, 从每个频率集Fi中随机抽取两个频率 (对应于频率表长度为32和64时) ;

(3) 从频域Φ未分配的频率中随机选择步骤 (1) 和步骤 (2) 中记录的数目一样多的频点数;

(4) 将步骤 (3) 中选择的频点随机替换步骤 (1) 和步骤 (2) 中记录的频点, 即完成新状态的建立。

可以看出, 新方法采用一定程度上的确定性转移规则, 同时保证一定的随机性, 可比普通SA算法更有时间效率。

当算法运行中满足下列任何一个条件时终止算法:

(1) 温度tk降低到指定的tmin。

(2) 循环次数超过最大迭代次数 (设为50次) 。

(3) 代价函数C=0。

3 实例验证

在某网络规划软件中, 需要进行频率分配, 跳频组网的参数由用户自行决定, 并在Visual Studio2010应用程序控制台上进行手动输入, 这也造成每次算法运行所得结果本身具有一定的随机性。

初始频率分配方案跳频同步干扰概率:

为验证频率分配方法的性能, 对频率表长度为32、跳频子网数量分别为4、6和8的情况下频率表进行频率分配求解。跳频电台处于发射状态的概率α=0.1, 电台中频频率为70MHz, 跳频频段为30MHz~90MHz, 跳频间隔为25k Hz, 共2400个频率点。假定每个跳频频率表的第6位为同步信号频率;射频跳频滤波器30d B带宽为中心频率的6%。

仿真中, SA算法初温t0=100, 冷却参数δ=0.98, 终止温度tmin=1, 循环最大迭代次数为50次。为分析跳频同步信号特殊约束对跳频通信同步性能的作用, 对跳频同步信号频率未采取特殊约束的情况也进行了求解。跳频通信系统频率分配优化前后干扰概率的求解结果如表1所示。

通过上表能够看出, 对跳频同步信号采取特殊约束, 可以明显减小跳频同步信号受干扰的概率。即使是在同址干扰最严重的情况下, 即8个子网均采取全频段跳频方式, 采用跳频同步信号特殊约束后, 同步信号被干扰的概率也只有0.0012%, 远远优于未采取特殊约束时0.0653%的同步信号被干扰概率。采用跳频同步信号特殊约束可以在基本不影响频率分配总代价函数的基础上显著减小跳频同步信号受干扰的概率, 其实质是在同样破坏约束的情况下, 尽可能避免该被破坏约束中的被干扰信号为同步信号, 这样就能提高同址跳频通信系统的同步性能。

4 结语

在无线通信领域中, 网络的合理规划和优化是十分重要的现实问题。在电磁环境相当复杂的无线通信中, 这一问题尤为突出。频谱分配的前提和基础是场强预测、电波覆盖是否合理、正确, 这关系到通信间干扰分析、频率指配的可靠性, 最终决定有限频率资源利用的高效性、科学性。

摘要:针对机动通信网络, 提出一种效能评估算法, 研究了效能评估指标体系, 包括基本通信能力、通信保障能力、互连互通能力、安全保密能力、抗毁顽存能力、机动快反能力、动态变化能力、快速自适应能力。首先明确任务需求, 确定效能参数, 构建效能评估模型, 获取数据, 研究效能评估方法, 选择合适的评估算法, 估算模型参数得出评估结果;最后通过实例说明频谱分配在特定应用场景下的效能评估。

关键词:模拟退火,效能指标,模型参数,权重系数,层次分析法

参考文献

[1]Bo Lennselius and Rydstrom.Software Fault Content and Reliability Estimations for Telecommunications System[J].IEEE Trans.Selected Areas in Communications, 1990, 8 (2) :262-271

动态任务分配 第6篇

近二十年来无人机的使用引起了越来越多的关注,目前多无人机协同已经成为无人机作战使用的必然选择。多无人机协同任务规划是实现和增强无人作战飞机系统作战能力,使任务复杂性和无人机能力之间保持良好协调性的关键技术之一。一些典型军事应用场景如广域搜索摧毁(Wide Area Search and Destroy,WASD)、智能监视与侦察(Intelligence Surveillance and Reconnaissance)和对敌防空压制(SEAD),多无人机的协同工作是完成这些任务的关键。为了有效的使用多无人机,任务分配和路径规划是首先需要解决的问题。已经有很多方法被用于任务规划问题,Shumacher[1]等人采用混合整数线性规划(MILP)方法为WASD任务分配地面静态目标,采用了一种节点图来代表无人机和目标,目标函数为最后一个目标完成的时间。Darrah[2]等人将这种方法扩展到SEAD任务中。可以证明MILP是能获得最优解,但是对于复杂场景计算量大,实时性欠佳。Shima[3][4]等了人采用遗传算法对SEAD任务进行任务规划,并提出一种适合多机任务规划的新的染色体的编码方法。但是他们的规划目标是任务时间最短这一单一目标,且在任务规划时不考虑路径规划,因此对于一些复杂场景不能获得准确的解。文献[5,6,7]描述了对不同类型的SEAD任务场景的任务指派问题,但是对障碍物、危险区域、时间约束等并没有加以考虑。

本文针对一个典型的SEAD任务场景,即多无人机协同攻击地面目标来进行协同任务规划的相关研究。对敌防空压制(SEAD)任务的主要目地是使用多架无人机协同攻击多个地面目标,无人机可多次使用攻击多个目标,但装载的武器是有限,即可攻击的目标也是有限的,因此协同任务分配问题的目标是确定哪些UAV分配哪些目标,使得多UAV协同作战的整体效能最大,代价最小,这是一个约束条件众多的多目标优化问题。

2 任务分配模型

记UAV数目和目标数目分别为NV,NT。设计的决策变量为xi,j∈{0,1},i={1,2,…,NV},j={1,2,…,NT},xi,j为1时指无人机i分配了j目标的任务,为0时则相反。下面分别对优化目标和约束条件分别建模。

2.1 目标函数

优化指标包括:目标价值收益最大、目标覆盖程度最大、完成任务时间最短,总体飞行距离最小等。

1)机群最短任务时间f1

该指标使机群执行任务的时间尽可能短,即机群中被分配任务无人机中最后完成任务的所需要的时间最短。

Mi为第i架无人机分配到的任务总数;Tik为第i架无人机到第k个目标任务时间。

2)机群总任务时间f2

该指标使机群完成任务的代价尽可能小,报告中主要考虑燃油代价。飞行器飞行所消耗的燃油量与飞行距离和飞行时间有关,飞行时间越短则消耗的燃油越少。

3)目标价值收益最大f3

该指标要求在兵力充足的情况下可以对所有目标进行任务分配,兵力不足时则要使完成的目标总收益最大。

Vik为第i架无人机分配的第k个目标的价值。

4)目标覆盖程度最大f4

该指标指分配到的目标总数占总目标的百分比。

2.2 约束条件

文中考虑的约束条件主要包括如下几方面:目标必须在UAV的作战半径之内;满足各种禁/避飞区约束;对同一目标攻击的UAV数目不应超过一定限制;同一无人机分配的目标不能超过其载荷攻击能力。

1)参战无人机总数约束:UAV的出动架数不能超过待分配的UAV总架数。

2)作战半径约束:UAV飞行的距离必须在其作战半径的范围之内。

为第i架无人机到其分配到的第一个目标的距离,为第i架无人机分配的先后两个目标之间的路径距离,Di为第i架无人机的作战半径。

3)作战高度约束:为UAV分配的目标的任务高度必须小于无人机的升限。

Hj为目标j的任务高度,Hi为无人机i的升限。

4)兵力约束:每架UAV分配的目标不能大于其任务载荷能力。

Attacki为各架无人机对应的任务载荷,即最多可执行的任务数。

3 算法实现

多UAV协同任务分配问题是一个约束条件众多的多目标优化问题[8],其解空间随无人机总数和任务总数的增加而呈指数级增加。传统的方法如隐枚举法,通过检查变量组合的一小部分来求解问题的最优解,算法较为简单;分支定界法处理类似线性问题也比较有效。但是当遇到中等规模甚至大规模问题,尤其是约束非线性时,上述传统方法目前还没有很好的解决办法,因而限制了它在实际大规模问题中的应用。下面将采用一种基于整数编码的混合遗传算法,并充分利用约束提供的启发信息,从编码方式和遗传算子两个方面提高遗传个体的约束满足率,从而提高了混合遗传算法的求解性能。

3.1 目标函数设计

对多目标规划问题,可以根据指挥人员的决策意图来确定各个目标的相对权重,将多目标整数规划问题转换为单目标规划问题,首先对f1、f2、f3、f4进行了归一化处理,设计的目标函数如下:

其中,

不同的α1、α2、β1、β2、γ1、γ2的取值反映了指挥决策人员的不同决策偏好。α1越大,机群完成任务时间最短,α2越大,机群油耗最小;β1越大,目标价值收益最大,β2越大,目标覆盖程度最大;γ1越大,优先考虑代价;γ2越大,优先考虑对目标的覆盖。

3.2 编码

整型决策变量映射为基因位,决策矢量映射为染色体,染色体用二维非负整数数组表示,如表1所示,第一行为无人机编号,第二行为目标编号,每一列代表一个基因位。染色的长度为待分配的任务总数,默认任务数即目标数。第一行中编码可以为0,表示对该目标不分配无人机,这样能保证在兵力有限的情况下也能使编码有效。

对于SEAD任务,第一行中同一无人机编号的个数不能超过每架无人机最多可分配的目标数(即每架无人机所携带的任务载荷数)。完成一个染色体的编码后需要对约束条件(5)-(8)进行判断,若不满足这些约束条件则编码无效,需重新进行分配。

3.3 选择

不同选择策略会导致不同选择压力,保持合适的选择压力对平衡遗传算法求精和求泛能力具有重要作用。线性排序选择是比较常用的一种选择策略:设群体规模为N,当前群体的最佳个体在选择操作后的期望数量为η+=N*Ps(1),最差个体在选择操作后的期望数量为η-=N*Ps(N),其他个体的期望数量按等差序列计算:。线性排序的选择概率为:。

文中采用一种自适应排序选择策略[9]:,其中favg为群体的平均适应度值;fmax为群体中最优个体的适应度值。因为,所以当时,η+→1;时,η+→2,因此,η+能根据的比值自适应改变,从而达到根据种群性状动态调整选择压力的目的。

3.4 交叉

本文采用单点选择交叉法生成染色体的后代,交换点以平均概率随机产生。生成的第一个新染色体前半部分基因位来自于第一个父染色体,后半部分基因来自第二个父染色体;第二个则相反。交叉示例如下:表2为交叉前第一个染色体,表3交叉前第二个染色体,对第一行进行交叉操作后,结果如表4、表5所示。对第二行可进行同样的操作。每个交叉过的染色体都需要对约束条件(5)-(8)进行检查,若满足约束条件则完成交叉,否则取消该次操作。

算法实现时采用一种较高的概率pc执行交叉操作,但由于约束条件比较多,产生的染色体能满足约束条件的较少,因此文中引入一种新的染色体后代产生方法:对一个父染色体,随机产生两个位置,对这两个位置之间的基因位进行顺序颠倒操作,生成的新染色体也要对约束条件进行检查。表6是将表2中的染色体的第一行进行反转后的染色体。

3.5 变异

对于一个种群的进化,变异很少发生,但是考虑到任务规划的约束条件众多,因此本文中算法的变异以一个较大的概率Pm来进行。通常采用的方法是随机选泽染色体的任意位,根据变异概率决定是否进行变异操作。

3.6 算法流程

下面根据前述编码和遗传算子设计,给出遗传算法求解多UAV任务分配的具体步骤:

Stepl:初始化,设置控制参数交叉概率Pc,变异概率Pm,种群p大小,最大进化代数T,并产生初始种群Pt,t=0;

Step2:计算初始种群中个体适应度;

Step3:如果进化代数为t=T,则输出最优解,成功退出;否则,t=t+1,继续;

Step4:执行交换算子;

Step5:执行变异算子;

Step6:每将上一代的最佳个体复制到第一个染色体中;

Step7:计算种群个体适应度;

Step8:根据适应度,应用选择算子生成新一代群体,返回Step3。

由于染色体为二维的,因此交换与变异操作需要针对二维交替进行:在奇数进化代中对第一维染色体进行操作;在偶数进化代中对第二维染色体进行操作。每次交换、变异操作后都进行约束判断,因此该算法具有较高的个体约束满足率。算法的复杂性取决于个体的约束检查次数、约束不满足时重复交叉/变异运算的次数、选择算子中的比较运算。

4 算法验证

下面对多UAV协同的目标分配算法并进行了仿真。在任务分配时,对燃油的约束可以简化为无人机到目标的直线距离,但是如果考虑到复杂的战场情况,针对战场威胁、禁飞区域以及地形、气候等约束条件,需要在任务规划前作初步的路径规划,将初步路径规划的结果作为任务规划的一个约束,使任务规划的结果会更具有可行性。

论文中采用一种基于Voronoi多边形图的方法进行初始路径规划。首先构建描述战场环境的V图,计算V图中每个线段的代价,采用Dijkstra算法从V图中选择搜索出最优路径,最后再对初始航路进行优化,保证最终得到的航路是可飞行的。在任务规划前获取每个无人机到每个目标点,任意两个目标点之间的航路,用于准确的计算任务规划中的燃油代价。仿真时假设所有的威胁为防空雷达,并将雷达看作点状,雷达对UAV的威胁与二者之间的距离的四次方成反比。

4.1 性能验证

遗传算法是概率导向的随机搜索算法随机操作在算法进行中起着重要作用,算法每一次的结果一般都不相同,表现出很大的随机性。因此,根据单次运行结果评价算法的优劣(如采用在线性能或离线性能)得到的结果并不可信。平均偏离距和偏离距标准差采用遗传算法多次运行结果的统计参数对算法进行估价,可以很好地消除随机因素对算法结果评价的影响,因而比传统方法更为准确和有效。采用平均偏离距与偏离距标准差评价算法的性能。

平均偏离距:

偏离距标准差:

遗传算法的偏离距标准差,是遗传算法在M次实验中,搜索得到的最优解偏离理论最优解距离的平均值,是对遗传算法搜索得到解的平均评价。而σ2是这些距离相对于平均值的标准差,表明搜索得到解的分散程度。越小,说明遗传算法搜索得到的平均解越靠近实际最优解,因而所得到的解的品质越好。遗传算法的反映了解的精度,σ2则反映了解的稳定性。越小说明解的精度越高,σ2越小,则说明算法稳定性越好。因此,利用平均偏离距和偏离距标准差这两个统计参数,可以从解的精度和稳定性方面来客观、全面地评价遗传算法的优化性能。本文的应用中无法获得任务规划的理论最优解,我们采用M次实验中最精确的结果作为理论最优解的估计。

下面通过Monte Carlo仿真,以种群大小的选择为例说明不同的参数选择对算法性能的影响,并提出参数选择的依据。

验证场景一:协同攻击任务中,8架无人机(注:由于有无人机的起飞点位置一致,从图中看无人机的起飞点标志只有三个),16个目标分布如图1所示,P代表无人机位置,A代表目标位置,圆圈阴影部分为雷达威胁区域。

当目标决策参数为γ1=0.1、γ2=0.9、β1=0.5、β2=0.5,α1=0.5、α2=0.5时,遗传算法的参数设置为:pc=0.9,pm=0.5时。仿真参数如下:Monte Carlo仿真次数为100,进化代数为500。不同种群大小遗传算法的计算性能对比如表7所示:种群大小越大,平均偏离距越小,偏离距标准差越小,平均截至代数越小,但仿真时间越长,因此可以仿真时间和性能之间折中,选择一组参数。采用同样的方法可以作为pc和pm的选择作参考。

最终选择的参数如下:种群大小128,进化代数250,PC=1,Pm=1。一般的遗传算法交叉概率PC选择较大的参数,变异概率Pm选择较小的参数,考虑到任务分配时约束条件较多,在每次遗传操作后都需要针对约束条件进行检查,且操作后能满足约束条件的概率较小,因此PC和Pm参数选择较大。任务分配结果如图1(a)所示,进化过程如图1(b)所示。

Monte Carlo仿真(次数为100)最优的任务分配结果如图2(a)所示,进化过程如图2(b)所示。由图1(a)和图2(a)可见,经过目标分配,在满足每架无人机的续航约束的前提下,所有的任务都被覆盖到,但是Mente Carlo仿真的结果将任务都尽可能的分配给距离其较近的无人机,直观上是更优的规划。从数值上看,单次仿真的适应值较Mente Carlo仿真的结果大,Mente Carlo仿真的结果无论从任务总时长还是飞行总时长都比单次仿真的结果小,是更优的解。图2(c)是Mente Carlo仿真中适应值波动图,在100次仿真中,适应值在一个相对固定的周围进行波动,可见单次遗传算法的结果都是合理可信的。因此,在对时间不敏感的任务中,可以采用Mente Carlo的方法获取更优的解,但当实际工程中对实时性要求较高时,单次规划的结果也不失为一个合理解。

4.2 功能验证

下面进行算法的功能验证,检查文中的方法对各个约束条件是否能满足,并兼顾多中规划目标的要求。

验证场景二如下:协同攻击任务中,三架无人机,7个目标分布如图1所示。无人机基本参数如表8所示,目标基本参数如表9所示。

规划参数设置为:γ1=0.1、γ2=0.9、α1=0.5、α2=0.5、β1=0、β2=1时,任务规划的结果如图3(a)所示。由于无人机总载荷能力为5,因此最多可分配5个目标,2号飞机只被分配一个目标;1号和3号无人机分别被分配两个目标。目标1的任务高度要求为4000米,由于没有满足条件的无人机,因此没有被分配到,可见,算法覆盖了目标任务高度这一约束条件。

由于设置了β1=0、β2=1,因此在任务规划时只考虑任务覆盖率,而不考虑任务总价值,因此距离较近的目标6被分配到。当β1=0.5、β2=0.5时,即在任务规划时不仅考虑任务覆盖率,而且也考虑到任务总价值,规划结果如图3(b)所示。相对2号无人机而言目标5虽然距离机群相对目标6位置较远,但由于目标5的价值够大,因此被优先分配。续航能力允许的情况下,在同样的任务覆盖率时,使分配的任务总价值最大。

假设1号无人机的续航距离为300km,规划参数设置同图3(a),任务规划的结果如图3(c)所示。比较图3(a)和图3(c)可见,虽然1号无人机载荷不变,但是由于续航能力变小,因此只被分配了一个目标,同时对于3号无人机,2号目标较7号目标距离更近,因此2号目标代替7号目标被分配给3号无人机。

当γ1=0.1、γ2=0.9、β1=0.5、β2=0.5时,设置α1=0、α2=0时,规划结果如图3(b)所示,飞行总时长为13240s,总任务时间为5839s;设置α1=0、α2=1规划结果如图3(d)所示,飞行总时长为12842s,总任务时间为6964s。第一种规划目的是使机群执行任务的时间最小,完全不考虑油耗;第二种规划目的是使机群总油耗最低,完全不考虑机群执行任务的时间。可见,通过调整参数α1、α2,可以实现不同的决策目的。

5 结束语

本文首先针对一种典型的多机协同任务场景建立任务规划的模型,其次介绍并改进了一种基于整数编码的混合遗传算法在任务规划中的具体实现方法,最后在典型的任务想定下进行多机多约束条件下的协同任务规划仿真。验证显示,算法能对典型的任务想定进行任务规划,且规划结果合理可信。同时算法兼顾了机群飞行时间、飞行距离、任务覆盖和目标价值等规划目标,并对飞行距离、任务载荷、任务目标等约束条件均有所响应,算法对多约束条件和多目标具有较好的鲁棒性。根据文中提出的方法建立的多约束条件下多机协同任务规划软件目前在某多无人机协同控制指挥系统中得到了应用,为多无人机协同任务规划的战术应用做出了有益的探索。

参考文献

[1]SHIMA,T.,S.J.RASMUSSEN,and A.G.SPARKS,“UAV Cooperative Control Multiple Task Assignments using Genetic Algorithms,”[C].American Control Con ference,Portland,OR,2005.

[2]SHIMA,T.,and SCHUMACHER,C.,“Assignment of Cooperating UAVs to Simultaneous Tasks Using Genetic Algorithms,”[C].Proceedings of AIAA Guidance,Navigation,and Control Conference and Exhibit[C].AIAAPaper 2005-5829,2005.

[3]MARJORIE A.DARRAH*,WILLIAM M.NILAND†,and BRIAN M.STOLARIK”UAV Cooperative Task Assignments for a SEAD Mission Using Genetic Algorithms”[C].AIAA Guidance,Navigation,and Control Conference and Exhibit 21-24 August 2006,Keystone,Colorado.

[4]DARRAH,M.A.,NILAND,W.M.,and STOLARIK,B.M.,“UAV Cooperative Task Assignment for a SEAD Mission Using Genetic Algorithms,”[C].AIAAGuidance,Navigation,and Control Conference and Exhibit,AIAA Paper 2006-6456,2006.

[5]YEONJU EUN and HYOCHOONG BANG Co operative Task Assignment/Path Planning of Multiple Unmanned Aerial Vehicles Using Genetic Algorithms JOURNAL OF AIRCRAFT,2009,46(1):1-2.

[6]TAL SHIMAA.,STEVEN J.RASMUSSENA,ANDREW G.SPARKSA,KEVIN M.PASSINOB“Multiple task assignments for cooperating uninhabited aerial vehicles using genetic algorithms”Computers&Operations Research,2006(33):3252-3269.

[7]冯冬青,王非,马雁.遗传算法中选择交叉策略的改进[J].计算机工程,2008(10):189-191.

[8]魏军强,苏康,杨菲菲.基于启发式规则的多UCAV任务分配技术研究[J].战术导弹技术,2012(6):54-60.

一种新的动态波长分配算法 第7篇

路由和波长分配(Routing and Wavelength Assignment,RWA)是波分复用(WDM)光网络的核心问题之一。研究RWA的目的是尽可能减少所需要的波长数和降低光路请求的阻塞率。由于RWA问题是NP完备问题,为简便起见,一般将其拆解为路由问题和波长分配问题来分别研究。常见的路由方式有固定路由(FR)、备用路由(FAR)、自适应路由(AR)等。其中AR在优化业务阻塞率方面是最优的,但其时间复杂度很大;FAR能有效优化业务的阻塞率,同时具有合适的时间复杂度。

目前国际上已经提出的动态波长分配算法有:R(Random Wavelength Assignment),FF(First-Fit),LU(Least-Used),MU(Most-Used),MP(Min-Product),LL(Least-Load),RCL(Relative Capacity Loss)和相对容量影响(Relative Capacity Influence,RCI)。其中RCI算法是一种较新的算法,具有较前者更好的性能。我们对RCI算法进行了深入研究,目的是改进其性能,使其更加准确地描述网络资源状态,进一步降低网络阻塞率,实现波长负载均衡。本文在RCI算法基础上提出了改进的RCI算法(IRCI)来求解动态业务请求下的RWA问题。该算法的实现是基于FAR选路策略和有限波长数、无波长变换功能的WDM光网络。

1 IRCI算法的提出

1.1RCI动态波长分配算法模型

基于FAR选路策略的RCI波长分配算法的基本假设是:考虑多光纤情况时,每根光纤支持W个波长,每条链路有F根光纤,L为光网络中链路的总数目,L(p)为通路p上的所有链路的集合,Lc(l,λ)为链路l在波长λ上的剩余信道数目,任意通路p在波长λ上的可用信道数undefined。若Lc(l,λ)=Pc(p,λ),称链路l为通路p的瓶颈链路。P*为新到达的业务请求对应的备用路由集,p*为新到达的业务请求对应的备用路由,A(p*)为通路p*上的可用波长集,G(p*)为与p*有共享链路,且仍具有可用信道的通路的集合,称为通路p*的邻域。D(A,B)为指示函数,当A=B时取值为1,否则取值为0。当所有p∈P*的可用波长集合A(P*)的并集undefined不为空时,备用路由的RCI算法将从所有空闲的路由波长对间选择对全网容量影响最小的路由和波长对,并将它分配给对应的业务。用1/Pc(p,λ)来描述一条链路成为瓶颈后对网络产生的影响,称其为相对容量影响(RCI)因子。Rp(p*,λ)为分配波长λ给通路p*时,其对p*相邻通路p造成的容量影响。

undefined

则RCI算法的优化目标为:undefined。

1.2对RCI算法的改进

RCI因子仅反应了通路p在不同波长上的负载能力,忽略了共享链路l成为通路p的瓶颈链路之前,其在不同波长λi和λj上的剩余信道数目可能是不同的。我们在对RCI算法进行研究的基础上,提出了IRCI算法,引入链路容量因子1/L′c(l,λ),用以表征链路l成为瓶颈链路前在波长λ上的剩余信道数目,则IRCI因子为1/[Pc(p,λ)L′c(l,λ)]。用相对容量损失RLp(p*,λ)表征分配波长λ给通路p*时,对p*的相邻通路p造成的影响。

undefined

IRCI算法的优化目标为:undefined。

如图1所示,每条链路上有5根光纤,每根光纤复用2个波长。p*(2,4)代表新呼叫业务对应的路由,和p*具有公共链路的通路是p1(1,3),p2(3,5)和p3(1,5)。表1为RCI算法与IRCI算法的波长分配比较。由表1可以看出,RCI算法无法正确选择优化的波长。原因在于RCI算法没有考虑链路23和34在波长λ0和λ1上剩余的信道数目不同。而IRCI算法考虑了共享链路在不同波长上剩余信道数目的不同,选择波长λ1分配给新的业务请求,使得负载更加均衡,避免了某一波长资源的较快耗尽,是优化的波长分配方案。

在网络节点没有波长转换能力的波长分配方案中,要降低业务阻塞率就要尽量避免波长资源的较快耗尽,保证每条链路在每个波长上都有可用信道。定义链路l的关键波长为λm,使得Lc(l,λm)=minLc(l,λ)。在为新业务分配波长时,回避关键波长是应该考虑的因素之一,下面就从这个角度来分析两种算法的效果。

对于RCI算法,考虑一种可能的情况:假设关键波长Lc(l,λm)=2,只有链路l成为瓶颈链路,则undefined;对于λ1,有三条链路成为瓶颈链路,且每条链路的可用信道数Lc(l1,2,3,λ1)=4,则undefined。此时就会造成链路在λ1上有较大富余度的情况下,却选择了富余度小的波长λm分配给新的业务请求,使得λm上的资源进一步耗尽,称这种情况为误判。而用IRCI算法时,有undefined,大于undefined,没有发生误判。

究其原因在于IRCI因子1/[Pc(p,λ)L′c(l,λ)]≈1/Pundefined(p,λ),相当于RCI因子的二次幂。由于Pc(p,λ)/Pc(p,λm)≥1,故Pundefined(p,λ)/Pundefined(p,λm)≥Pc(p,λ)/Pc(p,λm),进一步相对地扩大了关键波长所造成的相对容量影响,因此能够更有效地回避关键波长,使得网络负载更加均衡。

但是为了回避某一链路的关键波长,有可能会出现多条链路在其它波长上同时损失一个信道。回避关键波长能带来多大效益还有待仿真的进一步检验。同时用RCI因子的更高次幂作为新的影响因子能产生什么效果也有待研究。

2 算法仿真及结果分析

2.1算法仿真

仿真采用以中国教育和科研计算机网CerNet拓扑结构为背景的网络模型,如图2所示。假设仿真网络为双向多光纤网,每条链路的基本代价值为1,各节点有足够多的收发器但无波长变换功能;每个节点对间的业务连接请求按参数为υ的泊松分布到达,到达请求的源、宿节点在所有时间内随机选定,已建立的各连接服务持续时间服从参数为μ的指数分布(平均服务时间为1/μ),而且平均持续时间大大超过网络传输时延以及连接建立时间,网络负载ρ=υ/μ;当业务请求的源、宿节点对间无可用波长资源时,该业务被拒绝,即丢弃。

仿真程序流程图如图3和图4所示。仿真程序从网络空载开始运行,为使网络进入稳定状态,额外处理1 000次业务请求作为网络“预热”。呼叫阻塞率定义为在仿真时间内被拒绝的业务请求次数与总的业务请求次数之比。仿真参数设定为:总的业务请求次数为10 000次,每条链路有4根光纤,分别对每根光纤支持8,16和32个波长的情况进行算法仿真。

2.2仿真结果分析

仿真中统计在不同网络负载下,10 000次业务请求中被拒绝的业务请求次数,得到业务阻塞率与网络负载的关系曲线,如图5所示。

从图5可以看出,在相同的复用波长数下,随着网络负载的增大,网络阻塞率相应增加,且以接近指数的速率迅速增大。在复用波长数分别为8,16,32的情况下,IRCI算法都具有比RCI算法更低的业务阻塞率,尤其是在中、低等负载强度下改进效果明显。但是在复用波长数为8及高强度的网络负载下,改进效果一般,IRCI算法的业务阻塞率甚至大于RCI算法。主要原因在于:波长资源有限,当全网总负载接近网络极限值时,各条链路在各个波长上的资源都会紧缺,多个关键波长会同时出现,无论怎么优化,都不能避免波长资源的耗尽,各算法性能接近,都不能有效降低阻塞率。同时,由于IRCI算法更加强调回避关键波长,负载更加均衡,在较大的负载下会出现多条链路上多个波长资源几乎同时耗尽,故在较大的网络负载下阻塞率比RCI算法略高。而在复用波长数为16,32且未出现较大负载下,IRCI算法性能低于RCI算法,原因可能在于可用的波长资源大大提高了。总的来看,IRCI算法改进了RCI算法,降低了业务阻塞率,达到了改进的目的,是一种有效的动态波长分配算法。

从图5还可以看出,IRCI算法在复用波长数较大的情况下具有更好的性能,为了进一步说明这个问题,定义相对负载为实际负载除以网络负载极限,其中网络负载极限即为网络中的波长链路总数。对于复用波长数W分别为8,16,32的网络,负载极限分别为512 Erl,1 024 Erl,2 048 Erl。采用相对负载作为横轴得到各复用波长数下的阻塞率曲线如图6所示,从图中可以清楚地看到IRCI算法在复用波长数为32时性能较优。

3 结束语

本文研究了目前较先进的动态波长分配算法RCI算法,指出了RCI算法的一些不足,并加以改进,提出了新的算法IRCI算法。新算法充分考虑了关键链路容量的不同,准确地描述了分配波长对整个网络的影响;同时强调了回避信道数目少的关键波长,使网络负载更加均衡,降低了网络的业务阻塞率。但是在较大的网络负载下,IRCI算法表现一般,有待进一步改进。同时用RCI因子的更高次幂作为新的影响因子能产生什么效果也有待研究。在实际的WDM光网络动态波长分配中可以将IRCI算法和RCI算法结合使用,以达到最佳的优化性能。

摘要:基于相对容量影响(RCI)算法提出了一种新的动态波长分配算法——改进的相对容量影响算法。新算法针对RCI算法的不足,考虑了链路容量的影响,准确地描述了分配波长对全网的影响;同时有效回避了可用信道数量少的波长,使负载更加均衡。仿真结果表明新算法具有更好的业务阻塞率性能,证明了新算法的有效性。

关键词:WDM光网络,动态波长分配,负载均衡,相对容量影响算法,链路容量

参考文献

[1]顾畹仪,张杰,王健全,等.光传送网[M].北京:机械工业出版社,2003:180-199.

[2]MUKHERJEE B.WDM optical communicationnetworks:progress and challenges[J].IEEE JSelected Areas in Communications,2000,18(10):1810-1824.

[3]潘登,齐志刚,赵继军,等.一种实现负载均衡的动态波长分配新算法[J].光子学报,2003,32(6):710-713.

农产品冷藏链任务分配保障措施研究 第8篇

农产品冷藏链任务分配的环境具有不确定性[1], 任务分配的过程是一个动态且信息不完全的过程, 在这个过程中可能会出现一些问题, 例如, 农产品冷藏链任务分配主体和任务承担主体在协商过程中的信息传递, 有可能因为信息系统对信息接收处理方式的不一致, 信息传递反馈技术的落后, 相关技术人员专业知识的匮乏等, 造成任务分配主体和任务承担主体对信息的理解出现偏差, 做出错误的决定[2]。农产品冷藏链因为其流通农产品的特殊性质, 所以对时间的要求比较严格, 在任务分配主体与任务承担主体之间信息的传递不及时或者不规范, 极易导致信息的重传, 造成双方时间的浪费及经济的损失[3]。如果农产品冷藏链上任务承担主体不遵照约定的协商协议来执行任务并反馈信息, 那么任务分配主体极易因为任务承担主体的失信造成经济损失[4]。

在农产品冷藏链任务分配的过程中, 任务分配主体内部也可能出现一些问题, 给任务分配带来风险[5]。一方面表现在面对复杂的农产品冷藏链任务分配环境, 业务人员的诚信操守和道德价值观需要长期维护[6]。农产品冷藏链上任务分配主体的目标是付出最少的报酬来分配任务, 同时会制定一个报酬的最高限额, 但是这个最高限额不能泄露给任务承担主体[7];任务承担主体的目标是得到最多的报酬来执行任务, 所以他们会采取一些手段来获取任务分配主体制定的最高限额, 然后在与任务分配主体的协商过程中争取获得最大收益[8]。当农产品冷藏链任务分配主体内部的业务人员遇到复杂的利益诱惑时, 一旦处理不善, 将任务分配主体的最高报价泄露出去, 将可能遭遇诚信和道德风险, 严重影响农产品冷藏链任务分配的顺利进行[9]。另一方面表现在农产品冷藏链任务分配主体内部业务人员的工资与绩效一般没有直接挂钩, 使得业务人员即使有较高的工作绩效, 也无法获得能够体现积极工作态度和工作绩效的薪酬待遇, 从而影响任务分配主体内部业务人员的工作积极性, 最终导致其内部工作效率的下降[10]。在农产品冷藏链任务分配主体的人力资源政策中, 规定了任务分配业务人员的相关职责, 却没有规定详细的执行标准, 缺乏对任务分配业务人员素质和岗位能力的评价体系, 这也增加了任务分配主体进行任务分配的风险[11,12]。

刘伟华 (2012) 建立供应链任务分配的双层规划模型并进行求解, 提出任务分配环境的不确定程度对供应链的成本、客户满意度有很大影响[13]。綦方中 (2006) 提出建立供应链利益分配系统体系对供应链合作企业的绩效、抗风险能力进行定期评估, 来保障供应链利益分配, 促使供应链的运行更加稳定[14]。狄卫民 (2006) 提出将动态联盟供应链的结构进行扩展, 变为更一般的网状形式, 由此获得的任务分配方案能够满足联盟整体收益最大化的要求[15]。

与现有文献对供应链任务分配的研究大多集中在模型和方法上不同, 本文从农产品冷藏链任务分配主体视角及任务承担主体视角出发, 提出农产品冷藏链任务分配的保障措施, 以实现农产品冷藏链上任务分配的稳定高效协调。

二、任务分配主体视角下的农产品冷藏链任务分配保障措施

农产品冷藏链任务分配主体的目标是用最少的报酬支付来完成农产品冷藏链任务的分配。完成这一目标首先要制定选择任务承担主体的保障措施, 其次要制定能够完善任务分配主体内部运作的管理措施。

(一) 任务承担主体选择的保障措施

在农产品冷藏链任务分配的过程中, 对任务承担主体的选择分为两个阶段:第一个阶段是对潜在的任务承担主体进行评价选择, 找到较为适合的任务承担主体, 建立合作意向;第二个阶段是在磋商合作的过程中, 合理分配任务, 选择最优的任务承担主体完成任务。

1. 确定任务承担主体选择的原则

(1) 总成本最小化原则。农产品冷藏链任务分配主体与任务承担主体建立合作关系, 除了要提高整体任务的完成质量外, 还要降低整体的运作成本, 使总成本达到最小。

(2) 风险最小化原则。农产品冷藏链任务分配主体在选择任务承担主体时要考虑风险因素, 有一些任务承担主体运营状况不好, 甚至是不能正常运营的, 又或者与任务分配主体配合不好, 故要从多个角度来综合评估, 使得风险最小化。

(3) 核心能力最大化原则。农产品冷藏链任务分配主体与任务承担主体建立合作关系, 不仅要提高整体任务的完成质量, 还要集中各个任务承担主体的人力、物力、财力, 尽最大努力增强任务分配主体自身的核心竞争力, 扩大其市场份额。

2. 规范任务承担主体选择的流程

(1) 分析任务特性。农产品冷藏链任务分配主体在建立合作关系之前, 首先应分析任务的能力需求、资源需求以及约束要求等, 其目的在于找到适合的任务承担主体。

(2) 明确选择目标。农产品冷藏链任务分配主体要明确任务承担主体选择的目标, 包括任务承担主体的能力类型、资源类型、成本约束、地域范围等。

(3) 获取任务承担主体信息。明确任务承担主体选择目标后, 任务分配主体可以利用农产品冷藏链信息数据库或公共信息平台, 收集任务承担主体的相关信息, 并进一步调查任务承担主体的经营业绩、完成任务的质量、能力等内容, 找到符合条件的潜在备选任务承担主体。

(4) 建立评价指标体系。农产品冷藏链任务分配主体制定合理的综合评价指标体系, 作为选择任务承担主体的主要依据和标准。

(5) 评选任务承担主体。农产品冷藏链任务分配主体要收集、调查潜在任务承担主体的相关信息, 采用评价标准对潜在任务承担主体进行筛选, 选择适合的纳入任务承担主体集合, 以备任务分配主体在分配任务时, 从该集合中选取最优的任务承担主体。

(6) 任务分配主体任务分配。农产品冷藏链任务分配主体利用协商协议及算法, 从任务承担主体集合中, 选出适合的任务承担主体, 建立合作关系, 进行合理的任务分配。

综上所述, 农产品冷藏链任务承担主体选择的流程如图1所示。

3. 制定任务承担主体选择的评价指标体系

根据农产品冷藏链上任务的能力需求、资源需求以及约束要求, 从能力、技术、设备、质量、资金、合作六个维度制定合理的任务承担主体选择评价指标体系 (见表1) 。

(二) 任务分配主体内部的管理措施

1. 做好农产品冷藏链上任务分配主体内部信息化建设的基础工作

实现任务分配主体的信息化, 不但要加大任务分配主体内部计算机、网络等硬件投入, 还要改善信息化的软环境。 (1) 建立和完善任务分配主体的信息化制度, 推进任务分配主体信息标准化, 加大信息应用力度。 (2) 依托信息技术实现任务分配主体内部规范、高效运作, 达到信息交互型任务的执行过程稳定、有效衔接运作。 (3) 注意传递信息的编码工作, 促进形成统一的传输文件格式, 使其标准化并应用到数据接口的相关代码等, 去除任务分配主体中存在的信息死角、信息孤岛, 实现任务作业智能化, 为任务分配主体和任务承担主体提供沟通的手段和条件。

2. 加强农产品冷藏链任务分配主体内部人才的引进和培养

任务分配主体内部的信息化建设需要在网络技术、通讯技术、信息技术方面配备高水平的技术人员, 因而加大信息化应用中复合型人才的引进和培养力度便显得尤为重要。要塑造一支具有专业技术, 既懂得任务管理和经营, 又熟悉任务流程操作的高水平人员队伍, 一方面要提高现有任务管理人员的技术水平, 增强任务管理人员的业务能力, 通过举办培训课程、进修等方式, 迅速提高任务管理人员的素质;另一方面要加快引进急需的人才, 以快速适应信息高速发展的形势和市场的激烈竞争, 同时还要重视对任务管理人才的考评和激励, 加强他们对任务管理工作的责任心, 为协商协议和算法的顺利执行提供保障。

3. 制定任务承担主体违规后执行惩罚措施的协议

当参与合作的任务承担主体没有遵照约定的协商协议及算法时, 要按照之前制定的惩罚措施对其进行惩罚, 增加任务承担主体的失信成本, 降低任务承担主体违反协商协议的概率。

4. 在任务分配主体内部建立诚信、道德价值观培养、训诫及引导机制

任务分配主体应规范任务分配的流程, 逐级制定严格的监督机制并认真贯彻执行, 为保证任务分配协议及算法的正常执行提供一个健康、公开、公正的环境。此外, 农产品冷藏链上任务分配主体还应建立一系列相关的规定, 例如, 明确任务分配业务人员的职责以及工作方式, 并辅之以法律法规教育, 使任务分配业务人员清晰地认识到自己所承担的责任。

5. 健全个人绩效考核制度

针对农产品冷藏链任务分配主体内部人力资源绩效考核制度不健全的问题, 应完善个人绩效考核制度, 并加强该制度的执行力度, 将个人绩效与个人工资挂钩, 提高任务分配主体业务人员的工作积极性, 激发他们的创新能力。

三、任务承担主体视角下的农产品冷藏链任务分配保障措施

农产品冷藏链任务承担主体的目标是以较多的收益来完成分配的任务。顺利完成这个目标必须制定相应的保障措施并加强与其他任务承担主体的竞争合作。

(一) 任务承担主体能够获取任务的保障措施

1. 改善任务承担主体的能力

农产品冷藏链任务分配主体在进行任务分配时, 会将冷藏运输能力、冷藏储存能力、冷藏加工能力、温度湿度监控能力、紧急情况处理能力、实时数据传递能力以及高效快速响应任务的能力纳入到任务承担主体选择的标准中, 因此改善这些能力, 能够帮助农产品冷藏链任务承担主体获取更多得到任务的机会。

2. 引进前沿的技术和设备

农产品冷藏链任务承担主体要密切关注相关领域的前沿技术 (例如, 冷藏运输技术、仓储冷藏保鲜技术、温度、湿度、汽车监控技术、物流信息技术等) , 购进先进的设备 (例如, 冷冻处理设备、冷藏运输设备、冷藏保鲜贮存设备以及实施监测控制设备等) 。只有掌握了前沿的技术, 拥有先进的设备, 才能最大限度地减少冷藏运输、冷藏包装、冷藏装卸、冷藏搬运、冷藏储存等各个环节的成本及费用, 使完成任务的总成本处于最低水平, 才能在激烈的竞争环境中继续生存下去。

3. 提高任务完成的质量

随着农产品冷藏链任务分配竞争的加剧, 任务分配主体在选择任务承担主体时, 除了考虑价格因素外, 任务承担主体的质量管理体系、准时交货率、任务完成准确率、损耗率也越来越成为任务承担主体的筹码。任务完成质量的提高, 能够最大限度地满足任务分配主体的需求, 帮助任务分配主体提高核心竞争力, 从而与任务分配主体达到双赢的目的。

4. 提高市场占有率和商誉

农产品冷藏链任务分配主体十分看重任务承担主体的市场占有率以及商业信誉, 拥有一定的市场份额和良好的商业信誉可以增强任务分配主体信心, 使得任务分配主体放心地将更多的任务分配给任务承担主体。

(二) 任务承担主体竞争合作的保障措施

农产品冷藏链任务承担主体之间既是竞争又是合作的关系。每一个任务承担主体都有其竞争优势和竞争劣势, 在竞争力强的方面, 任务承担主体会选择单独完成任务, 而在竞争力较弱的领域, 任务承担主体为了获得任务, 会联合其他的任务承担主体共同完成任务, 以达到双赢。

1. 农产品冷藏链任务承担主体竞争环境的分析

农产品冷藏链任务承担主体所处的竞争环境中, 存在着五种力量影响着农产品冷藏链上的任务分配, 这五种力量包括:买方──任务分配主体的谈判能力, 卖方──任务承担主体供应商的谈判能力, 现存的竞争对手──其他任务承担主体, 潜在竞争主体的威胁──新转型的任务承担主体, 替代主体造成的威胁──任务分配主体自营。

(1) 买方是指任务分配主体。农产品冷藏链任务分配主体对任务完成的及时性、准确性有较高的要求, 因此他们对任务承担主体的需求较为迫切。

(2) 卖方是指任务承担主体供应商, 例如农产品冷藏链上任务承担主体所需冷藏设备和设施的供货方。任务承担主体供应商的谈判能力与其本身的规模有很大关系, 任务承担主体供应商的规模越大, 执行任务的专业性越强, 承揽的相关任务量越多, 其谈判能力就越强。当任务承担主体供应商的实力雄厚或处于垄断地位时, 就会对任务承担主体的竞争产生很大影响。

(3) 潜在竞争对手的威胁是指来自新转型的任务承担主体的威胁。他们作为后进入竞争市场者, 必有优于传统任务承担主体的地方, 无论在业务规模、设备设施, 还是在价格上, 都有一定的优势, 所以不能忽视潜在的竞争主体形成的威胁。

(4) 替代品的威胁是指任务分配主体不再将任务分配出去, 而是转为自己完成。任务分配主体的此番做法不仅给任务承担主体的经营范围和发展空间制造了障碍, 同时也限制了任务承担主体获得报酬的最高额度。任务承担主体只有高效、低成本地完成任务, 才能有一定的竞争优势。

2. 农产品冷藏链任务承担主体间合作的保障措施

面临激烈的竞争环境, 农产品冷藏链任务承担主体要想处于不败之地, 就要保持自己的竞争优势, 同时在自己薄弱的方面与其他任务承担主体加强合作, 实现双方共赢。

(1) 积极建立自己的信誉。农产品冷藏链任务承担主体与其他主体进行合作时, 要时刻正确使用协商合作的策略, 秉承诚信为本的理念, 做好长期“信誉投资”的准备, 以良好的信用记录为桥梁, 建立与合作伙伴的长期合作关系, 加强信任合作。

(2) 加强任务承担主体文化建设。任务承担主体不同的经营理念、管理模式都会造成合作难以进行, 甚至解散, 所以要积极加强文化建设, 做到任务承担主体的文化兼容。

(3) 专业人力资源的开发与管理。人才是农产品冷藏链任务承担主体参与竞争的关键。目前, 农产品冷藏链任务承担主体的专业人才严重匮乏, 现有从业人员多是“半路出家”, 所以要加大力度引进高素质的人才, 并且重视从业人员的培训, 合理安排他们的职务, 做到用足用好。

(4) 扩展任务承担主体的业务网络。只有具备了较大的网络, 才能获得较低的成本优势。一定规模的网络可以减少冷藏运输车辆的往返空载, 提高冷藏库的使用率, 加快冷藏库的周转, 增加资源的利用率, 提高信息共享、基础设施的共用程度。

(5) 加强信息技术方面的应用。采用电子数据交换技术传递信息, 既减少了费用, 又增强了传递信息的准确性;而卫星定位系统的实时跟踪功能、确定方位功能、双向实时通讯功能、提供冷藏车辆预定到达时间功能, 可以方便任务承担主体收集冷藏运输工具和农产品的信息, 使任务承担主体运输效率提升与运输成本减少两方面的需求同时得到满足。

(6) 加强任务承担主体间的横向合作。任务承担主体在与其他任务承担主体合作时, 既要享受合作收益, 也要承受合作所带来的风险。所以, 任务承担主体在保持互惠互利合作的前提下, 要尽量保持自己的核心竞争力和市场份额, 确保与其他任务承担主体平等对话, 避免被淘汰兼并。

摘要:农产品冷藏链任务分配的环境具有不确定性, 任务分配的过程是动态且信息不完全的过程。为了避免农产品冷藏链任务分配过程中经常出现的一些问题, 本文分别从农产品冷藏链任务分配主体和任务承担主体两个视角提出了相应的保障措施, 以期实现农产品冷藏链上任务分配的高效协调。

线性表的动态分配存储结构分析 第9篇

1 引入线性表动态分配的源由

在数据结构中, 数据的逻辑结构分为线性结构和非线性结构, 非线性结构中又以线性表为典型代表, 线性表的逻辑结构是通过元素之间的相邻关系体现的。因此利用数组实现线性表的顺序存储, 结构简单, 其算法也容易理解。但是, 由于存储分配只能预先定义, 如果插入的数据量超出预先分配的存储空间, 那么临时扩大就会存在很大的困难;如果按最大的可能空间进行分配, 则势必降低了存储空间的利用率。为解决此问题, 可以利用C语言动态分配内存的机制, 实现线性表的顺序存储。

2 动态分配顺序存储结构的基本操作

2.1 动态分配的顺序存储结构的描述

线性表的顺序表示指的是用一组地址连续的存储单元依次存储线性表的数据元素。线性表是一个相当灵活的数据结构, 它的长度可根据需要增长或缩短, 即对线性表的数据元素不仅可以进行访问, 还可以进行插入和删除等。由于高级程序设计语言中的数据类型也有随机存取的特性, 因此, 通常都用数组来描述数据结构中的顺序存储结构。在此, 由于线性表的长度可变, 且所需最大存储空间随问题的不同而不同, 则在C语言中可用动态分配的一维数组, 如下描述。

在上述定义中, 顺序表的初始化操作就是为顺序表分配一个预定义大小的数组空间, 并将线性表的当前长度设为“0”。Listsize指示顺序表当前分配的存储空间大小, 一旦因插入元素而空间不足时, 可进行再分配, 即为顺序表增加一个大小为LISTINCRE-MENT个数据元素的空间。

2.2 线性表的初始化

根据线性表结构的基本描述, 为完成对一组数据的处理, 用户根据需要定义线性表供程序使用, 则为线性表的初始化。初始化线性表是为线性表分配一个预定义的存储空间, 并将线性表的当前长度定义为零。分配一个预定的存储空间可以通过调用C语言的动态分配库函数malloc来实现。具体算法如下:

2.3 线性表某个元素的插入

从线性表的特点中我们得到一个结论, 在一个表中有且仅有唯一的根结点和终端结点, 除了根结点和终端结点, 其余结点都有唯一的前驱和唯一的后继, 只有满足这样的条件才称为线性表, 故此线性表是一个连续的有限的存储空间。我们要在一个线性表的某个元素前、后插入一个元素, 其数据元素在存储空间中的位置有所变化, 为了不破坏线性表的特征, 我们就要采取一定的措施进行位置的变化, 这就是线性表元素的插入。例如, 某一长度为n的线性表, 为了在线性表的第i个和第i+1个元素之间插入一个值为x的数据元素, 则需要从第i个至第n个数据元素依次往后移动一个位置。一般情况下, 所需要移动的元素次数为n-i+1。在具体的移动过程中为移出一个元素, 则从尾部向前部依次向后移动至第i-1的位置处。具体算法如下:

2.4 线性表中删除某个元素

线性表的删除操作是使长度为n的线性表变成长度为n-1的线性表, 数据元素之间的逻辑关系发生了变化, 为了在存储结构上反映这个变化, 同样需要移动元素。在移动过程中, 必须将从第i+1个元素至n个元素依次前移一位, 一般情况下, 删除第i个元素时需从第i+1至第n个元素依次向前移动一个位置。具体算法如下:

3 动态分配顺序存储结构的应用

在日常生活中, 我们只要注意观察, 留意我们的生活, 我们就不难发现, 其实很多时候我们都会用到线性表的顺序存储结构, 例如在学校对学生信息的管理、病人在医院挂号、数学集合的合并, 其中两个线性表的合并操作是线性表处理的典型例子。今天我们以其作为综合应用。具体算法如下:

4 动态分配顺序存储结构的主函数

线性表动态分配顺序存储结构的基本操作共四个, 包括线性表的初始化、插入、删除、合并。要将这些算法融合为一体成为一个完整的程序, 我们必须从程序的入口点开始执行, 即主函数main () 。下面就在主函数中调入以上的四个子程序, 使程序结构化、合理化、正确化、实用化。程序如下:

5 动态分配顺序存储结构的优缺点

在数据结构中, 我们通过时间复杂度和空间复杂度来评价一个算法的好坏, 既要考虑程序所占的空间又要考虑程序执行的次数, 所占空间越小, 执行次数越少, 又能得出正确答案, 这是每个程序员所希望的, 所以当我们在使用线性表的时候, 我们不需要为表中元素之间的逻辑关系而增加额外的存储空间, 而且可以快速的存取表中任意位置的元素。但是, 如果我们要插入或者删除的元素是在第一个位置, 那么无疑的, 我们需要移动大量的元素来完成这样的操作, 而且限于线性表长度必须小于数组长度, 如果我们需要插入大量数据, 那么很难保证空间是否充足, 而如果我们要删除大量数据的时候, 无疑又会造成空间的浪费。故顺序存储结构的优点为:具有简单、运算方便等优点, 特别是对于小线性表或长度固定的线性表, 采用顺序存储结构的优越性更为突出;缺点为:顺序存储插入与删除一个元素, 必须移动大了的数据元素, 以此对大的线性表, 特别是在元素的插入和删除很频繁的情况下, 采取顺序存储很是不方便, 效率低;顺序存储空间容易满, 出现上溢, 程序访问容易出问题, 顺序存储结构下, 存储空间不便扩充;顺序存储空间的分配问题, 分多了浪费, 分少了空间不足上溢。

摘要:线性表是由数据类型相同的若干个数据元素组成的有限序列, 其特点和算法容易理解, 是学习其它数据结构的基础。该文主要介绍了线性表、线性表的应用、线性表的常用算法和线性表的优缺点。

关键词:线性表,动态分配,插入,删除

参考文献

[1]秦玉平, 马靖善.数据结构 (C语言版) [M].北京:清华大学出版社, 2005.

[2]谭浩强.C程序设计[M].3版.北京:清华大学出版社, 2005.

动态任务分配范文

动态任务分配范文(精选9篇)动态任务分配 第1篇随着应急指挥网络系统复杂程度不断提高,系统规模将越来越大。这就造成应急指挥系统中网络...
点击下载文档文档内容为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部