Skip to content

Commit

Permalink
init
Browse files Browse the repository at this point in the history
  • Loading branch information
cnheider committed Nov 2, 2018
0 parents commit ee6b345
Show file tree
Hide file tree
Showing 36 changed files with 1,071 additions and 0 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
build
452 changes: 452 additions & 0 deletions .idea/dbnavigator.xml

Large diffs are not rendered by default.

18 changes: 18 additions & 0 deletions .idea/documentation.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 5 additions & 0 deletions .idea/inspectionProfiles/profiles_settings.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions .idea/workspace.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

20 changes: 20 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Minimal makefile for Sphinx documentation
#

# You can set these variables from the command line.
SPHINXOPTS =
SPHINXBUILD = sphinx-build
SPHINXPROJ = Neodroid
SOURCEDIR = source
BUILDDIR = build

# Put it first so that "make" without argument is like "make help".
help:
@$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)

.PHONY: help Makefile

# Catch-all target: route all unknown targets to Sphinx using the new
# "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
%: Makefile
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# documentation

![documentation](https://upload.wikimedia.org/wikipedia/commons/2/2b/Bookshelf.jpg)
1 change: 1 addition & 0 deletions index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<meta http-equiv="refresh" content="0; url=./build/html/index.html" />
36 changes: 36 additions & 0 deletions make.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
@ECHO OFF

pushd %~dp0

REM Command file for Sphinx documentation

if "%SPHINXBUILD%" == "" (
set SPHINXBUILD=sphinx-build
)
set SOURCEDIR=source
set BUILDDIR=build
set SPHINXPROJ=Neodroid

if "%1" == "" goto help

%SPHINXBUILD% >NUL 2>NUL
if errorlevel 9009 (
echo.
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
echo.installed, then set the SPHINXBUILD environment variable to point
echo.to the full path of the 'sphinx-build' executable. Alternatively you
echo.may add the Sphinx directory to PATH.
echo.
echo.If you don't have Sphinx installed, grab it from
echo.http://sphinx-doc.org/
exit /b 1
)

%SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%
goto end

:help
%SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%

:end
popd
1 change: 1 addition & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
sphinx
17 changes: 17 additions & 0 deletions source/_templates/logo.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<div id="logo">
<a href="{{ pathto(master_doc) }}">
<h1>
<div style="margin-right: 40px; text-align: center;">
<p><span>Neodroid</span></p>
<p><span>SINTEF</span></p>
</div>
</h1>
</a>
<div class="headshot" style="margin-right: 40px;">
<a href="{{ pathto('about') }}" style="border-bottom: 0;">
<img src="{{ pathto('_images/neodroid_banner.png', 1) }}" alt='Neodroid'>
<div style="text-align: center; vertical-align: middle;">
</div>
</a>
</div>
</div>
3 changes: 3 additions & 0 deletions source/about.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
=====
About
=====
8 changes: 8 additions & 0 deletions source/abstractions/actor.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
.. _actor:
.. _motor:

=====
Actor
=====

The concept of the actor_ model is that is that is encapsulates a number of motor_ s as part of one entity. For example as brushless electric motors on a multirotor aircraft, here the actor is the aircraft and the motors in are the brushless electric motors.
9 changes: 9 additions & 0 deletions source/abstractions/agent.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.. _agent:
.. _reaction:
.. _TCP:

=====
Agent
=====

The agent_ model is an abstraction of some external agent providing reaction_ s to be acted out in the environment. The agent_ abstraction has the responsibility of providing the interface for external agents into the environment, this include passing messages back and forth through a TCP_ connection or likewise.
9 changes: 9 additions & 0 deletions source/abstractions/environment_state.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.. _environment_state:
.. _observer:
.. _actor:

=================
Environment State
=================

The environment_state_ encapsulates all information that should be exposed to external agents into one message. This message is comprised of observer_ s with their relevant observational data, actor_ s with their positions and rotations in the environments, how much energy has been spent since the last reset, how many frames/time has passed since last reset and lastly a reward given by some objective function.
2 changes: 2 additions & 0 deletions source/abstractions/images/neodroid_classes.svg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 2 additions & 0 deletions source/abstractions/images/reaction_brainstorm.svg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
24 changes: 24 additions & 0 deletions source/abstractions/index.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
.. _abstractions:

============
Abstractions
============

Neodroid is comprised of a collection models designed to be general and simple, to facilitate the user to easily build the mental model of the environment they building. These models include:

.. toctree::
:maxdepth: 2

actor
agent
observer
reaction
motion
motor
environment_state

and a additional one which is relevant for building the interface for an external agent with only partially observervable state of the environment.

.. image:: images/neodroid_classes.*

.. image:: images/reaction_brainstorm.*
11 changes: 11 additions & 0 deletions source/abstractions/motion.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
.. _motion:
.. _actor:
.. _motor:
.. _reaction:

======
Motion
======

Motions are abstractions of spendature of energy and where the energy should be spent. These is simply an address on an actor_ and a motor_ with an assigned energy strength, this energy may be positive or negative to indicate for example expansion and contraction of a motor_ or the torque applied to a motor_ clock-wise or anti-clock-wise. Its is the absolute magnitude of the strenght that counts towards total energy spendature.
Motions are passed through reaction_ model as messages produced by the agent, this the way the external agent affect the environment.
8 changes: 8 additions & 0 deletions source/abstractions/motor.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
.. _motor:

=====
Motor
=====

The idea of the motor is very general, is can be unary or binary, here binary refers to the sign of the motion/force being applied to it, if a motor_ is unary it can only be affected by a positive force.
A motor can apply anything from a spinning motion to a sliding motion, it is easy the realise that both of these can be binary but also unary if chosen. Whereas a rocket motor provide a thrust motion will most likely only be unary.
7 changes: 7 additions & 0 deletions source/abstractions/observer.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
.. _observer:

========
Observer
========

An observer or its 'sensor' synonym fits quite well for thinking about the abstraction at hand. It is responsable for capturing information in the environment to be passed on the agent. It can for example be used for capturing depth images in the environment or tracking a specific variable in the environment.
9 changes: 9 additions & 0 deletions source/abstractions/reaction.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.. _reaction:
.. _agent:
.. _motion:

========
Reaction
========

A reaction is the abstraction of a message passed from an external agent to the agent_ model providing the interface, as a response to the observed state. A reaction includes a boolean variable for resetting the environment and a number of the motion_ s to be acted out the environment by actor and their motors.
7 changes: 7 additions & 0 deletions source/architecture.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
============
Architecture
============

.. image:: images/neodroid_agent_game.*

.. image:: images/neodroid_classes_verbs.*

0 comments on commit ee6b345

Please sign in to comment.