Supported by Novartis The Scientific Community Game: Education and Innovation Through Survival in a Virtual World of Claims Karl Lieberherr Northeastern University College of Computer and.

Download Report

Transcript Supported by Novartis The Scientific Community Game: Education and Innovation Through Survival in a Virtual World of Claims Karl Lieberherr Northeastern University College of Computer and.

Supported by Novartis
The Scientific Community Game:
Education and Innovation Through
Survival in a Virtual World of Claims
Karl Lieberherr
Northeastern University
College of Computer and Information Science
Boston, MA
joint work with
Ahmed Abdelmeged and Bryan Chadwick
Why Scientific Community Game
(SCG)
• … motives in academic publishing:
– desire for recognition and respect from the people
one regards as peers,
– desire to have impact (on conclusions being
reached, on the development of the discipline,
etc.), and
– desire to participate in significant knowledgebuilding discourse.
• e.g., Scardamalia, M., & Bereiter, C. (1994)
Intro SCG
2
SCG is Bio-inspired
• Virtual world of scholars based on natural
selection
– propose, oppose (refute and strengthen) claims
– maximize reputation, weak scholars are removed.
• Turn problem-solving software into virtual
organisms that fend for themselves and
survive in a virtual world inhabited by virtual
organisms created by your peers.
Intro SCG
3
SCG is a web-based implementation
of Karl Popper’s science ideas
• One of the greatest philosophers of science of
the 20th century.
• Falsifiability or refutability is the logical
possibility that an assertion could be shown
false by a particular observation or physical
experiment.
• Error elimination (refutation), performs a
similar function for science that natural
selection performs for biological evolution.
from Wikipedia
Intro SCG
4
Comparison
• Karl Popper: Conjectures and Refutations
• Scientific Community Game: Claims and
Refutations
Intro SCG
5
Recognition in SCG
• Scholars build their reputation by proposing
and opposing claims, by defending their own
claims and refuting or strengthening the
claims of others.
• The higher their reputation, the more
recognition.
Intro SCG
6
Impact in SCG
• Second-order environment
– what one scholar does in adapting, changes the
environment so that others must readapt.
• Developing novel techniques to find superior
solutions, challenges others to catch up.
Intro SCG
7
Knowledge-Building Discourse
in SCG
• Communication or debate.
• Refutation protocol defines the structure of
the debate and who wins. Claims are defined
through a refutation protocol.
• Knowledge-building:
– claims that have been defended predominantly
are candidates for truth
– claims that have been refuted predominantly are
probably false.
Intro SCG
8
Goals of SCG
• Put knowledge-building discourse on the web
giving participants the option to gain
recognition and to have impact.
• Focus the discourse through precise definition
of claims with refutation protocols.
• Make knowledge building discourse fun and
educational from the high school to the
advanced research level.
SCG = Scientific Community Game = Specker Challenge Game
Intro SCG
9
What do we mean by science?
• Science consists of the formulation and testing
of hypotheses based on observational
evidence.
• Ours: Science consists of the formulation and
testing of constructive claims based on
observational evidence. Construction is
computable.
Intro SCG
10
What do we mean by Scientific
Method
• Hypothetico-deductive method: Formulate a
hypothesis in a form that could conceivably be
falsified by a test on observable data.
• Ours: Formulate a constructive claim in a form
that could conceivably be falsified by a test
using a protocol. The refutation protocol is
part of the claim to make very explicit when
refutation is successful.
Intro SCG
11
SCG claim examples
• SCG Claim
– AlgorithmicClaim
• solve problems of kind D with quality q and resource r
• have polynomial time algorithm to solve problems of kind D
with quality q
– MathematicalClaim
• for all x in X exists y in Y: predicate(x,y)
– SoftwareClaim
• solve problems of kind D with maintainability m
• you cannot break into a system of kind D using resource r
SCG claim examples
– FinancialClaim
• if you pay me k dollars (option premium) today, I will
promise to buy q shares of stock S up to day d at price p
(strike price). Purpose: insurance.
– ExperimentalClaim
• If I am given raw materials x in X, I can produce product
y in Y of quality q and using resources at most r.
Tartaglia against Fior
1535
Tartaglia was famed for his
algebraic solution of cubic
equations which was
published in
Cardan's Ars Magna.
Intro SCG
14
Outline
• Introduction
– Popper Science, Renaissance History: Tartaglia and Fior
• Definition of SCG
– Example (Highest safe rung)
•
•
•
•
•
Applications: Teaching, Software Development, Research
Claims with secrets and other protocol variants
Output of SCG, Equilibrium
Advantages and Disadvantages
Conclusions
Intro SCG
15
Definition of SCG: Domain
•
•
•
•
Problem: Set
Solution: Set
valid: relation(Problem, Solution)
quality: function(Problem, Solution)->[0..1]
Intro SCG
16
Claim(Domain)
makes predictions
about the future
• Problems: Powerset(Domain.Problem)
• q: Quality = [0,1]
• r: Resource = N+ = positive integer
Alice claims to have a technique to solve problems in Problems
with at least quality q and using at most resources r.
Intro SCG
17
Implied Protocol of Claim(Domain)
• Alice claims (problems,q,r), Bob refutes
• Bob provides problem prob in Claim.Problems.
• Alice solves problem prob providing sol in
Domain.Solution.
• check: valid(prob,sol) and quality(prob,sol)>=q and
sol.resource<=r.
• sol.resource returns Alice’ resource consumption to
solve problem prob.
Karl Popper: Only hypotheses capable of clashing with observation
reports are allowed to count as scientific.
Intro SCG
18
Claim
• Problems: subset of problems
• quality in [0,1]
1
quality
(how well
problems in
Problems can be
solved)
0
Intro SCG
19
Claim
over strengthening
1
correct valuation
quality
strengthening
0
Intro SCG
20
20
Bio-inspired computing:
Virtual World of SCG-Avatar
• SCG-Avatar (Claim(Domain))
– State: Reputation = positive rational number
– Activity
• propose new claims
• oppose claims of others
– refute claim(Problems, q, r)
– strengthen claim(Problems, q’, r’), q’>q or r’<r
• Reputation gain: refute others’ claims and defend own
claims (counter refutation attempts)
• Reputation loss: unsuccessful refutation of other’s
claim and refutation of own claims
Intro SCG
21
Tournament
Intro SCG
1. round-robin
2. Swiss-style
3. elimination
1. single
2. double
22
Summary of SCG Definitions
Domain
Problem
Solution
valid(Problem, Solution)
quality(Problem, Solution) →[0,1]
Claim(Domain)
Problems: PowerSet(Domain.Problem)
q: Quality = [0,1]
r: Resource = N+
Rules of the Scientific Community: propose and oppose,
be an active scholar, rules for reputation accumulation.
Tournaments
Intro SCG
23
Highest Safe Rung
• You are doing stress-testing on various models
of glass jars to determine the height from
which they can be dropped and still not break.
The setup for this experiment, on a particular
type of jar, is as follows.
Intro SCG
24
Highest Safe Rung
Bob
Alice
You have a ladder with n rungs, and
you want to find the highest rung
from which you can drop a copy of
the jar and not have it break. We call
this the highest safe rung. You have
a fixed ``budget'' of k > 0 jars.
Only two identical bottles to determine
highest safe rung
Intro SCG
25
Highest Safe Rung
Bob
Alice
HSR(9,2)
≤4
Only two identical bottles to determine
highest safe rung
Intro SCG
I doubt it: refutation attempt!
Alice constructs
decision tree T of
depth 4 and gives it
to Bob. He checks
whether T is valid.
Bob wins if he finds
a flaw.
26
x
Highest Safe Rung Decision Tree
HSR(10,2)=5
3
no
yes
y
1
z
6
u
0
2
highest safe rung
4
9
1
2
3
5
7
4
9
5
8
6
7
Intro SCG
8
27
Formal: HSR
• Domain:
– Problem: (n,k), k <= n.
– Solution: Decision tree to determine highest safe
rung.
– quality(problem, solution): depth of decision tree /
number of rungs
– valid(problem, solution): at most k left branches, ...
Intro SCG
28
Formal: HSR
• Claim(Domain):
– Alice claims ({(25,2)},9/25,5 seconds)
• {(25,2)}: set of problems (singleton)
• 9/25: quality
• 5 seconds: resource
• Refutation Protocol:
– Bob refutes: only one problem: (25,2)
– Alice: solves problem by providing decision tree t.
– predicate: t is a valid decision tree for (25,2) of depth 9
Intro SCG
29
SCG(HSR)
Karl Lieberherr
11/7/2015
SCG(HSR)
30
Overview
• Showing Scientific Community game in action
as a board game.
• Want to play the game in class.
11/7/2015
SCG(HSR)
31
Highest Safe Rung
• You are doing stress-testing on various models
of glass jars to determine the height from
which they can be dropped and still not break.
The setup for this experiment, on a particular
type of jar, is as follows.
11/7/2015
SCG(HSR)
32
Highest Safe Rung
Bob
Alice
You have a ladder with n rungs, and
you want to find the highest rung
from which you can drop a copy of
the jar and not have it break. We call
this the highest safe rung. You have
a fixed ``budget'' of k > 0 jars.
Only two identical bottles to determine
highest safe rung (k=2)
11/7/2015
SCG(HSR)
33
Highest Safe Rung
Bob
Alice
HSR(9,2)
≤4
Only two identical bottles to determine
highest safe rung
11/7/2015
SCG(HSR)
I doubt it: refutation attempt!
Alice constructs
decision tree T of
depth 4 and gives it
to Bob. He checks
whether T is valid.
Bob wins if he finds
a flaw.
34
SCG Scenario
• Interactions between scholars Alice and Bob.
Admin Nina gives grade to performance of
Alice and Bob.
11/7/2015
SCG(HSR)
35
HSR(n,k) ≤ q
• There exists a valid decision tree DT-HSR(n,k)
of depth q to solve HSR(n,k) so that for all
ladders with n rungs and for all secret rungs s,
the decision tree DT-HSR(n,k) correctly
identifies s.
11/7/2015
SCG(HSR)
36
x
Linear Search: HSR(4,1)=3
no
yes
y
z
1
u
0
highest safe rung
2
1
3
2
3
depth is 3
11/7/2015
SCG(HSR)
37
x
Binary Search: HSR(4,2)=2
no
yes
y
z
2
u
1
0
11/7/2015
highest safe rung
3
1
2
3
SCG(HSR)
38
Pos. HSR Use Case: HSR(n,k) <= q
• Name: HSR
• Participating actors: Alice, Bob and Nina.
• Entry condition: n,k,q are given; k<=n, q<=n,
refuter defined: Bob.
• Flow of events
11/7/2015
SCG(HSR)
39
Pos. HSR Use Case (continued)
• Flow of events
– Alice claims HSR(n,k)<=q.
– Bob tries to refute. Bob asks for
program/algorithm for (n,k) (ProvideProblem).
– Alice provides program/algorithm (SolveProblem).
– Bob/Nina check correctness of
program/algorithm.
– Nina gives grade based on whether
program/algorithm is correct and of predicted
quality.
11/7/2015
SCG(HSR)
40
Pos. HSR Use Case (continued)
• Exit condition: winner and loser are
determined.
• Quality requirements: programming language,
computational model: decision tree
11/7/2015
SCG(HSR)
41
Neg. HSR Use Case: HSR(n,k) > q
• Name: HSR-neg
• Participating actors: Alice, Bob and Nina.
• Entry condition: n,k,q are given; k<=n, q<=n,
refuter defined: Bob.
• Flow of events
11/7/2015
SCG(HSR)
42
Neg. HSR Use Case (continued)
• Flow of events
– Alice claims HSR(n,k)>q.
– Bob tries to refute. Alice asks for program/algorithm
for (n,k) (ProvideProblem).
– Bob provides program/algorithm (SolveProblem).
– Alice/Nina check correctness of program/algorithm. If
depth of decision tree is <= q, refutation is successful.
– Nina gives grade based on whether
program/algorithm is correct and of predicted quality.
11/7/2015
SCG(HSR)
43
Neg. HSR Use Case (continued)
• Exit condition: winner and loser are
determined.
• Quality requirements: programming language,
computational model: decision tree
11/7/2015
SCG(HSR)
44
HSR(x,1)<=x-1
x
no
yes
y
z
1
u
0
highest safe rung
2
1
3
2
x-1
depth is x-1
x-2
11/7/2015
x-1
SCG(HSR)
45
Bob has the following claims
•
•
•
•
•
•
•
HSR(4,1)<=4
HSR(9,2)<=4
HSR(9,2)<=3
HSR(8,3)<=3
HSR(4,2)<=2
HSR(11,2)<=4
HSR(12,2)<=4
Alice makes a decision for each claim:
defendable/refutable (refute function)
defendable:
Alice provides decision tree and Bob cannot find
a bug.
refutable:
Bob provides decision tree and Alice finds a bug.
To make the game more interesting:
defendable claims are treated first
If defendable, can it be strengthened?
11/7/2015
SCG(HSR)
46
Play Game in class
(abbreviated rules)
•
•
•
•
Role Alice (1-3 students from class)
Role Bob (the rest of class)
Role Nina (3 students from class)
Alice chooses two claims: HSR(9,2)<=3,
HSR(11,2)<=4 that she thinks she can refute.
• Now play!
Intro SCG
47
Who is the winner?
• Nina keeps score.
• Initially Alice and Bob have 10 points.
Intro SCG
48
Bob has the following claims
•
•
•
•
•
•
•
HSR(4,1)<=4
HSR(9,2)<=4
HSR(9,2)<=3
HSR(8,3)<=3
HSR(4,2)<=2
HSR(11,2)<=4
HSR(12,2)<=4
11/7/2015
Alice makes a decision for each claim:
defendable/refutable (refute function)
defendable:
Alice provides decision tree and Bob cannot find
a bug.
refutable:
Bob provides decision tree and Alice finds a bug.
To make the game more interesting:
defendable claims are treated first
SCG(HSR)
49
Focus on
• HSR(11,2)<=4
– Alice provides decision tree.
• HSR(12,2)<=4
11/7/2015
SCG(HSR)
50
x
Highest Safe Rung Decision Tree
HSR(9,2)=5
3
no
yes
y
1
z
6
u
0
2
highest safe rung
4
9
1
2
3
5
7
4
Bob, Nina check: refutation by
Bob successful. Alice loses.
Alice: 2 points, Bob 10 points
5
8
6
How could Alice have won?
11/7/2015
9
7
SCG(HSR)
8
51
HSR(11,2)<=4
Magic for now
4
7
1
5
9
2
6
3
8
10
0 1 2 3 4 5 6 7 8 9 10
Principle of Algorithm Design
• Instead of focusing on what changes from
level to level, focus on what stays the same.
• Find the invariant.
Initial Project Description
• http://www.ccs.neu.edu/home/lieber/courses
/se-courses/cs5500/sp11/projects/problemstatement.html
11/7/2015
SCG(HSR)
54
Outline
• Introduction
– Popper Science, Renaissance History: Tartaglia and Fior
• Definition of SCG
– Example (Highest safe rung)
•
•
•
•
•
Applications: Teaching, Software Development, Research
Claims with secrets and other protocol variants
Output of SCG, Equilibrium
Advantages and Disadvantages
Conclusions
Intro SCG
55
Applications:
Software Development
• Software Development
• Teaching Constructive Domains
Intro SCG
56
Gamification of Software
Development etc.
• Want reliable software to solve a
computational problem? Design a game
where the winning team will create the
Doesn’t TopCoder already do this?
software you want.
• Want to teach a STEM domain? Design a game
where the winning students demonstrate
superior domain knowledge.
STEM = Science, Technology, Engineering, and Mathematics
Intro SCG
57
SCG and TopCoder
• SCG is an abstraction and generalization of
what TopCoder does.
Intro SCG
58
The Traditional Approach
Team A
Solver A
Team B
Solver B
Team C
Solver C
Parameterized
by the domain.
Static
Benchmark
HSR(9,2)=4
HSR(25,2)=7
Ranking
measure how close
to minimum
Software: Solving HSR Problem:
construct decision tree of min. depth
Intro SCG
60
The Bio-Inspired Approach
Dynamic
Benchmark
Solver A
Team A
prop-opp A
Solver B
Team B
prop-opp B
Solver C
Team C
Avatar
A
Avatar
B
Virtual
World
(Game)
Ranking
Avatar
C
prop-opp C
Parameterized
by the domain.
Intro SCG
61
A Virtual World
Avatar’s View
Avatar
Claims,
Problems,
Solutions
Opponents’ communication,
Feedback
Administrator
• Problems: Benchmark output
• Solutions: Software output
• Claims: statements about algorithms
Results
Intro SCG
62
What Scholars think about!
• If I propose claim C, what is the probability
that
– C is successfully refuted
– C is successfully strengthened
• If I try to refute claim C, what is the probability
that I will fail.
• If I try to strengthen claim C, what is the
probability that I will fail?
Intro SCG
63
SCG = Scientific Community Game
• Make software development more scientific.
• Software developers build reputation
– propose and defend claims about their software
– oppose claims made by others
• refute claims
• strengthen claims
• claim includes refutation protocol
Intro SCG
64
Why a web application with avatars? Fair Evaluation.
Who are Alice and Bob?
• They are avatars developed by real Alice and
real Bob.
• Alice and Bob compete with 10 other avatars
in a full-round robin tournament.
• Who is the winner: The avatar with the
highest reputation, i.e., the avatar who has
the strongest, not successfully opposed claims
(like in a real scientific community).
Intro SCG
65
our focus
What is SCG(X)
avatar Bob
Alice
degree of automation used by scholar
1
0
no automation
human plays
some automation
human plays
full automation
avatar plays
transfer to reliable,
efficient software
more applications:
test constructive knowledge
Intro SCG
66
Real Scholars and Avatars:
Same rules
• Are encouraged to
1. propose claims that are not easily strengthened.
2. offer claims that they can successfully support.
3. strengthen others’ claims, if possible.
4. stay active and propose new strong claims or
oppose others’ claims.
5. become famous!
Intro SCG
67
Clear Feedback
Sense of Progress
What we want
Authenticity (Facebook)
• Engage software developers
– let them produce software that models an
organism that fends for itself in a real virtual world
while producing the software we want. Have fun.
Focus them.
– let them propose claims about the software they
produce. Reward them when they
• defend their claims successfully or
• oppose the claims of others successfully.
Possibility of Success
Intro SCG
68
SCG
• Gamification of software development for
computational problems
• A Sociotechnical System for knowledge
dissemination, innovation, and integration
Intro SCG
69
Software Engineering Properties
fostered by SCG
• Reliable (otherwise the avatar is removed
from the game)
• Flexible, modular (otherwise the avatar
cannot be easily updated between
tournaments) Adaptive and Aspect-Oriented Software is relevant!
• Efficient (otherwise you cannot defend your
claims and oppose the claims of others)
Intro SCG
71
State of SCG-Avatar: Our Vision
• Companies come to SCG website and define a
competition by defining a claim domain X.
• Participating teams get baby avatars
generated from X that participate in daily
competitions.
• Competition generates a wealth of
information: educated employees, good
(undefeated) software, good algorithms, good
potential employees. Reward is paid to the
winner.
Intro SCG
72
State of SCG-Avatar: Our Vision
• Not only companies but faculty members who
want to give their students a rich learning
experience for computational problem X.
• Or editors of special issues in journals who
want to use a competition to get a real world
comparison of all approaches to solve
computational problem X.
Intro SCG
73
Life of an avatar: (propose+ oppose+ provide* solve*)*
Avatars propose and oppose
proposed claims
egoistic
Alice
CA1
CA2
egoistic
Bob
social welfare
opposes (1)
CB1
CB2
CA3
provides problem (2)
CA4
LOSES
solves problem
WINS!
not as well as she expected based on CA2 (3)
reputation 10
reputation 1000
transfer 200
Intro SCG
74
What is SCG(X)?
Team
Alice
I am the best
Teams
Design Problem Solver
Develop Software
Deliver Avatar
Avatar Alice
Team
Bob
No!!
Avatar Bob
Let’s play
constructively
Administrator
SCG police
Intro SCG
75
competitive / collaborative
Avatar Alice: claim C
loses reputation r
wins knowledge k
Avatar Bob: opposes C, refutes: provides
evidence for !C
wins reputation r
makes public knowledge k
Intro SCG
76
Outline
• Introduction
– Popper Science, Renaissance History: Tartaglia and Fior
• Definition of SCG
– Example (Highest safe rung)
•
•
•
•
•
Applications: Teaching, Software Development, Research
Claims with secrets and other protocol variants
Output of SCG, Equilibrium
Advantages and Disadvantages
Conclusions
Intro SCG
77
Protocol Variants
• secrets: approximation problems
• involving trusted third party
– renaissance: exchange of problems
Intro SCG
78
Example: Triple HSR
Highest Safe Rung
• Alice claims ({(25,2,0), (25,2,1), (25,2,2),
(25,2,3), … ,(25,2,25)},9/25, 5 seconds)
• Refutation Protocol:
– Bob refutes (25,2,17)
– Alice solves problems (25,2,*) by providing
decision tree to trusted third party which reveals
path p from root to 17.
– predicate: p is valid and length(p) <= 9
Intro SCG
79
Protocol Variation Secrets
• problem has public and private part, private
part is a secret solution
• predicate has secret as argument
Intro SCG
80
Protocol Variation Secret Program
for SCG-Avatar
• problem has public and private part, private
part is a secret solution and goes to
administrator
• Alice gives her algorithm to administrator who
applies it to public part of problem
• predicate has secret as argument
Intro SCG
81
Example Claims involving secrets
• My algorithm can solve more problems using
resources r than your algorithm using r.
• If I create problems for you for which I have a
solution, you cannot recreate or approximate
the solution with quality q using resources r.
Intro SCG
82
Output and Equilibrium
• Rich tournament history
• What is an equilibrium in SCG?
Intro SCG
83
Soundness Theorem
• SCG is sound: The avatar with the best
algorithms / knowledge wins (there is no way
to cheat)
– best: within the group of participating avatars
– issues:
• Does an avatar win because she is good at solving? Or
good at proposing, opposing and providing? Answer:
proposing, opposing and providing all reduce to solving.
Intro SCG
84
SCG Equilibrium
• reputations of scholars are stable
• the ranking of the scholars is invariant from
tournament to tournament
• the science does not progress; bugs are not
fixed, no new ideas are introduced
• extreme example: All scholars are perfect:
they propose optimal claims C(ps,q) that can
neither be strengthened nor refuted.
Intro SCG
85
second-order environment!
Survival in SCG(X)
• [Scientific Innovation in X] Avatars get skills
programmed into them by clever scientists in
domain X. Scientists use data mining to learn
from competitions and manually improve the
avatars.
• [Machine Learning Innovation in X] Avatars get
skills programmed into them by an avatar
caregiver programmed with learning skills and
data mining skills for domain X. Avatar gets
updated automatically.
Intro SCG
86
Blame assignment
• Where is the proposer to blame?
– Bad claim that is refuted.
– Bug in problem finding algorithm?
– Bug in problem solving algorithm?
Intro SCG
87
How to use SCG(X)
• Company AB needs new ideas about how to
solve optimization problems in domain X.
• Define claims language for X
– X-problems
– claims, includes protocol
• Submit claims language definition to SCG
server.
Intro SCG
88
How to use SCG(X)
• Offer prize money for winner with conditions,
e.g., performance must be at least 10% higher as
performance of avatar XY that AB provides.
• 10 teams from 6 countries sign up, committing
to 6 competitions. Player executables become
known to other players after each competition.
One team from company AB.
• The SCG server sends them the basic avatar and
the administrator for testing.
Intro SCG
89
How to use SCG(X)
• Game histories known to all. Data mining!
• First competition is at 23.59 on day 1.
Registration starts at 18.00 on same day. The
competition lasts 2.5 hours.
• Repeat on days 7, 14, … 42.
• The final winner is: Team Mumbai, winning
10000 Euro. Delivers source code and design
document describing winning algorithm to AB.
Intro SCG
90
Benefits for company AB
of using SCG(X)
• Teams perform know-how retrieval and
integration and maybe some research.
– Participating teams try to find the best knowledge in
the area.
– Claims language gives control!
• The non-refuted claims give hints about new Xspecific knowledge.
• A well-tested solver for X-problems that
integrates the current algorithmic knowledge in
field X.
Intro SCG
91
Outline
• Introduction
– Popper Science, Renaissance History: Tartaglia and Fior
• Definition of SCG
– Example (Highest safe rung)
•
•
•
•
•
Applications: Teaching, Software Development, Research
Claims with secrets and other protocol variants
Output of SCG, Equilibrium
Advantages and Disadvantages
Conclusions
Intro SCG
92
Benefits/Disadvantages
• Benefits
– competitive / collaborative
– structured feedback, game history
– Teaching
– Research
– Software Development
• Dynamic testing and evaluation
• Disadvantages
– addictive
Intro SCG
93
Disadvantages of SCG
• The game is addictive. After Bob having spent 4
hours to fix his avatar and still losing against Alice,
Bob really wants to know why!
• Overhead to learn to define and participate in
competitions.
• The administrator for SCG(X) must perfectly
supervise the game. Includes checking the legality
of X-problems.
– if admin does not, cheap play is possible
– watching over the admin
Intro SCG
94
How to compensate
for those disadvantages
• Warn the scholars.
• Use a gentleman’s security policy: report
administrator problems, don’t exploit them to
win.
• Occasionally have a non-counting “attack the
administrator” competitions to find
vulnerabilities in administrator.
– both generic as well as X-specific vulnerabilities.
Intro SCG
95
Benefits of SCG
• Social Welfare
– Supported knowledge
• Claims are refuted and strengthened.
• Better supported knowledge comes from better
algorithms and software.
Intro SCG
96
Advantage: Democratic
• Problem to be solved: Develop the best practical
algorithms for solving computational problems in
domain X.
• Issue: There are probably hundreds of papers on
the topic with isolated implementations. What
are the best practical algorithms?
• Our solution: Use the scientific community game
SCG(X) with a suitably designed claims language
to compare the software. The winning avatar has
the best practical algorithms/software.
Intro SCG
97
Experience with MAX-CSP
• MAX-CSP Problem Decompositions
• T-Ball (one relation), Softball (several
relations, one implication tree), Baseball
(several relations).
• ALL, SECRET
Intro SCG
98
Stages for SECRET T-Ball
• MAXCUT
– R(x,y)= x!=y
– fair coin ½
– maximally biased coin ½
– semi-definite programming / eigenvalue
minimization 0.878
Intro SCG
99
Stages for SECRET T-Ball
• One-in-three
– R(x,y,z) = (x+y+z=1)
– fair coin: 0.375
– optimally biased coin: 0.444
Intro SCG
100
Stages for ALL Baseball
• Propose/Oppose/Provide/Solve
– based on fair coin
– optimally biased coin
• correctly optimize polynomials
– correctly eliminate noise relations
– correctly implement weights
– …
Intro SCG
101
References
• Karl Popper, Conjectures and Refutations,
London: Routledge (1963).
• Scardamalia, M., & Bereiter, C. (1994).
Computer support for knowledge-building
communities. The Journal of the Learning
Sciences, 3(3), 265-283.
• Renaissance: Tartaglia and Fior challenge
(1535).
Intro SCG
102
Conclusions
• To address a problem domain X:
– “map it to second life”: define a scientific community game
for X on the web: SCG(X)
– let the game SCG(X) run a few times and choose the
winner
• Benefits
– Evaluates fairly, frequently, constructively and dynamically.
Encourages retrieval of state-of-the-art know-how,
integration and discovery.
– Challenges humans, drives innovation, both competitive
and collaborative.
– Avatars point humans to what needs attention in problem
solution / software.
Intro SCG
103
Conclusions
• Broad applicability, e.g.,
• SCG(X) provides a software process for
developing software for computational
problems.
• Benefits
– Social Engineering: makes it fun through game.
– Fair: Only hard work makes you win.
– Engage a large community on one domain X.
Intro SCG
104
end
Intro SCG
105
State of Avatar SCG
• Domain is hard-wired to Constraint
Satisfaction Problems
• One Master student worked on making it
generic but work is not complete.
Intro SCG
106