A Simple Ant Colony Optimization Algorithm To select Cluster Heads in Ad Hoc Networks

Forming a clustered network structure has been proposed as a solution to increase network performance, scalability, stability and manageability in an ad hoc network. A good clustering algorithm aims to select cluster heads among available nodes so that a number of specific constraints are satisfied; thus the cluster head selection problem is a multiobjective optimization problem. This paper proposes an algorithm on the basis of ant colony optimization (ACO) to be used to solve this problem. The proposed algorithm is a simple, one hop cluster formation algorithm, to form a clustered structure with the minimum number of clusters. The centralized ACO-based clustering algorithm is evaluated and compared with other clustering algorithms in ad hoc networks in terms of cluster density. Keywords— Ad hoc Networks, Ant Colony Optimization, Cluster formation,


INTRODUCTION
Forming a clustered structure is a challenging problem in an ad hoc network.The main advantage of forming a clustered network topology is to provide a manageable hierarchical structure that is essential to increase the performance of an ad hoc network in terms of packet delivery ratio, routing overhead, path optimality, reliability [1], throughput, transmission rate, packet delay, security etc.
Clustering algorithms can be classified on the basis of the type of the ad hoc network topology, the kind of control mechanism (i.e., a distributed or centralized, one hop or multi-hop) and finally the objective function and the optimization method.Consider a dominant set based clustering approach to form the clustered structure in ad hoc networks; the cluster formation problem is an NP-hard problem and required to be solved by employing heuristic methods.
Consider a dominant set based clustering approach to form the clustered structure in ad hoc networks; the cluster formation problem is an NP-hard problem and required to be solved by employing heuristic methods [3].One promising group of heuristic methods for finding near optimal solution of these kind of problems is bio-inspired optimization methods such genetic algorithm (GA) [4], imperialist competitive algorithm (ICA) [5] and ant colony optimization (ACO) [6]- [7].
This paper utilizes a dominant set based clustering approach to form a one-hop clustered structure in an ad hoc network.The optimization problem is to find a minimum cardinality subset of ad doc nodes which be selected as cluster heads.An ACO-based algorithm is suggested to solve this optimization problem.
ACO has been successfully applied to solve optimization problems in ad hoc networks such as channel allocation [7], anomaly detection [8], routing algorithm [9] and cluster formation [10]- [12]; etc.The main motivation behind this paper is to develop a general ACO-based one-hop clustering algorithm as an applicable clustering method in the context of ad hoc networks.Thus, the suggested algorithm can be utilized for other combinatorial optimization problems in ad hoc networks e.g., rate, bandwidth allocation, traffic scheduling and multi-channel MAC scheme, a joint clustering and channel assignment problem.The suggested method can also be utilized for the above mentioned challenges in different types of ad hoc networks e.g.mobile ad hoc network, vehicular ad hoc network and cognitive radio ad hoc networks.The main contribution of this paper is to provide comparative results that can be utilized to evaluate the performance of new clustering algorithms as well as a distributed ACO-based clustering algorithm.
The rest of the paper is organized as follows: Section II provides a comprehensive study of various clustering algorithms.Section III states the problem formulation.Section IV describes ant colony optimization and illustrates a new algorithm for graph colouring; moreover, it explains how ACO can be used to form a clustered structure with a minimum number of cluster heads; finally it suggests in brief a distributed ACO-based clustering algorithm.Section V evaluates the suggested solution and compares the obtained results with other methods.Finally, conclusions about this research work and the further improvements to the suggested model are discussed in Section VI.

II. RELATED WORKS IN CLUSTER FORMATION
Clustering algorithms can be divided into two categories: the general clustering algorithms and the specific clustering algorithms.The former covers simple clustering algorithms and bio-inspired clustering algorithms; the latter encompasses the clustering algorithms that can also be classified according to type of network/application area: clustering algorithms in mobile ad hoc networks (MANETs), clustering algorithms in vehicular ad hoc networks (VANETs) and clustering in cognitive radio networks (CRNs).

