an ant colony optimization algorithm for multi-objective clustering in mobile ad hoc networks

24
An Ant Colony Optimization Algorithm for Multi-objective Clustering in Mobile Ad Hoc Networks Chung-Wei Wu, Tsung-Che Chiang, and Li-Chen Fu IEEE Congress on Evolutionary Computation (CEC) Beijing, July 11, 2014,

Upload: lorant

Post on 23-Feb-2016

84 views

Category:

Documents


0 download

DESCRIPTION

An Ant Colony Optimization Algorithm for Multi-objective Clustering in Mobile Ad Hoc Networks. Chung-Wei Wu, Tsung-Che Chiang, and Li-Chen Fu IEEE C ongress on Evolutionary C omputation (CEC ) Beijing, July 11, 2014, . Outline. Introduction Proposed algorithm Experimental results - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

An Ant Colony Optimization Algorithm for Multi-objective Clustering in Mobile Ad Hoc

Networks

Chung-Wei Wu, Tsung-Che Chiang, and Li-Chen FuIEEE Congress on Evolutionary Computation (CEC)

Beijing, July 11, 2014,

Page 2: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

2

Outline• Introduction• Proposed algorithm• Experimental results• Conclusions

Page 3: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

Introduction• Mobile Ad Hoc Networks (MANETs)

– MANET is a wireless network constructed by mobile devices.

– The mobile devices communicate without infrastructures (base stations).

– It has great applications in a variety of areas such as disaster relief, mobile conferences, and battle fields.

Page 4: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

4

Clustering in MANET• Clustering constructs a hierarchical structure to

reduce the routing scale of MANETs.• It divides nodes in a MANET into several groups

(clusters). – For each cluster, a cluster head will be chosen for

communication.– Each node is either a cluster head or a cluster member. – Cluster members are chosen from the neighbor set.

Page 5: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

5

Objective functions• Number of clusters

• denotes the set of cluster heads.• Load imbalance

• is defined by (), where is the number of nodes in the whole network.

• denotes the number of members of cluster head .• Total power consumption

• denotes the Euclidean distance of .

Page 6: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

6

Multi-objective optimization• Minimize

– denotes the solution space.– denotes the objective function.

• Pareto dominance– We say solution A dominates solution B if and only if

• A is not worse than B for all objective functions.• A is better than B for at least one objective.

• Pareto optimal solution – a solution that cannot be dominated by any other solution

• Goal– find or approximate the set of Pareto optimal solutions

Page 7: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

7

ACO-based approach for multi-objective clustering problem

Initialization

No

end

Yes 𝑇𝑒𝑟𝑚𝑖𝑛𝑎𝑡𝑒 ?

Cluster constructionBit string encoding

Repair functionRepair solutions

Removal redundant heads

Evaluation

Fitness function

Pheromone update

Adjust cluster head tendency

Page 8: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

8

Permutation encoding• It encodes a solution into a sequence of integers.

• It decodes a solution by picking up heads and then assigning members.3 2 1 4 5 6

3

1 5

2

4

6

5

6

3

: number of nodes3 2 1 4 5 6

(literature)

Page 9: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

9

Permutation encoding• Multiple encoded sequence generate the same

solution.

• Some solutions cannot be generated.

3 2 1 4 5 6 3 4 5 6 1 2

31 5

24

6

5

6

31 5

6

42

5

3

6

3

(literature)

3

1 5

24

6

5

6

3

Page 10: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

10

Bit string encoding• It encodes a solution into a bit string.

– – A 1-bit denotes that the node is chosen as a cluster head.

node1 node2 node3 node4 node5 node6

34

1

2

5

0 0 1 1 0 0

64

3

(proposed)

Page 11: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

11

Bit string encoding

Permutation encoding Bit string encoding

Search spaceMapping Many to one One to one cluster head selection Depends on the position

in the sequenceIndependent

: number of nodes

Page 12: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

12

Repair function• Repair the invalid solutions

– Invalid solutions : the solutions which can’t cover the whole networks• Some nodes are neither cluster heads nor cluster

members0 0 1 1 0 0 0 0 0 0 0 0

Page 13: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

13

Repair function• Repair the invalid solutions

– We calculate a score of each uncovered node and then choose the node with the lowest score as a cluster head until the network is completely covered.

𝑠𝑐𝑜𝑟𝑒𝑣=𝑤 ∙𝑝𝑜𝑤𝑒𝑟 𝑐𝑜𝑛𝑠𝑢𝑚𝑝𝑡𝑖𝑜𝑛𝑜𝑓 𝑣+ (1−𝑤 ) ∙ 𝑙𝑜𝑎𝑑𝑖𝑚𝑏𝑎𝑙𝑎𝑛𝑐𝑒𝑜𝑓 𝑣

