cea.optimization.master package

Submodules

cea.optimization.master.cost_model module

cea.optimization.master.crossover module

Crossover routines

class cea.optimization.master.crossover.CrossOverMethodsContinuous(crossover_method)[source]

Bases: object

mutation methods for integers

__init__(crossover_method)[source]

x.__init__(…) initializes x; see help(type(x)) for signature

crossover(individual_1, individual_2, probability)[source]
class cea.optimization.master.crossover.CrossOverMethodsInteger(crossover_method)[source]

Bases: object

mutation methods for integers

__init__(crossover_method)[source]

x.__init__(…) initializes x; see help(type(x)) for signature

crossover(individual_1, individual_2, probability)[source]
cea.optimization.master.crossover.crossover_main(ind1, ind2, indpb, column_names, heating_unit_names_share, cooling_unit_names_share, column_names_buildings_heating, column_names_buildings_cooling, district_heating_network, district_cooling_network, technologies_heating_allowed, technologies_cooling_allowed, crossover_method_integer, crossover_method_continuous)[source]

cea.optimization.master.data_saver module

cea.optimization.master.emissions_model module

cea.optimization.master.emissions_model.calc_emissions_Whyr_to_tonCO2yr(E_Wh_yr, factor_kgCO2_to_MJ)[source]
cea.optimization.master.emissions_model.calc_pen_Whyr_to_MJoilyr(E_Wh_yr, factor_MJ_to_MJ)[source]

cea.optimization.master.evaluation module

cea.optimization.master.generation module

Create individuals

cea.optimization.master.generation.calc_building_connectivity_dict(building_names_all, building_names_heating, building_names_cooling, DHN_barcode, DCN_barcode)[source]
cea.optimization.master.generation.generate_main(individual_with_names_dict, column_names, column_names_buildings_heating, column_names_buildings_cooling, district_heating_network, district_cooling_network, technologies_heating_allowed, technologies_cooling_allowed)[source]

Creates an individual configuration for the evolutionary algorithm. The individual is divided into four parts namely Heating technologies, Cooling Technologies, Heating Network and Cooling Network Heating Technologies: This block consists of heating technologies associated with % of the peak capacity each technology is going to supply, i.e. 10.1520.2030, which translates into technology 1 corresponding to 15% of peak capacity, technology 2 corresponding to 20% and technology 3 corresponding to 0%. 0% can also be just done by replacing 3 with 0. The technologies block is then followed by supply temperature of the DHN and the number of units it is supplied to among AHU, ARU, SHU. So if it is 6 degrees C supplied by DHN to AHU and ARU, it is represented as 6.02. The temperature is represented with 1 decimal point. Cooling Technologies: This follows the same syntax as heating technologies, but will be represented with cooling technologies. The block length of heating and cooling can be different. Heating Network: Network of buildings connected to centralized heating Cooling Network: Network of buildings connected to centralized cooling. Both these networks can be different, and will always have a fixed length corresponding to the total number of buildings in the neighborhood :param nBuildings: number of buildings :type nBuildings: int :return: individual: representation of values taken by the individual :rtype: list

cea.optimization.master.generation.individual_to_barcode(individual, building_names_all, building_names_heating, building_names_cooling, column_names, column_names_buildings_heating, column_names_buildings_cooling)[source]

Reads the 0-1 combination of connected/disconnected buildings and creates a list of strings type barcode i.e. (“12311111123012”) :param individual: list containing the combination of connected/disconnected buildings :type individual: list :return: indCombi: list of strings :rtype: list

cea.optimization.master.generation.populate_individual(empty_individual_with_names_dict, name_share_conversion_technologies, technologies_allowed, columns_buildings_name)[source]

cea.optimization.master.master_main module

cea.optimization.master.master_to_slave module

cea.optimization.master.mutations module

Mutation routines

class cea.optimization.master.mutations.MutationMethodContinuos(mutation_method)[source]

Bases: object

mutation methods for continuos variables

__init__(mutation_method)[source]

x.__init__(…) initializes x; see help(type(x)) for signature

mutate(individual, probability)[source]
class cea.optimization.master.mutations.MutationMethodInteger(mutation_method)[source]

Bases: object

mutation methods for integers

__init__(mutation_method)[source]

x.__init__(…) initializes x; see help(type(x)) for signature

mutate(individual, probability)[source]
cea.optimization.master.mutations.mutation_main(individual, indpb, column_names, heating_unit_names_share, cooling_unit_names_share, column_names_buildings_heating, column_names_buildings_cooling, district_heating_network, district_cooling_network, technologies_heating_allowed, technologies_cooling_allowed, mutation_method_integer, mutation_method_continuous)[source]

cea.optimization.master.normalization module

cea.optimization.master.normalization.minmax_scaler(value, min_value, max_value)[source]
cea.optimization.master.normalization.normalize_fitnesses(scaler_dict, fitnesses_population)[source]
cea.optimization.master.normalization.scaler_for_normalization(number_of_objectives, fitnesses)[source]

cea.optimization.master.performance_aggregation module

cea.optimization.master.summarize_network module

cea.optimization.master.validation module

Validation

cea.optimization.master.validation.validation_main(individual_with_name_dict, column_names_buildings_heating, column_names_buildings_cooling, district_heating_network, district_cooling_network, technologies_heating_allowed, technologies_cooling_allowed)[source]