Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Amani D.Saad
Student I.D. No.20121061
Supervisor
Dr. Salman A.Khan
Co-Supervisor
Dr. Amjad Mahmood
9 May 2014
Contents
1 Statement of the problem
4 Literature Review
4.1 Network topology design using iterative algorithms . . . . . . . . . . .
4.2 Artificial Bee Colony Optimization . . . . . . . . . . . . . . . . . . . .
5
5
5
5 Theoretical Framework
5.1 Contributions of the thesis . . . . . . . . . . . . . . . . . . . . . . . . .
6
8
6 Methodology
an organization might be concerned mostly about the financial cost, while for the user,
network delay might be a more important issue. Likewise, a network administrators
major concerns might be reliability and availability along with link utilization.
Due to its sheer complexity, the network topology design, with its numerous variants, has been traditionally solved with artificial intelligence techniques. More specifically, nature-inspired and other metaheuristics have been extensively used for this
purpose. Popular algorithms used in the domain include genetic algorithms, particle
swarm optimization, ant colony optimization algorithms, simulated annealing, tabu
search, among many others. Further details are provided in the following sections.
in a very constrained search space. Attempts have been made to efficiently solve
the variants of network topology design problem using iterative algorithms such as
genetic algorithms, particle swarm optimization, simulated annealing, tabu search, ant
colony optimization, and simulated evolution. However, there are still a list of recent
optimization algorithms whose effectiveness levels have yet to be explored, specially in
the context of multi-objective network topology design. One such algorithm is artificial
bee colony optimization algorithm which has been applied to a number of optimization
problems, but is yet to be applied to network topology design problem considered
herein.
The artificial bee colony (ABC) algorithm is a swarm based metaheuristic [7]. Inspired by the artificial behavior of honey bees, the algorithm was first proposed as a
global optimization algorithm to solve continuous numerical problems [8, 9]. In order
to be simulated as a distributed problem solving system, the algorithm has been modularized in such a way that the basic model of this algorithm would be consisting of
two components [711]. First, agents (employed and unemployed bees) searching for
the best problem solutions, and the food sources which serve as the second component of this algorithm. Agents are bees recruited by the mother bee hive, and can be
functionally classified into two major groups: employed agents and unemployed agents.
Employed agents are recruited to utilize a specific food source. Unemployed agents are
extendedly classified into two groups, unemployed on-lookers that are waiting in the
hive, with their duty being summarized as information sharing channels, and unemployed scouts which are searching globally around the hive for new food sources. The
second component, the food source, represents a possible solution for the problem being
considered. The amount and/or richness of nectar in that source implicitly expresses
the feasibility and quality. With high richness being preferable, a fitness function can
be defined to filter the proposed paths for new food sources in such a way that the
ones with the lower values would be neglected. However, a food source is also affected
by its path availability and ease of extraction [8]. The process of exploitation and/or
exploration of local and global food sources respectively are governed by the decision
of the colony [12].
Apart from the fact that ABC has not been applied to the network topology design
problem as yet, another strong reason to consider ABC for the proposed work is the fact
that the algorithm completely fulfils the requirement of being a strong swarm-based
optimization algorithm. Generally, two viewpoints exist about being a strong swarmbased algorithm (and for that sake, any iterative optimization algorithm in general).
One viewpoint is by Millonas [13] who defined five principles of proximity, quality,
diversity, stability, and adaptability that should be proven for any swarm to maintain
an intelligent behavior. Although the ABC algorithm showed an explicit adherence
to these principles, it was only recently applied to real world problems [10]. The
second viewpoint is by Bonabeau, who interpreted the two concepts of self- organization
and division of labor as a fundamental key features for any algorithm to obtain the
intelligent swarm behavior [14, 15], and ABC elaborates on these features to obtain
swarm intelligence [8, 10, 11].
Literature Review
Since the proposed work focuses on the enterprise network (a type of local area network) topology design using iterative algorithms, as well as the bee colony optimization
algorithm, the literature review encompasses both aspects.
4.1
Network topology design problem has received much attention through years. Researchers and network engineers extensively tried to define the best possible representation of a network topology. As a complex optimization problem, network topology
optimization has been classified as an NP-hard problem. Several approaches have been
proposed to address this problem. For example, use of genetic algorithm has been
reported in many studies focussing on local area network topology design [1624]. Simulated annealing has also been used extensively in the network design domain [2532].
Other than this, there are little applications of various other iterative algorithms such as
ant colony optimization, particle swarm optimization, simulated evolution, stochastic
evolution etc. to the local area network topology design problem [3337]. No application of ABC has been reported in literature as far as network topology design is
concerned.
4.2
Karaboga 2005 was the first who proposed the Artificial Bee Colony algorithm, simulating original natural behavior of honey bees colony system. The algorithm was deployed
to optimize continuous numerical problems [8]. The algorithm was earlier modelled by
Tereshko and Loengarov in which a system was developed by considering the foraging
behavior of bees for environmental information gathering and adjusting behaviors accordingly [12]. Gaining the promising results the algorithm has received an increasing
attention from researchers all over the world. Basturk and Karaboga published several
research papers on ABC [10, 11, 38]. According to [11] published in 2012, investigation
from analytical perspective showed that the studies performed on ABC algorithm were
categorized into three main directions. The first direction focused on performance
comparison of ABC with other well-known evolutionary algorithms such as Genetic
algorithms, particle swarm optimization, and ant colony optimization [3941]. Successive and intensive comparative studies were followed revealing the efficient application
of this algorithm to address almost all the addressed problem domains [42]. The second aspect focused on hybridization and modified versions of the algorithm [43, 44].
The third dimension focussed on applications in various disciplines such as in neural
networks, industrial engineering, electrical engineering, mechanical engineering, electronic engineering, civil engineering image processing, software engineering, control
Engineering, data mining, and sensor networks [11, 45].
Theoretical Framework
In the work proposed herein, artificial bee colony algorithm will be engineered to solve
the network topology design problem. Moreover, a new formulation of the network
topology design problem will be done. This new aspect mainly comes due to the optimization objectives being considered in the optimization process. These optimization
objectives are network availability, maximum link utilization, network reliability, financial cost, and average network delay per packet. These design objectives are briefly
discussed below.
Reliability: The goal is to maximize reliability. Reliability can be defined as the
probability of proper delivery of the transmitted data with respect to the expected
loss in case of any occasional occurrences of network failure. Severe problems can
be reported when network reliability is concerned [46]. For a tree topology, network
reliability can be calculated as the product of reliabilities of all individual links present
in the topology, as shown in the following equation [3] .
Rs =
L
Y
Ri
(1)
i=1
Where, Rs is the reliability of the entire network, Ri is the reliability of link i in the
Network.
Utilization: The aim is to maximize link utilization to maintain a reasonably
acceptable performance level. Link utilization can be defined as the ratio of the current
link traffic to the maximum traffic that the same link can handle. While high link
utilization indicates that the link is extremely busy, low utilization indicates that the
link is under-utilized. However, higher link utilization often compromises latency. That
is, under normal conditions, exceeding a threshold value can cause severe congestion
levels [47]. Several approaches have been proposed in literature [4850] to estimate
the upper bound of link utilization. One such approach is by Igai and Oki [50], whose
work aimed to balance both utility and congestion. The following equation is used to
calculate link utilization:
Dbit
%
(2)
Ulink =
BW T
Where Dbit is data per bits, BW is bandwidth and T is the time interval.
Availability: Availability is a key characteristic of any system design. It equally
becomes a crucial and complex issue for a network topology design problem. Note that
a typical tree network topology consists of links and nodes, in which each node has an
access to every other node via a unique path. Even a small fault in a cable or a network
device can threat the availability of entire network. For example, if the availability of a
network per day unit was 99.993 %, it indicates the expected unavailability to be 1.02
minutes per day. Thus, the accumulated annual unavailability would be approximately
386 minutes per year. For network involving sensitive applications and huge data
handling (such as in stock exchanges or space mission program), this may lead to
disastrous results [51].
6
Commercially, a network service provide must ensure provision of maximum availability, since it may serve as a critical factor in attracting customers. Therefore, the
usual accepted value of availability in the industry is very high, which is precisely
99.999 % (also known as 5 nines), as adopted for networks in military sectors [52]. As
an optimization problem the objective is to maximize availability. However, for ease of
calculation, the unavailability is considered as an objective to be minimized [53]. The
availability of a connection can be defined by the following equations [54]:
A = 1 UW .UP
UW '
n
X
(3)
Ui,W
(4)
Uj,P
(5)
i=1
UP '
m
X
j=1
where UW and UP are the Unavailability of the ith element in path P respectively.
Financial Cost: The goal is to find the topology with minimum cost. In order to
calculate the cost of the topology design, the cost of all cable links should be considered
along with the cost per unit of the used cable. For this purpose the following equation
is used [3]:
Cost = Length Ccable .
(6)
where C is the link cost per unit.
Network Delay: The objective is to find the network topology with lowest network
delay (latency). To calculate the average network delay of the topology, both link
delay and device delay should be taken into account. The following equation is used
to calculate the delay time per network topology [3].
Dtotal = Dlink + Ddevice
(7)
L
d
i
1 X X Bij
1X
+
ij
D=
i=1 max,i i i=1
(8)
5.1
Considering the various issues discussed earlier in this proposal, following will be the
major contributions of the thesis:
1. Formulation of multi-objective enterprise network topology design problem. This will involve proposing a new variant of the network topology design
problem. Previous studies on the work [3, 55] considered four optimization objectives, namely, network financial cost, network latency, maximum hop count
between two nodes, and network reliability. The novel aspect of the proposed
work will be the formulation of a new multi-objective problem considering five
optimization objectives. These are network financial cost, network latency, network reliability, maximum link utilization, and network availability.
2. Employing goal programming as the multi-objective optimization strategy for the underlying problem: The multi-objective aspect of the proposed
ABC will be handled by incorporating the goal programming approach for fitness
evaluation of a solution. More specifically, this will require aggregating the aforementioned five optimization objectives into a single optimization function via the
goal programming approach. This will be the first such attempt with regard to
the application of the goal programming approach to the ABC algorithm in any
domain.
3. Engineering the artificial bee colony optimization algorithm for multiobjective enterprise network topology design: This will include tailoring
the general ABC algorithm to become a multi-objective objective optimization
algorithm considering the five objectives mentioned in point (1) while using the
goal programming approach in point (2). This will be the first such attempt with
regard to the application of the ABC algorithm to the problem being considered
in this proposal.
4. Propose an adaptive artificial bee colony optimization algorithm: This
will be an enhancement of the proposed ABC mentioned in point (3). The adaptive variant will attempt to dynamically adjust the algorithm parameters [56] by
extracting the problem specific information from the execution run. It will be a
first such attempt of its kind in the domain of ABCO in general, as well as for
the problem being studied.
5. Propose a goal programming based ant colony optimization algorithm:
This will be a modification of the ant colony optimization algorithm (ACO)
proposed in [3] which used fuzzy logic for multi-objective optimization, while
considering financial cost, network latency, maximum number of hops between
a source destination pair, and network reliability as the optimization objectives.
The modification will involve employing goal programming, instead of fuzzy logic,
for multi-objective optimization. The modified ACO will also consider the five
objectives mentioned in point (1) above in the optimization process.
Methodology
The proposed multi-objective artificial bee colony optimization algorithm will be developed for the enterprise network topology design problem considering the five design
objectives and possible constraints. A code in C++ will be developed to accomplish
this. Five test cases used in many previous studies will be used for experimentation and
evaluation, and experiments with different algorithm parameters will be conducted. As
per the standard practice in the domain, at least 30 independent runs will be performed
for each of the objectives listed in Section 5.1, and average fitness of the solutions will
be recorded. Furthermore, results will be validated statistically using the Wilcoxon
ranked-sum test which is a popular test used for such valdiations. Statistica package
will be used for statistical analysis.
References
[1] JR.T Bui B.C.Mcnurlin, R.H.Sprague. Information system management in practice. Person, eighth edition, 2009.
[2] Tian Bu, Nick Duffield, Francesco Lo Presti, and Don Towsley. Network tomography on general topologies. In ACM SIGMETRICS Performance Evaluation
Review, volume 30, pages 2130. ACM, 2002.
[3] Salman A Khan. Design and analysis of evolutionary and swarm intelligence techniques for topology design of distributed local area networks. PhD thesis, University
of Pretoria, 2009.
[4] MR Garey and DS Johnson. Computers and intractability: a guide to the theory
of NP-completeness. San Francisco: Freeman, 1979.
[5] Abraham Charnes, William W Cooper, and Robert O Ferguson. Optimal estimation of executive compensation by linear programming. Management science,
1(2):138151, 1955.
[6] C. A. Coello Coello. A Comprehensive Survey of Evolutionary-Based Multiobjective Optimization Techniques. Knowledge and Information Systems, 1(3):269
308, 1999.
[7] D. Karaboga. Artificial bee colony algorithm. 5(3):6915, 2010.
[8] Dervis Karaboga. An idea based on honey bee swarm for numerical optimization.
Technical report, Technical report-tr06, Erciyes university, engineering faculty,
computer engineering department, 2005.
[9] Dervis Karaboga and Bahriye Basturk. A powerful and efficient algorithm for
numerical function optimization: artificial bee colony (abc) algorithm. Journal of
global optimization, 39(3):459471, 2007.
[10] Dervis Karaboga and Bahriye Akay. A survey: algorithms simulating bee swarm
intelligence. Artificial Intelligence Review, 31(1-4):6185, 2009.
[11] Dervis Karaboga, Beyza Gorkemli, Celal Ozturk, and Nurhan Karaboga. A comprehensive survey: artificial bee colony (abc) algorithm and applications. Artificial
Intelligence Review, pages 137, 2012.
[12] Valery Tereshko and Andreas Loengarov. Collective decision making in honey-bee
foraging dynamics. Computing and Information Systems, 9(3):1, 2005.
[13] Mark M Millonas. Swarms, phase transitions, and collective intelligence. In
SANTA FE INSTITUTE STUDIES IN THE SCIENCES OF COMPLEXITYPROCEEDINGS VOLUME-, volume 17, pages 417417. ADDISON-WESLEY
PUBLISHING CO, 1994.
10
[14] Eric Bonabeau, Andrej Sobkowski, Guy Theraulaz, and Jean-Louis Deneubourg.
Adaptive task allocation inspired by a model of division of labor in social insects.
In BCEC, pages 3645, 1997.
[15] Eric Bonabeau, Marco Dorigo, and Guy Theraulaz. Swarm intelligence. Oxford,
1999.
[16] S. Pierre and G. Legault. A Genetic Algorithm for Designing Distributed Computer Network Topologies. IEEE Transactions on Systems, Man, Cybernetics,
28(2):249258, April 1998.
[17] B. Dengiz, F. Altiparmak, and A. Smith. Local Search Genetic Algorithm for
Optimal Design of Reliable Network. IEEE Transactions on Evolutionary Computation, pages 179188, September 1997.
[18] B. Dengiz, F. Altiparmak, and A. Smith. Efficient Optimization of All-Terminal
Reliable Networks, Using an Evolutionary Approach. IEEE Transactions on Reliability, pages 1825, March 1997.
[19] M. Gen, K. Ida, and J. Kim. A Spanning Tree-Based Genetic Algorithm for Bicriteria Topological Network Design. In IEEE International Conference on Evolutionary Computation, pages 164173, May 1998.
[20] R. Elbaum and M. Sidi. Topological Design of Local-Area Networks Using Genetic
Algorithm. IEEE/ACM Transactions on Networking, pages 766778, October
1996.
[21] B. Ombuki, M. Nakamura, Z. Nakao, and I. Onaga. Evolutionary Computation
for Topological Optimization of 3-Connected Computer Networks. In IEEE Conference on Systems, Man, and Cybernetics, pages 659664, 1999.
[22] X. Tan, W. Jin, and D. Zmo. The Application of Multi-Criterion Satisfactory
Optimization. In Computer Networks Design, Parallel and Distributed Computing,
Applications and Technologies, pages 660664, 2003.
[23] M Mostafa and S. Eid. A Genetic Algorithm for Joint Optimization of Capacity
and Flow Assignment in Packet Switched Networks . In Seventeenth National
Radio Science Conference, pages C51 C56, 2000.
[24] A. White, J. Mann, and G. Smith. Genetic Algorithms and Network Ring Design.
Annals of Operations Research, 6(1):347371, 1999.
[25] T. Miyoshi, S. Shimizu, and Y. Tanaka. Fast Topological Design with Simulated
Annealing for Multicast Networks. In 7th International Symposium on Computers
and Communications, pages 959966, 2002.
[26] J. Harmatos, A. Szentes, and I. Godor. Planning of Tree-topology UMTS Terrestrial Access Networks. In Proceedings of the 11th IEEE International Symposium
on Personal, Indoor and Mobile Radio Communications, Vol. 1 , pages 353 357,
2000.
11
12
[40] Huanzhe Li, Kunqi Liu, and Xia Li. A comparative study of artificial bee colony,
bees algorithms and differential evolution on numerical benchmark problems.
In Computational Intelligence and Intelligent Systems, pages 198207. Springer,
2010.
[41] D Jeya Mala, M Kamalapriya, R Shobana, and V Mohan. A non-pheromone based
intelligent swarm optimization technique in software test suite optimization. In
Intelligent Agent & Multi-Agent Systems, 2009. IAMA 2009. International Conference on, pages 15. IEEE, 2009.
[42] Dervis Karaboga and Bahriye Basturk. On the performance of artificial bee colony
(abc) algorithm. Applied soft computing, 8(1):687697, 2008.
[43] Junzhong Ji, Hongkai Wei, Chunnian Liu, and Baocai Yin. Artificial bee colony
algorithm merged with pheromone communication mechanism for the 0-1 multidimensional knapsack problem. Mathematical Problems in Engineering, 2013,
2013.
[44] TUBA Milan. Artificial bee colony (abc) algorithm with crossover and mutation.
Advances In Computer Science.
[45] Kamalam Balasubramani and Karnan Marcus. A comprehensive review of artificial bee colony algorithm. INTERNATIONAL JOURNAL OF COMPUTERS &
TECHNOLOGY, 5(1):1528, 2013.
[46] Laszlo Jereb. Network reliability: models, measures and analysis.
[47] Srinivas Shakkottai, Srinivas Govindaraju Shakkottai, and Rayadurgam Srikant.
Network optimization and control. Now Publishers Inc, 2008.
[48] Rade Stanojevic and Robert Shorten. How expensive is link utilization?
Network Control and Optimization, pages 5464. Springer, 2007.
In
[49] Hayder Natiq Jasem, Zuriati Ahmad Zukarnain, Mohamed Othman, and Shamala
Subramaniam. On the delay and link utilization with the new-additive increase
multiplicative decrease congestion avoidance and control algorithm. Scientific
Research and Essays, 5(23):37193729, 2010.
[50] Kiyofumi Igai and Eiji Oki. A simple estimation scheme for upper bound of link
utilization based on rtt measurement. Cyber Journals: Multidisciplinary Journals in Science and Technology, Journal of Selected Areas in Telecommunications
(JSAT), pages 1016, 2011.
[51] Deepankar Medhi. Network reliability and fault-tolerance. Wiley Encyclopedia of
Electrical and Electronics Engineering.
[52] Enrique Vargas and Sun BluePrints. High availability fundamentals. 2000.
13
[53] Massimo Tornatore, Guido A Maier, Achille Pattavina, Marco Villa, Aldo
Righetti, Roberto Clemente, and Mario Martinelli. Availability optimization of
static path-protected wdm networks. In Optical Fiber Communication Conference,
page FA5. Optical Society of America, 2003.
[54] Elmer Eugene Lewis and EE Lewis. Introduction to reliability engineering. Wiley
New York et al., 1987.
[55] Salman A Khan and Andries P Engelbrecht. A fuzzy particle swarm optimization algorithm for computer communication network topology design. Applied
Intelligence, 36(1):161177, 2012.
[56] Gaowei Yan. An effective refinement artificial bee colony optimization algorithm
based on chaotic search and application for pid control tuning. Journal of Computational Information Systems, 7(9):33093316, 2011.
14