590 likes | 597 Views
Virtual Scientific Communities for Innovation. Supported by Novartis and GMO. Karl Lieberherr Northeastern University College of Computer and Information Science Boston, MA joint work with Ahmed Abdelmeged and Bryan Chadwick. Larger Context.
E N D
Virtual Scientific Communities for Innovation Supported by Novartis and GMO • Karl Lieberherr • Northeastern University • College of Computer and Information Science • Boston, MA • joint work with • Ahmed Abdelmeged and Bryan Chadwick
Larger Context • “Open innovation” describes a new paradigm for the management of industrial innovation (Henry Chesbrough) • “Wikinomics reveals the next historic step—the art and science of mass collaboration where companies open up to the world.” • How to give your problem solving software an ego !? Innovation
SCG = Scientific Community Game = Specker Challenge Game Applications • Develop algorithms/software for new optimization problem domain X • Scientific Community Game Software Development: Describe a problem domain X so that SCG(X) provides the best algorithms and their implementations for problems in X. (best within the participating scientific community) • Teach computer science, mathematics Innovation
Opening the development approach • Problem to be solved: Develop the best practical algorithms for solving optimization 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 virtual scientific agent community game SCG(X) with a suitably designed hypotheses language to compare the algorithms. The winning agent has the best practical algorithms. Innovation
Plan • Why is it relevant, useful? • Larger context: Open Innovation, Wikinomics • Applications: Netflix in the small, teaching • What is it? • What is new? • Map problem domain to “second life”, find best solution there and map it back to real life. • What do we improve: benefits of SCG • How to use SCG • Disadvantages • Experience with current implementation • Related work • Detailed example • Conclusions Innovation
What is it: Like Reviewing Process SCG Conference conference paper/review valuation (A,B,C,D) of paper/review committee meeting support upon opposition as strong as possible (otherwise someone will strengthen it) Scholar loses reputation when someone strengthens or successfully opposes • hypothesis • valuation [0,1] of hypothesis • competition • support upon opposition • as strong as possible (otherwise someone will strengthen it) • Agent loses reputation when someone strengthens or successfully opposes Innovation
Experiments, Related Work SCG Conference Goal: find correct valuation of paper/review. Has someone else published a similar paper? What was the experience? “Experiment” with paper before you submit or oppose it. Is there software to download and experiment? • Goal: find correct valuation of hypothesis. • Has someone else proposed this hypothesis? What was the experience? • Experiment with hypothesis before you offer or oppose it. Innovation
Like Reviews SCG Conference Program committee meeting has goal to find correct valuation of submitted papers Interactive protocol between program committee members. • Competition has goal to find correct valuation of agents • Interactive protocol between agents involving problems and their solution. The scholars fend for themselves! Innovation
Introduction (1) • Problem domains to be addressed: • Optimal control of a complex system (mixed continuous and discrete variables) • Optimal assembly of a system from components • hardware • software • Maximum constraint satisfaction problem (MAX-CSP) • Transporting goods minimizing energy consumption • Schedule tasks minimizing cost Innovation
Introduction (2) • Scientific Community Game(X) [SCG(X)] • Goal: Foster innovation and reliable software for solving optimization problems in some domain X • A virtual scientific community consists of virtual scholars that propose and oppose hypotheses maximizing their reputations Innovation
Life of a scholar: (propose+ oppose+ provide* solve*)* Agents propose and oppose proposed hypotheses egoistic Alice egoistic Bob social welfare HA1 HB1 opposes (1) HA2 HB2 HA3 provides problem (2) HA4 solves problem LOSES WINS! not as well as she expected based on HA2 (3) reputation 10 reputation 1000 transfer 200 Innovation
Hypothesis • Niche N • subset of problems • Confidence [0,1] • Valuation [0,1] 1 valuation (how well problems in N can be solved) confidence 0 Innovation
Hypothesis 1 over strengthening correct valuation valuation strengthening 0 Innovation 13
Hypothesis • hypothesis by Alice: for all problems F in niche N there exists a solution J: p(F,J) • Bob opposes: F’ to Alice, Alice cannot find J’:p(F’,J’) therefore she loses reputation. Innovation
Full Round Robin Tournaments or Swiss-Style • Agents to play the SCG(X). Repeat a few times with feedback used to update agents. • Within the group of participating agent, the winning agent has the • best solver for X-problems • best supported knowledge about X Innovation
What is the purpose of SCG? • The purpose of playing an SCG(X) competition is to assess the "skills" of the agents in: • "approximating" optimization problems in domain X, • "figuring-out" the wall-clock-time-bounded approximability of niches in domain X, • "figuring-out" hardest problems in a specific niche, and • "being-aware" of the niches in which their own solution algorithm works best. • This multi-faceted evaluation makes SCG(X) more superior to competitions based on benchmarks that only test the player's skills in approximating optimization problems. During SCG, players cross-test each others' skills. Innovation
How to use SCG • Company A provides a problem domain description X and submits it to the SCG server. The game SCG(X) runs on the web (with human algorithm/software developers involved) and company A receives good, tested software and knowledge about problem domain X Innovation
Plan • Why is it relevant, useful? • Larger context: Open Innovation, Wikinomics • Applications: Netflix in the small, teaching • What is it? • What is new? • Map problem domain to “second life”, find best solution there and map it back to real life. • What do we improve: benefits of SCG • How to use SCG • Disadvantages • Experience with current implementation • Related work • Detailed example • Conclusions Innovation
From Benchmark-Driven to SCG-Driven Algorithm Development • Hard to measure and detect what is fraud. • Instead: Design a system that needs a much weaker “gentleman’s agreement” or none at all • The Static Benchmark Problem is ONE problem that SCG solves. Dynamic Benchmarks • Others: crowd sourcing management, new software development process that engages software developers and that fosters ease of evolution (e.g., good separation of concerns, …) Innovation
Problems with Static Benchmarks http://www.cs.kuleuven.be/~dtai/events/ASP-competition/index.shtml Policy against special purpose solutions The purpose of the competition is to be as informative as possible about strengths and weaknesses of … Submission of special purpose programs for solving certain benchmark problems falsifies the information that we get from the rankings and goes against the spirit of the competition. … the use of special purpose programs for certain benchmarks can rightfully be considered as scientific fraud. We appeal to participants … Innovation
SCG-Driven Algorithm Development • Differences to Benchmark-Driven • You don’t rank chess players by giving them a benchmark; you let them play • We turn the algorithms into egoistic virtual scientists that fend for themselves • social welfare: constructive knowledge based on good algorithms Innovation
What is SCG(X)? Team Alice Team Bob Teams Design Problem Solver Develop Software Deliver Agent I am the best No!! Agent Alice Agent Bob Let’s play constructively Administrator SCG police Innovation
our focus What is SCG(X) agent robot Bob Alice degree of automation used by scholar 1 0 no automation human plays some automation human plays full automation agent plays transfer to reliable, efficient software more applications: test constructive knowledge Innovation
competitive / collaborative Agent Alice: claims hypothesis H loses reputation r wins knowledge k Agent Bob: challenges H, discounts: provides evidence for !H wins reputation r makes public knowledge k Innovation
Scholars and Agents:Same rules • Are encouraged to • offer results that are not easily improved. • offer results that they can successfully support. • strengthen results, if possible. • publish results of an experimental nature with an appropriate confidence level. • stay active and publish new results or oppose current results. • be well-rounded: solve posed problems and pose difficult problems for others. • become famous! Innovation
More Applications • Special issue editors for problem domain X. publish top 15 submissions • Professor teaching a software development class: students develop fighting agents for full-round robin tournament • Teaching constructive topics • etc. Innovation
Soundness Theorem • SCG is sound: The agent with the best algorithms / knowledge wins (there is no way to cheat) • best: within the group of participating agents • issues: • Does an agent win because she is good at solving? Or good at proposing, opposing and providing? Answer: proposing, opposing and providing all reduce to solving. • Can an agent force a win or a tie? Innovation
Justifying benefits (1) • Benefit: competitive – collaborative • Game component: hypotheses propose-oppose : problems provide-solve • How this game component brings the benefit • hypothesis by Alice: for all problems F in niche N there exists a solution J: p(F,J) • Bob opposes: F’ to Alice, Alice cannot find J’:p(F’,J’) therefore she loses reputation. • Alice lost but she now knows F’ where she cannot achieve what she claimed. F’ was harder than what Alice expected. Innovation
Justifying benefits (2) • Benefit: competitive – collaborative • Game component: hypotheses propose-oppose : problems provide-solve • How this game component brings the benefit • hypothesis HA by Alice: for all problems F in niche N there exists a solution J: p(F,J) • Bob opposes by non-trivially strengthening HA to HB: HB => HA. Alice cannot discount HB. Therefore she loses reputation. • Alice lost but she now knows that her hypothesis HA might not be the strongest. Innovation
Benefits of SCG-driven • Focus on understanding problem domain. • What are the niches where specialized algorithms perform well? • What are the hard problems in a niche? • Knowledge maintenance system • Control of niches to be explored Innovation
Reputation GainChallenging (C) Gain for A (A supporting), Loss for A (B discounting)
Plan • Why is it relevant, useful? • Larger context: Open Innovation, Wikinomics • Applications: Netflix in the small, teaching • What is it? • What is new? • Map problem domain to “second life”, find best solution there and map it back to real life. • What do we improve: benefits of SCG • How to use SCG • Disadvantages • Experience with current implementation • Related work • Detailed example • Conclusions Innovation
How to use SCG(X) • ABB needs new ideas about how to solve optimization problems in domain X. • Define hypothesis language for X • X-problems • hypotheses, includes protocol • Submit hypothesis language definition to SCG server. Innovation
How to use SCG(X) • Offer prize money for winner with conditions, e.g., performance must be at least 10% higher as performance of agent XY that ABB 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 ABB. • The SCG server sends them the basic agent and the administrator for testing. Innovation
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 ABB. Innovation
Benefits for ABB 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. • Hypothesis language gives control! • The non-discounted hypotheses give hints about new X-specific knowledge. • A well-tested solver for X-problems that integrates the current algorithmic knowledge in field X. Innovation
Plan • Why is it relevant, useful? • Larger context: Open Innovation, Wikinomics • Applications: Netflix in the small, teaching • What is it? • What is new? • Map problem domain to “second life”, find best solution there and map it back to real life. • What do we improve: benefits of SCG • How to use SCG • Disadvantages • Experience with current implementation • Related work • Detailed example • Conclusions Innovation
Disadvantages of SCG • The game is addictive. After Bob having spent 4 hours to fix his agent 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 • watching over the admin Innovation
How to compensatefor 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” competition to find vulnerabilities in administrator. • both generic as well as X-specific vulnerabilities. Innovation
GIGO: Garbage in / Garbage out • If all agents are weak, no useful solver created. • WEAK against STRONG: • STRONG accepts a hypothesis that is not discountable but WEAK cannot support it. Correct knowledge might be discounted. • STRONG strengthens a hypothesis too much that it becomes discountable, but WEAK cannot discount it. Incorrect knowledge might be supported • STRONG is discouraged to exploit WEAK by game rules Innovation
Plan • Why is it relevant, useful? • Larger context: Open Innovation, Wikinomics • Applications: Netflix in the small, teaching • What is it? • What is new? • Map problem domain to “second life”, find best solution there and map it back to real life. • What do we improve: benefits of SCG • How to use SCG • Disadvantages • Experience with current implementation • Related work • Detailed example • Conclusions Innovation
Experience • Used for 3 years in undergraduate Software Development course. Prerequisites: 2 semesters of Introductory Programming, Object-Oriented Design, Discrete Structures, Theory of Computation. • Collect and integrate knowledge from prerequisite courses, lectures, and literature. • Teach it to the agent. • 30% of grade is allocated for agent performance in weekly competitions. Innovation
Mechanics of using current implementation • We define X = MAX-CSP. • We produce administrator and baby agent for X at beginning of course. • Game flow: • Agents register with administrator • After deadline, administrator tells agents when it is their turn (1 minute) sending them all currently proposed hypotheses • After 1 minute, agent sends back transactions. Innovation
Mechanics of using current implementation • 3 competitions per week. Last about 12 hours each. 75% of competitions count towards grade. 1 competition: attack the administrator. Innovation
Experience MAX-CSP • MAX-CSP Problem Decompositions • T-Ball (one relation), Softball (several relations, one implication tree), Baseball (several relations). • ALL, SECRET Innovation
Stages for SECRET T-Ball • MAXCUT • R(x,y)= x!=y • fair coin ½ • maximally biased coin ½ • semi-definite programming / eigenvalue minimization 0.878 Innovation
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 Innovation
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 • … Innovation
How to model a hypothesis • A problem space. • A discounting predicate on the problem space. • A protocol to set the predicate through alternating “moves” (decisions) by Alice and Bob. If the predicate becomes true, Alice wins. Innovation
How to model a hypothesis • Proposing and challenging a hypotheses is risky: your opponent has much freedom to choose its decisions within the game rules. • Alternating quantifiers. • Replace “exists” by agent algorithm kept by administrator. Innovation