-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Description
Eventually we would like AL to be installed via pip. This means that everything in this repo cannot be considered editable by the end-user. In other words we need a standard way to extend various core features of AL. I think it would be good to follow the pattern used in the Operator class of the NumbaPlanner, where if something is subclassed then it is automatically registered.
- Every learning mechanisms type needs a base class that can be inherited from. This base class needs to define the API for the mechanism type and register any implementation that subclasses the base class. Subclasses should not be required to implement every method in the base class.
- Our predefined learning mechanism implementations should each live in their own files in a containing folder. The init.py of that folder should export each one to make importing less tedious.
- Each learning mechanisms should have a pytest style test file that checks it's expected behavior.
- All of the above should be true for BaseAgent to help the users make custom agents as well.