Content deleted Content added
m Typography: use ± instead of "+/-" |
|||
Line 2:
While Marzullo's Algorithm will return the smallest interval consistent with the largest number of sources, the returned interval does not necessarily include the center point (calculated offset) of all the sources in the intersection. The Intersection Algorithm returns an interval that includes that returned by Marzullo's algorithm but may be larger since it will include the center points. This larger interval allows using additional statistical data to select a point within the interval, reducing the [[jitter]] in repeated execution.
==Method==
Given M intervals c
The intersection algorithm begins by creating a table of tuples <offset,type>. For each interval there are three entries, the lower endpoint, the midpoint and the upper endpoint, labelled with types
Variables: This algorithm uses ''f'' as number of false tickers, ''endcount'' and ''midcount' are integers. ''Lower'' and ''upper'' are values of offsets.
0) [initialize best f] Start with ''f''=0, assuming all input intervals are valid. Each time no interval is found f will be incremented until either an interval is found or ''f''
1) [initialize] ''endcount''=0 ''midcount''=0
2) [find lower endpoint] Start at begining of the list (lowest offset) consider each tuple in order. ''endpoint'' = ''endpoint''
3) [tentative lower endpoint found, initialize to find upper endpoint] set ''endcount''=0.
4) [determine number of midpoints] Start from end of list and work towards lower offsets. ''endcount'' = ''endcount''+''type''.
5) if ''lower''
6) [increment number of falsetickers] ''f'' = ''f''+1.
[[Category:Algorithms]]
|