Preference Elicitation for Single Crossing Domain

Size: px
Start display at page:

Download "Preference Elicitation for Single Crossing Domain"

Transcription

1 Preference Elicitation for Single Crossing Domain joint work with Neeldhara Misra (IIT Gandhinagar) March 6, 2017 Appeared in IJCAI 2016

2 Motivation for Preference Elicitation One often wants to learn how people like different items Netflix would like to know which movies their users like more Zomato is interested in knowing which are popular restaurants Wikipedia would like to know quality of their articles using user feedback In any voting applications, one first have to know voters preferences

3 Motivation for Preference Elicitation One often wants to learn how people like different items Netflix would like to know which movies their users like more Zomato is interested in knowing which are popular restaurants Wikipedia would like to know quality of their articles using user feedback In any voting applications, one first have to know voters preferences Preference elicitation is fundamental in many applications

4 General Setting: Preferences Set C of alternatives. C = m Set V of agents. V = n Every agent has preference over C Preference single alternatives subset of C ranking over C... In this talk: Preferences are rankings over C

5 The Comparison Query Model We often have a huge number of alternatives in applications Movies in Netflix: tens of thousands Restaurants listed in Zomato: thousands Wikipedia pages: millions

6 The Comparison Query Model We often have a huge number of alternatives in applications Movies in Netflix: tens of thousands Restaurants listed in Zomato: thousands Wikipedia pages: millions Users cannot provide their preferences over such a large set

7 The Comparison Query Model We often have a huge number of alternatives in applications Movies in Netflix: tens of thousands Restaurants listed in Zomato: thousands Wikipedia pages: millions Users cannot provide their preferences over such a large set Users can easily compare two given alternatives! Goal: Learn preferences using comparisons only

8 Single crossing domain: Opinions about subsidy Low income Wants subsidy Voters High income Does not want subsidy

9 Single crossing domain: Opinions about subsidy Voters Low income High income Wants subsidy Does not want subsidy (x, y) C C voters with x y are contiguous

10 Single crossing domain: Opinions about subsidy Voters Low income High income Wants subsidy Does not want subsidy (x, y) C C voters with x y are contiguous Properties Always exists a Condorcet winner for odd number of voters Many computational problems, Kemeny aggregation for example, are tractable

11 Single crossing domain: Opinions about subsidy Voters Low income High income Wants subsidy Does not want subsidy (x, y) C C voters with x y are contiguous Properties Always exists a Condorcet winner for odd number of voters Many computational problems, Kemeny aggregation for example, are tractable Question: Does preference elicitation get easier? Yes!

12 Summary of results Ordering Access model Upper Bound Query Complexity Lower Bound Random O(m 2 log n) Ω(m log m + m log n) Known Sequential single crossing order O(mn + m 2 ) Sequential any order O(mn + m 2 log n) Ω(m log m + mn) Unknown Sequential any order O(mn + m 3 log m) Random O(mn + m 3 log m) Ω(m log m + mn)

13 Random access + Known single crossing order

14 Algorithm v 1, v 2,..., v n be a single crossing order For every x, y C, find i such that x i y and y i+1 x Query complexity: O(m 2 log n)

15 Algorithm v 1, v 2,..., v n be a single crossing order For every x, y C, find i such that x i y and y i+1 x Query complexity: O(m 2 log n) Lower Bound Let C = {c 1, c 2,..., c m }, m even Fix {c 1, c 2 } {c 3, c 4 } {c m 1, c m } for everyone

16 Algorithm v 1, v 2,..., v n be a single crossing order For every x, y C, find i such that x i y and y i+1 x Query complexity: O(m 2 log n) Lower Bound Let C = {c 1, c 2,..., c m }, m even Fix {c 1, c 2 } {c 3, c 4 } {c m 1, c m } for everyone Each {c 2i, c 2i+1 } needs to be queried log n times Query complexity: Ω(m log n)

17 Sequential access in single crossing order

18 Algorithm Use insertion sort Elicit the first preference: O(m log m) comparisons Elicit i th preference using insertion sort in (i 1) th preference order

19 Algorithm Use insertion sort Elicit the first preference: O(m log m) comparisons Elicit i th preference using insertion sort in (i 1) th preference order Total number of comparisons Good cost (x, y) good if i th preference orders x, y same as (i 1) th Bad cost (x, y) bad if (x, y) not good

20 Algorithm Use insertion sort Elicit the first preference: O(m log m) comparisons Elicit i th preference using insertion sort in (i 1) th preference order Total number of comparisons Good cost (x, y) good if i th preference orders x, y same as (i 1) th Bad cost (x, y) bad if (x, y) not good Single crossing 1 bad cost per pair of candidates

21 Algorithm Use insertion sort Elicit the first preference: O(m log m) comparisons Elicit i th preference using insertion sort in (i 1) th preference order Total number of comparisons Good cost (x, y) good if i th preference orders x, y same as (i 1) th Bad cost (x, y) bad if (x, y) not good Single crossing 1 bad cost per pair of candidates Query Complexity: O ( mn + ( )) m 2

22 Lower Bound Let C = {c 1, c 2,..., c m }, m even Fix c 1 c 2 c m for everyone Each {c 2i, c 2i+1 } needs to be queried for every agent times Query complexity: Ω(mn + m log m)

23 Sequential access in any order + Known single crossing order

24 Algorithm Again use insertion sort Elicit the first preference: O(m log m) comparisons Maintain a set S of already elicited preferences Elicit current preference using insertion sort in closest known order

25 Algorithm Again use insertion sort Elicit the first preference: O(m log m) comparisons Maintain a set S of already elicited preferences Elicit current preference using insertion sort in closest known order Total number of comparisons Good cost (x, y) good if current preference orders x, y same as baseline Bad cost (x, y) bad if (x, y) not good

26 Algorithm Again use insertion sort Elicit the first preference: O(m log m) comparisons Maintain a set S of already elicited preferences Elicit current preference using insertion sort in closest known order Good cost (x, y) good if current preference orders x, y same as baseline Total number of comparisons Bad cost (x, y) bad if (x, y) not good Single crossing log n bad cost per pair of candidates

27 Algorithm Again use insertion sort Elicit the first preference: O(m log m) comparisons Maintain a set S of already elicited preferences Elicit current preference using insertion sort in closest known order Good cost (x, y) good if current preference orders x, y same as baseline Total number of comparisons Bad cost (x, y) bad if (x, y) not good Single crossing log n bad cost per pair of candidates Query Complexity: O ( mn + ( ) ) m 2 log n

28 Sequential access in any order + Unknown single crossing order

29 Algorithm: any sequential + unknown single crossing order There can be at most ( m 2 ) + 1 distinct preference

30 Algorithm: any sequential + unknown single crossing order There can be at most ( m 2 ) + 1 distinct preference Let S be single crossing of distinct preferences Then there exists two alternatives x, y such that exactly S /2 prefers x over y

31 Algorithm: any sequential + unknown single crossing order There can be at most ( m 2 ) + 1 distinct preference Let S be single crossing of distinct preferences Then there exists two alternatives x, y such that exactly S /2 prefers x over y Let S be single crossing of distinct preferences It can be checked in O(log m + m) comparisons whether a preference is in S

32 Algorithm: any sequential + unknown single crossing order... Elicit the first preference: O(m log m) comparisons

33 Algorithm: any sequential + unknown single crossing order... Elicit the first preference: O(m log m) comparisons Maintain the set S of preferences found so far

34 Algorithm: any sequential + unknown single crossing order... Elicit the first preference: O(m log m) comparisons Maintain the set S of preferences found so far Check if i th preference is in S: O(m)

35 Algorithm: any sequential + unknown single crossing order... Elicit the first preference: O(m log m) comparisons Maintain the set S of preferences found so far Check if i th preference is in S: O(m) If not then elicit: O(m log m)

36 Algorithm: any sequential + unknown single crossing order... Elicit the first preference: O(m log m) comparisons Maintain the set S of preferences found so far Check if i th preference is in S: O(m) If not then elicit: O(m log m) This can happen O (( m 2 )) times

37 Algorithm: any sequential + unknown single crossing order... Elicit the first preference: O(m log m) comparisons Maintain the set S of preferences found so far Check if i th preference is in S: O(m) If not then elicit: O(m log m) This can happen O (( m 2 )) times Total number of comparisons: O(mn + m 3 log m)

38 Conclusions Summary Optimal algorithm for preference elicitation for various realistic scenarios

39 Conclusions Summary Optimal algorithm for preference elicitation for various realistic scenarios Future work Find exact query complexity for preference elicitation when random access is given and a single crossing order is known How query complexity gets affected in the presence of k outliers

40 Thank You!

Data Reduction and Problem Kernels for Voting Problems

Data Reduction and Problem Kernels for Voting Problems Data Reduction and Problem Kernels for Voting Problems Nadja Betzler Friedrich-Schiller-Universität Jena Dagstuhl Seminar Computational Foundations of Social Choice March 2010 Nadja Betzler (Universität

More information

Information Retrieval Rank aggregation. Luca Bondi

Information Retrieval Rank aggregation. Luca Bondi Rank aggregation Luca Bondi Motivations 2 Metasearch For a given query, combine the results from different search engines Combining ranking functions Text, links, anchor text, page title, etc. Comparing

More information

Search Engines. Provide a ranked list of documents. May provide relevance scores. May have performance information.

Search Engines. Provide a ranked list of documents. May provide relevance scores. May have performance information. Search Engines Provide a ranked list of documents. May provide relevance scores. May have performance information. 3 External Metasearch Metasearch Engine Search Engine A Search Engine B Search Engine

More information

arxiv: v1 [cs.ma] 8 May 2018

arxiv: v1 [cs.ma] 8 May 2018 Ordinal Approximation for Social Choice, Matching, and Facility Location Problems given Candidate Positions Elliot Anshelevich and Wennan Zhu arxiv:1805.03103v1 [cs.ma] 8 May 2018 May 9, 2018 Abstract

More information

AI Dining Suggestion App. CS 297 Report Bao Pham ( ) Advisor: Dr. Chris Pollett

AI Dining Suggestion App. CS 297 Report Bao Pham ( ) Advisor: Dr. Chris Pollett AI Dining Suggestion App CS 297 Report Bao Pham (009621001) Advisor: Dr. Chris Pollett Abstract Trying to decide what to eat can be challenging and time-consuming. Google or Yelp are two popular search

More information

Part 11: Collaborative Filtering. Francesco Ricci

Part 11: Collaborative Filtering. Francesco Ricci Part : Collaborative Filtering Francesco Ricci Content An example of a Collaborative Filtering system: MovieLens The collaborative filtering method n Similarity of users n Methods for building the rating

More information

AMAZON.COM RECOMMENDATIONS ITEM-TO-ITEM COLLABORATIVE FILTERING PAPER BY GREG LINDEN, BRENT SMITH, AND JEREMY YORK

AMAZON.COM RECOMMENDATIONS ITEM-TO-ITEM COLLABORATIVE FILTERING PAPER BY GREG LINDEN, BRENT SMITH, AND JEREMY YORK AMAZON.COM RECOMMENDATIONS ITEM-TO-ITEM COLLABORATIVE FILTERING PAPER BY GREG LINDEN, BRENT SMITH, AND JEREMY YORK PRESENTED BY: DEEVEN PAUL ADITHELA 2708705 OUTLINE INTRODUCTION DIFFERENT TYPES OF FILTERING

More information

Going nonparametric: Nearest neighbor methods for regression and classification

Going nonparametric: Nearest neighbor methods for regression and classification Going nonparametric: Nearest neighbor methods for regression and classification STAT/CSE 46: Machine Learning Emily Fox University of Washington May 3, 208 Locality sensitive hashing for approximate NN

More information

IBM Research Report. Computing Slater Rankings Using Similarities Among Candidates

IBM Research Report. Computing Slater Rankings Using Similarities Among Candidates RC23748 (W0510-105) October 13, 2005 Computer Science IBM Research Report Computing Slater Rankings Using Similarities Among Candidates Vincent Conitzer* IBM Research Division Thomas J. Watson Research

More information

Finding Similar Items:Nearest Neighbor Search

Finding Similar Items:Nearest Neighbor Search Finding Similar Items:Nearest Neighbor Search Barna Saha February 23, 2016 Finding Similar Items A fundamental data mining task Finding Similar Items A fundamental data mining task May want to find whether

More information

Improved Bounds for Intersecting Triangles and Halving Planes

Improved Bounds for Intersecting Triangles and Halving Planes Improved Bounds for Intersecting Triangles and Halving Planes David Eppstein Department of Information and Computer Science University of California, Irvine, CA 92717 Tech. Report 91-60 July 15, 1991 Abstract

More information

Computing Slater Rankings Using Similarities Among Candidates

Computing Slater Rankings Using Similarities Among Candidates Computing Slater Rankings Using Similarities Among Candidates Vincent Conitzer Carnegie Mellon University Computer Science Department 5 Forbes Avenue Pittsburgh, PA 15213, USA conitzer@cs.cmu.edu ABSTRACT

More information

Algorithms for Evolving Data Sets

Algorithms for Evolving Data Sets Algorithms for Evolving Data Sets Mohammad Mahdian Google Research Based on joint work with Aris Anagnostopoulos, Bahman Bahmani, Ravi Kumar, Eli Upfal, and Fabio Vandin Algorithm Design Paradigms Traditional

More information

Ranking Clustered Data with Pairwise Comparisons

Ranking Clustered Data with Pairwise Comparisons Ranking Clustered Data with Pairwise Comparisons Alisa Maas ajmaas@cs.wisc.edu 1. INTRODUCTION 1.1 Background Machine learning often relies heavily on being able to rank the relative fitness of instances

More information

Going nonparametric: Nearest neighbor methods for regression and classification

Going nonparametric: Nearest neighbor methods for regression and classification Going nonparametric: Nearest neighbor methods for regression and classification STAT/CSE 46: Machine Learning Emily Fox University of Washington May 8, 28 Locality sensitive hashing for approximate NN

More information

CMPSCI 105: Lecture #12 Searching, Sorting, Joins, and Indexing PART #1: SEARCHING AND SORTING. Linear Search. Binary Search.

CMPSCI 105: Lecture #12 Searching, Sorting, Joins, and Indexing PART #1: SEARCHING AND SORTING. Linear Search. Binary Search. CMPSCI 105: Lecture #12 Searching, Sorting, Joins, and Indexing PART #1: SEARCHING AND SORTING Linear Search Binary Search Items can be in any order, Have to examine first record, then second record, then

More information

Parallel Algorithms for (PRAM) Computers & Some Parallel Algorithms. Reference : Horowitz, Sahni and Rajasekaran, Computer Algorithms

Parallel Algorithms for (PRAM) Computers & Some Parallel Algorithms. Reference : Horowitz, Sahni and Rajasekaran, Computer Algorithms Parallel Algorithms for (PRAM) Computers & Some Parallel Algorithms Reference : Horowitz, Sahni and Rajasekaran, Computer Algorithms Part 2 1 3 Maximum Selection Problem : Given n numbers, x 1, x 2,, x

More information

Software Algorithm Testing Examples

Software Algorithm Testing Examples Software algorithms used for processing large amounts of data need to be efficient, incorporating industry best practices. This is especially important for fast searching, sorting, and merging of data

More information

Voting. Xiaoyue Zhang

Voting. Xiaoyue Zhang Voting Xiaoyue Zhang Preference Ballot Ordered list of candidates Assuming no ties Preference schedule = many preference ballots Alice's Preferences 1. Apple 2. Banana 3. Peach 4. Pear 5. Kiwi What is

More information

Analysis of Algorithms. 5-Dec-16

Analysis of Algorithms. 5-Dec-16 Analysis of Algorithms 5-Dec-16 Time and space To analyze an algorithm means: developing a formula for predicting how fast an algorithm is, based on the size of the input (time complexity), and/or developing

More information

Automatically Synthesizing SQL Queries from Input-Output Examples

Automatically Synthesizing SQL Queries from Input-Output Examples Automatically Synthesizing SQL Queries from Input-Output Examples Sai Zhang University of Washington Joint work with: Yuyin Sun Goal: making it easier for non-expert users to write correct SQL queries

More information

Voting Methods and Colluding Voters

Voting Methods and Colluding Voters . Voting Methods and Colluding Voters Christopher Hanusa Binghamton University December 3, 2007 Outline Voting Methods Plurality/Majority and refinements Ranked Pairs Borda Count Let s vote! Mathematics

More information

Chapter 4. The Relational Model

Chapter 4. The Relational Model Chapter 4 The Relational Model Chapter 4 - Objectives Terminology of relational model. How tables are used to represent data. Connection between mathematical relations and relations in the relational model.

More information

Author(s): Rahul Sami, 2009

Author(s): Rahul Sami, 2009 Author(s): Rahul Sami, 2009 License: Unless otherwise noted, this material is made available under the terms of the Creative Commons Attribution Noncommercial Share Alike 3.0 License: http://creativecommons.org/licenses/by-nc-sa/3.0/

More information

CHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science

CHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science CHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science Entrance Examination, 5 May 23 This question paper has 4 printed sides. Part A has questions of 3 marks each. Part B has 7 questions

More information

Efficient query processing

Efficient query processing Efficient query processing Efficient scoring, distributed query processing Web Search 1 Ranking functions In general, document scoring functions are of the form The BM25 function, is one of the best performing:

More information

ECE6095: CAD Algorithms. Optimization Techniques

ECE6095: CAD Algorithms. Optimization Techniques ECE6095: CAD Algorithms Optimization Techniques Mohammad Tehranipoor ECE Department 6 September 2010 1 Optimization Techniques Objective: A basic review of complexity Review of basic algorithms Some physical

More information

Fixed-Parameter Algorithms for Kemeny Scores

Fixed-Parameter Algorithms for Kemeny Scores Fixed-Parameter Algorithms for Kemeny Scores Nadja Betzler 1,, Michael R. Fellows 2,, Jiong Guo 1,, Rolf Niedermeier 1, and Frances A. Rosamond 2, 1 Institut für Informatik, Friedrich-Schiller-Universität

More information

Searching the Deep Web

Searching the Deep Web Searching the Deep Web 1 What is Deep Web? Information accessed only through HTML form pages database queries results embedded in HTML pages Also can included other information on Web can t directly index

More information

The Pairwise-Comparison Method

The Pairwise-Comparison Method The Pairwise-Comparison Method Lecture 10 Section 1.5 Robb T. Koether Hampden-Sydney College Mon, Sep 11, 2017 Robb T. Koether (Hampden-Sydney College) The Pairwise-Comparison Method Mon, Sep 11, 2017

More information

CSE373: Data Structures & Algorithms Lecture 11: Implementing Union-Find. Lauren Milne Spring 2015

CSE373: Data Structures & Algorithms Lecture 11: Implementing Union-Find. Lauren Milne Spring 2015 CSE: Data Structures & Algorithms Lecture : Implementing Union-Find Lauren Milne Spring 05 Announcements Homework due in ONE week Wednesday April 9 th! TA sessions Catie will be back on Monday. The plan

More information

Iterative Voting Rules

Iterative Voting Rules Noname manuscript No. (will be inserted by the editor) Iterative Voting Rules Meir Kalech 1, Sarit Kraus 2, Gal A. Kaminka 2, Claudia V. Goldman 3 1 Information Systems Engineering, Ben-Gurion University,

More information

What is a minimal spanning tree (MST) and how to find one

What is a minimal spanning tree (MST) and how to find one What is a minimal spanning tree (MST) and how to find one A tree contains a root, the top node. Each node has: One parent Any number of children A spanning tree of a graph is a subgraph that contains all

More information

What s an SEO Strategy With Out Social Media?

What s an SEO Strategy With Out Social Media? What s an SEO Strategy With Out Social Media? Search & Social Mark Chard Social Media has become a huge part of our everyday life. We keep in touch with friends and family through Facebook, we express

More information

Lecture 15. Lecture 15: Bitmap Indexes

Lecture 15. Lecture 15: Bitmap Indexes Lecture 5 Lecture 5: Bitmap Indexes Lecture 5 What you will learn about in this section. Bitmap Indexes 2. Storing a bitmap index 3. Bitslice Indexes 2 Lecture 5. Bitmap indexes 3 Motivation Consider the

More information

COSC160: Data Structures Hashing Structures. Jeremy Bolton, PhD Assistant Teaching Professor

COSC160: Data Structures Hashing Structures. Jeremy Bolton, PhD Assistant Teaching Professor COSC160: Data Structures Hashing Structures Jeremy Bolton, PhD Assistant Teaching Professor Outline I. Hashing Structures I. Motivation and Review II. Hash Functions III. HashTables I. Implementations

More information

Algorithms and Applications

Algorithms and Applications Algorithms and Applications 1 Areas done in textbook: Sorting Algorithms Numerical Algorithms Image Processing Searching and Optimization 2 Chapter 10 Sorting Algorithms - rearranging a list of numbers

More information

Distributed Graph Algorithms for Planar Networks

Distributed Graph Algorithms for Planar Networks Bernhard Haeupler CMU joint work with Mohsen Ghaffari (MIT) ADGA, Austin, October 12th 2014 Distributed: CONGEST(log n) model Distributed: CONGEST(log n) model Network Optimization Problems: shortest path

More information

Improved Algorithm for Weighted Flow Time

Improved Algorithm for Weighted Flow Time Joint work with Yossi Azar Denition Previous Work and Our Results Overview Single machine receives jobs over time. Each job has an arrival time, a weight and processing time (volume). Allow preemption.

More information

arxiv: v5 [cs.ds] 4 May 2014

arxiv: v5 [cs.ds] 4 May 2014 An Analysis of Rank Aggregation Algorithms Gattaca Lv No Institute Given arxiv:1402.5259v5 [cs.ds] 4 May 2014 Abstract. Rank aggregation is an essential approach for aggregating the preferences of multiple

More information

Assignment 3 ITCS-6010/8010: Cloud Computing for Data Analysis

Assignment 3 ITCS-6010/8010: Cloud Computing for Data Analysis Assignment 3 ITCS-6010/8010: Cloud Computing for Data Analysis Due by 11:59:59pm on Tuesday, March 16, 2010 This assignment is based on a similar assignment developed at the University of Washington. Running

More information

Beyond Ten Blue Links Seven Challenges

Beyond Ten Blue Links Seven Challenges Beyond Ten Blue Links Seven Challenges Ricardo Baeza-Yates VP of Yahoo! Research for EMEA & LatAm Barcelona, Spain Thanks to Andrei Broder, Yoelle Maarek & Prabhakar Raghavan Agenda Past and Present Wisdom

More information

Searching the Deep Web

Searching the Deep Web Searching the Deep Web 1 What is Deep Web? Information accessed only through HTML form pages database queries results embedded in HTML pages Also can included other information on Web can t directly index

More information

IMP: A Message-Passing Algorithm for Matrix Completion

IMP: A Message-Passing Algorithm for Matrix Completion IMP: A Message-Passing Algorithm for Matrix Completion Henry D. Pfister (joint with Byung-Hak Kim and Arvind Yedla) Electrical and Computer Engineering Texas A&M University ISTC 2010 Brest, France September

More information

Parameterized Computational Complexity of Dodgson and Young Elections

Parameterized Computational Complexity of Dodgson and Young Elections Parameterized Computational Complexity of Dodgson and Young Elections Nadja Betzler joint work with Jiong Guo and Rolf Niedermeier Friedrich-Schiller-Universität Jena Institut für Informatik Dagstuhl Seminar

More information

Information Retrieval

Information Retrieval Information Retrieval WS 2016 / 2017 Lecture 2, Tuesday October 25 th, 2016 (Ranking, Evaluation) Prof. Dr. Hannah Bast Chair of Algorithms and Data Structures Department of Computer Science University

More information

CS 268: Route Lookup and Packet Classification

CS 268: Route Lookup and Packet Classification Overview CS 268: Route Lookup and Packet Classification Packet Lookup Packet Classification Ion Stoica March 3, 24 istoica@cs.berkeley.edu 2 Lookup Problem Identify the output interface to forward an incoming

More information

Part 11: Collaborative Filtering. Francesco Ricci

Part 11: Collaborative Filtering. Francesco Ricci Part : Collaborative Filtering Francesco Ricci Content An example of a Collaborative Filtering system: MovieLens The collaborative filtering method n Similarity of users n Methods for building the rating

More information

Be Wise, Plagiarize Standard similarity detection Karma Tarap, Programmer Budapest, Oct 2012

Be Wise, Plagiarize Standard similarity detection Karma Tarap, Programmer Budapest, Oct 2012 Be Wise, Plagiarize Standard similarity detection Karma Tarap, Programmer Budapest, Oct 2012 Disclaimer The opinions expressed in this presentation and on the following slides are solely those of the presenter

More information

Practical voting rules with partial information

Practical voting rules with partial information DOI 10.1007/s10458-010-9133-6 Practical voting rules with partial information Meir Kalech Sarit Kraus Gal A. Kaminka Claudia V. Goldman The Author(s) 2010 Abstract Voting is an essential mechanism that

More information

Diversity in Recommender Systems Week 2: The Problems. Toni Mikkola, Andy Valjakka, Heng Gui, Wilson Poon

Diversity in Recommender Systems Week 2: The Problems. Toni Mikkola, Andy Valjakka, Heng Gui, Wilson Poon Diversity in Recommender Systems Week 2: The Problems Toni Mikkola, Andy Valjakka, Heng Gui, Wilson Poon Review diversification happens by searching from further away balancing diversity and relevance

More information

Computing Slater Rankings Using Similarities Among Candidates

Computing Slater Rankings Using Similarities Among Candidates Computing Slater Rankings Using Similarities Among Candidates Vincent Conitzer Computer Science Department Carnegie Mellon University Pittsburgh, PA 213, USA conitzer@cs.cmu.edu Abstract Voting (or rank

More information

Introduction to Relational Databases. Introduction to Relational Databases cont: Introduction to Relational Databases cont: Relational Data structure

Introduction to Relational Databases. Introduction to Relational Databases cont: Introduction to Relational Databases cont: Relational Data structure Databases databases Terminology of relational model Properties of database relations. Relational Keys. Meaning of entity integrity and referential integrity. Purpose and advantages of views. The relational

More information

ANNUAL REPORT Visit us at project.eu Supported by. Mission

ANNUAL REPORT Visit us at   project.eu Supported by. Mission Mission ANNUAL REPORT 2011 The Web has proved to be an unprecedented success for facilitating the publication, use and exchange of information, at planetary scale, on virtually every topic, and representing

More information

Union-Find: A Data Structure for Disjoint Set Operations

Union-Find: A Data Structure for Disjoint Set Operations Union-Find: A Data Structure for Disjoint Set Operations 1 Equivalence Relations A equivalence relation R is defined on a set S, if for every pair of elements (a,b) in S, a R b is either false or true

More information

Analysis of algorithms

Analysis of algorithms Analysis of algorithms Time and space To analyze an algorithm means: developing a formula for predicting how fast an algorithm is, based on the size of the input (time complexity), and/or developing a

More information

Combining Fuzzy Information - Top-k Query Algorithms. Sanjay Kulhari

Combining Fuzzy Information - Top-k Query Algorithms. Sanjay Kulhari Combining Fuzzy Information - Top-k Query Algorithms Sanjay Kulhari Outline Definitions Objects, Attributes and Scores Querying Fuzzy Data Top-k query algorithms Naïve Algorithm Fagin s Algorithm (FA)

More information

An Efficient Transformation for Klee s Measure Problem in the Streaming Model

An Efficient Transformation for Klee s Measure Problem in the Streaming Model An Efficient Transformation for Klee s Measure Problem in the Streaming Model Gokarna Sharma, Costas Busch, Ramachandran Vaidyanathan, Suresh Rai, and Jerry Trahan Louisiana State University Outline of

More information

Querying Data with Transact-SQL

Querying Data with Transact-SQL Querying Data with Transact-SQL Course: 20761 Course Details Audience(s): IT Professional(s) Technology: Microsoft SQL Server 2016 Duration: 24 HRs. ABOUT THIS COURSE This course is designed to introduce

More information

CSE 521: Design and Analysis of Algorithms I

CSE 521: Design and Analysis of Algorithms I CSE 521: Design and Analysis of Algorithms I Greedy Algorithms Paul Beame 1 Greedy Algorithms Hard to define exactly but can give general properties Solution is built in small steps Decisions on how to

More information

CSE 417: Algorithms and Computational Complexity

CSE 417: Algorithms and Computational Complexity CSE : Algorithms and Computational Complexity More Graph Algorithms Autumn 00 Paul Beame Given: a directed acyclic graph (DAG) G=(V,E) Output: numbering of the vertices of G with distinct numbers from

More information

CPSC 536N: Randomized Algorithms Term 2. Lecture 4

CPSC 536N: Randomized Algorithms Term 2. Lecture 4 CPSC 536N: Randomized Algorithms 2011-12 Term 2 Prof. Nick Harvey Lecture 4 University of British Columbia In today s lecture we will see two applications of negative binomially distributed random variables.

More information

Electronic Engineering Part 1 Laboratory Experiment. Digital Circuit Design 1 Combinational Logic. (3 hours)

Electronic Engineering Part 1 Laboratory Experiment. Digital Circuit Design 1 Combinational Logic. (3 hours) Electronic Engineering Part 1 Laboratory Experiment Digital Circuit Design 1 Combinational Logic (3 hours) 1. Introduction These days most signal processing is done digitally. Electronic signals (representing

More information

Large Scale Graph Algorithms

Large Scale Graph Algorithms Large Scale Graph Algorithms A Guide to Web Research: Lecture 2 Yury Lifshits Steklov Institute of Mathematics at St.Petersburg Stuttgart, Spring 2007 1 / 34 Talk Objective To pose an abstract computational

More information

COMP3121/3821/9101/ s1 Assignment 1

COMP3121/3821/9101/ s1 Assignment 1 Sample solutions to assignment 1 1. (a) Describe an O(n log n) algorithm (in the sense of the worst case performance) that, given an array S of n integers and another integer x, determines whether or not

More information

GIAN Course on Distributed Network Algorithms. Spanning Tree Constructions

GIAN Course on Distributed Network Algorithms. Spanning Tree Constructions GIAN Course on Distributed Network Algorithms Spanning Tree Constructions Stefan Schmid @ T-Labs, 2011 Spanning Trees Attactive infrastructure : sparse subgraph ( loop-free backbone ) connecting all nodes.

More information

Searching the Web for Information

Searching the Web for Information Search Xin Liu Searching the Web for Information How a Search Engine Works Basic parts: 1. Crawler: Visits sites on the Internet, discovering Web pages 2. Indexer: building an index to the Web's content

More information

Recommender Systems 6CCS3WSN-7CCSMWAL

Recommender Systems 6CCS3WSN-7CCSMWAL Recommender Systems 6CCS3WSN-7CCSMWAL http://insidebigdata.com/wp-content/uploads/2014/06/humorrecommender.jpg Some basic methods of recommendation Recommend popular items Collaborative Filtering Item-to-Item:

More information

Union-Find: A Data Structure for Disjoint Set Operations

Union-Find: A Data Structure for Disjoint Set Operations Union-Find: A Data Structure for Disjoint Set Operations 1 The Union-Find Data Structure Purpose: Great for disjoint sets Operations: Union ( S 1, S 2 ) Find ( x ) Performs a union of two disjoint sets

More information

CSE 190D Spring 2017 Final Exam Answers

CSE 190D Spring 2017 Final Exam Answers CSE 190D Spring 2017 Final Exam Answers Q 1. [20pts] For the following questions, clearly circle True or False. 1. The hash join algorithm always has fewer page I/Os compared to the block nested loop join

More information

Computational Social Choice in the Cloud

Computational Social Choice in the Cloud Computational Social Choice in the Cloud Theresa Csar, Martin Lackner, Emanuel Sallinger, Reinhard Pichler Technische Universität Wien Oxford University PPI, Stuttgart, March 2017 By Sam Johnston [CC BY-SA

More information

Variational Methods for Discrete-Data Latent Gaussian Models

Variational Methods for Discrete-Data Latent Gaussian Models Variational Methods for Discrete-Data Latent Gaussian Models University of British Columbia Vancouver, Canada March 6, 2012 The Big Picture Joint density models for data with mixed data types Bayesian

More information

STAT 598L Learning Bayesian Network Structure

STAT 598L Learning Bayesian Network Structure STAT 598L Learning Bayesian Network Structure Sergey Kirshner Department of Statistics Purdue University skirshne@purdue.edu November 2, 2009 Acknowledgements: some of the slides were based on Luo Si s

More information

COSC160: Detection and Classification. Jeremy Bolton, PhD Assistant Teaching Professor

COSC160: Detection and Classification. Jeremy Bolton, PhD Assistant Teaching Professor COSC160: Detection and Classification Jeremy Bolton, PhD Assistant Teaching Professor Outline I. Problem I. Strategies II. Features for training III. Using spatial information? IV. Reducing dimensionality

More information

Introduction to Algorithms I

Introduction to Algorithms I Summer School on Algorithms and Optimization Organized by: ACM Unit, ISI and IEEE CEDA. Tutorial II Date: 05.07.017 Introduction to Algorithms I (Q1) A binary tree is a rooted tree in which each node has

More information

Hyrise - a Main Memory Hybrid Storage Engine

Hyrise - a Main Memory Hybrid Storage Engine Hyrise - a Main Memory Hybrid Storage Engine Philippe Cudré-Mauroux exascale Infolab U. of Fribourg - Switzerland & MIT joint work w/ Martin Grund, Jens Krueger, Hasso Plattner, Alexander Zeier (HPI) and

More information

Soft Heaps And Minimum Spanning Trees

Soft Heaps And Minimum Spanning Trees Soft And George Mason University ibanerje@gmu.edu October 27, 2016 GMU October 27, 2016 1 / 34 A (min)-heap is a data structure which stores a set of keys (with an underlying total order) on which following

More information

Spatial Index Keyword Search in Multi- Dimensional Database

Spatial Index Keyword Search in Multi- Dimensional Database Spatial Index Keyword Search in Multi- Dimensional Database Sushma Ahirrao M. E Student, Department of Computer Engineering, GHRIEM, Jalgaon, India ABSTRACT: Nearest neighbor search in multimedia databases

More information

CACHE-OBLIVIOUS MAPS. Edward Kmett McGraw Hill Financial. Saturday, October 26, 13

CACHE-OBLIVIOUS MAPS. Edward Kmett McGraw Hill Financial. Saturday, October 26, 13 CACHE-OBLIVIOUS MAPS Edward Kmett McGraw Hill Financial CACHE-OBLIVIOUS MAPS Edward Kmett McGraw Hill Financial CACHE-OBLIVIOUS MAPS Indexing and Machine Models Cache-Oblivious Lookahead Arrays Amortization

More information

COMP6237 Data Mining Making Recommendations. Jonathon Hare

COMP6237 Data Mining Making Recommendations. Jonathon Hare COMP6237 Data Mining Making Recommendations Jonathon Hare jsh2@ecs.soton.ac.uk Introduction Recommender systems 101 Taxonomy of recommender systems Collaborative Filtering Collecting user preferences as

More information

Information Coding / Computer Graphics, ISY, LiTH

Information Coding / Computer Graphics, ISY, LiTH Sorting on GPUs Revisiting some algorithms from lecture 6: Some not-so-good sorting approaches Bitonic sort QuickSort Concurrent kernels and recursion Adapt to parallel algorithms Many sorting algorithms

More information

Development of Synthetic Microdata for Educational Use in Japan

Development of Synthetic Microdata for Educational Use in Japan 2013 Joint IASE / IAOS Satellite Conference, Macau Tower, Macau, China, 22nd-24th August, 2013 Development of Synthetic Microdata for Educational Use in Japan Naoki Makita Shinsuke Ito* National Statistics

More information

Querying Data with Transact SQL

Querying Data with Transact SQL Course 20761A: Querying Data with Transact SQL Course details Course Outline Module 1: Introduction to Microsoft SQL Server 2016 This module introduces SQL Server, the versions of SQL Server, including

More information

Stanford ProCo 2014 May 18, 2014 Bug 1 Pyramids (page 1 of 1)

Stanford ProCo 2014 May 18, 2014 Bug 1 Pyramids (page 1 of 1) Bug Pyramids (page of ) Print out an ASCII triangle Given a number n, print out an ASCII triangle with n levels using asterisks as the output. The triangle should be n rows tall, with each row having an

More information

416 Distributed Systems. Mar 3, Peer-to-Peer Part 2

416 Distributed Systems. Mar 3, Peer-to-Peer Part 2 416 Distributed Systems Mar 3, Peer-to-Peer Part 2 Scaling Problem Millions of clients server and network meltdown 2 P2P System Leverage the resources of client machines (peers) Traditional: Computation,

More information

Querying Data with Transact-SQL

Querying Data with Transact-SQL Course 20761A: Querying Data with Transact-SQL Page 1 of 5 Querying Data with Transact-SQL Course 20761A: 2 days; Instructor-Led Introduction The main purpose of this 2 day instructor led course is to

More information

Comparative performance of opensource recommender systems

Comparative performance of opensource recommender systems Comparative performance of opensource recommender systems Lenskit vs Mahout Laurie James 5/2/2013 Laurie James 1 This presentation `Whistle stop tour of recommendation systems. Information overload & the

More information

Advanced Computer Graphics CS 525M: Crowds replace Experts: Building Better Location-based Services using Mobile Social Network Interactions

Advanced Computer Graphics CS 525M: Crowds replace Experts: Building Better Location-based Services using Mobile Social Network Interactions Advanced Computer Graphics CS 525M: Crowds replace Experts: Building Better Location-based Services using Mobile Social Network Interactions XIAOCHEN HUANG Computer Science Dept. Worcester Polytechnic

More information

Parallel and Sequential Data Structures and Algorithms Lecture (Spring 2012) Lecture 16 Treaps; Augmented BSTs

Parallel and Sequential Data Structures and Algorithms Lecture (Spring 2012) Lecture 16 Treaps; Augmented BSTs Lecture 16 Treaps; Augmented BSTs Parallel and Sequential Data Structures and Algorithms, 15-210 (Spring 2012) Lectured by Margaret Reid-Miller 8 March 2012 Today: - More on Treaps - Ordered Sets and Tables

More information

Cost-Effective Conceptual Design. over Taxonomies. Yodsawalai Chodpathumwan. University of Illinois at Urbana-Champaign.

Cost-Effective Conceptual Design. over Taxonomies. Yodsawalai Chodpathumwan. University of Illinois at Urbana-Champaign. Cost-Effective Conceptual Design over Taxonomies Yodsawalai Chodpathumwan University of Illinois at Urbana-Champaign Ali Vakilian Massachusetts Institute of Technology Arash Termehchy, Amir Nayyeri Oregon

More information

CSE 544 Principles of Database Management Systems. Magdalena Balazinska Winter 2015 Lecture 14 NoSQL

CSE 544 Principles of Database Management Systems. Magdalena Balazinska Winter 2015 Lecture 14 NoSQL CSE 544 Principles of Database Management Systems Magdalena Balazinska Winter 2015 Lecture 14 NoSQL References Scalable SQL and NoSQL Data Stores, Rick Cattell, SIGMOD Record, December 2010 (Vol. 39, No.

More information

Shark: Hive (SQL) on Spark

Shark: Hive (SQL) on Spark Shark: Hive (SQL) on Spark Reynold Xin UC Berkeley AMP Camp Aug 21, 2012 UC BERKELEY SELECT page_name, SUM(page_views) views FROM wikistats GROUP BY page_name ORDER BY views DESC LIMIT 10; Stage 0: Map-Shuffle-Reduce

More information

Combining Solr and Elasticsearch to Improve Autosuggestion on Mobile Local Search. Toan Vinh Luu, PhD Senior Search Engineer local.

Combining Solr and Elasticsearch to Improve Autosuggestion on Mobile Local Search. Toan Vinh Luu, PhD Senior Search Engineer local. Combining Solr and Elasticsearch to Improve Autosuggestion on Mobile Local Search Toan Vinh Luu, PhD Senior Search Engineer local.ch AG In this talk Autosuggestion feature Autosuggestion architecture Evaluation

More information

CSE Midterm - Spring 2017 Solutions

CSE Midterm - Spring 2017 Solutions CSE Midterm - Spring 2017 Solutions March 28, 2017 Question Points Possible Points Earned A.1 10 A.2 10 A.3 10 A 30 B.1 10 B.2 25 B.3 10 B.4 5 B 50 C 20 Total 100 Extended Relational Algebra Operator Reference

More information

Chapter 3. Graphs CLRS Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Chapter 3. Graphs CLRS Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. Chapter 3 Graphs CLRS 12-13 Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 25 3.4 Testing Bipartiteness Bipartite Graphs Def. An undirected graph G = (V, E) is bipartite

More information

Data on External Storage

Data on External Storage Advanced Topics in DBMS Ch-1: Overview of Storage and Indexing By Syed khutubddin Ahmed Assistant Professor Dept. of MCA Reva Institute of Technology & mgmt. Data on External Storage Prg1 Prg2 Prg3 DBMS

More information

On Streaming and Communication Complexity of the Set Cover Problem

On Streaming and Communication Complexity of the Set Cover Problem On Streaming and Communication Complexity of the Set Cover Problem Erik Demaine Piotr Indyk Sepideh Mahabadi Ali Vakilian Problem Definition Set Cover Problem We are given a set of elements E and a collection

More information

Recognition. Clark F. Olson. Cornell University. work on separate feature sets can be performed in

Recognition. Clark F. Olson. Cornell University. work on separate feature sets can be performed in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 907-912, 1996. Connectionist Networks for Feature Indexing and Object Recognition Clark F. Olson Department of Computer

More information

Randomized Algorithms: Element Distinctness

Randomized Algorithms: Element Distinctness Randomized Algorithms: Element Distinctness CSE21 Winter 2017, Day 24 (B00), Day 16-17 (A00) March 13, 2017 http://vlsicad.ucsd.edu/courses/cse21-w17 Element Distinctness: WHAT Given list of positive integers

More information

COMP 352 FALL Tutorial 10

COMP 352 FALL Tutorial 10 1 COMP 352 FALL 2016 Tutorial 10 SESSION OUTLINE Divide-and-Conquer Method Sort Algorithm Properties Quick Overview on Sorting Algorithms Merge Sort Quick Sort Bucket Sort Radix Sort Problem Solving 2

More information