This paper explains the building of robust software using multiagent reputation. One of the major goals of software engineering is to achieve robust software. Our hypothesis is that robustness can be increased through redundancy. We achieve redundancy by using agents, with each agent wrapping a different algorithm with similar functionality. The agents build trust in each other using reinforcement learning. Two types of reputation management are simulated: one in which the reputations of all agents are maintained centrally and a second, which is distributed, where an agent maintains locally the reputations of the agents it knows and each agent can have its own evaluation of its known agents' performances. We simulated and compared two ways of achieving distributed reputation management. A probabilistic function is used as a preprocessing technique for selecting a set of agents based on reinforcement values of the agents. The values are obtained based on the correctness of the results the agent produces in performing the task it is given. Voting is used as a postprocessing technique for judging the correctness of the output generated by the agents.
['Rajesh Turlapati', 'Michael N. Huhns']
Multiagent reputation management to achieve robust software using redundancy