Model hydrauliczny + statystyka · przedsiębiorstwa wodociągowe
Wykrywanie wycieków z przepływu nocnego
Wykrywa wycieki w publicznej sieci benchmarkowej BattLeDIM i szereguje przewody, w których wyciek jest najbardziej prawdopodobny. Kliknięcie dowolnego przewodu pozwala utworzyć własny wyciek.
Przegląd
L-Town to publiczna sieć benchmarkowa BattLeDIM: symulowane miasto z 43 km przewodów, 33 symulowanymi czujnikami ciśnienia, trzema przepływomierzami i 82 inteligentnymi wodomierzami. Dane z 2019 roku kryją 19 wycieków, które zaczynają się w tym roku. Zbudowaliśmy dla niej metodę wykrywania wycieków opartą na narzędziach, których inżynier wodociągowy już używa: modelu hydraulicznym, bilansie wodnym z minimalnym przepływem nocnym i residuach ciśnienia. Model skalibrowaliśmy na danych z 2018 roku, a progi detekcji ustaliliśmy automatycznym przeszukiwaniem wyłącznie na danych z 2018 roku.
Wykrycie wycieku i jego lokalizacja korzystają z różnych godzin. Test powolnych wycieków odczytuje bilans wodny między 01:00 a 05:00. Zużycie jest wtedy najniższe, więc wyciek stanowi większą część dopływu. Osobny test pęknięć sprawdza każdą godzinę. Do lokalizacji wycieku służy ciśnienie z całej doby; w marcowy dzień w tym modelu ślad ciśnieniowy wycieku o 19:00 jest ok. 1,7 raza większy niż o 04:00. Każdy alarm porównuje zmianę ciśnienia na czujnikach z symulowanym wyciekiem w każdym węźle (każdy przewód otrzymuje średnią z obu swoich końców). Zbiór przewodów kandydatów zawęża się następnie z godziny na godzinę.
Na danych z 2019 roku metoda wykryła 14 z 19 wycieków, które zaczęły się w tym roku. Wygenerowała 7 fałszywych alarmów, a dalsze 13 zgłoszeń dotyczyło wycieków już znanych: 7 – wycieków zgłoszonych wcześniej przez nią samą, 6 – wycieku trwającego jeszcze od 2018 roku. Według zasad punktacji BattLeDIM te 14 trafień jest wartych 289 028 € po odliczeniu kosztów ekip – z 355 472 €, ile warta jest woda tracona przez wszystkie 19 wycieków. Przy 10 z 33 czujników ciśnienia (przepływomierze bez zmian) wykryła 10 z 19. Dane L-Town są też czystsze niż w prawdziwym mieście: przy dobowym błędzie 2% w szacowanym zużyciu gospodarstw domowych ta sama metoda wykryła od 8 do 12 z 19 w dwóch przebiegach testowych. W osadzonym widoku solver hydrauliczny działa w przeglądarce: kliknięcie dowolnego przewodu tworzy wyciek.
Jak to testowano
- Model skalibrowano na danych z 2018 roku. Progi detekcji ustalono automatycznym przeszukiwaniem wyłącznie na danych z 2018 roku.
- Odpowiedzi dla 2019 roku są publiczne od 2020 roku i mieliśmy do nich dostęp podczas tworzenia metody. To więc wynik uzyskany na rozwiązanym już benchmarku, a nie ślepy test.
- Inne ustawienia progów, które na danych z 2018 roku wypadły równie dobrze, wykrywają od 9 do 16 z 19 wycieków (mediana 13).
- Cztery kolejne wycieki trwały jeszcze od 2018 roku. Wymienia je opublikowany plik wycieków z 2018 roku, więc ich nie liczymy.
- Wyniki liczymy sami według zasad punktacji BattLeDIM, za pomocą przeniesionego przez nas do Pythona skryptu punktacji organizatorów. Nasza wersja odtwarza ich opublikowane przykładowe raporty co do centa.
Co zbudowaliśmy
- Model hydrauliczny L-Town (WNTR + EPANET), skalibrowany na godzinach z 2018 roku bez wycieków. Na godzinach wyłączonych z kalibracji jego błąd ciśnienia wynosi 3,7 cm RMSE, wobec 7,8 cm bez kalibracji.
- Bilans wodny dla dwóch stref zasilania, z zapotrzebowaniem szacowanym na podstawie 82 inteligentnych wodomierzy, które znajdują się w jednej strefie. Na tym bilansie działają test zmian minimalnego przepływu nocnego (CUSUM) oraz test pęknięć.
- Lokalizacja wycieku na podstawie sygnatur ciśnieniowych: symulowany wyciek w każdym węźle porównywany ze zmierzoną zmianą residuów ciśnienia. Wynikiem jest uszeregowany zbiór przewodów kandydatów, aktualizowany co godzinę.
- Ewaluacja według zasad punktacji samego konkursu, z testem na 10 czujnikach i pięcioma losowymi zestawami czujników jako próbami kontrolnymi.
- Działający w przeglądarce solver EPANET skalibrowanego modelu (WebAssembly). Można kliknąć przewód, ustawić wielkość wycieku i liczbę godzin danych, a potem obserwować, jak formuje się zbiór kandydatów.
Technologie
Python, WNTR, EPANET 2.2, NumPy, SciPy, pandas · epanet-js (EPANET skompilowany do WebAssembly), three.js
W liczbach
Wszystkie liczby dotyczą L-Town, publicznej sieci benchmarkowej BattLeDIM (symulowanego miasta), i pochodzą z naszych własnych przebiegów. „Zasady BattLeDIM” oznaczają opublikowaną punktację organizatorów, uruchamianą przez nas: trafienie liczy się w odległości do 300 m wzdłuż przewodów i w oknie czasowym wycieku; woda jest wyceniana na 0,80 €/m³; fałszywy alarm kosztuje 500 €; za trafienie nalicza się czas pracy ekipy proporcjonalnie do odległości, maksymalnie 500 €; za powtórne wizyty nie nalicza się kosztów.
| Wartość | Jak to zmierzyliśmy |
|---|---|
| Wykryto 14 z 19 wycieków rozpoczętych w 2019 roku | Wycieki trwające od 2018 roku nie są liczone. |
| 289 028 € z 355 472 € | Wartość wody zaoszczędzonej dzięki 14 trafieniom, minus koszty ekip, według zasad BattLeDIM. Kwota 355 472 € to wartość zgłoszenia wszystkich 19 wycieków w chwili ich rozpoczęcia. |
| 7 fałszywych alarmów oraz 13 zgłoszeń znanych już wycieków | Łącznie 34 zgłoszenia. Każdy fałszywy alarm kosztuje 500 €. Dalsze 13 zgłoszeń dotyczyło wycieków już znanych (7 – wycieków zgłoszonych wcześniej przez metodę, 6 – wycieku trwającego od 2018 roku); punktacja BattLeDIM nie nalicza za nie kosztów. |
| Ok. 3 h od pęknięcia do alarmu (od 1,6 do 24 h) | Dotyczy 7 wykrytych nagłych wycieków; czas liczony do końca godziny danych, w której padł alarm. Lokalizacja jest zgłaszana 24 h po alarmie – to opóźnienie dobrano na danych z 2018 roku. |
| Alarm od 5 do 53 dni po rozpoczęciu powolnego wycieku (zgłoszenie po 6–54 dniach) | Dotyczy 7 wykrytych wycieków narastających. Zaczynają się od przepływu bliskiego zeru i rosną przez tygodnie. |
| 171 m – mediana odległości od wskazanego przez nas przewodu do przewodu z wyciekiem (od 50 do 294 m) | Dotyczy 14 wykrytych wycieków; odległość mierzona tak jak w punktacji: wzdłuż przewodów, od środka do środka. |
| Od 17 do 77 przewodów w zbiorze kandydatów w chwili zgłoszenia, dla pęknięć | Przewody, których dopasowanie mieści się w stałym marginesie od najlepszego. Szum residuów (ciśnienie zmierzone minus modelowane) zmierzono na danych z 2018 roku. Przy powolnych wyciekach zbiór często obejmuje cały rejon sieci. |
| 3,7 cm – błąd ciśnienia skalibrowanego modelu | RMSE na 33 czujnikach w 61 godzinach z 2018 roku bez wycieków, niewykorzystanych do kalibracji; 7,8 cm bez kalibracji. |
| 10 z 19 przy 10 czujnikach, 181 058 €, 15 fałszywych alarmów | Użyto 10 z 33 czujników ciśnienia, wybranych według stałej reguły rozmieszczenia; przepływomierze i inteligentne wodomierze bez zmian. Pięć losowych zestawów po 10 czujników wykryło od 4 do 12. |
| Od 8 do 12 z 19 przy błędzie zapotrzebowania 2% | Dwa przebiegi testowe z dobowym błędem 2% dodanym do szacowanego zużycia gospodarstw domowych, przy pozostałych ustawieniach bez zmian. |
| Od 9 do 16 z 19 przy innych progach | Sprawdzono 37 ustawień progów, które na danych z 2018 roku uzyskały wynik w granicach 5% od najlepszego; każde uruchomiono na danych z 2019 roku (mediana 13). |
| 0,5 ms na scenariusz wycieku w przeglądarce | Mediana czasu obliczenia stanu ustalonego w EPANET dla modelu z 782 węzłami w osadzonym widoku, na laptopie z M1 Pro w Chromium. Na telefonach będzie wolniej. |
Kadry
Wypróbuj na żywo
Interaktywny widok działający w przeglądarce. Nic się nie wczytuje, dopóki nie zostanie otwarty.