A. General Clustering Algorithms a)
Simple Clustering Algorithms A typical simple clustering algorithm use the node identities to form the clustered structure; they are so-called 'identity based clustering' algorithms [13].Good examples are Lowest-ID and Max-min d-cluster algorithms which select the cluster heads on the basis of the node identities.Another instance is the highest connectivity clustering (HCC) algorithm, which is a type of 'connectivity-based clustering' algorithm.The HCC has a similar objective as Lowest-ID; however, it uses the nodes' degree to form the clusters.Other instances of connectivity-based clustering algorithms have objectives to satisfy the load balancing constraints, minimize the number of cluster heads, etc., [13]- [16].
Another simple clustering method is the combinedweight based clustering method.In these methods, a weight, which is defined as a summation of several metrics, is assigned to each node.The node with minimum weight is more desirable to select as the cluster head.The metrics are dependent upon the objective of the clustering algorithms.An example is the weighted clustering algorithm (WCA) that defines four metrics: degree of node, mobility, transmission power and battery power to select the cluster heads [13].The aim of this method is to minimize the number of clusters and the control communication overheads.Distributed clustering algorithms (DCA) and Distributed mobility adaptive algorithm (DMCA) are two well-known distributed algorithms to form the clustered structures in ad hoc networks [17].

b)
Bio-inspired Clustering Algorithms Recently, examining bio-inspired optimization to solve optimization problems in ad hoc networks has received a lot of attention.This paper reviews two types of bio-inspired clustering algorithms: evolutionary-based clustering algorithms and swarm intelligence-based clustering algorithms.
Good examples of evolutionary-based clustering algorithms have been proposed in [18]- [29]; these algorithms have modified the performance of WCA by using GA-based optimization methods.In [18]- [19], the GA-based methods were proposed to modify the performance of WCA.In [18], a genetic algorithm was proposed to minimize the dominating set.The suggested algorithm encodes a sequence of the selected cluster nodes to a chromosome and defines the fitness function as the summation of the node's metrics.The objective function of [18] was to maximize the connectivity.In the algorithm of [18], the node with the minimum value of the fitness function, which is defined on the basis of the node's metric, is a more desirable choice as a cluster head.A distributed WCA on the basis of GA was also examined for forming clustered topology.The distributed method of [19] finds a local solution for clustering, satisfying the control communication overhead requirement.In the GA-based distributed method, the cluster heads selection is done only using the local information [19].
A new evolutionary method that is referred to as imperialist competitive algorithm (ICA) was proposed in [20] to select cluster heads in a centralized manner.
Different types of swarm intelligence models such as ant colony optimization (ACO), artificial bee colony (ABC) [21], etc., have been successfully used to form clustered structures in ad hoc networks.The combination of ant colony optimization (ACO) and a weighted-combined clustering algorithm was proposed for cluster formation in [10]- [12].The algorithm of [10] calculates a probability function for each node.The node with higher probability is the more desirable one to be selected as the cluster head.The probability function is a normalized summation of two metrics: the degree of each node and pheromone intensity.This algorithm has the goal to minimize the number of clusters.Examining this method for different sizes of networks proves that it has the ability to find the minimum number of cluster heads while satisfying the connectivity and time complexity of the selection procedure.Another instance of ACO-based clustering algorithms was suggested in [11] that defines a new metrics, 'computing power' [11] and combines the WCA and the ACO to improve the performance of WCA in terms of forming clusters, selecting cluster heads and maintaining the clusters.The algorithm of [11] forms the clusters to maximize the throughput, load balancing, minimize delay and the number of re-affiliations.In [12], an ACO-based clustering algorithm was proposed to improve the performance of the clustered network; it was named 'CAACO' [12] and was referred to as Clustering Algorithm based on Ant Colony Optimization.The CAACO assigns a metric to each node.The metric shows the level of the node's pheromone intensity.The probability function for choosing each node is defined based on this new metric; thus, a node with the highest probability is selected as a cluster head.The CAACO aims to reduce the control communication overhead as well as maximize the scalability and the inter-cluster stability.Another attempt to use a bioinspired method to form clusters was proposed in [21], in which a clustering algorithm based on the bee colony algorithm was suggested to form clusters with the aim to prolong the network life-time.The obtained results in [21] were compared with a PSO-based algorithm and LEACH (low energy adaptive Clustering Hierarchy).Good examples of PSO-based clustering algorithms have been presented in [22].

