-
Notifications
You must be signed in to change notification settings - Fork 7
[Feature] Enable optional parameters for objective functions with functools #36
Copy link
Copy link
Open
Labels
Comp:CoreThis issue has to do with the main bulk of the code or document. (methods, main content)This issue has to do with the main bulk of the code or document. (methods, main content)Difficulty:3-ExpertThis issue is not only complicated, but also complex. It may require special advanced skills.This issue is not only complicated, but also complex. It may require special advanced skills.Priority:3-DesiredThis work is important, but not urgent.This work is important, but not urgent.Status:1-NewNo one has claimed this issue yet. It is in need of solving.No one has claimed this issue yet. It is in need of solving.Type:FeatureNew feature or feature requestNew feature or feature request
Metadata
Metadata
Assignees
Labels
Comp:CoreThis issue has to do with the main bulk of the code or document. (methods, main content)This issue has to do with the main bulk of the code or document. (methods, main content)Difficulty:3-ExpertThis issue is not only complicated, but also complex. It may require special advanced skills.This issue is not only complicated, but also complex. It may require special advanced skills.Priority:3-DesiredThis work is important, but not urgent.This work is important, but not urgent.Status:1-NewNo one has claimed this issue yet. It is in need of solving.No one has claimed this issue yet. It is in need of solving.Type:FeatureNew feature or feature requestNew feature or feature request
Currently, all objectives and constraints in
osierrequire two items, the list of technologies and a solved dispatch model. Some calculations will require tunable parameters. Such as a volatility calculation usingweighted_permutation_entropy, for example. Therefore, allowing users to specify the optional parameters at run time with some thing like:Where the second objective function
func2has some optional parameters that cannot be set once a simulation begins (except by usingfunctools.partial).Edit:
To clarify the desired behavior, users should be able to pass a function and it's parameters to
osierwithout explicitly callingfunctools.partial. E.g.,Users would be required to know which parameters they need.
Conversation
@yardasol @ZoeRichter @smpark7 @nsryan2 @munkm
Does this functionality make sense? Which version is clearer? The clarification would add more complexity to the
osier.CapacityExpansionobject, but it's already so similar to thefunctoolsimplementation that I'm not sure anymore if the "simplification" makes sense. Looking for thoughts.