BI Adaptive
← Alle cases

Case 06 · Model B — productdemo

Waar presteert het netwerk — en waar juist niet?

Interactieve geografische analyse van lijnen, haltes, reizigersstromen en opbrengsten. Filter op KPI, maand, reizigersgroep en lijn, en zie waar gebruik en opbrengsten zich concentreren — en welke delen relatief weinig bijdragen.

Let opDeze case is geanonimiseerd. Bedrijfsgevoelige data, bedragen, namen en visualisaties zijn aangepast of vervangen door fictieve voorbeelden.

Probeer het zelf

Kies een maand, reizigersgroep en KPI. Gebruik daarna de lijn- en haltefilters om te schakelen tussen de belangrijkste en de minst bijdragende delen van het netwerk.

  • Bubbels = relatieve omvang van de gekozen KPI
  • Kleur = lijn
  • Belangrijkste bijdrage = Pareto
  • Laagste bijdrage = inverse Pareto
  • Dynamische tekst = aandeel van de huidige selectie
Model B — interactieve demo
Demo laden…

Op een klein scherm werkt de demo het prettigst via of een nieuw tabblad.

Functionaliteit

Wat Model B nu kan

De huidige synthetische portfolio-build is een werkend productprototype, geen statisch plaatje. Alles hieronder reageert live op je selectie.

Lijn

Iedere halte per lijn, met een eigen kleur en start-/eindpuntmarkeringen. Klik op een halte en de volledige lijn licht op.

Combined

Meerdere lijnen op dezelfde fysieke halte worden samengevoegd — geschikt om knooppunten en concentraties te zien.

Route

Lijnen worden als verbinding tussen start- en eindpunt getoond; de lijnsterkte reageert op de gekozen waarde.

Metrics

InstappersUitstappersOpbrengst

Filters

ReizigersgroepMaandLijnselectieWeergavemodusMetric

De metricselectie is eenvoudig uitbreidbaar. Reizigerskilometers kan op dezelfde manier als instappers, uitstappers en opbrengst als extra KPI aan de kaart worden toegevoegd; de benodigde afstandslogica is al onderdeel van de dataopbouw. Een extra KPI toevoegen is dus geen nieuw product bouwen.

Analysemethode

Belangrijkste en laagste bijdrage

Een onderscheidend onderdeel van Model B is de dubbele Pareto-analyse. Je kunt afzonderlijk filteren op lijnen en op haltes, en de richting omdraaien.

Belangrijkste bijdrage

Laat zien welke relatief kleine groep lijnen of haltes samen het grootste deel van de geselecteerde KPI vertegenwoordigt — bijvoorbeeld welke haltes samen het leeuwendeel van de instappers of opbrengst opleveren.

Laagste bijdrage

Draait de analyse om (inverse Pareto): een relatief groot deel van het netwerk dat samen slechts een klein aandeel van de geselecteerde KPI vertegenwoordigt.

Onder de selectie genereert Model B automatisch een rekenkundige toelichting — bijvoorbeeld “27 van 68 lijnen vertegenwoordigen 2,2% van de geselecteerde opbrengst binnen de huidige filters”. Die tekst verandert live mee met de metric, reizigersgroep, maand en drempel.

Een lage financiële of operationele bijdrage betekent niet automatisch dat een lijn overbodig is. Maatschappelijke, contractuele en netwerkfuncties kunnen eveneens relevant zijn.

De aanleiding

Tabellen vertelden niet het hele verhaal

De oorspronkelijke analyse ontstond rond productontwikkeling binnen een OV-context. Er was veel informatie beschikbaar op lijn- en halteniveau, maar die zat vooral in tabellen en Excel-overzichten.

Vragen als 'waar stappen gebruikers in en uit?', 'welke lijnen gebruiken ze?' en 'waar zit de meeste opbrengst?' waren technisch wel te beantwoorden — maar je moest vooraf al ongeveer weten waar je naar zocht. De geografische samenhang was niet direct zichtbaar.

Waar reizen deze klanten daadwerkelijk, en welke delen van het netwerk zijn voor deze doelgroep het belangrijkst?

Eigen rol

Mijn rol

