APPLICATION OF ANT COLONY OPTIMIZATION METAHEURISTIC ON SET COVERING PROBLEMS

. Ant Colony Optimization (ACO) metaheuristic is a multi-agent system in which the behaviour of each ant is inspired by the foraging behaviour of real ants to solve optimization problem. Set Covering Problems (SCP), on the other hand, deal with maximizing the coverage of every sub-set while the weight nodes used must be minimized. In this paper, ACO was adapted and used to solve a case of Set Covering Problem. The adapted ACO for solving the SCP was implemented as a computer program using SciLab 5.4.1. The problem of determining the optimal location of Wi-Fi Access Points using the 802.11n protocol in the UP Los Banos Math Building (MB) was solved using this metaheuristic. Results show that in order to have 100% coverage of the MB, 7 access points are required. Methodology of the study can be adapted and results of the study can be used by decision makers on related optimization problems.


Introduction
The Set Covering Problem (SCP) is a typical optimization problem that serves as a model for many applications in the real world. It is a Combinatorial Optimization Problem (COP) which can be formulated as an Integer Linear Programming (ILP) where the goal is to minimize the number of sets such that every element of the set from the universe will be covered and every set is either in the set cover or not. SCP has been used to model problems such as vehicle routing, nurse scheduling, airline crew scheduling, facility location problem, and resource allocation problem (Schiff, 2013).
According to Lessing et al (2004), SCP is an NP-hard problem with many developed algorithms that can be used to solve it. Some algorithms can solve a limited size and is also time consuming that is why metaheuristic is advised for solving such problem.
Metaheuristic is used to define heuristic methods and it is also a set of algorithmic concepts applicable to a very large set of problems. Ren, et al. (2008), reported that list of kind of heuristics were applied for the SCP and these are Genetic Algorithm (GA), Simulated Annealing Algorithm, and Tabu Search Algorithm. They also conducted a research to solve SCP based from the recently developed, populationbased metaheuristic named Ant Colony Optimization (ACO) algorithm.
ACO was published in the early 90's and it is a probabilistic technique about the simulation of real behavior of ants regarding how they function through indirect communication via pheromones (Brezina and Cickova, 2011). Pheromones are chemical substances excreted by ants to attract other ants that are seeking for food. Biologists have observed that ants tend to find the path with the shortest distance between a source of food and their colony which leads in the conclusion that it would be useful to study their individual behavior (Buezas. 2010). Solutions to a given optimization problem are obtained by a set of software agents called artificial ants. In applying ACO, the optimization problem must be transformed into the problem of finding the best path on a weighted graph. Hereafter, ants incrementally gets solutions as the graph goes on.
ACO is commonly used in solving Traveling Salesman Problem (TSP), but it is also applicable on Set Covering Problems (Dorigo and Stutzle, 2004).
Given a set of facilities and the areas covered by the facility, a number of ants determine what facility to choose using a probability function for ACO which is based on pheromone trails and heuristic information, while the area it chooses is randomized. After the chosen areas by the ant satisfies the system constraints or covers all the areas in the system, a next ant will proceed, and the pheromone trails and heuristic information will be updated. This will continue until all ants have passed, and the best solution for the problem is returned and recorded.
On 2008, Ren et al proposed a novel ACO-based approach, called Ant-Cover. It has three main differences between other existing ACO-based approaches: First, for constructing solutions, the approach used single-row-oriented method, next, the use of LaGrange dual information for the search in the solution space, lastly, the use of local search procedure is developed to maintain the feasibility and for the solutions to be improved by ants. This study used a customized Ant-Cover to get a faster near-optimal solution than other metaheuristics.
Due to the numerous problems about set covering, this paper is to adapt the Ant Colony Optimization algorithm to solve a Set Cover Problem. In line, this paper is concerned in determining the optimal placement of Wi-Fi Access Points in the University of the Philippines Los Baños (UPLB) Math Building using ACO metaheuristic.

