knowm / proprioceptron Goto Github PK
View Code? Open in Web Editor NEWA virtual environment for testing and simulating machine learning algorithms
License: Apache License 2.0
A virtual environment for testing and simulating machine learning algorithms
License: Apache License 2.0
AI code absolutely does not belong in The Matrix.java and/or in src/mnain/java. It belongs in src/test/*. Move all AI code out of TheMatrix.java and put it in SimpleBrainTheMatrixApp.java analogous to SimpleBrainRoboticArmApp.java. Remove AIAppState, HumanAppState, and PlayerAppState.
Any AI needs to interface with TheMatrix via
Just leave the human controls on by default for all cases.
A PlayerCommand object, the method in TheMatrix taking this object and moving the player with, and moving AI logic to SimpleBrainTheMatrixApp need to be implemented.
Again, see SimpleBrainRoboticArmApp.java.
Create the basic game in package com.xeiam.proprioceptron.thematrix, with a bounded platform of 10 X 10 meters. The camera should be positioned so that the entire game can be played/watched from above. The pills and the player should be big enough to see. Level one should be implemented. A HUD should be added displaying score, energy, and number collected blue pills. The relative pill positions should be outputted as vectors after each movement (see com.xeiam.proprioceptron.roboticarm.SimpleBrainApp for observer pattern usage).
step 1: use JME Application States to implement the levels.
step 2: transition to next level after N blue pills are collected.
step 3: create a level interface in which you can specify the three parameters on which we determine levels, which will add a level to the List of application states.
Propose a game, where a character (see Walking character below) can walk on a platform. It's constrained to its "world". Either a person using the keyboard can play the game or a AI can control the player. The player wants to collect balls and avoid enemies. Each level increases in difficulty.
Ideas:
Rolling can perhaps be done by tilting the world slightly.
We need levels (see Application States below). Perhaps pushing the keys 1 through 9, take you to 9 different levels.
We need HUD to show player stats (see HUD below).
We need to have 1st person, 3rd person, and "observer" views (see on-line examples and A world example below).
Several JME hello world apps are already in our project under test.
Feel free to suggest other ways to increase difficulty at each level. Other game ideas for AI testing are also encouraged. This is just the first thing I thought of.
Write the proposal on the Wiki: https://github.com/timmolter/Proprioceptron/wiki
References:
A world example: http://jmonkeyengine.org/wiki/doku.php/jme3:beginner:hello_collision
Walking character: http://jmonkeyengine.org/wiki/doku.php/jme3:beginner:hello_animation
Application States: http://www.jmonkeyengine.org/wiki/doku.php/jme3:advanced:application_states
HUD: http://www.jmonkeyengine.org/wiki/doku.php/jme3:advanced:hud
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.