Presentation is loading. Please wait.

Presentation is loading. Please wait.

Software Development using virtual scientific communities of constructively egoistic agents Karl Lieberherr 1SCG-SP20103/19/2016.

Similar presentations


Presentation on theme: "Software Development using virtual scientific communities of constructively egoistic agents Karl Lieberherr 1SCG-SP20103/19/2016."— Presentation transcript:

1 Software Development using virtual scientific communities of constructively egoistic agents Karl Lieberherr 1SCG-SP20103/19/2016

2 Problem Solving Software for computationally hard problems: examples Given a transportation task, find the optimal way of carrying it out. Given an employment market, find the optimal assignment of workers to companies. Given a Boolean formula, is it satisfiable? Given a Boolean formula in conjunctive normal form, find an assignment that maximizes the fraction of satisfied clauses. 2SCG-SP20103/19/2016

3 A new use of computers Design a virtual scientific community SCG(X) of artificial organisms (agents) that are developed by humans. X is a problem solving domain (optimization problems, decision problems). Purpose of SCG(X): Develop good algorithms and useful knowledge about a problem solving domain X. The best virtual scientist has the best algorithm and the best knowledge compared to all the other agents. 3SCG-SP20103/19/2016

4 Traditional Approach Human Developers Develop new software for problem solving domain X Static Evaluation. No competition. human1human2 Testing unit testing integration testing Benchmark is used to evaluate software human3human4 Users Requirements for X 4SCG-SP20103/19/2016

5 Why Software Development through a virtual scientific community? Human Developers Develop new software for problem solving domain X SCG(X) Erika-Patrick-agent winning-agent Evaluates fairly, frequently, constructively and dynamically. Drives innovation. Challenges humans. Agents point humans to what needs attention in the software. human1human2 ErikaPatrick Benchmark is used to evaluate software Users Requirements for X 5SCG-SP20103/19/2016

6 Erika-Patrick Agent Surrogate of combined knowledge of Erika and Patrick successfully transferred to agent. Transfer knowledge by programming. 6SCG-SP20103/19/2016

7 Agent design How to design an artificial organism? – Has a basic need: maximize reputation. – Has a rhythm. Every round the same activity happens. – Interacts with other agents by opposing and proposing hypotheses. Opposing a hypothesis might create a big win in reputation but it also makes the agent vulnerable to a loss. There is uncertainty when opposing or proposing hypotheses. 7SCG-SP20103/19/2016


Download ppt "Software Development using virtual scientific communities of constructively egoistic agents Karl Lieberherr 1SCG-SP20103/19/2016."

Similar presentations


Ads by Google