Read without ads and support Scribd by becoming a Scribd Premium Reader.
 
 
1
Peterson’s algorithm in a multi agent database system
Vikram Goenkavikramg@students.cs.mu.oz.auResearch Paper for 433-481
Knowledge representation and reasoning
July 2, 2003
Abstract
Distributed database systems are a common thing in today’s wired world.These systems have the limitation of using a centralized knowledge basethough. This paper suggests a model for distributing this knowledge over amulti agent setting, where knowledge is distributed and embodied amongmultiple agents.Data concurrency and consistency are critical in such multi-user databasesystems. Thus, I go on to propose a simple yet efficient model for implementing concurrency in such a system, while maintaining mutualexclusion to ensure data consistency.
Keywords
Peterson’s algorithm, database, BDI agents
 
- 2 -
1. Introduction
“Distributed systems are everywhere.”[1] What makes a system distributed though? Such systemsallow their applications to run over several processors to benefit from the speed-ups of parallelcomputing. Distributed systems are also characterized by their ability to provide increased scalability,failure handling, concurrency and security.A limitation of such systems however, is the need for knowledge to be centralized. Take distributeddatabase systems for example, most leading vendors, IBM and Oracle included provide users withdistributed versions of their systems. A common feature with all such systems however, is a centralizedarbitrator or knowledge management software known as the
 Distributed Database Management System(D-DBMS)
.Figure 1 adapted from [3] gives us a clearer picture of this setup.
Figure 1:
Distributed database environment 
Such a system uses its centralized command structure to maintain concurrency and consistency in amulti-user environment. Each node can function individually, but in order to communicate with another node it must route its communication through the D-DBMS.Distributing not only the computation and functionality, but also distributing knowledge in such asystem is what we discuss in the paper. A model for a multi-agent DBMS based on the BDI model of agency is proposed, where knowledge is distributed and embodied among multiple agents. Figure 2illustrates this idea.
N
ODE
A N
ODE
B N
ODE
C
DBMS
Database
 
DBMS
Database
DBMS
Database
 
D
ISTRIBUTED
DBMS(D-DBMS)
Globalschema
 
 
- 3 -
Figure 2:
Multi-agent DBMS (MAD)
The diagram shows the system being modelled, which is a collection of agents, each possessing its owndatabase (DB) and database management system (DBMS). A communication medium is shared by theagents to facilitate communication and data sharing.
2. Background
“Autonomous execution is central to agency.”[2] Thus, it is important for each agent in our system to possess its own DBMS which is autonomous in all respects. Dependency on a distributed DBMS inorder to gain access to data on another agent’s database would reduce the autonomy of these agents.The system being modelled is essentially a multi-agent environment where agents will each have localdata that is unique to environment and cannot be found on another agent. This also means that there isno replication of data unlike traditional
 synchronous
or 
asynchronous distributed databases
[3].Data will be partitioned vertically in our model. This means columns (parts of a table) will be placed onagents based on relevance. For example, a relation for a machine can be vertically partitioned so thatcolumns used primarily by the manufacturing department can be distributed to its computer, while therest of the columns can be distributed to the engineering department’s computer.In a multi-user database, multiple statements inside different transactions could attempt to update thesame data. This could lead to the data becoming inconsistent. This is undesirable, and commercialsystems use rather complex techniques to handle concurrent transactions. Another issue is determiningthe location of remote data.In a traditional setup these issues are handled by the different subsystems of a distributed DBMS whichsits on top of all the autonomous DBMS’s to manage remote or distributed transactions. In the absenceof such a piece of software, other means and algorithms must be thought of to handle the issuesmentioned above.The problem this paper will look into is that of concurrency control, a function which is handled by theconcurrency-control manager within the transaction management subsystem in a traditional DBMS [5].It is assumed that the agents already know where to find the data they need.A naïve concurrency-control manager could use a simple mutual exclusion algorithm like Peterson’s[7, 9]. I will in this paper attempt to adapt this algorithm to a multi-agent setting. This would involveadapting the standard two process algorithm to an
n
-process algorithm. In doing so, I will also improvethroughput by working on the busy-waiting characteristic of Peterson’s algorithm.
C
OMMUNICATION NETWORK
 DBMS
Database
 
DBMS
Database
DBMS
Database
 
A
GENT
A A
GENT
B A
GENT
C
Search History:
Searching...
Result 00 of 00
00 results for result for
  • p.
  • Notes
    Load more