一些启发式块排序算法的实现与性能比较

A. Asaithambi, Swapnoneel Roy, Sandhya Turlapaty
{"title":"一些启发式块排序算法的实现与性能比较","authors":"A. Asaithambi, Swapnoneel Roy, Sandhya Turlapaty","doi":"10.1109/BIBE.2017.00-80","DOIUrl":null,"url":null,"abstract":"Block Sorting is an APX-hard combinatorial optimization problem motivated by applications in genome rearrangements. While previous works on block sorting have mainly focused on theoretical analyses of approximation algorithms, in this work we develop an implementation framework for block sorting in the Java programming language. Our framework uses a simple data structure for a block and includes methods to: manipulate blocks; extract useful information about blocks at various stages in a block sorting algorithm; and perform block moves. We use this framework to implement algorithms for block sorting, based on three different heuristics: 1) each block move guarantees a reduction of at least one block; 2) block moves are performed only on those blocks which are not members of the longest increasing subsequence (of blocks) in the original permutation; and 3) each block move either reduces the number of blocks by two or three blocks, or reduces the number of reversals or inversions in the original permutation. We analyze and compare these algorithms for their performance as the order of permutations is varied, using the measures of number of block moves and approximation ratios when sorting kernelized permutations of a given order. To the best of our knowledge this is the first work that is focused on implementation and experimental performance analysis of any algorithm for block sorting. We believe our results will be useful for researchers and practitioners working in this area.","PeriodicalId":262603,"journal":{"name":"2017 IEEE 17th International Conference on Bioinformatics and Bioengineering (BIBE)","volume":"345 2","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2017-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":"{\"title\":\"Implementation and Performance Comparison of Some Heuristic Algorithms for Block Sorting\",\"authors\":\"A. Asaithambi, Swapnoneel Roy, Sandhya Turlapaty\",\"doi\":\"10.1109/BIBE.2017.00-80\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Block Sorting is an APX-hard combinatorial optimization problem motivated by applications in genome rearrangements. While previous works on block sorting have mainly focused on theoretical analyses of approximation algorithms, in this work we develop an implementation framework for block sorting in the Java programming language. Our framework uses a simple data structure for a block and includes methods to: manipulate blocks; extract useful information about blocks at various stages in a block sorting algorithm; and perform block moves. We use this framework to implement algorithms for block sorting, based on three different heuristics: 1) each block move guarantees a reduction of at least one block; 2) block moves are performed only on those blocks which are not members of the longest increasing subsequence (of blocks) in the original permutation; and 3) each block move either reduces the number of blocks by two or three blocks, or reduces the number of reversals or inversions in the original permutation. We analyze and compare these algorithms for their performance as the order of permutations is varied, using the measures of number of block moves and approximation ratios when sorting kernelized permutations of a given order. To the best of our knowledge this is the first work that is focused on implementation and experimental performance analysis of any algorithm for block sorting. We believe our results will be useful for researchers and practitioners working in this area.\",\"PeriodicalId\":262603,\"journal\":{\"name\":\"2017 IEEE 17th International Conference on Bioinformatics and Bioengineering (BIBE)\",\"volume\":\"345 2\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2017-10-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"2\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2017 IEEE 17th International Conference on Bioinformatics and Bioengineering (BIBE)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/BIBE.2017.00-80\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2017 IEEE 17th International Conference on Bioinformatics and Bioengineering (BIBE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/BIBE.2017.00-80","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

摘要

块排序是一种APX-hard组合优化问题,主要应用于基因组重排。先前关于块排序的工作主要集中在近似算法的理论分析上,而在这项工作中,我们开发了一个用Java编程语言进行块排序的实现框架。我们的框架使用了一个简单的块数据结构,并包含了操作块的方法;在块排序算法的各个阶段提取关于块的有用信息;并执行方块移动。我们使用这个框架来实现基于三种不同启发式的块排序算法:1)每个块移动保证至少减少一个块;2)块移动只在原始排列中不属于最长递增子序列(块)的那些块上执行;3)每个方块移动要么减少两个或三个方块的数量,要么减少原始排列中的反转或反转的数量。我们分析和比较了这些算法的性能,因为排列顺序是不同的,使用块移动的数量和近似比率的测量,当排序给定顺序的核化排列。据我们所知,这是第一个专注于块排序算法的实现和实验性能分析的工作。我们相信我们的结果将对这一领域的研究人员和从业人员有用。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
Implementation and Performance Comparison of Some Heuristic Algorithms for Block Sorting
Block Sorting is an APX-hard combinatorial optimization problem motivated by applications in genome rearrangements. While previous works on block sorting have mainly focused on theoretical analyses of approximation algorithms, in this work we develop an implementation framework for block sorting in the Java programming language. Our framework uses a simple data structure for a block and includes methods to: manipulate blocks; extract useful information about blocks at various stages in a block sorting algorithm; and perform block moves. We use this framework to implement algorithms for block sorting, based on three different heuristics: 1) each block move guarantees a reduction of at least one block; 2) block moves are performed only on those blocks which are not members of the longest increasing subsequence (of blocks) in the original permutation; and 3) each block move either reduces the number of blocks by two or three blocks, or reduces the number of reversals or inversions in the original permutation. We analyze and compare these algorithms for their performance as the order of permutations is varied, using the measures of number of block moves and approximation ratios when sorting kernelized permutations of a given order. To the best of our knowledge this is the first work that is focused on implementation and experimental performance analysis of any algorithm for block sorting. We believe our results will be useful for researchers and practitioners working in this area.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信