Quilë

Quilë: C++ genetic algorithms scientific library - Published in JOSS (2023)

https://github.com/ttarkowski/quile

Science Score: 95.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README and JOSS metadata
  • Academic publication links
  • Committers with academic emails
    1 of 3 committers (33.3%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

cplusplus-20 cpp cpp-lib cpp-libraries cpp-library cpp20 cpp20-lib cpp20-library evolutionary-algorithm evolutionary-algorithms evolutionary-computation genetic-algorithm genetic-algorithms header-only header-only-library library
Last synced: 4 months ago · JSON representation

Repository

C++ genetic algorithms scientific library

Basic Info
  • Host: GitHub
  • Owner: ttarkowski
  • License: mit
  • Language: C++
  • Default Branch: main
  • Homepage:
  • Size: 1.07 MB
Statistics
  • Stars: 15
  • Watchers: 1
  • Forks: 4
  • Open Issues: 0
  • Releases: 3
Topics
cplusplus-20 cpp cpp-lib cpp-libraries cpp-library cpp20 cpp20-lib cpp20-library evolutionary-algorithm evolutionary-algorithms evolutionary-computation genetic-algorithm genetic-algorithms header-only header-only-library library
Created about 5 years ago · Last pushed over 2 years ago
Metadata Files
Readme License

README

Quilë  is  a  C++20  header-only general  purpose  genetic  algorithms
library  with  no  external  dependencies  supporting   floating-point,
integer, binary and permutation  representations. It is released under
the terms of the MIT License (please see LICENSE file).

The name  of this library  origins from fictional  language Neo-Quenya
and means “color”.

This software strives to be minimal.

List of contents

  doc/          Documentation.
    examples/     Short examples of the library features use.

  examples/     Examples.
    benchmark/    Benchmark programs and benchmark results.
    common/       Common files.
    evenstar/     Crystal structure prediction of nanowires.
    example_1/    Floating-point representation example.
    example_2/    Permutation representation example.
    mithril/      Crystal structure prediction of nanotubes.

  logo/         Logo artwork.
  paper/        Paper to The Journal of Open Source Software.
  quile/        The Quilë library itself.
  tutorial/     Tutorial.

Installation

  The library  is header-only,  therefore  installation  on the user's
  system  is done  by  copying  the library  source code.   In case of
  GNU/Linux operating system  it can be achieved by invoking following
  command in terminal in some directory,  e.g. in  /home/${USER}/repos
  directory:

    git clone https://github.com/ttarkowski/quile.git

  Please see the tutorial for more details.

  The latest stable release is v1.0.0 available for download at:

    https://github.com/ttarkowski/quile/releases/tag/v1.0.0

  and described in following paper:

    Tomasz Tarkowski, Quilë: C++ genetic algorithms scientific library,
    Journal  of  Open  Source  Software,  8 (82),  4902  (2023).   doi:
    10.21105/joss.04902

List of dependencies

  The library  does not  depend  on any other software.  The user only
  need  C++  compiler  supporting  C++20 standard of  the language  to
  compile programs  written with use of  the library.  The software is
  known to work with both GCC and Clang compilers   (the  library  was
  tested on GCC 10.2.1 and Clang 13.0.1).

Compilation

  To compile programs written with use of the library,  please use the
  following command:

    g++ -std=c++20 -DNDEBUG -O3 -Wall -Wextra -pedantic \
      -I/home/${USER}/repos/quile/ -pthread your_program.cc

  or similar. Please see documentation and tutorial for more details.

Documentation

  Documentation for the library  can be generated from the source code
  with use of  the Doxygen  tool.  Please  see  the tutorial for  more
  details.

  Autogenerated  library  documentation  for  v1.0.0  is  available at
  https://doi.org/10.5281/zenodo.7603809 .

Tutorial

  If you need an easy introduction to the library, please see tutorial/
  tutorial.txt file.

Support

  If you need support, please visit:

    https://github.com/ttarkowski/quile/discussions

  and ask a question there.

Reporting issues or problems

  If you find a bug in the library, please visit:

    https://github.com/ttarkowski/quile/issues

  and create an issue.

Contributing to the software & Feature requests

  The Quilë library does not support  code contributions.  However, if
  you need some feature to be implemented in code, please visit:

    https://github.com/ttarkowski/quile/discussions

  and describe your  feature request.  However,  please note that your
  request  might be declined  or  permanently unresolved  due  to many
  reasons———including the facts that the library strives to be minimal
  and is intentionally developed as an one-person project.

Test suite

  Test suite in form of the short examples of the library features use
  is located in doc/examples/ directory. The Makefile for GCC compiler
  is provided, so tests execution can be performed with make command.

Code statistics

  * https://github.com/ttarkowski/quile/pulse
  * https://www.openhub.net/p/quile

                                 * * *

This work  is a result of  the project funded  by the National Science
Centre  of Poland   (Twardowskiego 16,   PL-30312 Kraków,       Poland,
http://www.ncn.gov.pl/) under the grant number UMO-2016/23/B/ST3/03575.

Owner

  • Name: Tomasz Tarkowski
  • Login: ttarkowski
  • Kind: user
  • Location: Poland

JOSS Publication

Quilë: C++ genetic algorithms scientific library
Published
February 07, 2023
Volume 8, Issue 82, Page 4902
Authors
Tomasz Tarkowski ORCID
Chair of Complex Systems Modelling, Institute of Theoretical Physics, Faculty of Physics, University of Warsaw, Pasteura 5, PL-02093 Warszawa, Poland
Editor
Vissarion Fisikopoulos ORCID
Tags
genetic algorithm header-only library scientific library

GitHub Events

Total
  • Watch event: 3
  • Fork event: 1
Last Year
  • Watch event: 3
  • Fork event: 1

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 544
  • Total Committers: 3
  • Avg Commits per committer: 181.333
  • Development Distribution Score (DDS): 0.006
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Tomasz Tarkowski T****T@g****m 541
Daniel S. Katz d****z@i****g 2
Vissarion Fisikopoulos f****p@g****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 6
  • Total pull requests: 2
  • Average time to close issues: 5 days
  • Average time to close pull requests: 2 days
  • Total issue authors: 2
  • Total pull request authors: 2
  • Average comments per issue: 2.17
  • Average comments per pull request: 2.0
  • Merged pull requests: 2
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • mbarzegary (4)
  • vissarion (2)
Pull Request Authors
  • vissarion (1)
  • danielskatz (1)
Top Labels
Issue Labels
Pull Request Labels