Example #1
0
def get_setup(config):
    ConstSettings.IAASettings.MARKET_TYPE = 3

    area = Area('Grid', [
        Area(
            'Energy Community',
            [
                Area('Load',
                     strategy=LoadHoursStrategy(avg_power_W=5000,
                                                hrs_per_day=24,
                                                hrs_of_day=list(range(24)),
                                                initial_buying_rate=25,
                                                final_buying_rate=25),
                     appliance=SwitchableAppliance()),
                Area('Local Supply 1',
                     strategy=FinitePowerPlant(energy_rate=10,
                                               max_available_power_kW=1.0),
                     appliance=SimpleAppliance()),
                Area('Local Supply 2',
                     strategy=FinitePowerPlant(energy_rate=15,
                                               max_available_power_kW=1.0),
                     appliance=SimpleAppliance()),
                Area('Local Supply 3',
                     strategy=FinitePowerPlant(energy_rate=20,
                                               max_available_power_kW=1.0),
                     appliance=SimpleAppliance()),
            ],
        ),
    ],
                config=config)
    return area
Example #2
0
def get_setup(config):

    ConstSettings.IAASettings.MARKET_TYPE = 3
    ConstSettings.IAASettings.PAY_AS_CLEAR_AGGREGATION_ALGORITHM = 1
    ConstSettings.GeneralSettings.MARKET_CLEARING_FREQUENCY_PER_SLOT = 1
    ConstSettings.LoadSettings.INITIAL_BUYING_RATE = 35
    ConstSettings.LoadSettings.FINAL_BUYING_RATE = 35
    ConstSettings.StorageSettings.INITIAL_BUYING_RATE = 24.99
    ConstSettings.StorageSettings.FINAL_BUYING_RATE = 25
    ConstSettings.StorageSettings.INITIAL_SELLING_RATE = 30
    ConstSettings.StorageSettings.FINAL_SELLING_RATE = 25.01

    area = Area('Grid', [
        Area('House 1', [
            Area('H1 General Load1',
                 strategy=LoadHoursStrategy(avg_power_W=100,
                                            hrs_per_day=24,
                                            hrs_of_day=list(range(24)),
                                            initial_buying_rate=28.8,
                                            fit_to_limit=False,
                                            energy_rate_increase_per_update=0),
                 appliance=SwitchableAppliance()),
            Area('H1 General Load2',
                 strategy=LoadHoursStrategy(avg_power_W=100,
                                            hrs_per_day=24,
                                            hrs_of_day=list(range(24)),
                                            initial_buying_rate=18.8,
                                            fit_to_limit=False,
                                            energy_rate_increase_per_update=0),
                 appliance=SwitchableAppliance()),
            Area('H1 General Load3',
                 strategy=LoadHoursStrategy(avg_power_W=100,
                                            hrs_per_day=24,
                                            hrs_of_day=list(range(24)),
                                            initial_buying_rate=8.8,
                                            fit_to_limit=False,
                                            energy_rate_increase_per_update=0),
                 appliance=SwitchableAppliance()),
            Area('H1 CEP1',
                 strategy=FinitePowerPlant(energy_rate=5.1,
                                           max_available_power_kW=0.1),
                 appliance=SimpleAppliance()),
            Area('H1 CEP2',
                 strategy=FinitePowerPlant(energy_rate=15.5,
                                           max_available_power_kW=0.1),
                 appliance=SimpleAppliance()),
            Area('H1 CEP3',
                 strategy=FinitePowerPlant(energy_rate=25.001,
                                           max_available_power_kW=0.1),
                 appliance=SimpleAppliance()),
            Area('H1 CEP4',
                 strategy=FinitePowerPlant(energy_rate=28.001,
                                           max_available_power_kW=0.1),
                 appliance=SimpleAppliance()),
        ]),
    ],
                config=config)
    return area
