MS Ecommerce course 20-853 Electronic Negotiation Spring 2004 Professor Tuomas Sandholm School of Computer Science Carnegie Mellon University Instructor’s web page: www.cs.cmu.edu/~sandholm Course web page: http://www.cs.cmu.edu/~sandholm/ec20-853/ec20-853.htm Course content at a high level • Covers the state-of-the-art • Covers – game-theoretic aspects – computational aspects • Additional readings (and proofs of claims) are available on the web site of my PhDlevel course Foundations of Electronic Marketplaces Motivation Automated negotiation systems • Agents search & make contracts – Through peer-to-peer negotiation or a mediated marketplace – Agents can be real-world parties or software agents that work on behalf of real-world parties • Increasingly important from a practical perspective – Developing communication infrastructure (Internet, WWW, NII, EDI, KQML, FIPA, Concordia, Voyager, Odyssey, Aglets, AgentTCL, Java Applets, ...) – Electronic commerce on the Internet: Goods, services, information, bandwidth, computation, storage... – Industrial trend toward virtual enterprises & outsourcing • Automated negotiation allows dynamically formed alliances on a per order basis in order to capitalize on economies of scale, and allow the parties to stay separate when there are diseconomies of scale Automated negotiation systems … • Fertile, timely area – Deep theories from game-theory & computer science merge • Started together in the 1940’s [Morgenstern & von Neumann] • There were a few decades of little interplay • Upswing of interplay in the last few years • It is in this setting that the prescriptive (=normative) power of game theory really comes into play – Market rules need to be explicitly specified – Software agents designed so as to act optimally • unlike humans ("As far as the laws of mathematics refer to reality, they are not certain; and as far as they are certain, they do not refer to reality.“ - Albert Einstein) – Computational capabilities can be quantitatively characterized, and prescriptions can be made about how the agents should use their computation optimally Systems with self-interested agents (computational or human) • Mechanism (e.g., rules of an auction) specifies legal actions for each agent & how the outcome is determined as a function of the agents’ strategies • Strategy (e.g., bidding strategy) = Agent’s mapping from known history to action • Rational self-interested agent chooses its strategy to maximize its own expected utility given the mechanism => strategic analysis required for robustness => noncooperative game theory • But … computational complexity – In executing the mechanism – In determining the optimal strategy – In executing the optimal strategy • Has significant impact on prescriptions – Has received little attention in game theory A bold vision: How automated negotiation techniques could play a role in different stages of an ecommerce transaction Automated negotiation techniques in different ecommerce stages • 1. Interest generation – Funded adlets that coordinate – Avatars for choosing which ads to read – Customer models for choosing who to send ads and how much $ to offer • 2. Finding – Simple early systems: BargainFinder, Jango – Meta-data, XML – Standardized feature lists on goods to allow comparison • How do these get (re)negotiated – Different vendors prefer different feature lists – Shopper agents need to understand the new lists – How do machine learning algorithms cope with new features? – Want to get a bundle => need to find many vendors Automated negotiation techniques in different ecommerce stages... • 3. Negotiating – Advantages of dynamic pricing • Right things sold to (and bought from) right parties at right time • World becomes a better place (social welfare increases) dynamic – Further advantages from discriminatory pricing Pricing • Can increase social welfare – Fixed-menu take-it-or-leave-it offers -> negotiation • Cost of generating & disseminating catalogs? static • Other customers see the price? nondiscriminatory discriminatory • Negotiation overhead? • Personalized menus (check customer’s web page, links to & from it, what other similar customers did, customer profiles) • Generating/printing the menu may be intractable, e.g. mortgages 530 – Negotiation will focus the generation, but vendor may bias prices & offerings based on path – Preferences over bundles – Coalition formation Automated negotiation techniques in different ecommerce stages... • 4. Contract execution – Digital payment schemes – Safe exchange • Third party escrow companies – Tradesafe Inc. – Tradenable Inc. – i-Escrow Inc. • Sometimes an exchange can be carried out without enforcement by dividing it into chunks [Sandholm&Lesser IJCAI-95, Sandholm96,97, Sandholm&Ferrandon ICMAS-00, Sandholm&Wang AAAI-02] • 5. After sales Example applications • Application classes – B2B (business-to-business), e.g. procurement RFPs/RFQs, buying consortia (e.g. Covisint), … – B2C (business-to-consumer), e.g. goods, debt – C2C (consumer-to-consumer), e.g. eBay – Task and resource allocation in computer systems (networks, computational grids, storage systems…) – … • Just a few example application areas – – – – – Electricity markets Manufacturing subcontracting Transportation exchanges Stock markets Collaborative filtering Basics Agenthood, utility function, evaluation criteria of multiagent systems Agenthood • We use economic definition of agent as locus of self-interest – Could be implemented e.g. as several mobile “agents” … • Agent attempts to maximize its expected utility • Utility function ui of agent i is a mapping from outcomes to reals – Can be over a multi-dimensional outcome space – Incorporates agent’s risk attitude (allows quantitative tradeoffs) • E.g. outcomes over money Lottery 1: $0.5M w.p. 1 ui Risk averse 1 Lottery 2: $1M $0 w.p. 0.5 w.p. 0.5 Agent’s strategy is the choice of lottery Risk neutral 0.5 Risk seeking 0 0 0.5 1 Risk aversion => insurance companies M$ Utility functions are scale-invariant • Agent i chooses a strategy that maximizes expected utility • maxstrategy Soutcome p(outcome | strategy) ui(outcome) • If ui’() = a ui() + b for a > 0 then the agent will choose the same strategy under utility function ui’ as it would under ui – Note that ui has to be finite for each possible outcome • Otherwise expected utility could be infinite for several strategies, so the strategies could not be compared. Criteria for evaluating multiagent systems • • • • Computational efficiency Distribution of computation Communication efficiency Social welfare: maxoutcome ∑i ui(outcome) – Requires cardinal utility comparison – … but we just said that utility functions are arbitrary in terms of scale! • Surplus: social welfare of outcome – social welfare of status quo • • • • – Constant sum games have 0 surplus. Markets are not constant sum Pareto efficiency: An outcome o is Pareto efficient if there exists no other outcome o’ s.t. some agent has higher utility in o’ than in o and no agent has lower – Implied by social welfare maximization Individual rationality: Participating in the negotiation (or individual deal) is no worse than not participating Stability: No agents can increase their utility by changing their strategies Symmetry: No agent should be inherently preferred, e.g. dictator