Week 4
During the fourth week, my partner and I tried and failed to finish the proof for our algorithm for 2/3-MMS. Our issue was with an invariant that we hoped to maintain throughout the algorithm, and that was used to prove termination of each iteration - or rather a valid assignment of a bag of goods to an agent in each iteration. In order to prove this, our invariant claims that there is enough value in each chunk of items of size r*k (k is cardinality), for example in the original chunk of nk items, there should be value n, since we rescale the items as such in the beginning. Thus the chunk of size rk should have value at least r, and we needed this to hold for all r from 1 to n at each iteration and for every agent. What we really care about is that the top chunk of k items has enough value (2/3, or overestimated to be 1), so we know at least some bag would be taken, but since the top k items may change at any iteration, we need to know that the iteration before has the top 2k items with value at least 2, and only value 1 is removed in the iteration. Thus the invariant needs to hold for all r = 1,…,n. Since we were struggling to prove the invariant true, we decided to attempt constructing a counter-example, and we succeeded to do so. Although our counter-example disproved the r = 1 case of the invariant, the value in the top k items was still >2/3 (although less than 1, as demanded by the invariant). Thus, we disproved the invariant but we were not convinced that the algorithm was necessarily wrong or that the problem was impossible. We decided to move away from this algorithm though, as we realized we could not find another invariant that would ensure termination.