使用两两延迟最小化来调度电梯轿厢的方法

文档序号:8016713阅读:242来源:国知局
专利名称:使用两两延迟最小化来调度电梯轿厢的方法
技术领域
本发明总体上涉及对电梯轿厢的调度,更具体地涉及根据再分配策略而进行的调度方法。
背景技术
对电梯轿厢进行调度是针对建筑物中的电梯组(bank)的实际优化问题。目的是将抵达乘客分配到轿厢中以便使一个或更多个性能标准最优化,所述性能标准例如为等待时间、总运送时间、等待时间长于特定阈值的人的百分比或者服务的公平性。
由于可能方案(解空间)的数量非常大、由新抵达乘客的目的地楼层不明以及后面乘客的抵达时间不明而引起的不确定性,电梯轿厢的调度是一种困难的组合优化问题。
最被普遍接受的优化标准是抵达乘客的平均等待时间(AWT),G.C.Barney,“Elevator Traffic Handbook”,Spon Press,London,2003;G.R.Strakosch,“Vertical transportationelevators and escalators”,John Wiley &Sons,Inc.,New York,NY,1998;以及G.Bao,C.G.Cassandras,T.E.Djaferis,A.D.Gandhi and D.P.Looze,“Elevator dispatchers for downpeak traffic”,Technical report,University of Massachusetts,Department of Electrical andDeterminer Engineering,Amherst,Massachusetts,1994。
另一重要考虑因素是调度器运行地的礼节。在某些国家(例如日本),各个分配都是在抵达乘客进行层站呼叫时进行的,并且直到该乘客得到服务才能改变这种分配。这被称为直接策略。在其他国家(例如美国),系统会将层站呼叫分配给不同的轿厢,如果这样会改进调度的话。这被称为再分配策略。尽管再分配策略增加了调度的计算复杂性,但是可以利用附加的自由度来实现对AWT的主要改进。
在实际当中,假设乘客的不满作为AWT的函数超线性地增长。当使目标(objective)函数最小化时,人们对长等待的抱怨要比短等待强烈得多,这有助于减少大量的长等待,参见M.Brand and D.Nikovski,“Risk-averse group elevator scheduling”,Technical report,MitsubishiElectric Research Laboratories,Cambridge,Massachusetts,2004;以及Brand等人于2002年6月3日提交的第10/161,304号美国专利申请(即,第2003/0221915号美国专利申请公报)“Method and System for DynamicProgramming of Elevators for Optimal Group Elevator Control”,通过引用将它们都合并于此。
另一方法确定现有乘客和后面乘客的AWT,Nikovski et al.,“Decision-theoretic group elevator scheduling”,13thInternationalConference on Automated Planning and S cheduling,June 2003;以及Nikovski等人于2003年6月24日提交的第10/602,849号美国专利申请(即,第2004/0262089号美国专利申请公报)“Method and System forScheduling Cars in Elevator Systems Considering Existing and FuturePassengers”,通过引用将它们都合并于此。该方法被称为“通过动态编程清空系统算法”(ESA-DP)方法。
ESA-DP方法确定出等待时间的基本精确的估计值。该方法考虑了由还未得到服务的乘客或者还未表示出其目的地楼层的乘客的目的地楼层不明而引起的不确定性。该方法用离散状态Markov链来表示系统,并利用动态编程来确定对系统的所有可能的未来状态取平均而得到的AWT。尽管状态空间很大,但是该方法的性能对于建筑楼层数和电梯井数是线性的,并且对于抵达乘客数是二次的。
ESA-DP方法的运行时间对于现代微控制器是完全可能的,并且与其他调度方法相比,ESA-DP方法的解的质量得到了明显改进。然而,该方法没有开发根据再分配策略而运转的电梯系统的附加潜力。

发明内容
本发明提供了一种对电梯系统的轿厢进行调度的方法,所述电梯系统包括轿厢的集合和层站呼叫的集合。如果各个层站呼叫是分配给各个轿厢的唯一层站呼叫,则对于各个轿厢独立地确定各个层站呼叫的等待时间。对于各个轿厢,确定各种可能成对的层站呼叫h和g的互延迟ΔW(h|g)。对所述等待时间和互延迟求和。然后,按照使所述和最小的方式对轿厢的集合进行分配。


