Folder structure design
Concepts
When we are optimizing solutions, we have the following strategies.
draft: create a new solutionidea: propose an idea to improve solutionsmerge: merge different solutions
Optimization is a long journey; we may switch between different strategies. These strategies are called routers.
router: a meta strategy to route between different strategies. Router may have different implementations.
Tools:
select: It provides features to be used by other strategies or steps.submit: before we end the optimization, we have to select the only one solution to submit.expand: we may have select one point to start the next expansion.
Suggest folder structure
So the suggested folder structure is:
- router/
- idea/
- samll_step(or refine?).py
- normal.py
- draft/
- merge/
- select/
- expand.py
- submit.py