Розробка AI-системи оптимізації тарифів ЖКГ

Ручний перерахунок тарифів і нарахувань тримається на таблицях і людях — помилки виринають уже в квитанціях. Ми розробляємо AI-систему оптимізації тарифів ЖКГ під ключ: вона перевіряє нарахування автоматично й скорочує час розрахунку в рази. Обговоримо задачу — повернемося з оцінкою та планом.
Часті запитання

AI-оптимізація тарифів ЖКГ: де ламається ручний розрахунок

Ручний розрахунок нарахувань тримається на зв'язці таблиць, вивантажень і людей, які пам'ятають, «як правильно».

Перше, що ламається при зростанні обсягу, — розбіжність у довідниках: тарифна сітка, нормативи, площа та кількість мешканців живуть у різних файлах, оновлюються в різний час і потрапляють у розрахунок у різних редакціях.

Та сама квартира отримує різну суму залежно від того, який файл підставили у формулу, а причину доводиться шукати ручним звірянням.

Другий збій — дроблення періодів і перерахунок заднім числом. Зміна власника, статус пільговика, повірка лічильника або перегляд тарифу змушують перераховувати минулі місяці, і кожен випадок живе окремим рядком у чужій пам'яті.

Поки зміни вносять руками, частина губиться, а розбіжність виринає вже в квитанції — зі скаргою та повторним розбором.

Так розрахунковий контур перетворюється на вузьке місце: закриття місяця розтягується, будь-яке звіряння потребує вивантаження й зіставлення наосліп. Фахівці витрачають час не на аналіз тарифної моделі, а на пошук того, де розійшлися дані.

AI-оптимізація тарифів ЖКГ знімає це навантаження інакше: довідники зводяться до єдиного джерела, розрахунок іде за формалізованими правилами, а перерахунок запускається автоматично на потрібну глибину. Розбираємо, як влаштований такий контур.

Вимірювані ефекти впровадження моделі розрахунку

Час підготовки тарифного сценарію скорочується з кількох днів ручних прогонів до одного робочого сеансу: модель рахує варіанти сітки паралельно, а інженер розбирає вже готові гілки — зниження, підвищення та перехідний період.

Проміжні вивантаження більше не збираються вручну: розрахунковий період підтягується з облікової системи, нормативи — з довідника, а неузгодженості підсвічуються до запуску.

Частка ручних правок у підготовленому сценарії падає до поодиноких випадків. Основний обсяг закривають правила валідації: діапазони допустимих значень, ліміти зростання за категоріями споживачів, обов'язкові періоди дії.

Ручна правка залишається лише там, де є юридичний виняток або рішення регіонального органу, — і кожне таке відхилення потрапляє до журналу з обґрунтуванням.

Зникає окремий клас відмов — розсинхрон версії тарифної справи та розрахункового періоду. Випуск блокується, якщо контрольні суми за особовими рахунками не збігаються з еталоном, а сам перерахунок ідемпотентний: повторний запуск не задвоює нарахування.

Обсяг повторних перерахунків падає за рахунок дельти — перераховуються лише рахунки, яких торкнулася правка тарифу або нормативу.

Точність нарахувань перевіряється на еталонній вибірці до публікації, розбіжність із контрольним розрахунком зводиться до нуля.

Модель працює поверх поточної облікової системи, не потребуючи її заміни: тарифні справи, довідники та особові рахунки залишаються у звичному контурі, змінюється лише шар підготовки та перевірки розрахунку.

Готова платформа, власна AI-модель або гібрид

Жоден із трьох шляхів не виграє «загалом» — вибір визначається тим, наскільки ваша тарифна логіка відрізняється від типової і чи готові ви підтримувати модель власними силами.

Типові рішення швидше виводять розрахунок у роботу, але їхні правила правляться лише в межах закладених налаштувань. Власна модель знімає ці рамки, зате потребує історії нарахувань і постійного контролю точності прогнозу.

Практичний критерій: рахуємо частку будинків, де типові правила відтворюють ваш тариф без ручних правок. Якщо вона висока — готової платформи достатньо.

Якщо розрахунок тримається на десятках локальних коефіцієнтів, сезонних перерахунках і пільгах, перенесення своїх правил у власну модель стає обов'язковим.

Варіант Коли підходить Обмеження
Готова платформа Тарифна логіка близька до типової, потрібен швидкий запуск Нестандартні правила ведуться поза системою, частина розрахунку залишається ручною
Власна модель розрахунку Багато локальних правил, потрібен повний контроль над логікою Потрібна історія нарахувань і платежів, точність перевіряється за кожної правки
Гібридний підхід Типовий каркас розрахунку плюс власні правила поверх Два контури треба синхронізувати, супровід складніший

За будь-якого варіанта правила фіксуємо у вигляді перевірюваних формул і звіряємо результат із поточними нарахуваннями на історичних періодах — до того, як розрахунок піде в роботу.