Page 14: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

14

Repair function• Remove the redundant cluster heads

– A cluster head is redundant if its members and itself can be covered by other cluster heads.

– We calculate the score of each redundant head, then delete the head with the highest score until there are no redundant heads.

Redundant head

𝑠𝑐𝑜𝑟𝑒𝑣=𝑤 ∙𝑝𝑜𝑤𝑒𝑟 𝑐𝑜𝑛𝑠𝑢𝑚𝑝𝑡𝑖𝑜𝑛𝑜𝑓 𝑣+ (1−𝑤 ) ∙ 𝑙𝑜𝑎𝑑𝑖𝑚𝑏𝑎𝑙𝑎𝑛𝑐𝑒𝑜𝑓 𝑣

Page 15: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

15

Fitness evaluation• We do non-dominated sorting to rank solutions.

• Fitness function of solution

– denotes the set of solutions

f1

f2

rank 1rank 2rank 3rank 4

fitness = (3-1)/(2+1+1+0) = 0.5

0.25

0.25

0

0.5

Page 16: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

16

Pheromone structure

node1 node2 node3 node4 node5 node60.2 0.3 0.5 0.5 0.4 0.4

0 0 1 1 0 0pheromone

bit sequence

3 4

1

2

5

643

clusters

Node 3 is selected as a head in probability 0.5.

Page 17: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

17

Pheromone update• Pheromone update function

– Update the pheromone based on the difference in average fitness• An example of calculating

denotes the pheromone of node at generation tis a constant, called pheromone evaporation factor

0 0 1 1 0 00 0 1 1 0 01 0 1 0 0 0

population fitness

0.25

0.5

0.25

(0.5+0.25)/2 (0.25+0)/2= +0.25

1 0 1 1 0 0

0

0.4 0.3 0.8 0.7 0.2 0.1pheromone

Page 18: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

18

Experimental settings• Problem instances

• gird size (M): 100100 and 200200• number of nodes: 100, 200, and 300

• Parameters:Parameter Value Meaning

Evaporation factorInitial pheromoneWeight factorTransmission rangeNumber of antsNumber of generation

Page 19: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

19

Experimental settings• Benchmark algorithms:

• weighted clustering algorithm (WCA)– a greedy heuristic based on weighted sum of

objectives• genetic algorithm (GA)

– permutation encoding + weighted sum of objectives• weighted sum ACO (WSACO)

– bit string encoding + weighted sum of objectives• multiobjective ACO (MOACO)

– bit string encoding + Pareto ranking

• Each algorithm was applied 10 times to each scenario.

Page 20: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

20

grid instances• WCA : Greedy heuristic• GA : Permutation encoding+ aggregated objective clustering• WSACO : Bit string encoding + aggregated objective clustering• MOACO : Bit string encoding + multi-objective clustering

• : Number of clusters• : Degree of load balance • : Power consumption• : Number of nodes

The best value is marked in bold

Page 21: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

21

grid instances• WCA : Greedy heuristic• GA : Permutation encoding+ aggregated objective clustering• WSACO : Bit string encoding + aggregated objective clustering• MOACO : Bit string encoding + multi-objective clustering

• : Number of clusters• : Degree of load balance • : Power consumption• : Number of nodes

The best value is marked in bold

Page 22: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

22

Conclusions• We proposed an MOACO algorithm for the clustering

problem in MANET.• The proposed bit-string encoding/decoding scheme

avoids duplicate solutions and the position dependency in the traditional permutation scheme.

• We proposed a repair algorithm to make solutions feasible and better.

• MOACO performs better than several benchmark algorithms.

• Future work is to extend our work with the dynamic situations, and we will investigate the impact of parameter values on the algorithm performance.

Page 23: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

THANK YOU FOR YOUR ATTENTION

Page 24: An Ant Colony Optimization Algorithm for  Multi-objective Clustering  in Mobile Ad Hoc Networks

24

Repair function• Remove the redundant cluster heads

– A cluster head is redundant if its members and itself can be covered by other cluster heads.

– We calculate the score of each redundant head, then delete the head with the highest score until there are no redundant heads.

Black: headsGray: members

Redundant headRandom choosing the heads

𝑠𝑐𝑜𝑟𝑒𝑣=𝑤 ∙𝑝𝑜𝑤𝑒𝑟 𝑐𝑜𝑛𝑠𝑢𝑚𝑝𝑡𝑖𝑜𝑛𝑜𝑓 𝑣+ (1−𝑤 ) ∙ 𝑙𝑜𝑎𝑑𝑖𝑚𝑏𝑎𝑙𝑎𝑛𝑐𝑒𝑜𝑓 𝑣