8
CGrAnt: A Swarm Intelligence-based Routing Protocol for Delay Tolerant Networks Ana Cristina B. Kochem Vendramin, Anelise Munaretto, Myriam R. Delgado DAINF, CPGEI. Federal Technological University of Parana (UTFPR). Curitiba, Brazil. +55 41 33104750 {criskochem, anelise, myriamdelg}@utfpr.edu.br Aline Carneiro Viana INRIA Saclay - Ile de France. Laboratoire d'Informatique de I'Ecole Polytechnique (LIX). Orsay, France. +33 1 69 33 41 01 [email protected] ABSTRACT This paper presents a new routing protocol for Delay Tolerant Networks (DTNs), based on a distributed swarm intelligence approach. The protocol is called Cultural Greedy Ant (CGrAnt), as it uses a Cultural Algorithm (CA) and a greedy version of the Ant Colony Optimization (ACO) metaheuristic. The term greedy implies the use of a deterministic transition rule to exploit previously found good paths or explore new paths by selecting, from among a set of candidates, the most promising message forwarders. CGrAnt chooses each next node toward the message destination based on pheromone concentration (i.e., global information) whenever it is available. However, as the pheromone is not always available due to connectivity partitions, local information (i.e., heuristic function) captured from DTN nodes also supports a routing decision. Specific metrics and information gathered from the evolution are stored in Situational, Domain, and Historical Knowledge. The knowledge composes the CA’s belief space, which is used to guide and improve the search. CGrAnt is compared with two DTN routing protocols (Epidemic and PROPHET) in an activity-based scenario. The results show that CGrAnt achieves a higher delivery ratio and lower byte redundancy than Epidemic and PROPHET. Categories and Subject Descriptors I.2.11 [Artificial Intelligence]: Distributed Artificial Intelligence Intelligent agents. C.2.2 [Computer-Communication networks]: Network Protocols – Routing protocols. Keywords Ant colony optimization; cultural algorithms; social metrics, routing protocol; delay tolerant network. 1. INTRODUCTION A Delay Tolerant Network (DTN) is a specific class of networks in which connectivity between neighboring nodes is intermittent due to either mobility or varying conditions of wireless communications. To achieve a minimum message delivery, intermediate DTN employ a store-carry-forward communication model [1, 2]. The nodes may need to store messages from other nodes in their buffers for long periods of time and carry these messages until a forwarding opportunity arises [3]. Additionally, message replications may be necessary to increase the probability of successfully delivered messages. However, some problems exist in a limited resource scenario: replications are undesirable, as they compete with valid data messages in the paths (set of nodes) toward destination, and due to limited buffer sizes, storing neighbors’ data messages can be a problem. Considering these challenges, maintaining an updated view of DTN dynamics is necessary and can be accomplished by periodically analyzing neighbors’ information and selecting more than one path along which to forward each message while limiting message redundancy. Moreover, the network users’ (nodes) behavior presents some similarities that can be explored by the belief space of a Cultural Algorithm (CA). Those premises characterize a DTN as an environment favorable for applying swarm intelligence-based paradigms, including Ant Colony Optimization (ACO) and CA [4-7]. The ACO is inspired by the collective behavior of real ants to find the shortest trail from their nests to food sources [4, 5]. The CA is derived from the cultural evolutionary process [6, 7]. The motivation for using ACO is to take advantage of its population-based search and adaptive learning framework. Conversely, CAs gather information during the evolutionary process and use it to guide the population and thus accelerate learning while providing more efficient solutions. This paper proposes a Cultural Greedy Ant (CGrAnt) protocol that infers the most promising message forwarders in DTNs using opportunistic information about social connectivity between nodes and determines the best paths along which to forward each message while limiting message byte redundancy. To the best of our knowledge, this is the first routing protocol that employs ACO and CA to direct traffic in dynamic and complex networks. 2. THE ADDRESSED PROBLEM DTNs suffer connectivity loss, long and variable delays, and large resource consumption when sending a message between the source and destination nodes. The problem of message forwarding in DTNs can thus be modeled like multimodal optimization problems, as we try to find not just one solution but a set of solutions (i.e., good paths between two nodes). The finite set of possible solutions (i.e., paths formed by a sequence of nodes, where each node permutation generates a new solution) features routing in DTNs as a combinatorial problem. The problem can also be modeled as dynamic, as the search space characteristics and the location and value of the solutions change over time. The problem of routing in DTNs is then a complex challenge, with several aspects still unexplored by most approaches described in the literature. The most popular protocols for routing in DTNs are Epidemic [8] (a controlled flooding-based protocol, Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. GECCO’12, July 7–11, 2012, Philadelphia, Pennsylvania, USA. Copyright 2012 ACM 978-1-4503-1177-9/12/07...$10.00. 33

Paper ~ CGrAnt: A Swarm Intelligence-Based Routing Protocol for

Embed Size (px)

Citation preview

Page 1: Paper ~ CGrAnt: A Swarm Intelligence-Based Routing Protocol for

CGrAnt: A Swarm Intelligence-based Routing Protocol for Delay Tolerant Networks

Ana Cristina B. Kochem Vendramin, Anelise Munaretto, Myriam R. Delgado

DAINF, CPGEI. Federal Technological University of Parana (UTFPR). Curitiba, Brazil. +55 41 33104750

{criskochem, anelise, myriamdelg}@utfpr.edu.br

Aline Carneiro Viana INRIA Saclay - Ile de France. Laboratoire

d'Informatique de I'Ecole Polytechnique (LIX). Orsay, France. +33 1 69 33 41 01

[email protected]

ABSTRACT This paper presents a new routing protocol for Delay Tolerant Networks (DTNs), based on a distributed swarm intelligence approach. The protocol is called Cultural Greedy Ant (CGrAnt), as it uses a Cultural Algorithm (CA) and a greedy version of the Ant Colony Optimization (ACO) metaheuristic. The term greedy implies the use of a deterministic transition rule to exploit previously found good paths or explore new paths by selecting, from among a set of candidates, the most promising message forwarders. CGrAnt chooses each next node toward the message destination based on pheromone concentration (i.e., global information) whenever it is available. However, as the pheromone is not always available due to connectivity partitions, local information (i.e., heuristic function) captured from DTN nodes also supports a routing decision. Specific metrics and information gathered from the evolution are stored in Situational, Domain, and Historical Knowledge. The knowledge composes the CA’s belief space, which is used to guide and improve the search. CGrAnt is compared with two DTN routing protocols (Epidemic and PROPHET) in an activity-based scenario. The results show that CGrAnt achieves a higher delivery ratio and lower byte redundancy than Epidemic and PROPHET.

Categories and Subject Descriptors I.2.11 [Artificial Intelligence]: Distributed Artificial Intelligence – Intelligent agents. C.2.2 [Computer-Communication networks]: Network Protocols – Routing protocols.

Keywords Ant colony optimization; cultural algorithms; social metrics, routing protocol; delay tolerant network.

1. INTRODUCTION A Delay Tolerant Network (DTN) is a specific class of networks in which connectivity between neighboring nodes is intermittent due to either mobility or varying conditions of wireless communications. To achieve a minimum message delivery, intermediate DTN employ a store-carry-forward communication model [1, 2]. The nodes may need to store messages from other

nodes in their buffers for long periods of time and carry these messages until a forwarding opportunity arises [3]. Additionally, message replications may be necessary to increase the probability of successfully delivered messages. However, some problems exist in a limited resource scenario: replications are undesirable, as they compete with valid data messages in the paths (set of nodes) toward destination, and due to limited buffer sizes, storing neighbors’ data messages can be a problem.

Considering these challenges, maintaining an updated view of DTN dynamics is necessary and can be accomplished by periodically analyzing neighbors’ information and selecting more than one path along which to forward each message while limiting message redundancy. Moreover, the network users’ (nodes) behavior presents some similarities that can be explored by the belief space of a Cultural Algorithm (CA). Those premises characterize a DTN as an environment favorable for applying swarm intelligence-based paradigms, including Ant Colony Optimization (ACO) and CA [4-7]. The ACO is inspired by the collective behavior of real ants to find the shortest trail from their nests to food sources [4, 5]. The CA is derived from the cultural evolutionary process [6, 7]. The motivation for using ACO is to take advantage of its population-based search and adaptive learning framework. Conversely, CAs gather information during the evolutionary process and use it to guide the population and thus accelerate learning while providing more efficient solutions.

This paper proposes a Cultural Greedy Ant (CGrAnt) protocol that infers the most promising message forwarders in DTNs using opportunistic information about social connectivity between nodes and determines the best paths along which to forward each message while limiting message byte redundancy. To the best of our knowledge, this is the first routing protocol that employs ACO and CA to direct traffic in dynamic and complex networks.

2. THE ADDRESSED PROBLEM DTNs suffer connectivity loss, long and variable delays, and large resource consumption when sending a message between the source and destination nodes. The problem of message forwarding in DTNs can thus be modeled like multimodal optimization problems, as we try to find not just one solution but a set of solutions (i.e., good paths between two nodes). The finite set of possible solutions (i.e., paths formed by a sequence of nodes, where each node permutation generates a new solution) features routing in DTNs as a combinatorial problem. The problem can also be modeled as dynamic, as the search space characteristics and the location and value of the solutions change over time.

The problem of routing in DTNs is then a complex challenge, with several aspects still unexplored by most approaches described in the literature. The most popular protocols for routing in DTNs are Epidemic [8] (a controlled flooding-based protocol,

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. GECCO’12, July 7–11, 2012, Philadelphia, Pennsylvania, USA. Copyright 2012 ACM 978-1-4503-1177-9/12/07...$10.00.

33

Page 2: Paper ~ CGrAnt: A Swarm Intelligence-Based Routing Protocol for

which sends messages to all or almost all encountered nodes without predicting the good message forwarders) and PROPHET [9] (a prediction-based protocol, which tries to predict which nodes are useful for delivering messages based on history of encounters). Though ACO has been extensively used in network environments, especially in MANETs [10, 11], routing in DTNs is challenging and few ACO protocols have been proposed: (i) DAR [11] does not consider local information from neighboring nodes and uses only the pheromone global information which is not always available in DTNs; (ii) ABMF [12] only aims to estimate the extra capacity of each node as a message forwarder depending on its buffer dynamics. Even if a node has a large storage capacity to maintain several messages from other nodes, in the case of a low connectivity range, it may not be able to continue forwarding those messages; (iii) ACRP [13] uses the Epidemic protocol to flood the network with control messages associated with Forward Ants (FAs) and Backward Ants (BAs). No approach considers important aspects of sparse and opportunistic networks: (i) analyzing node social metrics, including their degree and betweenness centralities to help select message forwarders; (ii) preventing the loss of previously found good paths caused by pheromone evaporation processes periodically performed (i.e., based on time, as in ABMF and ACRP) or the overuse of those paths due to the absence of an evaporation process (as in DAR); (iii) dynamically limiting the number of control and data messages forwarded in the network. Keeping these issues in mind, we proposed a first version of the swarm intelligence-based routing protocol for DTNs that uses only ACO [14]. Guided by pheromone concentration, heuristic function, and social metrics, the Greedy Ant protocol (GrAnt) performed better than the well-known DTN routing protocols [14].

In this paper, we propose a hybrid protocol called Cultural Greedy Ant (CGrAnt), which encompasses CA and ACO metaheuristics. It can be considered an extension of our previous method [14], as it improves the learning process gathering, during evolution, of high-level information to be stored in the CA belief space. To the best of our knowledge, there is no previous approach using both ACO and CA to route messages in mobile communication networks. Previous protocols [15, 16] use CA (the first protocol proposes a population space based on the simulated annealing algorithm, and the second uses ACO) for routing in a static topology with service quality constraints. The proposed protocols differ from CGrAnt in the following characteristics: (i) they operate in a static environment (i.e., the node topology is fixed) and do not analyze the dynamics on a social network of contacts to determine opportunities; (ii) they search for a single optimal path with a set of constraints; (iii) they use Situational and Normative knowledge only to increase the convergence speed; and (iv) they use a single and centralized belief space.

3. THE CGRANT PROTOCOL This paper proposes the CGrAnt protocol as a solution to the problem of finding a set of nodes to route each message in DTNs. Using ACO and CA, CGrAnt provides a hybrid swarm intelligence system that can benefit from the specific advantages of each metaheuristic: the self-organizing nature and adaptation of the ACO learning structure and the CA ability to store and reuse experiences gathered during the search to guide new populations and thus accelerate the learning process. Moreover, the environment of opportunistic DTNs presents some similarities in the behavior patterns of nodes that compose each solution. These similarities can be well explored by joining CA and ACO, e.g.,

knowledge stored in the belief space can guide ants through new or already constructed paths, depending on nodes behavior, providing a good balance between search space exploration and exploitation.

To adapt to the large topology variations suffered by a DTN and reduce latency in message delivery, some modifications are incorporated into CGrAnt that differentiate it from traditional ACO and CA protocols: (i) FAs are encapsulated into data messages; (ii) the number of FAs created and forwarded is dynamically defined; (iii) CGrAnt adopts a greedy ACO transition rule that considers the heuristic function and/or pheromone concentration and either forwards messages to the most promising node(s) or exploits previously found good solutions. The search space exploration is still provided by the DTNs’ dynamics; (iv) allowing redundant paths becomes more important than converging to the best path. Instead of using traditional time-based pheromone evaporation, CGrAnt performs an event-driven evaporation, which only occurs if a node detects that a new path toward a destination has just been found; (v) as there is no central element in DTNs, the knowledge components stored in the CA belief space are distributed among network nodes; and (vi) the information exchanged between the belief and population spaces always occurs in a distributed way, and this communication can be direct (through the influence function) or indirect (through acceptance and update functions). In the latter case, communication is mediated by specific metrics. The ACO and CA modifications seem more adapted to intermittently connected networks as DTNs, yet some may allow CGrAnt to operate in different dynamic scenarios. 3.1 Metrics and Components The metrics incorporated into CGrAnt can be classified as basic (obtained directly from the population space or nodes) or composite (obtained from manipulating other metrics). The basic metrics can be classified into local (associated with each node and its neighborhood) and global (associated with complete paths constructed by ants). Part of the interaction between population and belief spaces is guided by the basic and composite metrics. Through these metrics, a more abstract model level (i.e., the belief space) can be updated according to the complexity and dynamic specifics of DTN environments to further influence the search process in a more appropriate way.

Figure 1 illustrates the basic metrics and their relationships with the composite metrics and other components used by CGrAnt.

SituationalKnowledge

DomainKnowledge

HistoryKnowledge

PathQuality

SocialProximity

NodeUtility

HopN

<< best_fwd >>

<< search_status>>

PheromoneConcentration

HeuristicFunction

exploitationexploration

EncQ

Population Space - ACO

Belief Space - CA

BetwUnet

StagDnet

IndQ

RelD

BetwUnode

StagDnode

Figure 1. Components of Population and Belief Spaces.

34

Page 3: Paper ~ CGrAnt: A Swarm Intelligence-Based Routing Protocol for

The Local Basic Metrics used by the CGrAnt protocol include the following: (i) the Encounter Quality between a pair of nodes (EncQ); (ii) the Individual Quality of a node (IndQ), represented by its degree centrality [17]. To obtain its IndQ, each node stores the total number of contacts established per unit of time divided by (N-1), where N is the total number of nodes in the network; (iii) the Relationship Degree (RelD) of a node with respect to each of its buffered data messages (i.e., the node is the source (sm) or an intermediate node (intm) for each of its messages m); and (iv) the stagnation degree of a node (StagDnode), which considers its average movement speed (ῡ) and average pause time in each visited place (ǭ) (i.e., StagDnode = 1/ ῡ ×ǭ).

The Global Basic Metrics of CGrAnt include (i) the Number of Hops in a complete path (HopN) and (ii) the betweenness utility of a node (BetwUnode) in relation to each message destination d. The traditional betweenness centrality measures the frequency with which a node appears on the shortest paths linking any two other nodes [17]. As we are interested in different paths to each destination d, we compute the nodes’ betweenness centrality in a slightly different way, referred to here as betweenness utility. To have a high betweenness utility in relation to d, a node must appear with a high frequency in paths between any source node and d. This requires no shortest-path verification, and, differing from related works [18], no list of all previously encountered contacts by a node is exchanged.

The Composite Metrics of CGrAnt include: (i) Path Quality, which measures the quality of each constructed path and encompasses IndQ and HopN; (ii) Social Proximity, represented by EncQ (Social Proximity = EncQ = F×D, i.e., it considers the frequency (F) and duration (D) of a contact between two nodes); (iii) Node Utility, which describes how well a node can perform as a message forwarder and encompasses RelD, Path Quality, and Social Proximity; (iv) the Stagnation Degree of the social network of a node (StagDnet); and (v) the Betweeness Utility of the social network of a node (BetwUnet).

The composite metric Path Quality measures the quality of a path between source(s)-destination(d) nodes (Q(paths,d)) and is directly associated with the ACO global operator Pheromone Concentration. The Social Proximity metric, which indicates the frequency and duration of a contact between node x and destination d (SocialProxx,d), is directly associated with the ACO local operator Heuristic Function ( , ). The heuristic function and pheromone concentration, along with RelD (x is sm or intm), determine the utility of node x as a forwarder for data message m stored in node i according to the value resulting from:

= , =, + ( , ), ℎ (1)

The pheromone concentration ( ( , ), ) is deposited on each link (i,y) belonging to a constructed path toward d, where y is the destination d of m (when calculating the utility of node i, which currently has custody of m) or y is node j (when calculating the utility of node j, which is a neighbor of i and a candidate to forward m). The utility of a node can then consider only local or both local and global information, depending on the relationship degree (RelD) of node i with message m to be forwarded.

The Betweenness Utility of node x in relation to message destination d (BetwUx,d) initializes the betweenness utility of the social network of i in relation to d (BetwUi

net,d (t=0) = BetwUx,d).

Node x can be either node j (x=j), through which i received the information that a complete path (global solution) toward d was constructed, or node i (x=i), if i received the information from d. BetwUi

net,d is always updated with BetwUi,d, and, when node j is not destination d, BetwUj,d is also used to update BetwUi

net,d:

, ( + 1) = , ( ) , , ( + 2) = , ( ) , , ≠ (2)

In addition to the basic and composite metrics, CGrAnt uses two indicators: best_fwd, which stores the current best forwarder for a given message, and search_status, which decides if ants must explore or exploit the environment while seeking solutions for the DTN forwarding problem (Section 3.3.1).

3.2 Population and Belief Spaces The population space is comprised of ants looking for sets of possible paths, one set for each pair (source-destination) associated with message m. We thus have a total of M messages to be forwarded and several sets {P1, …, Pm, …, PM} being constructed simultaneously. Every set Pm represents a niche in the population space, which is generated when message m, originating in sm, must be sent to destination dm. Each complete path in Pm, represented by a sequence of nodes, is established when ant k reaches dm and can be defined as pathk

s,d ={sm, j1mk, ..., jcm

k, ..., dm}, k = 1, ..., Km, where Km defines the number of generated ants for m. In general, we have |Pm| < Km because some ants cannot find dm. In CGrAnt, Km is dynamically defined according to the belief space’s knowledge and message delivery success. A new FA is created and sent only while the reception of its respective message remains unknown and when better forwarders appear. Due to CGrAnt’s message custody copy, a new ant is generated to start a new path construction in each node encountered where the custody copy occurs (it has the same nodes from the source to the current custody copy point). From this point, however, the new ant is free to find the destination and can provide a different path to the population space. Dynamic ant generation is thus auto-adaptive, as is the number of constructed paths, and both depend on the network dynamics.

CGrAnt distributes information, as there is no element to centralize and share the best solution(s). The belief spaces are thus distributed over the network. Each belief space encompasses three types of knowledge: Situational, Domain, and History. Situational knowledge is introduced to provide a memory of the best solutions and, through these solutions, influence the search process. The Situational knowledge memory is partial instead of global, represented by the best forwarder of each message. Domain knowledge is introduced to support the analysis of local and specific DTN dynamics. In this paper, Domain knowledge keeps the CGrAnt protocol up-to-date about the local dynamics of the node’s stagnation degree in relation to its social network. Based on this information and specific heuristics of the DTN forwarding problem, Domain knowledge can set the status of the path search (exploration or exploitation). History knowledge is introduced to adapt CGrAnt to changes in the environment, thus being able to reflect global network dynamics. This knowledge stores a history of important past events (in this case, the information that complete paths to the destination were found). As in the CGrAnt Situational knowledge, complete paths cannot be shared in the History knowledge. The betweenness utility metric

35

Page 4: Paper ~ CGrAnt: A Swarm Intelligence-Based Routing Protocol for

(representing partial information of the global solution) is then used and may subsequently influence the search.

The Situational knowledge is distributed among network nodes (Situati, i=1, ..., N). In each node i, this knowledge is divided into Mi niches (i.e., Situati

m, m = 1, ..., Mi), with a niche for each message m stored in its buffer. The Acceptance Function in every Situational niche of node i considers that, if a new node j (partial solution) is found, it is accepted to update the belief space of i only if Uj > Ubest_fwd, where Ubest_fwd is the current best forwarder utility for m stored in the niche Situati

m. After accepting a new solution, the Update Function is called. The new solution thus replaces the previous solution, and the new solution quality also updates the Ubest_fwd. The Influence Function dictates the future of each path being built by each ant to a given pair (source-destination) of message m and thus constructs different sets in the population space (Section 3.3.1).

The Domain knowledge is also distributed among network nodes (Domi, i=1, ..., N). In each node i, there is only one niche associated with the local dynamics on the stagnation degree of node i (StagDi) and its social network (StagDi

net = Σj ϵ J StagDj, where J is the set of nodes j encountered by node i). It thus assists CGrAnt in characterizing three types of nodes: (i) Domi = high stagnation degree, where node i is characterized as a high stagnation node when the following relation holds: StagDi > StagDi

net + Vsup if StagDinet ≠ 0, where Vsup is the value added to

the social network’s stagnation degree to allow detecting nodes with a stagnation degree higher than that of its social network; (ii) Domi = low stagnation degree, where node i has a low stagnation degree when the relation StagDi < StagDi

net – Vinf if StagDinet ≠ 0

holds, where Vinf is the value subtracted from the social network’s stagnation degree to detect nodes with a stagnation degree lower than that of its social network; and (iii) Domi = medium stagnation degree, where node i is characterized as a medium stagnation node when the relations described above do not hold. The Acceptance Function of the Domain knowledge in each node i accepts information about the local dynamics of neighboring node j if the stagnation degree of j is greater than zero. After accepting a new solution, the Update Function is called to calculate StagDi

net. Based on changes in node i’s stagnation degree with respect to its social network, the Influence Function acts during the message forwarding phase by changing the value of the search_status indicator. The Domain knowledge can thus detect when an individual (ant) in node i should exploit or explore the search space while solving the DTN forwarding problem.

The History knowledge is distributed in each node i of the network (Histi, i=1, ..., N). The History knowledge of node i is represented by Histi

d, d=1, ..., Di, where Di (Di ≤ N) represents the number of destination nodes for which node i originated or intermediated a path. History knowledge helps each node i keep up-to-date on asynchronous events that characterize a change in the complete path construction dynamics. These events represent the global changes occurring in the network in relation to the best solutions for each message destination d. The Acceptance Function in each niche of node i (Histi

d) is called after receiving a Backward Ant (BA) from a node, indicating that a complete path to the destination d has just been found. After the node i receives a BA (from node j or d), its BetwUi,d is accepted to initialize or update its belief space. The BA reception initializes or updates the belief space of i with the betweenness utility of j (BetwUj,d) if j is not the destination d. After accepting a new solution (j and/or i),

the Update Function is called to calculate the average betweenness utility of node i’s social network (BetwUi

net,d, as in Eq. (2)). The Influence Function evaluates the movement directions (dr=+1, dr=-1 or dr=0) of each neighboring node j as a candidate forwarder for message m to d (BetwUj,d) in relation to the BetwUi

net,d dynamics.

3.3 Forward and Backward Phases The CGrAnt routing protocol contains two phases (Figure 2): forward or path search (provided by FAs) and backward (provided by BAs). The path search phase involves two functions to infer the best message forwarders: path quality measuring and message forwarding.

Figure 2. Forward and Backward Phases of CGrAnt.

The forward phase in CGrAnt is initialized on-demand, when a data message must be delivered to its destination d. FAs are then created, encapsulated into the data message, and sent toward the destination via one or more neighboring (intermediate) nodes. If more than one neighbor appears, the best one is accepted as the message forwarder according to the knowledge of the belief space. Control messages are periodically and locally exchanged between each node i and its neighboring nodes j ϵ J to update node i’s Domain knowledge. The search for new paths toward d continues until node i performs one of the following actions: (i) encountering the destination node, (ii) becoming aware of the successful delivery of the corresponding data message to its destination, or (iii) detecting that the Time to Live (TTL) field of the data message has expired.

Throughout its path search, an FA carries the following information: the ID of the node that originated the data message, the ID of the message destination, the nodes’ ID through which it passes (between source and destination nodes), and the individual quality of each visited node j (IndQj). As j becomes more popular (high degree centrality), it has more opportunities to choose the best message forwarders (IndQj = degree centrality). The individual quality updates the partial quality ( ( ℎ , )) of the path being constructed by the FA k ( ℎ , ) at time t:

( ℎ , ( )) = ∑ ( ), ∈ ℎ , (3)

36

Page 5: Paper ~ CGrAnt: A Swarm Intelligence-Based Routing Protocol for

When an FA (along with the data message) reaches the destination, the final quality of the constructed path ( ( ℎ , )) is calculated, considering the average quality of its nodes and the reciprocal of the number of hops composing it:

( ℎ , ( )) = ( , ( )) + 1 (4)

When there are few hops in a path, fewer resources are consumed, and less interference is generated.

After calculating the quality of each new path, a new control message, the BA, is created from the information obtained by the FA, and the FA is deleted. During the backward phase, the BA returns to the node that originated the data message through the reverse path selected by the FA. The idea of using a reverse path even in DTN is motivated by wireless social networks in which (i) individuals are often linked by a short chain of acquaintances, (ii) some encounters have repetitive behavior, and (iii) nodes have routines that result in frequently visited locations and encounters.

In the reverse path, receiving a BA sent from node j to each neighboring node i produces three effects: (i) increasing by one the betweenness utility of node i to the message destination d (i.e., BetwUi,d++); (ii) updating the betweenness utility of the social network of node i in relation to d (BetwUi

net,d), as in Eq. (2); and (iii) updating the pheromone toward d according to:

( , ), (t) = (1 - ρ) × ( , ), (t - 1)+ ( ℎ , ( )), (5)

where ( , ), (t - 1) is the pheromone on link ( , ) that was last updated at time (t - 1) and ( ℎ , ( )), calculated as in Eq. (4), is the pheromone concentration deposited by the received BA k on link ( , ) (where , ∈ ℎ , ). An evaporation process (1-ρ) is necessary for the ants “to forget” previous pheromone values deposited on a link to a specific destination d. This evaporation reduces the search history influence. When updating the pheromone, all concentrations that belong to the same destination d of the data message are evaporated in the considered node i.

Effects (i) and (ii) both represent the Update Function of the History Knowledge.

Even if the BA does not reach the node that originated the message (due to connection partitions), the message forwarding phase of the CGrAnt protocol is guided by a local search provided by the heuristic function information. Differing from other protocols that use only global (pheromone concentration) or local (heuristic function) information, CGrAnt has additional flexibility, as the decision is based on all available information (both ACO operators and knowledge stored in the CA belief space).

Additionally, the BA serves as an acknowledgment that the message achieved its destination node, allowing the nodes that maintain the message to delete it. A node that encounters another node that has already received a BA for a given data message deletes the corresponding message and its associated variables. When the source node receives it, the BA is deleted. Full paths are thus constructed for each destination using information gathered by ants during the search phase.

3.3.1 Message Forwarding Phase CGrAnt message forwarding phase determines which route(s) a message must follow to eventually reach its destination. During message forwarding, an FA at a node i decides whether to forward data message m to a new neighboring node j according to the influence of the three types of knowledge stored in its belief space (Figure 3): Situational, History and Domain.

1 for each data message m in the buffer of node i 2 _ = ∅; {No forwarder is assigned to m} 3 endfor 4 {The History knowledge is updated during the backward phase} 5 for each data message m in the buffer of node i 6 ← ; {Node i utility, as in Eq. (1)} 7 if ( _ = ∅) 8 _ ← ; {Initializes the Situational Knowledge} 9 ( _ ) ← ; {Quality of the best forwarder for m} 10 endif 11 ℎ_ ← ; 12 ℎ_ ← ; 13 {Domain Knowledge influence} 14 if ( = and = ) 15 ℎ_ ← ; 16 endif 17 if ( = and = ) 18 ℎ_ ← ; 19 ℎ_ ← ; 20 endif 21 for connections j do 22 ← ; {Node j utility, as in Eq. (1)} 23 if ( ℎ_ and _ = and = ) 24 _ ← ; 25 else 26 _ ← ; 27 endif 28 if ( ℎ_ and In luence_Function( )) 29 Pair<Message, Forwarder> (m, j); {History Knowledge Influence} 30 else 31 if ( _ or Accept_Function( )) 32 _ ← j; {Update Situational Knowledge} 33 ( _ ) ← ; {Update Situational Knowledge} 34 endif 35 endif 36 endfor 37 if ( _ ≠ ∅) {Situational Knowledge Influence} 38 Pair <Message, Forwarder> (m, _ ); 39 endif 40 endfor

41 In luence_Function( ) {History Influence Function} 42 if (BetwU , > Hist ) 43 return true; { = +1} 44 else 45 return false; { = −1 = ∅} 46 endif 47 Accept_Function( ) {Situational Acceptance Function} 48 if (U > Situat ) 49 return true; {Accept the solution j} 50 else 51 return false; 52 endif

Figure 3. Pseudo-code of CGrAnt Message Forwarding Phase. As node i is the first candidate solution for forwarding message m, its identification and utility initialize the Situational knowledge (lines 8 and 9). The decision of forwarding m to j may be to explore (i.e., it is not required that node j has previously participated in a path to destination d of m) or exploit (i.e., node j has previously participated in a path toward d). The decision is guided by the following information about node i: its RelD with m (i.e., is it the source or an intermediate node of m?) and the StagD stored in the Domain knowledge (Domi). The status is initialized, enabling both exploitation and exploration of the search space (lines 11 and 12). These conditions can change in two situations: (i) node i is an intermediate node with a medium stagnation degree (in this case, the exploration stops (line 15)), or (ii) node i is an

37

Page 6: Paper ~ CGrAnt: A Swarm Intelligence-Based Routing Protocol for

intermediate node with a low stagnation degree (in this case, both exploration and exploitation stop (lines 18 and 19)). Aside from Domain knowledge, History and Situational knowledge also influence CGrAnt message forwarding. History knowledge influences it (line 29) when the decision is to exploit the solutions already found: node i forwards m to solution j if node j’s betweenness utility (BetwUj,d) is higher than the betweenness utility of node i’s social network (the BetwUi

net,d stored in History Knowledge (Histi

d)), as observed in lines 42 and 43. Situational knowledge influences it (line 38) when the decision is to explore the environment or when better solutions appear. Node i only forwards m to a new solution j if one of the following two conditions is satisfied: (i) j’s utility (Uj) is higher than the utility of the best forwarder previously found for m (U _ , which is stored in the Situational Knowledge (Situati

m)), as observed in lines 48 and 49. This condition tries to locate a new best forwarder for m among the current neighboring nodes of i; or (ii) at the beginning of the exploration (i.e., the data message was not forwarded to any other node, _ = ) and Uj = Ui (lines 23-24, 31-33). Situational and History knowledge are important contributions of the CGrAnt protocol because, they dynamically control the number of created ants and data message redundancy by setting each new best message forwarder or forwarding m to already good known nodes, thus differing from pure ACO algorithms proposed for DTNs.

After analyzing the utility of every current contact j and inferring the best one, CGrAnt creates a new pair <Message, forwarder> (lines 29 and/or 38), which represents the corresponding data message and its designated forwarder.

4. SIMULATION SETUP AND RESULTS The simulation scenario considers the Working Day movement model [19], which represents an activity-based environment that simulates the daily lives of people who go to work in the morning, spend the day working, may go to a public place for leisure activities with friends at the end of day, and return to their houses at night. The scenario is divided into meeting points, busses, houses, offices, and roads. Social relationships are formed when a group of people performs the same activity in the same location. Eight groups are created, denoted by the letters A to H. Groups A to D simulate only intra-group movements. Groups E, F, and G simulate movements between A and the other groups, and H simulates movements among all groups. The assignment of nodes per group is the following: A has 50 nodes, B has 15, C has 30, D has 30, E has 30 (i.e., nodes from A and B), F has 50 (i.e., nodes from A and C), G has 50 (i.e., nodes from A and D), and H has 70 (i.e., nodes from all groups). The traffic is generated every 100-150 s. The communication ranges are 10 and 100 m, and transmission speeds are 2 and 10 Mbps. The simulation lasts for 800,000 s. The nodes update their qualities after every 5,000 s of simulation. The node buffer size is 10 MB. Each message has a TTL of 1,800 minutes and size of 500 KB. In CGrAnt, each message encapsulates an FA with 8 bytes (i.e., a double number that represents its path quality). The BA size is 100 bytes (including the header, path quality, and path hops). The simulation experiments are conducted using the ONE Simulator [20].

To determine some CGrAnt parameters, experiments are conducted, and the performance is analyzed, focusing on the message delivery ratio. Due to space limitations, the detailed results are not presented here: (i) a pheromone evaporation rate of 0.1 provides the best results; (ii) to represent the individual quality

(IndQ), the degree centrality of a node provides better results than a metric considering the percentage of a node’s free buffer; and (iii) Vsup = 8 × StagDi

net and Vinf = 0.9 × StagDinet.

Initially, we evaluate the influence of CGrAnt’s components in the message delivery and byte redundancy ratios. The latter performance metric represents the number of bytes transmitted to nodes (Btransm) with respect to the number of delivered message bytes (Bdelivery). For this experiment, we adopt an additive methodology in which components are added one by one to previous configurations of the protocol until we reach its final version (configuration 6). Each configuration runs an entire simulation (800,000 s). Table 1 shows the mean results and confidence intervals (at a 95% confidence level) for 30 runs.

Table 1. Additive Analysis of CGrAnt’s Components.

Configuration Message Delivery

Byte Redundancy

1. Heuristic Function 53.38±0.60 85.87±0.94 2. Pheromone 54.97±0.61 68.62±0.96 3. Dom. Knowledge 1 64.26±0.63 43.18±0.41 4. Situational Knowledge 61.04±0.68 10.87±0.11 5. History Knowledge 63.70±0.69 19.04±0.23 6. Dom. Knowledge 2 63.19±0.72 12.43±0.12

The first two configurations in Table 1 represent the CGrAnt protocol when considering only the ACO metaheuristic. The pheromone slightly increases the delivery ratio and reduces the number of replicated bytes. In configurations 3 to 6, we can analyze the influence of the new component incorporated into CGrAnt (i.e., CA’s belief space). Comparing the results obtained from the pure ACO metaheuristic (emphasized in Table 1) with the final performance of CGrAnt (configuration 6), we observe an increase of 14.95% in the delivery ratio with a reduction of 81.89% in the byte redundancy ratio. Situational knowledge (configuration 4) aims to dynamically restrict the number of FAs (and, consequently, the number of data messages) relayed only to the most promising forwarders. Its higher influence is thus in the number of bytes replicated. Historical knowledge (configuration 5) seeks to provide the exploitation of already known good solutions. Its higher influence is thus in the delivery ratio. Domain knowledge 1 (configuration 3) is responsible for determining when an individual (i.e., ant) must explore the search space and Domain knowledge 2 (configuration 6) determines when it must explore or exploit. According to the analysis of configurations 3 to 6, we conclude that, Domain knowledge thus aims to increase the message delivery and reduce byte redundancy ratio. Our previous ACO-based protocol, named GrAnt [14], performs better (i.e., it provides 60.25±0.75 of message delivery and 13.55±0.14 of byte redundancy) than configuration 2 (i.e., CGrAnt uses only the ACO metaheuristic). Additionally to ACO operators, GrAnt uses an external memory to store the best forwarder for each message. This, however, is modeled in CGrAnt as a situational knowledge of the CA’s belief space.

After achieving its final configuration, CGrAnt is compared with two protocol categories for DTNs, which are usually considered in comparisons for DTN environments, as they are available in DTN simulators, such as ONE, and can operate in various environments with different node mobility models. Epidemic [8] and PROPHET [9] are used for performance gain comparisons with CGrAnt. Differing from Epidemic and PROPHET, CGrAnt conduct a global search and gather relevant information from DTN nodes.

38

Page 7: Paper ~ CGrAnt: A Swarm Intelligence-Based Routing Protocol for

CGrAnt can thus analyze the utilities of each node as a message forwarder and limit message byte replications.

Figures 4 and 5 show the performance gain of the three DTN routing protocols when varying buffer sizes and message TTLs, respectively. The dashed curves with empty points show the results when nodes operate at a communication range of 10 m and transmission speed of 2 Mbps; the solid curves with black points show results when nodes operate at a communication range of 100 m and transmission speed of 10 Mbps. We performed 30 runs, and the results represent the mean values.

Figures 4(a) and 4(b) show that as the buffer size and communication range increase, more messages are delivered and lower byte redundancy is generated by the three protocols. Nevertheless, for all buffer sizes and both communication ranges, CGrAnt provides a higher delivery ratio combined with a smaller redundancy ratio. For a buffer size of 8 MB, CGrAnt delivers 61.60±0.70% of the messages with a redundancy ratio of only 12.24±0.11 (using a 10 m range) and 98±0.09% with a 21.57±0.57 redundancy with a 100 m range. PROPHET delivers 28.25±0.32% (10 m) and 77.96±0.32% (100 m) of messages with a redundancy ratio of 116.33±1.10 (10 m) and 123.48±0.78 (100 m). Epidemic delivers 22.60±0.33% and 71.02±0.30% of messages with a redundancy ratio of 227.85±2.79 (10 m) and 278.88±1.73 (100 m). PROPHET and Epidemic performed poorly, as they do not have a dynamic mechanism for limiting the number of forwarded messages and choosing the best forwarding candidates, as CGrAnt does through its Situational knowledge. The results show that a node with an efficient routing protocol can abdicate only a small space of its buffer to message custodies. Figure 4(c) shows the message delivery delay for increasing buffer sizes. The PROPHET and Epidemic protocols provide lower delays for smaller buffer sizes. Instead, CGrAnt provides the lowest delay when using a higher buffer size (i.e., 10 MB to 16 MB). This is the only metric in which CGrAnt cannot provide the best results for all buffer sizes, which is justified by its ability to carefully analyze the node’s utilities and forward a message to a new node only if it is more promising than the already established custodian node for that message.

Figure 5 shows the message delivery, byte redundancy, and delivery delay over different message TTLs. Figures 5(a) and 5(b) show that CGrAnt provides the best results for all message TTLs and communication ranges in message delivery and byte redundancy. Figure 5(c) shows that CGrAnt achieves shorter delays when using a 10 m range and similar delays, when compared to PROPHET and Epidemic, with a 100 m range.

Finally, we perform an experiment to evaluate the number of messages delivered by the three protocols over simulation time. The aim here is to demonstrate that a better delivery ratio can be achieved as time increases. Though the delivery ratio increases for the three protocols when increasing the simulation time from 400,000 s to 800,000 s (with a 10 m range), CGrAnt has higher performance gain (10.99±0.90%) than PROPHET (2.65±0.40%) and Epidemic (2.49±0.43%). This is justified by CGrAnt’s ability to gather more updated information over time and make better choices concerning message forwarding candidates.

5. CONCLUSIONS In this paper, we proposed a swarm intelligence-based routing protocol for DTNs, called CGrAnt. CGrAnt uses a greedy version of the ACO metaheuristic and CA to conduct local and global

searches in a highly dynamic and complex environment by analyzing and gathering information on candidate nodes. Extracting information from the evolution and social behavior of nodes can improve searching and motivated the CA usage. Simulations show that for an activity-based scenario, CGrAnt achieved a higher message delivery ratio and generated lower byte redundancy when compared to the Epidemic and PROPHET protocols because CGrAnt can dynamically restrict the number of messages forwarded to the most promising nodes. Using the information stored in the CA belief space concerning the forwarding candidates, including their degree centrality, betweenness utility, and social proximity to other nodes, CGrAnt can save nodes’ resources and provide better network utilization. In future work, we intend to compare CGrAnt with other ACO-based routing protocols. Additionally, we will test CGrAnt using other scenarios. We believe that its ability to extract information online from dynamic conditions can be explored in many different situations, from almost static to completely mobile and disconnected networking environments.

6. ACKNOWLEDGMENTS This work is partially supported by the Brazilian National Research Council (CNPq), under research grants 301801/2008-8 to A. Munaretto and 307735/2008-7 to M.R. Delgado. Authors would like to thank INRIA-France and Fundação Araucária for their infrastructure and financial support.

7. REFERENCES [1] Fall, K. 2003. A delay-tolerant network architecture for

challenged internets. In Proceedings of the 2003 conference on Applications, technologies, architectures, and protocols for computer communications. ACM, New York, NY, USA, 27-34. DOI= http://doi.acm.org/10.1145/863955.863960.

[2] Fall, K. and Farrel, S. 2008. DTN: an architectural retrospective. IEEE J. Sel. Areas in Commun., 26, 5 (June 2008), 828–836. DOI= http://dx.doi.org/10.1109/JSAC.2008.080609.

[3] Cerf, V. et al. 2007. Delay-tolerant network architecture, IETF RFC 4838, DTN Research Group, <http://www.ietf.org/rfc/rfc4838.txt>.

[4] Dorigo, M., Maniezzo, V., and Colorni, A. 1996. Ant system: optimization by a colony of cooperating agents. IEEE Trans. Syst. Man Cybern. Part B Cybern., 26, 1 (Feb. 1996), 29-41. DOI= http://dx.doi.org/10.1109/3477.484436.

[5] Dorigo, M. and Caro, G. 1999. Ant colony optimization meta-heuristic. New Ideas in Optimization, McGraw-Hill, 11-32.

[6] Reynolds, R. 1994. An introduction to cultural algorithm. In Proceedings of the 3rd Annual Conference on Evolutionary Programming, World Scientific Publishing, River Edge, New Jersey, USA, 131-139.

[7] Saleem, S. M. 2001. Knowledge-Based Solution to Dynamic Optimization Problems using Cultural Algorithms. PhD Thesis, Wayne State University, Detroit, Michigan.

[8] Vadhat, A. and Becker, D. 2000. Epidemic routing for partially connected ad hoc networks. Technical Report CS-2000-06, Duke University.

[9] Lindgren, A., Doria, A, and Schelén, O. 2004. Probabilistic routing in intermittently connected networks. In Lect. Notes

39

Page 8: Paper ~ CGrAnt: A Swarm Intelligence-Based Routing Protocol for

Comput. Sci., 3126 (Jan. 2004), 239-254. DOI= http://dx.doi.org/10.1007/978-3-540-27767-5_24.

[10] Liu, L. and Feng, G. 2005. Swarm intelligence based node-disjoint multi-path routing protocol for mobile ad hoc networks. In Proceedings of the 5th International Conference on Information, Communications and Signal Processing, Bangkok, Thailand, 598-602. DOI= http://dx.doi.org/10.1109/ICICS.2005.1689117.

[11] Rosati L., Berioli, M., and Reali, G. 2008. On ant routing algorithms in ad hoc networks with critical connectivity. Ad Hoc Networks, 6, 6 (Aug. 2008), 827-859. DOI= http://dx.doi.org/10.1016/j.adhoc.2007.07.003.

[12] La, R. J., and Ranjan, P. 2009. Ant-based adaptive message forwarding scheme for challenged networks with sparse connectivity. In Proceedings of the 28th IEEE Military Communications Conference, Boston, MA, USA, 1-7. DOI= http://dx.doi.org/10.1109/MILCOM.2009.5379884.

[13] Zhang, P. et al. 2010. ACRP: Ant-colony-based routing protocol for DTMNs. In Proceedings of the 2010 International Conference on Educational and Information Technology, 2, Chongqing, China, 272-276. DOI= http://dx.doi.org/10.1109/ICEIT.2010.5607571.

[14] Vendramin, A. C. B. K., Munaretto, A., Delgado, M., and Viana, A. C. 2012. GrAnt: Inferring Best Forwarders from Complex Networks' Dynamics through a Greedy Ant Colony Optimization. Computer Networks, 56, 3 (Feb. 2012), 997-1015. DOI= http://dx.doi.org/10.1016/j.comnet.2011.10.028.

[15] Ma, J. et al. 2008. Research on cultural algorithm for solving routing problem of mobile agents. The Journal of China Universities of Posts and Telecommunications, 15, 4 (Dec. 2008), 121-125. DOI= http://dx.doi.org/10.1016/S1005-8885(08)60415-X.

[16] Zhang, M.-W., Sun, X.-M., and Lv, X.-Y. 2010. A QoS routing algorithm based on culture-ant colony algorithm. In Proceedings of the International Conference on Computer Application and System Modeling, Taiyuan, China, 198-201. DOI= http://dx.doi.org/10.1109/ICCASM.2010.5622234.

[17] Freeman, L. C. 1979. Centrality in social networks: conceptual clarification. Social Networks, 1, 3, 215-239. DOI= http://dx.doi.org/10.1016/0378-8733(78)90021-7.

[18] Daly, E. M. and Haahr, M. 2007. Social network analysis for routing in disconnected delay-tolerant MANETs. In Proceedings of the 8th ACM International Symposium on Mobile Ad Hoc Networking and Computing, ACM, New York, NY, USA, 32-40. DOI= http://doi.acm.org/10.1145/1288107.1288113.

[19] Ekman, F. et al. 2008. Working day movement model. In Proceedings of 1st ACM SIGMOBILE Workshop on Mobility Models, ACM, New York, NY, USA, 33–40. DOI= http://doi.acm.org/10.1145/1374688.1374695.

[20] Keränen, A., Kärkkäinen, T., and Ott, J. 2010. Simulating mobility and DTNs with the ONE. Journal of Communications, 5, 2, 92-105 (Feb. 2010). DOI= http://dx.doi.org/10.4304/jcm.5.2.92-105.

(a) (b) (c)

Figure 4. Protocols performance over different buffer sizes: (a) delivery ratio; (b) redundancy ratio; (c) delivery delay.

(a) (b) (c)

Figure 5. Protocols performance over different message TTL: (a) delivery ratio; (b) redundancy ratio; (c) delivery delay.

40