CN113885527A - 一种利用小生境蚁群规划取药路径的方法 - Google Patents

一种利用小生境蚁群规划取药路径的方法 Download PDF

Info

Publication number
CN113885527A
CN113885527A CN202111285735.XA CN202111285735A CN113885527A CN 113885527 A CN113885527 A CN 113885527A CN 202111285735 A CN202111285735 A CN 202111285735A CN 113885527 A CN113885527 A CN 113885527A
Authority
CN
China
Prior art keywords
medicine
niche
pheromone
path
ant
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111285735.XA
Other languages
English (en)
Other versions
CN113885527B (zh
Inventor
巩敦卫
郭一楠
陈紫欣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China University of Mining and Technology CUMT
Original Assignee
China University of Mining and Technology CUMT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China University of Mining and Technology CUMT filed Critical China University of Mining and Technology CUMT
Priority to CN202111285735.XA priority Critical patent/CN113885527B/zh
Publication of CN113885527A publication Critical patent/CN113885527A/zh
Application granted granted Critical
Publication of CN113885527B publication Critical patent/CN113885527B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0217Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with energy consumption, time reduction or distance reduction criteria
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

本发明公布了一种利用小生境蚁群规划取药路径的方法。面向多类别售药机构,构建了取药路径规划模型;进而,考虑到取药路径规划问题的多模态特性,以最小化取药时间为目标,设计了一类小生境蚁群算法,用于寻优获得最佳取药路径。基于患者处方、售药机构的实际位置和存药量,采用所提方法可以在用户满意的时间内提供给用户最佳的取药路径,在满足用户取药实际需求的同时,提高用户满意度。

Description

一种利用小生境蚁群规划取药路径的方法
技术领域
本发明涉及一种取药路径规划方法,尤其适用于属于路径规划领域使用的一种利用小生境蚁群规划取药路径的方法。
背景技术
传统的病患除了到医院拿药,还可自行到药店或智能药柜等处取药,由于自行取药的灵活性和便捷性,自行取药成为人们不可缺少的获取药品方式。即便如今药品配送服务已经普及全国大多数城市,但半小时以内的配送都有一定的起送要求,如果用户需要紧急用药,显然到附近售药机构去取药是必要的。近年来智能药柜的研发与面市也为用户取药提供了极大的方便。除此之外,若处方中含有医院特制药,也不能实现配送,而需要用户到医院挂号取药。但是,由于售药机构分布在城市各处,而且一个售药机构(特别是智能药柜)不一定能取完所有药品,故取药的便捷与否,取决于售药机构的选择及路线的规划。
对于取货的路径规划,专利CN108253988A建立能源限制约束条件,并将其插入到传统循环取货路径优化模型中,建立有能源限制的电动汽车循环取货路径规划模型,最后采用遗传算法求解;专利[廖海燕,田小强.一种可视化拣选路径确定方法.中国,CN108960504A]先根据拣选单和仓库地图确定本次拣选作业需要访问的货位节点,然后确定遍历本次拣选作业需要访问的所有货位节点的最短拣选路径。而由于同一种药品可能在多个售药机构都存有,从而本问题无法先选出一组特定的售药机构再优化其遍历顺序,所以取药地点的选择和路线的规划应该协同考虑。本取药路径规划问题属于旅行购买者问题(Traveling Purchaser Problem,简称TPP)的一个应用,它综合了节点选择和路径规划,即包括通过一个节点子集确定一条路线,以收集一组产品,同时尽量减少总成本。其中,受限TPP(R-TPP)指市场中的产品的可用数量可能小于产品需求。Teeninga等在R-TPP中提出了三种不同的启发式,用于在采购计划中对可用性高的市场进行优先排序[Teeninga,A.,&Volgenant,A.Improved heuristics for the traveling purchaserproblem.Computers&Operations Research,2004.31(1),139–150.];由Batista-Galván等研究的多仓库和交付TPP(TPP-MSD),设定每种产品都是以不同的价格由几个市场提供,并不是所有产品都需要购买,而所有需要产品的交货地点(客户)都必须访问[Batista-Galván,M.,Riera-Ledesma,J.&Salazar-González,J.-J.The traveling purchaser problemwith multiple stacks and deliveries:A branch-and-cut ap-proach.Computers andOperations Research,2013.40(8),2103–2115.];Manerba等考虑了总数量折扣(TQD),对R-TPP实行总量折扣政策(TPP-TQD)[Manerba,D.,Mansini,R.,&Perboli,G.Thecapacitated supplier selection problem with total quantity discount policyand activation costs under uncertainty.International Journal of ProductionEconomics,2018.198,119–132.];Bianchessi等引入了带有距离约束多车辆TPP,并通过分支和定价方法解决了这一问题[Bianchessi,N.,Mansini,R.,&Speranza,M.The distanceconstrained multiple vehicle traveling purchaser problem.European Journal ofOperational Research,2014.235(1),73–87.];Bontoux等提出了使用蚁群优化(ACO)技术解决不对称的R-TPP,同时最小化采购和旅行成本,将蚁群算法与探索邻域结构的局部搜索方案相结合,更新了大多数实例的最优解,求解质量上优越性明显,但其耗时仍比较多[B.Bontoux and D.Feillet.Ant colony optimization for the traveling purchaserproblem,Comput.Oper.Res.,2008.35(2):628–637.]。
在目前所研究的R-TPP中,需求约束和市场购买产品数量约束分别考虑,一个商品可能会拆分到几处购买。此外,由以往TPP及其变体可知,其求解结果都仅是得到一个最优方案。然而本问题的特殊之处在于,需要快速地给用户提供一组省时又便利的取药方案,用户可根据自身情况选择其中一个方案去完成取药。因为道路情况或用户个人情况的特殊性,很容易出现唯一的最佳方案不可用的情况,从用户实际需求出发,则希望能提供多个较优的取药方案,以便用户根据自身知识选择最有利的方案,故本问题为多模态优化问题。基于此针对取药路径规划问题建立数学模型,并设计了改进小生境蚁群算法来求解得到一组高质量的取药方案。
发明内容
本发明的目的是针对现有技术的不足之处,提供一种利用小生境蚁群规划取药路径的方法,能够快速有效且可靠的提供给用户高质量取药路径方案。
为实现上述技术目的,本发明的一种利用小生境蚁群规划取药路径的方法,其步骤如下:
S1:设有n个售药机构,每个售药机构中的药品种类且存储量有限,根据用户对售取药的快捷性需求,建立取药路径规划模型;
S2:采用蚁群算法对用户取药路径规划模型生成并优化解,利用小生境技术维持取药路径的多样性;其中蚁群算法利用NP只蚂蚁随机选择第一个售药机构作为起点,将各蚂蚁的当前位置添加到各蚂蚁自身的禁忌表中;
S3:蚁群算法中的蚂蚁通过信息素和启发式信息来选择取药路径中起点后行进的下一个售药机构作为节点,因此利用改进状态转移概率来确定各蚂蚁选择下一个节点,然后将移动的节点位置更新该蚂蚁自身的禁忌表;
S4:循环步骤S3直至满足取药路径规划模型中的药品满足度约束条件,对不能满足所有药品需求的不可行解进行局部信息素更新;
S5:在每一代的所有蚂蚁寻解完成后,对当前各小生境的最优解运用2-opt,即两元素优化方法,在最优解方案中选择两个取药处并交换顺序,如果改变顺序后改进了原解,则将原解替换为新解;
S6:通过目标值和共享路径距离评价每只蚂蚁寻得的取药方案个体,分别得到适应值和相似度并更新小生境;
S7:按照全局信息素更新规则更新全局信息素;
S8:判断是否达到作为终止条件的最大迭代次数,若满足,则输出全局信息素更新后的取药方案;否则,清空每只蚂蚁的禁忌表,并跳转到步骤S2;
S9:把所得的一组取药方案中适应值最高的作为最优解,根据最优解选取策略,即将全局信息素更新后的所有取药方案与最优解比较,把差距小于可接受程度ε的解保存进最佳取药方案保存,否则遗弃,从而获得一组最佳取药路径规划方案,其包含一个或多个最佳取药方案。
建立取药路径规划模型的具体方法为:
S11:设共有n个售药机构,记为a1,…,an,构成决策变量X=(x1,x2,…,xn);为形成有效的访问路径,在决策变量中标记不访问的售药机构的序号xi=0,将购买到所有药品需要访问的m个售药机构则按其访问顺序依次标记为xj=q,q=1,2,…,m;记用户当前的位置为x0,用户取药完成后抵达位置为xn+1,其中n个售药机构具有异构特性,即具有不同的药品种类和存储量;
S12:记xi,xj为访问路径上两个相邻售药机构,二者之间的实际路径行驶时间为T(xi,xj);售药机构包括药店和医院,每一个药店和医院的取药时间分别设为t0和t1,设所访问的售药机构中存在
Figure BDA0003332901170000031
个药店和
Figure BDA0003332901170000032
个医院,则访问路径所需的总取药时间为
Figure BDA0003332901170000033
用户从当前位置出发x0,经过选中的售药机构,最终抵达完成位置xn+1,则访问路径所需的总时间为:
Figure BDA0003332901170000034
S13:假设用户药单中的药品集合为L,第k种药品的需求量为dk,对于售药机构i,第k种药品的库存量为
Figure BDA0003332901170000035
则该售药机构对第k种药品的满足度,记为
Figure BDA0003332901170000036
Figure BDA0003332901170000041
式(2)确保了每种药品都能一次性取完。为保证用户药单中所有药物都取到,则对于用户药单中的任一药品,在所访问的售药机构中,至少有一个售药机构取到满足数量需求的该种类药品,即:
Figure BDA0003332901170000042
S14:由此,构建取药路径规划的模型为:
Figure BDA0003332901170000043
改进的状态转移概率计算方法如下:
S31:蚂蚁通过信息素τ和启发式值η来选择新进的下一个节点,因此信息素τ越多、启发式值η越高的路径被选中的概率越大,下一个节点的状态转移的概率公式如下:
Figure BDA0003332901170000044
Figure BDA0003332901170000045
Figure BDA0003332901170000046
其中,iter为当前迭代次数,iter_max为最大迭代次数,β为蚂蚁信息素启发因子,γ为期望启发因子,allow表示蚂蚁尚未访问的售药机构节点集合;信息素与启发式信息的权重比μ和ζ随着迭代的进行自适应改变,使得启发式因素在迭代前期占比更大,之后接近于1;在迭代中期,信息素的影响力增大,加快收敛速度;而在后期,降低信息素的影响,特别是在迭代的最后三分之一,信息素的权重比μ降至1以下,以防止蚁群陷入局部最优;
其中,对于蚂蚁所在的当前位置来说,作为下一个行进节点的某个售药机构的启发式值η(xi,xj)由当前位置到该节点的实际路径行驶时间和该节点到终点的实际路径行驶时间共同决定:
Figure BDA0003332901170000047
基于药品满足度的约束处理包括以下内容:
S41:在每只蚂蚁随机选取作为第一个节点的售药机构xi之后,对每只蚂蚁的信息素做如下变化:
Figure BDA0003332901170000051
其中τ(xu,xi)(u=0,1,...,n)为所有节点到节点xi的边的信息素值,
Figure BDA0003332901170000052
为信息素挥发因子,Q1为局部信息素增量系数,
Figure BDA0003332901170000053
为售药机构xi的药品满足度;
S42:对于蚂蚁寻得路线中的第q(q=1,2,…,m)个售药机构xj的药品满足度
Figure BDA0003332901170000054
若αj=0,则该蚂蚁不访问该售药机构,即xj不添加入该蚂蚁所构造的方案中,该蚂蚁将继续进行搜索,与此同时,削减xj与已走过的节点之间路径的信息素τ(xv,xj):
Figure BDA0003332901170000055
其中,Aq-1表示一条取药路径中前(q-1)个访问的售药机构节点集合,则xv表示该取药路径中在xj之前访问的节点,τ(xv,xj)为原点和前(q-1)个售药机构到第q个售药机构xj的路径的信息素值,m0为常数。
所述的小生境更新包括以下步骤:
S61:若为第一次迭代获得的初始种群,则执行S62~S65,以划分初始小生境;否则执行S66~S69;
S62:把具有最小适应值的取药方案作为小生境的代表点rp=Xmin
S63:计算第p个小生境的代表点rp与其他取药方案之间的共享距离s:
以共享路径距离s来度量两个蚂蚁寻得取药方案的相似度,定义为:两个取药方案所共有的弧数,即路径数量,占两个取药方案中最大弧数的比;若X1和X2表示两个取药方案,也就是售药机构的移动序列,则共享路径距离公式为:
Figure BDA0003332901170000056
其中,φ(X)表示取药方案X的边的集合,φ(X1)∩φ(X2)表示X1和X2所共有的弧的集合,|·|表示边的数量;
S64:将步骤S63所获得的共享距离降序排列,选取前d个取药方案个体进入第p个小生境;
S65:重复上述选取过程,直到所有蚂蚁寻得的取药方案个体都分配到各自的小生境中。
S66:将前一代各小生境最优个体分别作为代表点,同样以公式(11)分别计算当前代所得的各小生境最优个体与各代表点的共享路径距离;
S67:对于当前代某最优个体,若其与各代表点的共享距离均为0,则执行S68,否则,执行S69;
S68:创建新的小生境,将该个体添加进此小生境;
S69:把该个体添加进与其共享距离之和最大的小生境内,同时将该小生境中最差的个体移除,从而获得新的小生境。
全局信息素更新步骤为:
S71:每个小生境都有各自的信息素矩阵,每次迭代仅对每个小生境的最优个体路径Rbest增加信息素,其信息素增量与该个体的质量有关,即目标函数值T越小,信息素增量越大;记ρ为信息素挥发因子,Δτ为信息素增量,Q为信息素增加强度系数,则信息素更新公式为:
τ(xi,xj)=(1-ρ)τ(xi,xj)+Δτ,(xi,xj)∈Rbest
Figure BDA0003332901170000061
S72:在步骤S68和步骤S69中涉及到将个体加入小生境,以τ0表示信息素初始值,对添加进小生境内的个体的所有路径Rin增加信息素:
τ(xi,xj)=τ(xi,xj)+0.1τ0,(xi,xj)∈Rin (13)
S73:在步骤S69中,对移除小生境的个体的所有路径Rout减少信息素:
τ(xi,xj)=τ(xi,xj)-0.1τ0,(xi,xj)∈Rout (14)
最优解选取策略为:
S91:设定可接受程度
Figure BDA0003332901170000062
其中Tmin为每次迭代的最优解目标值,c为常数;
S92:将所有小生境最优解与全局最优解比较,将差距小于可接受程度ε的保存进最终方案,否则遗弃。
S61中小生境的更新更新小生境的搜索资源,即更新分配到每个小生境的蚂蚁数量,具体如下:
S611:每代根据小生境的质量,即其最优个体的目标值大小Tmin,更新分配到每个小生境的蚂蚁数目num(i),记小生境的个数为N,则分配到第i小生境的蚂蚁数目:
Figure BDA0003332901170000071
S612:限制每个小生境的蚂蚁数量在[nummin,nummax]内。
有益效果:
1、提出了一种步骤简单,使用方便,快速规划最优路径方案的个人到附近售药机构取药的路径规划;
2、充分考虑了用户需求,针对性地设计相关策略,利用改进的小生境蚁群算法求解得到多个满足一定要求的高质量取药方案以供用户选择。
附图说明
图1是本发明利用小生境蚁群规划取药路径的方法的流程示意图;
图2(a)是用户清单中所需要的药品均为常见药多数售药机构有售时所求得取药方案一的结果示意图;
图2(b)是用户清单中所需要的药品均为常见药多数售药机构有售时所求得取药方案二的结果示意图;
图2(c)是用户清单中所需要的药品均为常见药多数售药机构有售时所求得取药方案三的结果示意图;
图3(a)是用户清单中所需要的药品中存在罕见药仅少量售药机构有销售时所求得取药方案一的结果示意图;
图3(b)是用户清单中所需要的药品中存在罕见药仅少量售药机构有销售时所求得取药方案二的结果示意图;
图3(c)是用户清单中所需要的药品中存在罕见药仅少量售药机构有销售时所求得取药方案三的结果示意图;
图3(d)是用户清单中所需要的药品中存在罕见药仅少量售药机构有销售时所求得取药方案四的结果示意图。
具体实施方式
下面将结附图对本发明的实施例做进一步说明。
如图1所示,本发明的一种利用小生境蚁群规划取药路径的方法,其步骤如下:
S1:设有n个售药机构,每个售药机构中的药品种类且存储量有限,根据用户药单对售取药的快捷性需求,建立取药路径规划模型;
建立取药路径规划模型的具体方法为:
S11:设共有n个售药机构,记为a1,…,an,构成决策变量X=(x1,x2,…,xn);为形成有效的访问路径,在决策变量中标记不访问的售药机构的序号xi=0,将购买到所有药品需要访问的m个售药机构则按其访问顺序依次标记为xj=q,q=1,2,…,m;记用户当前的位置为x0,用户取药完成后抵达位置为xn+1,其中n个售药机构具有异构特性,即具有不同的药品种类和存储量;
S12:记xi,xj为访问路径上两个相邻售药机构,二者之间的实际路径行驶时间为T(xi,xj),售药机构包括药店和医院,每一个药店和医院的取药时间分别设为t0和t1,设所访问的售药机构中存在
Figure BDA0003332901170000081
个药店和
Figure BDA0003332901170000082
个医院,则访问路径所需的总取药时间为
Figure BDA0003332901170000083
用户从当前位置出发x0,经过选中的售药机构,最终抵达完成位置xn+1,则访问路径所需的总时间为:
Figure BDA0003332901170000084
S13:假设用户药单中的药品集合为L,第k种药品的需求量为dk,对于售药机构i,第k种药品的库存量为
Figure BDA0003332901170000085
则该售药机构对第k种药品的满足度,记为
Figure BDA0003332901170000086
Figure BDA0003332901170000087
式(2)确保了每种药品都能一次性取完。为保证用户药单中所有药物都取到,则对于用户药单中的任一药品,在所访问的售药机构中,至少有一个售药机构取到满足数量需求的该种类药品,即:
Figure BDA0003332901170000088
S14:由此,构建取药路径规划的模型为:
Figure BDA0003332901170000091
S2:采用蚁群算法对用户取药路径规划模型生成并优化解,利用小生境技术维持取药路径的多样性;其中蚁群算法利用NP只蚂蚁随机选择第一个售药机构作为起点,将各蚂蚁的当前位置添加到各蚂蚁自身的禁忌表中;
S3:蚁群算法中的蚂蚁通过信息素和启发式信息来选择取药路径中起点后行进的下一个售药机构作为节点,因此利用改进状态转移概率来确定各蚂蚁选择下一个节点,然后将移动的节点位置更新该蚂蚁自身的禁忌表;
改进的状态转移概率计算方法如下:
S31:蚂蚁通过信息素τ和启发式值η来选择新进的下一个节点,因此信息素τ越多、启发式值η越高的路径被选中的概率越大,下一个节点的状态转移的概率公式如下:
Figure BDA0003332901170000092
Figure BDA0003332901170000093
Figure BDA0003332901170000094
其中,iter为当前迭代次数,iter_max为最大迭代次数,β为蚂蚁信息素启发因子,γ为期望启发因子,allow表示蚂蚁尚未访问的售药机构节点集合;信息素与启发式信息的权重比μ和ζ随着迭代的进行自适应改变,使得启发式因素在迭代前期占比更大,之后接近于1;在迭代中期,信息素的影响力增大,加快收敛速度;而在后期,降低信息素的影响,特别是在迭代的最后三分之一,信息素的权重比μ降至1以下,以防止蚁群陷入局部最优;
其中,对于蚂蚁所在的当前位置来说,作为下一个行进节点的某个售药机构的启发式值η(xi,xj)由当前位置到该节点的实际路径行驶时间和该节点到终点的实际路径行驶时间共同决定:
Figure BDA0003332901170000095
S4:循环步骤S3直至满足取药路径规划模型中的药品满足度约束条件,对不能满足所有药品需求的不可行解进行局部信息素更新;
基于药品满足度的约束处理包括以下内容:
S41:在每只蚂蚁随机选取作为第一个节点的售药机构xi之后,对每只蚂蚁的信息素做如下变化:
Figure BDA0003332901170000101
其中τ(xu,xi)(u=0,1,...,n)为所有节点到节点xi的边的信息素值,
Figure BDA0003332901170000105
为信息素挥发因子,Q1为局部信息素增量系数,
Figure BDA0003332901170000102
为售药机构xi的药品满足度;
S42:对于蚂蚁寻得路线中的第q(q=1,2,…,m)个售药机构xj的药品满足度
Figure BDA0003332901170000103
若αj=0,则该蚂蚁不访问该售药机构,即xj不添加入该蚂蚁所构造的方案中,该蚂蚁将继续进行搜索,与此同时,削减xj与已走过的节点之间路径的信息素τ(xv,xj):
Figure BDA0003332901170000104
其中,Aq-1表示一条取药路径中前(q-1)个访问的售药机构节点集合,则xv表示该取药路径中在xj之前访问的节点,τ(xv,xj)为原点和前(q-1)个售药机构到第q个售药机构xj的路径的信息素值,m0为常数;
S5:在每一代的所有蚂蚁寻解完成后,对当前各小生境的最优解运用2-opt,即两元素优化方法,在最优解方案中选择两个取药处并交换顺序,如果改变顺序后改进了原解,则将原解替换为新解;
S6:通过目标值和共享路径距离评价每只蚂蚁寻得的取药方案个体,分别得到适应值和相似度并更新小生境;
小生境更新包括以下步骤:
S61:若为第一次迭代获得的初始种群,则执行S62~S65,以划分初始小生境;否则执行S66~S69;
S62:把具有最小适应值的取药方案作为小生境的代表点rp=Xmin
S63:计算第p个小生境的代表点rp与其他取药方案之间的共享距离s:
以共享路径距离s来度量两个蚂蚁寻得取药方案的相似度,定义为:两个取药方案所共有的弧数,即路径数量,占两个取药方案中最大弧数的比;若X1和X2表示两个取药方案,也就是售药机构的移动序列,则共享路径距离公式为:
Figure BDA0003332901170000111
其中,φ(X)表示取药方案X的边的集合,φ(X1)∩φ(X2)表示X1和X2所共有的弧的集合,|·|表示边的数量;
S64:将步骤S63所获得的共享距离降序排列,选取前d个取药方案个体进入第p个小生境;
S65:重复上述选取过程,直到所有蚂蚁寻得的取药方案个体都分配到各自的小生境中。
S66:将前一代各小生境最优个体分别作为代表点,同样以公式(11)分别计算当前代所得的各小生境最优个体与各代表点的共享路径距离;
S67:对于当前代某最优个体,若其与各代表点的共享距离均为0,则执行S68,否则,执行S69;
S68:创建新的小生境,将该个体添加进此小生境;
S69:把该个体添加进与其共享距离之和最大的小生境内,同时将该小生境中最差的个体移除,从而获得新的小生境;
小生境的更新更新小生境的搜索资源,即更新分配到每个小生境的蚂蚁数量,具体如下:
S611:每代根据小生境的质量,即其最优个体的目标值大小Tmin,更新分配到每个小生境的蚂蚁数目num(i),记小生境的个数为N,则分配到第i小生境的蚂蚁数目:
Figure BDA0003332901170000112
S612:限制每个小生境的蚂蚁数量在[nummin,nummax]内;
S7:按照全局信息素更新规则更新全局信息素;
全局信息素更新步骤为:
S71:每个小生境都有各自的信息素矩阵,每次迭代仅对每个小生境的最优个体路径Rbest增加信息素,其信息素增量与该个体的质量有关,即目标函数值T越小,信息素增量越大;记ρ为信息素挥发因子,Δτ为信息素增量,Q为信息素增加强度系数,则信息素更新公式为:
τ(xi,xj)=(1-ρ)τ(xi,xj)+Δτ,(xi,xj)∈Rbest
Figure BDA0003332901170000121
S72:在步骤S68和步骤S69中涉及到将个体加入小生境,以τ0表示信息素初始值,对添加进小生境内的个体的所有路径Rin增加信息素:
τ(xi,xj)=τ(xi,xj)+0.1τ0,(xi,xj)∈Rin (13)
S73:在步骤S69中,对移除小生境的个体的所有路径Rout减少信息素:
τ(xi,xj)=τ(xi,xj)-0.1τ0,(xi,xj)∈Rout (14)
S8:判断是否达到作为终止条件的最大迭代次数,若满足,则输出全局信息素更新后的取药方案;否则,清空每只蚂蚁的禁忌表,并跳转到步骤S2;
S9:根据最优解选取策略,即将全局信息素更新后的取药方案中的所有解与最优解比较,把差距小于可接受程度ε的解保存进最终方案,否则遗弃,从而获得一组最佳取药方案;
最优解选取策略为:
S91:设定可接受程度
Figure BDA0003332901170000122
其中Tmin为每次迭代的最优解目标值,c为常数;
S92:将所有小生境最优解与全局最优解比较,将差距小于可接受程度ε的保存进最终方案,否则遗弃。
实施例一、
每只蚂蚁随机选择第一个售药机构,并添加到各自的禁忌表中;然后按照式(5)得到状态转移概率,并采用轮盘赌法选择下一个售药机构,所选的节点依次被加入禁忌表,直到取完所有药品。在此过程中,蚂蚁走过的路径都采用式(9)、(10)来对信息素矩阵进行处理。每次迭代完毕,所有的NP只蚂蚁都构造了一个满足约束的取药方案,每一代都对最优的个体运用式(12)来增加其各路径的信息素量,并且更新小生境,直到达到最大迭代次数,得到一组最佳取药方案。将这组取药方案中的所有解与最优解比较,把差距小于可接受程度ε的解保存进最终方案,否则遗弃。
相关参数的取值为:药店的取药时间t0=4,医院的取药时间t1=30,信息素启发因子β=1,期望启发因子γ=3,局部信息素挥发因子
Figure BDA0003332901170000132
全局信息素挥发因子ρ=0.1,局部信息素增量系数Q1=0.1,全局信息素增加强度系数Q=2,初始信息素值τ0=0.28,种群规模NP=100,一个小生境的最小蚂蚁数量nummin=10,最大蚂蚁数量nummax=60,常数m0=1,c=3。
以个人到药店或者医院取药的例子,说明本发明所提方法的有效性:
通过调用地图API获取实际地理数据:若用户清单中所需要的药品均为常见药,即多数售药机构均有销售的药品,则定义为第一种情形,此时获取附近2公里内的售药机构(一共22个)的地理分布信息,以及售药机构之间的实际道路骑行时间;若用户清单中所需要的药品中存在罕见药,即只有少量售药机构有销售的药品,其余售药机构该药品库存量为零,则定义为第二种情形,此时获取附近10公里内的售药机构(一共122个)的地理分布信息,以及售药机构两两之间的实际道路驾驶时间。用户药单以及售药机构药品库存量为随机生成的数,其中第二种情形设置某几种药品只有某些医院存有。
根据给定药单(药品+对应需求量)、调用百度地图API获取的售药机构实际道路行驶时间数据以及售药机构存药量信息,由本专利方法可以求解得到一组取药方案,以供用户选择。以两种取药情形和多种待取药品种类数形成不同的规模,实验结果如表1所示。
表1不同规模的取药路径规划结果
Figure BDA0003332901170000131
Figure BDA0003332901170000141
表1中,箭头连接的为售药机构,加上起点和终点可构成一个完整的取药路径方案,括号中为对应目标值(取药时间)的大小,单位为分钟。
如图2(a)、图2(b)、图2(c)所示具有22个售药机构的第一种取药情形,待取药品种类数为10时的路径规划方案,其中图2(a)表示路径规划实施方案一:泰山社区卫生服务中心→广济连锁药店(康安药店);图2(b)表示路径规划实施方案二:先声再康药店(大学城药店)→恩华大药房(欣欣店)的;图2(c)表示路径规划实施方案三:百汇药店→中康健康;其中圆圈内标号代表该颜色取药路径访问售药机构所对应的次序,明显可以看出图2(a)中的取药路径为最优路径;
如图3(a)、图3(b)、图3(c)、图3(d)所示具有122个售药机构第二种取药情形,在待取药品种类数为10时所求得取药方案的结果示意图:其中图3(a)表示路径规划实施方案一:泰山南社区卫生服务中心(南一区)→康宝医药连锁(兴荣药店);图3(b)表示路径规划实施方案二:徐州奎园医院→中健药房(奎园店);图3(c)表示路径规划实施方案三:泰山南社区卫生服务中心(南一区)→广顺药店→百汇药店;图3(d)表示路径规划实施方案四:中健药房(三胞药店)→百汇药店→泰山南社区卫生服务中心(南一区);其中圆圈内标号代表该颜色取药路径访问售药机构所对应的次序,明显可以看出图2(a)中的取药路径为最优路径;
将所提方法与无药品满足度规则及相关约束处理方法、无状态转移概率公式改进的普通小生境蚁群算法(NACO)进行对比,相关参数设置一致,运行20次取平均值,实验结果如表2所示。由表可知,所提方法能够高效求解取药路径规划问题,特别是对于售药机构数目比较大和所取药品种类比较多的情形,求解结果明显更优,而且大大减少了程序运行时间。
表2不同规模的取药路径规划结果
Figure BDA0003332901170000142
Figure BDA0003332901170000151

Claims (8)

1.一种利用小生境蚁群规划取药路径的方法,其特征在于步骤如下:
S1:设有n个售药机构,每个售药机构中的药品种类且存储量有限,根据用户药单中对售取药的快捷性需求,建立取药路径规划模型;
S2:采用蚁群算法对用户取药路径规划模型生成并优化解,利用小生境技术维持取药路径的多样性;其中蚁群算法利用NP只蚂蚁随机选择第一个售药机构作为起点,将各蚂蚁的当前位置添加到各蚂蚁自身的禁忌表中;
S3:蚁群算法中的蚂蚁通过信息素和启发式信息来选择取药路径中起点后行进的下一个售药机构作为节点,因此利用改进状态转移概率来确定各蚂蚁选择下一个节点,然后将移动的节点位置更新该蚂蚁自身的禁忌表;
S4:循环步骤S3直至满足取药路径规划模型中的药品满足度约束条件,对不能满足所有药品需求的不可行解进行局部信息素更新;
S5:在每一代的所有蚂蚁寻解完成后,对当前各小生境的最优解运用2-opt,即两元素优化方法,在最优解方案中选择两个取药处并交换顺序,如果改变顺序后改进了原解,则将原解替换为新解;
S6:通过目标值和共享路径距离评价每只蚂蚁寻得的取药方案个体,分别得到适应值和相似度并更新小生境;
S7:按照全局信息素更新规则更新全局信息素;
S8:判断是否达到作为终止条件的最大迭代次数,若满足,则输出全局信息素更新后的取药方案;否则,清空每只蚂蚁的禁忌表,并跳转到步骤S2;
S9:把所得的取药方案中适应值最高的作为最优解,根据最优解选取策略,即将全局信息素更新后的所有取药方案与最优解比较,把差距小于可接受程度ε的解保存进最佳取药方案保存,否则遗弃,从而获得一组最佳取药路径规划方案。
2.根据权利要求1所述的利用小生境蚁群规划取药路径的方法,其特征在于建立取药路径规划模型的具体方法为:
S11:设共有n个售药机构,记为a1,···,an,构成决策变量X=(x1,x2,…,xn);为形成有效的访问路径,在决策变量中标记不访问的售药机构的序号xi=0,将购买到所有药品需要访问的m个售药机构则按其访问顺序依次标记为xj=q,q=1,2,…,m;记用户当前的位置为x0,用户取药完成后抵达位置为xn+1,其中n个售药机构具有异构特性,即具有不同的药品种类和存储量;
S12:记xi,xj为访问路径上两个相邻售药机构,二者之间的实际路径行驶时间为T(xi,xj);售药机构包括药店和医院,每一个药店和医院的取药时间分别设为t0和t1,设所访问的售药机构中存在
Figure FDA0003332901160000021
个药店和
Figure FDA0003332901160000022
个医院,则访问路径所需的总取药时间为
Figure FDA0003332901160000023
用户从当前位置出发x0,经过选中的售药机构,最终抵达完成位置xn+1,则访问路径所需的总时间为:
Figure FDA0003332901160000024
S13:假设用户药单中的药品集合为L,第k种药品的需求量为dk,对于售药机构i,第k种药品的库存量为
Figure FDA0003332901160000025
则该售药机构对第k种药品的满足度,记为
Figure FDA0003332901160000026
Figure FDA0003332901160000027
式(2)确保了每种药品都能一次性取完。为保证用户药单中所有药物都取到,则对于用户药单中的任一药品,在所访问的售药机构中,至少有一个售药机构取到满足数量需求的该种类药品,即:
Figure FDA0003332901160000028
S14:由此,构建取药路径规划的模型为:
Figure FDA0003332901160000029
3.根据权利要求2所述的利用小生境蚁群规划取药路径的方法,其特征在于改进的状态转移概率计算方法如下:
S31:蚂蚁通过信息素τ和启发式值η来选择新进的下一个节点,因此信息素τ越多、启发式值η越高的路径被选中的概率越大,下一个节点的状态转移的概率公式如下:
Figure FDA00033329011600000210
Figure FDA00033329011600000211
Figure FDA0003332901160000031
其中,iter为当前迭代次数,iter_max为最大迭代次数,β为蚂蚁信息素启发因子,γ为期望启发因子,allow表示蚂蚁尚未访问的售药机构节点集合;信息素与启发式信息的权重比μ和ζ随着迭代的进行自适应改变,使得启发式因素在迭代前期占比更大,之后接近于1;在迭代中期,信息素的影响力增大,加快收敛速度;而在后期,降低信息素的影响,特别是在迭代的最后三分之一,信息素的权重比μ降至1以下,以防止蚁群陷入局部最优;
其中,对于蚂蚁所在的当前位置来说,作为下一个行进节点的某个售药机构的启发式值η(xi,xj)由当前位置到该节点的实际路径行驶时间和该节点到终点的实际路径行驶时间共同决定:
Figure FDA0003332901160000032
4.根据权利要求3所述的利用小生境蚁群规划取药路径的方法,其特征在于基于药品满足度的约束处理包括以下内容:
S41:在每只蚂蚁随机选取作为第一个节点的售药机构xi之后,对每只蚂蚁的信息素做如下变化:
Figure FDA0003332901160000033
其中τ(xu,xi)(u=0,1,…,n)为所有节点到节点xi的边的信息素值,
Figure FDA0003332901160000034
为信息素挥发因子,Q1为局部信息素增量系数,
Figure FDA0003332901160000035
为售药机构xi的药品满足度;
S42:对于蚂蚁寻得路线中的第q(q=1,2,…,m)个售药机构xj的药品满足度
Figure FDA0003332901160000036
若αj=0,则该蚂蚁不访问该售药机构,即xj不添加入该蚂蚁所构造的方案中,该蚂蚁将继续进行搜索,与此同时,削减xj与已走过的节点之间路径的信息素τ(xv,xj):
Figure FDA0003332901160000037
其中,Aq-1表示一条取药路径中前(q-1)个访问的售药机构节点集合,则xv表示该取药路径中在xj之前访问的节点,τ(xv,xj)为原点和前(q-1)个售药机构到第q个售药机构xj的路径的信息素值,m0为常数。
5.根据权利要求1所述的利用小生境蚁群规划取药路径的方法,其特征在于所述的小生境更新包括以下步骤:
S61:若为第一次迭代获得的初始种群,则执行S62~S65,以划分初始小生境;否则执行S66~S69;
S62:把具有最小适应值的取药方案作为小生境的代表点rp=Xmin
S63:计算第p个小生境的代表点rp与其他取药方案之间的共享距离s:
以共享路径距离s来度量两个蚂蚁寻得取药方案的相似度,定义为:两个取药方案所共有的弧数,即路径数量,占两个取药方案中最大弧数的比;若X1和X2表示两个取药方案,也就是售药机构的移动序列,则共享路径距离公式为:
Figure FDA0003332901160000041
其中,φ(X)表示取药方案X的边的集合,φ(X1)∩φ(X2)表示X1和X2所共有的弧的集合,|·|表示边的数量;
S64:将步骤S63所获得的共享距离降序排列,选取前d个取药方案个体进入第p个小生境;
S65:重复上述选取过程,直到所有蚂蚁寻得的取药方案个体都分配到各自的小生境中。
S66:将前一代各小生境最优个体分别作为代表点,同样以公式(11)分别计算当前代所得的各小生境最优个体与各代表点的共享路径距离;
S67:对于当前代某最优个体,若其与各代表点的共享距离均为0,则执行S68,否则,执行S69;
S68:创建新的小生境,将该个体添加进此小生境;
S69:把该个体添加进与其共享距离之和最大的小生境内,同时将该小生境中最差的个体移除,从而获得新的小生境。
6.根据权利要求5所述的利用小生境蚁群规划取药路径的方法,其特征在于全局信息素更新步骤为:
S71:每个小生境都有各自的信息素矩阵,每次迭代仅对每个小生境的最优个体路径Rbest增加信息素,其信息素增量与该个体的质量有关,即目标函数值T越小,信息素增量越大;记ρ为信息素挥发因子,Δτ为信息素增量,Q为信息素增加强度系数,则信息素更新公式为:
τ(xi,xj)=(1-ρ)τ(xi,xj)+Δτ,(xi,xj)∈Rbest
Figure FDA0003332901160000051
S72:在步骤S68和步骤S69中涉及到将个体加入小生境,以τ0表示信息素初始值,对添加进小生境内的个体的所有路径Rin增加信息素:
τ(xi,xj)=τ(xi,xj)+0.1τ0,(xi,xj)∈Rin (13)
S73:在步骤S69中,对移除小生境的个体的所有路径Rout减少信息素:
τ(xi,xj)=τ(xi,xj)-0.1τ0,(xi,xj)∈Rout (14)。
7.根据权利要求1所述的利用小生境蚁群规划取药路径的方法,其特征在于最优解选取策略为:
S91:设定可接受程度
Figure FDA0003332901160000052
其中Tmin为每次迭代的最优解目标值,c为常数;
S92:将所有小生境最优解与全局最优解比较,将差距小于可接受程度ε的保存进最终方案,否则遗弃。
8.根据权利要求5所述的利用小生境蚁群规划取药路径的方法,其特征在于S61中小生境的更新更新小生境的搜索资源,即更新分配到每个小生境的蚂蚁数量,具体如下:
S611:每代根据小生境的质量,即其最优个体的目标值大小Tmin,更新分配到每个小生境的蚂蚁数目num(i),记小生境的个数为N,则分配到第i小生境的蚂蚁数目:
Figure FDA0003332901160000053
S612:限制每个小生境的蚂蚁数量在[nummin,nummax]内。
CN202111285735.XA 2021-11-02 2021-11-02 一种利用小生境蚁群规划取药路径的方法 Active CN113885527B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111285735.XA CN113885527B (zh) 2021-11-02 2021-11-02 一种利用小生境蚁群规划取药路径的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111285735.XA CN113885527B (zh) 2021-11-02 2021-11-02 一种利用小生境蚁群规划取药路径的方法

Publications (2)

Publication Number Publication Date
CN113885527A true CN113885527A (zh) 2022-01-04
CN113885527B CN113885527B (zh) 2023-10-20

Family

ID=79015282

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111285735.XA Active CN113885527B (zh) 2021-11-02 2021-11-02 一种利用小生境蚁群规划取药路径的方法

Country Status (1)

Country Link
CN (1) CN113885527B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050216182A1 (en) * 2004-03-24 2005-09-29 Hussain Talib S Vehicle routing and path planning
CN108960504A (zh) * 2018-07-02 2018-12-07 西南交通大学 一种可视化拣选路径确定方法
CN111238481A (zh) * 2020-01-21 2020-06-05 华南理工大学 一种多路径规划方法和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050216182A1 (en) * 2004-03-24 2005-09-29 Hussain Talib S Vehicle routing and path planning
CN108960504A (zh) * 2018-07-02 2018-12-07 西南交通大学 一种可视化拣选路径确定方法
CN111238481A (zh) * 2020-01-21 2020-06-05 华南理工大学 一种多路径规划方法和系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
XIANG JI等: "2-OptACO:An Improvement of Ant Coliny Optimization for UAV Path in Disaster Rescue", 《2017 INTERNATIONAL CONFERENCE ON NETWORKING AND NETWORK APPLICATIONS》 *
余冬财;朱华炳;王烽;高崧;姚卫杰;: "基于改进蚁群算法的机械加工零件物流配送路径研究", 组合机床与自动化加工技术, no. 09 *
刘中强;游晓明;刘升;: "一种启发式动态信息素更新策略的蚁群算法", 计算机工程与应用, no. 20 *

Also Published As

Publication number Publication date
CN113885527B (zh) 2023-10-20

Similar Documents

Publication Publication Date Title
Molina et al. An ACS-based memetic algorithm for the heterogeneous vehicle routing problem with time windows
US7613573B2 (en) Pricing of the identification service by a registry which identifies prospective donors having particular bloodtypes to a requisitioner
Peterson et al. Exploring the implications of the Internet for consumer marketing
US11379730B2 (en) Progressive objective addition in multi-objective heuristic systems and methods
US20030195791A1 (en) System, method and article of manufacture to determine and communicate redistributed product demand
US8626692B2 (en) Knowledge based method and system for local commerce
JP2007293850A (ja) 検索結果リスト生成方法および検索結果リスト生成システム
CN106779808A (zh) 一种商圈中消费者空间行为分析系统及方法
Grauberger et al. Airline revenue management games with simultaneous price and quantity competition
CN107851268A (zh) 用于对商家进行排名的方法和系统
US8126783B2 (en) Rule-based shopping
Roy et al. Restaurant analytics: Emerging practice and research opportunities
Martin et al. The competitive pickup and delivery orienteering problem for balancing car-sharing systems
Chen et al. The paired many-to-many pickup and delivery problem: an application
Ibarra-Rojas et al. Vehicle routing problem considering equity of demand satisfaction
Yapicioglu et al. A bi-objective model for the retail spatial design problem
Pinto et al. A comprehensive review of batching problems in low-level picker-to-parts systems with order due dates: Main gaps, trade-offs, and prospects for future research
Schwamberger et al. Feeding the nation—dynamic customer contacting for e-fulfillment in times of crisis
CN113885527A (zh) 一种利用小生境蚁群规划取药路径的方法
Ho et al. The design of a parallel zone-picking system with cooperation area between neighbouring zones and its cooperation methods
Menezes et al. Service delivery to moving demand points using mobile servers
Ghosh et al. Optimal timing and location in competitive markets
US11853960B1 (en) Systems for selecting items and item placements
Boukli-Hacene et al. Optimal design of pharemaceuticals supply chain
Chakma et al. Optimizing Dynamic Ride Sharing with Multiple Objectives

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant