discrete#
- eclypse.policies.distribution.discrete(*, node_assets=None, edge_assets=None, node_distribution=((1.0, 1.0),), edge_distribution=None, node_asset_distributions=None, edge_asset_distributions=None, minimum=0.0, node_ids=None, node_filter=None, edge_ids=None, edge_filter=None)[source]#
Sample numeric multipliers from weighted choices.
- Parameters:
node_assets (str | list[str] | None) – Optional node asset key selector.
edge_assets (str | list[str] | None) – Optional edge asset key selector.
node_distribution (DiscreteDistribution) – Default
(value, weight)choices for node assets.edge_distribution (DiscreteDistribution | None) – Default choices for edge assets. When omitted,
node_distributionis reused.node_asset_distributions (dict[str, DiscreteDistribution] | None) – Optional per-node-asset choices.
edge_asset_distributions (dict[str, DiscreteDistribution] | None) – Optional per-edge-asset choices.
minimum (float) – Lower bound after applying the sampled multiplier.
node_ids (list[str] | None) – Optional explicit node identifiers to mutate.
node_filter (NodeFilter | None) – Optional predicate receiving
(node_id, data).edge_ids (list[tuple[str, str]] | None) – Optional explicit edge identifiers to mutate.
edge_filter (EdgeFilter | None) – Optional predicate receiving
(source, target, data).
- Returns:
Policy that multiplies selected numeric assets by discrete samples.
- Return type: