Artelys Knitro
Artelys Knitro is a leading solver for large-scale nonlinear optimization problems, offering a suite of advanced algorithms and features to address complex challenges across various industries. It provides four state-of-the-art algorithms: two interior-point/barrier methods and two active-set/sequential quadratic programming methods, enabling efficient and robust solutions for a wide range of optimization problems. Additionally, Knitro includes three algorithms specifically designed for mixed-integer nonlinear programming, incorporating heuristics, cutting planes, and branching rules to effectively handle discrete variables. Key features of Knitro encompass parallel multi-start capabilities for global optimization, automatic and parallel tuning of option settings, and smart initialization strategies for rapid infeasibility detection. The solver supports various interfaces, including object-oriented APIs for C++, C#, Java, and Python.
Learn more
pygame
Pygame is a set of Python modules designed for writing video games. Pygame adds functionality on top of the excellent SDL library. This allows you to create fully featured games and multimedia programs in the python language. Pygame is highly portable and runs on nearly every platform and operating system. Pygame is free. Released under the LGPL license, you can create open-source, freeware, shareware, and commercial games with it. With dual-core CPUs common, and 8-core CPUs cheaply available on desktop systems, making use of multi-core CPUs allows you to do more in your game. Selected pygame functions release the dreaded python GIL, which is something you can do from C code. Uses optimized C and assembly code for core functions. C code is often 10-20 times faster than python code, and assembly code can easily be 100x or more times faster than python code. Comes with many operating systems. Just an apt-get, emerge, pkg_add, or just install away.
Learn more
Solver SDK
Use optimization and simulation models in your desktop, Web or mobile application. Use the same high-level objects (like Problem, Solver, Variable and Function), collections, properties and methods across different programming languages. The same object-oriented API is exposed "over the wire" through Web Services WS-* standards to remote clients in PHP, JavaScript, C# and other languages. Procedural languages can use conventional calls that correspond naturally to the properties and methods of the Object-Oriented API. Linear and quadratic programming, mixed-integer programming, smooth nonlinear optimization, global optimization, and non-smooth evolutionary and tabu search are all included. The world's best optimizers, from Gurobi™, XPRESS™ and MOSEK™ for linear, quadratic and conic models to KNITRO™, SQP and GRG methods for nonlinear models "plug into" Solver SDK. Easily create a sparse DoubleMatrix object with 1 million rows and columns.
Learn more
Python
The core of extensible programming is defining functions. Python allows mandatory and optional arguments, keyword arguments, and even arbitrary argument lists. Whether you're new to programming or an experienced developer, it's easy to learn and use Python. Python can be easy to pick up whether you're a first-time programmer or you're experienced with other languages. The following pages are a useful first step to get on your way to writing programs with Python! The community hosts conferences and meetups to collaborate on code, and much more. Python's documentation will help you along the way, and the mailing lists will keep you in touch. The Python Package Index (PyPI) hosts thousands of third-party modules for Python. Both Python's standard library and the community-contributed modules allow for endless possibilities.
Learn more