(InflGame.domains.rd)#
resource_distribution_choice#
- InflGame.domains.rd.resource_distribution_choice(bin_points, resource_type, resource_parameters)#
Select and compute a resource distribution based on the specified type and parameters.
This function serves as the main entry point for creating resource distributions in influencer games. It dispatches to the appropriate distribution function based on the resource_type parameter.
- Parameters:
- bin_pointsnp.ndarray
Points where the resource distribution is evaluated. For 1D distributions, this is a 1D array. For 2D distributions, this is an \((N, 2)\) array of coordinate pairs.
- resource_typestr
Type of resource distribution to compute. Available options:
'beta': 1D beta distribution on the interval (0,1); seebeta_distribution'dirichlet_distribution': Dirichlet distribution for resources on a probability 3-simplex; seedirichlet_distribution'multi_modal_gaussian_distribution_1D': 1D mixture of Gaussian kernels; seemulti_modal_gaussian_distribution_1D'multi_modal_gaussian_distribution_2D': 2D mixture of multivariate Gaussian kernels; seemulti_modal_gaussian_distribution_2D'multi_modal_gaussian_distribution_2D_triangle': Alias for 2D multivariate Gaussian on triangular domain'multi_modal_gaussian_distribution_2D_square': Alias for 2D multivariate Gaussian on rectangular domain
- resource_parameterslist | np.ndarray
Parameters for the specified resource distribution. Format depends on resource_type:
For
'beta':[alpha, beta]For
'dirichlet_distribution':[alpha_1, alpha_2, ..., alpha_k]For
'multi_modal_gaussian_distribution_1D':[stds, means, mode_factors]For
'multi_modal_gaussian_distribution_2D':[covariance_matrices, means]
- Returns:
- np.ndarray
Computed resource distribution values at the specified bin_points.
- Raises:
- str
Returns error message string if resource_type is not recognized.
Examples
>>> bin_points = np.linspace(0, 1, 100) >>> resources = resource_distribution_choice(bin_points, 'beta', [2, 5]) >>> resources.shape (100,)
- No-index: