Skip to content
A Demo of how to use EvoLib open source optimization library
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

EvoLib-Demo Version 1.0.0 - 8/13/2018

EvoLib-Demo is a sample project showing how to use EvoLib ( for custom single and multiple objective optimization.


Software Requirements

Make sure you have the following installed:

  • JDK 1.8+
  • Git
  • Git bash
  • Maven
  • Gradle
  • ItelliJ


  1. Although not required here specifically, it's a good advice for IntelliJ-Gradle users to make sure the "Use auto-import" checkbox is checked in the Gradle settings window (File > Setting > Build, Execution, Deployment > Gradle). This allows IntelliJ to automatically detect and add the necessary support to Gradle projects).


Since evolib-demo depends on evolib, and evolib depends on tx2ex, let's start by cloning the three libraries:

Once your have the three projects on your file system add tx2ex and evolib to your local maven repository respectively. This can be done using the following command once for each of the two projects (while in the root directory of the respective project):

gradle install

It might be useful to refresh your dependency if any dependency-related problems arises. Keep the following command in mind (note: performing the aforementioned steps in the proper order should not result in dependency-related problems):

gradle --refresh-dependencies


Now the code is ready. You can directly run the continuous optimization example by executing optimization.SampleScript in evolib. For the custom optimization example, execute tsp.solver.TSPSolver in evolib-demo.

Develop Your Own Project

Consult the build scripts (build.gradle) of both evolib and evolib-demo to learn how to add tx2ex and evolib repectively as dependencies to your project.


Java SE Development Kit (JDK) 8 or later (


We use SemVer for versioning.


Haitham Seada (


This project is licensed under the Apache License Version 2.0 ( A simple explanation of the license in layman's terms can be found at (

You can’t perform that action at this time.