Using Progressive Hedging extensions and accelerations in PySP

96 views
Skip to first unread message

Abodh Poudyal

unread,
Sep 21, 2022, 7:30:45 PM9/21/22
to Pyomo Forum
Hello,

I come here time and again with PySP questions but always get some answers to move forward. This time I am curious about Progressive Hedging Innovations and acceleration strategies. I am working on Mixed-integer two-stage problem and I have a few questions:

1. Hot/warm/soft start:
I see this in bunch of papers and most of them mention that hot start has benefitted them in terms of solve time and convergence. How do we do this with the existing version of PySP (or runph)? Is this problem specific and do I need to write any additional script in order to do this?

I think runph has bydefault warm start but what about soft start or hot start?

2. rho selection and ww extension:
  ρ(i) := c(i) (xmax − xmin + 1)

* How do we get c, xmin, xmax from the current version of PySP or do we need additional work to get this?  

* do we need additional scripts to use the FX, CP, and SEP method?

are there methods to accelerate PH in PySP (both solution and run time)?

I apologize for coming back again with questions on a software that has no support now but as I said this group has always been helpful so I am counting on this group.

Regards,
Abodh 

David Woodruff

unread,
Sep 21, 2022, 9:36:00 PM9/21/22
to pyomo...@googlegroups.com
I have a few cryptic hints below:

On Wed, Sep 21, 2022 at 4:30 PM Abodh Poudyal <abodh....@gmail.com> wrote:
Hello,

I come here time and again with PySP questions but always get some answers to move forward. This time I am curious about Progressive Hedging Innovations and acceleration strategies. I am working on Mixed-integer two-stage problem and I have a few questions:

1. Hot/warm/soft start:
I see this in bunch of papers and most of them mention that hot start has benefitted them in terms of solve time and convergence. How do we do this with the existing version of PySP (or runph)? Is this problem specific and do I need to write any additional script in order to do this?

I think runph has bydefault warm start but what about soft start or hot start?

Use a persistent solver (such as gubrobi_persistent or cplex_persistent)
 

2. rho selection and ww extension:
  ρ(i) := c(i) (xmax − xmin + 1)

* How do we get c, xmin, xmax from the current version of PySP or do we need additional work to get this?  

* do we need additional scripts to use the FX, CP, and SEP method?

are there methods to accelerate PH in PySP (both solution and run time)?

 The wwextensions plugin has many of these things.

You can see an example of its use on a command line in:
/pysp/examples/networkflow

I don't know of any documentation, but you might be able to figure out it from this bash example and by reading the code in
pysp/plugins/wwphextension.py
I'm sorry that I don't remember enough about how to use it to be more helpful.




I apologize for coming back again with questions on a software that has no support now but as I said this group has always been helpful so I am counting on this group.

Regards,
Abodh 

--
You received this message because you are subscribed to the Google Groups "Pyomo Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pyomo-forum...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/pyomo-forum/95e335fe-f7c2-4ac2-8d5a-6c8ea8aa73b3n%40googlegroups.com.

Abodh Poudyal

unread,
Sep 28, 2022, 1:35:12 PM9/28/22
to Pyomo Forum
Hello Dr. Woodruff,

Thank you for getting back. I will spend some time reviewing the wwextension.py file. 

For the persistent solver, do you have any example of using it via the command line? I think --solver=gurobi_persistent works fine. But how do I enforce functionalities like soft start, warm start, and so forth? 

Regards,
Abodh

David Woodruff

unread,
Sep 28, 2022, 5:38:33 PM9/28/22
to pyomo...@googlegroups.com
The solver will do the best thing it can.

Reply all
Reply to author
Forward
0 new messages