Commit Graph

22 Commits (3cbba495183f3af1a7d437f6f7ac6f5b0c77ed0b)

Author SHA1 Message Date
Samuel Audet 5cd143611e Merge remote-tracking branch 'eclipse/master'
Signed-off-by: Samuel Audet <samuel.audet@gmail.com>
2020-03-18 16:17:14 +09:00
raver119 a7a97d8259 rl4j: update host pointers content before reading them
Signed-off-by: raver119 <raver119@gmail.com>
2020-03-11 10:57:55 +03:00
Alexandre Boulanger 8b10f0b876
RL4J: Add TransformProcess, part 2 (#8766)
* Part 2 of TransformProcess

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Fix compile errors

Signed-off-by: Samuel Audet <samuel.audet@gmail.com>

* Revert unrelated changes

Signed-off-by: Samuel Audet <samuel.audet@gmail.com>

Co-authored-by: Samuel Audet <samuel.audet@gmail.com>
2020-03-11 11:56:41 +09:00
Samuel Audet 58aa5a3a9b
RL4J: Add TransformProcess, part 1 (#8711)
* Added TransformProcess, part 1

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Renamed TemporalMergeTransform to HistoryMergeTransform

Signed-off-by: unknown <aboulang2002@yahoo.com>

* changed INDArrayHelper to use Nd4j.expandDims

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Adjusted copyrights

Signed-off-by: unknown <aboulang2002@yahoo.com>
2020-03-05 14:43:13 +09:00
Alex Black c8882cbfa5
Test fixes + cleanup (#245)
* Test spam reduction

Signed-off-by: Alex Black <blacka101@gmail.com>

* Arbiter bad import fixes

Signed-off-by: Alex Black <blacka101@gmail.com>

* Small spark test tweak

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Arbiter test log spam reduction

Signed-off-by: Alex Black <blacka101@gmail.com>

* More test spam reduction

Signed-off-by: Alex Black <blacka101@gmail.com>
2020-02-18 10:29:06 +11:00
Alexandre Boulanger 20e3039f2e
RL4J: Change frame skipping logic (#8596)
* Added isSkipped() to Observation

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Changed refacInitMdp to use isSkipped()

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Changed getHistoryProcessor()

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Fixed getEpochCounter() incorrectly changed to getCurrentEpochStep() calls

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Removed StepCountable

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Fix build

Signed-off-by: Samuel Audet <samuel.audet@gmail.com>

* Fixed a problem in QLearningDiscrete and another in CartpoleNative

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Update versions of JavaCPP Presets for NumPy, MKL, Gym, and TensorFlow

Signed-off-by: Samuel Audet <samuel.audet@gmail.com>

* RL4J: Add ability to set a random seed for GymEnv

Signed-off-by: Samuel Audet <samuel.audet@gmail.com>

Co-authored-by: Samuel Audet <samuel.audet@gmail.com>
2020-02-04 12:23:39 +09:00
Samuel Audet 9edbefdc67
RL4J: Replace gym-java-client with JavaCPP (#8595)
* RL4J: Replace gym-java-client with JavaCPP

Signed-off-by: Samuel Audet <samuel.audet@gmail.com>
2020-01-20 17:13:57 +09:00
Alexandre Boulanger de3975f088 RL4J: Remove processing done on observations in Policy & Async (#8471)
* Removed processing from Policy.play() and fixed missing resets

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Adjusted unit test to check if DQNs have been reset

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Fixed a couple of problems, added and updated unit tests

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Removed processing from AsyncThreadDiscrete

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Fixed a few problems

Signed-off-by: unknown <aboulang2002@yahoo.com>
2019-12-18 16:27:05 +09:00
Alexandre Boulanger 47c58cf69d RL4J: Add Observation and LegacyMDPWrapper (#8368)
* Added Observable & LegacyMDPWrapper

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Moved observation processing to LegacyMDPWrapper

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Observation using DataSets, changes in Transition and BaseTDTargetAlgorithm

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Added javadoc to Transition new methods

Signed-off-by: unknown <aboulang2002@yahoo.com>
2019-11-26 23:05:11 +09:00
Alex Black 47d19908f4
Various fixes (#43)
* #8172 Enable DL4J MKLDNN batch norm backward pass

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #8382 INDArray.toString() rank 1 brackets / ambiguity fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* #8308 Fix handful of broken links (inc. some in errors)

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Unused dependencies, round 1

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Unused dependencies, round 2

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Unused dependencies, round 3

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Small fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>

* Uniform distribution TF import fix

Signed-off-by: AlexDBlack <blacka101@gmail.com>
2019-11-14 19:38:20 +11:00
Alexandre Boulanger a2b973d41b RL4J: Make a few fixes (#8303)
* A few fixes

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Reverted move of ObservationSpace, ActionSpace and others

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Added unit tests

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Changed ActionSpace of gym-java-client to use Nd4j's Random

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>
2019-10-31 13:41:52 +09:00
Alexandre Boulanger 171ce51f46 RL4J: Use Nd4j Random instead of java.util.Random (#8282)
* Changed to use Nd4j Random instead of java.util.Random

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Changed to use Nd4j.getRandom() instead of the factory

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>
2019-10-16 10:56:24 +09:00
Alexandre Boulanger 3aa51e210a RL4J: Extract TD Target calculations (StandardDQN and DoubleDQN) (#8267)
Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>
2019-10-09 09:14:47 +09:00
Alexandre Boulanger 5959ff4795 RL4J: Fix QLearningDiscrete.setTarget() and add CartpoleNative (#8250)
* Fixed QLearningDiscrete.setTarget()

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Added native java version of Cartpole

Signed-off-by: unknown <aboulang2002@yahoo.com>
2019-10-01 09:27:51 +09:00
Alexandre Boulanger d5e98afcef RL4J: Add VideoRecorder (#8106)
* Added VideoRecorder

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Added missing header

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Changed HistoryProcessor to use VideoRecorder

Signed-off-by: unknown <aboulang2002@yahoo.com>
2019-09-30 13:40:32 +09:00
Alexandre Boulanger 59f1cbf0c6 RL4J - AsyncTrainingListener (#8072)
* Code clarity: Extracted parts of run() into private methods

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Added listener pattern to async learning

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Merged all listeners logic

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Added interface and common data to training events

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Fixed missing info log file

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Fixed bad merge; removed useless TrainingEvent

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Removed param from training start/end event

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Removed 'event' classes from the training listener

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Reverted changes to QLearningDiscrete.setTarget()
2019-09-19 11:28:13 +10:00
Alex Black 95100ffd8c
Small build fixes (#127)
* Small build fixes

Signed-off-by: Alex Black <blacka101@gmail.com>

* Fix RL4J

Signed-off-by: Alex Black <blacka101@gmail.com>

* Test fixes

Signed-off-by: Alex Black <blacka101@gmail.com>

* Another fix

Signed-off-by: Alex Black <blacka101@gmail.com>
2019-08-17 14:13:31 +10:00
Alexandre Boulanger b083c22de5 RL4J - Added a unit test to help refac QLearningDiscrete.trainStep() (#8065)
* Added a unit test to help refac QLearningDiscrete.trainStep()

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Changed expReplay setter to package private

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>
2019-08-02 12:50:28 +10:00
Alexandre Boulanger b2145ca780 RL4J Added listener pattern to SyncLearning (#8050)
* Added listener pattern to SyncLearning

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Did requested changes

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>
2019-08-02 12:43:45 +10:00
Alexandre Boulanger 87d2b2cd3d Added interface IDataManager (#8034)
Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>
2019-07-25 21:34:54 +10:00
Alexandre Boulanger ee6aae268f RL4J refac: Added some observation transform classes (#7958)
* Added observation classes and tests

Signed-off-by: unknown <aboulang2002@yahoo.com>

* Now uses DataSetPreProcessors

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* CompositeDataSetPreProcessor can now stop processing on empty dataset; Some DataSetPreProcessors moving from RL4J to ND4J

Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>

* Did requested minor changes

Signed-off-by: Alexandre Boulanger <Alexandre.Boulanger@ia.ca>
Signed-off-by: Alexandre Boulanger <aboulang2002@yahoo.com>
2019-07-20 10:28:20 +10:00
skymindops b5f0ec072f Eclipse Migration Initial Commit 2019-06-06 15:21:15 +03:00