The second example in Pallson and Ravn (http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6738) is a little bit more challenging.
with the following tree:
A GAMS representation of the progressive hedging algorithm could be:
Much of the “ugly” code is dealing with the tree. We need to manipulate it to get the following data:
This is reproduced in GAMS:
The PHA algorithm itself is largely the same as for the smaller first problem shown here: http://yetanothermathprogrammingconsultant.blogspot.com/2014/11/progressive-hedging-1.html Interestingly we have some differences in the behavior of the algorithm. The paper shows the following iteration results:
while I get:
Apart from iteration 0, we are not doing the same thing. But looking at the optimal solution for xhat:
I am actually a bit closer to this optimal solution.
We cannot see what the differences are between our calculations and the ones performed in the paper. It would have been easier if the code the authors used to get to their results would be available as an appendix.