java library
Recently Published Documents


TOTAL DOCUMENTS

113
(FIVE YEARS 28)

H-INDEX

16
(FIVE YEARS 2)

SoftwareX ◽  
2022 ◽  
Vol 17 ◽  
pp. 100905
Author(s):  
Roberto Posenato

2021 ◽  
Vol 11 (21) ◽  
pp. 9828
Author(s):  
Vincent A. Cicirello

The runtime behavior of Simulated Annealing (SA), similar to other metaheuristics, is controlled by hyperparameters. For SA, hyperparameters affect how “temperature” varies over time, and “temperature” in turn affects SA’s decisions on whether or not to transition to neighboring states. It is typically necessary to tune the hyperparameters ahead of time. However, there are adaptive annealing schedules that use search feedback to evolve the “temperature” during the search. A classic and generally effective adaptive annealing schedule is the Modified Lam. Although effective, the Modified Lam can be sensitive to the scale of the cost function, and is sometimes slow to converge to its target behavior. In this paper, we present a novel variation of the Modified Lam that we call Self-Tuning Lam, which uses early search feedback to auto-adjust its self-adaptive behavior. Using a variety of discrete and continuous optimization problems, we demonstrate the ability of the Self-Tuning Lam to nearly instantaneously converge to its target behavior independent of the scale of the cost function, as well as its run length. Our implementation is integrated into Chips-n-Salsa, an open-source Java library for parallel and self-adaptive local search.


2021 ◽  
Vol 8 (4) ◽  
pp. 831
Author(s):  
Togu Novriansyah Turnip ◽  
William Suarez Lumbantobing ◽  
David Christian Sitorus ◽  
Friska Laurenzia Sianturi

<p class="15"><em>Smartphone</em> merupakan alat umum yang digunakan masyarakat dalam kehidupan sehari-hari. Sistem operasi yang paling banyak digunakan pada smartphone adalah Android. Aplikasi pada Android dapat diperoleh tidak hanya di Play Store saja, namun juga dapat ditemukan secara bebas di <em>website-website</em> yang berada di internet. Oleh karena itu aplikasi Android rentan terhadap pembajakan.<em> Software watermarking</em> merupakan metode umum yang biasanya digunakan untuk mengantisipasi pembajakan perangkat lunak dengan menyisipkan informasi pengenal ke dalam suatu program. Tujuan dari <em>software watermarking</em> adalah untuk membuktikan kepemilikan dari sebuah program. Salah satu teknik watermarking adalah <em>dynamic watermarking. </em>Teknik ini akan men-<em>generate</em> <em>watermark</em> ketika program dieksekusi. <em>Dynamic Graph Watermarking</em> (DGW) merupakan salah satu metode dalam <em>software watermarking</em>. Dalam penyisipan <em>watermark, </em>metode ini menggunakan struktur graf yang dibuat berdasarkan enumerasi graf. Salah satu algoritma dalam DGW adalah Colberg-Thomborson (CT) <em>algorithm. </em>Algoritma tersebut menggunakan <em>code</em> yang dapat membentuk <em>watermark </em>saat <em>runtime program</em><em>.</em> Pemberian <em>watermark</em> terhadap sebuah aplikasi dilakukan dengan menggunakan CT <em>algorithm</em> dan enumerasi <em>Parent Pointer Graph (PPG).</em> Untuk menyisipkan watermark terhadap aplikasi Android, dibuat sebuah <em>library</em> Java dan sebuah simulator berbasis desktop untuk mengekstrak <em>watermark</em>. Dari hasil pengujian dapat disimpulkan bahwa PPG dapat digunakan sebagai enumerasi pada metode DGW dan memiliki tingkat ketahanan yang tinggi terhadap <em>distortive</em><em> attack </em>namun tidak pada <em>subtractive </em>dan<em> additive attack</em>. Dari penelitian juga diperoleh hasil bahwa pemberian <em>watermark</em> memberikan penambahan <em>size</em> pada apk Android namun tidak mempengaruhi peningkatan penggunaan <em>memory</em> dan <em>processor</em> aplikasi.</p><p class="15"> </p><p class="15"><em><strong>Abstract </strong></em></p><p class="15"><em>Smartphones are common tools in people’s daily life. The most common operating in smartphone is Android. Our android application can be obtained not only in the Play Store, but also free websites on the internet. Therefore, Android applications are vulnerable to piracy. Software watermarking is a common method used to anticipate software piracy by inserting identifying information into a program. The purpose of software watermarking is to prove ownership of a program. One of the watermarking techniques is dynamic watermarking that generates watermarks when the program is executed. Dynamic Graph Watermarking (DGW) is one of the software watermarking methods. This method uses a graph structure which created based on graph enumeration in inserting the watermark. One of the DGW algorithm is Colberg-Thomborson (CT) which use code that can form a watermark at program run time. For watermarking an application, we use CT algorithm and Parent Pointer Graph (PPG) enumeration.   To embed watermark to the android application we create a Java library and a desktop-based simulator to extract watermark from android application. Our result shows that PPG can be used as an enumeration and has robustness in defending against distortive attack but not to subtractive and additive attacks. we also get that watermark gives an additional size to an android apk but it does not affect the increase in memory and processor usage.</em></p><p align="justify"> </p>


2021 ◽  
Vol 8 (1) ◽  
Author(s):  
Marek Nowicki ◽  
Łukasz Górski ◽  
Piotr Bała

AbstractWith the development of peta- and exascale size computational systems there is growing interest in running Big Data and Artificial Intelligence (AI) applications on them. Big Data and AI applications are implemented in Java, Scala, Python and other languages that are not widely used in High-Performance Computing (HPC) which is still dominated by C and Fortran. Moreover, they are based on dedicated environments such as Hadoop or Spark which are difficult to integrate with the traditional HPC management systems. We have developed the Parallel Computing in Java (PCJ) library, a tool for scalable high-performance computing and Big Data processing in Java. In this paper, we present the basic functionality of the PCJ library with examples of highly scalable applications running on the large resources. The performance results are presented for different classes of applications including traditional computational intensive (HPC) workloads (e.g. stencil), as well as communication-intensive algorithms such as Fast Fourier Transform (FFT). We present implementation details and performance results for Big Data type processing running on petascale size systems. The examples of large scale AI workloads parallelized using PCJ are presented.


Author(s):  
Tomasz Zok

Abstract Motivation Biomolecular structures come in multiple representations and diverse data formats. Their incompatibility with the requirements of data analysis programs significantly hinders the analytics and the creation of new structure-oriented bioinformatic tools. Therefore, the need for robust libraries of data processing functions is still growing. Results BioCommons is an open-source, Java library for structural bioinformatics. It contains many functions working with the 2D and 3D structures of biomolecules, with a particular emphasis on RNA. Availability and implementation The library is available in Maven Central Repository and its source code is hosted on GitHub: https://github.com/tzok/BioCommons Supplementary information Supplementary data are available at Bioinformatics online.


SoftwareX ◽  
2021 ◽  
Vol 13 ◽  
pp. 100659
Author(s):  
Krzysztof Ciomek ◽  
Miłosz Kadziński

2021 ◽  
Vol 251 ◽  
pp. 02072
Author(s):  
Andrew Melo ◽  
Oksana Shadura ◽  

Apache Spark[1] is one of the predominant frameworks in the big data space, providing a fully-functional query processing engine, vendor support for hardware accelerators, and performant integrations with scientific computing libraries. One difficulty in adopting conventional big data frameworks to HEP workflows is the lack of support for the ROOT file format in these frameworks. Laurelin[6] implements ROOT I/O with a pure Java library, with no bindings to the C++ ROOT[2] implementation, and is readily installable via standard Java packaging tools. It provides a performant interface enabling Spark to read (and soon write) ROOT TTrees, enabling users to process these data without a pre-processing phase converting to an intermediate format.


F1000Research ◽  
2020 ◽  
Vol 9 ◽  
pp. 1388
Author(s):  
Dennis Psaroudakis ◽  
Feng Liu ◽  
Patrick König ◽  
Uwe Scholz ◽  
Astrid Junker ◽  
...  

Experimental data is only useful to other researchers if it is findable, accessible, interoperable, and reusable (FAIR). The ISA-Tab framework enables scientists to publish metadata about their experiments in a plain text, machine-readable format that aims to confer that interoperability and reusability. A Python software package (isatools) is currently being developed to programmatically produce these metadata files. For Java-based environments, there is no equivalent solution yet. While the isatools package provides a lot of flexibility and a wealth of different features for the Python ecosystem, a package for JVM-based applications might offer the speed and scalability needed for writing very large ISA-Tab files, making the ISA framework available in an even wider range of situations and environments. Here we present a light-weight and scalable Java library (isa4j) for generating metadata files in the ISA-Tab format, which elegantly integrates into existing JVM applications and especially shines at generating very large files. It is modeled after the ISA core specifications and designed in keeping with isatools conventions, making it consistent and intuitive to use for the community. isa4j is implemented in Java (JDK11+) and freely available under the terms of the MIT license from the Central Maven Repository (https://mvnrepository.com/artifact/de.ipk-gatersleben/isa4j). The source code, detailed documentation, usage examples and performance evaluations can be found at https://github.com/IPK-BIT/isa4j.


Sign in / Sign up

Export Citation Format

Share Document