A python implementation of all algorithms that allocate indivisible items.
$ python eval.py -h
usage: eval.py [-h]
[--alg {roundRobin,envyGraph,MUtilW,MNW_opt,MNW_local,CSP1,CSPx}]
[--num_agents NUM_AGENTS] [--num_items NUM_ITEMS] [--round RD]
[--seed SEED]
Allocating indivisible items.
optional arguments:
-h, --help show this help message and exit
--alg {roundRobin,envyGraph,MUtilW,MNW_opt,MNW_local,CSP1,CSPx}
Select the allocation algorithm
--num_agents NUM_AGENTS
Specify the number of agents
--num_items NUM_ITEMS
Specify the number of items
--round RD Specify the degree of rounding
--seed SEED Specify the seed
- Example:
python eval.py --alg roundRobin --num_agents 4 --num_items 50 --round 2 --seed 7
Algorithm | Comp | EF1 | PO | EFx(any) | Allow_neg | Reference | Support |
---|---|---|---|---|---|---|---|
roundRobin | Poly | Y | N | N | The Unreasonable Fairness of Maximum Nash Welfare | Y | |
doubleRoundRobin | Y | Fair Allocation of Indivisible Goods and Chores | |||||
envyGraph | Poly | Y | N | N | On Approximately Fair Allocations of Indivisible Goods | Y | |
genEnvyGraph | Y | Fair Allocation of Indivisible Goods and Chores | |||||
MUtilW | Poly | N | Y | N | / | Y | |
MNW_opt | NP-hard | Y | Y | N | The Unreasonable Fairness of Maximum Nash Welfare | Y | |
MNW_local | DK | DK | DK | N | A Realistic Approach to Solve the Nash Welfare | Y | |
CSP | NP-hard | Y | Y | Y | |||
deepNet | Linear | Y | DK |