<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.openttdcoop.org/index.php?action=history&amp;feed=atom&amp;title=Destructive_Interference</id>
		<title>Destructive Interference - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.openttdcoop.org/index.php?action=history&amp;feed=atom&amp;title=Destructive_Interference"/>
		<link rel="alternate" type="text/html" href="https://wiki.openttdcoop.org/index.php?title=Destructive_Interference&amp;action=history"/>
		<updated>2026-04-28T19:33:15Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.25.2</generator>

	<entry>
		<id>https://wiki.openttdcoop.org/index.php?title=Destructive_Interference&amp;diff=16451&amp;oldid=prev</id>
		<title>Hazzard: /* Solution */</title>
		<link rel="alternate" type="text/html" href="https://wiki.openttdcoop.org/index.php?title=Destructive_Interference&amp;diff=16451&amp;oldid=prev"/>
				<updated>2013-12-07T17:27:34Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Solution&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 17:27, 7 December 2013&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L25&quot; &gt;Line 25:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 25:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Solution =&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;= Solution =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;There is no perfect solution. &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;That &lt;/del&gt;which &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;does &lt;/del&gt;exist &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;has &lt;/del&gt;side effects. However, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;it &lt;/del&gt;is mercifully simple, and in practice works quite well.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;There is no perfect solution. &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Those &lt;/ins&gt;which &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;do &lt;/ins&gt;exist &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;have &lt;/ins&gt;side effects. However, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;this solution &lt;/ins&gt;is mercifully simple, and in practice works quite well.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:Destructive2.png|center]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File:Destructive2.png|center]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hazzard</name></author>	</entry>

	<entry>
		<id>https://wiki.openttdcoop.org/index.php?title=Destructive_Interference&amp;diff=13117&amp;oldid=prev</id>
		<title>Hazzard: /* Solution */</title>
		<link rel="alternate" type="text/html" href="https://wiki.openttdcoop.org/index.php?title=Destructive_Interference&amp;diff=13117&amp;oldid=prev"/>
				<updated>2012-05-28T08:50:10Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Solution&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 08:50, 28 May 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L35&quot; &gt;Line 35:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 35:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Some important considerations:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Some important considerations:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* The prio &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;lookahead &lt;/del&gt;length is crucial. It must be ensured that trains entering the double bridge system cannot continually block the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;de&lt;/del&gt;-prioritized track, as this will cause the system to effectively revert to being a single bridge. '''In particular, the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;lookahead &lt;/del&gt;cannot exceed the length of the longest bridge in the system.'''&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* The prio &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;look-ahead &lt;/ins&gt;length is crucial. It must be ensured that trains entering the double bridge system cannot continually block the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;non&lt;/ins&gt;-prioritized track, as this will cause the system to effectively revert to being a single bridge. '''In particular, the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;look-ahead &lt;/ins&gt;cannot exceed the length of the longest bridge in the system.'''&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* The experimentally observed ideal prio length is two tiles, that is, an exit signal, one empty track tile, normal signal.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* The experimentally observed ideal prio length is two tiles, that is, an exit signal, one empty track tile, normal signal.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;As mentioned, this fix is not without a side effect: any blockages will cause the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;deprioritized &lt;/del&gt;track to lose synchronization with the prioritized track and queue until there is a sufficient gap for it to join without blocking the prioritized track. In particular, this fix is pessimistic about whether a train can join without blocking the prioritized track, and this pessimism grows with the length of the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;lookahead&lt;/del&gt;. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;As mentioned, this fix is not without a side effect: any blockages will cause the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;non-prioritized &lt;/ins&gt;track to lose synchronization with the prioritized track and queue until there is a sufficient gap for it to join without blocking the prioritized track. In particular, this fix is pessimistic about whether a train can join without blocking the prioritized track, and this pessimism grows with the length of the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;look ahead&lt;/ins&gt;. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Not all situations require this fix. In particular, those without contributing factors probably do not. '''If &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;in doubt&lt;/del&gt;, don't &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;apply &lt;/del&gt;it.''' This is doubly good advice as, if destructive interference becomes a problem, the fix is rather trivial to apply&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Not all situations require this fix. In particular, those without contributing factors probably do not. '''If &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;you are not sure it is broken&lt;/ins&gt;, don't &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;fix &lt;/ins&gt;it.''' This is doubly good advice as, if destructive interference becomes a problem, the fix is rather trivial to apply&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Hazzard</name></author>	</entry>

	<entry>
		<id>https://wiki.openttdcoop.org/index.php?title=Destructive_Interference&amp;diff=11600&amp;oldid=prev</id>
		<title>OwenS: /* Solution */ Elaborate on pessimism</title>
		<link rel="alternate" type="text/html" href="https://wiki.openttdcoop.org/index.php?title=Destructive_Interference&amp;diff=11600&amp;oldid=prev"/>
				<updated>2010-06-06T23:19:22Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Solution: &lt;/span&gt; Elaborate on pessimism&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 23:19, 6 June 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L38&quot; &gt;Line 38:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 38:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* The experimentally observed ideal prio length is two tiles, that is, an exit signal, one empty track tile, normal signal.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* The experimentally observed ideal prio length is two tiles, that is, an exit signal, one empty track tile, normal signal.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;As mentioned, this fix is not without a side effect: any blockages will cause the deprioritized track to lose synchronization with the prioritized track and queue until there is a sufficient gap for it to join without blocking the prioritized track. In particular, this fix is pessimistic about whether a train can join without blocking the prioritized track. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;As mentioned, this fix is not without a side effect: any blockages will cause the deprioritized track to lose synchronization with the prioritized track and queue until there is a sufficient gap for it to join without blocking the prioritized track. In particular, this fix is pessimistic about whether a train can join without blocking the prioritized track&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;, and this pessimism grows with the length of the lookahead&lt;/ins&gt;. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Not all situations require this fix. In particular, those without contributing factors probably do not. '''If in doubt, don't apply it.''' This is doubly good advice as, if destructive interference becomes a problem, the fix is rather trivial to apply&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Not all situations require this fix. In particular, those without contributing factors probably do not. '''If in doubt, don't apply it.''' This is doubly good advice as, if destructive interference becomes a problem, the fix is rather trivial to apply&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>OwenS</name></author>	</entry>

	<entry>
		<id>https://wiki.openttdcoop.org/index.php?title=Destructive_Interference&amp;diff=11599&amp;oldid=prev</id>
		<title>OwenS: Created page with '''Destructive Interference'' describes the situation where trains exiting a double-bridge or tunnel interfere with each other's progression in a manner destructive to their throu…'</title>
		<link rel="alternate" type="text/html" href="https://wiki.openttdcoop.org/index.php?title=Destructive_Interference&amp;diff=11599&amp;oldid=prev"/>
				<updated>2010-06-06T23:17:55Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;#039;&amp;#039;&amp;#039;Destructive Interference&amp;#039;&amp;#039; describes the situation where trains exiting a double-bridge or tunnel interfere with each other&amp;#039;s progression in a manner destructive to their throu…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;''Destructive Interference'' describes the situation where trains exiting a double-bridge or tunnel interfere with each other's progression in a manner destructive to their throughput. It is also referred to as ''Slow mode'' or ''Evil mode''&lt;br /&gt;
&lt;br /&gt;
= Overview =&lt;br /&gt;
[[File:Destructive1.png|center]]&lt;br /&gt;
&lt;br /&gt;
The above picture shows a number of typical double bridges and tunnels. There is nothing wrong with them; they are our standard way of dealing with the inability to place signals on bridges or inside of tunnels.&lt;br /&gt;
&lt;br /&gt;
However, there is an issue whenever we use multiple bridges or tunnels in order to handle the traffic of one line; namely, that they must eventually be merged together. At the merging point, a situation  can occur where the two tracks each release a train in turn from a stand still, and these trains then proceed to destructively interfere with each other. This requires, of course, that the track leaving the merge is temporarily blocked.&lt;br /&gt;
&lt;br /&gt;
Once destructive interference starts, the chain of events is quite simple:&lt;br /&gt;
* One track releases a train from standstill. &lt;br /&gt;
* Another train arrives at the merge just before the first train clears it. It is forced to stop.&lt;br /&gt;
* The second train is released from standstill&lt;br /&gt;
* Another train arrives at the merge from the first track just before the second train clears it. It is also forced to stop.&lt;br /&gt;
&lt;br /&gt;
As can be seen, as long as traffic is sufficiently high, destructive interference can continue indefinitely.&lt;br /&gt;
&lt;br /&gt;
= Contributing Factors =&lt;br /&gt;
The following factors, while not causing the occurrence of destructive interference outright, strongly increase its probability and/or longevity&lt;br /&gt;
* Proximity to merges (Particularly priority-less merges or those prioritized against the bridged track) or other situations which can cause the output line to become blocked&lt;br /&gt;
* Long bridges - in particular, those 1.5x the train length or longer&lt;br /&gt;
* High train holding capacity within the doubled system - approximately two or three trains per track or higher&lt;br /&gt;
&lt;br /&gt;
Situations involving only one of these rarely exhibit symptoms; those involving two do only occasionally. Those involving three or more do regularly, particularly under high load.&lt;br /&gt;
&lt;br /&gt;
= Solution =&lt;br /&gt;
There is no perfect solution. That which does exist has side effects. However, it is mercifully simple, and in practice works quite well.&lt;br /&gt;
[[File:Destructive2.png|center]]&lt;br /&gt;
&lt;br /&gt;
The above picture modifies the central double bridge in order to prevent destructive interference from beginning. What has been done?&lt;br /&gt;
* One track off the bridge has been given priority&lt;br /&gt;
* A signal has been removed so that the priority has sufficient look-ahead.&lt;br /&gt;
&lt;br /&gt;
The fix works by allowing one of the tracks to empty at full speed, rather than causing both tracks to slow to a crawl. &lt;br /&gt;
&lt;br /&gt;
Some important considerations:&lt;br /&gt;
* The prio lookahead length is crucial. It must be ensured that trains entering the double bridge system cannot continually block the de-prioritized track, as this will cause the system to effectively revert to being a single bridge. '''In particular, the lookahead cannot exceed the length of the longest bridge in the system.'''&lt;br /&gt;
* The experimentally observed ideal prio length is two tiles, that is, an exit signal, one empty track tile, normal signal.&lt;br /&gt;
&lt;br /&gt;
As mentioned, this fix is not without a side effect: any blockages will cause the deprioritized track to lose synchronization with the prioritized track and queue until there is a sufficient gap for it to join without blocking the prioritized track. In particular, this fix is pessimistic about whether a train can join without blocking the prioritized track. &lt;br /&gt;
&lt;br /&gt;
Not all situations require this fix. In particular, those without contributing factors probably do not. '''If in doubt, don't apply it.''' This is doubly good advice as, if destructive interference becomes a problem, the fix is rather trivial to apply&lt;/div&gt;</summary>
		<author><name>OwenS</name></author>	</entry>

	</feed>