Skip to main content

VectorVelocity

VectorVelocity

Documentation Python Version PyPI version

Table of Contents

Introduction

VectorVelocity is a space-themed OpenAI Gym environment designed for reinforcement learning. Users pilot a spaceship through an asteroid field while collecting coins. The environment increases in difficulty as the speed escalates, with asteroids and coins spawning randomly, providing dynamic challenges that are ideal for developing and refining Agents

Enviornment Description

In VectorVelocity, the player controls a spaceship moving across three lanes. The objective is to collect as many coins as possible while avoiding collisions with asteroids that move from the top of the screen to the bottom. As the game progresses, the speed increases, making the game increasingly difficult.

Third Party Assets

This game was enriched significantly by incorporating various third-party assets. We are immensely grateful to the creators of these assets for making their work available and enhancing the gaming experience.

  1. Game Background: The thematic space background, enhancing the visual appeal of our game, was sourced from Vecteezy.
  2. Space Ship: The spaceship, which players navigate through asteroids, was created by FoozleCC as part of the Void Pack. Explore more of FoozleCC's creations here.
  3. Background Music: The atmospheric tunes from Goose Ninjas' Space Music Pack set the perfect mood for our adventures through space. Check out more of Goose Ninjas' music on their Itch.io page.

We extend a huge thanks to the mentioned authors for making their work freely available.

Getting Started

To install the Vector Velocity Environment, you can use pip. Simply run the following command in your terminal:

pip install vector-velocity-gym

After installing the environment, you may want to test the installation and explore how to build or use the environment effectively.

For comprehensive guides and examples, please visit our offical documentation

RL Agent

Problem Domain

The challenge for the RL agent in VectorVelocity is to learn optimal strategies for maximizing the score by skillfully collecting coins while avoiding asteroids. The agent is required to make decisions in real-time, adjusting to the game's increasing speed and the randomness of asteroid placements. Additionally, some coins spawn between asteroids in positions that may not always be reachable, adding a layer of decision-making complexity. This requires the player, and consequently the RL agent, to assess whether pursuing a coin is worth the risk of potential collision. This problem domain provides a rich and challenging environment for exploring and refining reinforcement learning techniques.

Agents

We have decided to use the Proximal Policy Optimization (PPO) algorithm to train an agent within our environment. PPO, a reinforcement learning algorithm developed by OpenAI, is known for its robustness and efficiency in learning policies for various types of environments.

Sample Agent Development

For those interested in seeing a practical implementation or experimenting with the agent development process, sample agent development can be found in the lab branch of this repository. This branch includes experimental features and developmental progress on new agent strategies.

To access and contribute to the ongoing agent development, switch to the lab branch:

Metadata

Release files for vector-velocity-gym 0.1.0

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

Source distribution (sdist)

Source distribution for vector-velocity-gym 0.1.0
File Size Uploaded
vector_velocity_gym-0.1.0.tar.gz 25.6 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for vector-velocity-gym 0.1.0
File Interpreter ABI Platform
vector_velocity_gym-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 51.2 MB

Release files / vector_velocity_gym-0.1.0.tar.gz

Download URL vector_velocity_gym-0.1.0.tar.gz
Size 25.6 MB
Tags Source
SHA-256 checksum
How to use checksums
69299d10424c047c970a528e20514d73b1debdfd5e627da416d9553c38b12bf8
BLAKE2b-256 checksum
How to use checksums
af1cd9a30db83ec0151c13dd8931d623285be1a34deb71e29178ea011242f411
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.9.19

Release files / vector_velocity_gym-0.1.0-py3-none-any.whl

Download URL vector_velocity_gym-0.1.0-py3-none-any.whl
Size 25.6 MB
Tags Python 3
SHA-256 checksum
How to use checksums
6d83970d62ea2c1c006806e7981f30f78b79fd50d20e4d9265bb16c3b98412f7
BLAKE2b-256 checksum
How to use checksums
bbb426ed307a548ce6ab8dabdcf9def8469f8b33dcda523c2a7b16e8c50e634d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.9.19

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 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