| Riding the Media Bits | chiariglione.org | |||||||||||||||||
|
A World of Peers |
|
|||||||||||||||||
|
Last update: 2005/03/08 |
||||||||||||||||||
|
|
||||||||||||||||||
| Humans talk to humans. Why should machines not talk to machines (intelligently)? | ||||||||||||||||||
|
|
||||||||||||||||||
| My
sudden, although not unplanned, departure from DAVIC gave me the opportunity
to realise some ideas I had been mulling over since some time. With MPEG
and DAVIC I had dealt with machines that process data in a sophisticated,
well-programmed way, but as intermediaries between humans or, at
most, between humans and machines. What if it were the machines that exchanged
and processed data between themselves autonomously - of course within the
purview set by a human - and only let the results of their actions be known?
That was a bold undertaking, that would possibly involve some new industries
beyond those I had become acquainted to working with, but I thought that
I had developed a good recipe for creating technical standards from which
new opportunities could emerge from unexpected directions.
A few days after the conclusion of the DAVIC meeting in Berlin I was already on holiday for Christmas and had advanced quite substantially in the development of the idea, as I wrote in a letter to some friends at the beginning of January 1996:
In the same letter I had already coined the name of the new organisation: Foundation for Intelligent Physical Agents (FIPA). In the months January to March 1996, documents were circulated to a selected number of individuals who contributed to the refinement of the basic ideas. Gradually the discussion focused on the idea of "agents", entities that reside in environments where they interpret "sensor" data that reflect events in the environment, process them and execute "motor" commands that produce effects in the environment. For several years the academic community had worked on the notion of "agents", i.e. software entities characterised by a number of features:
A pictorial representation of this concept is provided by a figure drawn by Abe Mamdani of Imperial College, the host of the first FIPA meeting.
A model for agents The letter A represents an agent. This can interact with the environment, constituted of software (possibly interfaced with hardware), other agents and humans. The different sources of information are "fused" and processed, possibly to further interact with the environment. Richard Nicol, whom I had worked with during several years in the COST 211 project where he was chairman of the Hardware Subgroup, in the H.100 series of CCITT Recommendations and in the first phases of the Okubo group, was at that time the deputy director of research at British Telecom Laboratories (BTL). In his organisation he had set up a sizeable research group working on agents and responded favourably to my proposal to host the first meeting. This was held at Imperial College in London in April 1996 and was attended by 35 people from 7 countries. The meeting agreed on the desirability of establishing an international organisation to develop generic agent standards based on the participation of all players in the field, the basic principles of generic agent standardisation, and a work plan calling for a first specification set of agent technologies achieved at the end of 1997. IBM hosted the second meeting at their TJ Watson Research Center in Yorktown, NY. The meeting was attended by 60 people and organised as a workshop with some 40 presentations dealing with "Input/Output primitives", "Agents", "Communication" and "Society of Agents". The meeting output was a framework document for FIPA activities, preliminary drafts of FIPA applications and requirements, and a list of agent technologies that were candidates for a 1997 specification. As a result of one of the Yorktown resolutions, in September five individuals met in Geneva in the office of Me Jean-Pierre Jacquemoud, the same who had handled the papers for the registration of DAVIC, to sign the statutes establishing FIPA as a not-for-profit association under Swiss Civil Law, much as had been done for DAVIC. According to the work plan, the third meeting was held in Tokyo in October and hosted by NHK. This was expected to produce a Call for Proposals and the fact that this did indeed happen in the short span of 5 work days (and nights) was a remarkable achievement. The submissions received from attendees were used to identify twelve different application areas of interest, out of which 4 were retained: Personal Assistant, Personal Travel Assistance, Audio-Visual Entertainment and Broadcasting, and Network Provisioning and Management. From the applications the list of agent technologies needed to support the four applications was identified. Then the list of technologies was restricted to those for which specification in a year's time was deemed to be feasible. Finally, the general shape of applications made possible by FIPA 97 was described. At the end of this long marathon, the CfP was drafted, approved and released. All this had been interesting, and personally rewarding because the same spirit that drives the work of MPEG had been recreated in an environment with people from a very different background. But that was just the preparation for the big match at the January meeting, hosted by CSELT in Turin. The 19 submissions received provided sufficient material to start the work, in particular it was possible to select a proposal for Agent Communication Language (ACL). Some more technologies were needed so a second CfP was issued. During a set of exciting one-week long meetings held at quarterly intervals and at alternating international locations, FIPA succeeded in developing the first series of specifications - called FIPA 97 - and ratifying them in October 1997 at the Munich meeting hosted by Siemens. The achievement of this first milestone had immediate responses from industry. Several companies began developing FIPA 97-conforming platforms or adapting their previous development to the FIPA 97 specification. Some of the platforms have been made open source and have acquired a large number of followers and users. At the January 1999 meeting in Seoul, FIPA conducted the first interoperability trials. Four companies, one of them being CSELT, with different hardware, operating systems, ORBs and languages, successfully tested interoperability and compatibility of their agent platforms by connecting them in a single LAN. The following year another set of specifications was developed and approved as FIPA 98 in October at the Durham, NC meeting hosted by IBM. One year later, at the October 1999 meeting in Kawasaki hosted by Hitachi, I was again confronted with a new concentration of commitments, particularly coming from SDMI, that demanded a large share of my time. I decided not to stand for re-election at the Board of Directors. Recently FIPA has successfully overcome its 5-year hurdle, the one that DAVIC was unable to overcome, and new people manage the association. Recently a major rewrite of past FIPA specifications has been completed and approved as FIPA2000. A new specification, started in April 1999, called Abstract Architecture has been developed of which the rewriting of FIPA 97 as FIPA 2000 is a "reification". I would like to spend a few words describing the content of the FIPA standard and how this can benefit the wide range of communities that were the original FIPA target. FIPA is essentially a communication standard that specifies how agents and Agent Platforms (AP) communicate between themselves. To achieve this there is a need to specify a model of an AP. Considering the figure below
Communicating agents and agent platforms one sees that an AP is composed of 4 entities: one or more agents, an Agent Management System (AMS), one or more Directory Facilitators (DF) and one or more Message Transport Systems (MTS). One should not confuse an AP with a single computing environment: it may very well be that two or more APs reside on the same computer or that the AP is distributed on a number of computers. According to FIPA, an agent is an active software entity designed to perform certain functions, e.g. interacting with the environment and communicating with other agents via the ACL. The AMS is the agent that supervises access to and use of the AP resources, maintains a directory of resident agents (so-called white pages) associating logical agent identifiers to state and address information, and handles the agents' life cycle. The DF is an agent providing yellow page services with matchmaking capabilities. So the major elements of the FIPA standard are: the AP specification, the MTS specification on how APs communicate and the ACL specification on how agents exchange messages between themselves. My group at CSELT made considerable investments in the implementation of FIPA specifications. The most visible result of the effort, driven by Fabio Bellifemine, a key figure in FIPA since the early meetings, has been the development of the Java Agent Development Environment (JADE), an open source project using the GNU Lesser General Public License (LGPL) license with a large community of users spanning the entire spectrum of communication industries, academia included. Started as an internal CSELT project, JADE was significantly enhanced thanks to the CEC-funded IST project LEAP. As a result of a huge collaborative effort, this project has provided a version of JADE suitable for memory-constrained devices such as the new generation cellular phones. JADE can be utilised in all environments where complex tasks, whose execution depends on a large number of unpredictable events, have to be carried out. This may be the case of a large factory where there is the need to optimise the process of delivering spare parts to warehouses, from there to the assembly lines, and the dispatching of products from there to warehouses and from there to customers. Another example is offered by the coordination of a large work force scattered on a geographical area, such as found in utilities. In the figure below
Work force coordination intervention needs are reported by customers to a call centre and the work force elements are field engineers supervised by a team manager. Agents located on mobile devices retrieve jobs and trade jobs and shifts, but also receive guidance from a route planning system and retrieve documentation. Instead of the tedious task of allocating jobs, the team manager's role then becomes one of applying policies and checking progress. What JADE enables is a straightforward implementation of Peer-to-Peer (P2P) communication. The client-server communication paradigm assumes that intelligence and resources are concentrated in the server which is just reactive to the requests of the clients, while the client has little intelligence and resources but takes the initiative to request services from the server. The P2P reverses the client-server paradigm by making the peer capable of playing both roles. This last case allows me to depict a possible, but quite realistic scenario, in which JADE lets a set of agents resident in (multiple) mobile communication devices transform the mobile device into the user's alter ego. Today this cannot be in spite of growing processing capability, especially because these devices are and will likely remain constrained by very limited input/output real estate. In the figure below
the agent possesses domain knowledge, learns from the user by examples, observes and learns how the user interacts with the device and can even request advice from its peers. JADE allows the easy creation of communities driven by the deep understanding that personal agents can build on their masters by observing their actions. Gone are the days when my alter ego was out of my control and in the hands of some SP. A key technology to practically implement this paradigm is clearly the ability to learn from user actions. |
||||||||||||||||||
|
|
||||||||||||||||||
|
|
||||||||||||||||||
|
Copyright © 2003 chiariglione.org |
||||||||||||||||||