gamma#

eclypse.policies.distribution.gamma(*, node_assets=None, edge_assets=None, node_distribution=(2.0, 0.5), 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]#

Apply multiplicative gamma noise to selected node and edge assets.

Parameters:
  • node_assets (str | list[str] | None) – Node assets to perturb.

  • edge_assets (str | list[str] | None) – Edge assets to perturb.

  • node_distribution (tuple[float, float]) – Default (shape, scale) pair used for node multipliers.

  • edge_distribution (tuple[float, float] | None) – Default (shape, scale) pair used for edge multipliers. Defaults to node_distribution.

  • node_asset_distributions (dict[str, tuple[float, float]] | None) – Optional per-node-asset overrides for node_distribution.

  • edge_asset_distributions (dict[str, tuple[float, float]] | None) – Optional per-edge-asset overrides for edge_distribution.

  • minimum (float) – Lower clamp applied after perturbation.

  • node_ids (list[str] | None) – Optional explicit list of node ids to target.

  • node_filter (NodeFilter | None) – Optional predicate to filter target nodes.

  • edge_ids (list[tuple[str, str]] | None) – Optional explicit list of target edges.

  • edge_filter (EdgeFilter | None) – Optional predicate to filter target edges.

Returns:

A graph update policy applying gamma multiplicative noise.

Return type:

UpdatePolicy