B. Specific Clustering Algorithms
Comprehensive studies related to cluster formation in different types of ad hoc networks have been published in [1]- [2], [23]- [25].In MANETs, a node's mobility is an essential metric for clustering algorithms applied.A good example of a clustering algorithm in MANETs is the mobility-aware clustering method, MOBIC, that considers mobility based metrics to form clusters with the aim to increase the connectivity of clusters [23]- [25].It should be noted that the MOBIC is a type of mobility-aware clustering method with the aim of stabilizing the intra-cluster connections and minimizing the rate of re-affiliations.).The mobility-based d-hop clustering algorithm (MobDHop) is another mobility-aware clustering algorithm with the goal to maximize the stability of the clustered structure and minimize the number of cluster heads.In MobDHop, a node with a high stability metric is chosen as the cluster head.The stability factor is determined based on the distance between the nodes and its neighbours and its relative mobility [1], [23].For MANETs with high mobility, the mobility prediction based clustering algorithm (MPBC) [24] was proposed.The MPBC selects the cluster heads using the mobility metric; it also defines a cluster maintenance phase to predict the relative speed of each node and to make the decision to change the role of the cluster heads.The main objective of the MPBC is maximizing the life time of the clustered structure [24].The main challenge in MANETs is that the nodes' mobility directly influences the stability of the clustered topology.
In VANETs, the connectivity is a big challenge in cluster formation approaches.Proposed clustering algorithms in VANETs have considered both node mobility and node density.A clustering algorithm for VANETs was proposed in [26]; the algorithm assigns a weight that is based on three metrics: vehicle density, link quality and link sustainability to each node; and the node with the highest weight among its neighbors is chosen as a cluster head [26].Another clustering algorithm in VANETs is VMCA that aims to increase the stability and connectivity of the clustered structure, using a metric based on the number of neighbors, dynamic transmission range and vehicle movement direction [25], [27].Another clustering algorithm with the target of increasing network reliability in inter-vehicle communication [28] uses the information in the packet header to form the clusters.In [29] a clustering algorithm that is based on a beacon was presented, the aim of the algorithm is to increase the life time of the clustered topology.Three factors: vehicle location, vehicle destination and the future predicted path of the vehicles were proposed as metrics to form the clustering algorithm in [30].This algorithm of [30] needs information from the vehicles' GPS.In [31] the proposed cluster formation algorithm is based on vehicle location, speed, density and minimum required bandwidth, relative and final destination.In general, one can say that most clustering algorithms applied for vehicular networks [25] aim at providing a stable clustered topology, using a distributed method with minimum overheads.However, in VANETs, it is also desirable to define clustering algorithms with high connectivity, communication reliability and limited maximum delay.
Clustering algorithms in cognitive radio networks (CRNs) have been proposed to manage the CRNs.A clustering algorithm in CRNs aims at providing a solution to manage the network and to overcome scalability and open spectrum issues.It is also based on a distributed solution to satisfy several constraints such as overheads, interference and spectrum scarcity.A good example of a clustering algorithm applied in CRNs is CogMesh, a clustering algorithm for cognitive radio based mesh networks [32]; the cluster head selection is based on the adjacent nodes' information.The cluster head shares its channel with the adjacent nodes and is responsible for both inter and intra cluster communications.The method aimed to provide an adaptive clustering method.In [33] a distributed clustering algorithm for cognitive sensor radio networks was proposed.The algorithm is a type of energy-aware scheme with the goal of avoiding co-channel interference to the primary users; it can be considered as a self-organized energy-aware clustering algorithm.In [34] a cluster formation algorithm for cognitive radio ad hoc networks was suggested to maximize throughput and stability while minimizing the packet delay and number of generated clusters.The clustering algorithm uses three metrics: capacity, stability and link quality to choose the cluster heads.One of the main goals of creating a clustered structure in cognitive radio networks is to form a small number of clusters, while overcoming interference and overhead communication.

