The reason for this is that minimize-guides can work naturally without an activity model specified (i.e., just using -gm). However, we normally recommend using the maximize-activity objective and most of our paper used this objective, so it might make sense to make it the default. There are a few options if this were the default:
Require specifying an activity model and, if one is not set, fall back by default on the simple binary one that uses mismatches
If no activity model is specified with this objective, immediately exit and tell the user to give one or set --use-simple-binary-activity-prediction
It could also make sense to require either an activity model or --use-simple-binary-activity-prediction for either objective
70 takes the second option in the issue description ("If no activity model is specified with this objective, immediately exit and tell the user to give one or set --use-simple-binary-activity-prediction").
When no objective function is set, it defaults to
minimize-guides
: https://github.com/broadinstitute/adapt/blob/02bf2b9667a313c9784e1a8a2053cbe2d338b99d/bin/design.py#L754The reason for this is that
minimize-guides
can work naturally without an activity model specified (i.e., just using-gm
). However, we normally recommend using themaximize-activity
objective and most of our paper used this objective, so it might make sense to make it the default. There are a few options if this were the default:--use-simple-binary-activity-prediction
--use-simple-binary-activity-prediction
for either objective