Research Article

Resource Aware Sensor-to-Actor Allocation Framework for WSANs Based on Voronoi Cells Theory

Algorithm 2

Selection techniques.
Input: Senors,Actor, SelectionTechnique, ASC
Output: SelectedSensors
if Technique==Random then
  SelectedSensors = Random(Sensors,ASC)
end
else if Technique == Rounds then
  for Sensor in Sensors do
    distancesSensor=Euclidean_Distance(Sensor,Actor)
  end
  SortedNodes= Sort(Sensors,distances)
  iteration=0
  AssignedSensors =0
  while AssignedSensors<ASC do
    if iteration is even then
     SelectedSensors.Add(SortedNodes.First())
    end
    else
     SelectedSensors.Add(SortedNodes.Last())
    end
    AssignedSensors++;
  end
else if Technique==Tensor then
  for Sensor in Sensors do
    sum = sum + Euclidean_Distance(Sensor,Actor);
  end
  for Sensor in Sensors do
    Sensor.Normalized_Distance = Euclidean_Distance(Sensor,Actor)/sum
    Sensor.weight = Random(0,1)
    Sensor.Lerp= Lerp(Sensor.Normalized_Distance,Sensor.weight)
  end
  SortedSensors=SortSensorsByLerp(Sensors)
  SelectedSensors = SortedSensors[:ASC
else if Technique == Distance then
  SortedSensors = SortSensorsByDistance(Sensors,Actor)
  SelectedSensors = SortedSensors[:ASC