Research Article

A Bat-Inspired Sparse Recovery Algorithm for Compressed Sensing

Algorithm 2

Bat Algorithm (BA).
Fitness function:
Initialization:
Randomly initialize the positions and velocities of the bat population.
Initialize the pulse frequency of each bat according to formula (3).
Initialize the rate of pulse emission and the pulse loudness .
Calculate the fitness value of each bat and find the best solution in the population.
Set the stopping criterion .
Termination condition:
Iteration counter reaches or the fitness value is smaller than .
Iteration:
Step 1: Update the bat velocity and position according to formulas (3)∼(5);
Step 2: If (), select a random solution in the best solutions set and update position of this bat by the random walk around the selected best solution as shown in formula (5);
Step 3: Calculate the fitness value of each bat’s new position;
Step 4: If (), accept the new solution and adjust , according to formulas (7) and (8);
Step 5: Find the new best solution and update the best solutions set;
Step 6: If termination condition is satisfied, stop the iteration; otherwise, continue.