Example #3
0
def get_setup(config):
    ConstSettings.GeneralSettings.EXPORT_SUPPLY_DEMAND_PLOTS = True
    ConstSettings.IAASettings.MARKET_TYPE = 2
    ConstSettings.IAASettings.BID_OFFER_MATCH_TYPE = \
        BidOfferMatchAlgoEnum.PAY_AS_CLEAR.value
    ConstSettings.IAASettings.PAY_AS_CLEAR_AGGREGATION_ALGORITHM = 1
    ConstSettings.GeneralSettings.MARKET_CLEARING_FREQUENCY_PER_SLOT = 1
    ConstSettings.IAASettings.MIN_OFFER_AGE = 0
    ConstSettings.IAASettings.MIN_BID_AGE = 0

    area = Area(
        'Grid',
        [
            Area(
                'House 1',
                [
                    Area('H1 General Load1', strategy=LoadHoursStrategy(
                        avg_power_W=100, hrs_per_day=24, hrs_of_day=list(range(24)),
                        initial_buying_rate=28.8, fit_to_limit=False,
                        energy_rate_increase_per_update=0),
                         ),
                    Area('H1 General Load2', strategy=LoadHoursStrategy(
                        avg_power_W=100, hrs_per_day=24, hrs_of_day=list(range(24)),
                        initial_buying_rate=18.8, fit_to_limit=False,
                        energy_rate_increase_per_update=0),
                         ),
                    Area('H1 General Load3', strategy=LoadHoursStrategy(
                        avg_power_W=100, hrs_per_day=24, hrs_of_day=list(range(24)),
                        initial_buying_rate=8.8, fit_to_limit=False,
                        energy_rate_increase_per_update=0),
                         ),
                    Area('H1 CEP1',
                         strategy=FinitePowerPlant(energy_rate=5.1, max_available_power_kW=0.1),
                         ),
                    Area('H1 CEP2',
                         strategy=FinitePowerPlant(energy_rate=15.5, max_available_power_kW=0.1),
                         ),
                    Area('H1 CEP3',
                         strategy=FinitePowerPlant(energy_rate=25.001, max_available_power_kW=0.1),
                         ),
                    Area('H1 CEP4',
                         strategy=FinitePowerPlant(energy_rate=28.001, max_available_power_kW=0.1),
                         ),
                ]
            ),
        ],
        config=config
    )
    return area
Example #4
0
def get_setup(config):
    area = Area('Grid', [
        Area('House 1', [
            Area('H1 DefinedLoad',
                 strategy=DefinedLoadStrategy(daily_load_profile=profile_path,
                                              final_buying_rate=36),
                 appliance=SwitchableAppliance()),
            Area('H1 Storage1',
                 strategy=StorageStrategy(initial_soc=50),
                 appliance=SwitchableAppliance()),
        ]),
        Area('House 2', [
            Area('H2 General Load',
                 strategy=LoadHoursStrategy(avg_power_W=1000,
                                            hrs_per_day=4,
                                            hrs_of_day=list(range(12, 16)),
                                            final_buying_rate=35),
                 appliance=SwitchableAppliance()),
            Area('H2 PV', strategy=PVStrategy(1, 80), appliance=PVAppliance()),
        ]),
        Area('Finite Commercial Producer',
             strategy=FinitePowerPlant(energy_rate=30,
                                       max_available_power_kW=0.01),
             appliance=SwitchableAppliance()),
        Area('Commercial Energy Producer',
             strategy=CommercialStrategy(energy_rate=30),
             appliance=SimpleAppliance()),
    ],
                config=config)
    return area
Example #5
0
def get_setup(config):
    ConstSettings.IAASettings.MARKET_TYPE = 2
    ConstSettings.IAASettings.BID_OFFER_MATCH_TYPE = \
        BidOfferMatchAlgoEnum.PAY_AS_CLEAR.value

    area = Area(
        'Grid',
        [
            Area(
                'Energy Community',
                [
                    Area('Load 1', strategy=LoadHoursStrategy(
                        avg_power_W=500, hrs_per_day=24, hrs_of_day=list(range(24)),
                        initial_buying_rate=10, final_buying_rate=10),
                         ),
                    Area('Load 2', strategy=LoadHoursStrategy(
                        avg_power_W=500, hrs_per_day=24, hrs_of_day=list(range(24)),
                        initial_buying_rate=15, final_buying_rate=15),
                         ),
                    Area('Load 3', strategy=LoadHoursStrategy(
                        avg_power_W=500, hrs_per_day=24, hrs_of_day=list(range(24)),
                        initial_buying_rate=30, final_buying_rate=30),
                         ),
                    Area('Local Supply',
                         strategy=FinitePowerPlant(energy_rate=10, max_available_power_kW=1.0),
                         ),
                ],
            ),
        ],
        config=config
    )
    return area
Example #6
0
def get_setup(config):
    ConstSettings.BlockchainSettings.START_LOCAL_CHAIN = False
    area = Area('Grid', [
        Area('Cell Tower',
             strategy=LoadHoursStrategy(avg_power_W=50, hrs_per_day=24),
             appliance=SwitchableAppliance()),
        Area('Commercial Energy Producer',
             strategy=FinitePowerPlant(energy_rate=30,
                                       max_available_power_kW=100),
             appliance=SimpleAppliance()),
    ],
                config=config)
    return area
Example #7
0
def get_setup(config):
    area = Area('Grid', [
        Area('Finite Power Plant',
             strategy=FinitePowerPlant(energy_rate=30,
                                       max_available_power_kW=100),
             appliance=SwitchableAppliance()),
        Area('Load',
             strategy=LoadHoursStrategy(avg_power_W=100,
                                        hrs_per_day=9,
                                        hrs_of_day=list(range(8, 18))),
             appliance=SwitchableAppliance()),
    ],
                config=config)
    return area
