summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrea Censi <AndreaCensi@users.noreply.github.com>2023-06-16 15:03:00 +0200
committerGitHub <noreply@github.com>2023-06-16 15:03:00 +0200
commit346093179c23fa50919df349cc39f47a47548a1d (patch)
treea11520ce5beac9b9436d738bc070b5b3776f00fd
parentciskip (diff)
downloadact4e-mcdp-346093179c23fa50919df349cc39f47a47548a1d.tar.gz
act4e-mcdp-346093179c23fa50919df349cc39f47a47548a1d.zip
Update README.md
-rw-r--r--README.md44
1 files changed, 37 insertions, 7 deletions
diff --git a/README.md b/README.md
index 0fc73b3..92560f6 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,16 @@
+# ACT4EI, Spring 2023, DP exercise
+
+Note: this code exercise is **optional** -- it is very interesting to do, but we do not feel we have play-tested it enough for it to be a graded exercise.
+
+## Overview
+
+There are 2 repositories to consider:
+
+- This repository contains these instructions and the solution template.
+- The repository [ACT4E/ACT4E-mcdp-exercise](https://github.com/ACT4E/ACT4E-mcdp-exercise) contains the test runner and the data structures to use.
+ Note that there are extensive docs available online.
+
+
# Setup
## Install required software
@@ -163,23 +176,40 @@ You should see the output:
TODO: finish this part
-# ACT4E exercises requirements
+---
+
+# ACT4E exercises progression
+
+## Phase 1: solve simple DP queries for each component
-## Compulsory
+In this first phase, you will implement the queries for each type of DP in isolation.
-The following queries must run successfully:
+The following query must run successfully:
act4e-mcdp-solve-dp-queries -d downloaded/lib1-parts --solver act4e_mcdp_solution.DPSolver
+
+## Phase 2: solve DP queries with multiple DPs (series, parallel, loop)
+
+In this phase, you will implement the queries for *composition of DPs* joined by series, parallel, loop constructions.
+
+The following query must run successfully:
+
act4e-mcdp-solve-dp-queries -d downloaded/lib2-simple --solver act4e_mcdp_solution.DPSolver
-## Optional
+
+## Phase 3: solve MCDP queries
+
+In this phase, you are given only the graph. You then need to convert the graph into a DP.
+
+To do this, you might need some experience or strong intuition about manipulating graphs.
The following should work successfully:
act4e-mcdp-solve-mcdp-queries -d downloaded/lib1-parts --solver act4e_mcdp_solution.MCDPSolver
act4e-mcdp-solve-mcdp-queries -d downloaded/lib2-simple --solver act4e_mcdp_solution.MCDPSolver
+## Phase 4: solve advanced queries
-## Optional (advanced)
+These are advanced queries that require a nontrivial implementation to solve efficiently.
- act4e-mcdp-solve-dp-queries -d downloaded/lib3-advanced --solver act4e_mcdp_solution.MCDPSolver
- act4e-mcdp-solve-mcdp-queries -d downloaded/lib3-advanced --solver act4e_mcdp_solution.MCDPSolver \ No newline at end of file
+ act4e-mcdp-solve-dp-queries -d downloaded/lib3-advanced --solver act4e_mcdp_solution.DPSolver
+ act4e-mcdp-solve-mcdp-queries -d downloaded/lib3-advanced --solver act4e_mcdp_solution.MCDPSolver