|
![]() |
#1 |
Участник
|
Нечто подобное этой задаче реализовывал в 2003 году для проекта биллинговой системы по продаже электроэнергии населению (в частности Троицкие электрические сети, в подмосковье)
1 раз в месяц контролеры снимают показания со счетчиков, получают потребление в месяц. у некоторых абонентов есть разные льготы с разными скидками, есть лимитные льготы с большей скидкой например 50% на 150 квтч, есть безлимитные льготы но со скидкой например 30%. по условию можно выбирать только одну льготу, в нескольких случаях можно применять две льготы. и в тех случаях когда у абонента несколько видов льготв и лимитных и безлимитных, необходимо найти при его фактическом потреблении наиболее выгодное применение льгот. (то есть одна льгота или комбинация льготв при которых стоимость за потребление наименьшая, в лучшем случае равна нулю). еще накладывается ограничение что потребление измеряется 1 раз в месяц. и считается что можно распределять потребление наивгоднейшим для абонента образом. например с 15.07.2011 по 15.08.2011 потребление 150 квтч. при этом так получается что у человека льгота заканчивается до 1.08.2011 поэтому не запрещается указать 150 в одной части месяца с 15.07.2011 до 1.08.2011 и 0 квтч со 2.08.2011 по 15.08.2011. в итоге нужно распределять киловатты наивыгоднейшим образом для льготника а также применять нивыгоднейшее сочетание льгот учитывая правила их применимости. на выходе желательно получать 0 рублей или минимальную сумму. вот и реализовал тогда этот блок, который также должен был учиывать перетекающие остатки квтч с предыдущего потребления и оценивать комбинации потребления и наборов льгот. это как бы жизненная задачка. Кстати в планировании производства когда идет расчет оптимальной загрузки рабочих центров, тоже идет перебор вариантов и комбинаций (включая альтернативные рабочие центры) это тоже перебор вариантов и их оценка Последний раз редактировалось Evgeniy2020; 31.08.2011 в 10:40. |
|
Теги |
оптимизация, полезное, обсуждение |
|
|