   
   func move() {
     velocity = acceleration
-    position = position + velocity
+    position = (position + velocity).fit(to: fieldSize)
   }
 }
 

        
        // Separation
        let sumSeparation = distances.reduce(Coordinate.zero) { (result, value) -> Coordinate in
          let divider = value.distance / individual.genome.separatingForce
          return result + (individual.position - value.individual.position) / divider
        }
        

  func accelerate(_ acceleration: Coordinate) {
    self.acceleration = self.acceleration + acceleration

    let magunitude = hypot(self.acceleration.x, self.acceleration.y)
    if magunitude > genome.maxVelocity {
      self.acceleration = self.acceleration * (genome.maxVelocity / magunitude)
    }
