(num_groups: int)
return p_star
Describe the order in which groups move

    Parameters
    ---------
    num_groups : int

    Returns
    -------
    np.ndarray
        Matrix P* - size (g-by-g)
Describe the order in which groups move
Describe the order in which groups move
def _generate_p_star(num_groups: int) -> np.ndarray:
    """Describe the order in which groups move

    Parameters
    ---------
    num_groups : int

    Returns
    -------
    np.ndarray
        Matrix P* - size (g-by-g)
    """
    p_star = np.eye(num_groups, num_groups)
    rd.shuffle(p_star)
    return p_star
def _generate_p_star ( num_groups : int ) -> np . ndarray : p_star = np . eye ( num_groups , num_groups ) rd . shuffle ( p_star ) return p_star