Skip to main content

The Orbital Game Environment (OGE).

Project description

OGE (Orbital Game Environment)

OGE is a reinforcement learning environment for orbital game scenarios, focusing on spacecraft pursuit-evasion games. The environment provides a Gymnasium-compatible interface with a high-performance C++ backend and Python bindings for easy integration with mainstream reinforcement learning frameworks (such as SKRL).

Features

  • 🚀 High-performance orbital dynamics simulation (C++ backend)
  • 🎮 Gymnasium-compatible reinforcement learning environment interface
  • 🤖 Multi-agent pursuit-evasion game scenarios
  • 📊 Integration with SKRL reinforcement learning library, supporting PPO and other algorithms
  • 🔧 Flexible environment configuration system

License

This project is licensed under the GNU General Public License v2.0.

1. Development Environment Setup

1.1 Update GCC

Install GCC 13

sudo apt update
sudo apt install build-essential gcc-13 g++-13

Set as default version

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-13 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-13 100

If you have multiple versions installed, you can switch between them:

sudo update-alternatives --config gcc
sudo update-alternatives --config g++

Verify the installation:

gcc --version
g++ --version

Expected output:

(oge) ➜  OGE git:(main) ✗ gcc --version
gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

(oge) ➜  OGE git:(main) ✗ g++ --version
g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

1.2 Install vcpkg

Clone vcpkg and run the installation script

git clone https://www.github.com/microsoft/vcpkg
cd vcpkg
./bootstrap-vcpkg.sh

Add the following to your ~/.bashrc or ~/.zshrc

# >>> vcpkg
export VCPKG_ROOT=<path-to-vcpkg>
export PATH=$VCPKG_ROOT:$PATH
# <<< vcpkg

1.3 Python Environment Setup

Create a conda environment and install dependencies

conda create -n oge python=3.13
conda activate oge
pip install -r requirements.txt

Install the skrl library

conda activate oge
pip install "skrl[torch]==1.4.3"

2. Install OGE

conda activate oge
pip install .

3. Run SKRL Training Example

python scripts/train.py

Citation

