Divide and Conquer: false name manipulations in weighted voting games Bachrach and Elkind.

Slides:



Advertisements
Similar presentations
Combinatorial Auction
Advertisements

Nash’s Theorem Theorem (Nash, 1951): Every finite game (finite number of players, finite number of pure strategies) has at least one mixed-strategy Nash.
MATH 224 – Discrete Mathematics
Economics 100B u Instructor: Ted Bergstrom u T.A. Oddgeir Ottesen u Syllabus online at (Class pages) Or at
Generalization and Specialization of Kernelization Daniel Lokshtanov.
Max Cut Problem Daniel Natapov.
Prompt Mechanisms for Online Auctions Speaker: Shahar Dobzinski Joint work with Richard Cole and Lisa Fleischer.
Intermediate Microeconomics Midterm (50%) (4/27) Final (50%) (6/22) Term grades based on relative ranking. Mon 1:30-2:00 ( 社科 757)
An Approximate Truthful Mechanism for Combinatorial Auctions An Internet Mathematics paper by Aaron Archer, Christos Papadimitriou, Kunal Talwar and Éva.
Do software agents know what they talk about? Agents and Ontology dr. Patrick De Causmaecker, Nottingham, March
How to Solve Test Problems Test Taking Strategy
Preference Elicitation Partial-revelation VCG mechanism for Combinatorial Auctions and Eliciting Non-price Preferences in Combinatorial Auctions.
Seminar In Game Theory Algorithms, TAU, Agenda  Introduction  Computational Complexity  Incentive Compatible Mechanism  LP Relaxation & Walrasian.
Forks Fury U Basketball
The Theory of NP-Completeness
6.853: Topics in Algorithmic Game Theory Fall 2011 Matt Weinberg Lecture 24.
Algorithmic Applications of Game Theory Lecture 8 1.
Chapter 19 Confidence Intervals for Proportions.
Fast FAST By Noga Alon, Daniel Lokshtanov And Saket Saurabh Presentation by Gil Einziger.
Edge Deletion and VCG Payments in Graphs (True Costs of Cheap Labor Are Hard to Measure) Edith Elkind Presented by Yoram Bachrach.
Combinatorial Auction. Conbinatorial auction t 1 =20 t 2 =15 t 3 =6 f(t): the set X  F with the highest total value the mechanism decides the set of.
This material in not in your text (except as exercises) Sequence Comparisons –Problems in molecular biology involve finding the minimum number of edit.
Analysis of Algorithms CS 477/677
An Introduction to Black-Box Complexity
Computational Complexity, Physical Mapping III + Perl CIS 667 March 4, 2004.
If a sparse, NP-Complete language exists => P = NP Let S be a sparse NP-Complete language Define C(n) = |S ≤n | and C a (n) = |S ≤p a (n) | Define p ℓ.
Complexity (Running Time)
Chapter 11: Limitations of Algorithmic Power
NP and NP- Completeness Bryan Pearsaul. Outline Decision and Optimization Problems Decision and Optimization Problems P and NP P and NP Polynomial-Time.
Strategic Behavior in Multi-Winner Elections A follow-up on previous work by Ariel Procaccia, Aviv Zohar and Jeffrey S. Rosenschein Reshef Meir The School.
Collusion and the use of false names Vincent Conitzer
Introduction complexity has been suggested as a means of precluding strategic behavior. Previous studies have shown that some voting protocols are hard.
1.1 Chapter 1: Introduction What is the course all about? Problems, instances and algorithms Running time v.s. computational complexity General description.
Yang Cai Sep 8, An overview of the class Broad View: Mechanism Design and Auctions First Price Auction Second Price/Vickrey Auction Case Study:
CPS 173 Mechanism design Vincent Conitzer
Scott Perryman Jordan Williams.  NP-completeness is a class of unsolved decision problems in Computer Science.  A decision problem is a YES or NO answer.
1 The Theory of NP-Completeness 2012/11/6 P: the class of problems which can be solved by a deterministic polynomial algorithm. NP : the class of decision.
Difficult Problems. Polynomial-time algorithms A polynomial-time algorithm is an algorithm whose running time is O(f(n)), where f(n) is a polynomial A.
Nattee Niparnan. Easy & Hard Problem What is “difficulty” of problem? Difficult for computer scientist to derive algorithm for the problem? Difficult.
Tonga Institute of Higher Education Design and Analysis of Algorithms IT 254 Lecture 8: Complexity Theory.
CSC 413/513: Intro to Algorithms NP Completeness.
CSC 172 P, NP, Etc. “Computer Science is a science of abstraction – creating the right model for thinking about a problem and devising the appropriate.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
Manipulating the Quota in Weighted Voting Games (M. Zuckerman, P. Faliszewski, Y. Bachrach, and E. Elkind) ‏ Presented by: Sen Li Software Technologies.
NP-Complete problems.
Hard Problems Sanghyun Park Fall 2002 CSE, POSTECH.
Great Theoretical Ideas in Computer Science.
CS 206 Introduction to Computer Science II 09 / 18 / 2009 Instructor: Michael Eckmann.
1 Running Experiments for Your Term Projects Dana S. Nau CMSC 722, AI Planning University of Maryland Lecture slides for Automated Planning: Theory and.
Optimization Problems
CS6045: Advanced Algorithms NP Completeness. NP-Completeness Some problems are intractable: as they grow large, we are unable to solve them in reasonable.
NP-Completness Turing Machine. Hard problems There are many many important problems for which no polynomial algorithms is known. We show that a polynomial-time.
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
Combinatorial Auction. A single item auction t 1 =10 t 2 =12 t 3 =7 r 1 =11 r 2 =10 Social-choice function: the winner should be the guy having in mind.
CS216: Program and Data Representation University of Virginia Computer Science Spring 2006 David Evans Lecture 8: Crash Course in Computational Complexity.
CSC 413/513: Intro to Algorithms
SLAMS To write a good answer to a question, SLAM it!!
MA/CSSE 473 Day 09 Modular Division Revisited Fermat's Little Theorem Primality Testing.
Instructor: Shengyu Zhang 1. Optimization Very often we need to solve an optimization problem.  Maximize the utility/payoff/gain/…  Minimize the cost/penalty/loss/…
1 The Theory of NP-Completeness 2 Review: Finding lower bound by problem transformation Problem X reduces to problem Y (X  Y ) iff X can be solved by.
The inference and accuracy We learned how to estimate the probability that the percentage of some subjects in the sample would be in a given interval by.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
The Law of Averages. What does the law of average say? We know that, from the definition of probability, in the long run the frequency of some event will.
Hard Problems Some problems are hard to solve.  No polynomial time algorithm is known.  E.g., NP-hard problems such as machine scheduling, bin packing,
Hard Problems Some problems are hard to solve.
Chapter 21 More About Tests.
Chapter 11 Limitations of Algorithm Power
Presentation transcript:

Divide and Conquer: false name manipulations in weighted voting games Bachrach and Elkind

My goals for you Become familiar with honesty concerns. Realize that complexity plays a big part in multi-agent systems Give you confidence to pursue other articles which depend on complexity results

Idea common to auctions and other voting methods What can the participant do to get his/her own way more? Sometimes we term this dishonesty, being untruthful, cheating. To me, it seems being strategic. – in an online English auction, a bidder may wait until the end to submit his bid (called sniping) The goal of sniping is to win at a lower price than true competition would allow.This works because other bidders don’t have time to get their higher bid in.

Idea common to auctions and other voting methods – in Vickrey auctions (a silent auction where the higher bidder wins, but pays the price of the second price bid), the bidders may collude to all bid low (except for the one that valued it the most) – The goal of collusion is that you pay less (as the second price is paid) AND there is no danger of losing the bid (as only someone who values it more than you would bid)

Idea common to auctions and other voting methods – in Borda voting (where points are assigned based on their ranking), a person changes its ranking so a competitor does worse i.e, they really feel a>b>c>d but rank as a >c>d>b – The goal of the false ranking is for you to get the results you wanted. Since the winner is the highest scorer, your false ranking changes the total score of the candidate who you think represents the greatest threat.

The idea If a voter splits his vote into pieces he may – increase his power – decrease his power Why do we care about the measurement of power? It may help to convince others of fairness – Object to being a dummy player

