Comments (3)
The Java Examples were broken on OS X, for a few reasons.
This all stems from the makefiles having a few inconsistencies, in:
Examples/basic_examples/Java/{Agent/Environment/Experiment}
First, the platform was being determined with uname -o. This option
doesn't appear to exist on OS X. I think maybe uname -s is a better option?
Second, there were multiple CLASSPATH variables that were being used for
building with JAVAC and for creating the run script on the fly. I think
they were working on Windows but not on Mac.
Third, echo -e is used to create the run scripts on the fly, but echo -e
doesn't exist on Mac (-e is supposed to correctly understand escaped
characters like \n). On Mac, this just works without any extra parameter.
We also have a new way of loading agents and envs with RL-Glue, something a
little cuter.
Instead of:
java -Xmx128M -classpath ./Build:../../../../RL-Glue/Java/RL-Glue.jar
rlglue.agent.AgentLoader RandomAgent.RandomAgent
It is now:
java -Xmx128M -classpath ./Build:../../../../RL-Glue/Java/RL-Glue.jar
rlglue.RLGlueCore --agent RandomAgent.RandomAgent
I like this better, because you can also do:
rlglue.RLGlueCore --environment SomeEnvironment.SomeEnvironment
or
rlGlue.RLGlueCore --version
(which will print out the version of RL-Glue as defined in it's new Manifest).
It might just be a matter of taste, but I think this comes across more
professional. The old way still works.
I've updated Agent/makefile to solve these problems and to use the new
loading mechanism. Someone needs to test it on Windows and Linux please.
Then, make the same style of changes to the other java makefiles please.
Original comment by [email protected]
on 18 Sep 2008 at 1:48
from rl-glue-ext.
I'm not even sure that I like that way anymore. we can keep it, but there are
better
options. How about people just make their agents self-loadable.
Like this (this is how all of the test agents/envs/exps work):
//This is inside Test_1_Agent.java
public static void main(String[] args){
AgentLoader L=new AgentLoader(new Test_1_Agent());
L.run();
}
We just need to document this somewhere as the recommended approach.
Original comment by [email protected]
on 18 Sep 2008 at 1:49
- Changed state: Started
- Added labels: Component-Docs
from rl-glue-ext.
This has been documented in the manual. Closing.
Original comment by [email protected]
on 1 Oct 2008 at 6:41
- Changed state: Fixed
from rl-glue-ext.
Related Issues (20)
- Matlab Cross Testing
- Java Codec install doesn't put it in your classpath HOT 2
- Broken Links HOT 1
- Link Matlab Codec to Java Documentation HOT 2
- Create a page for "Mines" HOT 2
- Move all examples to RL-Library and link as externals HOT 5
- Mention on the Java document and webpage that you don't *need* RLGlueCore HOT 1
- Added .txt to ALL README files. HOT 2
- ldconfig HOT 2
- Wrap the HTML manual pages in a template of the site
- Python Windows distribution problems HOT 2
- Windows RL-Glue release problems HOT 2
- Some of the wiki templates do not have full links HOT 1
- Experiment and Environment CPU 100% of Python agent dies in agent_init HOT 1
- RL_abstract_type.hashCode() HOT 1
- RL-Glue disk image and previous install break under snow leopard HOT 3
- Java Codec Fails With Debian Squeeze
- Code review request
- Can't install if there are spaces in the working directory
- Can't install from RPM package
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rl-glue-ext.