If you use OGE in your research, please cite this repository.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oge_py-0.1.0.tar.gz (48.1 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

oge_py-0.1.0-pp310-pypy310_pp73-win_amd64.whl (104.1 kB view details)

Uploaded PyPyWindows x86-64

oge_py-0.1.0-pp310-pypy310_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (133.5 kB view details)

Uploaded PyPymanylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

oge_py-0.1.0-pp310-pypy310_pp73-macosx_13_0_arm64.whl (101.7 kB view details)

Uploaded PyPymacOS 13.0+ ARM64

oge_py-0.1.0-cp313-cp313-win_amd64.whl (105.5 kB view details)

Uploaded CPython 3.13Windows x86-64

oge_py-0.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (134.7 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

oge_py-0.1.0-cp313-cp313-macosx_13_0_arm64.whl (103.4 kB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

oge_py-0.1.0-cp312-cp312-win_amd64.whl (105.6 kB view details)

Uploaded CPython 3.12Windows x86-64

oge_py-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (134.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

oge_py-0.1.0-cp312-cp312-macosx_13_0_arm64.whl (103.4 kB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

oge_py-0.1.0-cp311-cp311-win_amd64.whl (106.3 kB view details)

Uploaded CPython 3.11Windows x86-64

oge_py-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (136.6 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

oge_py-0.1.0-cp311-cp311-macosx_13_0_arm64.whl (104.7 kB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

oge_py-0.1.0-cp310-cp310-win_amd64.whl (106.5 kB view details)

Uploaded CPython 3.10Windows x86-64

oge_py-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (136.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

oge_py-0.1.0-cp310-cp310-macosx_13_0_arm64.whl (104.9 kB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

File details

Details for the file oge_py-0.1.0.tar.gz.

File metadata

  • Download URL: oge_py-0.1.0.tar.gz
  • Upload date:
  • Size: 48.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for oge_py-0.1.0.tar.gz
Algorithm Hash digest
SHA256 3a00a81e90dd2cb724650be753489dfe27765cb9ffe4fd50e34270b793713877
MD5 5b6dd9ff5cd6f36a16fa0a4f70b69094
BLAKE2b-256 a668da5e074cb4d01c3d55e90ef147d744b8a0d40416be8ea47d6d0fb7f86e3a

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0.tar.gz:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 6bcf67dd6ac4b251217ddcb5e4821a69e93a9fb71be437604fc1309b7b0480b6
MD5 6f705937240dd6fab35af8c942e25f51
BLAKE2b-256 c0f6923da2448a47f88f304332d4821c7afec373f7e14787cefa4fb6938fb514

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-pp310-pypy310_pp73-win_amd64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-pp310-pypy310_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-pp310-pypy310_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 612aef55f5393856ad13d8b0b924ac7b0a126c404d672461018703f644d92748
MD5 687338dfbe71f04ae07b7da8142bcf01
BLAKE2b-256 14e94cbcdb46a8753a90f30ca0321269b884950883a2d8ca1aaab1a1ce60810c

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-pp310-pypy310_pp73-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-pp310-pypy310_pp73-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-pp310-pypy310_pp73-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 26b86fb7baaa32252c0c20eec1a626e371e3e7af65f15443f9e82ffbbecd8402
MD5 6614de97cddb2918afce2033f0366d19
BLAKE2b-256 9e37598b1b8c8fdef375a78d4f45acf1075dfdba88b88849b09b39170f889d97

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-pp310-pypy310_pp73-macosx_13_0_arm64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: oge_py-0.1.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 105.5 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for oge_py-0.1.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 23d7023f27b8463daf8bf8904122c54030b605258285dff62a20d2ad988e8995
MD5 f4fb3bb58db291ef5c5593ad6c876009
BLAKE2b-256 d2c3cce19b17efc6a41cca7199006f95d6ecc670fbb8731aad51a1b4ccb475f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp313-cp313-win_amd64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8a84d48ba594c486b440241b98ebad4d4ab56fa1718d537621248bf8603280e0
MD5 94e114be78c99d7885e418ab70890cb6
BLAKE2b-256 3ae4315c86f1b838c437cde6f1e322cd964553628fff3b99623fbd2402c4a940

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 bdd7fdaf94eb0fa81d5012c256b8563bb6854c7a8cf7ed98031d823d123990f7
MD5 24cd36eecd0dad1ff15310ed6024e843
BLAKE2b-256 03f401a737eef3af98a3ffff6374aa6dac16da30bc28442fce851fcc666fd19a

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp313-cp313-macosx_13_0_arm64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: oge_py-0.1.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 105.6 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for oge_py-0.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 51709e3c8fbade035be51b24983250841cfdb35f58935bd47eb1fca00573bb90
MD5 cdb126a0c770d33514874e25f442a41f
BLAKE2b-256 5b786809979c2a18267e13a0351c282a5774daa6f4a3c91d6976913a15c37b47

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp312-cp312-win_amd64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 91de00fb200bab76326f1271cc57c14e2234f139cdf8f2a92c025d6448d69cd4
MD5 572a79beafeacfc9fd0abb13badd4b0f
BLAKE2b-256 09dd0b483f322f13abb805417b23cac87ed4bf9b9168e50416dcc393347baefd

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 d13cc27ec391adf0e30dcc9cb31a659d2b99e1ccf83ee432a7beb67294576949
MD5 9b4457db7940b6b7233bba6bc64d681a
BLAKE2b-256 a283d661bdf2d8383b8b09d10955f531973a2e68aff7c4c2eaacfa9743eb2054

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp312-cp312-macosx_13_0_arm64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: oge_py-0.1.0-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 106.3 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for oge_py-0.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 fba12eeb6817792462fe2a424a8dc5d7c91f45b125f70f8a12f62d2860b14c4b
MD5 f7d9316e5e5915a4ee3a46848ed5c55a
BLAKE2b-256 40ea8de9c6c8ccf07ad094d4ee588bfeec4a21ad4a1b466b9c05fbc3308178d1

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp311-cp311-win_amd64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 96df3464812b857f8ebbeddf16479e8045467a98dfb516cbd03d5df4e662e3fc
MD5 69c34ab41887e86d0771fc044d453733
BLAKE2b-256 b020c21c9f3fcd421f6ec32b02bf0f52cdd0672dfba4e26498067a8b40ad5ee2

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 28de394f8ffd0e13c02fcca3316bc5fb171ec41d4b0145e88a74dca684ec1bea
MD5 feedc2503cc438b63bc9bfa85af82666
BLAKE2b-256 404a1bf136342518419f5b454cdf02fa31e4fcc2513e373f869560aa04105a73

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp311-cp311-macosx_13_0_arm64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: oge_py-0.1.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 106.5 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for oge_py-0.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a0256878c7e5384a10458559e3003c96dd7b54a53fc09536e5da89cbd0a81c68
MD5 91582eee1eaf57e2a1b325d29e217535
BLAKE2b-256 aeb74b52958057c652e8f25498625f67eea9295b2c2600730091adc019ab3965

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp310-cp310-win_amd64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 806e90ec589f2b7667131fc6dc5ee1cda0bb4fc17d807732e967fc6a6ad52d2d
MD5 f3fcaa3b8d1746d5cfa663291c26c8b8
BLAKE2b-256 940c936152375ddac2ffab65805d7f52f7d43562bf5a5a209a02bcd698d3733e

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oge_py-0.1.0-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for oge_py-0.1.0-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 e0d6f93ee3946732566d7e415602761c190876e40e3be9a12a95a53a1554972a
MD5 7243902d04dcd5787596ee78eb8f67fc
BLAKE2b-256 e0c2e2b0293c471785d5d8e4157e7d3deff8941aa67453812ed83616bd20daad

See more details on using hashes here.

Provenance

The following attestation bundles were made for oge_py-0.1.0-cp310-cp310-macosx_13_0_arm64.whl:

Publisher: build-and-publish.yml on BaoyiCui/OGE

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page