class_docstr: Specifies parameters for multi-parameter Utility Analysis.
  
  All MultiParameterConfiguration attributes corresponds to attributes in
  pipeline_dp.AggregateParams.
  
  UtilityAnalysisEngine can perform utility analysis for multiple sets of
  parameters simultaneously. API for this is the following:
  1. Specify blue-print AggregateParams instance.
  2. Set MultiParameterConfiguration attributes (see the example below). Note
  that each attribute is a sequence of parameter values for which the utility
  analysis will be run. All attributes that have non-None values must have
  the same length.
  3. Pass the created objects to UtilityAnalysisEngine.aggregate().
  
  Example:
      max_partitions_contributed = [1, 2]
      max_contributions_per_partition = [10, 11]
  
      Then the utility analysis will be performed for
        AggregateParams(max_partitions_contributed=1, max_contributions_per_partition=10)
        AggregateParams(max_partitions_contributed=2, max_contributions_per_partition=11)
docstr: Returns AggregateParams with the index-th parameters.
docstr_tok: ["Returns","AggregateParams","with","the","index-th","parameters","."]
code: def get_aggregate_params(
      self, params: pipeline_dp.AggregateParams, index: int
  ) -> pipeline_dp.AggregateParams:
      """Returns AggregateParams with the index-th parameters."""
      params = copy.copy(params)
      if self.max_partitions_contributed:
          params.max_partitions_contributed = (
              self.max_partitions_contributed[index]
          )
      if self.max_contributions_per_partition:
          params.max_contributions_per_partition = (
              self.max_contributions_per_partition[index]
          )
      if self.min_sum_per_partition:
          params.min_sum_per_partition = self.min_sum_per_partition[
              index
          ]
      if self.max_sum_per_partition:
          params.max_sum_per_partition = self.max_sum_per_partition[
              index
          ]
      if self.noise_kind:
          params.noise_kind = self.noise_kind[index]
      if self.partition_selection_strategy:
          params.partition_selection_strategy = (
              self.partition_selection_strategy[index]
          )
      return params
  
file_path: pipelinedp/analysis/data_structures.py
imports: import copy
  import dataclasses
  from typing import Iterable, Optional, Sequence, Union
  import pipeline_dp
  from pipeline_dp import input_validators
label_desc: Use image node_id 3 for calling the MultiParameterConfiguration obj's underlying member method code with example usage: obj.get_aggregate_params(params, index) and returns: params