We are only changing the measurement of power Why do we care about the measurement of power? It seems it is like “credit” for affecting the results. Credit may have a monetary compensation. If voting power is reduced, we could compute the monetary affect this had (say for court settlement)

What to do about the discovery of a possible opportunity for dishonesty? If you don’t fix the problem, it will be exploited more and more. You can pick a method which minimizes the problems for your situation. You can control the “mechanism” - you change the rules so the problems are minimized. This is called “mechanism design” In voting, we could use a different power index.

False-name manipulation This paper talks about a person splitting up his votes into multiple pieces. This is possible with on-line voting systems where you never actually meet the individuals. When does this increase your power as measured by the power index? When does this decrease your power? How difficult is it to decide whether or not to divide? Sometimes the complexity of cheating discourages cheaters

My concerns with the article? When you are computing whether you should divide your votes, others are doing the same thing. Thus, it is more complicated than the scenario presented here. The voter also needs to know the weights of the other voters. How does he find out about everyone else without even divulging whether he is one or two voters? How are weights determined? Can we assign weights so division won’t help? Interesting that it is division that helps. We seem to worry about monopolies rather than fragmentation.

Why does splitting help? The difference obviously comes from the fact that there are more orderings, so in the game [3:2,1,1], if “a” splits, it actually hurts us. If we are split, each agent has the same power (1/4) so the two fragments yield ½. As one chunk, 2/3 of the power is held by the first agent. In [3:2,1], we get 2/3 (when “a” divides) compared to.5 (when a is one agent)

[3:2,1]ab ab01 ba [3:1,1,1]xyb xyb 1 xby 1 bxy 1 byx1 yxb 1 ybx Splitting the first voter helps…

Proofs There are several proofs of complexity. Generally, when I first read a paper I skim the proofs to make sure it is worth my time to dig through the proofs. I worry that this paper may require too much time to understand (for many of you) as you don’t have the background in proofs. This paper is quite understandable without the proofs as there are lots of examples. Let’s skip most of the details of the proofs in our discussion.

Pseudo Polynomial Consider the partition problem which asks “Can you select elements (each having a weight) so you get half the total value of all?” This is similar to the knapsack problem which is likely more familiar. If we consider all possibilities, we look at all possible subsets and see if any one gives us the desired sum. Finding the solution is exponential in the number of items. Dynamic programming helps. The solution is “pseudo polynomial” in that its complexity depends (polynomially) on an additional parameter – not generally part of the problem

Consider trying to come up with a set of items which weigh exactly Each location isSum[r,c] contains: whether or not the first r items can be used to create a subset of weight c. Table ct

Consider trying to come up with a set of items which weigh T 3TTT 8TTTTTTT 9TTTTTTTTT 11TTTTTTTTTTT Each location isSum[r,c] contains: whether or not the first r items can be used to create a subset of weight c. Complexity is 16*N where N is the number of items in the set So what becomes important is the relationship between N and the weight. If Weight is a small multiple of N (for example), we won’t worry about it too much (complexity is N 2 ) Table ct

Terms Pay attention to notation or paper will be very difficult to understand. They are worried about complexity results. Polynomially Bounded: Non-exponential. They worry about dividing an agent into fractional pieces. Then if you try to compute the power, you have a number of possible divisions that is not bounded in the problem size. For example, if you are dividing a weight of 5 into two integer pieces, there are few choices: BUT, if they aren’t integer pieces, there are an infinite number of possibilities to evaluate 5- ε and ε for any ε between 0 and 5.

