100 likes | 252 Views
Aspects of E-Science, Mathematics and Theoretical Computer Science. Professor Iain Stewart Department of Computer Science University of Durham March 2003. A Holy Grail of Grid Computing.
E N D
Aspects of E-Science, Mathematics and Theoretical Computer Science Professor Iain Stewart Department of Computer Science University of Durham March 2003
A Holy Grail of Grid Computing • “Every user connected to the Grid should have access to all resources available anywhere on the Grid, with the user presented with an illusion of a single centrally-organized computer.” • The challenge is to design the protocols, algorithms, paradigms and systems so that the aggregation of the physical computers, communication links and other available resources achieves this illusion. • Ideally, such systems would optimally allocate available resources such as • computational resources (CPU time, file servers) • information resources (databases, video) • communication resources (links, quality of service) • services (help-desk, access to specialized algorithms) • hardware (printers, cameras) … E-Science, Mathematics and Theoretical Computer Science
Different Aspects of this Challenge • There are clearly many different aspects to this challenge. • One such is the basic technological interoperability, for which the paradigm of distributed object services has become the fundamental framework. • This paradigm is the basis of most modern commercial distributed platforms, e.g., • CORBA • Microsoft’s DCOM • Java’s RMI • Standards such as XML and protocols such as SOAP result in a web-like infrastructure for distributed processing, following this paradigm. • However, let us focus on another aspect: the sharing of resources. E-Science, Mathematics and Theoretical Computer Science
Resource Sharing • A major difficulty as regards the efficient sharing of resources is that the different resources generally belong to different organizations. • A system for resource sharing should provide for “motivation” for resource sharing and an evaluation and application of different “costs”. • What emerges is some kind of economic system involving, in its simplest form, “payments” for services. • A very basic architecture is as follows. • Each seller providing a service may attach a price-tag for this service. • When a buyer wishes to use a particular type of service, it calls a central “service market place” that functions as the seller-request broker. • The market performs a “reverse auction” and the seller charging the lowest price wins and gets to service the request at an agreed price. • Of course, the meanings of terms like “price” and “cost” can be wide-ranging. E-Science, Mathematics and Theoretical Computer Science
A Very Basic Example Scenario • Printers provide the service of printing and each printer charges a price for this service. • Customers supply their requests to the “printing market” and receive the opportunity to print on a printer as returned from the “printing market”. • In reality, many parameters distinguish one print job from another: number of pages, page size, printer’s location, … • The system needs to be aware of these parameters (and there is an issue relating to how these parameters are specified). • This results in a parameter space for (our one) service-type where each printer can print for some subset of the parameter space at some given cost. • Service requests will in general involve a subset of the parameter space, e.g., “A4 or Letter is fine, so long as the resolution is high”. E-Science, Mathematics and Theoretical Computer Science
A Resulting Economic System • Our economic system is based on a common currency in which all participants can express their economic preferences. • Each service provider - printer – has a certain cost for supplying the service at each point of the parameter space provided by the provider, e.g., • 4p for A4 single-sided printing, high resolution • 3p for A4 single-sided printing, low resolution • 2p for A4 double-sided printing, low resolution • Each service requester – buyer – has a certain economic benefit from receiving the service, again parameter-dependent. • Let S be the parameter space of our service-type. • Our economic model is given by: • provider p’s cost functioncp : S R+ • buyer b’s utility functionub : S R+ E-Science, Mathematics and Theoretical Computer Science
Allocation of Resources • Each provider sends to the market a function corresponding to the provider’s cost function – the quote functionqp : S R+. • The quote function provides a catalogue of the services provided by the provider and amount of money demanded. • Note that qp may be different from cp, depending on the provider’s inclination to make a profit; and this inclination may change. • A buyer sends to the market a representation of the utility function ub. • Of course, there is an issue as to how one supplies these functions to market. E-Science, Mathematics and Theoretical Computer Science
Allocation of Resources • When the market receives a buyer request, the market attempts to match this request to the best provider and choosing the best parameter values. • For parameters s, the optimisation criteria is surplusb,p(s) = ub(s) – qp(s). • For a given provider, the parameters are chosen to maximize this surplus. • Of course, there can be significant complexity-theoretic issues here (depending upon function representation, the size of the parameter space, etc.). • Once the optimal provider p* and parameter choice s* have been found, the market can fix any payment d in the range qs*(p*) d ub(p*). • There can be economic issues as to which specific payment d is chosen by the market. E-Science, Mathematics and Theoretical Computer Science
Decentralized Load Balancing • In our system above, we obtain an optimal allocation of each request to the service provided that is best for it. • However, we have assumed no conflict of requests. • The whole point of allocation in distributed systems is that requests should be partitioned between the providers. • This gives rise to the situation where users’ utilities depend upon the time until their request is serviced; so, in effect, service-time is a parameter in the parameter space of the service-type. • Note that the scheduling of one buyer’s request to a provider can have a dramatic impact on the the costs of scheduling a subsequent request. • Furthermore, optimal global allocation is NP-hard and cannot be done by scheduling requests in an online fashion (as they come). E-Science, Mathematics and Theoretical Computer Science
Verdict • An the heart of e-Science lies a considerable amount of mathematics and theoretical computer science, specifically: • Decentralized scheduling • Combinatorial auctions • Algorithms and complexity with significant overlaps with • operations research • artificial intelligence • mathematical economics • discrete mathematics. • For more details, see Naom Nisan’s pages on economic mechanisms in computation: http://www.cs.huji.ac.il/~noam/mkts.html E-Science, Mathematics and Theoretical Computer Science