forked from cicirello/JavaPermutationTools
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
262 lines (262 loc) · 13.7 KB
/
index.html
File metadata and controls
262 lines (262 loc) · 13.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
<!DOCTYPE html>
<html amp lang=en itemscope itemtype="http://schema.org/WebPage" itemref="logo">
<head>
<meta charset=utf-8>
<link rel="canonical" href="https://jpt.cicirello.org/">
<link itemprop="url" href="https://jpt.cicirello.org/">
<meta name="viewport" content="width=device-width, minimum-scale=1, initial-scale=1">
<meta name="title" content="JavaPermutationTools - A Java library for computation on permutations and sequences">
<meta itemprop="name" content="JavaPermutationTools - A Java library for computation on permutations and sequences">
<meta name="description" content="JavaPermutationTools - A Java library for computation on permutations and sequences - The JPT library includes a variety of
permutation distance metrics as well as distance metrics on sequences (i.e., Strings, arrays, and other ordered data types).">
<meta itemprop="description" content="JavaPermutationTools - A Java library for computation on permutations and sequences - The JPT library includes a variety of
permutation distance metrics as well as distance metrics on sequences (i.e., Strings, arrays, and other ordered data types).">
<title>JavaPermutationTools - A Java library for computation on permutations and sequences</title>
<link rel="icon" href="/images/favicon.svg" sizes="any" type="image/svg+xml">
<style amp-custom>
header, nav, footer, article, aside, section { display: block; }
footer { clear: both; }
body { background-color: #f6f0bb; font-family: Arial, Helvetica, sans-serif; }
#siteheader, aside, footer { background-color: #bfd9bf; }
#siteheader, aside, footer, article { border: 2px solid #4CAF50; border-radius: 25px; margin: 10px; padding: 10px; }
h1, h2, h3, h4, h5, h6, strong { color: #862d2d; }
h2, h3 { text-align:center; }
a { color: #4CAF50; }
a:visited { color:#862d2d; }
nav ul { list-style-type: none; margin: 0px; padding: 0; overflow: hidden; }
nav li { float: left; margin-right: 8px; }
nav li a { display: block; background-color: #f6f0bb; border: 2px solid #4CAF50; text-decoration: none; text-align: center; color: #666; border-bottom: none; border-radius: 12px 12px 0px 0px; padding: 6px 12px;}
nav li a:visited { color: #666; }
nav li a:hover:not(.active) { background-color: #305030; color: white; }
nav li a.active { background-color: #4CAF50; }
article li { margin-bottom: 8px; margin-top: 8px; }
.publist li { margin-bottom: 16px; }
.publist ul { margin-bottom: 32px; }
section li { margin-bottom: 16px; }
section ul { margin-bottom: 32px; }
#copyright { text-align: center; color: #862d2d; }
#logo, #backup-logo {max-width: 1280px;}
amp-img.contain img { object-fit: contain; }
.badge-height { position: relative; width: 100%; height: 20px;}
</style>
<style amp-boilerplate>
body {
-webkit-animation: -amp-start 8s steps(1, end) 0s 1 normal both;
-moz-animation: -amp-start 8s steps(1, end) 0s 1 normal both;
-ms-animation: -amp-start 8s steps(1, end) 0s 1 normal both;
animation: -amp-start 8s steps(1, end) 0s 1 normal both;
}
@-webkit-keyframes -amp-start {
from {
visibility: hidden;
}
to {
visibility: visible;
}
}
@-moz-keyframes -amp-start {
from {
visibility: hidden;
}
to {
visibility: visible;
}
}
@-ms-keyframes -amp-start {
from {
visibility: hidden;
}
to {
visibility: visible;
}
}
@-o-keyframes -amp-start {
from {
visibility: hidden;
}
to {
visibility: visible;
}
}
@keyframes -amp-start {
from {
visibility: hidden;
}
to {
visibility: visible;
}
}
</style>
<noscript><style amp-boilerplate>
body {
-webkit-animation: none;
-moz-animation: none;
-ms-animation: none;
animation: none;
}
</style></noscript>
<script async src="https://cdn.ampproject.org/v0.js"></script>
</head>
<body>
<header itemprop="hasPart" itemscope itemtype="https://schema.org/WPHeader" id="siteheader">
<div itemscope>
<h1>
<a href=".">
<amp-img id="logo" itemprop="primaryImageOfPage" itemscope itemtype="http://schema.org/ImageObject"
src="images/jpt.webp"
alt="JavaPermutationTools - A Java library for computation on permutations and sequences"
width="1280"
height="640"
layout="responsive"
srcset="images/jpt.webp 1280w,
images/jpt960.webp 960w,
images/jpt640.webp 640w,
images/jpt320.webp 320w">
<amp-img id="backup-logo"
fallback
src="images/jpt.png"
alt="JavaPermutationTools - A Java library for computation on permutations and sequences"
width="1280"
height="640"
layout="responsive"
srcset="images/jpt.png 1280w,
images/jpt960.png 960w,
images/jpt640.png 640w,
images/jpt320.png 320w">
</amp-img>
</amp-img>
</a>
</h1>
<nav>
<ul>
<li><a href="https://github.com/cicirello/JavaPermutationTools">Source Code</a></li>
<li><a href="api/">API Docs</a></li>
<li><a href="https://search.maven.org/artifact/org.cicirello/jpt">Maven Central</a></li>
<li><a href="https://github.com/cicirello/jpt-examples">Example Programs</a></li>
<li><a href="https://github.com/cicirello/JavaPermutationTools/issues">Issue Tracker</a></li>
<li><a href="https://github.com/cicirello/JavaPermutationTools/blob/master/CHANGELOG.md">ChangeLog</a></li>
</ul>
</nav>
</div>
</header>
<article itemprop="mainEntity" itemscope itemtype="http://schema.org/SoftwareSourceCode">
<h2>JavaPermutationTools</h2>
<section>
<h3>Overview</h3>
<p itemprop="description"><span itemprop="name">JavaPermutationTools</span> (JPT) is a <span itemprop="programmingLanguage">Java</span>
library for representing and generating permutations and sequences, as well as performing
computation on permutations and sequences. This includes implementations of a variety of
permutation distance metrics as well as distance metrics on sequences (i.e., Strings, arrays,
and other ordered data types).</p>
<p>The <a href="https://github.com/cicirello/JavaPermutationTools" itemprop="codeRepository">JPT source
code repository</a> is hosted on GitHub; and is licensed under
the <a itemprop="license" href="https://www.gnu.org/licenses/gpl-3.0.html">GNU
General Public License Version 3 (GPLv3)</a>. The <a href="api/">API documentation</a>
is found on this site.
The library is regularly published
to <a href="https://search.maven.org/artifact/org.cicirello/jpt">Maven Central</a>,
from which it is easily imported into software projects using Maven and other
commonly used build tools.</p>
<p>Additionally, there is a
GitHub <a href="https://github.com/cicirello/jpt-examples">repository of example programs</a> that
show basic usage of the JPT library, as well as replication programs that
reproduce results found in published papers.</p>
<p itemprop="author copyrightHolder" itemscope itemtype="http://schema.org/Person">The JPT library
originated as part of the research
of <a itemprop="url mainEntityOfPage" href="https://www.cicirello.org/"><span itemprop="name">Vincent
A. Cicirello</span></a>.</p>
</section>
<section>
<h3>How to Cite</h3>
<div class="badge-height"><a href="https://doi.org/10.21105/joss.00950"><amp-img class="contain" layout="fill" alt="https://doi.org/10.21105/joss.00950" src="https://joss.theoj.org/papers/10.21105/joss.00950/status.svg"></amp-img></a></div>
<p>If you use JPT in your research, please cite the following article which describes the library:</p>
<ul>
<li>Vincent A. Cicirello.
<a href="https://www.cicirello.org/publications/cicirello2018joss.html">JavaPermutationTools: A Java Library of Permutation Distance Metrics</a>.
<i>Journal of Open Source Software</i>, 3(31):950, November 2018.
<a href="https://www.cicirello.org/publications/cicirello2018joss.pdf">[PDF]</a> <a href="https://www.cicirello.org/publications/cicirello2018joss.bib">[BIB]</a> <a href="https://doi.org/10.21105/joss.00950">[DOI]</a></li>
</ul>
</section>
<section>
<h3>Importing from Maven Central</h3>
<div class="badge-height"><a href="https://search.maven.org/artifact/org.cicirello/jpt"><amp-img class="contain" layout="fill" alt="Latest release on Maven Central" src="https://img.shields.io/maven-central/v/org.cicirello/jpt.svg?label=Maven%20Central&logo=apachemaven"></amp-img></a></div>
<p>To import JPT from the Maven Central repository (if your build tool is
Maven), add the following to the dependencies section of
your “pom.xml” (for other build tools, see the tool's documentation
for the equivalent):</p>
<pre><code><dependency>
<groupId>org.cicirello</groupId>
<artifactId>jpt</artifactId>
<version>2.6.1</version>
</dependency>
</code></pre>
<p>Just replace the version number with your desired version of the library.</p>
</section>
<section>
<h3>Semantic Versioning</h3>
<p>The JPT uses <a href="https://semver.org/">Semantic Versioning</a> with
version numbers of the form: MAJOR.MINOR.PATCH, where differences in MAJOR
correspond to incompatible API changes, differences in MINOR correspond
to introduction of backwards compatible new functionality, and PATCH
corresponds to backwards compatible bug fixes.</p>
</section>
<section>
<h3>Development Process</h3>
<ul>
<li>Test Coverage: We require unit tests for all functionality. We generate
<a href="https://www.jacoco.org/jacoco/">JaCoCo</a> test coverage
reports on all push and pull-request events to
the source code repository. Although we don't have a strict minimum coverage for acceptance,
coverage is usually over 90%, and quite often at or near 100%. Current coverage
is reported in the readme of the GitHub repository (updated automatically).</li>
<li>Regression Testing: All new and existing tests are executed as part of all pull requests,
and all must pass for acceptance.</li>
<li>Static Analysis: We use multiple static analysis tools to scan for potential
vulnerabilities, error prone code, and other potential code improvements. At the
present time, this includes running <a href="https://codeql.github.com/docs/">CodeQL</a>
on all push and pull request events.
Additionally, we run <a href="https://lift.sonatype.com/">Lift</a> on
all pull requests. Sonatype's Lift runs a suite of several
tools that includes
Google's <a href="https://errorprone.info/">Errorprone</a>,
Facebook's <a href="https://fbinfer.com/">Infer</a>,
as well as <a href="https://find-sec-bugs.github.io/">FindSecBugs</a>,
among others.</li>
</ul>
</section>
<section class="publist">
<h3>Related Publications</h3>
<p>The following papers, most of which are related to fitness landscape analysis, used this API. Programs for replicating the data from these papers can be found in the replication directory. In order to fully understand the data generated by the programs in the replication directory, you may need to consult these papers:</p>
<ul>
<li>Vincent A. Cicirello.
<a href="https://www.cicirello.org/publications/cicirello2020inis.html">Kendall Tau Sequence Distance: Extending Kendall Tau from Ranks to Sequences</a>.
Industrial Networks and Intelligent Systems, 7(23), e1, April 2020.
<a href="https://www.cicirello.org/publications/eai.13-7-2018.163925.pdf">[PDF]</a> <a href="https://www.cicirello.org/publications/cicirello2020inis.bib">[BIB]</a> <a href="https://doi.org/10.4108/eai.13-7-2018.163925">[DOI]</a></li>
<li>Vincent A. Cicirello.
<a href="https://www.cicirello.org/publications/cicirello2019arXiv.html">Kendall Tau Sequence Distance: Extending Kendall Tau from Ranks to Sequences</a>.
arXiv preprint arXiv:1905.02752 [cs.DM], May 2019.
<a href="https://www.cicirello.org/publications/arxiv.1905.02752.pdf">[PDF]</a> <a href="https://www.cicirello.org/publications/cicirello2019arXiv.bib">[BIB]</a> <a href="https://arxiv.org/abs/1905.02752">[arXiv]</a></li>
<li>Vincent A. Cicirello.
<a href="https://www.cicirello.org/publications/cicirello2019bict.html">Classification of Permutation Distance Metrics for Fitness Landscape Analysis</a>.
In <i>Proceedings of the 11th International Conference on Bio-inspired Information and Communications Technologies</i>. ICST, March 2019.
<a href="https://www.cicirello.org/publications/cicirello-bict2019.pdf">[PDF]</a> <a href="https://www.cicirello.org/publications/cicirello2019bict.bib">[BIB]</a></li>
<li>Vincent A. Cicirello.
<a href="https://www.cicirello.org/publications/cicirello2016evc.html">The Permutation in a Haystack Problem and the Calculus of Search Landscapes</a>.
<i>IEEE Transactions on Evolutionary Computation</i>, 20(3):434-446, June 2016.
<a href="https://www.cicirello.org/publications/ieee-tevc-2016.pdf">[PDF]</a> <a href="https://www.cicirello.org/publications/cicirello2016evc.bib">[BIB]</a> <a href="http://dx.doi.org/10.1109/TEVC.2015.2477284">[DOI]</a></li>
<li>Vincent A. Cicirello.
<a href="https://www.cicirello.org/publications/cicirello2014bict.html">On the Effects of Window-Limits on the Distance Profiles of Permutation Neighborhood Operators</a>.
In <i>Proceedings of the 8th International Conference on Bio-inspired Information and Communications Technologies</i>, pages 28-35. ICST, December 2014.
<a href="https://www.cicirello.org/publications/cicirello-bict-2014.pdf">[PDF]</a> <a href="https://www.cicirello.org/publications/cicirello2014bict.bib">[BIB]</a> <a href="http://dl.acm.org/citation.cfm?id=2744531">[PUB]</a></li>
<li>Vincent A. Cicirello and Robert Cernera.
<a href="https://www.cicirello.org/publications/cicirello2013flairs.html">Profiling the Distance Characteristics of Mutation Operators for Permutation-Based Genetic Algorithms</a>.
In <i>Proceedings of the Twenty-Sixth International Florida Artificial Intelligence Research Society Conference</i>, pages 46-51. AAAI Press, May 2013.
<a href="https://www.cicirello.org/publications/cicirello-FLAIRS2013.pdf">[PDF]</a> <a href="https://www.cicirello.org/publications/cicirello2013flairs.bib">[BIB]</a> <a href="http://www.aaai.org/ocs/index.php/FLAIRS/FLAIRS13/paper/view/5841">[PUB]</a></li>
</ul>
</section>
</article>
<footer>
<div id="copyright"><small>Copyright © 2005-<span itemprop="copyrightYear">2021</span> <a href="https://www.cicirello.org/">Vincent A. Cicirello</a>.</small></div>
</footer>
</body>
</html>