@Override public void evaluateTariffs () { for (CapacityBundle bundle : capacityBundles) { TariffEvaluator evaluator = evaluatorMap.get(bundle); if (bundle.getSubscriberStructure().getInertiaDistribution() != null) { evaluator.withInertia(bundle.getSubscriberStructure() .getInertiaDistribution().drawSample()); } else { log.warn("no inertia distro, using default value 0.7"); evaluator.withInertia(0.7); } evaluator.evaluateTariffs(); } }
OfficeComplexConstants.INTERRUPTIBILITY_FACTOR); te.withInconvenienceWeight(weight) .withInertia(Double.parseDouble(conf .getProperty(type + "Inertia"))) .withPreferredContractDuration(weeks OfficeComplexConstants.INTERRUPTIBILITY_FACTOR); te.withInconvenienceWeight(weight) .withInertia(Double.parseDouble(conf .getProperty(type + "Inertia"))) .withPreferredContractDuration(weeks
VillageConstants.INTERRUPTIBILITY_FACTOR); te.withInconvenienceWeight(weight) .withInertia(Double.parseDouble(conf .getProperty(type + "Inertia"))) .withPreferredContractDuration(weeks VillageConstants.INTERRUPTIBILITY_FACTOR); te.withInconvenienceWeight(weight) .withInertia(Double.parseDouble(conf .getProperty(type + "Inertia"))) .withPreferredContractDuration(weeks
tariffEvaluator.withInertia(0.7).withRationality(0.99) .withPreferredContractDuration(14); tariffEvaluator.initializeInconvenienceFactors(0.0, 0.01, 0.0, 0.0);
tariffEvaluator.withInertia(0.7).withPreferredContractDuration(14); tariffEvaluator.initializeInconvenienceFactors(0.0, 0.01, 0.0, 0.0); tariffEvaluator.initializeRegulationFactors(-nChargers * maxChargeKW * 0.05,
@Override public void initialize () { super.initialize(); log.info("Initialize " + name); // fill out CustomerInfo powerType = PowerType.THERMAL_STORAGE_CONSUMPTION; CustomerInfo info = new CustomerInfo(name, 1); info.withPowerType(powerType) .withCustomerClass(CustomerClass.LARGE) .withControllableKW(-unitSize / cop) .withStorageCapacity(stockCapacity * CP_ICE * (maxTemp - minTemp)) .withUpRegulationKW(-unitSize / cop) .withDownRegulationKW(unitSize / cop); // optimistic, perhaps addCustomerInfo(info); ensureSeeds(); // randomize current temp only if state not set if (null == currentTemp) { setCurrentTemp(minTemp + (maxTemp - minTemp) * opSeed.nextDouble()); currentStock = stockCapacity; } currentNcUsage = nonCoolingUsage; // set up the tariff evaluator. We are wide-open to variable pricing. tariffEvaluator = new TariffEvaluator(this); tariffEvaluator.withInertia(0.7).withPreferredContractDuration(14); tariffEvaluator.initializeInconvenienceFactors(0.0, 0.01, 0.0, 0.0); tariffEvaluator.initializeRegulationFactors(-getMaxCooling() * 0.05, 0.0, getMaxCooling() * 0.04); }
private TariffEvaluator createTariffEvaluator () { TariffEvaluationWrapper wrapper = new TariffEvaluationWrapper(); TariffEvaluator te = new TariffEvaluator(wrapper); te.initializeInconvenienceFactors(config.getTouFactor(), config.getTieredRateFactor(), config.getVariablePricingFactor(), config.getInterruptibilityFactor()); double weight = generator.nextDouble() * config.getWeightInconvenience(); double expDuration = config.getMinDefaultDuration() + generator.nextInt(config.getMaxDefaultDuration() - config.getMinDefaultDuration()); te.withInconvenienceWeight(weight) .withInertia(config.getNsInertia()) .withPreferredContractDuration(expDuration) .withRationality(config.getRationalityFactor()) .withTariffEvalDepth(config.getTariffCount()) .withTariffSwitchFactor(config.getBrokerSwitchFactor()); te.initializeRegulationFactors(car.getHomeChargeKW() * car.getCurtailmentFactor(), car.getHomeChargeKW() * car.getDischargeFactor(), car.getHomeChargeKW() * car.getDownRegFactor()); return te; }