Algorithm
By assuming a limited stack size for sequential-type decoding algorithm, some of the paths have to be deleted when the stack exceeds its upper limit. A deletion scheme therefore is essential such that the paths that are more unlikely to be the maximum-likelihood one should be dropped first. In this chapter, we will introduce and examine several deletion schemes.
3.1 Path Deletion Based on ML Path Metric
In 2002, a metric for use by the sequential-type decoding algorithm was derived based on the Wagner rule [4]. The authors in [4] also proved that applying this metric in place of Fano metric in the sequential decoding search guarantees ML performance. A straightforward path deletion scheme is thus to drop the one with the largest ML path metric among all paths currently in the stack. We refer this scheme as the ML metric-based path deletion scheme. For completeness, the decoding procedure with ML metric-based deletion scheme is illustrated below.
Step 1. Load the stack with the path consisting of the single start node x0, whose ML metric µ(x0) = 0. Set ` = 0.
Step 2. Extend the top path in the stack to obtain its successor paths. Compute the ML path metric of each successor path. Delete the top path from the stack.
Step 3. Insert the successors into the stack and reorder the stack according to ascending ML path metric values µ. If the stack size exceeds its limit, recursively eliminate the one whose ML metric is the largest until the stack size ≤ limit.
Step 4. If the top path in the stack ends at a terminal node in the code tree, the algorithm stops; otherwise go to Step 2.
3.2 Path Deletion Based on Path Levels
In 2007, the authors in [8] proposed a computational complexity reduction method for their previously proposed sequential-type decoding algorithm [4]. Specifically, their scheme drops the paths of which the levels are smaller than the largest level being reached by the sequential search minus a level threshold ∆. The intuition behind their scheme is that the path with the smallest level among all paths currently in the stack usually tends to accumulate large ML metrics after reaching the explored level (since the ML path metric is non-decreasing along the path it traverses). Hence, we may for convenience simply delete the path with the smallest level when the stack exceeds its limit. Notably, the authors in [8] do not assume a finite stack size in their analysis and simulation, but apply their method to reduce the computational complexity. In this thesis, we re-examine their idea by adding a finite stack size assumption. We refer this scheme as the Level-based path deletion scheme. For completeness, the decoding procedure with level-based deletion scheme is illustrated below.
Step 1. Load the stack with the path consisting of the single start node x0, whose ML metric µ(x0) = 0. Set ` = 0.
Step 2. Extend the top path in the stack to obtain its successor paths. Compute the ML path metric of each successor path. Delete the top path from the stack.
Step 3. Insert the successors into the stack and reorder the stack according to ascending ML path metric values µ. If the stack size exceeds its limit, recursively eliminate the one whose level is the smallest until the stack size ≤ limit.
Step 4. If the top path in the stack ends at a terminal node in the code tree, the algorithm stops; otherwise go to Step 2.
3.3 Path Deletion Based on Fano Metric
The ML metric-based path deletion scheme in Section 3.1 drops the path with the largest path metric when the stack is full. However, the path metrics that the deletion scheme is based only accumulate those branch metrics that have been traversed thus far, and no prediction on the future route is performed. Now if we can replace the ending level by a metric that includes future route prediction, and use it as a base for path deletion, the performance may be improved.
Based on Massey’s analysis in [6], Fano metric in [3] can be regarded as an average of the future branch metrics, which have not been traversed. With this in mind, Fano metric may be a good candidate to serve as the metric that the deletion scheme is based. We refer this scheme as the Fano metric-based path deletion scheme. For completeness, the decoding procedure with Fano metric-based deletion scheme is illustrated below.
Step 1. Load the stack with the path consisting of the single start node x0, whose ML
metric µ(x0) = 0. Set ` = 0.
Step 2. Extend the top path in the stack to obtain its successor paths. Compute the ML path metric and Fano path metric of each successor path. Delete the top path from the stack.
Step 3. Insert the successors into the stack and reorder the stack according to ascending ML path metric values µ. If the stack size exceeds its limit, recursively eliminate the one with the largest Fano path metric until the stack size ≤ limit.
Step 4. If the top path in the stack ends at a terminal node in the code tree, the algorithm stops; otherwise go to Step 2.
3.4 Summary
The path deletion schemes introduced in this chapter are designed to target the goal that the path that is the most unlikely to belong to the final ML decision is located and dropped when the stack is full. Simulations in Section 5.1 show that given a finite stack size, the Fano metric-based deletion scheme has better performance than the other two schemes. As far as the computational complexity (i.e., the average number of ML metric computations per information bit, or the average number of path expansions per information bit) is concerned, the level-based deletion scheme becomes superior over the other two. Here, we exclude the additional burden to maintain two indices for the stack in level-based and Fano metric-based deletion schemes, which may not be practical. In order to alleviate such additional burden, we will introduce an alternative decoding algorithm that use the same metric in path expansion and path deletion, for which both the error rate and computational complexity are comparable to the best among the three schemes just introduced, but without the burden to maintain additional index for the stack.