Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Popperian Socio-Technical Platform for Solving Scientific Problems Karl Lieberherr Ahmed Abdelmeged Northeastern University, CCIS, PRL, Boston 6/8/20161.

Similar presentations


Presentation on theme: "A Popperian Socio-Technical Platform for Solving Scientific Problems Karl Lieberherr Ahmed Abdelmeged Northeastern University, CCIS, PRL, Boston 6/8/20161."— Presentation transcript:

1 A Popperian Socio-Technical Platform for Solving Scientific Problems Karl Lieberherr Ahmed Abdelmeged Northeastern University, CCIS, PRL, Boston 6/8/20161

2 2 Ontology CS Programming Socio-Technical System The Global Brain Mathematics Game Theory ExtensiveFormMetaGaming Mathematical Logic Dialog GamesIF Logic inspired by ScienceWISE

3 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/20113Crowdsourcing

4 Outline Theory Methods Results Conclusion Introduction Theoretical Background Methods of Exploration Results Conclusions and Future Work 6/8/20164

5 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 6/8/20165 Introduction Theory Methods Results Conclusion SCG = Scientific Community Game = Specker Challenge Game

6 Popper One of the philosophers of science who has had a big impact. Popper’s solution: Falsification: A claim is falsifiable if you can imagine an observation that would cause you to reject the claim. 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. 6/8/20166 Introduction Theory Methods Results Conclusion

7 What SCG helps with Build and maintain knowledge bases (sets of claims believed to be true). 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. 6/8/20167 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. 6/8/20169

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 6/8/201610

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 6/8/201611

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! 126/8/2016 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 6/8/2016 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. 6/8/201614 happy = can be creative, can thrive, have opportunity to learn, not ignored

15 6/8/201615 RP1 PG1 claims C11 C12 C13 … SC1 SC2 SC1 RP2 PG2 claims C21 C22 C23 … SC3 SC4 SC5 SC1 SCG defines: refutation protocol interface generic rules for all playgrounds Each playground defines: domain claims language specific protocol data exchanged configuration data Playgrounds D1 D2

16 Playground defines – what is wanted, e.g., an algorithm S in a particular domain (inputs/outputs) – evaluation, e.g., how S is evaluated (quality) – claims, e.g., what kind of claims can be made about S (expression with quantifiers) A playground defines WHAT is desired and the scholars/avatars define the HOW.

17 Alternative Introduction From an Independence-Friendly Logic website. http://mtl.uta.fi/logic-group/iflogic.html 6/8/2016Persistent Playgrounds17

18 Quantifier Game of Lovers Bob and Alice are two lovers who can never seem to agree about anything. Whenever Alice makes a claim, Bob immediately tries to refute it. If Alice makes an existential claim, Bob demands that she identify an individual satisfying it. When Alice asserts a negated formula the lovers switch roles: Bob attempts to defend the claim, whilst Alice tries to refute it. When Alice asserts an ordinary first-order claim, the ensuing dispute is a game of perfect information. If the claim is true, Alice will always win. If it is false, Bob will always win. 6/8/201618Persistent Playgrounds

19 Proofs / Winning Strategies Skolemization is the process of eliminating the existential quantifiers from a formula by introducing fresh function symbols. A Skolem function produces a witness for an existential claim. Taken together, a set of Skolem functions for a claim can be seen as encoding a strategy for Alice in the associated semantic game. If the claim is true, the Skolem functions can be assumed to encode a winning strategy. 6/8/201619Persistent Playgrounds

20 Theory Extensive Form Representation of Game Properties – Community Property: All faulty actions can be exposed. – SCG Equilibrium – Convergence to optimum claim 6/8/201620 Introduction Theory Methods Results Conclusion

21 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 6/8/201621 Introduction Theory Methods Results Conclusion

22 Large Action Spaces Thick arrows mean: select from a usually large number of choices 1 2 6/8/201622

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

24 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) 6/8/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) 24 SCG Core

25 Reinterpret Refutation Refutation leads to successful strengthening or successful agreement. 6/8/201625

26 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. 6/8/201626 Introduction Theory Methods Results Conclusion

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

28 bad 4/24/2011Crowdsourcing28 good Scientific Community Game Logic with Community Principle agreed by two scholars disagreed by two scholars there exists a two-party certificate to expose misclassification claims sentences Introduction Theory Methods Results Conclusion

29 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/2011Crowdsourcing29

30 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. 6/8/201630 Introduction Theory Methods Results Conclusion

31 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 6/8/201631

32 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 6/8/201632

33 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. 336/8/2016 Introduction Theory Methods Results Conclusion

34 Claims: convergence to optimum 34 0 1 quality strengthening correct valuation over strengthening true claims (defendable) false claims (refutable) 6/8/2016

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

36 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. 6/8/201636 Introduction Theory Methods Results Conclusion

37 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 6/8/201637

38 Instance Interface (Domain) InstanceI – boolean valid(SolutionI solution, Config config); – double quality(SolutionI solution); Introduction Theory Methods Results Conclusion 6/8/201638

39 InstanceSet Interface (Domain) InstanceSetI – Option belongsTo(InstanceI instance); – Option valid(Config config); }} 6/8/201639

40 Protocol Interface ProtocolI – double getResult(Claim claim, SolutionI[] solutions, InstanceI[] instances); – ProtocolSpec getProtocolSpec(); – boolean strengthenP(Claim oldClaim, Claim strengthenedClaim); 6/8/201640

41 Claim Class, for all playgrounds Claim – public Claim(InstanceSetI instanceSet, ProtocolI protocol, double quality, double confidence) 6/8/201641

42 Protocol Library ExistsForAll.java ForAllExists.java Renaissance.java AsGoodAsYou.java Survivor.java 6/8/201642 Introduction Theory Methods Results Conclusion

43 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) 6/8/201643 Introduction Theory Methods Results Conclusion

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 6/8/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. 6/8/201645 Introduction Theory Methods Results Conclusion

46 Second Exploration with piazza.com forum with threads (one per claim and protocol execution) 6/8/201646

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

48 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). 6/8/201648

49 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. 6/8/201649 Introduction Theory Methods Results Conclusion

50 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. 6/8/201650

51 Piazza Experience Leaf Covering: Improved running time from quadratic to constant time. 6/8/201651

52 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 6/8/201652 SCG = Scientific Community Game = Specker Challenge Game Introduction Theory Methods Results Conclusion

53 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 6/8/201653

54 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) 6/8/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 54

55 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) 6/8/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 55

56 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 6/8/201656 Introduction Theory Methods Results Conclusion

57 Piazza Results Do not give hints at solutions. This significantly decreased the amount of discourse taking place. 6/8/201657 Introduction Theory Methods Results Conclusion

58 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. 6/8/201658 STEM = Science, Technology, Engineering, and Mathematics

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

60 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. Crowdsourcing60 Clear FeedbackSense of Progress Possibility of Success Authenticity 4/24/2011

61 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 6/8/201661 Introduction Theory Methods Results Conclusion

62 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). 6/8/201662 Introduction Theory Methods Results Conclusion

63 Links / Questions 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/ 6/8/201663

64 The End More Questions? 6/8/201664

65 Extra slides 6/8/201665

66 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) 6/8/201666 blamed decisions: propose(1,C) refute(1,2,C) strengthen(1,2,C,C’) agree(1,2,c)

67 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) 6/8/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 67

68 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) 6/8/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 68

69 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. 6/8/201669 Introduction Theory Methods Results Conclusion

70 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. 6/8/201670

71 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. 6/8/201671 Introduction Theory Methods Results Conclusion

72 Questions received In learning game, give credit to all contributors, not just final one (DARPA 10 ball challenge) Predicate logic -> SCG: make explicit Playground design: involve competitors 6/8/201672

73 Questions Credit – first time the best claim is made – linear order by time – linear order by strength (quality) 6/8/201673

74 New insight Need to know very little about refutation protocol. – collect data, what is available when is not important – evaluate predicate with collected data 6/8/201674

75 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. 6/8/201675 Playground = Instantiation of Platform Introduction Theory Methods Results Conclusion

76 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)). 6/8/201676

77 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 (a reduction of example 1) – 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 6/8/201677 Introduction Theory Methods Results Conclusion

78 Kaggle.com Facebook competition: – X = Social Network Graph with deleted edges, Original Social Network Graph (secret) – Y(X) = estimated complete Social Network Graph – quality(x,y) = mean average precision adapted from IR 6/8/201678 Introduction Theory Methods Results Conclusion


Download ppt "A Popperian Socio-Technical Platform for Solving Scientific Problems Karl Lieberherr Ahmed Abdelmeged Northeastern University, CCIS, PRL, Boston 6/8/20161."

Similar presentations


Ads by Google