Difference between revisions of "Learning"

From BP Wiki
Jump to: navigation, search
(Adaptive Behavioral Programming)
(Adaptive Behavioral Programming)
Line 2: Line 2:
  
 
We introduce a way to program adaptive reactive
 
We introduce a way to program adaptive reactive
systems, using behavioral, scenario-based programming.
+
systems, using behavioral programming.
 
Extending the semantics of BPJ with reinforcements
 
Extending the semantics of BPJ with reinforcements
 
allows the programmer not only to specify what
 
allows the programmer not only to specify what
Line 9: Line 9:
 
behavioral programs with reinforcement learning methods,
 
behavioral programs with reinforcement learning methods,
 
the program can adapt to the environment, and try to achieve
 
the program can adapt to the environment, and try to achieve
the desired goals.  
+
the desired goals.
  
 
== Reference Materials ==
 
== Reference Materials ==

Revision as of 18:50, 27 April 2014

Adaptive Behavioral Programming

We introduce a way to program adaptive reactive systems, using behavioral programming. Extending the semantics of BPJ with reinforcements allows the programmer not only to specify what the system should do or must not do, but also what it should try to do, in an intuitive and incremental way. By integrating behavioral programs with reinforcement learning methods, the program can adapt to the environment, and try to achieve the desired goals.

Reference Materials

Contents of reference material

  • A base version of BPJ
  • A Java library with extensions to BPJ for reinforcement learning. Import and add to the classpath
  • Example: A Salad cutting robot. The b-threads provide an underspecification for a simulated robot that needs to pick up vegetables, cut them and serve them to customers. Using reinforcement learning, the robot learns the correct o in which to execute these actions.
  • Example: Tic Tac Toe, where the application learns how to play despite underspecification.