Releases: Kinds-of-Intelligence-CFI/animal-ai
AnimalAI - v4.2.0
Introducing Animal-AI v4.2.0!
REMINDER: In this version and all future versions, make sure you change your 't' and 'pass_mark' parameters to 'timeLimit' and 'passMark' in the yaml configuration files.
So what's new?
New Feature: Game Object Color Customisation
In AAI v4.2.0 and onwards, nearly all game objects now support customizable colors through the colors parameter in the configuration files. This change reverts a previous design choice, offering more flexibility for object visuals. Certain objects, however, retain their default colors to maintain functionality. If no overriding color(s) is specified in the configuration file, the original default color(s) are applied.
For a full list of objects that support this feature, check out CHANGELOG.md.
New Game Object: HollowBox
A new game object is being introduced called HollowBox. It's a box-shaped hollow object with the same characteristics such as other objects (such as being movable and having random colours assigned). Its intended use case is for rewards to be spawned inside or just above it for object permanence tests.
New Game Object: BadGoalMulti
We’re adding BadGoalMulti(.experimental)
, a variation of the BadGoal
. It features a default color of orange (customizable from v4.2.0 onwards) and carries a reward value of -0.003
.
New Textures for LightBlock & HeavyBlock Game Objects
New textures have been applied to the LightBlock
and HeavyBlock
game objects, offering more visual variety (they were indistinguishable in previous versions due to sharing the same texture). These movable objects also support color customization via the colors parameter for enhanced flexibility.
Bug Fixes:
Blackouts: Kinds-of-Intelligence-CFI/animal-ai-unity#41.
For a complete look, see CHANGELOG.md.
Getting Started:
Check our Installation Guide (here) and/or our Launching Animal-AI Guide (here) for a more detailed look.
But in brief:
- Download Animal-AI OS build for your system from below
- Extract files anywhere you'd like on your system (we use Winrar to package application contents)
- Run .exe/.app file (depending on your system) in the extracted folder of Animal-AI
N.B: If you are using Linux, you may need to make the .exe file executable. Simply run this command in your terminal of choice: chmod +x env/AnimalAI.x86_64
. If you are using macOS, you may also need to run this command: chmod -R 777 [applicationName].app
in your macOS terminal to unlock permissions for Animal-AI.
Full Changelog: v4.1.0...v4.2.0
AnimalAI - v4.1.0
Introducing Animal-AI v4.1.0!
NOTE: Make sure you change your 't' and 'pass_mark' parameters to 'timeLimit' and 'passMark' in the yaml files for this build.
So what's new?
New Feature/Gameobject: DataZones
Introducing a new game object called Datazone. The primary use case for this new game object is for data collection upon being entered by the agent or player. The data collected will be expanded in future iterations. In future versions, the Datazone is also to be used as a trigger to all sorts of arena-specific functionalities, such as spawning/de-spawning objects, opening doors and even handling multiple arenas in a single episode. Please check the example yaml file specified to get familiar with the syntax.
New Feature: LogDataToCSV
Introducing LogDataToCSV, an automatic data logging system that activates during both play and train modes. This system meticulously logs data about the environment, as well as the agent’s observations and actions, into a well-organized CSV file located in the root folder of AAI, specifically under ‘ObservationLogs’.
Key Features:
- Automatic Data Logging: Seamlessly logs and cleans data into a CSV file within the AAI root folder.
- Comprehensive Data Capture: Extensive data is recorded, as illustrated in the example CSV file provided.
- Mode Compatibility: Functions in both play and train modes, with optional feedback on training impact.
- User-Friendly: Designed to minimize disruptions to the user experience and workflow.
Feedback Request:
Your feedback is highly valued on the following aspects:
- Play Mode Functionality: Confirm that the application launches and closes as expected, without any performance issues such as crashes or freezes.
- Train Mode Stability: Ensure that the training process runs smoothly, without any unexpected freezes or crashes, and that the data is being recorded simultaneously (can be confirmed by checking the .csv, looking for any inconsistencies or gaps in rows).
- CSV File Generation: Verify that a CSV file is generated for each environment launch, named in the “Observations_date+time” format, applicable to both play and train modes.
- CSV File Readability: Assess the readability and clarity of the CSV file, focusing on the ease of understanding the captured data.
- Data Feedback: Provide any suggestions for additional columns or improvements in the data captured.
Thank you for your valuable input!
Updates:
(any updates/news to the experimental build will be displayed here)
- A background error was identified during testing where during training mode, AAI would freeze/crash upon launch. Fixed and uploaded new working build.
- Fixed bug where agent health was not updating during training mode. Uploaded new working build.
- (09.08) Added working build for Linux.
- (12.08) Fixed a bug where episodes were not sequentially incrementing (1,2,3,..,n) but were instead doubling randomly. Fixed and uploaded working build.
- (19.08) Experimental/pre-release status revoked and now listed as latest release. Uploaded final build version.
- 29.08) Re-uploaded new build to fix broken unity game objects Bounce and Grow/Ripen balls (due to erratic behaviour).
For a complete look, see CHANGELOG.md.
Getting Started:
Check our Installation Guide (here) and/or our Launching Animal-AI Guide (here) for a more detailed look.
But in brief:
- Download Animal-AI OS build for your system from below
- Extract files anywhere you'd like on your system (we use Winrar to package application contents)
- Run .exe/.app file (depending on your system) in the extracted folder of Animal-AI
N.B: If you are using Linux, you may need to make the .exe file executable. Simply run this command in your terminal of choice: chmod +x env/AnimalAI.x86_64
. If you are using macOS, you may also need to run this command: chmod -R 777 [applicationName].app
in your macOS terminal to unlock permissions for Animal-AI.
What's Changed
- Add documentation for multi-arena episodes by @benaslater in #51
New Contributors
- @benaslater made their first contribution in #51
Full Changelog: v4.0.0...v4.1.0.exp
AnimalAI - v4.0.0
Introducing Animal-AI v4.0.0!
Note: We are transitioning from Animal-AI v3.1.4.experimental to build the foundation for a stable v5.0.0.
So what's new?
Major Updates:
- Added new valenced objects:
DecoyGoal
andDecoyGoalBounce
(details here). These objects have no reward value, are grey, and function like regular valenced objects. - New Feature MergeArenasEpisodes: Allows users to merge multiple arenas into one, enabling more complex environments. Merged arenas will be in the same scene, allowing seamless agent movement between them. See the documentation for an example YAML configuration file.
- General script optimisation has enhanced the efficiency and robustness of Animal-AI.
Minor Updates:
- Sharper and more vibrant text elements.
- Updated health bar UI: Now transitions from
GREEN (100%)
toYELLOW (50%)
toRED (0%)
. - Color logic update:
RIPENGOAL
andDECAYGOAL
now transition between GREY and YELLOW, with purple removed.
For full details, see the CHANGELOG.md.
Getting Started:
Check out our Installation Guide (here) and Launching Animal-AI Guide (here).
But in brief:
- Download Animal-AI OS build for your system from below
- Extract files anywhere you'd like on your system (we use Winrar to package application contents)
- Run .exe/.app file (depending on your system) in the extracted folder of Animal-AI
N.B: If you are using Linux, you may need to make the .exe file executable. Simply run this command in your terminal of choice: chmod +x env/AnimalAI.x86_64
. If you are using macOS, you may also need to run this command: chmod -R 777 [applicationName].app
in your macOS terminal to unlock permissions for Animal-AI.
What's Changed
- [MAJOR] PR - Overhaul Repository Structure by @alhasacademy
Full Changelog: v3.1.4...v4.0.0
AnimalAI - v3.1.4.exp
Introducing AAI v3.1.4.exp!
NOTE: This is an experimental build! Some of the features (listed below) may not work properly or as described! Work in progress. Please provide your feedback via the discussions section.
So what's experimental?
Animal-AI Bug Fixes
Various major bug fixes and improvements to overall project is the theme of this release. Major Unity codebase optimisation and bug fixes (Animal-AI runs smoother now and more efficiently now).
Fixed:
- Fixed a bug where
randomizeArenas
was not cycling through all available arenas if set to true. - Added measures to make sure if the randomizeArenas feature is set to true, the same arena is not selected twice in a row.
For a complete look, see CHANGELOG.md.
Getting Started:
Check our Installation Guide (here) and/or our Launching Animal-AI Guide (here) for a more detailed look.
But in brief:
- Download Animal-AI OS build for your system from below
- Extract files anywhere you'd like on your system (we use Winrar to package application contents)
- Run .exe/.app file (depending on your system) in the extracted folder of Animal-AI
N.B: If you are using Linux, you may need to make the .exe file executable. Simply run this command in your terminal of choice: chmod +x env/AnimalAI.x86_64
. If you are using macOS, you may also need to run this command: chmod -R 777 [applicationName].app
in your macOS terminal to unlock permissions for Animal-AI.
What's Changed
- Update configFile.md by @Heredone in #38
- Update configFile.md by @Heredone in #40
- installationGuide.md changed by @Heredone in #43
- Corrected some grammar and re-worded. by @Heredone in #41
- Added initial description for pillar button outlined. by @Heredone in #42
New Contributors
Full Changelog: v3.1.3...v3.1.4
AnimalAI - v3.1.3
Introducing Animal-AI v3.1.3!
Note: We are moving away from Animal-AI v3.1.2.experimental. Various major bug fixes and improvements to overall project is the theme of this release.
So what's new?
Major:
New Feature: Arena Randomisation
Users can now randomise arena cycling via the yaml global parameter "randomizeArenas".
Arenas Cycling Enhanced Robustness
Animal-AI is now more robust and forgiving when defining arenas in yaml files.
Minor:
- Shortened end-of-episode notification durations to 2.5 seconds.
- Updated visual cues like colors and short GIFs for reinforcement for feature end-of-episode notifications (more user-friendly).
For a complete look, see CHANGELOG.md.
Getting Started:
Check our Installation Guide (here) and/or our Launching Animal-AI Guide (here) for a more detailed look.
But in brief:
- Download Animal-AI OS build for your system from below
- Extract files anywhere you'd like on your system (we use Winrar to package application contents)
- Run .exe/.app file (depending on your system) in the extracted folder of Animal-AI
N.B: If you are using Linux, you may need to make the .exe file executable. Simply run this command in your terminal of choice: chmod +x env/AnimalAI.x86_64
. If you are using macOS, you may also need to run this command: chmod -R 777 [applicationName].app
in your macOS terminal to unlock permissions for Animal-AI.
Full Changelog: 3.1.2...v3.1.3, #36 #33 #8 #7
Kinds-of-Intelligence-CFI/animal-ai-unity/pull/22
AnimalAI - v3.1.2.exp
Introducing Animal-AI v3.1.2.exp!
NOTE: This is an experimental build! Some of the features (listed below) may not work properly or as described! Work in progress. Please provide your feedback via the discussions section.
So what's experimental?
New Feature: (Play Mode) Camera cycling and arena resetting now toggled on/off by specifying in the yaml file.
AnimalAI now lets users restrict camera perspective changes and arena resets during play mode (not in train mode). Players can usually cycle through camera perspectives with ‘C’ and reset the arena with ‘R’, but these can be disabled. These restrictions are off by default and can be toggled in the YAML file globally.
Bug Fixes:
- Fixed SpawnerTree “clock” discrepancy (now SpawnerTree has a more controlled approach).
- Fixed bug with multiple GIFs playing when health is 0 (if end-of-episode notification is set to true).
Other Changes:
- Released final version of End-of-Episode Notification with new look.
- Increased delay before next episode from 2 to 5 seconds.
- Improved SpawnerButton for better handling of missing values.
- Added random reward spawning for each axis for SpawnerButton.
For a complete look, see CHANGELOG.md.
Getting Started:
Check our Installation Guide (here) and/or our Launching Animal-AI Guide (here) for a more detailed look.
But in brief:
- Download Animal-AI OS build for your system from below
- Extract files anywhere you'd like on your system (we use Winrar to package application contents)
- Run .exe/.app file (depending on your system) in the extracted folder of Animal-AI
N.B: If you are using Linux, you may need to make the .exe file executable. Simply run this command in your terminal of choice: chmod +x env/AnimalAI.x86_64
. If you are using macOS, you may also need to run this command: chmod -R 777 [applicationName].app
in your macOS terminal to unlock permissions for Animal-AI.
What's Changed
- Adapt environment to allow changes to timescale and framerates for more control by @kozzy97 in #28
- Improved raycastparser.py by @alhasacademy96 in #29
Full Changelog: v3.1.0...3.1.2
AnimalAI - v3.1.1
Introducing Animal-AI v3.1.1!
Coming with brand new features, Animal-AI v3.1.1 offers new ways to train agents!
So what's new?
Major:
New Feature: Spawner 'SpawnerButton'
The SpawnerButton introduces a new way for agents to interact with the AnimalAI environment. Agents must interact with the SpawnerButton to spawn valanced rewards. The SpawnerButton offers customisable settings to influence how objects are spawned.
The SpawnerButton now includes additional customisable parameters:
- Set animation reset durations.
- Specify which rewards to spawn and their priority using a weighting system with probabilities.
- Determine the number of times each reward spawns (default is infinite).
- Choose the location for spawning rewards within the arena.
New Feature: End of Episode Notification
This feature allows users to display a 2.5-second end-of-episode notification, showing either success or failure animations.
Minor:
- Fixed rare bug affecting the SpawnerTree.
- Fixed bug originating from the SpawnerButton during spawning.
For a complete look, see CHANGELOG.md.
Getting Started:
Check our Installation Guide (here) and/or our Launching Animal-AI Guide (here) for a more detailed look.
But in brief:
- Download Animal-AI OS build for your system from below
- Extract files anywhere you'd like on your system (we use Winrar to package application contents)
- Run .exe/.app file (depending on your system) in the extracted folder of Animal-AI
N.B: If you are using Linux, you may need to make the .exe file executable. Simply run this command in your terminal of choice: chmod +x env/AnimalAI.x86_64
. If you are using macOS, you may also need to run this command: chmod -R 777 [applicationName].app
in your macOS terminal to unlock permissions for Animal-AI.
What's Changed
- more-detailed by @alhasacademy96 in #17
- Agent Directory and Random Walkers by @kozzy97 in #18
- Add random action and random walker agents by @kozzy97 in #21
- Fix the building off eggs by fixing the repo structure by @wschella in #23
New Contributors
Full Changelog: v3.0.2...v3.1.0
AnimalAI - v3.0.2
Introducing Animal-AI v3.0.2!
Introducing Animal-AI with codebase improvements as well as major bug fixes. Animal-AI runs smoother and is up-to-date behind the scenes.
So what's new?
Major:
- Upgraded ML-Agents version to 0.30.0.
- Upgraded Unity Engine Editor to 2021.3.21f1.
- Fixed bug where objects had dark shadows during arena initialisation.
#15
Minor:
- Various Unity-side performance optimisation.
- Various major bug fixes.
For a complete look, see CHANGELOG.md.
Getting Started:
Check our Installation Guide (here) and/or our Launching Animal-AI Guide (here) for a more detailed look.
But in brief:
- Download Animal-AI OS build for your system from below
- Extract files anywhere you'd like on your system (we use Winrar to package application contents)
- Run .exe/.app file (depending on your system) in the extracted folder of Animal-AI
N.B: If you are using Linux, you may need to make the .exe file executable. Simply run this command in your terminal of choice: chmod +x env/AnimalAI.x86_64
. If you are using macOS, you may also need to run this command: chmod -R 777 [applicationName].app
in your macOS terminal to unlock permissions for Animal-AI.
What's Changed
- updated mlagents to 2.3.0-exp by @alhasacademy96 in #15
New Contributors
- @alhasacademy96 made their first contribution in #15
Full Changelog: v2.2...v3.0.2