Mijn rol was niet het bouwen van de onderliggende bronsystemen. Samen met business- en data-analisten bepaalde ik welke informatie nodig was; vervolgens werkte ik zelf de analysemethode en de gewenste visualisatie uit.

  • De businessvraag vertalen naar databehoefte
  • Relevante velden bepalen en reizigers-/productgroepen mappen
  • Lijn- en haltegegevens structureren en haltevolgorde koppelen
  • Geografie toevoegen (coördinaten per halte)
  • KPI-logica en filters bepalen
  • Pareto- en inverse-Pareto-logica ontwerpen
  • Met AI Python-, HTML- en JavaScript-code ontwikkelen
  • Resultaten controleren en bespreken met vervoerkundigen en een businessanalist

Data & geografie

Van haltenaam naar geografisch netwerk

Voor een geografische analyse zijn coördinaten nodig. Op basis van haltenaam en plaats konden latitude en longitude worden toegevoegd, en per lijn is de haltevolgorde beschikbaar.

In deze synthetische portfolio-demo worden publieke haltecoördinaten gebruikt; de lijnen, reizigersaantallen en opbrengsten zijn fictief.

Excel / inputMappingLijn / halteGeografiePython / FoliumHTML / JSFilters / ParetoInteractieve kaart
ExcelPythonpandasxlwingsFoliumLeaflet.jsHTML/CSS/JSpublieke geodata

Resultaat

Resultaat van de oorspronkelijke case

De geografische analyse maakte in één oogopslag zichtbaar waar bepaalde reizigersgroepen daadwerkelijk reisden en welke delen van het netwerk voor hen het belangrijkst waren. De output is besproken met vervoerkundigen en een businessanalist en gebruikt als aanvullende input voor verdere productontwikkeling — de tool bepaalde niet zelf het product of vervoersplan.

AI als hulpmiddel

Hoe ik AI gebruik

AI was een ontwikkelhulpmiddel: het hielp bij Python, HTML, JavaScript, geocoding, kaartlogica, filters, Pareto, popups en debugging. Ik bepaalde de businessvraag, de analysemethode, de KPI- en filterlogica en controleerde de uitkomsten. De werkelijke bedrijfsdata hoefde niet met AI te worden gedeeld; ontwikkeling kon met datastructuren en synthetische voorbeelden.

Productrichting

Van analyse naar productprototype

De demo is meer dan een eenmalige kaart. De kern is een herbruikbare structuur: netwerk + segment + tijd + KPI + selectie + geografische visualisatie. Daardoor kunnen nieuwe KPI's relatief eenvoudig aan dezelfde gebruikerservaring worden toegevoegd zodra de data beschikbaar is.

Nieuwe KPI's zijn niet automatisch een nieuw product. Dezelfde geografische analyselaag kan opnieuw worden gebruikt zodra de data op het juiste niveau beschikbaar is.

Model B is voor mij de basis voor een product dat ik verder wil ontwikkelen tot een herbruikbare oplossing voor vervoerders en mobiliteitsorganisaties.

SoftwarelicentieImplementatie op klantdataConfiguratie / mappingOnderhoud & updatesExtra KPI-modulesPilotprojecten

Toekomstige productrichting. Er bestaan nog geen betalende licenties of een volwassen SaaS-product; de vormen hierboven zijn mogelijke toekomstige leveringsvormen.

Toekomstige modules

Waar dezelfde structuur naartoe kan groeien

Toekomstige module — kostendekkingsgraad

De opbrengstkant zit al logisch in Model B. Voor kostendekkingsgraad is daarnaast een geloofwaardige kostenmodule nodig, die rekening houdt met drivers als dienstregelingsuren, voertuigtype, inzet, frequentie en tijdvak.

opbrengsten
÷ toegerekende operationele kosten
= kostendekkingsgraad

Logische toekomstige financiële module — nog geen bestaande functie.

Toekomstige toepassing — vervoersplan & aanbesteding

Dezelfde kaartarchitectuur zou later kunnen schakelen tussen meerdere lagen, om een tender of vervoersplan niet alleen cijfermatig maar ook visueel begrijpelijk te maken.

NetwerkWat gaan we rijden?

Lijnen, routeverloop, haltevolgorde, corridors en dekking.

VraagWaar verwachten we reizigers?

Verwachte in- en uitstappers en volumes, eventueel spits/dal.

FinancieelWaar verwachten we opbrengsten en dekking?

Opbrengst per lijn, kostendekkingsgraad en scenariovergelijking.

Mogelijke toekomstige toepassing voor tender- en netwerkpresentaties — geen bestaande functionaliteit.

Een eigen netwerk of dataset geografisch analyseren?

Ik denk graag mee over hoe dezelfde aanpak op jouw netwerk- of reizigersdata kan worden toegepast.