Skip to main content

Optgra

build-status

This repository provides pyoptgra, a python package wrapping (and including) OPTGRA. OPTGRA is an optimization algorithm developed and implemented by Johannes Schoenmaekers, it is specifically designed for near-linear constrained problems, which commonly occur in trajectory optimization.

The full documentation can be found here or on the ESA-internal page.

Installation

With Pip

Pyoptgra is available on PyPi and can be installed with pip:

  • pip install pyoptgra

Compile from Source

First install a C++ compiler, a fortran compiler, cmake, python and python build, then clone the repository and build with python -m build

Usage

Pyoptgra is designed as a pygmo user-defined algorithm: First create an instance of the optgra class with all relevant parameters, then pass a pygmo.population containing your problem to the instance’s evolve method:

>>> import pygmo
>>> import pyoptgra
>>> prob = pygmo.problem(pygmo.schwefel(30)) # using the schwefel test problem from pygmo, with 30 dimensions
>>> pop = pygmo.population(prob, 1)
>>> algo = pygmo.algorithm(pyoptgra.optgra())
>>> pop = algo.evolve(pop) # the actual call to OPTGRA

License

Copyright 2008, 2021 European Space Agency

Pyoptgra/Optgra is available under two different licenses. You may choose to license and use it under version 3 of the GNU General Public License or under the ESA Software Community Licence (ESCL) 2.4 Weak Copyleft. We explicitly reserve the right to release future versions of Pyoptgra and Optgra under different licenses.

Copies of GPL3 and ESCL 2.4 can be found in the root directory of this package, you can also obtain them at https://www.gnu.org/licenses/gpl-3.0.txt and https://essr.esa.int/license/european-space-agency-community-license-v2-4-weak-copyleft

Metadata

Release files for pyoptgra 1.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyoptgra 1.4.1
File Size Uploaded
pyoptgra-1.4.1.tar.gz 2.4 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for pyoptgra 1.4.1
File
pyoptgra-1.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
pyoptgra-1.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
pyoptgra-1.4.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
pyoptgra-1.4.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
pyoptgra-1.4.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details

Total release size: 9.3 MB

Release files / pyoptgra-1.4.1.tar.gz

Download URL pyoptgra-1.4.1.tar.gz
Size 2.4 MB
Tags Source
SHA-256 checksum
How to use checksums
304a84cb82c8a55cf5c0128899789007b518c3adf21f52d5e17380ae03003def
BLAKE2b-256 checksum
How to use checksums
76fa9e5643ce2ce54d5e46ca0d2c36fee5a701a0bfa9e951150e326a2ca8dbfc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / pyoptgra-1.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL pyoptgra-1.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 1.4 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
b6ed2e1122ca0e689ed18d059c9cd4b77151b79eae4d23dc2572e31d2e7f68e5
BLAKE2b-256 checksum
How to use checksums
de05258b9bd3e1fffa7386cee6debc356484aa8c4993e1a83f201f61429bed32
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / pyoptgra-1.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL pyoptgra-1.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 1.4 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
5f382e462a46589e3423b37575f44969b6701d31d75f38491c937768c90cc681
BLAKE2b-256 checksum
How to use checksums
6020f5363e9d5641387178be8fc6d3997183ca7d4bb210417d88455ba6d7af07
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / pyoptgra-1.4.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL pyoptgra-1.4.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 1.4 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
1011f1f81c38c16c2f40159c0334577c4d845f93fe4c7c48b859394a4a57a70f
BLAKE2b-256 checksum
How to use checksums
bfc535087e95e6a94f35a2ccd1d74220c44b0ce7937a9324965ce18e00646133
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / pyoptgra-1.4.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL pyoptgra-1.4.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 1.4 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
6d12bcea30da7faf300c589267dad2e210e02cc0f855f54d2a8313fbc5815d24
BLAKE2b-256 checksum
How to use checksums
184a8078d3d17c36985058fb8ea34442434a4f4917f13ccd9531ac2cab3b4b74
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / pyoptgra-1.4.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL pyoptgra-1.4.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 1.4 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
501af5f949e5c441752ddc7e8f0dd8ac0798748414de18920150084cd0c8764e
BLAKE2b-256 checksum
How to use checksums
f4c998cf20a444f9e5f97da84b6d92225d0b4d03f10a0476bf9cb866e144c4d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release history Release notifications | RSS feed

This release

1.4.1 This release

6 release files

1.4.0

5 release files

1.3.1

5 release files

1.3.0

5 release files

1.2.2

5 release files

1.2.1

5 release files

1.2.0

5 release files

1.1.0

5 release files

1.0.1

5 release files

1.0.0

5 release files

0.1.10

5 release files

0.1.9

6 release files

0.1.8

6 release files

0.1.7

5 release files

0.1.6

5 release files

0.1.4

6 release files

0.1.3

5 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page