Time efficient segmented technique for dynamic programming based algorithms with FPGA implementation
ORCID Identifiers
Document Type
Article
Source of Publication
Journal of Circuits, Systems and Computers
Publication Date
12-15-2019
Abstract
© 2019 World Scientific Publishing Company. Although dynamic programming (DP) is an optimization approach used to solve a complex problem fast, the time required to solve it is still not efficient and grows polynomially with the size of the input. In this contribution, we improve the computation time of the dynamic programming based algorithms by proposing a novel technique, which is called "SDP: Segmented Dynamic programming". SDP finds the best way of splitting the compared sequences into segments and then applies the dynamic programming algorithm to each segment individually. This will reduce the computation time dramatically. SDP may be applied to any dynamic programming based algorithm to improve its computation time. As case studies, we apply the SDP technique on two different dynamic programming based algorithms; "Needleman-Wunsch (NW)", the widely used program for optimal sequence alignment, and the LCS algorithm, which finds the "Longest Common Subsequence" between two input strings. The results show that applying the SDP technique in conjunction with the DP based algorithms improves the computation time by up to 80% in comparison to the sole DP algorithms, but with small or ignorable degradation in comparing results. This degradation is controllable and it is based on the number of split segments as an input parameter. However, we compare our results with the well-known heuristic FASTA sequence alignment algorithm, "GGSEARCH". We show that our results are much closer to the optimal results than the "GGSEARCH" algorithm. The results are valid independent from the sequences length and their level of similarity. To show the functionality of our technique on the hardware and to verify the results, we implement it on the Xilinx Zynq-7000 FPGA.
DOI Link
ISSN
Publisher
World Scientific Publishing Co. Pte Ltd
Volume
28
Issue
13
First Page
1950227
Disciplines
Computer Sciences
Keywords
Dynamic programming, FPGA, LCS, NW, performance, time complexity
Scopus ID
Recommended Citation
Bonny, Talal; Al Debsi, Ridhwan; and Almourad, Mohamed Basel, "Time efficient segmented technique for dynamic programming based algorithms with FPGA implementation" (2019). All Works. 3657.
https://zuscholars.zu.ac.ae/works/3657
Indexed in Scopus
yes
Open Access
no