Adding regularization objective option to parmest#3550
Adding regularization objective option to parmest#3550sscini wants to merge 19 commits intoPyomo:mainfrom
Conversation
|
@djlaky @adowling2 Please provide early feedback |
pyomo/contrib/parmest/parmest.py
Outdated
|
|
||
| Added to SSE objective function | ||
| """ | ||
| expr = ((theta - theta_ref).transpose() * prior_FIM * (theta - theta_ref) for theta in model.unknown_parameters.items()) |
There was a problem hiding this comment.
Does this run? My intuition is that you need to write out the matrix multiplication and cannot use matrix multiplication.
|
UPDATE (07/15/25); Intended to be added AFTER Shammah's weighted SSE PR (#3535) and follow a similar format, adding another option for available objectives using Enums. Currently preparing for next stage of review |
|
@adowling2 @djlaky Made some edits to this finally. Meant to follow Shammah's layout in PR #3535, waiting to merge, currently some conflicts I cannot resolve on my end. Made it's own full objective instead of a term to add. Also added weighting term. Ready for next round of review. |
|
Will not be actively worked on before finalization of _Q_opt_blocks. Closing for now to resume in the future. |
Fixes # .
Summary/Motivation:
Currently, the only default objective is the standard SSE objective. This edit provides the capability to add a
regularization term to the SSE objective with a prior FIM and reference parameter values.
Changes proposed in this PR:
TODO before converting from draft
Legal Acknowledgement
By contributing to this software project, I have read the contribution guide and agree to the following terms and conditions for my contribution: