Conversation
c168b7a to
0e680a9
Compare
This reverts commit 0e680a9.
4e970cd to
912195c
Compare
This reverts commit 10496da.
There was a problem hiding this comment.
Pull Request Overview
This PR’s purpose is to propagate updated nonanticipative variable bounds ("nonant bounds") to all cylinders where available. Key changes include:
- Addition of a new utility (prox_cut_max.py) to compute prox cut statistics.
- Removal and refactoring of reduced cost options and flags to simplify reduced costs fixer behavior.
- Integration of nonant bounds updates in several cylinder modules (spcommunicator, reduced_costs_spoke, hub, and fwph_spoke) and corresponding configuration updates.
Reviewed Changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| mpisppy/utils/prox_cut_max.py | Adds new prox cuts statistics logic with potential division issue |
| mpisppy/utils/config.py | Removes the 'rc_bound_tightening' option from config |
| mpisppy/utils/cfg_vanilla.py | Updates reduced costs fixer configuration options |
| mpisppy/extensions/reduced_costs_fixer.py | Refactors reduced costs fixer logic and logging messages |
| mpisppy/cylinders/spcommunicator.py | Incorporates new nonant bound fields and receiving methods |
| mpisppy/cylinders/reduced_costs_spoke.py | Adds nonant bound fields to send_fields and updates bounding functions |
| mpisppy/cylinders/hub.py | Removes deprecated inner/outer bound update methods and calls nonant bounds |
| mpisppy/cylinders/fwph_spoke.py | Invokes nonant bounds update in the fwph spoke |
Comments suppressed due to low confidence (1)
mpisppy/utils/config.py:607
- Confirm that the removal of the 'rc_bound_tightening' configuration option is intentional and that any dependent code has been suitably updated.
self.add_to_config('rc_bound_tightening', description="use reduced cost bound tightening", domain=bool, default=True)
There was a problem hiding this comment.
Pull Request Overview
This PR enhances the handling of nonanticipative variable bounds by propagating updated lower and upper bounds to all cylinders. Key changes include:
- Removal of unused reduced cost bound tightening configuration and logic.
- Addition of new buffer fields for nonant lower/upper bounds in spwindow and corresponding communication updates in spcommunicator.
- Updates to the reduced costs spoke and lagrangian bounder to integrate the updated nonant bounds.
Reviewed Changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| mpisppy/utils/config.py | Removed configuration parameter for reduced cost bound tightening. |
| mpisppy/utils/cfg_vanilla.py | Removed use of legacy rc fixer and bound tightening options from the options. |
| mpisppy/extensions/reduced_costs_fixer.py | Removed unused rc fixer/rc bound tightening logic; updated reduced_costs_fixing. |
| mpisppy/cylinders/spwindow.py | Added new fields NONANT_LOWER_BOUNDS and NONANT_UPPER_BOUNDS to the window layout. |
| mpisppy/cylinders/spcommunicator.py | Added receive_nonant_bounds implementation for nonant bounds updates. |
| mpisppy/cylinders/reduced_costs_spoke.py | Updated send fields and introduced new functions for bound field initialization and updates. |
| mpisppy/cylinders/lagrangian_bounder.py | Invokes receive_nonant_bounds to update nonant bounds for improved relaxations. |
| mpisppy/cylinders/hub.py | Removed duplicate inner/outer bounds update logic in favor of nonant bounds syncing. |
| mpisppy/cylinders/fwph_spoke.py | Calls receive_nonant_bounds to integrate the updated bounds. |
There was a problem hiding this comment.
Pull Request Overview
This PR passes updated nonanticipative variable bounds to all cylinders by introducing new nonant lower/upper bounds fields and associated update methods while removing legacy configurations for reduced cost bound tightening.
- Removed configuration options and references to "rc_bound_tightening".
- Added new MPI window fields for NONANT_LOWER_BOUNDS and NONANT_UPPER_BOUNDS and their processing methods in spcommunicator.
- Updated reduced costs spoke and hub modules to incorporate and propagate the new nonant bound updates.
Reviewed Changes
Copilot reviewed 9 out of 9 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| mpisppy/utils/config.py | Removed rc_bound_tightening option from configuration. |
| mpisppy/utils/cfg_vanilla.py | Removed usage of rc_bound_tightening in option assignments. |
| mpisppy/extensions/reduced_costs_fixer.py | Removed conditions and warnings related to rc_bound tightening. |
| mpisppy/cylinders/spwindow.py | Added NONANT_LOWER_BOUNDS and NONANT_UPPER_BOUNDS to the MPI window. |
| mpisppy/cylinders/spcommunicator.py | Added functions to receive and update nonant bounds. |
| mpisppy/cylinders/reduced_costs_spoke.py | Extended send_fields and updated methods to compute and send nonant bounds. |
| mpisppy/cylinders/lagrangian_bounder.py | Updated to call receive_nonant_bounds for tighter relaxations. |
| mpisppy/cylinders/hub.py | Removed redundant bound update functions and integrated nonant bounds sync. |
| mpisppy/cylinders/fwph_spoke.py | Added nonant bound update call before finalizing the spoke. |
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Passes updated bounds on nonants to all cylinders, if available.
WIP; needs #496.