simpler parameter validation with updated option_initializer