Download presentation
Presentation is loading. Please wait.
Published byClaire Cynthia Doyle Modified over 9 years ago
1
A Popperian Platform for Programming and Teaching the Global Brain Karl Lieberherr Ahmed Abdelmeged Northeastern University, CCIS, PRL, Boston 10/9/20151
2
A claim is … information about one’s performance when interacting with another clever being in a specific domain. information about the performance of one’s program. 4/24/20112Crowdsourcing
3
Outline Theory Methods Results Conclusion Introduction Theoretical Background Methods of Exploration Results Conclusions and Future Work 10/9/20153
4
Introduction Explanation: SCG as a general pattern behind many different competitions: topcoder.com, kaggle.com, tunedit.org, Renaissance, … Make SCG a part of cyber-infrastructure (e-science) to support teaching and innovation in constructive domains. SCG usage for teaching – Innovation Success with Undergraduates using SCG on piazza.com: Qualitative Data Sources & Analysis – Avatar competitions are not for teaching (but for competitive innovation) Theoretical Properties of SCG 10/9/20154 Introduction Theory Methods Results Conclusion SCG = Scientific Community Game = Specker Challenge Game
5
Specker Claims: – Specker(set X, set Y(X), function f(X,Y)->[0,1], constant c): ForAll x in X Exists y in Y(X): f(x,y)≥c Example 1 – X = Conjunctive Normal Forms with various restrictions – Y(X) = Assignments to CNFs – f(x,y) = fraction of satisfied clauses in x under y – c in [0,1], e.g., c= 0.61 Example 2 – X = [0,1] – Y(X) = [0,1] – f(x,y)=x*y+(1-x)(1-y^2)) – c in [0,1], e.g., c=0.61 10/9/20155 Introduction Theory Methods Results Conclusion
6
Popper One of the philosophers of science who has had the biggest impact. Popper’s solution: Falsificationism: A claim is falsifiable if you can imagine an observation that would cause you to reject the theory. That a claim is "falsifiable" does not mean it is false; rather, that if it is false, then some observation or experiment will produce a reproducible result that is in conflict with it. 10/9/20156 Introduction Theory Methods Results Conclusion
7
What SCG helps with How to identify experts? How to decide if an answer is worthwhile? –Use scholars to choose the winners How to organize egoistic scholars to produce social welfare: knowledge base and know-how how to defend it. –The scholars try to reverse engineer the solutions of winning scholars. 10/9/20157 Introduction Theory Methods Results Conclusion
8
Claim involving Experiment Claim ExperimentalTechnique(X,Y,q,r) I claim, given raw materials x in X, I can produce product y in Y of quality q and using resources at most r. 8Crowdsourcing4/24/2011
9
Who are the scholars? Scientists Students in a class room – High school – University Members of the Gig Economy – Between 1995 and 2005, the number of self- employed independent workers grew by 27 percent. Potential employees (Facebook on kaggle.com) Anyone with web access; Intelligent crowd. 10/9/20159
10
Kaggle.com Competitions 2012 Facebook recruiting competitions – Task: Data scientist – Reward: Job – Teams: 197 Heritage Health Prize – Task: Hospital admissions – Reward: $ 3 million – Teams: 1118 Chess ratings – Elo versus the Rest of the World – Task: Predict outcome of chess games – Reward: $ 617 – Teams: 257 10/9/201510
11
Kaggle.com Competitions 2012 Eye Movements Verification and Identification – Task: Identify people – Reward: Kudos – Teams: 51 EMC Data Science Global Hackathon – Task: Air Quality Prediction – Reward $ 7030 – Teams: 114 10/9/201511
12
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? Scholars are free to invent; game rules don’t limit creativity! 1210/9/2015 Introduction Theory Methods Results Conclusion
13
Degree of automation with SCG(X) 13 no automation human plays full automation avatar plays degree of automation used by scholar some automation human plays 0 1 more applications: test constructive knowledge transfer to reliable, efficient software avatar Bob scholar Alice 10/9/2015 Introduction Theory Methods Results Conclusion
14
Organizational Problem Solved How to design a happy scientific community that encourages its members to really contribute. Control of scientific community – tunable SCG rules – Specific domain, claim definition to narrow scope. 10/9/201514 happy = can contribute, not ignored, can be creative, can thrive, have opportunity to learn
15
What is a loose collaboration? Scholars can work independently on an aspect of the same problem. Problem = decide which claims in playground to oppose or agree with. How is know-how combined? Using a protocol. – Alice claimed that for the input that Alice provides, Bob cannot find an output of quality q. But Bob finds such an output. Alice corrects. – Bug reports that need to be addressed and corrections. 10/9/201515 Playground = Instantiation of Platform Introduction Theory Methods Results Conclusion
16
Theory Extensive Form Representation of Game Community Property: All faulty actions can be exposed. SCG Equilibrium Convergence to optimum claim 10/9/201516 Introduction Theory Methods Results Conclusion
17
Extensive-form representation 1.the players of a game: 1 and 2 2.for every player every opportunity they have to move 3.what each player can do at each of their moves 4.what each player knows for every move 5.the payoffs received by every player for every possible combination of moves 10/9/201517 Introduction Theory Methods Results Conclusion
18
Large Action Spaces Thick arrows mean: select from a usually large number of choices 1 2 10/9/201518
19
Refutation Protocol Collects data given to predicate p. Alternates. refute(C,proposer,other) p(C, …)?(1,-1):(-1,1) claimpayoff for proposer if p true (defense) payoff for other if p true (defense) payoff for other if p false (refutation) payoff for proposer if p false (refutation) other tries to make p false while proposer tries to make p true. p false means successful refutation. p true means successful defense. 10/9/201519 Introduction Theory Methods Results Conclusion
20
1 propose claim C from Claims 2 refute(C,1,2) p(C, …)?(1,-1):(-1,1) 1 scholar 2 scholar strengthen attempt C’ => C refute(C’,2,1) agree attempt C refute(C,2,1) p(C’, …)?(1,-1):(-1,1) p(C, …)?(1,-1):(-1,1) 10/9/2015 refute attempt C refute(C, proposer,other) p(…)?(proposer,other): (proposer,other) Introduction Theory Methods Results Conclusion p(C’, …)?(-1,1):(1,-1) p(C, …)?(0,0):(1,-1) 20
21
Reinterpret Refutation Refutation leads to successful strengthening or successful agreement. 10/9/201521
22
Game Rules for Playground All objects exchanged during protocol must be legal and valid. Each move must be within time-limit. Scholar who first violates a playground rule, loses. 10/9/201522 Introduction Theory Methods Results Conclusion
23
Example: Independent Set Alice = proposer, Bob = other. Protocol / claim: AtLeastAsGood. Alice claims to be at least as good as Bob at IS. – Bob provides undirected graph G. – Bob computes independent set sB for G (secret). – Alice computes independent set sA for G. – Alice wins, if size(sA) >= size(sB) (= p(sA,sB)). 10/9/201523
24
4/24/2011Crowdsourcing24 goodbad Logic with Soundness claims sentences not just true/false claims, but optimum/non-optimum claims: good: true/optimum bad: false/non-optimum Introduction Theory Methods Results Conclusion
25
bad 4/24/2011Crowdsourcing25 good Scientific Community Game Logic with Community Principle agreed by two scholars disagreed by two scholars there exists two-party certificate to expose misclassification claims sentences Introduction Theory Methods Results Conclusion
26
Comparison Logic and SCG Logic sentences – true – false proof for being true – proof system, checkable – guaranteed defense proof for being false – proof system, checkable – guaranteed refutation Universal sentences Scientific Community Game sentences = claims – good – bad evidence for goodness – defense, checkable – uncertainty of defense evidence for badness – refutation, checkable – uncertainty of refutation Personified sentences 4/24/2011Crowdsourcing26
27
Community Property For every faulty decision action there exists an exposing reaction that blames the bad decision. – Reasons: We want the system to be egalitarian. – It is important that clever crowd members can shine and expose others who don’t promote the social welfare of the community. Faulty decisions must be exposable. It may take effort. 10/9/201527 Introduction Theory Methods Results Conclusion
28
Community Property Alternative formulation If all decisions by Alice are not faulty, there is no chance of Alice losing against Bob. – if Alice is perfect, there is no chance of losing. If there exists a faulty decision by Alice, there is a chance of Alice losing against Bob. – egalitarian game 10/9/201528
29
Summary: faulty decisions 1.propose(Alice,C),C=false 2.propose(Alice,C),C=not optimum, C=true 3.refute(Alice,Bob,C),C=true 4.strengthen(Alice,Bob,c,cs),c=optimum 5.strengthen(Alice,Bob,c,cs),c=false 6.agree(Alice,Bob,c),c=false 7.agree(Alice,Bob,c),c=not optimum, c=true 10/9/201529
30
SCG Equilibrium Points (reputations) of scholars are stable. The science does not progress; bugs are not fixed, no new ideas are introduced. Extreme, desirable situation: All scholars are perfect: they propose optimal claims that can neither be strengthened nor refuted. 3010/9/2015 Introduction Theory Methods Results Conclusion
31
Claims: convergence to optimum 31 0 1 quality strengthening correct valuation over strengthening true claims (defendable) false claims (refutable) 10/9/2015
32
Convergence Given a family of claims totally ordered with respect to strengthening and containing an optimum claim. If every faulty action is exposed, convergence to the optimum claim is guaranteed by using a search strategy such as binary search. 10/9/201532 Introduction Theory Methods Results Conclusion
33
Methods of Exploration Developed Platform SCG Court = Generator of teaching/innovation playgrounds – http://sourceforge.net/p/generic-scg/code-0/11 http://sourceforge.net/p/generic-scg/code-0/11 0/tree/GenericSCG/ – Developed numerous playgrounds for avatars. Developed Algorithms Course using Piazza based on SCG Court experience – role of scholar played by humans – piazza.com: encourages students to answer each other’s questions. 10/9/201533 Introduction Theory Methods Results Conclusion
34
Avatar Interface AvatarI – public List propose(List forbiddenClaims); – public List oppose(List claimsToBeOpposed); – public InstanceI provide(Claim claimToBeProvided); – public SolutionI solve(SolveRequest solveRequest); from http://sourceforge.net/p/generic-scg/code- 0/110/tree/GenericSCG/src/scg/scg.beh Introduction Theory Methods Results Conclusion 10/9/201534
35
Instance Interface InstanceI – boolean valid(SolutionI solution, Config config); – double quality(SolutionI solution); Introduction Theory Methods Results Conclusion 10/9/201535
36
InstanceSet Interface InstanceSetI – Option belongsTo(InstanceI instance); – Option valid(Config config); }} 10/9/201536
37
Protocol Interface ProtocolI – double getResult(Claim claim, SolutionI[] solutions, InstanceI[] instances); – ProtocolSpec getProtocolSpec(); – boolean strengthenP(Claim oldClaim, Claim strengthenedClaim); 10/9/201537
38
Claim Class, for all playgrounds Claim – public Claim(InstanceSetI instanceSet, ProtocolI protocol, double quality, double confidence) 10/9/201538
39
Protocol Library ExistsForAll.java ForAllExists.java Renaissance.java AsGoodAsYou.java Survivor.java 10/9/201539 Introduction Theory Methods Results Conclusion
40
Claim Kinds in SCG Court Claim C(instance, q) Claim C(InstanceSet, q) Claim MaxResource(Algorithm,InstanceSet,n,ResExp) Claim MinResource(Algorithm,InstanceSet,n,ResExp) Claim IAmTheBest(), AtLeastAsGoodAsYou() Claims from predicate logic and some of its generalizations (IF Logic) 10/9/201540 Introduction Theory Methods Results Conclusion
41
Piazza: Gale-Shapley Gale-Shapley (GS) algorithm is fixed. Alice provides secret instance of size n, solves it with GS (counts number of iterations) and publishes it: Ac(n). Bob provides secret instance of size n, solves it with GS and publishes it Bc(n). Alice wins if Ac(n) > Bc(n). 10/9/201541
42
Reverse Engineering Playground Design Issues input, output, algorithm unknown – for some problems input-output pairs help to invent the algorithm input unknown, output, algorithm – e.g., output for worst-case running-time, find input which is worst-case – for some problems finding 10/9/201542
43
Playground Design Make sure that the scholars don’t have to reveal their secrets. If they do. Remember who was first? Provenance of winning idea. 10/9/201543 Introduction Theory Methods Results Conclusion
44
SCG with piazza.com use piazza.com for posting – playground definition by playground designer – for scholars claims executions of refutation protocols Community policing Used JSON to exchange claims, instances and solutions. Used links when they did not fit in piazza window. 10/9/201544 Introduction Theory Methods Results Conclusion
45
JSON example We define the JSON notation for defining a preference p as follows: – {"n":3, – "manPref" : [[2,1,0],[1,0,2],[0,1,2]], – "womanPref : [[2,1,0],[1,3,2],[3,1,2]] } Easy to parse in a variety of programming languages and also readable by humans. 10/9/201545 Introduction Theory Methods Results Conclusion
46
Piazza Experience Gale-Shapley We propose that, for all integers n > 0, the maximum iterations the Gale-Shapely algorithm with n men and n women can produce is n(n-1)+1. Note: Thus far, the algorithm used for all other claims arrives at only (n(n+1))/2. 10/9/201546
47
Piazza Experience Leaf Covering: Improved running time from quadratic to constant time. 10/9/201547
48
Results Explanation: SCG as a general pattern behind many different competitions: topcoder.com, kaggle.com, Operations Research Competitions, tunedit.org, http://eterna.cmu.edu/ … SCG usage for teaching using forum – Innovation Success with Undergraduates using SCG on piazza.com: Qualitative Data Sources & Analysis Avatar competitions are not for teaching (but good for competitive innovation) Theoretical Properties of SCG 10/9/201548 SCG = Scientific Community Game = Specker Challenge Game Introduction Theory Methods Results Conclusion
49
Competition tuning: minimum For each scholar – count claims that were successfully opposed (refuted or strengthened) encourages strong claims gather information from competitors for free – count claims that were not successfully agreed Good for teaching – students want minimum competition – good students want to build social capital and help weaker students 10/9/201549
50
1 propose claim C from Claims 2 refute(C,1,2) p(C, …)?(1,-1):(-1,1) 1 scholar 2 scholar strengthen attempt C’ => C refute(C’,2,1) agree attempt C refute(C,2,1) 10/9/2015 refute attempt C refute(C, proposer,other) p(…)?(proposer,other): (proposer,other) p(C’, …)?(-1,1):(1,-1) p(C, …)?(0,0):(1,-1) High competition Introduction Theory Methods Results Conclusion 50
51
1 propose claim C from Claims 2 refute(C,1,2) p(C, …)? (0,0) :(0,1) 1 scholar 2 scholar strengthen attempt C’ => C refute(C’,2,1) agree attempt C refute(C,2,1) 10/9/2015 refute attempt C refute(C, proposer,other) p(…)?(proposer,other): (proposer,other) s: successful u: unsuccessful p(C’, …)?(0,1): (0,0) p(C, …)?(0,0): (1,0) Low competition Introduction Theory Methods Results Conclusion 51
52
Piazza Results Lower competition knob for teaching. For optimization claims got significant scientific discourse. Playgrounds cannot have too many scholars, otherwise they are overwhelmed. – about 5 is a good size – use hierarchical playgrounds: winning teams compete again 10/9/201552 Introduction Theory Methods Results Conclusion
53
Piazza Results Do not give hints at solutions. This significantly decreased the amount of discourse taking place. 10/9/201553 Introduction Theory Methods Results Conclusion
54
Conclusions and Future Work We propose a systematic gamification of teaching STEM domains: – Design an SCG playground where the winning students demonstrate superior domain knowledge. 10/9/201554 STEM = Science, Technology, Engineering, and Mathematics
55
Gamification of Software Development for Computational Problems Want reliable software to solve a computational problem? Design an SCG playground where the winning team will create the software you want. playground design = requirements – Programming the Global Brain socio-technical system (playground) will produce solution to requirements. Crowdsourcing554/24/2011 Introduction Theory Methods Results Conclusion
56
What we get Engaged 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. Crowdsourcing56 Clear FeedbackSense of Progress Possibility of Success Authenticity 4/24/2011
57
Conclusions Flexible use of SCG using a forum environment with threads and replies using optimization playgrounds is productive: – teams took turns leapfrogging each other – reached state-of-the-art and even improved it SCG has desirable theoretical properties. – faulty decision –> exposing reaction – equilibria – convergence to optimum claim 10/9/201557 Introduction Theory Methods Results Conclusion
58
Future Work Make SCG part of cyber-infrastructure (e-science) both for avatars and human scholars. Polish SCG Court – The administrator software needs to be very reliable (to avoid cheating by avatars). – Playground development and testing needs tool support. Further develop SCG with forum software – Playground design defines requirements for know-how. – Hierarchical playgrounds: partitioning into balanced groups. – Restart playground after publishing all current ideas in playground (if optimum is not yet reached). 10/9/201558 Introduction Theory Methods Results Conclusion
59
The End More Questions? 10/9/201559
60
Links SCG Home – http://www.ccs.neu.edu/home/lieber/evergreen/specker/scg- home.html http://www.ccs.neu.edu/home/lieber/evergreen/specker/scg- home.html Piazza page for Algorithms – http://piazza.com/class#winter2012/cs4800/0 http://piazza.com/class#winter2012/cs4800/0 Algorithms Home – http://www.ccs.neu.edu/home/lieber/courses/algorithms/cs4800/sp1 2/course-description.html http://www.ccs.neu.edu/home/lieber/courses/algorithms/cs4800/sp1 2/course-description.html Algorithms Feedback – http://www.ccs.neu.edu/home/lieber/courses/algorithms/cs4800/sp1 2/feedback/ http://www.ccs.neu.edu/home/lieber/courses/algorithms/cs4800/sp1 2/feedback/ SCG Court Source – http://sourceforge.net/p/generic-scg/code-0/110/tree/GenericSCG/ http://sourceforge.net/p/generic-scg/code-0/110/tree/GenericSCG/ 10/9/201560
61
Extra slides 10/9/201561
62
Essence of Game Rules without Payoff scholars: 1, 2 LifeOfClaim(C) = propose(1,C) followed by (oppose(1,2,C)|agree(1,2,C)). oppose(1,2,C) = (refute(1,2,C)|strengthen(1,2,C,C’)), where stronger(C,C’). strengthen(1,2,C,C’) = !refute(2,1,C’). agree(1,2,C) = !refute(2,1,C) 10/9/201562 blamed decisions: propose(1,C) refute(1,2,C) strengthen(1,2,C,C’) agree(1,2,c)
63
1 propose claim C from Claims 2 refute(C,1,2) p(C, …)?(1,-1):(-1,1) 1 scholar 2 scholar strengthen attempt C’ => C refute(C’,2,1) agree attempt C refute(C,2,1) p(C’, …)?(1,-1):(-1,1) p(C, …)?(1,-1):(-1,1) 10/9/2015 refute attempt C refute(C, proposer,other) p(…)?(proposer,other): (proposer,other) s: successful u: unsuccessful Introduction Theory Methods Results Conclusion p(C’, …)?(-1,1):(1,-1) u:1 2s:1 2 u:1 2 p(C, …)?(0,0):(1,-1) s:1 2u:1 2 63
64
1 propose claim C from Claims 2 refute(C,1,2) p(C, …)? (0,0) :(0,1) 1 scholar 2 scholar strengthen attempt C’ => C refute(C’,2,1) agree attempt C refute(C,2,1) 10/9/2015 refute attempt C refute(C, proposer,other) p(…)?(proposer,other): (proposer,other) s: successful u: unsuccessful p(C’, …)?(0,1): (0,0) u:1 2s:1 2 u:1 2 p(C, …)?(0,0): (1,0) s:1 2u:1 2 Low competition Introduction Theory Methods Results Conclusion 64
65
Conclusions for Teaching Transition – refute: (1,-1):(-1,1) -> (0,0) :(0,1) – strengthen: (-1,1):(1,-1) -> (0,1): (0,0) – agree: (0,0):(1,-1) -> (0,0): (1,0) creates better playgrounds for learning by lowering competition and increasing teaching between scholars. 10/9/201565 Introduction Theory Methods Results Conclusion
66
Claims Protocol. Defines scientific discourse. Scholars make a prediction about their performance in protocol. Predicate that decides whether refutation is successful. Refutation protocol collects data for predicate. As a starter: Think of a claim as a mathematical statement: EA or AE. – all planar graphs have a 4 coloring. 10/9/201566
67
More examples of Protocols Let f(x,y)=x*y+(1-x)(1-y^2)). Alice claims Math(0.61): Bob constructs an x in [0,1] and Alice construct a y in [0,1], and Alice guarantees that f(x,y)> 0.61. True claim but can be strengthened to 0.618. Alice claims Solar(RawMaterials,m,0.61). Bob constructs raw materials r in RawMaterials and Alice constructs a solar cell s in Solution from r using money m and so that efficiency(s)> 0.61. 10/9/201567 Introduction Theory Methods Results Conclusion
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.