Theoretical Framework
The Set Covering Problem is a Binary Integer Programming model that seeks to find the minimum number of facilities to be installed and their locations to each demand node is covered by at least one facility (Torregas, 1970).
Let I = set of all possible locations for installing a facility, J = set of all areas which are to be covered, if a facility is to be installed at site i, 0, otherwise; y j = 1, if whenever a facility is installed at site i the facility covers area j, 0, otherwise.
The model can be constructed as: 3) The objective function (1) determines the goal of the problem which is to minimize the number of facilities used. The first constraint (2) satisfies the condition that each area j should be covered by at least one facility and the second constraint (3) serves as the binary constraint.

Pseudocode
This paper adapts a similar pseudocode to Ren et al. (2008) which uses ACO on solving SCP. The following is the procedure of adapting ACO to solving SCP.
Pre-process the given SCP and initialize results Initialize pheromone trails, heuristic information, and related parameters while termination condition is not met do for ant i=1 to n (number of ants) do (a)Construct a solution based on SROM if system constraints are satisfied then move to next ant else repeat (a) end for Update pheromone trails and heuristic information end while Return the best solution found

Preprocessing of SCP (General)
Based on the SCP Formulation, we transform the problem into an m × n matrix, with m being the areas to be covered and n being the facilities. An element of the matrix will have a value of 1 defining that that area has been covered under that facility, while 0 if it has yet to be covered, i.e.,   Single row-oriented solution construction method is a novel single-row-oriented solution construction method which can generate solutions in a faster way (compared to other branch-and-bound/branchand-cut algorithms) and allows ants to explore broader solution areas (Ren and others, 2008).
Two of the main ideas of SROM on how it adapts ACO in solving SCP are to: • Randomly select a row I from the row set I • Select a column from the column set J using the probability • Randomly select a row i from the row set I • Select a column from the column set J using the probability where R t−1 denotes the set of uncovered rows before step t, and r t denotes the row chosen at step t. The time complexity of selecting a column from the set Ji is O(|Ji|). Let d be the density of SCP, the average number of columns covering a row can be obtained,ñ = dn. Then we can get a complete solution S with k columns in O(kñ) time. This time complexity is linear with the value ofñ. Generally, n n holds (Ren and others, 2008).

Pheromone Trail Update
Pheromone trails are decreased uniformly in order to simulate evaporation and allow ants to forget part of the history experience. Ants then deposit an amount of pheromone on the column contained in the best solution. After all the ants have completed a solution, the trails are updated as follows: otherwise.
Pheromone trail updates help the model to adapt to real-time changes, which is one of its advantages over other heuristics such as simulated annealing and genetic algorithm (Selvi and Umarani, 2010).

Heuristic Information Update
Heuristic Information considers the dual information associated with the still uncovered rows. It mines the specific information of the SCP and provides a good guideline for ants' search in the solution space. It is updated through: where: ϕ j = number of new rows that can be covered by column j, R = set of still uncovered rows.
These updates help the considered artificial ants in the heuristic to obtain the optimal solution that we need for our LP model (Abd-Alsabour and others, 2013).

Program Description
Application of Ant Colony Optimization Metaheuristic on Set Covering Problem program generates a near-optimal solution to a preprocessed SCP using ACO Metaheuristic. ACO metaheuristic was implemented in SciLab 5.4.1 under Microsoft Windows 7 on Intel Pentium Dual CPU 2.16 GHz, 2.0 Gb RAM with parameter values, β = 5, ρ = 0.99, ants=1000, tau(1)=heu(1)=1. The user inputs a specified number of facilities and areas associated, or provides a preprocessed m × n matrix which will then be run to provide a near-optimal value, with its associated optimal solution, number of iterations needed before attaining the near-optimal value, and the running time of the program. Table 3 summarizes the description of the ACO on SCP program.