III. PROBLEM FORMULATION
A snap shot of an ad hoc network is represented by a connected unidirectional graph or a communication graph = ( ‚ ) .The set of the nodes and the set of the communication links are represented by and , respectively.Figure 1 represents the communication graph, .The vertices represent nodes and each edge represents a possible communication link, i.e., two nodes are within transmission range of each other.A one-hop clustered structure has been depicted in Fig. 2. It can be observed that a clustered network topology encompasses three types of nodes: cluster heads, gateway and ordinary nodes.A cluster head is the master of a cluster and is responsible for handling the inter-cluster communication [1].The gateway, which is a common node between two or more clusters, provides the connectivity between the clusters.Other nodes are ordinary nodes that determine the boundary of clusters, which is dependent on the transmission range and the density of the nodes [1]- [4].The problem of cluster head selection can be represented as finding a minimum connected dominating set in .A dominating set can be defined as a set The minimum dominating set problem is defined as 'finding a dominating set with minimum cardinality' [35]- [36].The minimum connected dominating set is defined as a dominating set such that the sub graph ( ) ( , ( )) = E is connected, where ( ) {{i,j} i ,j } E = ÎE Î Î [35].In cluster formation problem, the objective function can be formulated as in equation (1) where j x is a binary variable.If j x 1 = the j th node has been selected as a cluster head, otherwise j Equation (1) finds a minimum connected dominating set; while equation (2) defines that the solution should be a dominating set.Equation (3) defines the connectivity condition of each minimum dominating set.In order to satisfy the connectivity constraint; each cluster head should have at least two adjacent clusters.Equation ( 4) formulates this expression.Here i is defined Ant colony optimization is a bio-inspired algorithm that is inspired by the 'foraging behavior of real ants' [37]- [38].The general steps of an ACO-based algorithm are summarized as follows [37]- [38]: that represents the optimization problem.The c is a set of vertices and c is a set of edges.A complete path that can be reoresented by the vertices or edges are a feasible solution of the optimization problem.

2) Initialization of population:
A population of artiftial ants which memorize the traversed paths; ecah ant is considered as an intelligent agent to traverse the graph and memrize the sequence of the traversed vertices or edges.
3) An initial state: An initial state which is assigned to each ant and determines the starting vertex of the the construction graph .

4) Probabilistic transition rule:
A'probabilistic transition rule' [23] is used by each ant to make a decision to move to the next vertex j or select the next edge (i, j ).It is defined on the basis of three parameters: a heuristic function, pheromone intensity and a set of feasible vertices.Note that they are problem dependent parameters.

5) A heuristic function:
A function that indicates the desirability of selecting vertex j or edge (i, j ) from the perspective of the deciding ant that are placed on the vertex i .

6) Pheromone intensity:
A parameter represents the desirability of selecting vertex j or edge (i, j ) from the perspective of the other ants in particular the BEST_ANT (i.e., the ant that finds a complete path with the optimum cost).Using an updating rule, pheromone intensity is updated to determine the effect of the previously deposited pheromones.This paper adopts the updating rule that is defined according to an 'ant colony system' [35].Hence, the pheromone is updated by the best global ant.

7) Set of feasible vertices:
A set that depends on the problem and determines the set of the vertices of the graph that can be selected by the deciding ant when it is placed on vertex i .A set of feasible vertices is necessary to avoid forming a loop during the path construction.

8)
Cost function: a function that dependes on the problem and is assigned to each complete path representing how profitable the complete path is.

A. Ant Colony Optimization for the gragh coloring problem
The graph coloring problem is a well-known problem in graph theory; a feasible solution assigns a minimum number of colors (chromatic index) to the vertices ¢ of a graph ¢ ¢ ¢ = ( ‚ ) while avoiding the assignment of the same colors to the adjacent vertices.Using ACO for solving the graph coloring problem the following steps should be considered.( ) ( )

1) Construction graph: the graph of problem
The second probabilistic transition rule, ¢¢ j k ic p is defined for choosing a color j c for the current vertex.Equation (6)   defines the probabilistic function using the heuristic function, ¢¢ Two parameters, a and b determine the influence of pheromone concentration and heuristic function, respectively.The pararmeter t represents the current time in the algorithm.

5) A heuristic function:
A function is defined as in equation ( 7) as the first heuristic function ij h ¢ to estimate the desirability of selecting vertex j from the perspective of the k th ant at the the vertex i .The parameter k i is the set of adjacent vertices of the vertex i that have not been allocated colors from the perspective of the k th ant.While i is the set of the adjacent vertices of the vertex i .
The second heuristic function j ic ¢¢ h is defined to estimate the desirability of selecting the color j c for the vertex i from the perspective of the k th ant at the vertex i .Equation (8) calculates the heuristic function The parameter, _ BEST ANT j represents the set of feasible nodes from the perspective of the BEST_ANT h ant at the vertex j .The second pheromone intensity presents the desirability of choosing the color j c for the vertex i from the perspective of the Best_ANT.The updating rule of the second pheromone intensity is defined as equation (11)._ ( 1) .( 1) The parameter Equation ( 12) is defined on the basis of two sets: that are the set of allocated colors to the set of adjacent vertices and the set of feasible colors from the perspective of BEST_ANT placed at the vertex i .7) Feasible set: Two feasible sets are defined; the first one is related to the set of the vertices that can be selected by the deciding ant when it is placed on vertex i .So, it can be determined by k i and represents the set of adjacent vertices of the vertex i that have not been allocated colors from the perspective of the k th ant. the second one is realtaed to the set of colors k i that has not been allocated to the adjacent vertices of the vertex i when the k th ant is placed at the vertex i .