def get_setup(config):

    ConstSettings.IAASettings.MARKET_TYPE = 2
    ConstSettings.IAASettings.MIN_OFFER_AGE = 0
    ConstSettings.IAASettings.MIN_BID_AGE = 0

    area = Area(
        "Grid",
        [
            Area("Community", [
                Area("Family 2 children with PV + ESS", [
                    Area("Family General Load",
                         strategy=LoadHoursStrategy(avg_power_W=5680,
                                                    hrs_of_day=list(range(24)),
                                                    hrs_per_day=24,
                                                    initial_buying_rate=23,
                                                    final_buying_rate=23)),
                    Area("Family PV",
                         strategy=PVStrategy(max_panel_power_W=17985,
                                             panel_count=1,
                                             initial_selling_rate=6,
                                             final_selling_rate=6)),
                    Area("Family ESS",
                         strategy=StorageStrategy(initial_soc=20,
                                                  battery_capacity_kWh=5,
                                                  initial_buying_rate=22.94,
                                                  final_buying_rate=22.94,
                                                  initial_selling_rate=22.95,
                                                  final_selling_rate=22.95))
                ]),
                Area("Community PP",
                     strategy=FinitePowerPlant(max_available_power_kW=10,
                                               energy_rate=1)),
                Area("Community Load",
                     strategy=LoadHoursStrategy(avg_power_W=1200,
                                                hrs_of_day=list(range(24)),
                                                hrs_per_day=24,
                                                initial_buying_rate=10,
                                                final_buying_rate=10))
            ],
                 grid_fee_constant=4.0),
            Area("DSO",
                 strategy=InfiniteBusStrategy(energy_buy_rate=20,
                                              energy_sell_rate=22))
        ],
        config=config,
        grid_fee_constant=4.0,
    )
    return area
Example #9
0
def get_setup(config):
    area = Area('Grid', [
        Area('House 1', [
            Area('H1 General Load',
                 strategy=LoadHoursStrategy(avg_power_W=500,
                                            hrs_per_day=24,
                                            hrs_of_day=list(range(0, 24)),
                                            final_buying_rate=35)),
        ]),
        Area('Finite Commercial Producer',
             strategy=FinitePowerPlant(energy_rate=31.3,
                                       max_available_power_kW=0.1)),
    ],
                config=config)
    return area
Example #10
0
def get_setup(config):
    area = Area(
        'Grid',
        [
            Area('Cell Tower', strategy=LoadHoursStrategy(avg_power_W=50,
                                                          hrs_per_day=24)
                 ),
            Area('Commercial Energy Producer',
                 strategy=FinitePowerPlant(energy_rate=30,
                                           max_available_power_kW=100)
                 ),

        ],
        config=config
    )
    return area
Example #11
0
def get_setup(config):
    area = Area('Grid', [
        Area('Finite Power Plant',
             strategy=FinitePowerPlant(energy_rate=30,
                                       max_available_power_kW=100)),
        Area('Load',
             strategy=LoadHoursStrategy(avg_power_W=100,
                                        hrs_per_day=9,
                                        hrs_of_day=list(range(8, 18))),
             children=[
                 Area("Forbidden Load",
                      strategy=LoadHoursStrategy(avg_power_W=100,
                                                 hrs_per_day=9))
             ]),
    ],
                config=config)
    return area
Example #12
0
def get_setup(config):
    area = Area('Grid', [
        Area('House 1', [
            Area('H1 General Load',
                 strategy=LoadHoursStrategy(avg_power_W=200,
                                            hrs_per_day=24,
                                            hrs_of_day=list(range(0, 24)),
                                            final_buying_rate=35),
                 appliance=SwitchableAppliance()),
        ]),
        Area('Finite Commercial Producer Profile',
             strategy=FinitePowerPlant(
                 energy_rate=31.3,
                 max_available_power_kW=diesel_power_profile_kW),
             appliance=SwitchableAppliance()),
    ],
                config=config)
    return area
Example #13
0
def get_setup(config):

    ConstSettings.IAASettings.MARKET_TYPE = 2
    ConstSettings.IAASettings.MIN_OFFER_AGE = 0
    ConstSettings.IAASettings.MIN_BID_AGE = 0

    area = Area(
        "Grid",
        [
            Area("Community", [
                Area("Young Couple House", [
                    Area("YC General Load",
                         strategy=LoadHoursStrategy(avg_power_W=3147,
                                                    hrs_of_day=list(range(24)),
                                                    hrs_per_day=24,
                                                    initial_buying_rate=25,
                                                    final_buying_rate=25,
                                                    fit_to_limit=True)),
                ]),
                Area("Community PV",
                     strategy=PVStrategy(max_panel_power_W=4000,
                                         panel_count=1,
                                         initial_selling_rate=8,
                                         final_selling_rate=8)),
                Area("Community Load",
                     strategy=LoadHoursStrategy(avg_power_W=400,
                                                hrs_of_day=list(range(24)),
                                                hrs_per_day=24,
                                                initial_buying_rate=25.5,
                                                final_buying_rate=25.5,
                                                fit_to_limit=True)),
                Area("Community PP",
                     strategy=FinitePowerPlant(max_available_power_kW=5,
                                               energy_rate=10))
            ],
                 grid_fee_constant=4.0),
            Area("DSO",
                 strategy=InfiniteBusStrategy(energy_buy_rate=5,
                                              energy_sell_rate=22))
        ],
        config=config,
        grid_fee_constant=4.0,
    )
    return area