Terms To be in NP, you have to be able to check the solution in polynomial time. NP-complete – means in the class NP and the hardest problems in NP. Basically, exponential. NP-hard – as hard as NP-Complete, but not necessarily in NP In proving complexity results, they often talk about doing a reduction from one problem to another. It works this way. You have two problems: one with unknown complexity (U) and one with known complexity (K). Now you map the K problem into the U problem in such a way so that finding an answer to U translates into knowing the solution for the K problem. Then we can say that U is at least as hard as K. Complexity results are all based on these “reductions” from one problem to another.

Take Aways Don’t worry so much about the intricate details of the proofs. Learn enough so you get the major points without having to just skip articles like this. Try to get the bigger picture – why do we care about complexity? When someone says a problem is NP-complete – what does that really mean in a practical sense?

Terms #p complete –(Sharp P complete) as hard as problems in #P #P asks “how many” rather than “are there any” An NP problem may ask “Are there any subsets of a list of integers which add up to zero?” A #P problem asks, “How many subsets add to zero?” – (You can see how this comes up as we are asking, “How many permutations are there in which…”) Asking “how many” is at least as hard as asking, “are there any?” #P complete are similar to NP complete in difficulty in that if a polynomial solution existed P=NP

Error? I think I found an error in one of their examples. Look to see if you agree. The error I found was in Problem 17. Some of you agree. When agent 2, divides, he actually does WORSE, not better. If both pieces are before agent 1, they just increase the number of times agent 1 is pivotal.

Reductions Reductions are introduced to prove a problem is just as hard as another. It works like this. You have two problems: one is hard and of known complexity and the other is unknown. Call them H and U. We want to map (create a reduction) so that we can learn something about the difficulty of U.

Mapping Often students get confused which way to map problems. I have two problems H (hard), and U(unknown), which way do I map the problem to learn something? H  U or U  H? H  U, as when we solve U, we also solve H, making a solution to U at least as hard as H. If you map it the other way, the hard problem could be doing MUCH MORE than the easy problem. The easy problem could be solved as a side effect. NP-Completeness23

So how do we proceed? We find a general instance of H and decide on a way to create a problem instance of U. The problems may look quite different as H and U can be totally different (one may dividing items into two groups and the other may involve voting to get above a threshold) You explain how finding the solution to U actually tells you the solution to H. So you can use U to find your solution in H.

Let’s look at their reduction Partition is known to be Hard. weighted voting is unknown. We are mapping a general instance of partition into an instance of voting in such a way that when we solve the voting, we solve the partition problem. We create the voting problem by saying the weights are 8 times the weights. We add two more voters of weights 1 and 2 and create a threshold of 4*weights + 3.

Partition Problem used in lemma Can we divide them in half? Map to a voting problem as [8,24,16,16, 1,2: 35]. Show 2 is not dummy: ….(2 mattered) SO, {2,2} (the elements corresponding to 16,16 form a partition

Partition Problem Can we divide them in half? Map to a voting problem as [8,24,24,16, 1,2: 39]. Show 2 is dummy: (try all orders) 24,24 24,16 24, 8,1,2,16/24 8,24,16 8,24, 1,2, 16/8 SO, no partition of original numbers

Approximation algorithms When we try to find a solution to a problem via an approximation algorithm, there are two main forms. – It may give the wrong result with very small probability or bound the amount of the errror. Termed a Monte Carlo algorithm. The method is called after the city in the Monaco principality, because of a roulette, a simple random number generator. The name and the systematic development of Monte Carlo methods dates from about – Another type of probabilistic algorithm is one that never gives a wrong result, but its running time is not guaranteed. Termed Las Vegas algorithm as you are guaranteed success if you try long enough and don’t care how much you spend.