8) Cost function:
A function calculates the number of allocated colors to each complete path.For example, the cost function of the k th ant is calculated as (13) .

Here,
k is a set of the vertices that have been traversed by the the k th ant .
It should be noted the suggested ACO-based method to solve the graph colouring problem has been utilized to solve channel assignment in an ad hoc network.The obtained results showed good results in comparison with the genetic algorithm-based optimization method.

B. A centralized ACO-based clustering algorithm
As mentioned before, a clustering algorithm tries to find a minimum connected dominant set of a graph = ( ‚ ) .Using ACO for choosing cluster heads, the following steps should be considered.

1) Construction graph:
A graph as ¢ ¢ ¢ = ( ‚ ) ch ch ch that is a subset of = ( ‚ ).So the set of the vertices ¢ ch is a sub set of and the set of edges ¢ ch is a subset of .

2) Initialization of population:
The ant m ants are generated, each ant i.e, the k th ant is assigned a number as max k CH that determines the maximum number of the cluster heads that the the k th ant can be selected.

3) Probabilistic transition rule:
A probabilistic transition rule is used by each ant to make a decision to select the next vertex j as a cluster head.Thus, the probabilistic transition rule k ij p is used for selecting the vertex j as the next cluster head by the k th ant; while it placed at the vertex i .The probabilistic transition rule is defined on the basis of the heuristic function, ij h pheromone intensity, ij t and the feasible set of node )

4) A heuristic function:
A heurtic function that is defined as in equation ( 15) is used for choosing the vertex j as the cluster head by the k th ant; while it placed at the vertex i .

= +
5) Pheromone intensity : Pheromone intensity is defined to show the desirability of selecting vertex j to be a cluster head from the perspective of the BEST_ANT.So a node that causes a minimum cost function is more desireable.The quantity of phermones is calculated as equation (16).k i ìs the set of the vertices that have been selected as the cluster haeds by the the BEST_ANT when is placed at the vertex i .
6) Feasible set: A feasible set determines the vertices that can be selected as a cluster head.In cluster formation problem, k i is calculated in (17) and is the set of adjacent vertices of the vertex i that have not been selected as cluster heads and are not the adjacent vertices of a slected vertex.k i ìs the set of the vertices that have been selected as the cluster haeds by the the k th ant when is place at the vertex i

7) Cost function:
A function calculates the number of selected cluster heads for each complete path.For example, the cost function of the k th ant is calculated as k .

here,
k is a set of the vertices that have been selected as the cluster haeds by the the k th ant .

C. A disteributed ACO-based clustering algorithm
This subsection briefly explains how a distributed version of ACO can be implemented to solve cluster formation in ad hoc networks.The suggested algorithm is on the basis of a well-known distributed clustering algorithm that is referred to as Distributed Clustering Algorithm (DCA).As it has been explained in [17], in DCA, each ad hoc node decides to be a cluster head or a cluster member on the basis of its own knowledge about four parameters: its own ID (identitiy), its own weight, the IDs and the weights of its neighbors.
The step of a distributed ACO-based clustering can brifly explined as the follwing steps: 1) Each node and its neighbors exchange information about three parameters: the node's ID, the neighbors' ID and its role.Similar to [17] nodes that are cluster heads send a message to therir neighbors to clarify that they are cluster heads.
2) At the intialization state, each node starts to execute a centeralized ACO to select one cluster head among itself or its neigbors.
3) After a determined time, t, each node has found an optimal solution; so this node send the cost function of the optimal solution to their neigbors.
4) Each node comapres the cost function of its own optimal solution with the cost functions of its neighbors; if a node has the lowest cost function, it chooses it self as the a cluster head and sends a message to its neigbors to state that it is the cluster head.
5) The algorithm terminated when each node knows its rule as a cluster haed or a cluster member.

