OpenNN, An Open Source Library For Neural Networks

OpenNN is an open source class library written in C++ which implements neural networks, and runs on Windows, Apple, or Linux.

OpenNNNOpenNN is an open source class library written in C++ which implements neural networks. This open neural networks library was formerly known as Flood.

It is based on Ph.D. thesis of R. Lopez, "Neural Networks for Variational Problems in Engineering", at Technical University of Catalonia, 2008.


OpenNN has been designed to learn from both data sets and mathematical models.

Data sets:

  • Function regression.
  • Pattern recognition.
  • Time series prediction.

Mathematical models:

  • Optimal control.
  • Optimal shape design.

Data sets and mathematical models:

  • Inverse problems.

The package comes with unit testing, many examples and extensive documentation. It provides an effective framework for the research and development of neural networks algorithms and applications.

Download OpenNN here.

OpenNN runs on Windows, Apple, or Linux.

OpenNN is released under the GNU Lesser General Public License.

OpenNN provides XML input-output by means of TinyXML2