Orc is a library and set of tools for compiling and executing very simple programs that operate on arrays of data. The "language" is a generic assembly language that represents many of the features available in SIMD architectures, including saturated addition and subtraction, and many arithmetic operations.
JCGO (pronounced as "j-c-go") translates (converts) programs written in Java into platform-independent C code that can be compiled (by third-party tools) into highly-optimized native code for the target platform. JCGO is a powerful solution that enables your desktop, server-side, embedded, mobile, and wireless Java applications to take full advantage of the underlying hardware. In addition, JCGO makes your programs, when compiled to native code, as hard to reverse engineer as if they were written in C/C++. The JCGO translator uses some optimization algorithms that allow, together with optimizations performed by a C compiler, the resulting executable code to reach better performance compared with the traditional Java implementations (based on the Just-In-Time technology). The produced executable does not contain nor require a Java Virtual Machine to execute, so its resource requirements are smaller than that required by a typical Java VM. This also simplifies the process of deployment and distribution of an application.
DAE Tools is cross-platform equation-oriented process modelling, simulation, and optimization software. Various types of processes (lumped or distributed, steady-state or dynamic) can be modelled and optimized. They may range from very simple to those which require complex operating procedures. Equations can be ordinary or discontinuous, where discontinuities are automatically handled by the framework. Model reports containing all information about a model can be exported in XML MathML format, automatically creating high-quality documentation. The simulation results can be visualized, plotted, and/or exported into various formats.
EO is a template-based, ANSI-C++ evolutionary computation library that helps you to write your own stochastic optimization algorithms quickly. Evolutionary algorithms form a family of algorithms inspired by the theory of evolution, and solve various problems. They evolve a set of solutions to a given problem in order to produce the best results. These are stochastic algorithms because they iteratively use random processes. The vast majority of these methods are used to solve optimization problems, and may be also called "metaheuristics". They are also ranked among computational intelligence methods, a domain close to artificial intelligence. With the help of EO, you can easily design evolutionary algorithms that will find solutions to virtually all kind of hard optimization problems, from continuous to combinatorial ones.
AutoDiff.NET is a pure .NET library that allows a developer to easily compose functions symbolically and then automatically calculates the function's value and gradient at any given point. It can be very useful in conjunction with a gradients-based optimization library. It has been tested to work on Mono 2.10 on Linux and on .NET4 on Windows.
ca-ga is a toy artificial life simulation that uses genetic algorithms on large cellular automata. It uses simple but easily extended DNA that is 8k long by default, though you can take the size out to anything you have time to evolve. It sits under each cell of a 128x128 board and orders operations to transfer energy in the hopes of achieving a kill and breed. The simulation features a mutating fitness function, emergent sex, and a proof of concept real world fitness function. After enough generations, the cells or genes could achieve collectivism and organismhood, coordinating the values of the hotspots that determine board temperature in order to maintain a desired equilibrium. But maybe not. If you work in a fitness function, an optimizing problem solver results.
Simulated annealing is a computational algorithm for optimization. It mimics the physical process of thermal annealing in which a metal is heated and then slowly cooled to settle into a highly ordered crystal structure. For common metals, the lowest energy state is already known. But the method is useful for other problems where the best state is not known and exhaustively searching all possible states is impractical. The method is applied by modeling the problem as a physical system with structure, energy, and temperature. This Python module implements simulated annealing so that it can be easily applied to a variety of problems. An example program is include to perform simulated annealing of the traveling salesman problem.
HOPSPACK solves derivative-free optimization problems in a C++ software framework. The framework enables parallel operation using MPI (for distributed machine architectures) and multithreading (for single machines with multiple processors or cores). Optimization problems can be very general: functions can be noisy, nonsmooth, and nonconvex, linear and nonlinear constraints are supported, and variables may be continuous or integer-valued.