RLPark 1.0.0
Reinforcement Learning Framework in Java
|
00001 package rlpark.plugin.critterbot.actions; 00002 00003 00004 public class XYThetaAction extends CritterbotAction { 00005 private static final long serialVersionUID = -1434106060178637255L; 00006 private static final int ActionValue = 30; 00007 public static final CritterbotAction NoMove = new XYThetaAction(0, 0, 0); 00008 public static final CritterbotAction TurnLeft = new XYThetaAction(ActionValue, ActionValue, ActionValue); 00009 public static final CritterbotAction TurnRight = new XYThetaAction(ActionValue, ActionValue, -ActionValue); 00010 public static final CritterbotAction Forward = new XYThetaAction(ActionValue, 0, 0); 00011 public static final CritterbotAction Backward = new XYThetaAction(-ActionValue, 0, 0); 00012 public static final CritterbotAction Left = new XYThetaAction(0, -ActionValue, 0); 00013 public static final CritterbotAction Right = new XYThetaAction(0, ActionValue, 0); 00014 00015 public XYThetaAction(double x, double y, double theta) { 00016 super(MotorMode.XYTHETA_SPACE, x, y, theta); 00017 } 00018 00019 public XYThetaAction(double[] actions) { 00020 super(MotorMode.XYTHETA_SPACE, actions); 00021 } 00022 00023 static public CritterbotAction[] sevenActions() { 00024 return new CritterbotAction[] { NoMove, TurnLeft, TurnRight, Forward, Backward, Left, Right }; 00025 } 00026 }