A metaheuristic approach for the unicost set covering problem

In the general or non-unicost Set Covering Problem (SCP), we are given m rows and n columns, each with a specified cost cj , and an (m× n) sparse matrix of zero-one elements aij . We say that row i can be covered by column j if and only if aij=1. We want to cover each row (at least once) with a subset of columns of minimum global cost. So we can formulate the problem through a binary linear programming model as follows: