omegalpes.actor.operator_actors package

Submodules

omegalpes.actor.operator_actors.consumer_actors module

This module describes the Consumer actor

Few objectives and constraints are available.

Objectives :
  • maximize_consumption

  • minimize_consumption

  • minimize_co2_consumption

  • minimize_consumption_costs

Constraints :
  • energy_consumption_minimum

  • energy_consumption_maximum

  • power_consumption_minimum

  • power_consumption_maximum

class omegalpes.actor.operator_actors.consumer_actors.Consumer(name, operated_unit_list, operated_node_list=None, verbose=True)[source]

Bases: OperatorActor

Description

Consumer class inherits from the the class OperatorActor. It enables one to model a consumer actor.

add_energy_consumption_maximum(max_e_tot, cst_operated_unit_list=None)[source]

To create the actor constraint of a maximum of energy consumption.

Parameters:
  • max_e_tot – Maximum of the total energy consumption over the study period

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_energy_consumption_minimum(min_e_tot, cst_operated_unit_list=None)[source]

To create the actor constraint of a minimum of energy consumption.

Parameters:
  • min_e_tot – Minimum of the total energy consumption over the study period

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_power_consumption_by_unit_maximum(max_p, time, cst_operated_unit_list=None)[source]

To create the actor constraint of a maximum of power consumption for each unit.

Parameters:
  • max_p – Maximum of the power consumption. May be an int, float or a list with the size of the period study

  • time – period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_power_consumption_by_unit_minimum(min_p, time, cst_operated_unit_list=None)[source]

To create the actor constraint of a minimum of power consumption for each unit.

Parameters:
  • min_p – Minimum of the power consumption. May be an int, float or a list with the size of the period study

  • time – period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_power_consumption_total_maximum(max_p, time, cst_operated_unit_list=None)[source]

To create the actor constraint of a maximum of power consumption.

Parameters:
  • max_p – Minimum of the power consumption. May be an int, float or a list with the size of the period study

  • time – period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_power_consumption_total_minimum(min_p, time, cst_operated_unit_list=None)[source]

To create the constraint of a minimum of power consumption considering all the units.

Parameters:
  • min_p – Minimum of the power consumption. May be an int, float or a list with the size of the period study

  • time – period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

maximize_consumption(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to maximize the consumption of the consumer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_co2_consumption(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to minimize the co2 emissions due to the consumer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_consumption(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to minimize the consumption of the consumer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_consumption_cost(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to minimize the expenses due to the consumer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

omegalpes.actor.operator_actors.grid_operator_actors module

This module describes the grid operator

Few objectives and constraints are available.

Objectives :

Constraints :

class omegalpes.actor.operator_actors.grid_operator_actors.ElectricityGridOperator(name, operated_node_list, verbose=True)[source]

Bases: OperatorActor

Description

Electricity_grid_operator class inherits from the the class OperatorActor. It,enables one to model a grid operator actor.

add_energy_transfer_maximum(max_e_tot, cst_operated_unit_list=None, cst_operated_exports_list=None)[source]

To create the actor constraint of a maximum of energy collected.

Parameters:
  • max_e_tot – Maximum of the total energy collected over the study period

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

minimize_capacity(obj_operated_unit_list=None, weight=1, pc_max_ratio=None, pd_max_ratio=None, max_capacity=None, pareto=False)[source]

To create the objective in order to minimize the capacity of the thermal storage of the HeatGridOperator’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty.

  • weight – Weight coefficient for the objective

  • max_capacity – maximal capacity that can be ensured (kWh)

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_energy_transfer(obj_operated_unit_list=None, obj_operated_exports_list=None, pareto=False, weight=1)[source]

To create the objective in order to maximize the consumption of the consumer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

class omegalpes.actor.operator_actors.grid_operator_actors.HeatGridOperator(name, operated_node_list, operated_unit_list=None, verbose=True)[source]

Bases: OperatorActor

Description

Electricity_grid_operator class inherits from the the class OperatorActor. It enables one to model a grid operator actor.

add_RR_energy_rate_minimum_at_each_time_step(percentage_rate=50)[source]

To create the actor constraint of a minimum of a percentage rate (50% by default) of renewable or recovery energy at each time step.

Parameters:

percentage_rate – Minimum of the percentage rate of renewable or recovery energy. 50% by default following the TVA reduction

add_RR_energy_rate_minimum_over_the_study(percentage_rate=50)[source]

To create the actor constraint of a minimum of a percentage rate (50% by default) of renewable or recovery energy over the study.

Parameters:

percentage_rate – Minimum of the percentage rate of renewable or recovery energy. 50% by default following the TVA reduction

maximize_RR_energy_rate(weight=1, pareto=False)[source]

To create the objective in order to maximize the percentage rate of renewable or recovery energy over the study

minimize_capacity(obj_operated_unit_list=None, weight=1, pc_max_ratio=None, pd_max_ratio=None, max_capacity=None, soc_0=None, pareto=False)[source]

To create the objective in order to minimize the capacity of the thermal storage of the HeatGridOperator’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty.

  • weight – Weight coefficient for the objective

  • max_capacity – maximal capacity that can be ensured (kWh)

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_production(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to minimize the production of the HeatGridOperator’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty.

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

omegalpes.actor.operator_actors.operator_actors module

This module defines the operator_actor and its scope of responsibility

class omegalpes.actor.operator_actors.operator_actors.OperatorActor(name, operated_unit_type_tuple, operated_unit_list=None, operated_node_list=None, verbose=True)[source]

Bases: Actor

Description

OperatorActor class inherits from the the basic class Actor. It enables one to model an actor who operates energy units which is part of its scope of responsibility. An operator actor has objectives and constraints which are linked to the energy units he operates.

Attributes

  • name : name of the actor

  • operated_unit_list: list of the energy units operated by the actor or more precisely in its scope of responsibility

omegalpes.actor.operator_actors.producer_actors module

This module describes the Producer actor

Few objectives and constraints are available.

Objectives :
  • maximize_production

  • minimize_production

  • minimize_time_of_use

  • minimize_co2_emissions

  • minimize_costs

  • minimize_operating_cost

  • minimize_starting_cost

Constraints :
  • energy_production_minimum

  • energy_production_maximum

  • power_production_minimum

  • power_production_maximum

class omegalpes.actor.operator_actors.producer_actors.Producer(name, operated_unit_list, operated_node_list=None, verbose=True)[source]

Bases: OperatorActor

Description

Producer class inherits from the the class OperatorActor. It enables one to model an energy producer actor.

add_energy_production_maximum(max_e_tot, cst_operated_unit_list=None)[source]

To create the actor constraint of a maximum of energy production.

Parameters:
  • max_e_tot – Maximum of the total energy production over the period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_energy_production_minimum(min_e_tot, cst_operated_unit_list=None)[source]

To create the actor constraint of a minimum of energy production.

Parameters:
  • min_e_tot – Minimum of the total energy production over the period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_power_production_by_unit_maximum(max_p, time, cst_operated_unit_list=None)[source]

To create the actor constraint of a maximum of power production for each unit.

Parameters:
  • max_p – Maximum of the power production. May be an int, float or a list with the size of the period study

  • time – period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_power_production_by_unit_minimum(min_p, time, cst_operated_unit_list=None)[source]

To create the actor constraint of a minimum of power production for each unit.

Parameters:
  • min_p – Minimum of the power production. May be an int, float or a list with the size of the period study

  • time – period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_power_production_total_maximum(max_p, time, cst_operated_unit_list=None)[source]

To create the actor constraint of a maximum of power production.

Parameters:
  • max_p – Minimum of the power production. May be an int, float or a list with the size of the period study

  • time – period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_power_production_total_minimum(min_p, time, cst_operated_unit_list=None)[source]

To create the constraint of a minimum of power production considering all the units.

Parameters:
  • min_p – Minimum of the power production. May be an int, float or a list with the size of the period study

  • time – period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

add_temporary_stop(time, start='YYYY-MM-DD HH:MM:SS', end='YYYY-MM-DD HH:MM:SS', period_index=None, cst_production_unit_list=None)[source]

To create the actor constraint giving the possibility to stop the production during a period.

Parameters:
  • start – start of the stop period

  • end – end of the stop period

  • period_index – period index for the stop period, to use instead of start and end

  • cst_production_unit_list – List of units on which the constraint will be applied. Might be empty.

maximize_production(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to maximize the production of the producer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty.

  • weight – Weight coefficient for the objective

minimize_co2_emissions(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to minimize the co2 emissions of the producer’s units (all or part of them). based on the quantity “co2_emission”

Parameters:
  • obj_operated_unit_list – list of the operated energy units on which the objective will be applied

  • weight – weight of the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_costs(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to minimize the cost of the producer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – list of the operated energy units on which the objective will be applied

  • weight – weight of the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_operating_cost(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to minimize the operating costs of the producer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – list of the operated energy units on which the objective will be applied

  • weight – weight of the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_production(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to minimize the production of the producer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty.

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_starting_cost(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to minimize the starting costs of the producer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – list of the operated energy units on which the objective will be applied

  • weight – weight of the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_time_of_use(obj_operated_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to minimize the time of use of the producer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty.

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

power_consumption_maximum(max_p, time, cst_operated_unit_list=None)[source]

DEPRECATED: please use

add_power_production_total_maximum or

add_power_production_by_units_maximum instead

To create the actor constraint of a maximum of power consumption.

Parameters:
  • max_p – Maximum of the power consumption. May be an int, float or a list with the size of the period study

  • time – period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

power_consumption_minimum(min_p, time, cst_operated_unit_list=None)[source]

DEPRECATED: please use

add_power_production_total_minimum or

add_power_production_by_units_minimum instead

To create the actor constraint of a minimum of power consumption.

Parameters:
  • min_p – Minimum of the power consumption. May be an int, float or a list with the size of the period study

  • time – period of the study

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

omegalpes.actor.operator_actors.prosumer_actors module

This module describes the Prosumer (producer and consumer) actor

class omegalpes.actor.operator_actors.prosumer_actors.Prosumer(name, operated_consumption_unit_list, operated_production_unit_list, operated_storage_unit_list, operated_node_list=None, verbose=True)[source]

Bases: Consumer, Producer

Description

Prosumer class inherits from the the class OperatorActor, Consumer and Producer. It enables one to model an actor which is at the same time an energy producer and consumer

add_fixed_repartition_key(pv_consumption_list, pv_prod_tot)[source]
add_nb_unit_maximum(nb_unit_max, energy_unit)[source]
add_nb_unit_minimum(nb_unit_min, energy_unit)[source]
maximize_conso_prod_match(time, obj_operated_consumption_unit_list=None, obj_operated_production_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to match at each time the consumption with the local production of the prosumer’s units (all or part of them).

Parameters:
  • obj_operated_consumption_unit_list – List of consumption units on which the objective will be applied. Might be empty.

  • obj_operated_production_unit_list – List of production units on which the objective will be applied. Might be empty.

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

maximize_selfconsumption_rate(time, obj_operated_production_unit_list=None, obj_operated_selfconsummed_production_export_list=None, obj_operated_selfconsummed_production_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to maximize the selfconsumption rate of the prosumer’s units (all or part of them) WHILE maximizing the load matching selfconsummed production is calculated with the export nodes.

Selfconsumption rate = selfconsummed production / total production

Parameters:
  • obj_operated_production_unit_list – List of production units on which the objective will be applied. Might be empty.

  • obj_operated_selfconsummed_production_export_list – List of production exports from nodes on which the objective will be applied. Might be empty.

  • obj_operated_selfconsummed_production_unit_list – List of production units on which the objective will be applied. Might be empty.

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

maximize_selfproduction_rate(time, obj_operated_consumption_unit_list=None, obj_operated_selfproduced_consumption_export_list=None, obj_operated_selfproduced_consumption_unit_list=None, weight=1, pareto=False)[source]

To create the objective in order to maximize the selfproduction rate of the prosumer’s units (all or part of them) WHILE maximizing the load matching selfproduced consumption may required export nodes

Selfproduction rate = selfproduced consumption / total consumption

Parameters:
  • obj_operated_consumption_unit_list – List of consumption units on which the objective will be applied. Might be empty.

  • obj_operated_selfproduced_consumption_export_list – List of production exports from nodes on which the objective will be applied. Might be empty.

  • obj_operated_selfproduced_consumption_unit_list – List of production units on which the objective will be applied. Might be empty.

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

minimize_capacity(obj_operated_unit_list=None, weight=1, pc_max_ratio=None, pd_max_ratio=None, max_capacity=None, soc_0=None, pareto=False)[source]

To create the objective in order to minimize the capacity of the thermal storage of the HeatGridOperator’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty.

  • weight – Weight coefficient for the objective

  • max_capacity – maximal capacity that can be ensured (kWh)

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

omegalpes.actor.operator_actors.supplier_actors module

This module describes the grid operator

Few objectives and constraints are available.

Objectives :

Constraints :

class omegalpes.actor.operator_actors.supplier_actors.Supplier(name, operated_consumption_unit_list, operated_production_unit_list, operated_node_list=None, verbose=True)[source]

Bases: OperatorActor

Description

Supplier class inherits from the the class OperatorActor, Consumer and Producer. It enables one to model a supplier.

add_energy_collected_maximum(max_e_tot, cst_operated_unit_list=None, cst_operated_exports_list=None)[source]

To create the actor constraint of a maximum of energy collected.

Parameters:
  • max_e_tot – Maximum of the total energy collected over the study period

  • cst_operated_unit_list – List of units on which the constraint will be applied. Might be empty.

minimize_energy_collection(obj_operated_unit_list=None, obj_operated_exports_list=None, pareto=False, weight=1)[source]

To create the objective in order to maximize the consumption of the consumer’s units (all or part of them).

Parameters:
  • obj_operated_unit_list – List of units on which the objective will be applied. Might be empty

  • weight – Weight coefficient for the objective

  • pareto – if True, OMEGAlpes calculates a pareto front based on this objective (two objectives needed)

Module contents