The bad example for the primal-dual algorithm that I cooked up in class did not give the large gap I was hoping for, though going in the right direction. Instead, consider the following example:
There are clients and potential facilities. The first of the clients (say ) are at distance 1 to all the facilities, we call these communal clients.
For the other clients: client is at distance to facility and at distance 3 to all other facilities. (We say client is facility 's private client.)
The first facility costs , and all the others cost .
If we raise duals uniformly, then at time , the first facility will become tentatively opened, and all the communal clients, and private client become frozen. But the other private clients will continue to raise their duals, and at time , all the remaining facilities will also become tentatively open.
Note that the cost of actually opening all these tentatively open facilities would be , whereas the total dual value generated is only .
Hence the clean-up step is needed.
Tuesday, January 29, 2008
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment