An ARC Learning Environment built on Gymnasium
Project description
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 viaO2ARCEnv
orO2ARCEnv-v2
.- Unify type of observations into
np.int8
(that were previouslynp.uint8
) - Unify observation space into a dictionary of
Box
orMultiBinary
to flatten observations properly by Gymnasium APIs - Remove over-conditioned (
@abstractmethod
) requirements ofAbstractARCEnv
. Now user must only overridecreate_operations
only.
-
Added action wrappers (
BBoxWrapper
,PointWrapper
) to changeselection
to bounding box selection or one-point selection. -
Loader
now supports definable random number generator. -
Orginized examples
-
Bug Fix
- Fixed
terminated
is not emitted whenmax_trial
is infinity (-1)
- Fixed
0.2.5
-
Python 3.8 Support (minimum requirements of Gymnasium)
-
Env Changes
- Rename
ARCEnv
intoRawARCEnv
in this version. - Removed
MiniARCEnv
. Please useRawARCEnv
withloader=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
andaction
, and it changesstate
in-place. - You can deepcopy the state and call
env.transition(state_copied, action)
to get next state without changing original state onO2ARCv2Env
.env.transition
will be replaced as separated utility function in the future.
- All operations receives
- n-trial mode added. You canset maximum trials when you call
gym.make()
by putting argumentmax_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
inenv.reset
(default=False
)
- You can specify boolean option
- Rename
-
Bug fix
FloodFill
operation without selection case fixedPaste
operation out-of-bound case fixedCopyI
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 toCropGrid
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 intonp.bool_
)
- Changed
- Several exceptions handling
0.2.0
- ArcEnv-v0 & MiniArcEnv-v0 has renamed to ARCEnv-v0 & MiniARCEnv-v0.
- Changed internal
current_grid
variable togrid
&grid_dim
- Added O2ARCv2Env-v0 environment.
- Added O2ARC Actions
- Uses
selection
andselected
. Some internal variables should be initialized. - Color, Flood Fill(DFS Color)
- Move, Rotate, Flip
- Copy, Paste and Clipboard Features (For O2ARC)
- Uses
0.1.1
- Change Images
- Fix minor issues
0.1.0
- Initial Build.
- ArcEnv-v0 & MiniArcEnv-v0 Launched.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
arcle-0.2.6.tar.gz
(327.2 kB
view details)
Built Distribution
arcle-0.2.6-py3-none-any.whl
(577.6 kB
view details)
File details
Details for the file arcle-0.2.6.tar.gz
.
File metadata
- Download URL: arcle-0.2.6.tar.gz
- Upload date:
- Size: 327.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e28a4fac1c9c8b162e3c4d6cfbb1da36b132db05b6d6db5908e0ed27468ff72f |
|
MD5 | 54eb325fc4aa5b236d7ec8c6af757db2 |
|
BLAKE2b-256 | e5fb07e3d15469e194463d28d806e3269776fe6931410442951b0876a4ce5c05 |
File details
Details for the file arcle-0.2.6-py3-none-any.whl
.
File metadata
- Download URL: arcle-0.2.6-py3-none-any.whl
- Upload date:
- Size: 577.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.10.11
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 62a27e4089e5b7175d286b725c44e0709a15104978e5699d0fc7b0fda23962a4 |
|
MD5 | 9010295dc22ff53c4abc0ea7aea3c862 |
|
BLAKE2b-256 | 22a565faa79d878c1370369567c390caada8332e68eba9dccff3f7924be19ffd |