Abstract
The open shortest path first (OSPF) routing protocol is a well-known approach for routing packets from a source node to a destination node. The protocol assigns weights (or costs) to the links of a network. These weights are used to determine the shortest paths between all sources to all destination nodes. Assignment of these weights to the links is classified as an NP-hard problem. The aim behind the solution to the OSPF weight setting problem is to obtain optimized routing paths to enhance the utilization of the network. This paper formulates the above problem as a multi-objective optimization problem. The optimization metrics are maximum utilization, number of congested links, and number of unused links. These metrics are conflicting in nature, which motivates the use of fuzzy logic to be employed as a tool to aggregate these metrics into a scalar cost function. This scalar cost function is then optimized using a fuzzy particle swarm optimization (FPSO) algorithm developed in this paper. A modified variant of the proposed PSO, namely, fuzzy evolutionary PSO (FEPSO), is also developed. FEPSO incorporates the characteristics of the simulated evolution heuristic into FPSO. Experimentation is done using 12 test cases reported in literature. These test cases consist of 50 and 100 nodes, with the number of arcs ranging from 148 to 503. Empirical results have been obtained and analyzed for different values of FPSO parameters. Results also suggest that FEPSO outperformed FPSO in terms of quality of solution by achieving improvements between 7 and 31 %. Furthermore, comparison of FEPSO with various other algorithms such as Pareto-dominance PSO, weighted aggregation PSO, NSGA-II, simulated evolution, and simulated annealing algorithms revealed that FEPSO performed better than all of them by achieving best results for two or all three objectives.
Similar content being viewed by others
References
Coffman KG, Odlyzko AM (2001) Internet Growth: Is there a Moore’s Law for data Traffic? Handbook of Massive Data Sets, pp 47–93
Fortz B, Thorup M (2000) Internet traffic engineering by optimizing OSPF weights. IEEE Conference on Computer Communications(INFOCOM), pp 519–528
Kurose JF, Ross KW (2002) Computer Networking: A top-down approach featuring the internet prentice hall series
Bhagat NH (2013) A new hybrid approach to OSPF weight setting problem. Int J Recent Innov Trends Comput Commun 1(5):443–450
Bizri F, Sanso B (2008) Corouting: an IP hybrid routing approach. In: Fourth international conference on networking and services, pp 46–52
Kandula S, Katabi D, Davie B, Charny A (2005) Walking the tightrope responsive yet stable traffic engineering. In: ACM 2005 Conference on applications, technologies, architectures, and protocols for computer communications, pp 253–264
Dijkstra EW (1959) A node on two problems in connection of graphs. Numerical Mathematics
Fortz B, Thorup M (2000) Increasing internet capacity using local search. Technical Report IS-MG
Kling R, Banerjee P (1990) Optimization by simulated evolution with applications to standard cell placement. In: Proceedings of 27th Design Automation Conference, pp 20–25
Fortz B, Thorup M (2006) Optimizing OSPF/IS-IS weights in a changing world. IEEE J Sel Areas Commun 20(4):756–767
Sqalli MH, Sait SM, Mohiuddin MA (2006) An enhanced estimator to multi objective OSPF weight setting problem. Network Operations and Management Symposium, NOMS
Rodrigues M, Ramakrishnan KG (2002) Optimal routing in data networks. Bell Labs Tech J 6(1):117–138
Ericsson M, Resende MGC, Pardalos PM (2002) A Genetic Algorithm for the Weight Setting Problem in OSPF Routing. J. Combinatorial Optimisation conference
Zagozdzon M, Dzida M, Pioro M (2007) Traffic flow optimization in networks with combined OSPF/MPLS routing. In: IEEE 15Th international conference on advanced computing and communications, pp 131–137
Abo Ghazala A, El Sayed A (2009) Open Shortest Path First Weight Setting (OSPFWS) solving algorithms comparison and new method for updating weights. Int J Comput Sci Netw Secur 9(5):191–197
Parmar A, Ahmed S, Sokol J (2006) An integer programming approach to the OSPF weight setting problem NSF Technical Report no DMI-0457066
Srivastava S, Agarwal G, Medhi D, Pioro M (2005) Determining feasible link weight systems under various objectives for OSPF networks. IEEE Trans Netw Serv Manag 2(1)
Buriol L, Resende M, Rebeiro C, Thorup M (2002) TA Memetic algorithm for OSPF routing. In: 6Th INFORMS telecom, pp 187–188
Bley A (2005) On the approximability of the minimum congestion unsplittable shortest path routing problem. In: Integer programming and combinatorial optimization (IPCO 2005), lecture notes in computer science LNCS, pp 97–210
Bley A (2009) Approximability of unsplittable shortest path routing problems. Networks 54(1):23–46
Lin L, Gen M (2009) Priority-Based Genetic Algorithm for Shortest Path Routing Problem in OSPF. Intell Evol Syst, Stud in Comput Intell 187:91–104
Pioro M, Szentsi A, Harmatos J, Juttner A, Gajownicczek P, Kozdrowski S (2002) On open shortest path first related network optimization problems. Perform Eval 48(4):201–223
Retvari G, Cinkler T (2004) Practical ospf traffic engineering. IEEE Commun Lett 8:689–691
Retvari G, Biro J, Cinkler T (2006) On improving the accuracy of OSPF traffic engineering. In: NETWORKING 2006, Lecture notes in computer science (LNCS), vol 3976, pp 51–62
Nucci A, Bhattacharyya S, Taft N, Diot C (2007) Igp link weight assignment for operational tier-1 backbones. IEEE/ACM Trans Networking 15(4):789–802
Shrimali G, Akella A, Mutapcic A (2010) Cooperative interdomain traffic engineering using nash bargaining and decomposition. IEEE/ACM Trans Networking 18(2):341–352
Riedl A (2003) Optimized routing adaptation in IP networks utilizing OSPF and MPLS. In: IEEE International conference on communications, pp 1754–1758
Lee S, Po-Kai T, Chen A (2012) Link weight assignment and loop-free routing table update for link state routing protocols in energy-aware internet. Futur Gener Comput Syst 28:437–445
Fortz B, Rexford J, Thorup M (2002) Traffic engineering with tradional IP routing protocols. IEEE Commun Mag:118–124
Glover F, Laguna M (1997) Tabu search. Kluwer Academic Publishers
Frigioni D, loffreda M, Nanni U, Pasqualone G (1998) Experimental analysis of dynamic algorithms for the single source shortest paths problem. ACM journal of experimental algorithms
Ramalingam G, Reps T (1996) An incremental algorithm for a generalization of the shortest path problem. Journal of Algorithms, 267–305
Fortz B Combinatorial Optimization and Telecommunications. http://www.poms.ucl.ac.be/staff/bf/en/COCom-5.pdf
Holland JH (1975) Adaptation in natural and artificial systems. University of Michigan Press, Ann Arbor
Abo Ghazala A, El Sayed A, Mousa M (2008) A survey for open shortest path first weight setting (OSPFWS) problem. The 2nd International Conference on Information Security and Assurance (ISA2008), pp 24–26
Reis R, Ritt M, Buriol L, Resende M (2007) A memetic algorithm for the weight setting problem in DEFT. In: COMCEV 2007, pp 1–6
Abo Ghazala A, El Sayed A, Mousa M (2008) A new approach for open shortest path weight setting (OSPFWS) problem. Convergence and Hybrid Information Technology, pp 188–193
Sait SM, Sqalli MH, Mohiuddin MA (2006) Engineering evolutionary algorithm to solve multi objective OSPF weight setting problem. Australian Conference on Artificial Intelligence, pp 950–955
Laarhoven P, Aarts E (1987) Simulated Annealing: Theory and applications. Kluwer, Norwell
Kling R, Banerjee P (1991) Empirical and theoretical studies of the simulated evolution method applied to standard cell placement. IEEE Trans Comput-Aided Design 10(10):1303–1315
Houssaini Sqalli M, Mohammed Sait S, Asadullah S (2008) Minimizing the number of congested links in OSPF routing. ATNAC
Mohiuddin M, Khan SA, Engelbrecht AP (2014) Simulated evolution and simulated annealing algorithms for solving multi-objective open shortest path first weight setting problem. Appl Intell, Springer 40(3):1–20
Zadeh LA (1965) Fuzzy sets. Inf Control 8:338–353
Zadeh LA (1975) The Concept of a Linguistic Variable and its Application to Approximate Reasoning. Inf Sci 8:199–249
Zadeh LA (1973) Outline of a new approach to the analysis of complex systems and decision processes. IEEE Trans Syst Man Cybern 3(1):28–44
Li H, Yen V (1995) Fuzzy sets and fuzzy decision-making. CRC Press, USA
Hamacher H (1978) Ueber Logische Verknupfungen Unschalfer Aussagen und deren Zugehoerige Bewertungs-funktione. Prog Cybern Syst Res 3:276–288
Frank M (1979) On the simultaneous associativity of F(x,y) and x + y−F(x,y). Aequationes Math 19:194–226
Weber S (1983) A general concept of fuzzy connectives, negations and implications based on t-Norms and t-Conorms. Fuzzy Sets & Systems 11:115–134
Dubois D, Prade H (1979) Operations in fuzzy-valued logic. Inf Control 43:224–240
Khan SA, Engelbrecht AP (2007) A new fuzzy operator and its application to topology design of distributed local area networks. Inf Sci 177(12):2692–2711
Kennedy J, Eberhart RC (1995) Particle swarm optimization. Proceedings of the IEEE International Conference on Neural Networks, pp 1942–1948
Kling R, Banerjee P (1991) Empirical and theoretical studies of the simulated evolution method applied to standard cell placement. IEEE Transactions on Computer-Aided Design, pp 1303–1305
Kling R, ESP P. Banerjee. (1989) Placement by simulated evolution. IEEE Transactions on Computer-Aided Design, pp 245–255
Zegura EW (1996) GT-ITM: Georgia Tech Internetwork Topology Models (software). http://www.cc.gatech.edu/faq/Ellen.Zegura/gt-itm/gt-itm.tar.gz
Calvert K, Doar M, Zegura EW (1997) Modeling internet toplogy. IEEE Commun Mag 35:160–163
Zegura EW, Calvert KL, bhattacharjee S (1996) How to model an internetwork. 15th IEE Conference on Computer Communications (INFOCOM), pp 594–602
van den Bergh F (2001) An analysis of particle swarm optimizers. PhD Thesis, University of Pretoria
Khan SA, Engelbrecht AP (2012) A fuzzy particle swarm optimization algorithm for computer communication network topology design. Appl Intell 36:161–177
Cho H, Wang B, Roychowdhury S (1998) Automatic rule generation for fuzzy controllers using genetic algorithms a study on representation scheme and mutation rate. In: IEEE World congress on computational intelligence, pp 1290–1295
Haupt R (2000) Optimum population size and mutation rate for a simple real genetic algorithm that optimizes array factors. In: IEEE Antennas and propagation society international symposium, pp 1034–1037
Lim M, Rahardja S, Gwee B (1996) A GA paradigm for learning fuzzy rules. Fuzzy Sets Syst 82:177–186
Liska J, Melsheimer SS (1994) Complete design of fuzzy login system using genetic algorithms. In: 3Rd IEEE international conference on fuzzy systems, pp 1377– 1382
Alvarez-Benitez J, Everson R, Fieldsend J (2005) A MOPSO Algorithm Based Exclusively on Pareto Dominance Concepts. In: 3rd International Conference on Evolutionary Multi-criterion Optimization, Lecture Notes in Computer Science (LNCS), vol 3410, pp 459–473
Parsopoulos K, Vrahatis M (2002) Particle swarm optimization method in multiobjective problems. In: ACM Symposium on applied computing, pp 603–607
Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans Evol Comput 6(2):182–197
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
The authors declare that they have no conflict of interest. This article does not contain any studies with human participants or animals performed by any of the authors. Informed consent was obtained from all individual participants included in the study.
Appendices
Appendix A
1.1 Nomenclature
- G :
-
Graph
- N :
-
Set of nodes
- n :
-
A single element in set N
- A :
-
Set of arcs
- A t :
-
Set of arcs representing shortest paths from all sources to destination node t
- a :
-
A single element in set A. It can also be represented as (i,j)
- s :
-
Source node
- v :
-
Intermediate node
- t :
-
Destination node
- D :
-
Demand matrix
- D :
-
[s,t] An element in the demand matrix that specifies the demand from source node s to destination node t; It can also be specified as d s t
- w i j :
-
Weight on arc (i,j); if a=(i,j), then it can also be represented as w a
- c i j :
-
Capacity on arc (i,j); if a=(i,j), then it can also be represented as c a
- Φ:
-
Cost function
- Φ i,j :
-
Cost associated with arc (i,j); if a=(i,j), then it can also be represented as Φ a
- \({\delta _{u}^{t}}\) :
-
Outdegree of node u when destination node is t
- δ +(u):
-
Outdegree of node u
- δ −(u):
-
Indegree of node u
- \({l_{a}^{t}}\) :
-
Load on arc a when destination node is t
- l a :
-
Total traffic load on arc a
- \(f^{(s,t)}_{a}\) :
-
Traffic flow from node s to t over arc a
- S e t C A :
-
Set of congested arcs
Terminology
-
1.
A single element in the set N is called a “Node”. It is represented as n.
-
2.
A single element in the set A is called an “Arc” or “Link”. It is represented as a.
-
3.
A set G=(N,A) is a graph defined as a finite nonempty set N of nodes and a collection A of pairs of distinct nodes from N.
-
4.
A “directed graph” or “digraph” G=(N,A) is a finite nonempty set N of nodes and a collection A of ordered pairs of distinct nodes from N; each ordered pair of nodes in A is called a “directed arc”.
-
5.
A digraph is “strongly connected” if for each pair of nodes i and j there is a directed path (i = n 1,n 2,...,n l = j) from i to j. A given graph G must be strongly connected for this problem.
-
6.
A “demand matrix” is a matrix that specifies the traffic flow between s and t, for each pair (s,t)∈N×N.
-
7.
(n 1,n 2,...,n l ) is a “directed walk” in a digraph G if (n i ,n i+1) is a directed arc in G for 1≤i≤l−1.
-
8.
A “directed path” is a directed walk with no repeated nodes.
-
9.
Given any directed path p=(i,j,k,...,l,m), the “length” of p is defined as w i j + w j k +... + w l m .
-
10.
The “outdegree” of a node u is a set of arcs leaving node u i.e., {(u,v):(u,v)∈A}.
-
11.
The “indegree” of a node u is a set of arcs entering node u i.e., {(v,u):(v,u)∈A}.
-
12.
The input to the problem will be a graph G, a demand matrix D, and capacities of each arc.
-
13.
The term MU refers to the maximum utilization. It is the highest load/capacity ratio of the network.
-
14.
The term NOC refers to the number of congested links.
-
15.
The term NUL refers to the number of unused links.
-
16.
The term E refers to the total number of links in the network.
Appendix B
Tables 14 to 25 provide the quality of solutions obtained with respect to the associated swarm size for all test cases. Column 1 represents the number of particles in the swarm. Column 2 represents the average overall goodness using the UAO operator. Column 3 represents the percentage difference between the average overall goodness of the corresponding number of particles and the highest average overall goodness (given in asterisk) of the solutions. Note that the swarm size resulting in the highest average overall goodness is taken as the reference, and the difference for other swarm sizes is calculated with respect to the reference value. The differences were also statistically tested using Wilcoxon’s rank sum test.
Rights and permissions
About this article
Cite this article
Mohiuddin, M.A., Khan, S.A. & Engelbrecht, A.P. Fuzzy particle swarm optimization algorithms for the open shortest path first weight setting problem. Appl Intell 45, 598–621 (2016). https://doi.org/10.1007/s10489-016-0776-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10489-016-0776-0