Using Order Constraints in Crowd Data Sourcing
Antoine Amarilli1,2, Yael Amsterdamer3,4, Tova Milo4, Pierre Senellart1,2 February 12th, 2018
1Télécom ParisTech
2École normale supérieure
3Bar Ilan University
4Tel Aviv University
1/16
Introduction
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
Taxonomy of items for a store
withcategories. Ask the crowd to classify items
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
2/16
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
Taxonomy of items for a store withcategories.
Ask the crowd to classify items
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
Taxonomy of items for a store withcategories.
Ask the crowd to classify items
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
2/16
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
Taxonomy of items for a store withcategories.
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
Taxonomy of items for a store withcategories.
Ask the crowd to classify items
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
2/16
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
Taxonomy of items for a store withcategories.
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
Taxonomy of items for a store withcategories.
Ask the crowd to classify items
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
2/16
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
Taxonomy of items for a store withcategories.
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
Taxonomy of items for a store withcategories.
Ask the crowd to classify items
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
2/16
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
Taxonomy of items for a store withcategories.
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
Taxonomy of items for a store withcategories.
Ask the crowd to classify items
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
2/16
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
0.5
Taxonomy of items for a store withcategories.
Monotonicity: compatibility increases as we go up. Best categories? Naiveanswer... Cleveranswer...
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
0.5
Monotonicity: compatibility increases as we go up.
Best categories? Naiveanswer... Cleveranswer...
2/16
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
0.5
Monotonicity: compatibility increases as we go up.
Naiveanswer... Cleveranswer...
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
0.5
Monotonicity: compatibility increases as we go up.
Best categories? Naiveanswer...
Cleveranswer...
2/16
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
0.5
Monotonicity: compatibility increases as we go up.
Cleveranswer...
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
0.5
Monotonicity: compatibility increases as we go up.
Best categories? Naiveanswer... Cleveranswer...
2/16
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
0.5
= 0.5
Monotonicity: compatibility increases as we go up.
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
0.5
= 0.5
≥0.9
Monotonicity: compatibility increases as we go up.
Best categories? Naiveanswer... Cleveranswer...
2/16
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
0.5
= 0.5
≥0.9
≥0.5
Monotonicity: compatibility increases as we go up.
Example 1: Classifying products
Products
Clothing Electronics
Shoes Cell Phones
TVs Watches Diving Gear
Wearable Devices
Smartphones Diving Watches
Sports
0.1
0.9
0.5
0.5
= 0.5
≥0.9
≥0.5
Monotonicity: compatibility increases as we go up.
Best categories? Naiveanswer... Cleveranswer...
2/16
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
3/16
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
3/16
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
3/16
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
3/16
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
3/16
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
Example 2: Finding popular activity combinations Taxonomy of activities
activity research social
lunch diving
Taxonomy of activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
3/16
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
4/16
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
4/16
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
4/16
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
4/16
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
4/16
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
4/16
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
4/16
Example 2: Finding popular activity combinations
nil activity research social research
social lunch diving
research diving research
lunch lunch
diving research
lunch diving
•
More specific combinations are less frequent•
Askcrowd questions:•
Is{diving}frequent?⇒ Yes!
•
{lunch,diving}?⇒ No!
•
{lunch}?⇒ Yes!
•
{research,lunch}?⇒ Yes!
•
{research,diving}?⇒ No!
Example 3: Estimating unknown values
small sweet
medium sweet
large sweet
small salty
medium salty
large salty tiny
both
small both
medium both
large both
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
5/16
Example 3: Estimating unknown values
small sweet
medium sweet
large sweet
small salty
medium salty
large salty tiny
both
small both
medium both
large both
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
Example 3: Estimating unknown values small
sweet
medium sweet
large sweet
small salty
medium salty
large salty tiny
both
small both
medium both
large both
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
5/16
Example 3: Estimating unknown values small
sweet
medium sweet
large sweet
small salty
medium salty
large salty tiny
both
small both
medium both
large both
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
Example 3: Estimating unknown values small
sweet
medium sweet
large sweet
small salty
medium salty
large salty tiny
both
small both
medium both
large both
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
5/16
Example 3: Estimating unknown values small
sweet
medium sweet
large sweet
small salty
medium salty
large salty tiny
both
small both medium
both
large both
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
Example 3: Estimating unknown values small
sweet
medium sweet
large sweet
small salty
medium salty
large salty tiny
both
small both medium
both
large both
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
5/16
Example 3: Estimating unknown values small
sweet
medium sweet
large sweet
small salty
medium salty
large salty tiny
both
small both medium
both
large both
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
Example 3: Estimating unknown values 10
•
•
•
20
• 15
•
???
100
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
5/16
Example 3: Estimating unknown values 10
•
•
•
20
• 15
•
???
100
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
Example 3: Estimating unknown values 10
36
68
10
20
60 15
46
ࠑࠐ
100
•
How muchfooddo people eat at conference buffets?•
Let’s askfellow organizers!•
How toestimatequantitiesfor my own conference?
•
Someorder relationsare implied→ How tocompletethe missing values?
5/16
General problem
•
•
•
•
•
•
•
•
•
•
•
Severalitemswithvalues•
Order relationson the values•
Some values areknown and the others areunknown→ Estimatethe unknown values
→ Find the nextcrowd questionto ask to obtain more known values
General problem
•
•
•
•
•
•
•
•
•
•
•
Severalitemswithvalues•
Order relationson the values•
Some values areknown and the others areunknown→ Estimatethe unknown values
→ Find the nextcrowd questionto ask to obtain more known values
6/16
General problem
•
•
•
•
•
•
•
•
•
•
•
Severalitemswithvalues•
Order relationson the values•
Some values areknown and the others areunknown→ Estimatethe unknown values
→ Find the nextcrowd questionto ask to obtain more known values
General problem
•
•
•
•
•
•
•
•
•
•
•
Severalitemswithvalues•
Order relationson the values•
Some values areknown and the others areunknown→ Estimatethe unknown values
→ Find the nextcrowd questionto ask to obtain more known values
6/16
General problem
•
•
•
•
•
•
•
•
•
•
•
Severalitemswithvalues•
Order relationson the values•
Some values areknown and the others areunknown→ Estimatethe unknown values
→ Find the nextcrowd questionto ask to obtain more known values
General problem
???
???
???
???
20
???
15
???
???
100
•
Severalitemswithvalues•
Order relationson the values•
Some values areknown and the others areunknown→ Estimatethe unknown values
→ Find the nextcrowd questionto ask to obtain more known values
6/16
General problem
???
???
???
???
20
???
15
???
???
100
•
Severalitemswithvalues•
Order relationson the values•
Some values areknown and the others areunknown→ Estimatethe unknown values
→ Find the nextcrowd questionto ask to obtain more known values
General problem
???
???
???
???
20
???
15
???
???
100
•
Severalitemswithvalues•
Order relationson the values•
Some values areknown and the others areunknown→ Estimatethe unknown values
→ Find the nextcrowd questionto ask to obtain more known values
6/16
Estimating Missing Values
Estimating missing values (Antoine, Yael, Pierre, Tova, ICDT’17)
???
???
???
???
20
???
15
???
???
100
•
Knownandunknownvalueswithorder relation
•
Estimate theunknown valueswithout asking more crowd questions
7/16
Easy case: total order 0
???
70
???
???
100
•
If the items aretotally ordered, what can we do?→ Linear interpolation!
→ Can wegeneralizethis if the order is not total?
Easy case: total order 0
???
70
???
???
100
•
If the items aretotally ordered, what can we do?→ Linear interpolation!
→ Can wegeneralizethis if the order is not total?
8/16
Easy case: total order 0
35 70 80 90 100
•
If the items aretotally ordered, what can we do?→ Linear interpolation!
→ Can wegeneralizethis if the order is not total?
Easy case: total order 0
35 70 80 90 100
•
If the items aretotally ordered, what can we do?→ Linear interpolation!
→ Can wegeneralizethis if the order is not total?
8/16
Polytope interpretation
•
Introduce onevariableper item:→ x,y,z,w
•
Write theorder constraints:→ x≥y,w≤y,y≤z
•
Write theknown values:→ w= 0.3,z= 0.9
•
Theselinear constraintsdefine anadmissible polytope x≥yw≤y y≤z w= 0.3 z= 0.9
x≥y w≤y y≤z w= 0.3 z≤1
→ Estimate unknown values as thecenter of massof the polytope!
Polytope interpretation
•
Introduce onevariableper item:→ x,y,z,w
•
Write theorder constraints:→ x≥y,w≤y,y≤z
•
Write theknown values:→ w= 0.3,z= 0.9
•
Theselinear constraintsdefine anadmissible polytope x≥yw≤y y≤z w= 0.3 z= 0.9
x≥y w≤y y≤z w= 0.3 z≤1
→ Estimate unknown values as thecenter of massof the polytope!
9/16
Polytope interpretation
•
Introduce onevariableper item:→ x,y,z,w
•
Write theorder constraints:→ x≥y,w≤y,y≤z
•
Write theknown values:→ w= 0.3,z= 0.9
•
Theselinear constraintsdefine anadmissible polytope x≥yw≤y y≤z w= 0.3 z= 0.9
x≥y w≤y y≤z w= 0.3 z≤1
→ Estimate unknown values as thecenter of massof the polytope!
Polytope interpretation
•
Introduce onevariableper item:→ x,y,z,w
•
Write theorder constraints:→ x≥y,w≤y,y≤z
•
Write theknown values:→ w= 0.3,z= 0.9
•
Theselinear constraintsdefine anadmissible polytopex≥y w≤y y≤z w= 0.3 z= 0.9
x≥y w≤y y≤z w= 0.3 z≤1
→ Estimate unknown values as thecenter of massof the polytope!
9/16
Polytope interpretation
•
Introduce onevariableper item:→ x,y,z,w
•
Write theorder constraints:→ x≥y,w≤y,y≤z
•
Write theknown values:→ w= 0.3,z= 0.9
•
Theselinear constraintsdefine anadmissible polytope x≥yw≤y y≤z w= 0.3 z= 0.9
x≥y w≤y y≤z w= 0.3 z≤1
→ Estimate unknown values as thecenter of massof the polytope!
Polytope interpretation
•
Introduce onevariableper item:→ x,y,z,w
•
Write theorder constraints:→ x≥y,w≤y,y≤z
•
Write theknown values:→ w= 0.3,z= 0.9
•
Theselinear constraintsdefine anadmissible polytope x≥yw≤y y≤z w= 0.3 z= 0.9
x≥y w≤y y≤z w= 0.3 z≤1
→ Estimate unknown values as thecenter of massof the polytope!
9/16
Polytope interpretation
•
Introduce onevariableper item:→ x,y,z,w
•
Write theorder constraints:→ x≥y,w≤y,y≤z
•
Write theknown values:→ w= 0.3,z= 0.9
•
Theselinear constraintsdefine anadmissible polytope x≥yw≤y y≤z w= 0.3 z= 0.9
x≥y w≤y y≤z w= 0.3 z≤1
Polytope interpretation
•
Introduce onevariableper item:→ x,y,z,w
•
Write theorder constraints:→ x≥y,w≤y,y≤z
•
Write theknown values:→ w= 0.3,z= 0.9
•
Theselinear constraintsdefine anadmissible polytope x≥yw≤y y≤z w= 0.3 z= 0.9
x≥y w≤y y≤z w= 0.3 z≤1
→ Estimate unknown values as thecenter of massof the polytope!9/16
Results of our ICDT’17 paper
•
Fortotal orders, the polytope method gives the same result as linear interpolation•
Brute-forcealgorithm to compute the center of mass•
Intractability resultsfor this task and for computing the top-kitems•
Tractable caseswhen the order is atreeResults of our ICDT’17 paper
•
Fortotal orders, the polytope method gives the same result as linear interpolation•
Brute-forcealgorithm to compute the center of mass•
Intractability resultsfor this task and for computing the top-kitems•
Tractable caseswhen the order is atree10/16
Results of our ICDT’17 paper
•
Fortotal orders, the polytope method gives the same result as linear interpolation•
Brute-forcealgorithm to compute the center of mass•
Intractability resultsfor this task and for computing the top-kitems•
Tractable caseswhen the order is atreeResults of our ICDT’17 paper
•
Fortotal orders, the polytope method gives the same result as linear interpolation•
Brute-forcealgorithm to compute the center of mass•
Intractability resultsfor this task and for computing the top-kitems•
Tractable caseswhen the order is atree10/16
Open problems
0
???
???
???
???
???
???
???
???
100
•
Are theremore generalposets/polytopes where we can interpolate efficiently?(generalizing trees, e.g., treelike posets)
•
Fixingone value to its interpolated value canchangeother interpolated values! (unlike linear interpolation)Open problems
0
???
???
???
???
???
???
???
???
100
•
Are theremore generalposets/polytopes where we can interpolate efficiently?(generalizing trees, e.g., treelike posets)
•
Fixingone value to its interpolated value canchangeother interpolated values!(unlike linear interpolation)
11/16
Asking Questions
Asking questions (Antoine, Yael, Tova, ICDT’14)
•
•
•
•
•
•
•
•
•
•
•
Unknown values areBoolean:either0or1
•
The Boolean function ismonotone with respect to the order•
Ask theright questionsto determine the Boolean function completely12/16
Asking questions (Antoine, Yael, Tova, ICDT’14)
•
•
•
•
•
•
•
•
•
•
•
Unknown values areBoolean:either0or1
•
The Boolean function ismonotone with respect to the order•
Ask theright questionsto determine the Boolean function completelyAsking questions (Antoine, Yael, Tova, ICDT’14)
•
•
•
•
•
•
•
•
•
•
•
Unknown values areBoolean:either0or1
•
The Boolean function ismonotone with respect to the order•
Ask theright questionsto determine the Boolean function completely12/16
Asking questions (Antoine, Yael, Tova, ICDT’14)
•
•
•
•
•
•
•
•
•
•
•
Unknown values areBoolean:either0or1
•
The Boolean function ismonotone with respect to the order•
Ask theright questionsto determine the Boolean function completelyAsking questions (Antoine, Yael, Tova, ICDT’14)
•
•
•
•
•
•
•
•
•
•
•
Unknown values areBoolean:either0or1
•
The Boolean function ismonotone with respect to the order•
Ask theright questionsto determine the Boolean function completely12/16
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
13/16
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
13/16
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
13/16
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
13/16
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
13/16
Easy case: total order
•
•
•
•
•
•
•
•
If the items aretotally ordered, what can we do?→ Binary search!
→ Can wegeneralizethis if the order is not total?
Results of our ICDT’14 paper
•
Lower bound: each crowd query gives one bit so we need logarithmically many crowd queries in the number of possible Boolean functions•
Matching upper bound:we can always query an item that splits the remaining Boolean functions evenly•
Output-sensitive complexity:we can determine the function in a number of crowd queries linear in the “frontier”•
Computational hardness, e.g., of finding the best-split element14/16
Results of our ICDT’14 paper