The grid computing paradigm is replacing localized computer clusters or the traditional "supercomputer" model for research and industry enterprises requiring increasingly large amounts of processing power and storage. Computational grids are distributed systems integrating geographically-separate resources into a single, massively parallel network well-suited to complex processing tasks. This article introduces grid computing, lays out a taxonomy for comparing and analyzing the existing grid resource management systems, discusses the optimization and coordination of computational grids, and presents quantitative methods for managing grid resources. Local scheduling, external scheduling, and coordination of grid endpoints are highlighted as methods of resource management. Techniques and ongoing research projects are also discussed for improving the economy of resource bundles in flat, hierarchal, and cell structure grids.