All Projects → denoptim-project → DENOPTIM

denoptim-project / DENOPTIM

Licence: AGPL-3.0 license
DENOPTIM is a software package for de novo design and virtual screening of functional molecules of any kind.

Programming Languages

java
68154 projects - #9 most used programming language
Jupyter Notebook
11667 projects
Roff
2310 projects
shell
77523 projects

Projects that are alternatives of or similar to DENOPTIM

r3dmol
🧬 An R package for visualizing molecular data in 3D
Stars: ✭ 45 (+95.65%)
Mutual labels:  computational-chemistry, molecular-modeling
screenlamp
screenlamp is a Python toolkit for hypothesis-driven virtual screening
Stars: ✭ 20 (-13.04%)
Mutual labels:  computational-chemistry, virtual-screening
bin-packing-core
基于人工智能(遗传算法 + 贪心 max-rect 算法) 的矩形拼接算法
Stars: ✭ 26 (+13.04%)
Mutual labels:  genetic-algorithm
opt4j
Modular Java framework for meta-heuristic optimization
Stars: ✭ 25 (+8.7%)
Mutual labels:  genetic-algorithm
UnityGeneticAlgorithmMaze
Modern reimplementation in Unity of Bob's Map from AI Techniques for Game Programming
Stars: ✭ 37 (+60.87%)
Mutual labels:  genetic-algorithm
Super-Meta-MarIO
Mario AI Ensemble
Stars: ✭ 15 (-34.78%)
Mutual labels:  genetic-algorithm
jGeneticNeuralNet
A Java library that trains neural networks with a genetic algorithm.
Stars: ✭ 16 (-30.43%)
Mutual labels:  genetic-algorithm
chemprop
Fast and scalable uncertainty quantification for neural molecular property prediction, accelerated optimization, and guided virtual screening.
Stars: ✭ 75 (+226.09%)
Mutual labels:  virtual-screening
genetic deep learning
No description or website provided.
Stars: ✭ 13 (-43.48%)
Mutual labels:  genetic-algorithm
neuro-evolution
A project on improving Neural Networks performance by using Genetic Algorithms.
Stars: ✭ 25 (+8.7%)
Mutual labels:  genetic-algorithm
QCxMS
Quantum mechanic mass spectrometry calculation program
Stars: ✭ 25 (+8.7%)
Mutual labels:  computational-chemistry
Genetic-Algorithm-for-Job-Shop-Scheduling-and-NSGA-II
Learning how to implement GA and NSGA-II for job shop scheduling problem in python
Stars: ✭ 178 (+673.91%)
Mutual labels:  genetic-algorithm
Fermi.jl
Fermi quantum chemistry program
Stars: ✭ 107 (+365.22%)
Mutual labels:  molecular-modeling
EvOLuTIoN
A simple simulation in Unity, which uses genetic algorithm to optimize forces applied to cubes
Stars: ✭ 44 (+91.3%)
Mutual labels:  genetic-algorithm
molpal
active learning for accelerated high-throughput virtual screening
Stars: ✭ 110 (+378.26%)
Mutual labels:  virtual-screening
PyVibMS
A PyMOL plugin for visualizing vibrations in molecules and solids
Stars: ✭ 23 (+0%)
Mutual labels:  computational-chemistry
enspara
Modeling molecular ensembles with scalable data structures and parallel computing
Stars: ✭ 28 (+21.74%)
Mutual labels:  molecular-modeling
snakeneuralnetworkjs
Neuroevolution of Neural Network for snakes in the Browser
Stars: ✭ 13 (-43.48%)
Mutual labels:  genetic-algorithm
darkgreybox
DarkGreyBox: An open-source data-driven python building thermal model inspired by Genetic Algorithms and Machine Learning
Stars: ✭ 25 (+8.7%)
Mutual labels:  genetic-algorithm
sopt
sopt:A simple python optimization library
Stars: ✭ 42 (+82.61%)
Mutual labels:  genetic-algorithm

DENOPTIM

Anaconda_Platforms Anaconda_License Anaconda_Version Anaconda_last Anaconda_Downloads

Introduction

DENOPTIM (De Novo OPTimization of In/organic Molecules) is a software meant for de novo design and virtual screening of functional compounds. In practice, DENOPTIM builds chemical entities by assembling building blocks (i.e., fragments), analyzes each chemical entity as to produce its figure of merit (i.e., fitness), and designs new entities based on the properties of known entities.

DENOPTIM is cross-platform, i.e., runs on Windows, Linux, and MacOS, and comes with a graphical user interface, i.e., the GUI. However, computationally demanding molecular design jobs, which we call DENOPTIM experiments, are typically run in the background, as batch processes. Yet, the GUI allows to create input files for such DENOPTIM experiments (Figure 1a), in addition to visualize and edit molecular fragments (Figure 1b) and other DENOPTIM's data structures, and, finally, inspect the output produced by DENOPTIM experiments (Figure 1c).

Figure 1

Installation

You can either get latest version of DENOPTIM from the conda-forge, or our own denoptim-project Anaconda channel. Alternatively, you can built DENOPTIM from source, see below.

Install From Conda (recommended)

conda install -c conda-forge  denoptim

or

conda install -c denoptim-project  denoptim

Build From Source

Download and extract the latest release to create a folder we'll call DENOPTIM_HOME. In the following, remember to replace $DENOPTIM_HOME with the pathname of the extracted DENOPTIM's distribution folder on your system.

Make sure you have an environment that includes JAVA and Maven. Such environment, which we call dnp_devel, can be created by manual installation of both JAVA and Maven, or it can be created using conda:

cd $DENOPTIM_HOME
conda env create -f environment.yml
conda activate dnp_devel

Verify the requirements by running the two commands: Both should return a message declaring the respective versions.

javac -version
mvn -version

Now, you can build DENOPTIM with

mvn package

Once maven has finished, you can create call DENOPTIM using a command like the following (NB: replace $DENOPTIM_HOME and ${VERSION} as with the values that apply to your installation): On Linux/Mac and GitBash on Windows:

java -jar $DENOPTIM_HOME/target/denoptim-${VERSION}-jar-with-dependencies.jar

On Windows Anaconda prompt:

java -jar $DENOPTIM_HOME\target\denoptim-${VERSION}-jar-with-dependencies.jar

In the rest of this document, we well use denoptim to refer to the above command. In practice, you should create an alias so that

denoptim="java -jar $DENOPTIM_HOME/target/denoptim-${VERSION}-jar-with-dependencies.jar"

Testing the functionality

The test/functional_tests folder collects tests with automated checking of the results. There test are meant to verify the retention of specific functionality during development phase (i.e., integration tests), but they also are complete example of how to use denoptim from a the terminal on Linux/Mac or Windows via GitBash.

This is how to run the tests:

cd $DENOPTIM_HOME/test/functional_tests
bash runAllTests.sh

The results will be collected in a temporary folder (typically /tmp/denoptim_test).

User Manual

The complete user manual is available on line.

Tutorials

See the tutorials page.

Quick Start

The entry point of any DENOPTIM activity is the command denoptim, which results from the installation. To launch the graphical user interface (GUI) run the command without any argument:

denoptim

Otherwise, run the following in a Win/Mac/Linux command line to get help message.

denoptim -h

For example, this command

denoptim -r GA input_parameters

starts an artificial evolution experiment using the genetic algorithm and parameters specified in the <input_parameters> file, which is a text file containing parameters and keywords.

Pre-configured Examples

Complete examples pre-configured to run DENOPTIM experiments on your local client can be found under the test folder. Each of these test will run a short experiments and collect the output in a folder that can be inspected with the GUI (see below).

  • test/PtCOLX2: genetic algorithm experiment for the optimization of organometallic ligands sets that weaken the carbonyl bond in Pt(CO)(L)(X)2 complexes (less then 5 minutes on a regular laptop). To run this example:
cd $DENOPTIM_HOME/test/PtCOLX2
bash runEvolutionaryExperiment.sh
  • test/PtCOLX2_FSE: virtual screening of organometallic ligands sets that weaken the carbonyl bond in Pt(CO)(L)(X)2 complexes (less then 5 minutes on a regular laptop). To run this example:
cd $DENOPTIM_HOME/test/PtCOLX2_FSE
bash runCombinatorialExperiment.sh

The GUI can be used to inspect the results. To this end, copy the pathname that is printed by DENOPTIM in the terminal after Output files associated with the current run are located in $path_to_your_output and use the GUI to open it:

denoptim $path_to_your_output

Contributing

Open an issue to point out any unreported and unexpected behaviors, bugs, or just to discuss changes to code or documentation. To make actual changes to the code follow the git workflow practices as indicated in file CONTRIBUTING.md.

Cite DENOPTIM

  1. DENOPTIM: Software for Computational de Novo Design of Organic and Inorganic Molecules; Marco Foscato, Vishwesh Venkatraman, and Vidar R. Jensen, J. Chem. Inf. Model, 2019, 59, 10, 4077-4082 (https://doi.org/10.1021/acs.jcim.9b00516)
  2. Foscato, M.; Occhipinti, G.; Venkatraman, V.; Alsberg, B. K.; Jensen, V. R.; Automated Design of Realistic Organometallic, Molecules from Fragments; J. Chem. Inf. Model. 2014, 54, 767–780.
  3. Foscato, M.; Venkatraman, V.; Occhipinti, G.; Alsberg, B. K.; Jensen, V. R.; Automated Building of Organometallic Complexes from 3D Fragments; J. Chem. Inf. Model. 2014, 54, 1919–1931.
  4. Foscato, M.; Houghton, B. J.; Occhipinti, G.; Deeth, R. J.; Jensen, V. R.; Ring Closure To Form Metal Chelates in 3D Fragment-Based de Novo Design. J. Chem. Inf. Model. 2015, 55, 1844-1856.

Acknowledgments

The Research Council of Norway (RCN) is acknowledged for financial support.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].