SDA Pseudocode

Step 0: Preparation

Select the number of search points m 2 , parameters 0 θ < 2 π , 0 < r < 1 of S n ( r , θ ) , and maximum number of iterations k m a x

Set k = 0 .

Step 1: Initialization

Set initial points x i ( 0 ) R n , i = 1 , 2 , m in the feasible region at random and centre x as x = x i g ( 0 ) , i g = arg min i f ( x i ( 0 ) ) , i = 1 , 2 , , m .

Step 2: Updating xi

x i ( k + 1 ) = S n ( r , θ ) x i ( k ) ( S n ( r , θ ) I n ) x

i = 1 , 2 , m .

Step 3: Updating x

x = x i g ( k + 1 ) ,

i g = arg min i f ( x i ( k + 1 ) ) , i = 1 , 2 , , m .

Step 4: Checking termination criterion

If k = k max then terminate. Otherwise set k = k + 1 , and return to step 2