Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Popperian Platform for Programming and Teaching the Global Brain Karl Lieberherr Ahmed Abdelmeged Northeastern University, CCIS, PRL, Boston 3/15/20161.

Similar presentations


Presentation on theme: "A Popperian Platform for Programming and Teaching the Global Brain Karl Lieberherr Ahmed Abdelmeged Northeastern University, CCIS, PRL, Boston 3/15/20161."— Presentation transcript:

1 A Popperian Platform for Programming and Teaching the Global Brain Karl Lieberherr Ahmed Abdelmeged Northeastern University, CCIS, PRL, Boston 3/15/20161

2 A claim is … meta information about one’s performance when interacting with another clever being. meta information about the performance of one’s program. 4/24/20112Crowdsourcing

3 Outline Introduction Theory & hypotheses Methods Results & analysis Conclusion Theory Methods Results Conclusion Introduction Theoretical background Methods for playground design Results Conclusions 3/15/20163

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 3/15/20164 Introduction Theory Methods Results Conclusion SCG = Scientific Community Game = Specker Challenge Game

5 Specker Claims: – Specker(X,Y(X),f(X,Y)->[0,1],c): ForAll x in X Exists y in Y: f(x,y)≥c Example: – 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] 3/15/20165 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. 3/15/20166 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. 3/15/20167 Introduction Theory Methods Results Conclusion

8 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. 3/15/20168

9 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. 9Crowdsourcing4/24/2011

10 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. 3/15/201610

11 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 3/15/201611

12 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 3/15/201612

13 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! 133/15/2016 Introduction Theory Methods Results Conclusion

14 Degree of automation with SCG(X) 14 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 3/15/2016 Introduction Theory Methods Results Conclusion

15 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. 3/15/201615 happy = no scholar is ignored.

16 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. 3/15/201616 Playground = Instantiation of Platform Introduction Theory Methods Results Conclusion

17 Theory Extensive Form Representation of Game Community Property: All faulty actions can be exposed. SCG Equilibrium Convergence to optimum claim 3/15/201617 Introduction Theory Methods Results Conclusion

18 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 3/15/201618 Introduction Theory Methods Results Conclusion

19 Large Action Spaces Thick arrows mean: select from a usually large number of choices 1 2 3/15/201619

20 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. 3/15/201620 Introduction Theory Methods Results Conclusion

21 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) 3/15/2016 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) 21

22 Reinterpret Refutation Refutation leads to successful strengthening or successful agreement. 3/15/201622

23 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. 3/15/201623 Introduction Theory Methods Results Conclusion

24 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)). 3/15/201624

25 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. 3/15/201625 Introduction Theory Methods Results Conclusion

26 4/24/2011Crowdsourcing26 goodbad Logic with Soundness claims sentences not just true/false claims, but optimum/nonoptimum claims: good: true/optimum bad: false/non-optimum

27 bad 4/24/2011Crowdsourcing27 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

28 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/2011Crowdsourcing28

29 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. 3/15/201629 Introduction Theory Methods Results Conclusion

30 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 3/15/201630

31 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 3/15/201631

32 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. 323/15/2016 Introduction Theory Methods Results Conclusion

33 Claims: convergence to optimum 33 0 1 quality strengthening correct valuation over strengthening true claims (defendable) false claims (refutable) 3/15/2016

34 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. 3/15/201634 Introduction Theory Methods Results Conclusion

35 Methods 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. 3/15/201635 Introduction Theory Methods Results Conclusion

36 Avatar Interface AvatarI – public List propose(List forbiddenClaims); – public List oppose(List claimsToBeOpposed); – public InstanceI provide(Claim claimToBeProvided); – public SolutionI solve(SolveRequest solveRequest); Introduction Theory Methods Results Conclusion 3/15/201636

37 Instance Interface InstanceI – boolean valid(SolutionI solution, Config config); – double quality(SolutionI solution); Introduction Theory Methods Results Conclusion 3/15/201637

38 InstanceSet Interface InstanceSetI – Option belongsTo(InstanceI instance); – Option valid(Config config); }} 3/15/201638

39 Protocol Interface ProtocolI – double getResult(Claim claim, SolutionI[] solutions, InstanceI[] instances); – ProtocolSpec getProtocolSpec(); – boolean strengthenP(Claim oldClaim, Claim strengthenedClaim); 3/15/201639

40 Claim Class, for all playgrounds Claim – public Claim(InstanceSetI instanceSet, ProtocolI protocol, double quality, double confidence) 3/15/201640

41 Protocol Library ExistsForAll.java ForAllExists.java Renaissance.java AsGoodAsYou.java Survivor.java 3/15/201641 Introduction Theory Methods Results Conclusion

42 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) 3/15/201642 Introduction Theory Methods Results Conclusion

43 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). 3/15/201643

44 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 3/15/201644

45 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. 3/15/201645 Introduction Theory Methods Results Conclusion

46 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. 3/15/201646 Introduction Theory Methods Results Conclusion

47 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. 3/15/201647 Introduction Theory Methods Results Conclusion

48 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. 3/15/201648

49 Piazza Experience Leaf Covering: Improved running time from quadratic to constant time. 3/15/201649

50 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 3/15/201650 SCG = Scientific Community Game = Specker Challenge Game Introduction Theory Methods Results Conclusion

51 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 3/15/201651

52 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) 3/15/2016 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 52

53 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) 3/15/2016 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 53

54 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 3/15/201654 Introduction Theory Methods Results Conclusion

55 Piazza Results Do not give hints at solutions. This significantly decreased the amount of discourse taking place. 3/15/201655

56 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. 3/15/201656 STEM = Science, Technology, Engineering, and Mathematics

57 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. Crowdsourcing574/24/2011 Introduction Theory Methods Results Conclusion

58 What we get 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. Crowdsourcing58 Clear FeedbackSense of Progress Possibility of Success Authenticity 4/24/2011

59 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. 3/15/201659 Introduction Theory Methods Results Conclusion

60 Conclusions Flexible use of SCG using a forum environment with threads and replies using optimization playgrounds is productive: – teams took turns leapfrogging each other SCG has desirable theoretical properties. 3/15/201660

61 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. – Restart playground after publishing all current ideas in playground (if optimum is not yet reached). 3/15/201661

62 The End More Questions? 3/15/201662

63 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) 3/15/201663 blamed decisions: propose(1,C) refute(1,2,C) strengthen(1,2,C,C’) agree(1,2,c)

64 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) 3/15/2016 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 64

65 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) 3/15/2016 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 65


Download ppt "A Popperian Platform for Programming and Teaching the Global Brain Karl Lieberherr Ahmed Abdelmeged Northeastern University, CCIS, PRL, Boston 3/15/20161."

Similar presentations


Ads by Google