Skip to main content

ARCLE - ARC Learning Environment

ARCLE is a lightweight Gymnasium (previously OpenAI Gym) environment for training on ARC(Abstraction and Reasoning Corpus) and ARC-like datasets.

Requirements

Python >= 3.8

Installation

pip install arcle

Changelogs

0.2.6

  • Env Changes

    • O2ARCv2Env is accessible via O2ARCEnv or O2ARCEnv-v2.
    • Unify type of observations into np.int8 (that were previously np.uint8)
    • Unify observation space into a dictionary of Box or MultiBinary to flatten observations properly by Gymnasium APIs
    • Remove over-conditioned (@abstractmethod) requirements of AbstractARCEnv. Now user must only override create_operations only.
  • Added action wrappers (BBoxWrapper, PointWrapper) to change selection to bounding box selection or one-point selection.

  • Loader now supports definable random number generator.

  • Orginized examples

  • Bug Fix

    • Fixed terminated is not emitted when max_trial is infinity (-1)

0.2.5

  • Python 3.8 Support (minimum requirements of Gymnasium)

  • Env Changes

    • Rename ARCEnv into RawARCEnv in this version.
    • Removed MiniARCEnv. Please use RawARCEnv with loader=MiniARCLoader() instead.
    • New ARCEnv added, consisting action space of ARC testing interface given along with the ARC Dataset.
    • States in every environments are fully observable. All state-related instance variables are now in the current_state dictionary.
      • All operations receives state and action, and it changes state in-place.
      • You can deepcopy the state and call env.transition(state_copied, action) to get next state without changing original state on O2ARCv2Env. env.transition will be replaced as separated utility function in the future.
    • n-trial mode added. You canset maximum trials when you call gym.make() by putting argument max_trial=num. Unlimited trial mode is available when it is set by -1 (default).
    • Customizable Submit operation. It is defined in each env class as a method, not in a separated module.
      • You can specify boolean option reset_on_submit in env.reset (default=False)
  • Bug fix

    • FloodFill operation without selection case fixed
    • Paste operation out-of-bound case fixed
    • CopyI operation out-of-bound case fixed
    • Apply patch exception handling

0.2.2

  • Bug fix
    • Default all-or-none reward now gives only when submitted. It affects to existing all environments.

0.2.1

  • O2ARCv2Env-v0
    • Changed ResizeGrid action to CropGrid action
    • Forced FloodFill action to select only one pixel (otherwise, it is NoOP)
    • Now CopyI, CopyO, Paste regards black pixels (pixel value 0) as a background. It copies pixels where the value is nonzero and the pixel is selected.
    • action['selection'] can handle int (automatically casts into np.bool_)
  • Several exceptions handling

0.2.0

  • ArcEnv-v0 & MiniArcEnv-v0 has renamed to ARCEnv-v0 & MiniARCEnv-v0.
  • Changed internal current_grid variable to grid & grid_dim
  • Added O2ARCv2Env-v0 environment.
  • Added O2ARC Actions
    • Uses selection and selected. Some internal variables should be initialized.
    • Color, Flood Fill(DFS Color)
    • Move, Rotate, Flip
    • Copy, Paste and Clipboard Features (For O2ARC)

0.1.1

  • Change Images
  • Fix minor issues

0.1.0

  • Initial Build.
  • ArcEnv-v0 & MiniArcEnv-v0 Launched.

Metadata

Release files for arcle 0.2.6

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

Source distribution (sdist)

Source distribution for arcle 0.2.6
File Size Uploaded
arcle-0.2.6.tar.gz 327.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for arcle 0.2.6
File Interpreter ABI Platform
arcle-0.2.6-py3-none-any.whl Python 3 none any Details

Total release size: 904.8 kB

Release files / arcle-0.2.6.tar.gz

Download URL arcle-0.2.6.tar.gz
Size 327.2 kB
Tags Source
SHA-256 checksum
How to use checksums
e28a4fac1c9c8b162e3c4d6cfbb1da36b132db05b6d6db5908e0ed27468ff72f
BLAKE2b-256 checksum
How to use checksums
e5fb07e3d15469e194463d28d806e3269776fe6931410442951b0876a4ce5c05
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.10.11

Release files / arcle-0.2.6-py3-none-any.whl

Download URL arcle-0.2.6-py3-none-any.whl
Size 577.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
62a27e4089e5b7175d286b725c44e0709a15104978e5699d0fc7b0fda23962a4
BLAKE2b-256 checksum
How to use checksums
22a565faa79d878c1370369567c390caada8332e68eba9dccff3f7924be19ffd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.10.11

Release history Release notifications | RSS feed

This release

0.2.6 This release

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

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