From d18f19a92181d6edf049b8f2f22000f8c8d7512e Mon Sep 17 00:00:00 2001 From: Bo Zhou <2466956298@qq.com> Date: Thu, 25 Jul 2019 10:08:51 +0800 Subject: [PATCH] add the tutorial: getting started (#97) * add the tutorial: getting started * fix commemt * minor change --- docs/basic_structure/model.rst | 6 +- docs/conf.py | 2 +- docs/getting_started.rst | 201 ++++++++++++++++++++++++++++++ docs/{ => images}/PARL-logo-2.png | Bin docs/images/quickstart.png | Bin 0 -> 72950 bytes docs/index.rst | 87 ++++++------- docs/installation.rst | 3 + docs/tutorial.rst | 2 - 8 files changed, 245 insertions(+), 56 deletions(-) create mode 100644 docs/getting_started.rst rename docs/{ => images}/PARL-logo-2.png (100%) create mode 100644 docs/images/quickstart.png delete mode 100644 docs/tutorial.rst diff --git a/docs/basic_structure/model.rst b/docs/basic_structure/model.rst index 861e809..d9f1254 100644 --- a/docs/basic_structure/model.rst +++ b/docs/basic_structure/model.rst @@ -1,14 +1,16 @@ Model (*Forward Part*) ======================= +A Model is owned by an Algorithm. Model is responsible for the entire network model (**forward part**) for the specific problems. + Methods ---------- -1. policy(self, *args) +1. policy(self, obs) Define the structure of networks here. Algorithm will call this method to predict probabilities of actions. It is optional. -2. value(self, *args) +2. value(self, obs) Return: values: a dict of estimated values for the current observations and states. For example, "q_value" and "v_value". diff --git a/docs/conf.py b/docs/conf.py index f4985d6..d5d2165 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -82,6 +82,6 @@ html_theme_path = [sphinx_rtd_theme.get_html_theme_path()] # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] -html_logo = './PARL-logo-2.png' +html_logo = './images/PARL-logo-2.png' master_doc = 'index' diff --git a/docs/getting_started.rst b/docs/getting_started.rst new file mode 100644 index 0000000..b28077e --- /dev/null +++ b/docs/getting_started.rst @@ -0,0 +1,201 @@ +Getting Started +=========== + +Goal of this tutorial: + + - Understand PARL's abstraction at a high level + - Train an agent to solve the Cartpole problem with Policy Gradient algorithm + +This tutorial assumes that you have a basic familiarity of policy gradient. + +Model +----- +First, let's build a ``Model`` that predicts an action given the observation. As an objective-oriented programming framework, we build models on the top of ``parl.Model`` and implement the ``forward`` function. + +Here, we construct a neural network with two fully connected layers. + +.. code-block:: python + + import parl + from parl import layers + + class CartpoleModel(parl.Model): + def __init__(self, act_dim): + act_dim = act_dim + hid1_size = act_dim * 10 + + self.fc1 = layers.fc(size=hid1_size, act='tanh') + self.fc2 = layers.fc(size=act_dim, act='softmax') + + def forward(self, obs): + out = self.fc1(obs) + out = self.fc2(out) + return out + +Algorithm +---------- +``Algorithm`` will update the parameters of the model passed to it. In general, we define the loss function in ``Algorithm``. +In this tutorial, we solve the benchmark `Cartpole` using the `Policy Graident` algorithm, which has been implemented in our repository. +Thus, we can simply use this algorithm by importting it from ``parl.algorithms``. + +We have also published various algorithms in PARL, please visit this page for more detail. For those who want to implement a new algorithm, please follow this tutorial. + +.. code-block:: python + + model = CartpoleModel(act_dim=2) + algorithm = parl.algorithms.PolicyGradient(model, lr=1e-3) + +Note that each ``algorithm`` should have two functions implemented: + +- ``learn`` + + updates the model's parameters given trainsition data +- ``predict`` + + predicts an action given current environmental state. + +Agent +---------- +Now we pass the algorithm to an agent, which is used to interact with the environment to generate training data. Users should build their agents on the top of ``parl.Agent`` and implement four functions: + +- ``build_program`` + + define programs of fluid. In general, two programs are built here, one for prediction and the other for training. +- ``learn`` + + preprocess transition data and feed it into the training program. +- ``predict`` + + feed current environmental state into the prediction program and return an exectuive action. +- ``sample`` + + this function is usually used for exploration, fed with current state. + +.. code-block:: python + + class CartpoleAgent(parl.Agent): + def __init__(self, algorithm, obs_dim, act_dim): + self.obs_dim = obs_dim + self.act_dim = act_dim + super(CartpoleAgent, self).__init__(algorithm) + + def build_program(self): + self.pred_program = fluid.Program() + self.train_program = fluid.Program() + + with fluid.program_guard(self.pred_program): + obs = layers.data( + name='obs', shape=[self.obs_dim], dtype='float32') + self.act_prob = self.alg.predict(obs) + + with fluid.program_guard(self.train_program): + obs = layers.data( + name='obs', shape=[self.obs_dim], dtype='float32') + act = layers.data(name='act', shape=[1], dtype='int64') + reward = layers.data(name='reward', shape=[], dtype='float32') + self.cost = self.alg.learn(obs, act, reward) + + def sample(self, obs): + obs = np.expand_dims(obs, axis=0) + act_prob = self.fluid_executor.run( + self.pred_program, + feed={'obs': obs.astype('float32')}, + fetch_list=[self.act_prob])[0] + act_prob = np.squeeze(act_prob, axis=0) + act = np.random.choice(range(self.act_dim), p=act_prob) + return act + + def predict(self, obs): + obs = np.expand_dims(obs, axis=0) + act_prob = self.fluid_executor.run( + self.pred_program, + feed={'obs': obs.astype('float32')}, + fetch_list=[self.act_prob])[0] + act_prob = np.squeeze(act_prob, axis=0) + act = np.argmax(act_prob) + return act + + def learn(self, obs, act, reward): + act = np.expand_dims(act, axis=-1) + feed = { + 'obs': obs.astype('float32'), + 'act': act.astype('int64'), + 'reward': reward.astype('float32') + } + cost = self.fluid_executor.run( + self.train_program, feed=feed, fetch_list=[self.cost])[0] + return cost + +Start Training +----------- +First, let's build an ``agent``. As the code shown below, we usually build a model, an algorithm and finally agent. + +.. code-block:: python + + model = CartpoleModel(act_dim=2) + alg = parl.algorithms.PolicyGradient(model, lr=1e-3) + agent = CartpoleAgent(alg, obs_dim=OBS_DIM, act_dim=2) + +Then we use this agent to interact with the environment, and run around 1000 episodes for training, after which this agent can solve the problem. + +.. code-block:: python + + def run_episode(env, agent, train_or_test='train'): + obs_list, action_list, reward_list = [], [], [] + obs = env.reset() + while True: + obs_list.append(obs) + if train_or_test == 'train': + action = agent.sample(obs) + else: + action = agent.predict(obs) + action_list.append(action) + + obs, reward, done, info = env.step(action) + reward_list.append(reward) + + if done: + break + return obs_list, action_list, reward_list + + env = gym.make("CartPole-v0") + for i in range(1000): + obs_list, action_list, reward_list = run_episode(env, agent) + if i % 10 == 0: + logger.info("Episode {}, Reward Sum {}.".format(i, sum(reward_list))) + + batch_obs = np.array(obs_list) + batch_action = np.array(action_list) + batch_reward = calc_discount_norm_reward(reward_list, GAMMA) + + agent.learn(batch_obs, batch_action, batch_reward) + if (i + 1) % 100 == 0: + _, _, reward_list = run_episode(env, agent, train_or_test='test') + total_reward = np.sum(reward_list) + logger.info('Test reward: {}'.format(total_reward)) + +Summary +----------- + +.. image:: ../examples/QuickStart/performance.gif + :width: 300px +.. image:: ./images/quickstart.png + :width: 300px +In this tutorial, we have shown how to build an agent step-by-step to solve the `Cartpole` problem. + +The whole training code could be found `here `_. Have a try quickly by running several commands: + +.. code-block:: shell + + # Install dependencies + pip install paddlepaddle + + pip install gym + git clone https://github.com/PaddlePaddle/PARL.git + cd PARL + pip install . + + # Train model + cd examples/QuickStart/ + python train.py + diff --git a/docs/PARL-logo-2.png b/docs/images/PARL-logo-2.png similarity index 100% rename from docs/PARL-logo-2.png rename to docs/images/PARL-logo-2.png diff --git a/docs/images/quickstart.png b/docs/images/quickstart.png new file mode 100644 index 0000000000000000000000000000000000000000..353ef5738a45a08bf133623e9a2418e3cd86feca GIT binary patch literal 72950 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