code: def coordination_geometry_symmetry_measures_fallback_random(self,
                                                                  coordination_geometry,
                                                                  NRANDOM=10,
                                                                  points_perfect=None):
          
          permutations_symmetry_measures = [None] * NRANDOM
          permutations = list()
          algos = list()
          perfect2local_maps = list()
          local2perfect_maps = list()
          for iperm in range(NRANDOM):
              perm = np.random.permutation(
                  coordination_geometry.coordination_number)
              permutations.append(perm)
              p2l = {}
              l2p = {}
              for i_p, pp in enumerate(perm):
                  p2l[i_p] = pp
                  l2p[pp] = i_p
              perfect2local_maps.append(p2l)
              local2perfect_maps.append(l2p)
  
              points_distorted = self.local_geometry.points_wcs_ctwcc(
                  permutation=perm)
              sm_info = symmetry_measure(points_distorted=points_distorted,
                                         points_perfect=points_perfect)
              sm_info['translation_vector'] = self.local_geometry.centroid_with_centre
  
              permutations_symmetry_measures[iperm] = sm_info
              algos.append('APPROXIMATE_FALLBACK')
          return permutations_symmetry_measures, permutations, algos, local2perfect_maps, perfect2local_maps
docs: Returns the symmetry measures for a random set of permutations for the coordination geometry
          "coordination_geometry". Fallback implementation for the plane separation algorithms measures
          of each permutation
  
          :param coordination_geometry: The coordination geometry to be investigated
          :param NRANDOM: Number of random permutations to be tested
          :return: The symmetry measures for the given coordination geometry for each permutation investigated