CN109120534B - 一种求解多商品流最大并发流的流偏差方法 - Google Patents
一种求解多商品流最大并发流的流偏差方法 Download PDFInfo
- Publication number
- CN109120534B CN109120534B CN201810965570.2A CN201810965570A CN109120534B CN 109120534 B CN109120534 B CN 109120534B CN 201810965570 A CN201810965570 A CN 201810965570A CN 109120534 B CN109120534 B CN 109120534B
- Authority
- CN
- China
- Prior art keywords
- flow
- commodity
- cost
- iteration
- stream
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种求解多商品流最大并发流的流偏差算法,属于多商品流问题及通信网络路由技术领域。核心思想是先以较大的步长进行迭代,在接近最优解时,采用慢速迭代来保证算法精确度。包括:1)建立问题模型;2)初始化问题模型;3)初始化多商品流变量2和3、快速迭代指示变量、多商品流流量及内循环迭代次数;4)均分平衡已有的多商品流流量,包括A)求解最小代价流及生成多商品流;B)求解平衡后的多商品流;C)多商品流的均衡度满足退出条件跳至5)否则跳A);5).判断是否已得到满足精度要求的解,若是结束本算法,否则跳至3)。本发明能在不损失计算精度条件下,显著降低运算复杂度,快速得到满足要求的路由。
Description
技术领域
本发明涉及一种求解多商品流最大并发流的流偏差算法,属于多商品流问题及通信网络路由技术领域。
背景技术
通信网络中的路由问题属于多商品流问题,多商品流问题处于连续优化和组合优化问题的边界上,所以可以借用两边的理论和算法,它也引出了很多重要的算法,著名的Dantzig-Wolfe分解算法最初就是为了求解多商品流问题而设计的。大多数连续多商品流问题的求解时把它们表达为大规模的线性或者非线性问题,如果多商品流问题没有整数约束条件,这就意味着带宽可以无限精度地分割,那么可以通过线性规划用多项式时间复杂度来得到解决,或者采用更快的近似算法。而一旦加上了整数约束,则数据流的速率是固定的某几个速率或者它们的倍数,那么多商品流问题就是一个NP-Complete问题,即使商品数目仅仅为2。因此整数多商品流问题的精确全局优化解只适用于几十个节点的较小规模网络,更大规模的情况需要寻找近似算法来解决。
多商品流问题中复杂度高的是多商品流并发流问题,它比多商品最小代价流多了一个公平性的约束条件,其对偶问题是稀疏割。多商品最大并发流的边- 路径形式的问题可以使用特殊网络结构的技术的线性规划来求解。然而由于计算复杂度的限制,使用单纯性法进行线性规划求解通常限于不超过30个节点的小规模网络,所以大多使用近似解法。这些近似解法都是基于拉格朗日松弛和线性规划分解技术,通过多次迭代后给定任意小的∈,算法可以至少达到最大值精确解的1-∈倍。
Flow deviation算法最初由Fratta,Gerla和Kleinrock在1971年提出,其目的是解决在电子通信中出现的寻找多商品流路径问题,也就是最大并发流问题。该算法采用迭代的方式逐步增加网络流量,而采取一个障碍函数防止流量超出链路容量。该算法在通信网络领域得到了广泛的应用。
发明内容
本发明的目的针对现有求解多商品流最大并发流问题复杂度较高的技术缺陷,提出了一种求解多商品流最大并发流的流偏差算法。
本发明的核心思想是:先以较大的步长进行迭代,在接近最优解时,采用慢速迭代来保证算法的精确度。
一种求解多商品流最大并发流的流偏差算法,包括如下步骤:
步骤一、建立本流偏差算法针对的问题模型;
问题模型基于图G,该图G有n个节点,m条边,第e条边对应容量ue;
其中,e的变化范围为1到m;
给定k种商品,其中第j种商品对应一个源节点sj,一个目的节点tj和一个需求量dj,1≤j≤k;
其中,需求量dj的含义是dj单位流量;
令Pj表示从sj到tj的所有路径集合,Pe,j表示Pj中包含边e的那一部分路径;
问题模型为(1)所示的线性问题:
其中,γ为非负的实数值,表示从sj到tj路径上通过γdj的流量;Γ*为要求得的γ的最大值;xp是路径p对应的流量;
通过给定∈>0,∈-近似解是指求得一个γ,使得γ≥(1-∈)Γ*;
对于一个流x,如果存在一个非负的γ能满足公式(1)中优化问题的限制条件,则称这个流x是可行的,具体为:
对于给定的流x,x的负载表示为(2):
λ(x)=maxλe(x) (2)
其中,“流x是可行的”限制条件为当且仅当λ(x)≤1;
公式(2)中,λe(x)表示流x在边e上的负载,表达式为(3):
步骤二、对步骤一建立的问题模型进行初始化,具体包括如下子步骤:
步骤2.2初始化多商品流最短路径,并将所有多商品流最短路径合并为矩阵;
初始化从sj到tj运输dj单位流量的最短路径,记为zj,并遍历j;
其中,j的取值范围为1≤j≤k,令z表示多商品流最短路径组成的矩阵,
则z=(z1,z2,…,zk);
步骤2.3初始化多商品流变量1及外循环迭代次数;
步骤三 初始化多商品流变量2、快速迭代指示变量、初始化多商品流变量 3、初始化多商品流流量及内循环迭代次数;
其中,记多商品流变量2为yt;其中,t是外循环迭代次数;
其中,记多商品流变量3为vt,令v0=yt;记多商品流流量为γ=γ(yt),即将以上计算输出的yt替换公式(1)中的x求得的γ值;记内循环迭代次数为h,并初始化h=0;
步骤四、均分平衡已有的多商品流流量,具体是顺序执行步骤A、步骤B以及步骤C的循环:
步骤A求解最小代价流并表示为多商品流;
对于1≤j≤k,考虑每条边e的容量是ue的情况下从sj到tj发送γdj单位流量的最小代价流,并表示为wh,j;如果cost_relax=true,边e的代价为否则边e的代价为再基于边代价求最小代价流;
其中,最小代价流的求解方式参见文献1:R.K.Ahuja,T.L.Magnanti,andJ.B.Orlin.Network flows:theory,algorithms,and applications. Prentice Hall,1993.第321页中的Successive shortest path algorithm;
最小代价流求解如下:
(1)对于网络中所有节点i,令节点势能πi=0,并令ei=bi,其中ei表示节点不平衡量,b(i)表示需求量;
(2)初始化集合E={i:e(i)>0},D={i:e(i)<0},分别表示流量的出入节点集合;
(3)当集合E不为空时,执行以下循环:
a)从E中任意选择节点k,D中任意选择节点l;
c)令P表示从k到l的最短路径;
d)对网络中所有节点i,更新势能πi=πi-dki,其中dki表示k到i的最短距离;
e)令δ=min[e(k),-e(l),min{rij:i,j∈P}],其中rij表示i到j的链路容量;
f)沿路径P增广δ单位流量;
g)更新网络需求、链路容量、E、D;
当E为空循环退出时,得到的流量即为最小代价流。
其中,文献1中b(i)表示节点i的需求量,对应到本专利中b(sj)=γdj,b(tj)= -γdj,其他b(i)=0;求得的最短路径为x,对应本专利中的wh,j;
在将所有最小代价流合并为向量,称为多商品流,记为wh,wh= (wh,1,…,wh,k);
步骤B求解平衡后的多商品流;
具体求解如下(4)关于σh的凸优化问题:
步骤C判断多商品流的均衡度是否满足退出条件,若满足跳至步骤4,否则跳至步骤A;
若满足此公式(5):则令t=t+1,xt=vh,退出此步骤A到步骤C的循环,跳至步骤五,否则令h=h+1,跳至步骤A;
步骤五、判断是否已经得到满足精度条件以及快速迭代指示是否满足,并进行相应操作,具体为:
5.2若即满足精度条件,再继续判断快速迭代指示是否真,若是,即cost_relax=true,则令cost_relax=false,并跳回步骤三;否则如果并且cost_relax=false结束本算法。
有益效果
一种求解多商品流最大并发流的流偏差算法,与现有技术相比,具有如下有益效果:
本发明所述方法能够在不损失计算精度的条件下,显著降低运算复杂度,快速得到满足要求的路由方案。
附图说明
图1是本发明一种求解多商品流最大并发流的流偏差算法的流程图;
图2是本发明一种求解多商品流最大并发流的流偏差算法具体实施时一个包含26个节点的网络示意图。
具体实施方式
下面结合附图及实施例对本发明所述的一种求解多商品流最大并发流的流偏差算法进行详细说明。
实施例1
本实施例描述了本发明所述方法的流程图,如图1所示。
从图1可以看出,本发明所述方法包含的步骤如下:
步骤I,计算初始多商品流z及x0;
步骤II,计算yt,并令cost_relax=true;
步骤III,解k组最小代价流,并组合得到多商品流;
步骤IV,解凸优化问题得到平衡后的流;
步骤VII,判断cost_relax=false是否成立,如果不成立则令cost_relax=false并跳转至步骤III,成立则算法结束。
考虑如图2所示的网络,该图共包含26个节点,104条边,且每条边的容量均为10。若网络需求为1-13节点分别向2-26节点发送1单位流量,下面给出算法运行输出:
gamma=5.000000耗时0.062500秒
gamma=7.500000耗时2.234375秒
gamma=13.615176耗时2.984375秒
gamma=18.222461耗时3.859375秒
gamma=22.117598耗时4.812500秒
gamma=25.098976耗时5.765625秒
gamma=27.490944耗时6.781250秒
gamma=29.228872耗时8.843750秒
gamma=30.355396耗时11.781250秒
gamma=31.149798耗时20.921875秒
该算法求解用时20秒,得到的γ为31.14。作为对比,同普通方法求解,同样运行环境下用时110秒,得到的γ为30.73。由此可见,本发明在不损失运算精度的条件下,能够显著提升运算速率。
以上所述为本发明的较佳实施例而已,本发明不应该局限于该实施例和附图所公开的内容。凡是不脱离本发明所公开的精神下完成的等效或修改,都落入本发明保护的范围。
Claims (1)
1.一种求解多商品流最大并发流的流偏差方法,其特征在于:核心思想是:先以较大的步长进行迭代,在接近最优解时,采用慢速迭代来保证算法的精确度;包括如下步骤:
步骤一、建立本流偏差算法针对的问题模型;
问题模型基于图G,该图G有n个节点,m条边,第e条边对应容量ue;
其中,e的变化范围为1到m;
给定k种商品,其中第j种商品对应一个源节点sj,一个目的节点tj和一个需求量dj,1≤j≤k;
其中,需求量dj的含义是dj单位流量;
令Pj表示从sj到tj的所有路径集合,Pe,j表示Pj中包含边e的那一部分路径;
问题模型为(1)所示的线性问题:
其中,γ为非负的实数值,表示从sj到tj路径上通过γdj的流量;Γ*为要求得的γ的最大值;xp是路径p对应的流量;
通过给定∈>0,∈-近似解是指求得一个γ,使得γ≥(1-∈)Γ*;
对于一个流x,如果存在一个非负的γ能满足公式(1)中优化问题的限制条件,则称这个流x是可行的,具体为:
对于给定的流x,x的负载表示为(2):
λ(x)=max λe(x) (2)
其中,“流x是可行的”限制条件为当且仅当λ(x)≤1;
公式(2)中,λe(x)表示流x在边e上的负载,表达式为(3):
步骤二、对步骤一建立的问题模型进行初始化,具体包括如下子步骤:
步骤2.2初始化多商品流最短路径,并将所有多商品流最短路径合并为矩阵;
初始化从sj到tj运输dj单位流量的最短路径,记为zj,并遍历j;
其中,j的取值范围为1≤j≤k,令z表示多商品流最短路径组成的矩阵,则z=(z1,z2,…,zk);
步骤2.3初始化多商品流变量1及外循环迭代次数;
步骤三 初始化多商品流变量2、快速迭代指示变量、初始化多商品流变量3、初始化多商品流流量及内循环迭代次数;
其中,记多商品流变量2为yt;其中,t是外循环迭代次数;
其中,记多商品流变量3为vt,令v0=yt;记多商品流流量为γ=γ(yt),即将以上计算输出的yt替换公式(1)中的x求得的γ值;记内循环迭代次数为h,并初始化h=0;
步骤四、均分平衡已有的多商品流流量,具体是顺序执行步骤A、步骤B以及步骤C的循环:
步骤A求解最小代价流并表示为多商品流;
对于1≤j≤k,考虑每条边e的容量是ue的情况下从sj到tj发送γdj单位流量的最小代价流,并表示为wh,j;如果cost_relax=true,边e的代价为否则边e的代价为再基于边代价求最小代价流;
最小代价流求解如下:
(1)对于网络中所有节点i,令节点势能πi=0,并令ei=bi,其中ei表示节点不平衡量,b(i)表示需求量;
(2)初始化集合E={i:e(i)>0},D={i:e(i)<0},分别表示流量的出入节点集合;
(3)当集合E不为空时,执行以下循环:
a)从E中任意选择节点k,D中任意选择节点l;
c)令P表示从k到l的最短路径;
d)对网络中所有节点i,更新势能πi=πi-dki,其中dki表示k到i的最短距离;
e)令δ=min[e(k),-e(l),min{rij:i,j∈P}],其中rij表示i到j的链路容量;
f)沿路径P增广δ单位流量;
g)更新网络需求、链路容量、E、D;
当E为空循环退出时,得到的流量即为最小代价流。
其中,b(i)表示节点i的需求量,对应到本专利中b(sj)=γdj,b(tj)=-γdj,其他b(i)=0;求得的最短路径为x,对应本专利中的wh,j;
在将所有最小代价流合并为向量,称为多商品流,记为wh,wh=(wh,1,…,wh,k);
步骤B求解平衡后的多商品流;
具体求解如下(4)关于σh的凸优化问题:
步骤C判断多商品流的均衡度是否满足退出条件,若满足跳至步骤4,否则跳至步骤A;
若满足此公式(5):则令t=t+1,xt=vh,退出此步骤A到步骤C的循环,跳至步骤五,否则令h=h+1,跳至步骤A;
步骤五、判断是否已经得到满足精度条件以及快速迭代指示是否满足,并进行相应操作,具体为:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810965570.2A CN109120534B (zh) | 2018-08-23 | 2018-08-23 | 一种求解多商品流最大并发流的流偏差方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810965570.2A CN109120534B (zh) | 2018-08-23 | 2018-08-23 | 一种求解多商品流最大并发流的流偏差方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109120534A CN109120534A (zh) | 2019-01-01 |
CN109120534B true CN109120534B (zh) | 2020-07-28 |
Family
ID=64860776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810965570.2A Active CN109120534B (zh) | 2018-08-23 | 2018-08-23 | 一种求解多商品流最大并发流的流偏差方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109120534B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1035751A2 (en) * | 1999-03-11 | 2000-09-13 | Lucent Technologies Inc. | Adaptive routing system and method for Qos packet networks |
CN101512979A (zh) * | 2006-10-16 | 2009-08-19 | 华为技术有限公司 | 支持大规模并发路径计算的路径计算单元协议系统 |
CN103619047A (zh) * | 2013-12-04 | 2014-03-05 | 湖南大学 | 一种多并发流无线网状网中的机会路由方法 |
CN105873096A (zh) * | 2016-03-24 | 2016-08-17 | 重庆邮电大学 | 一种多路径并行传输系统有效吞吐量的优化方法 |
CN105933232A (zh) * | 2016-03-29 | 2016-09-07 | 东北大学 | 支持多业务数据传输需求的多径传输控制终端及方法 |
-
2018
- 2018-08-23 CN CN201810965570.2A patent/CN109120534B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1035751A2 (en) * | 1999-03-11 | 2000-09-13 | Lucent Technologies Inc. | Adaptive routing system and method for Qos packet networks |
CN101512979A (zh) * | 2006-10-16 | 2009-08-19 | 华为技术有限公司 | 支持大规模并发路径计算的路径计算单元协议系统 |
CN103619047A (zh) * | 2013-12-04 | 2014-03-05 | 湖南大学 | 一种多并发流无线网状网中的机会路由方法 |
CN105873096A (zh) * | 2016-03-24 | 2016-08-17 | 重庆邮电大学 | 一种多路径并行传输系统有效吞吐量的优化方法 |
CN105933232A (zh) * | 2016-03-29 | 2016-09-07 | 东北大学 | 支持多业务数据传输需求的多径传输控制终端及方法 |
Non-Patent Citations (2)
Title |
---|
"Asymptotic analysis of the flow deviation method for the maximum concurrent flow problem";Daniel Bienstock,等;《Mathematical Programming volume 91》;20140420;全文 * |
"基于SDN的网络流量控制模型设计与研究";赵笑楠;《中国优秀硕士学位论文全文数据库 信息科技辑 2015年第10期》;20151015;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109120534A (zh) | 2019-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Deng et al. | A novel two-stage hybrid swarm intelligence optimization algorithm and application | |
Contreras et al. | Branch and price for large-scale capacitated hub location problems with single assignment | |
Geyer et al. | DeepTMA: Predicting effective contention models for network calculus using graph neural networks | |
Cohen et al. | Following the perturbed leader for online structured learning | |
Skolik et al. | Equivariant quantum circuits for learning on weighted graphs | |
Kappmeier | Generalizations of flows over time with applications in evacuation optimization | |
Aleman et al. | A tabu search with vocabulary building approach for the vehicle routing problem with split demands | |
Knippel et al. | The multi-layered network design problem | |
Chen et al. | Efficient robust routing for single commodity network flows | |
Ginsburg et al. | Large batch training of convolutional networks with layer-wise adaptive rate scaling | |
Nannicini et al. | Shortest paths on dynamic graphs | |
Monteiro et al. | Concave minimum cost network flow problems solved with a colony of ants | |
Solano-Charris et al. | A robust optimization approach for the vehicle routing problem with uncertain travel cost | |
CN109120534B (zh) | 一种求解多商品流最大并发流的流偏差方法 | |
Casadesus-Vila et al. | Toward autonomous cooperation in heterogeneous nanosatellite constellations using dynamic graph neural networks | |
Wagner et al. | Drawing Graphs to Speed Up Shortest-Path Computations. | |
Casteigts et al. | On the feasibility of maintenance algorithms in dynamic graphs | |
Huang et al. | A primal decomposition approach to globally coupled aggregative optimization over networks | |
Chopra et al. | On socially optimal traffic flow in the presence of random users | |
Deng et al. | Exact algorithms for finding partial edge-disjoint paths | |
Okengwu et al. | Modified Dijkstra algorithm with invention hierarchies applied to a conic graph | |
Raayatpanah et al. | Optimal-constrained multicast sub-graph over coded packet networks | |
Mohemmed et al. | A new particle swarm optimization based algorithm for solving shortest-paths tree problem | |
Mattila | The distance-constrained generalized vehicle routing problem | |
Kanoh et al. | Pheromone trail initialization with local optimal solutions in ant colony optimization |
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 |