Using the Firefly Optimization Method to Solve the Weighted Set Covering Problem