Aspects of E-Science, Mathematics and Theoretical Computer Science

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
Slide 2 of 10
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
Slide 3 of 10
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 wideranging.
E-Science, Mathematics and Theoretical Computer Science
Slide 4 of 10
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
Slide 5 of 10
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 function cp : S  R+
– buyer b’s utility function ub : S  R+
E-Science, Mathematics and Theoretical Computer Science
Slide 6 of 10
Allocation of Resources
• Each provider sends to the market a function corresponding to
the provider’s cost function – the quote function qp : 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
Slide 7 of 10
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
Slide 8 of 10
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
Slide 9 of 10
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
Slide 10 of 10