From 23b7cf5a775fccf85ecf7bc3e9e953ee9985ec0f Mon Sep 17 00:00:00 2001 From: Arthur Bit-Monnot Date: Fri, 15 Dec 2023 16:02:49 +0100 Subject: [PATCH] doc(tamp): fix title levels that were missing with displayed documentation --- .../14-task-and-motion-planning.ipynb | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/docs/notebooks/14-task-and-motion-planning.ipynb b/docs/notebooks/14-task-and-motion-planning.ipynb index 38922df7d..91e236c6b 100644 --- a/docs/notebooks/14-task-and-motion-planning.ipynb +++ b/docs/notebooks/14-task-and-motion-planning.ipynb @@ -54,7 +54,7 @@ "id": "JskjdsH-UFGf" }, "source": [ - "# Creating Movable Robot\n", + "## Creating Movable Robot\n", "\n", "We declare a type for robots using the `MovableType`." ] @@ -76,7 +76,7 @@ "id": "x7IxmDuPUggo" }, "source": [ - "# Using a Map\n", + "## Using a Map\n", "\n", "Next we add an occupancy map by using a reference to a YAML file in the format used by the Robot Operating System (ROS). See http://wiki.ros.org/map_server.\n" ] @@ -98,7 +98,7 @@ "id": "NGTBaSbNU9df" }, "source": [ - "# Adding Configration Types\n", + "## Adding Configuration Types\n", "\n", "A configuration specifies a location and orientation in our map. The last value is the number of dimensions of a configuration (here we have three for X, Y coordnates and angle)." ] @@ -120,7 +120,7 @@ "id": "WzKtAX8ZVVSh" }, "source": [ - "# Adding Fluents\n", + "## Adding Fluents\n", "\n", "Fluents are added as ususal, but we use our previously added `ConfigurationType` in place of a regular location." ] @@ -146,7 +146,7 @@ "id": "w2Ir9L0XVtQz" }, "source": [ - "# Creating Configuration Objects\n", + "## Creating Configuration Objects\n", "\n", "Configuration objects combine a symbolic name like `parkin-1` with a pose. Each pose is a tuple with the number of elements specified by the configuration type (so three in this case)." ] @@ -178,7 +178,7 @@ "id": "fcJPXKbGWZor" }, "source": [ - "# Adding Movable Objects\n", + "## Adding Movable Objects\n", "\n", "Motion planning requires objects that can move in our map. For this purpose we add two MovableObject instances for our robots names `r1` and `r2`.\n", "\n", @@ -216,7 +216,7 @@ "id": "raMc5ephX6Sl" }, "source": [ - "# Some Additional Objects\n", + "## Some Additional Objects\n", "\n", "Creating some parcels in the regular Unified Planning style." ] @@ -240,11 +240,11 @@ "id": "eQCtIejKYUd1" }, "source": [ - "# Operators\n", + "## Operators\n", "\n", "Now we can create operators that can use motion constraints.\n", "\n", - "## Move\n", + "### Move\n", "\n", "The move operators has a motion constraint that requires the robot to move from its current configuration to the goal configuration. Apart from the last line that adds this constraints and the type `InstantaneousMotionAction`, this looks just like classical planning operators defined in Unified Planning." ] @@ -275,7 +275,7 @@ "id": "o7OJ7t5zZBDT" }, "source": [ - "## Pick\n", + "### Pick\n", "\n", "Robots can pick parcels at their current location if they carry nothing. This operator does not use a motion planning constraint." ] @@ -309,7 +309,7 @@ "id": "_gfOmdfnZTkI" }, "source": [ - "## Place\n", + "### Place\n", "\n", "Robots can place objects they carry at their current location. Again, no special motion planning constraint is used." ] @@ -403,7 +403,7 @@ "id": "gYQm4A8RZ-n6" }, "source": [ - "# Solve the Problem and Show the Result\n", + "## Solve the Problem and Show the Result\n", "\n", "Now we can solve the problem and print the result. If a path exists, we plot it.\n", "\n", @@ -488,7 +488,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Plotting the Solution\n", + "## Plotting the Solution\n", "\n", "Assuming there is a solution, we can use the `plot_path` function to inspect it:" ]