gemseo / algos / aggregation

aggregation_func module

Constraint aggregation methods.

Transform a constraint vector into one scalar equivalent or quasi equivalent constraint.

gemseo.algos.aggregation.aggregation_func.aggregate_iks(constr_fct, indices=None, rho=100.0, scale=1.0)[source]

Constraints aggregation method for inequality constraints.

See [KH15].

Parameters:
  • constr_fct (MDOFunction) – The initial constraint function.

  • indices (Sequence[int] | None) – The indices to generate a subset of the outputs to aggregate. If None, aggregate all the outputs.

  • scale (float | ndarray) –

    The scaling factor for multiplying the constraints.

    By default it is set to 1.0.

  • rho (float) –

    The multiplicative parameter in the exponential.

    By default it is set to 100.0.

Returns:

The aggregated function.

Return type:

MDOFunction

gemseo.algos.aggregation.aggregation_func.aggregate_ks(constr_fct, indices=None, rho=100.0, scale=1.0)[source]

Aggregate constraints for inequality constraints.

See [KH15] and [KS83].

Parameters:
  • constr_fct (MDOFunction) – The initial constraint function.

  • indices (Sequence[int] | None) – The indices to generate a subset of the outputs to aggregate. If None, aggregate all the outputs.

  • scale (float | ndarray) –

    The scaling factor for multiplying the constraints.

    By default it is set to 1.0.

  • rho (float) –

    The multiplicative parameter in the exponential.

    By default it is set to 100.0.

Returns:

The aggregated function.

Return type:

MDOFunction

gemseo.algos.aggregation.aggregation_func.aggregate_max(constr_fct, indices=None, scale=1.0)[source]

Transform a vector of equalities into a max of all values.

Parameters:
  • constr_fct (MDOFunction) – The initial constraint function.

  • indices (Sequence[int] | None) – The indices to generate a subset of the outputs to aggregate. If None, aggregate all the outputs.

  • scale (float | ndarray) –

    The scaling factor for multiplying the constraints.

    By default it is set to 1.0.

Returns:

The aggregated function.

Return type:

MDOFunction

gemseo.algos.aggregation.aggregation_func.aggregate_sum_square(constr_fct, indices=None, scale=1.0)[source]

Transform a vector of equalities into a sum of squared constraints.

Parameters:
  • constr_fct (MDOFunction) – The initial constraint function.

  • indices (Sequence[int] | None) – The indices to generate a subset of the outputs to aggregate. If None, aggregate all the outputs.

  • scale (float | ndarray) –

    The scaling factor for multiplying the constraints.

    By default it is set to 1.0.

Returns:

The aggregated function.

Return type:

MDOFunction

gemseo.algos.aggregation.aggregation_func.check_constraint_type(function_type)[source]

Decorate a function to check whether it is of the expected type.

Parameters:

function_type (str) – The expected function type, "ineq" or "eq".

Returns:

The decorated function.

Return type:

Callable[[Callable[[Any], Any]], Callable[[Any], Any]]