图1是根据本发明实施例的分支定界处理所使用的搜索树的图;图2是根据本发明实施例的对电梯轿厢进行调度的系统的方法的框图;图3示出了根据本发明实施例的方法的伪代码;而图4示出了枚举层站呼叫的所有可能子集的伪代码。
具体实施例方式
本发明的实施例提供了一种对根据再分配策略而运行的电梯系统中的电梯轿厢进行调度的方法。
可以用未分配层站呼叫的集合H来刻画电梯调度问题,其中集合H中的各个层站呼叫h是定义了到达楼层f和期望方向d(向上或向下)的元组(f,d)。层站的集合要分配给电梯系统的轿厢集合。
根据轿厢c的当前位置、速度、方向、搭乘乘客的数量以及层站呼叫的集合(其限制了轿厢的运动)来确定轿厢c的状态。因此,对于特定轿厢c,用<c来表示轿厢c可服务于乘客的层站呼叫固有顺序,即当且仅当呼叫hi在呼叫hj之前被轿厢c服务时,才有hi<chj。
通常,轿厢可服务于n个未分配层站呼叫存在n!种不同的顺序。公知的是,即使对于单个轿厢,相应的调度问题的难度也为NP。然而,我们遵循广泛使用的假设轿厢总是沿其当前方向保持移动,直到请求该方向上的服务的所有乘客都得到服务为止。在轿厢变空之后,它可以调转方向。
对于各个层站呼叫h,用Wc(h)来表示轿厢c服务于层站呼叫h而花费的等待时间。该时间取决于轿厢c的当前状态、电梯系统的具体运动(例如,加速度、最大速度)、开关门时间以及启动延迟。假设调度器已知所有这些参数,从而能够充分精确地预测行进时间。
此外,乘客的等待时间严重依赖于分配给同一轿厢的其他层站呼叫。调度器还必须解决这些层站呼叫。由于新抵达乘客的目的地楼层不明而引起的不确定性,无法对等待时间进行精确预测。因此,用等待时间的统计期望来代替延迟。
对于层站呼叫H的任何子集R,RH,如果子集R中的层站呼叫也被分配给轿厢c,则用Wc(h/R)来表示层站呼叫h对轿厢c的预期等待时间。以下为真因为另外的层站呼叫只会使轿厢变慢,所以Wc(h/R)≥Wc(h/);以及如果h<cg,其中g是已分配层站呼叫,则Wc(h/R∪{g})=Wc(h/R),这是因为如果层站呼叫g在层站呼叫h之后由轿厢c来服务,则层站呼叫g不会使层站呼叫h的乘客变慢。
利用通过引用而合并于此的ESA-DP方法,可以有效地确定Wc(h/R)。然而,如果仅给出Wc(h/R1)和Wc(h/R2)的个别期望,则无法轻松地确定Wc(h/R1∪R2)。
将层站呼叫的集合H分配给m个轿厢就是将层站呼叫的集合H划分成m个相异子集{H1,H2,...,Hm},使得对于i≠j以及∪i=1mHi=H,]]>Hi∩Hj=。对于给定的轿厢分配,将分配给层站呼叫h的轿厢表示为c(h)。
在具体决策步骤中使AWT最小化等价于使当前正被服务的所有乘客的剩余等待时间之和最小化。因此,可将给定分配集合{H1,H2,...,Hm}的目标函数F定义为F({H1,H2,...,Hm}):=Σc=1mΣh∈HWc(h|Hi)---(1)]]>期望使该目标函数最小化以找到该调度问题的最优解。
分支定界分支定界(B&B)是一种利用搜索树来系统地解决难优化问题的处理。在贪婪搜索法和动态编程无效时,B&B是有用的。B&B类似于宽度优先搜索。然而,搜索树的所有节点并不都扩展为子节点。而是用预定标准来确定扩展哪个节点以及何时找到了最优解。丢弃不如当前最优解的部分解,参见A.H.Land and A.G.Doig“An Automatic Method forSolving Discrete Programming Problems”,Econometrica,vol.28,pp.497-520,1960,通过引用合并于此。
我们使用B&B处理来解决电梯调度的大规模组合优化问题。虽然解的数量的指数增长通常使得无法进行显式枚举,但是B&B处理对部分问题空间进行搜索的能力常常隐式地得到实际大小的问题的精确解。
B&B处理保持问题空间的尚未探索(explore)子集的池以及至今所获得的最优解。通常将问题空间的未探索子集表示为动态生成的搜索树的节点。最初,B&B处理使用具有表示所有可能分配的单个根节点的搜索树以及初始最优解。每次迭代都处理搜索树的一个特定节点,并且可以分为三个主要部分选择要处理的下一节点、定界和分支。
B&B处理是一通用范例,对于这些步骤中的每一步都存在各种可能性,并且对于这些步骤的顺序也存在各种可能性。例如,如果节点选择基于子问题的定界,则分支是选择要处理的下一节点之后的第一个操作,即,“急切策略(eager strategy)”。作为另一选择,可以在选择节点之后确定界限并且如果需要的话随后进行分支,即,“懒惰策略(lazystrategy)”。
根据优化问题的类型,定界的任务是要为整个子集确定目标函数值的下界。如果我们可以确定所考虑的子集无法包括优于当前最优解的解,则丢弃整个子集。
分支通常通过将当前解的一个或更多个分量分配给特定值,从而将当前搜索空间分成多个非空子集。每个新创建的子集都由搜索树中的节点来表示,并被添加到未解子集的池中。当该池由单个解组成时,将该单个解与最优解进行比较。保留这两个解中较好的一个,并丢弃另一个。当不再有未解子问题剩余时,分支定界终止。此时,找到的最优解保证为全局最优解。
图1和2示出了根据本发明实施例而保持的示例B&B搜索树100。该树具有表示所有可能分配的顶层根节点101、一个或更多个具有表示部分分配的子节点103的直接父节点102,以及表示完全分配的底层叶节点104。要注意,最初,顶层节点既是根节点也是叶节点。按自顶向下的顺序处理节点。在任意叶处,对节点进行评估以确定当前解。如果针对子树中的任意轿厢分配,当前解都无法改进最优解,则丢弃该节点和其下的整个子树;否则,通过生成子节点来扩展该节点,从而树进一步向下延伸。
用矢量(c1,c2,...,cn)110来表示n个层站呼叫h的集合H对于轿厢ci的各种可能分配,即,将可能的分配划分为m个相异子集。将可能的解矢量保持为B&B树100。对于已分配层站呼叫,向轿厢ci分配一范围为1≤ci≤m的值,而对于未分配层站呼叫,向轿厢ci分配-1。每个完全解矢量都对应于一种有效分配,即,对于所有1≤i≤n,都有轿厢ci>-1。因此,解空间的大小是指数的;更精确地说,其大小为mn。
如图2所概略示出的,利用图3中的对应伪代码,将ESA-DP 210和B&B处理220相结合作为我们的调度方法,以根据再分配策略将n个层站呼叫的集合211分配给m个轿厢的集合212。在每一次迭代中都选择第一个未分配层站呼叫,确定其目标函数值的界限,并且如果需要的话进行分支。通过将该呼叫分配给轿厢之一,将剩余的搜索空间划分成m个大小相等的子问题,从而生成m个子节点102。
首先通过将乘客对各个轿厢的等待时间累加,使用根据直接策略的ESA-DP处理对解矢量201进行评估,从而确定(210)解矢量的初始最优解s1202。
使用栈S来保持未解子问题的集合。最初,在根节点101处将空分配x={-1}n推入(301)栈S。使用根据直接分配策略的ESA-DP方法来确定(210)部分解201的最优解202。
每当遇到(302)叶节点104(即,每一个层站呼叫被分配给具体轿厢)时,就确定对于该分配的平均等待时间的期望值。仅在当前分配的解更优的情况下,才用当前分配来代替(303)所找到的最优解。
通过确定(304)下界b,对部分分配进行评估。将该下界与最优解进行比较(305)。如果下界b大于目标函数F迄今为止的最优解,则停止对该节点的进一步处理,以有效地丢弃从栈中弹出的叶节点。
否则,通过将第一个未分配层站呼叫分配给可用轿厢之一并将所述分配推入(307)栈中,来生成(306)m个子节点。因为要处理的下一节点总是在栈S的顶部,所以该方法对应于深度优先的懒惰B&B策略。
在实际当中,根据距发起层站呼叫的楼层的距离按从头至尾的顺序将针对层站呼叫的轿厢分配进行排序,并按相反顺序将这些分配推入栈中,从而先处理位于栈顶部的更有希望的轿厢分配。
B&B处理的成功主要由如下两个因素实现(a)在优化处理中可以较早得到良好的解;和(b)确定各个分支节点的紧密界限的手段。紧密界限被定义为充分靠近被优化变量的最优值的(即,在该应用中被最小化的)下界。
通过使用用于直接策略的ESA-DP方法以及对最有希望的分配的深度优先评估来实现(a)。
对紧密界限的确定是不平凡的。确定部分解的下界b的一种方式是忽略未分配层站呼叫并应用ESA-DP处理。然而,该方法没有解决两个重要问题。各个层站呼叫都不可避免地被分配给轿厢之一,必须考虑由于该分配而导致的其他乘客的等待时间的增加。各个层站呼叫都可能将延迟引入随后服务的层站呼叫,在其等待时间的统计期望中必须考虑这一点。
通过mincWc(h|)(即,假设对同一轿厢没有分配其他层站呼叫,任意轿厢到达特定楼层所需的最小时间)可以总是使任意未分配层站呼叫h处于不利地位。然而,该界限不允许在没有显式枚举的情况下就丢弃大部分搜索树。这是基于Wc(h|Hc)≥Wc(h|)这一事实,其为更一般性不等式Wc(h|Q∪R)≥Wc(h|R)的特殊情况,其中集合Q包含未分配层站呼叫,而是空集。
用Hc来表示对轿厢c的已知分配的集合。可以将以上方法归纳为Wc(h|Hc)≥maxRWc(h|R),而R遍布层站呼叫的整个集合Hc。在实际当中,考虑所有子集是不可行的。取而代之,仅对|R|≤p的子集R预先确定Wc(h|R)。这里,p是一小整数,例如1、2或3,因为基数为p的所有可能子集的数量随着p指数地增长。现在可以通过下式确定由部分分配H=∪i=1mHi]]>导致的对呼叫h(hH)的惩罚P(h),P(h):=mincmaxR⊆Hc,|R|≤pWc(h|R)---(2)]]>层站呼叫的集合H∪Q的下界是F(H)+Σh∈QP(h),]]>其中,H的分配是已知的,而集合Q中的元素的分配是未知的。因为按具体顺序(h1,h2,...,hn),hi∈H来处理层站呼叫,所以通过省略在hi之后处理的hj(即,j≥i),可以进一步加速用于确定Wc(hi|R)的预处理过程。只要我们对hi的界限感兴趣,就仍然不将那些层站呼叫分配给具体轿厢从而无法用于确定P(hi)。因此,ESA-DP 210针对单个层站呼叫hi所需的调用的数量可以从 显著减少到 如果hi<chj,则将层站呼叫hj分配给轿厢之一不会影响层站呼叫hi。对于单个轿厢c,因为各个层站呼叫将延迟引入到优化处理中稍后处理的呼叫中,所以最好严格按<c所给出的顺序来处理层站呼叫,从而可成功地提高界限。然而,通常情况下,该顺序对于不同的轿厢是不同的,并且在下述实施例中是启发式地确定的。
因此,可用其下界∑h∈QP(h)来代替F(H)的确定。这既减少了确定界限所需的时间,也减小了下界的紧密性。结果,以更小的增量低效地删减了搜索空间。
如果忽略后面的乘客,则两个版本的B&B处理都会以这样的分配终止,该分配在所有可能的分配的集合之中具有最小期望AWT。然而,该方法的复杂性是显著的,并且对于中等大小的建筑会变得不可行。此外,该方法根据电梯系统中的传感器所提供的现实世界的“快照”而工作,随着时间经过或者系统改变,诸如新乘客抵达或者轿厢在它们以前可以停靠的特定楼层不再能够停靠,解的值减小。
下面将描述可用来代替将AWT直接最小化的不同代理标准(proxycriteria)。该代理标准通过对界限的增量计算,使得能够进行更高效的B&B过程。
没有考虑对各个层站呼叫的所有约束,而是通过限制分配给同一轿厢的p个最差层站呼叫的延迟,来故意忽略某些约束。在某种意义上,这是对用于确定Wc(h|)的常规最近轿厢启发的扩展。
用下式来代替对于给定分配H=Hi的等待时间的估计,Σc=1mΣh∈HcmaxmaxR⊆Hc,|R|≤pWc(h|R)]]>即,并不是在确定等待时间时考虑所有层站呼叫,而是使用有界基数的子集R。通常,该过程会低估等待时间,因而有望通过增加p而获得更好的结果。然而,该式的关键特征是可以在向下延伸B&B搜索树的同时增量地确定等待时间。这意味着针对搜索树中的较高节点而确定的等待时间可以用来确定较低节点的等待时间。
如图4中的伪代码所示,按照可将基数为P的层站呼叫的所有可能的子集R分为子集Si(i=1,...,n)的方式枚举(400)这些子集,以使Si仅包含由层站呼叫hi组成的子集R和已在hi之前处理过的层站呼叫的子集R’,即,|R’|≤p。从空集S0开始(401),依次处理各个层站呼叫(402)。对于各个层站呼叫,首先形成(403)在先前的迭代期间产生的所有集合Sj(j=1至i-1)的并集T。然后,对T中基数严格小于p的所有子集R’进行迭代(404),将新的层站呼叫hi加入(405)R’。
此外,为B&B搜索树中的每个节点维持一矩阵A。假定该节点的固定分配最初为Wc(h|),则该矩阵的元素Ac,h包含基数高至p的任何子集R所引起的对于分配给轿厢c的层站呼叫h的最大延迟。
每当通过将层站呼叫hi分配给轿厢之一而将新节点插入B&B搜索树中时,都确保了矩阵Ac,g对于c≠c(hi)保持不变。通过针对所有已分配层站呼叫g来确定max(Ac(h),g,maxR∈SiWc(h)(g|R))]]>可以只对矩阵的行c(hi)进行更新。在Ac(g),g中可以得到具有已知分配的各个层站呼叫g的界限,并且可以通过mincAc,h来确定未分配层站呼叫h的界限。虽然该方法也适用于上述定界过程,但是现在还能通过 来确定目标函数在叶节点处的值,在B&B处理期间可以省略对ESA-DP过程的调用。
然而,该预处理过程的计算复杂性随着p指数地增长,对于小的p,会显著低估剩余等待时间。
两两延迟最小化在本发明的另一实施例中,直接使分配给同一轿厢的层站呼叫之间的两两延迟之和最小化。用ΔWc(h|g)来表示分配层站呼叫g在层站呼叫h上所引入的延迟,即,ΔWc(h|g)=Wc(h|g)-Wc(h|)。现在得到目标函数 在该目标函数中,用和 替换了乘客表示的在将层站呼叫h分配给轿厢c的情况下由于Hc中的所有其他乘客也被分配给同一轿厢而要经历的真正等待Wc(h|Hc),该和由这些乘客中的每一个将会针对h而引起的个体两两延迟构成。
然而,该替换并不总是精确的,并且由于多种原因并不对应于等待时间的精确估计。当轿厢可以在分配给该轿厢的两个连续层站呼叫之间达到其最大速度时,这种替换总是精确的。在这种情况下,各个层站呼叫单独起作用,并且其联合延迟等于它们各自的延迟之和。
然而,更典型的是,轿厢无法在两个连续呼叫之间(例如,当这两个呼叫发起于两个相邻楼层时)达到其最大速度。在这种情况下,根据层站呼叫之间的位置和相互作用,G({H1,H2,...,Hm})要么是F({H1,H2,...,Hm})的高估要么是F({H1,H2,...,Hm})的低估,因而无法用作分支定界处理中所使用的严格下界。然而,在本发明的该实施例中,将G({H1,H2,...,Hm})直接用作要进行最小化的目标函数,下面描述如何有效地确定该目标函数的紧密下界。
此外,缩短了分支定界处理算法的实际运行时间。通过利用如下事实可以有效地预先确定值Wc(h|g)ΔWc(h|g)和ΔWc(g|h)中仅有一个是非零的。还可以在B&B处理期间增量地确定该目标函数并利用中间结果作为该目标函数的紧密下界。除了预处理过程之外,在B&B估计期间不需要对ESA-DP处理进行任何另外的调用。
为了确定目标函数(式(3)),针对搜索树的每个节点都保持一个矩阵W,该搜索树的根节点101用Wc(h|)进行了初始化。在优化处理的各个实例中,Wc,h包含Wc(h|)与迄今分配给轿厢c的所有层站呼叫的各自延迟之和。
因此,对于每个节点都可以从其父节点来扩展(propagate)矩阵W,并且在将层站呼叫分配给c(h)时,可以通过向各个元素Wc(h),g中添加ΔWc(h)(h|g)来更新所扩展的行Wc(h)。实质上,利用该步骤,在将层站呼叫分配给轿厢c时,解决了该层站呼叫将会对先前分配给同一轿厢的所有层站呼叫造成的延迟。
令H=P∪Q,P∩Q=为具有固定轿厢P的任意部分分配,Q中的元素是未知分配。可以定义 并且通过 来确定中间节点的下界以及目标函数在叶节点104处的值。
虽然已通过优选实施例的示例描述了本发明,但是应该理解,在本发明的精神和范围内可以进行各种其他改编和变型。因此,所附权利要求书的目的是要覆盖落入本发明的真正精神和范围内的所有这种变化和变型。
本发明与Nikovski等人于2006年3月27日与本申请同时提交的题为“System and Method for Scheduling Elevator Cars Using Branch-and-Bound”的第11/389,942号美国专利申请相关。
权利要求
1.一种对电梯系统的轿厢进行调度的方法,所述电梯系统包括轿厢的集合和层站呼叫的集合,该方法包括以下步骤如果各个层站呼叫是分配给各个轿厢的唯一层站呼叫,则对于各个轿厢独立地确定各个层站呼叫的等待时间;对于各个轿厢,确定各种可能的成对层站呼叫h和g的互延迟ΔW(h|g);对于各个轿厢,确定所述等待时间和所述互延迟的和;以及按照使所述和最小的方式将所述层站呼叫分配给所述轿厢的集合。
2.根据权利要求1所述的方法,其中,根据下式来确定所述和 其中c是m个轿厢之一,Hc是要分配给所述轿厢的集合的所述层站呼叫的集合,Wc(h|)是在层站呼叫h是分配给轿厢c的唯一层站呼叫的情况下层站呼叫h的等待时间,而 是层站呼叫g带给层站呼叫h的延迟。
3.根据权利要求2所述的方法,其中Wc(h|g)是预先确定的,因为ΔWc(h|g)和ΔWc(g|h)中仅有一个为非零。
4.根据权利要求1所述的方法,该方法还包括以下步骤用充当搜索树中的节点的解矢量来表示所述层站呼叫的集合对于所述轿厢的集合的各种可能的分配;利用初始最优解和所述搜索树对各个解矢量应用分支定界处理,以确定最小和。
5.根据权利要求4所述的方法,该方法还包括以下步骤利用充分靠近所述最小和的紧密界限,删减掉所述搜索树的大部分。
6.根据权利要求4所述的方法,其中,在搜索所述搜索树的同时增量地确定所述和。
全文摘要
本发明提供了使用两两延迟最小化来调度电梯轿厢的方法。提供了一种对电梯系统的轿厢进行调度的方法,该电梯系统包括轿厢的集合和层站呼叫的集合。如果各个层站呼叫是分配给各个轿厢的唯一层站呼叫,则对于各个轿厢独立地确定各个层站呼叫的等待时间。对于各个轿厢,确定各种可能成对的层站呼叫h和g的互延迟ΔW(h|g)。对所述等待时间和互延迟求和。然后,按照使所述和最小的方式对轿厢的集合进行分配。
文档编号B66B1/18GK101045509SQ20071009154
公开日2007年10月3日 申请日期2007年3月27日 优先权日2006年3月27日
发明者丹尼尔·N·尼科夫斯基, 马修·E·布兰德, 迪特马尔·埃布纳 申请人:三菱电机株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1