RCGAToolbox is a MATLAB toolbox that contains two real-coded genetic algorithms (RCGAs): the unimodal normal distribution crossover with minimal generation gap (UNDX/MGG) and the real-coded ensemble crossover star with just generation gap (REXstar/JGG). The stochastic ranking method is implemented to efficiently handle constrained optimization problems. RCGAToolbox not only provides access to RCGAs but also several useful features for parameter estimation in systems biology. For demos, run scripts in RCGAToolbox/doc/demo
. User guide can be found in RCGAToolbox/doc/
. Video tutorials are available on YouTube.
RCGAToolbox is distributed under GNU General Public License v3.0. For academic usage, RCGAToolbox is free. For other usages, please contact the author(s). The distribution of RCGAToolbox contains third-party tools, and they have their own licenses.
- Sep 12 2022: RCGAToolbox-1.5: Designated initial population and early stopping added.
- Aug 4 2021: RCGAToolbox-1.4: GUI version selector function added.
- Jul 27 2021: RCGAToolbox-1.3: Installation script and user guide improved.
- Apr 27 2021: RCGAToolbox-1.2: PEtab support. Friendlier error messages.
- Feb 13 2021: RCGAToolbox-1.1: Bug fix, Improved GUIs, Linux and macOS support.
- Dec 9 2020: RCGAToolbox-1.0.
- MATLAB R2016a or later.
- C compiler compatible with MATLAB. You can get C compilers at no charge: MinGW for Windows, GCC for Linux, and Xcode for Mac. To check whether you have a C compiler on your computer, type
mex -setup
in the MATLAB Command Window. If you get a message likeMEX configured to use 'gcc' for C language compilation.
, you already have one. - Parallel Computing Toolbox (optional) is required for parallel computation (opts.n_par > 1). It is not required for sequential computation.
- Optimization Toolbox (optional) is required for local optimization using fmincon (opts.local = 1). It is not required if the local optimization function is not used.
The third-party tools, IQM Tools, SundialsTB, and libSBML, are included in the distribution of RCGAToolbox. These tools are used by RCGAToolbox: IQM Tools are used for SBML and a fast simulation (fast_flag = 2). SundialsTB is used for a fast simulation with CVODE (fast_flag = 1). libSBML is required for IQM Tools in Linux and macOS. A C compiler compatible with MATLAB is required to install IQM Tools and SundialsTB.
Installation tutorials are available on YouTube.
- Download RCGAToolbox from https://github.com/kmaeda16/RCGAToolbox.
- Place the directory
RCGAToolbox
(orRCGAToolbox-master
) somewhere favorable (e.g. Documents/MATLAB/). - Run the installation script
RCGAToolbox_Install.m
under the directoryRCGAToolbox/install/
. It installs RCGAToolbox core components and necessary third-party tools: IQM Tools, SundialsTB, and libSBML.
- Run the uninstallation script
RCGAToolbox_Uninstall.m
under the directoryRCGAToolbox/install/
. - Delete the directory
RCGAToolbox
.
We confirmed that RCGAToolbox runs on the following environments. It's likely that RCGAToolbox also works on other environments.
OS | MATLAB Version | C Compiler |
---|---|---|
Windows 10 (2004) | R2016a | Microsoft Visual C++ 2015 Professional |
Windows 10 (20H2) | R2021a | Microsoft Visual C++ 2015 Professional |
Windows 10 (20H2) | R2021a | MinGW |
SUSE Linux Enterprise Server 11 (x86_64) | R2016a | GCC 4.7.4 |
macOS Monterey 12.6.3 (Intel) | R2022b | Xcode 14 |
macOS Big Sur 11.5.1 (Apple silicon) | R2021a | Xcode 12 |
macOS Sonoma 14.3 (Intel) | R2023b | Xcode 15 |
RCGAToolbox/install/RCGAToolbox_Diagnosis.m
is the self-diagnosis script that checks whether the RCGAToolbox is properly installed. It also tests the RCGAToolbox functions that depend on optional toolboxes. For the diagnosis, run RCGAToolbox_Diagnosis.m
under the directory RCGAToolbox/install/
.
3rdparty
: Third-party tools (IQMTools, SundialsTB, and libSBML) are contained.doc
: User guide, demo scripts, and benchmark scripts are contained. For details in the benchmark experiments, see the original article (Maeda et al., 2021).install
: Installation, uninstallation, and diagnosis scripts are contained.source
: Source codes are contained.
If you make use of RCGAToolbox in any publications, we kindly ask that the following paper is cited:
Kazuhiro Maeda (Kyushu Institute of Technology)