Як ми впроваджуємо: етапи інженерної роботи

Тарифна модель у ЖКГ багаторівнева: групи споживання, нормативи, пільги, сезонні перерахунки та ручні коригування. Помилка в правилах нарахування дорожча за неточність прогнозу, тому починаємо з даних, а закінчуємо прийманням на реальних періодах.

  1. Аудит даних. Зводимо архіви нарахувань, платежів і звернень за кілька років, шукаємо розриви, дублі та сліди ручних правок. На виході — карта джерел і перелік даних, які без доопрацювання використовувати не можна.
  2. Проєктування схеми розрахунку. Фіксуємо, які показники впливають на тариф і як вони пов'язані, де потрібні обмеження за чутливістю. Схему узгоджуємо з економістами до першого рядка коду.
  3. Налаштування правил. Пільги, пороги та винятки описуємо явно, з історією змін: правка одного правила не ламає сусідні розрахунки і залишається видимою.
  4. Перевірка на історичних даних. Проганяємо систему на закритих періодах і звіряємо з фактичними нарахуваннями. Кожну розбіжність розбираємо до причини, а не згладжуємо середнім.
  5. Паралельний прогін. Система рахує поряд із поточним процесом, результати звіряються порядково. Тут видно поведінку на нетипових випадках — перерахунках і спірних нарахуваннях.
  6. Передача в експлуатацію. Віддаємо регламенти, журнали розрахунків і порядок відкату, навчаємо фахівців, фіксуємо відповідальних за правила.

Далі супровід іде за метриками: частка розбіжностей, кількість ручних правок, час перерахунку періоду. Вихід за коридор ми бачимо раніше, ніж його помітить абонент.

Артефакти проєкту: регламенти, схеми, доступи

Рішення для оптимізації тарифів ЖКГ живе довше за проєкт: сітки змінюються, нормативи переглядаються, довідники поповнюються новими об'єктами.

Тому разом із розрахунковим контуром ми передаємо комплект документів, за яким ваша команда супроводу веде систему сама — без звернення до нас за кожною зміною.

  • Схема розрахунку — шлях від нарахувань і нормативів до підсумкового тарифу: кроки, проміжні величини, точки контролю коректності.
  • Правила ведення довідників — хто додає послуги, категорії споживачів і нормативи, які поля обов'язкові, які перевірки спрацьовують до збереження.
  • Розмежування доступу — матриця ролей: оператор, аналітик, адміністратор довідників; права видаються за мінімальною достатністю, зміни логуються.
  • Регламент оновлення — періодичність перескладання моделей у разі зміни тарифної політики та точка відкату на попередню версію розрахунку.
  • Документація з експлуатації — інструкції черговій зміні: типові відмови, дії при розбіжності результату з еталоном, порядок ескалації.
  • Схема інтеграцій — обмін із білінгом і обліковими системами: формати, періодичність, поведінка за недоступності джерела.
  • Перевірочні сценарії — набір еталонних розрахунків, за якими після будь-якої зміни видно, що модель рахує так само.

Документи передаємо разом із навчанням супроводу та розбором еталонних розрахунків — команда приймає систему, вже вміючи її вести.

Кейс: перерахунок нарахувань для регіонального оператора

Пілот запускали на чинному контурі регіонального оператора: 1,2 млн особових рахунків, понад сорок тарифних зон і пільгові категорії — кожна зі своїм порядком застосування.

Перерахунок ішов хвилями: фахівці вивантажували періоди, звіряли тарифи та пільги вручну і завантажували результат назад.

До впровадження

Одна хвиля перерахунку займала п'ять робочих днів, а на ручне звіряння потрапляло близько 3% нарахувань: розбіжності за пільговими підставами, задвоєні перерахунки, позиції зі строком дії, що минув.

Звернення щодо перерахунку до абонентського відділу трималися близько 1 800 на місяць — і помітна їхня частина була наслідком не помилки тарифу, а несинхронності довідників між системами.

Що змінили і що отримали

Історію нарахувань і довідники звели в єдине сховище (ClickHouse), а правила тарифікації зафіксували декларативною конфігурацією замість коду розрахункового механізму.

Модель розмічає позицію за минулими періодами, профілем споживання та чинною підставою пільги; спірні випадки йдуть у чергу оператору — їх близько 4% обсягу, решту закривається автоматично.

Перед бойовим прогоном систему звіряли з ручним розрахунком на ретроспективі за 12 закритих періодів.

Цикл перерахунку скоротився до нічного прогону з ранковим підтвердженням — один робочий день замість п'яти.

Частка розбіжностей, що доходять до особового рахунку, впала до 0,4%, а звернення щодо перерахунку — приблизно на дві третини: спірна позиція перехоплюється до формування квитанції.

Тариф модель не призначає. Рішення щодо спірного нарахування ухвалює фахівець, система лише готує доказову вибірку: період, підстава, розрахунок і причину спрацювання.

