aamas-2006 tandem design method (poster format)
TRANSCRIPT
The TANDEM Design MethodPaper #112: Steve Goschnick, Sandrine Balbo, Leon Sterling and Christine Sun
Task 1 – Movie-oriented search• Find all recently released movies• Find all movies within a genre• Find which movies feature chosen Star• Find all movies by a chosen Director
Task 2 – Cinema-oriented search
• Show movies playing in a cinema• Show cinemas playing a movie• What type of theatre is movie in
Task 3 – Location-oriented search• What cinemas are within a radius• What distance is a cinema• Show closest cinema with a movie
Task 4 - Seat selection & allocation
• Find a seat’s coordinates in theatre plan• Access availability of a seat• Book a selected seat • Get the cost for a ticket type• Pay for a booking of seat/s
Example Application: The Cinema-Movie Problem
The client – a movie cinema owner – wants a system accessible by movie-going customers via the Internet, one that will allow users of smart hand-held devices, to search for specific movie details, for all oftheir cinema complexes, ultimately leading to the booking of cinema tickets.
A Task Analysis
Data Normalisation
An enhancedAware Ego Agentvia Role C agent
R ole ispartic ipatingat a lesser
priority thanother activities
R ecus ive levelsof Shadowboard
sub-agents
Social World 1 - facilitated by ShadowPlaces
R ole D
R o le CR o le B
R o le A
R oles o f userpa rtic ipa ting
in o ther S ocia lW orlds
Four ro lesw ith in
th is Socia lW orld
Individual Knowledge Management
Impromptu Intelligent InteractionImpromptu Web Service Orchestration
Respect for our most under-valued asset - our attention
The DigitalFriend - - the Human-Centred MASAppropriate levels of filtering of messages.
In this case, differentiatedby the user Role that the
messaging sub-agent is serving.
Source of Figure: Goschnick, S.B & Graham, C. (2005) Journal of UniversalAccess for the Information Society, 4(3).
The user’s Role Hierarchy, expressed
using the ShadowBoardMethodology, a reflection
of the social worlds that theindividual participates in.
Role hierarchy has functionalityin the implemented software,
as well as, in the methodology.
Alerts and notifications ofnewly arrived information,or newly computed data,
can attract the user’s attention, or not,
with a range of visual andaudio cues via ~600 differententities displayed at the one
time (no limit on total #).
The ShadowBoard Agent Architecture is being extended,
into a multiple Human/Agent model, where each one
has the sophisticatedShadowBoard agent model,
em/powering it. An accompanying
methodology is also being developed.
Multiple, individual Web services,together with other sub-agents/agent-types,
including SQL/DB Lookup Agents, canbe combined into new user-envisaged
functionality with CoLoG. All without the need forservice agreements and long development cycles,
and built by the end-users themselves.
Integrated Knowledge Tree, based on an individual’s own ontology.
Web Services configuredand tested within user-friendly
GUI interfaces.Support for multiple Social Worldsthat each individual engages in,and moves through, during their
daily life.
Speech-Acts in the formof an agent communication
language (ACL), enable networksof work-flow, between agents
and the human user/s,that share the Knowledge Tree,
as a semantic storagearea of data, information and
other resources.
Identify LogicFlow Lines
e.g. All entities touched by Flow Line #2
Then, in order to divide the ER diagram into appropriate sub-areas, which will in
turn be represented by sub-agents (often sourced via external web services), we
identify logic flow lines. These lines are chartered by taking the 4 high level tasks identified in the Task Analysis, and then
joining each of the entities in the ER diagram which are involved in each
task - without breaking the line.
We now set about designing 4 sub-agents which will
encompasses the 4 groupsof sub-tasks, hereafter called:
Movie AgentCinema AgentLocation Agent
Ticket Agent
Creating well-formed Logic Rules. We include one logic rule for each of the 4 sub-agents. For each rule, we include all the terms necessary to answer all of our sub-tasks as identified in the Task Analysis, within the 4 appropriate head-of-the-rule predicates:cinemaAssistant(CinemaName, Location, TheatreType, MovieTitle, GenreName, Rating, Date, StartTime)movieAssistant(MovieTitle, Rating, GenreName, RunningTime, DvdRelease, RoleName, FirstName, Surname)localityAssistant(Distance, Radius, Location, TownSuburb, Postcode, CinemaName)seatSelection(CinemaName, Location, TheatreID, ImageMap, MovieTitle, Date, StartTime, RowNumber, SeatNumber, CoordX,
CoordY, allocated)
A customer Query like, “What movies feature Sharon Stone?” can be answered via a logic language such as thosebuilt into several existing multi-agent system (MAS), using the movieAssistant predicate:movieAssistant(MovieTitle, Rating, GenreName, RunTime, DvdRelease, RoleName, FirstName, Surname)As follows:movieAssistant(_,_,_,_,_,star, sharon, stone);Beyond Patterns and ‘experienced logic programming’ there are surprisingly few methodologies fordevising good logic programs. That is why we devised TANDEM – to devised well-formed logic rules
The correct predicates in the rule body are:movie(MovieID, MovieTitle, Rating, RunningTime, Website, ReleaseDate, Trailer, DvdRelease, Synopsys) ANDmoviePeople(MoviePersonID, Firstname, Secondname, Surname, Nationality) ANDmovieGenre(MovieID, GenreName) ANDgenre(GenreName, GenreDescription) ANDcastCrew(MoviePersonID, MovieID, RoleName) ANDrole(RoleName, Description); which are taken from a reading of the entity/class diagramabove, choosing those touched directly by the logic flow line.
Implemented using the DigitalFriend MAS…