Example #14
0
def get_setup(config):
    area = Area('Grid', [
        Area('Neighborhood 1', [
            Area('House 1', [
                Area('H1 General Load',
                     strategy=LoadHoursStrategy(avg_power_W=200,
                                                hrs_per_day=24,
                                                hrs_of_day=list(range(0, 24)),
                                                final_buying_rate=35)),
            ],
                 grid_fee_percentage=0,
                 grid_fee_constant=0,
                 throughput=ThroughputParameters(
                     baseline_peak_energy_import_kWh=0.4)),
            Area('House 1 2', [],
                 throughput=ThroughputParameters(import_capacity_kVA=2.0,
                                                 export_capacity_kVA=2.0)),
        ],
             throughput=ThroughputParameters(
                 baseline_peak_energy_import_kWh=0.4,
                 import_capacity_kVA=2.0)),
        Area(
            'Neighborhood 2', [
                Area('House 2', [
                    Area('H2 Diesel Generator',
                         strategy=FinitePowerPlant(max_available_power_kW=300,
                                                   energy_rate=20)),
                ],
                     grid_fee_percentage=0,
                     grid_fee_constant=0,
                     throughput=ThroughputParameters(
                         baseline_peak_energy_export_kWh=0.3)),
            ],
            throughput=ThroughputParameters(
                baseline_peak_energy_export_kWh=0.3, export_capacity_kVA=2.0)),
        Area('Global Load',
             strategy=LoadHoursStrategy(avg_power_W=100,
                                        hrs_per_day=24,
                                        hrs_of_day=list(range(0, 24)),
                                        final_buying_rate=35)),
    ],
                config=config)
    return area
Example #15
0
def get_setup(config):
    ConstSettings.IAASettings.MARKET_TYPE = 2
    area = Area('Grid', [
        Area(
            'Community',
            [
                Area('H1', [
                    Area('Load',
                         strategy=LoadHoursStrategy(avg_power_W=1000,
                                                    hrs_per_day=1,
                                                    hrs_of_day=list(
                                                        range(10, 11)),
                                                    initial_buying_rate=60,
                                                    final_buying_rate=60,
                                                    update_interval=1),
                         appliance=SwitchableAppliance()),
                ],
                     grid_fee_constant=2)
            ],
            grid_fee_constant=3,
        ),
        Area(
            'DSO',
            [
                Area('Power Plant',
                     strategy=FinitePowerPlant(energy_rate=30,
                                               max_available_power_kW=1000),
                     appliance=SwitchableAppliance()),
            ],
            grid_fee_constant=10,
        ),
        Area('Market Maker',
             strategy=MarketMakerStrategy(grid_connected=True, energy_rate=50),
             appliance=SwitchableAppliance()),
    ],
                grid_fee_constant=10,
                config=config)
    return area
def get_setup(config):

    ConstSettings.IAASettings.MARKET_TYPE = 2
    ConstSettings.IAASettings.MIN_OFFER_AGE = 0
    ConstSettings.IAASettings.MIN_BID_AGE = 0

    area = Area(
        "Grid",
        [
            Area("Community", [
                Area("Family 2 children with PV", [
                    Area("Family General Load",
                         strategy=LoadHoursStrategy(avg_power_W=2161,
                                                    hrs_of_day=list(range(24)),
                                                    hrs_per_day=24,
                                                    initial_buying_rate=27.895,
                                                    final_buying_rate=27.895,
                                                    fit_to_limit=True)),
                    Area("Family PV",
                         strategy=PVStrategy(max_panel_power_W=17985,
                                             panel_count=1,
                                             initial_selling_rate=5,
                                             final_selling_rate=5))
                ]),
                Area("Community PP",
                     strategy=FinitePowerPlant(max_available_power_kW=5,
                                               energy_rate=1))
            ],
                 grid_fee_constant=4.0),
            Area("DSO",
                 strategy=InfiniteBusStrategy(energy_buy_rate=20,
                                              energy_sell_rate=22))
        ],
        config=config,
        grid_fee_constant=4.0,
    )
    return area