{"id":69,"date":"2025-06-30T23:16:08","date_gmt":"2025-06-30T15:16:08","guid":{"rendered":"https:\/\/deigel.me\/blog\/?p=69"},"modified":"2026-01-31T23:20:22","modified_gmt":"2026-01-31T15:20:22","slug":"improved-heuristic-to-reduce-oscillations-in-transit-assignment-on-refined-networks","status":"publish","type":"post","link":"https:\/\/deigel.me\/blog\/?p=69","title":{"rendered":"Improved Heuristic to Reduce Oscillations in Transit Assignment on Refined Networks"},"content":{"rendered":"<h2>1. The Challenge: Why Transit Assignment Oscillates on Refined Networks<\/h2>\n<p>Frequency-based transit assignment is widely used for planning high-frequency public transport.<br \/>\nBut when we <strong>refine network representations<\/strong> (e.g., explicit dwell links and transfer-station modeling) and let <strong>effective service frequency depend on passenger flow<\/strong> (to capture congestion), two practical problems emerge:<\/p>\n<ol>\n<li><strong>Re-boarding artifacts at transfer stations:<\/strong> expanded representations may allow passengers to <em>alight and re-board the same line<\/em> at the same stop, creating unrealistic movements.  <\/li>\n<li><strong>Algorithmic instability:<\/strong> with flow-dependent effective frequencies, standard iterative solvers can exhibit <strong>period-two oscillations<\/strong> or very slow convergence.<\/li>\n<\/ol>\n<p>This paper addresses both issues with a refined representation and a lightweight stabilizer that improves convergence while preserving the main assignment workflow.<\/p>\n<hr \/>\n<h2>2. Core Contribution 1: PLM Representation to Eliminate Re-boarding<\/h2>\n<h3>What is PLM?<\/h3>\n<p>We introduce a <strong>Pre-Line Marked (PLM)<\/strong> representation that conditions each station decision on <em>(stop, destination)<\/em> and the <strong>preceding line<\/strong> (\u201cpre-line\u201d). This preserves transfer context and yields clearer station-level flow decomposition.<\/p>\n<p>A key reinterpretation is that \u201csame-line transfer\u201d becomes an <strong>on-board dwell-window decision<\/strong>:<\/p>\n<ul>\n<li>If a passenger already arrives on line <em>m<\/em>, the \u201cwaiting time\u201d for <em>m<\/em> is the <strong>remaining dwell time<\/strong> (not a headway-based wait).<\/li>\n<li>Other candidate lines still use effective frequency-based waiting.<\/li>\n<\/ul>\n<p>This removes incentives for irrational re-boarding and produces more realistic transfer behavior.<\/p>\n<img decoding=\"async\" src=\"https\" alt=\"Expanded network vs. PLM representation at a transfer station (conceptual diagram).\" width=\"820\" \/>\n<ul>\n<li>\n<b>Figure 2:<\/b> Expanded network vs. PLM representation. PLM conditions decisions on the preceding line, preventing re-boarding artifacts and refining station-level flow allocation.\n<\/li>\n<\/ul>\n<hr \/>\n<h2>3. Core Contribution 2: A Tractable UE Formulation via Variational Inequality (VI)<\/h2>\n<p>PLM defines user equilibrium (UE) over <strong>strategy proportions<\/strong> at each decision state <em>(stop i, destination s, pre-line m)<\/em>.<\/p>\n<p>Because strategy choices affect flows, flows affect effective frequencies, and effective frequencies affect costs, the equilibrium is reformulated as a <strong>finite-dimensional Variational Inequality (VI)<\/strong>. This provides a principled basis for existence analysis and solver design.<\/p>\n<img decoding=\"async\" src=\"https\" alt=\"A reformulation diagram from PLM choice principles to an integrated UE, then to the VI formulation.\" width=\"760\" \/>\n<ul>\n<li>\n<b>Figure 3:<\/b> Reformulation of the PLM-based equilibrium into a solvable VI problem.\n<\/li>\n<\/ul>\n<hr \/>\n<h2>4. Core Contribution 3: ODA \u2014 A Plug-in Stabilizer for Oscillation Control<\/h2>\n<h3>Why oscillations happen<\/h3>\n<p>With flow-dependent effective frequencies, the loading step becomes an <strong>inner fixed-point problem<\/strong>. Lagged-frequency updates inside standard MSA-style loops can be non-contractive, producing <strong>period-two flip oscillations<\/strong>.<\/p>\n<h3>ODA: detect + damp<\/h3>\n<p>We propose an <strong>Oscillation Detection Algorithm (ODA)<\/strong> that:<\/p>\n<ul>\n<li><strong>Monitors<\/strong> normalized share updates of effective frequencies,<\/li>\n<li><strong>Detects<\/strong> a period-two signature,<\/li>\n<li><strong>Applies damping<\/strong> only when instability is detected (via short-window averaging).<\/li>\n<\/ul>\n<p>ODA can be inserted modularly without redesigning the outer assignment loop.<\/p>\n<img decoding=\"async\" src=\"https\" alt=\"Flowchart showing where ODA is inserted into the MSA-style assignment loop.\" width=\"760\" \/>\n<ul>\n<li>\n<b>Figure 4:<\/b> MSA workflow with an inner stabilization slot. ODA is inserted modularly without altering the overall structure.\n<\/li>\n<\/ul>\n<hr \/>\n<h2>5. Numerical Results: From Small Networks to Winnipeg<\/h2>\n<h3>5.1 Small network: realism + stability<\/h3>\n<p>On a benchmark small network, PLM removes re-boarding artifacts while maintaining sensible line-level outcomes.<br \/>\nWhen congestion sensitivity increases, baseline MSA exhibits oscillations; <strong>MSA-ODA<\/strong> suppresses oscillations and improves convergence.<\/p>\n<img decoding=\"async\" src=\"https\" alt=\"Convergence curves comparing baseline MSA and MSA-ODA under different congestion sensitivity settings.\" width=\"820\" \/>\n<ul>\n<li>\n<b>Figure 7:<\/b> Convergence performance. ODA removes saw-tooth oscillations while remaining lightweight.\n<\/li>\n<\/ul>\n<h3>5.2 Station-level interpretability<\/h3>\n<p>Even when line flows are similar, station-level movements can differ. PLM separates flows by provenance (arriving line vs. new entrants) and yields behaviorally meaningful transfers.<\/p>\n<img decoding=\"async\" src=\"https\" alt=\"Station-level flow comparison at a transfer node under PLM vs. a classical expanded representation.\" width=\"820\" \/>\n<ul>\n<li>\n<b>Figure 9:<\/b> Station-level flows at a transfer node: PLM provides provenance-aware movements; classical representations may imply re-boarding artifacts.\n<\/li>\n<\/ul>\n<h3>5.3 Winnipeg network: scalability<\/h3>\n<p>On the Winnipeg bus network, ODA remains practical and robust across demand regimes, improving convergence compared with baseline methods while avoiding heavy inner solves.<\/p>\n<img decoding=\"async\" src=\"https\" alt=\"Winnipeg network results comparing algorithm performance across low\/medium\/high demand regimes.\" width=\"820\" \/>\n<ul>\n<li>\n<b>Figure 10:<\/b> Winnipeg benchmark: ODA improves robustness across demand regimes and scales efficiently.\n<\/li>\n<\/ul>\n<hr \/>\n<h2>6. Takeaways<\/h2>\n<ul>\n<li><strong>PLM representation<\/strong> eliminates re-boarding artifacts by conditioning decisions on the preceding line and reinterpreting same-line behavior via dwell-window choice.<\/li>\n<li><strong>VI reformulation<\/strong> makes the refined equilibrium analyzable and solvable in a principled way.<\/li>\n<li><strong>ODA stabilizer<\/strong> targets inner-loop instability and improves convergence while preserving standard assignment workflows.<\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<ol>\n<li>The Challenge: Why Transit Assignment Oscillates on  [&hellip;]<\/li>\n<\/ol>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-69","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/deigel.me\/blog\/index.php?rest_route=\/wp\/v2\/posts\/69","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/deigel.me\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/deigel.me\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/deigel.me\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/deigel.me\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=69"}],"version-history":[{"count":1,"href":"https:\/\/deigel.me\/blog\/index.php?rest_route=\/wp\/v2\/posts\/69\/revisions"}],"predecessor-version":[{"id":70,"href":"https:\/\/deigel.me\/blog\/index.php?rest_route=\/wp\/v2\/posts\/69\/revisions\/70"}],"wp:attachment":[{"href":"https:\/\/deigel.me\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=69"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/deigel.me\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=69"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/deigel.me\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=69"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}