Research Article

Efficient Scheduling of Scientific Workflows with Energy Reduction Using Novel Discrete Particle Swarm Optimization and Dynamic Voltage Scaling for Computational Grids

Algorithm 2

/*Pseudo code for pbDPSO algorithm*/
FOR each particle ()
REPEAT
  IF position falls below the minimum position
    Po[] minimum position
   FOR each position check for feasibility ()
       IF current position varies from personal best position
       Po[]
       END IF
       IF current position varies from global best position
       Po[]
       END IF
       IF Po[] = = = minimum position
       Po[] random value [minimum position, maximum position]
       END IF
    END FOR
  END IF
  IF position falls above the maximum position
    Po[] maximum position
    FOR each position check for feasibility ()
       IF current position varies from personal best position
       Po[]
       END IF
       IF current position varies from global best position
       Po[]
       END IF
       IF Po[] = = = maximum position
       Po[j] random value [minimum position, maximum position]
       END IF
    END FOR
  END IF
  IF position falls between maximum and minimum position
   FOR each position check for feasibility ()
       IF current position varies from personal best position
       Po[]
       END IF
       IF current position varies from global best position
       Po[]
       END IF
       IF Po[] = ] =
       Po[] random value [minimum position, maximum position]
       END IF
    END FOR
  END IF
UNTIL feasible solution occurs
END FOR