Techniques for Decentralized and Dynamic Resource Allocation