CN111523789A - 一种基于步长的多agv实时调度方法 - Google Patents
一种基于步长的多agv实时调度方法 Download PDFInfo
- Publication number
- CN111523789A CN111523789A CN202010310513.8A CN202010310513A CN111523789A CN 111523789 A CN111523789 A CN 111523789A CN 202010310513 A CN202010310513 A CN 202010310513A CN 111523789 A CN111523789 A CN 111523789A
- Authority
- CN
- China
- Prior art keywords
- sequence
- station
- agv
- trolley
- allcolsite
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
- G06Q10/0835—Relationships between shipper or supplier and carriers
- G06Q10/08355—Routing methods
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Quality & Reliability (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本发明涉及一种基于步长的多AGV实时调度方法,构建地图相关的图数据结构、AGV小车数据结构,图数据结构表示当前地图中各个站点的连接关系;AGV小车数据结构表示与AGV小车相对应的任务路径以及其行驶状态和未来行驶路径状态。本发明能够有效处理因AGV小车因死锁导致调度系统瘫痪的问题以及调度等待时间过长问题。
Description
技术领域
本发明涉及AGV实时调度领域,具体涉及一种基于步长的多AGV实时调度方法。
背景技术
在使用自动导引小车AGV(Automated Guided Vehicle)物流仓库中,尤其是使用了多台AGV的情况下,AGV小车在搬运货物过程中,不可避免地会引发AGV的碰撞冲突和死锁。AGV发生碰撞冲突和死锁将直接导致物流仓库系统瘫痪。因此研究多AGV调度过程中避免冲突碰撞死锁是AGV研究问题的重要领域,不仅对于AGV调度系统理论的发展有重大促进作用,而且能够应用于实际物流仓库,解决物流仓库低吞吐量的问题。
发明内容
有鉴于此,本发明的目的在于提供一种基于步长的多AGV实时调度方法,有效处理因AGV小车因死锁导致调度系统瘫痪的问题以及调度等待时间过长问题
为实现上述目的,本发明采用如下技术方案:
一种基于步长的多AGV实时调度方法,包括以下步骤:
步骤S1:采用图论对多AGV运行环境进行数学建模;
步骤S2:基于数据结构与编程语言,构建AGV小车类;
步骤S3:初始化AGV小车各属性,postion初始化为0;
步骤S4:初始化地图和站点列表;
步骤S5:如果任务队列不为空,对postion开始到序列末尾作为起点到终点的站点序列,根据序列长度对AGV小车行驶优先级进行排序,初始化AllcolSite为最长序列长度+1,第一序列set、dict初始化为空,当前序列colSite初始化为本序列长度;
步骤S6:遍历序列,初始化TemcolSite为序列长度,从第二序列开始先复制前一序列的set与dict,若此站点不在当前set中,则将此站点信息添加到set和dict中;若此站点已在当前set中,该站点序号若小于TemcolSite,则更新TemcolSite,再判断此站点序号是否小于dict中站点对应序号,若是,则更新dict中对应值,若否,退出对本序列的循环;若TemcolSite小于colSite和AllcolSite,则更新colSite和AllcolSite为TemcolSite的值;
步骤S7:.当遍历完所有序列,得到AllcolSite的值,若AllcolSite等于1,则循环检查每辆小车的colSite值,若colSite大于1,则将该小车往前调度一个站点,也就是将每辆小车的postion+1;若colSite等于1,则等待下一轮调度;若AllcolSite大于1,对序列做循环检查,判断AllcolSite是否大于本序列长度,若是,将每辆小车的postion设为序列长度,若否,则将每辆小车的postion设为AllcolSite-1,表示将小车调度到最早可能出现冲突站点的前一位置;
步骤S8:等待小车调度到postion站点位置,若到达最终站点,则可根据需要更新该小车任务序列或将序列置空,然后跳转到步骤S5开始下一次调度;
步骤S9:当所有序列都为空时,结束调度,完成AGV小车实时调度。
进一步的,所述步骤S1具体为:路径抽象为图形的边缘,站点抽象为节点,即图G =(V,E),其中V是顶点的有限集合,即V = {v1,v2}。E = {e1,e2,... en},如果<vi,vj>∈E,则<vi,vj>表示两个顶点之间的一条边,图形的存储结构通过邻接矩阵或相邻列表来实现。
进一步的,所述AGV小车类包括序号、任务路径序列列表L、用以存储在本车之前出现过的路径站点的集合序列set、用以存储集合set中序列对应最小行驶步长的dict、用以记录当前小车所处站点在序列中位置的postion、以及用以记录当前序列最早可能出现冲突站点在序列中位置的colSite;同时设置一个全局变量AllcolSite,用以记录当前全局最早可能出现冲突站点在序列中位置,一个在序列循环中的临时变量TemcolSite,用以记录当前序列临时的最早可能出现冲突站点在序列中位置。
本发明与现有技术相比具有以下有益效果:
1、本发明能够有效处理因AGV小车因死锁导致调度系统瘫痪的问题以及调度等待时间过长问题。
2、本发明能够保证物流仓库系统在调度过程中不会出现死锁及瘫痪,提高物流仓库系统的工作效率,且对调度顺序及流程进行了优化,减少了调度等待时间。
附图说明
图1是本发明一实施例中方法流程图;
图2是本发明实施例1中调度系统的初始状态;
图3是本发明实施例1中第一次调度后的路径与站点状况;
图4是本发明实施例1中第二次调度后的路径与站点状况;
图5是本发明实施例1中小车行驶过程图;
图6是本发明实施例1中小车行驶过程图;
图7是本发明实施例1中小车行驶过程图;
图8是本发明实施例1中小车调度的最终位置。
具体实施方式
下面结合附图及实施例对本发明做进一步说明。
请参照图1,本发明提供一种基于步长的多AGV实时调度方法,包括以下步骤:
步骤S1:采用图论对多AGV运行环境进行数学建模;具体为:路径抽象为图形的边缘,站点抽象为节点,即图G =(V,E),其中V是顶点的有限集合,即V = {v1,v2}。E = {e1,e2,... en},如果<vi,vj>∈E,则<vi,vj>表示两个顶点之间的一条边,图形的存储结构通过邻接矩阵或相邻列表来实现。
步骤S2:基于数据结构与编程语言,构建AGV小车类,包括序号、任务路径序列列表L、用以存储在本车之前出现过的路径站点的集合序列set、用以存储集合set中序列对应最小行驶步长的dict、用以记录当前小车所处站点在序列中位置的postion、以及用以记录当前序列最早可能出现冲突站点在序列中位置的colSite;同时设置一个全局变量AllcolSite,用以记录当前全局最早可能出现冲突站点在序列中位置,一个在序列循环中的临时变量TemcolSite,用以记录当前序列临时的最早可能出现冲突站点在序列中位置。
步骤S3:初始化AGV小车各属性,postion初始化为0;
步骤S4:初始化地图和站点列表;
步骤S5:如果任务队列不为空,对postion开始到序列末尾作为起点到终点的站点序列,根据序列长度对AGV小车行驶优先级进行排序,初始化AllcolSite为最长序列长度+1,第一序列set、dict初始化为空,当前序列colSite初始化为本序列长度;
步骤S6:遍历序列,初始化TemcolSite为序列长度,从第二序列开始先复制前一序列的set与dict,若此站点不在当前set中,则将此站点信息添加到set和dict中;若此站点已在当前set中,该站点序号若小于TemcolSite,则更新TemcolSite,再判断此站点序号是否小于dict中站点对应序号,若是,则更新dict中对应值,若否,退出对本序列的循环;若TemcolSite小于colSite和AllcolSite,则更新colSite和AllcolSite为TemcolSite的值;
步骤S7:当遍历完所有序列,得到AllcolSite的值,若AllcolSite等于1,则循环检查每辆小车的colSite值,若colSite大于1,则将该小车往前调度一个站点,也就是将每辆小车的postion+1;若colSite等于1,则等待下一轮调度;若AllcolSite大于1,对序列做循环检查,判断AllcolSite是否大于本序列长度,若是,将每辆小车的postion设为序列长度,若否,则将每辆小车的postion设为AllcolSite-1,表示将小车调度到最早可能出现冲突站点的前一位置;
步骤S8:等待小车调度到postion站点位置,若到达最终站点,则可根据需要更新该小车任务序列或将序列置空,然后跳转到步骤S5开始下一次调度;
步骤S9:当所有序列都为空时,结束调度,完成AGV小车实时调度。
实施例1:
本实施中 ,AGV1调度路径序列为(0,3,7,8, 9),AGV2调度路径序列为(6,7,3,2),AGV3调度路径序列为(11,8,9)。每辆AGV小车的对应路径如图1所示,初始化每一辆AGV小车的postion属性为0,表示小车在初始站点位置,设置colSite属性为序列长度,进入调度计算,由于AGV1中的3->7与AGV2中的7->3位置上有冲突,而AGV3和AGV1和AGV2没有冲突,所以需要在AGV2的7->3位置让AGV2等待7、3站点解锁,然后才能完成3辆车的全部调度,调度系统的初始状态如图2所示。
接下来开始进行调度。
1. 开始进行第一次调度,根据剩下的序列长度对小车排序,当前优先级次序为AGV1>AGV2>AGV3,初始化AllcolSite为最长序列长度+1,当前为6,设置最长序列对应小车的set和dict为空,以各AGV小车的postion到序列末尾作为当前起点到终点的站点序列,从第一序列开始遍历序列的每一站点。
遍历AGV1:
postion=0,set=(0,3,7,8,9),dict=(0:0,3:1,7:2,8:3,9:4),TemcolSite=5,colSite=5,AllcolSite=6。
从第二序列开始,遍历之前先复制前一序列的set与dict。
遍历AGV2:
postion=0,set=(0,3,7,8,9,6,2),dict=(0:0,3:1,7:1,8:3,9:4,6:0,2:3),TemcolSite=1,colSite=1,
AllcolSite=1。
遍历AGV3:
postion=0,set=(0,3,7,8,9,6,2,11),dict=(0:0,3:1,7:1,8:1,9:2,6:0,2:3,11:0),TemcolSite=1, colSite=3,AllcolSite=1。
得到AllcolSite=1,表明colSite=1的小车需要等待相关站点解锁,当前为AGV2需要等待7、3站点解锁,所以让colSite大于1的小车即AGV1和AGV3前进一个站点,也就是postion+1,调度完毕后的路径与站点状况如图3所示,其中走过的路径变为黑色,如0->3,11->8,表示站点0和11解锁。
2.经过上一轮调度后,AGV1到达站点3,AGV2维持在站点6,AGV3到达站点8。
开始进行第二次调度,根据剩下的序列长度对小车排序,当前优先级次序为AGV1>AGV2>AGV3,,初始化AllcolSite为最长序列长度+1,当前为5,设置最长序列对应小车的set和dict为空,以各AGV小车的postion到序列末尾作为当前起点到终点的站点序列,从第一序列开始遍历序列的每一站点。
遍历AGV1:
postion=1,set=(3,7,8,9),dict=(3:0,7:1,8:2,9:3),TemcolSite=4,colSite=4,AllcolSite=5。
从第二序列开始,遍历之前先复制前一序列的set与dict。
遍历AGV2:
postion=0,set=(3,7,8,9,6,2),dict=(3:0,7:1,8:2,9:3,6:0,2:3),TemcolSite=1,colSite=1,
AllcolSite=1。
遍历AGV3:
postion=1,set=(3,7,8,9,6,2),dict=(3:0,7:1,8:0,9:1,6:0,2:3),TemcolSite=0,colSite=2,
AllcolSite=1。
得到AllcolSite=1,表明colSite=1的小车需要等待相关站点解锁,当前为AGV2需要等待7、3站点解锁,所以让colSite大于1的小车即AGV1和AGV3前进一个站点,也就是postion+1,调度完毕后的路径与站点状况如图4所示。
3.经过上一轮调度后,AGV1到达站点7,AGV2维持在站点6,AGV3到达站点9,表明AGV3已到达最终站点位置,可以对AGV3小车序列进行置空或者添加新任务序列,在本例中不再添加序列,所以AGV3任务完成,序列置空。
开始进行第三次调度,根据剩下的序列长度对小车排序,当前优先级次序为AGV2>AGV1,初始化AllcolSite为最长序列长度+1,当前为5,设置最长序列对应小车的set和dict为空,以各AGV小车的postion到序列末尾作为当前起点到终点的站点序列,从第一序列开始遍历序列的每一站点。
遍历AGV2:
postion=2,set=(6,7,3,2),dict=(6:0,7:1,3:2,2:3),TemcolSite=4,colSite=4,AllcolSite=5。
从第二序列开始,遍历之前先复制前一序列的set与dict。
遍历AGV1:
postion=0,set=(6,7,3,2,8,9),dict=(6:0,7:0,3:2,2:3,8:1,9:2),TemcolSite=0,colSite=3,
AllcolSite=5。
得到AllcolSite=5,由于AllcolSite大于每一序列长度,说明在接下来的调度中不会出现冲突,所以每辆小车能够直接调度到终点位置如图8所示,小车行驶过程如图5、图6、图7所示。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
Claims (3)
1.一种基于步长的多AGV实时调度方法,其特征在于,包括以下步骤:
步骤S1:采用图论对多AGV运行环境进行数学建模;
步骤S2:基于数据结构与编程语言,构建AGV小车类;
步骤S3:初始化AGV小车各属性,postion初始化为0;
步骤S4:初始化地图和站点列表;
步骤S5:如果任务队列不为空,对postion开始到序列末尾作为起点到终点的站点序列,根据序列长度对AGV小车行驶优先级进行排序,初始化AllcolSite为最长序列长度+1,第一序列set、dict初始化为空,当前序列colSite初始化为本序列长度;
步骤S6:遍历序列,初始化TemcolSite为序列长度,从第二序列开始先复制前一序列的set与dict,若此站点不在当前set中,则将此站点信息添加到set和dict中;若此站点已在当前set中,该站点序号若小于TemcolSite,则更新TemcolSite,再判断此站点序号是否小于dict中站点对应序号,若是,则更新dict中对应值,若否,退出对本序列的循环;若TemcolSite小于colSite和AllcolSite,则更新colSite和AllcolSite为TemcolSite的值;
步骤S7:.当遍历完所有序列,得到AllcolSite的值,若AllcolSite等于1,则循环检查每辆小车的colSite值,若colSite大于1,则将该小车往前调度一个站点,也就是将每辆小车的postion+1;若colSite等于1,则等待下一轮调度;若AllcolSite大于1,对序列做循环检查,判断AllcolSite是否大于本序列长度,若是,将每辆小车的postion设为序列长度,若否,则将每辆小车的postion设为AllcolSite-1,表示将小车调度到最早可能出现冲突站点的前一位置;
步骤S8:等待小车调度到postion站点位置,若到达最终站点,则可根据需要更新该小车任务序列或将序列置空,然后跳转到步骤S5开始下一次调度;
步骤S9:当所有序列都为空时,结束调度,完成AGV小车实时调度。
2.根据权利要求1所述的基于步长的多AGV实时调度方法,其特征在于,所述步骤S1具体为:路径抽象为图形的边缘,站点抽象为节点,即图G =(V,E),其中V是顶点的有限集合,即V = {v1,v2};E = {e1,e2,... en},如果<vi,vj>∈E,则<vi,vj>表示两个顶点之间的一条边,图形的存储结构通过邻接矩阵或相邻列表来实现。
3.根据权利要求1所述的基于步长的多AGV实时调度方法,其特征在于,所述AGV小车类包括序号、任务路径序列列表L、用以存储在本车之前出现过的路径站点的集合序列set、用以存储集合set中序列对应最小行驶步长的dict、用以记录当前小车所处站点在序列中位置的postion、以及用以记录当前序列最早可能出现冲突站点在序列中位置的colSite;同时设置一个全局变量AllcolSite,用以记录当前全局最早可能出现冲突站点在序列中位置,一个在序列循环中的临时变量TemcolSite,用以记录当前序列临时的最早可能出现冲突站点在序列中位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010310513.8A CN111523789A (zh) | 2020-04-20 | 2020-04-20 | 一种基于步长的多agv实时调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010310513.8A CN111523789A (zh) | 2020-04-20 | 2020-04-20 | 一种基于步长的多agv实时调度方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111523789A true CN111523789A (zh) | 2020-08-11 |
Family
ID=71904157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010310513.8A Pending CN111523789A (zh) | 2020-04-20 | 2020-04-20 | 一种基于步长的多agv实时调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111523789A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114757591A (zh) * | 2022-06-14 | 2022-07-15 | 湖南大学 | 基于行为依赖图的多车型协同分拣调度方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11296228A (ja) * | 1998-04-10 | 1999-10-29 | Ishikawajima Harima Heavy Ind Co Ltd | 待機エリアの無人搬送車管理方法 |
CN107885198A (zh) * | 2017-09-25 | 2018-04-06 | 湖南大学 | Agv调度方法 |
CN107993025A (zh) * | 2017-12-25 | 2018-05-04 | 厦门大学嘉庚学院 | 一种多agv的实时动态解锁调度方法 |
-
2020
- 2020-04-20 CN CN202010310513.8A patent/CN111523789A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11296228A (ja) * | 1998-04-10 | 1999-10-29 | Ishikawajima Harima Heavy Ind Co Ltd | 待機エリアの無人搬送車管理方法 |
CN107885198A (zh) * | 2017-09-25 | 2018-04-06 | 湖南大学 | Agv调度方法 |
CN107993025A (zh) * | 2017-12-25 | 2018-05-04 | 厦门大学嘉庚学院 | 一种多agv的实时动态解锁调度方法 |
Non-Patent Citations (1)
Title |
---|
YIJING GUO,ET AL: "Improving the Performance of Multi-AGV Systems with a Dynamic Unlock Algorithm" * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114757591A (zh) * | 2022-06-14 | 2022-07-15 | 湖南大学 | 基于行为依赖图的多车型协同分拣调度方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109991977B (zh) | 机器人的路径规划方法及装置 | |
CN113780633B (zh) | 面向复杂环境的带实时冲突消解的多agv智能协同调度方法 | |
CN105354648B (zh) | Agv调度管理的建模及其优化方法 | |
CN107168316B (zh) | 一种基于单双向混合路径的多agv调度系统 | |
CN108762268B (zh) | 多agv无碰撞路径规划算法 | |
CN110009259B (zh) | 一种应用于双向路径下柔性制造车间的多agv调度方法 | |
CN111474926B (zh) | 一种基于多agv时间窗路径优化算法的废烟回收方法 | |
CN111026128B (zh) | 一种多激光agv的避让方法 | |
CN111487983B (zh) | 一种封闭式自动化物流园区的多台agv调度方法 | |
CN112027473B (zh) | 一种多深度储货区四向穿梭车多车调度方法 | |
Adamo et al. | Path and speed optimization for conflict-free pickup and delivery under time windows | |
CN107993025A (zh) | 一种多agv的实时动态解锁调度方法 | |
CN115981264A (zh) | 一种考虑冲突的agv调度与数量联合优化方法 | |
CN113532443B (zh) | 路径规划方法、装置、电子设备及介质 | |
CN108596385A (zh) | 车辆的排队方法及装置、可读介质、物流系统 | |
CN114281080B (zh) | 一种amr调度系统中解死锁的方法 | |
CN104951918A (zh) | 一种时间窗路径规划方法 | |
CN111523789A (zh) | 一种基于步长的多agv实时调度方法 | |
CN116027739A (zh) | 机群出入库转运协同调度优化方法、装置和设备 | |
CN114326621A (zh) | 一种基于分层架构的群体智能机场托运车调度方法和系统 | |
CN114924538A (zh) | 一种基于图结构的多agv实时调度与冲突消解方法 | |
CN111123865B (zh) | 一种基于点阵地图的多导航车协同调度方法 | |
CN114659533A (zh) | 应急救援场景下多任务冲突检测与消解的路径规划方法 | |
CN113743788A (zh) | 一种基于改进遗传算法的工业车辆调度方法 | |
CN113515117A (zh) | 一种基于时间窗的多agv实时调度的冲突消解方法 |
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 |