Skip to content

Commit 8567a6e

Browse files
committed
Rearrange rl4j examples for new examples structure.
Signed-off-by: Paul Dubs <[email protected]>
1 parent 04b0638 commit 8567a6e

File tree

11 files changed

+293
-265
lines changed

11 files changed

+293
-265
lines changed

rl4j-ale-examples/.gitignore

Lines changed: 0 additions & 5 deletions
This file was deleted.

rl4j-ale-examples/pom.xml

Lines changed: 0 additions & 78 deletions
This file was deleted.

rl4j-cartpole-examples/.gitignore

Lines changed: 0 additions & 3 deletions
This file was deleted.

rl4j-cartpole-examples/pom.xml

Lines changed: 0 additions & 85 deletions
This file was deleted.

rl4j-examples/README.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
## Eclipse Deeplearning4j: RL4J Examples
2+
3+
This project contains a set of examples that demonstrate how to use reinforcement learning with RL4J.
4+
5+
The examples in this project along with a short summary are listed below. This is also the recommended order to explore them in.
6+
7+
[Go back](../README.md) to the main repository page to explore other features/functionality of the **Eclipse DeeplearningJ** ecosystem. File an issue [here](https://github.com/eclipse/deeplearning4j-examples/issues) to request new features.
8+
9+
## Quickstart
10+
There is no quickstart with RL4J at the moment. All examples require you to have some reinforcement learning experience to fully understand them.
11+
12+
## Advanced
13+
* [Cartpole](./src/main/java/org/deeplearning4j/rl4j/examples/advanced/cartpole)
14+
This example shows how to train the classic cartpole environment with DQN and A3C. When running the A3C example, make sure to change the model storage location to something convenient for you.
15+
16+
* [Arcade Learning Environment](./src/main/java/org/deeplearning4j/rl4j/examples/advanced/ale)
17+
This example can only be run with the Atari Pong ROM `pong.bin`. It demonstrates how to use the Arcade Learning Environment (i.e. an Atari 2600 emulator that was made for reinforcement learning) with A3C and DQN.

rl4j-examples/pom.xml

Lines changed: 155 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,155 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project xmlns="http://maven.apache.org/POM/4.0.0"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5+
<modelVersion>4.0.0</modelVersion>
6+
7+
<groupId>org.deeplearning4j</groupId>
8+
<artifactId>rl4j-examples</artifactId>
9+
<version>1.0.0-beta7</version>
10+
<properties>
11+
<nd4j.version>1.0.0-beta7</nd4j.version>
12+
<rl4j.version>1.0.0-beta7</rl4j.version>
13+
<logback.version>1.1.7</logback.version>
14+
<java.version>1.8</java.version>
15+
<maven-compiler-plugin.version>3.6.1</maven-compiler-plugin.version>
16+
<maven.minimum.version>3.3.1</maven.minimum.version>
17+
<nd4j.backend>nd4j-native-platform</nd4j.backend>
18+
</properties>
19+
20+
<dependencies>
21+
<!-- ND4J backend. You need one in every DL4J project. Normally define artifactId as either nd4j-native-platform or nd4j-cuda-X.X-platform to use CUDA GPUs (check parent pom for supported cuda versions) -->
22+
<dependency>
23+
<groupId>org.nd4j</groupId>
24+
<artifactId>${nd4j.backend}</artifactId>
25+
<version>${nd4j.version}</version>
26+
</dependency>
27+
28+
<dependency>
29+
<groupId>org.deeplearning4j</groupId>
30+
<artifactId>rl4j-core</artifactId>
31+
<version>${rl4j.version}</version>
32+
</dependency>
33+
<dependency>
34+
<groupId>org.deeplearning4j</groupId>
35+
<artifactId>rl4j-gym</artifactId>
36+
<version>${rl4j.version}</version>
37+
</dependency>
38+
<dependency>
39+
<groupId>org.deeplearning4j</groupId>
40+
<artifactId>rl4j-ale</artifactId>
41+
<version>${rl4j.version}</version>
42+
</dependency>
43+
<!-- The Arcade Learning Environment (ALE) is under GPL license, so we cannot use it as a dependency of RL4J. -->
44+
<dependency>
45+
<groupId>org.bytedeco</groupId>
46+
<artifactId>ale-platform</artifactId>
47+
<version>0.6.0-1.5.2</version>
48+
</dependency>
49+
<dependency>
50+
<groupId>org.junit.jupiter</groupId>
51+
<artifactId>junit-jupiter-engine</artifactId>
52+
<version>5.4.2</version>
53+
<scope>test</scope>
54+
</dependency>
55+
<dependency>
56+
<groupId>ch.qos.logback</groupId>
57+
<artifactId>logback-classic</artifactId>
58+
<version>${logback.version}</version>
59+
</dependency>
60+
</dependencies>
61+
<build>
62+
<plugins>
63+
<plugin>
64+
<artifactId>maven-enforcer-plugin</artifactId>
65+
<version>1.0.1</version>
66+
<executions>
67+
<execution>
68+
<id>enforce-default</id>
69+
<goals>
70+
<goal>enforce</goal>
71+
</goals>
72+
<configuration>
73+
<rules>
74+
<requireMavenVersion>
75+
<version>[${maven.minimum.version},)</version>
76+
<message>********** Minimum Maven Version is ${maven.minimum.version}. Please upgrade Maven before continuing (run "mvn --version" to check). **********</message>
77+
</requireMavenVersion>
78+
</rules>
79+
</configuration>
80+
</execution>
81+
</executions>
82+
</plugin>
83+
<plugin>
84+
<groupId>org.apache.maven.plugins</groupId>
85+
<artifactId>maven-compiler-plugin</artifactId>
86+
<version>${maven-compiler-plugin.version}</version>
87+
<configuration>
88+
<source>1.7</source>
89+
<target>1.7</target>
90+
</configuration>
91+
</plugin>
92+
<plugin>
93+
<groupId>com.lewisd</groupId>
94+
<artifactId>lint-maven-plugin</artifactId>
95+
<version>0.0.11</version>
96+
<configuration>
97+
<failOnViolation>true</failOnViolation>
98+
<onlyRunRules>
99+
<rule>DuplicateDep</rule>
100+
<rule>RedundantPluginVersion</rule>
101+
<!-- Rules incompatible with Java 9
102+
<rule>VersionProp</rule>
103+
<rule>DotVersionProperty</rule> -->
104+
</onlyRunRules>
105+
</configuration>
106+
<executions>
107+
<execution>
108+
<id>pom-lint</id>
109+
<phase>validate</phase>
110+
<goals>
111+
<goal>check</goal>
112+
</goals>
113+
</execution>
114+
</executions>
115+
</plugin>
116+
<plugin>
117+
<groupId>org.apache.maven.plugins</groupId>
118+
<artifactId>maven-compiler-plugin</artifactId>
119+
<version>3.5.1</version>
120+
<configuration>
121+
<source>${java.version}</source>
122+
<target>${java.version}</target>
123+
</configuration>
124+
</plugin>
125+
</plugins>
126+
<pluginManagement>
127+
<plugins>
128+
<plugin>
129+
<groupId>org.eclipse.m2e</groupId>
130+
<artifactId>lifecycle-mapping</artifactId>
131+
<version>1.0.0</version>
132+
<configuration>
133+
<lifecycleMappingMetadata>
134+
<pluginExecutions>
135+
<pluginExecution>
136+
<pluginExecutionFilter>
137+
<groupId>com.lewisd</groupId>
138+
<artifactId>lint-maven-plugin</artifactId>
139+
<versionRange>[0.0.11,)</versionRange>
140+
<goals>
141+
<goal>check</goal>
142+
</goals>
143+
</pluginExecutionFilter>
144+
<action>
145+
<ignore/>
146+
</action>
147+
</pluginExecution>
148+
</pluginExecutions>
149+
</lifecycleMappingMetadata>
150+
</configuration>
151+
</plugin>
152+
</plugins>
153+
</pluginManagement>
154+
</build>
155+
</project>

0 commit comments

Comments
 (0)