docs: def _calc_probability(self):
          '''Determines the probability that each bee will be chosen during the
          onlooker phase; also determines if a new best-performing bee is found
          '''
  
          self._logger.log('debug', 'Calculating bee probabilities')
          self.__verify_ready()
          self._total_score = 0
          for employer in self._employers:
              self._total_score += employer.score
              if self.__update(employer.score, employer.values, employer.error):
                  self._logger.log(
                      'info',
                      'Update to best performer -'
                      ' error: {} | score: {} | values: {}'.format(
                          employer.error,
                          employer.score,
                          employer.values
                      )
                  )
          for employer in self._employers:
              employer.calculate_probability(self._total_score)