Application
In order to further determine the effectiveness and efficiency of how ACO adapts in solving ACO, the study was applied to a local set covering problem and used to determine the optimal place of Wi-Fi Routers in Math Building. Data used was provided by the UPLB-ITC and OVCPD. In this paper, 802.11n Wi-Fi Routers were considered as the facility, while area was based on the division of area/rooms in Math Building.
Since math building is a two-storey building, the problem was divided into two parts (1st floor and 2nd floor) for better explanation of the study and application. Note however that the problem can also be formulated as one SCP Model. Constraints of the model indicate that an area should be covered by at least one repeater. This will guarantee that the entire Math Building is covered.

Preprocessing of SCP (Specific)
Using the definition of the decision variables and a range of 140ft., with x i , i=1,...,18 for the first floor and j=1,...,10 for the second floor, the pre-processed matrix for the SCP is given in Table 4 and 5 for the first and second floors respectively in the Math Building.
Math Building 1st Floor: Table 4. m x n matrix representing SCP Formulation of MB First Floor

Program Results
After 1000 iterations/ants, ACO on SCP Program determined a near-optimal solution of 7 for the UPLB Math Building (5 for the first floor, 2 for the second floor). These Wi-Fi routers must then be placed at area number: 3, 6, 10, 12, 14 for the first floor, and 3, 6 for the second floor. However, the associated optimal solution given by the program may not be unique and may have other results which still give a near-optimal solution to the problem.
Optimal Wi-Fi Routers:  Both tables show that both programs obtained the same optimal value for each SCP although ACO on SCP Program may not be consistent since it only computes for a near-optimal value. It can also be observed that the running time for both programs show that they are quite on par with each other. Though ACOonSCP has a larger running time because it finishes 1000 iterations before producing an optimal solution, expanding the problem to a large number of variables (representative to the real-world problems) will give LiPS more computing time since it uses simplex to compute for the optimal solution. Not to mention, more difficulty in manually inputting values and the limitation on the number of variables and constraints that the LiPS program have (Hood, 2016). ACO on SCP Program is not consistent on number of iterations before producing an optimal result, but it is quite expected since it has a nature of a metaheuristic and operates based mainly on random numbers. Still, 100% of areas have been covered by both programs using the associated optimal solution they generated. Also, since the ants used in the study are "normal ants" in ACO terms, adding more ants/iterations to the ACOonSCP will not have that much effect on the result, and may even further prolong the iteration time (Johansson and Pettersson, 2018).

Comparison to Current ITC Wi-Fi Set-up
According to the data from the University of the Philippines Los Baños Information Technology Center (UPLB-ITC), Math Building currently has 1 Wi-Fi router installed on a certain area which covers 20% of the whole Math Building. Meanwhile, based on the result of ACO on SCP Program, 7 are needed to cover the entire Math Building (1st Floor and 2nd Floor).
Number of Routers Areas Covered ACO on SCP Program 7 100% LiPS (Dynamic Programming) 1 20% Table 8. Comparison between proposed number of ACO on SCP Program to current Wi-Fi Placement

Summary and Conclusion
In this research, Ant Colony Optimization Metaheuristic was applied to the Set Covering Problem. Single Row Oriented Method was used to generate solutions. Pheromone trails and heuristic information were updated to provide a faster and near-optimal solution. Solutions were returned, and the optimal solution was computed through a Scilab 5.4.1 program. Specifically, ACO was applied to a specific SCP. A program was implemented to solve the SCP. Then, data gathered from ITC and OVCPD were used to construct a SCP based on Optimal Allocation of Wi-Fi on the Math Building and was solved through the program. Results have shown that to cover the entire MB, seven (7) 802.11n Wi-Fi Routers are needed. Computational results show that the proposed algorithm is efficient in generating high quality solutions. Comparisons with Dynamic Program revealed that it is competitive in solving the SCP. The work done in this paper also demonstrates the versatility of ACO and its high potential in solving hard combinatorial optimization problems. For extensions of the paper, branch-and-bound or branch-and-cut algorithms can be used to solve these types of problems. Having a comparison between our approach, other ACO approaches, and other metaheuristics approach can help determine which metaheuristics are suited for certain SCPs.