V. SIMULATION RESULTS
We have simulated several scenarios of an ad hoc network with the following assumptions: 1) No models for nodes' mobility have been considered.
2) Each node has a disc-shaped communication area and a disc-shaped interference area.
3) All of the nodes use similar transmission power, which is unchanged during the cluster formation and channel allocation procedure.
4) The cluster density has been defined as a performance measurement factor to evaluate the performance of this, the ACO-based clustering method.MATLAB is used to simulate different scenarios of ad hoc networks.
As the first experiment, networks with: 30, 40, 50 nodes with different transmission ranges (i.e., TR=20,30, 40 and 50 meters), are considered.The nodes are uniformly distributed in a 100 times 100 meters square area.Table 1 lists the obtained results from the ACO-based clustering algorithms and other clustering algorithms such as WCA, DMAC and MOBIC.As can be observed, the number of cluster heads in the formed cluster structure by ACO is less than other methods.It can be concluded that ACO provide a result that is desirable for minimizing number of clusters.
Figure 4. describes how the number of clusters has been changed by changing the transmission range and the size of the network.As can be observed when the transmission range increases the ACO-based clustering algorithm partitions the network into a small number of clusters ignoring the size of network.However, in a low transmission range, TR=20 meters, the number of cluster head has been affected by the size of the network.As future works, other constraints can be added, for example to control the transmission power of cluster heads and maximize the stability of the clustered structure.A distributed clustering method will be developed on the basis of ICA and ACO.

Fig. 1 .
Fig. 1.A communication graph of an ad hoc network with 14 nodes.
So the set of vertices ¢ c are similar to ¢ and ¢ c is a subset of ¢ .2) Initialization of population:A population of ant m ants is generated.Each ant is assigned a subset of colors (see Fig.3), that is randomly chosen from the available set of colors parameters c n determine the number of available colors that can be used to color the whole of the graph.3)An initial state: An initial state determines the starting vertex of the graph ¢

4 )
Probabilistic transition rule: A probabilistic transition rule is used by each ant to make a decision to move to the next vertex j in the graph coloring problem; morover, each ant should decide about assigning a color to the current vertex i .Thus, two probabilistic transition rules are defined.The first probabilistic transition rule ¢ k íj p is defined for choosing the next vertex j ; it is the probability of choosing the next vertex j by the k th ant; while it placed at the vertex i .It is defined on the basis of the heuristic function, ¢ ij h and pheromone intensity, ¢ ij t and the set of feasible nodes, k i .Equation (5) calculates the first probalistic transition rule.
the set of feasible colors from the perspective of the k th ant at the vertex i .

1 1
the desirability of selecting the j c color for the vertex i when the k th ant is placed at the vertex i .k h is the set of the feasible colors from the perspective of the k th ant at the vertex h that is a vertex from

6 )
Pheromone intensity: Pheromone intensity is defined as the desirability of selecting vertex j from the perspective of the BEST_ANT.Using the updating rule as(9), the pheromone intensity is updated to determine the effect of the previously deposited pheromones by the BEST_ANT. of phermone laid on edge and r is the evaporation rate.Equation(10) formulates _ ,

Table 1 .
Comparison between different clustering methods transmission range 50As the second experiment, networks with: 100, 200, 300 and 400 nodes are considered.The nodes are uniformly distributed in a 1000 times 1000 meters square area.The transmission range of each node are fixed and set to 250 meters, respectively.Table2lists the obtained results the ICA-based clustering method, ACO-based clustering algorithms and a clustering algorithm in a cognitive radio ad hoc network, CogMesh.As the table indicates the obtained results of ACO in a large scale network are comparable with other methods; in particular CogMesh that has been used to form a cluster structure in an ad hoc cognitive radio network.

Table 2 .
Comparison between different clustering methods for the second experiment.This paper proposed a new implementation of ACO for combinatorial optimization problems in ad hoc networks e.g., channel allocation and cluster formation.The suggested graph colouring algorithm is a new ACO-based algorithm; this algorithm can be copied to solve multi-objective optimization problems in cluster formation by defining multi-heuristic functions, multi-pheromone density rules and multi-updating transition rules.Moreover, it can be used to solve the channel-assignment problem, in particular TDMAbased channel assignment in ad hoc networks.The proposed cluster formation algorithm can be utilized in MANET, VANET, CRHAN, considering other objective functions as maximizing transmission rate, minimizing interference etc.The obtained results verify that the performances of the ACO-based clustering method are fairly good in comparison with other clustering algorithms.The main drawback of the proposed algorithm is being centralized and having fairly high time complexity in the case of having more than 200 ad hoc nodes.Using an ACO-based distributed method can improve the obtained results and address the proposed issue while reducing control communication overhead.