Чим відрізняється автоматичний розрахунок від ручного перерахунку?

Автоматичний розрахунок будується на первинних даних — показаннях приладів обліку, реєстрах особових рахунків, вивантаженнях із ГІС ЖКГ — і застосовує правила нарахування без ручного введення.

Кожен прогін зберігає вхідний набір, версію правил і підсумок, тому будь-яку суму в квитанції можна розкласти до вихідного рядка. Помилка в правилі виправляється один раз і перераховує весь період.

Ручний перерахунок іде від вивантаження в таблиці та фахівця, який править формули на місці. Так закривають разові спірні періоди й нестандартні ситуації, для яких правило ще не сформульовано.

Плата — перевірюваність результату: за місяць уже не відновити, чому в рядку стоїть саме це значення, а кожна правка живе окремим файлом. Порівняння режимів роботи за типовими задачами:

Задача Режим роботи Обмеження
Масове нарахування за період автоматичний розрахунок потрібні вивірені довідники та правила
Розбір звернення за рядком квитанції автоматичний, з трасуванням залежить від збереженої історії прогонів
Спірний період із нестандартним правилом ручний перерахунок не переноситься на наступний період
Звіряння з даними постачальника автоматичний обмежений форматом обміну
Перерахунок у разі зміни тарифу автоматичний потрібна версія правил із датою набрання чинності

Супровід розрахунків — головна розбіжність. В автоматичному режимі нове правило змінюється в одному місці й застосовується до всієї бази; у ручному та сама правка тиражується файлами, і обсяг роботи зростає разом із кількістю особових рахунків.

Часті технічні сумніви та відповіді

Заперечення щодо AI-оптимізації тарифів зазвичай одні й ті самі: мало історичних даних, сітки змінюються щосезону, поточної системи нарахувань чіпати не можна, незрозуміло, як приймати роботу і хто чистить довідники. Кожне закривається архітектурним рішенням, а не обіцянкою, що «модель розбереться сама».

Чи вистачить обсягу історичних даних?

Двох повних сезонів і міжсезоння вистачає, щоб відокремити сезонність від аномалій. Менше — стартуємо на правилах і статистиці за групами будинків, модель підключаємо в міру накопичення. Якість міряємо на відкладеному періоді, що не брав участі в налаштуванні.

Що робити, якщо сітки тарифів змінюються щосезону?

Сітка не зашита в модель, а лежить у довіднику версій. У разі зміни історія перераховується, прогноз будується заново, а поряд із результатом зберігається версія сітки — розрахунок залишається відтворюваним.

Чи можна працювати поверх поточної системи?

Так. Обмін іде вивантаженнями, розрахунок запускається паралельно і не впливає на нарахування. Поточна система залишається джерелом істини, а відкат зводиться до вимкнення обміну.

Як формулюються критерії приймання?

Узгоджуємо до старту: частка прогнозів у заданому коридорі відхилення, відтворюваність на відкладеному періоді, строк реакції на зміну сітки. Плюс тіньовий прогін проти фактичних нарахувань.

Хто відповідає за якість довідників?

Вихідні довідники — зона замовника, але до моделі ми робимо профілювання: звіт про пропуски, дублі та розбіжності, правила нормалізації. Без чистих довідників результат недостовірний, тому це перший етап.

Обговоримо задачу: що надіслати для оцінки

Щоб оцінка була точною, інженерам потрібні ввідні про те, як тариф рахується зараз. Загальна розповідь про задачу годиться для першої розмови, але план робіт і склад пробного запуску збираються за фактичними даними. Чим конкретніші вихідні дані, тим менше уточнювальних кіл до робочої оцінки.

  • Вивантаження нарахувань, оплат і коригувань за один-два розрахункові періоди — таблицями або доступом до системи нарахувань на читання.
  • Чинні правила розрахунку: зони, нормативи, коефіцієнти, пільги, порядок перерахунків.
  • Схему облікових систем — звідки приходять показання і куди повертається результат розрахунку.
  • Обмеження регулятора та внутрішні регламенти: що міняти не можна, які граничні індекси обов'язкові.
  • Приклади спірних нарахувань і ручних правок — за ними видно, де правила неоднозначні.
  • Цільові показники: частка автоматичних розрахунків, час перерахунку, допустима похибка.
  • Відповідальних з обох сторін: хто підтверджує правила розрахунку і приймає результат.

Порядок обговорення простий: розбираємо ввідні та уточнюємо, яких даних бракує, фіксуємо план робіт з етапами й точками перевірки, потім узгоджуємо склад пробного запуску — обмежений набір правил і один розрахунковий період на реальних даних із заздалегідь описаними критеріями приймання. Опишіть задачу — повернемося з оцінкою та планом.

Напрямки AI-розробки

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1542
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1369
  • Розробка логотипу компанії B2B Advance
    Розробка логотипу компанії B2B Advance
    816
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1141