Personal-assistant system.
The invention relates to a personal-assistant system within a computer system. In addition, the invention relates to a method for providing a personal-assistant system within a computer system.
Such systems and methods are generally known. An example thereof is Microsoft's Firefly system. In said system, a user may have an agent - arranged as a computer program within a computer network - carry out an order to compose a list having musical compact discs which are interesting to the user. The agent is arranged to carry out said task autonomously, the agent being capable of shifting within the computer network and making contact with other agents who are active within the system. From the contact with other agents, inter alia, the agent may obtain information to complete his task.
With such agent systems, there are associated a number of drawbacks . It is detrimental that such agent systems result in a heavy burden on the network and the computers of the system. A cause thereof is that the agents are very extensive and complex computer programs, which is required for them to be able to carry out their task, to be able to move through the computer network, and to make contact with other agents . The communication between the agents themselves, which is required for an optimum functioning of the agents, is another cause of the heavy burden on the computer network .
A further, and major, drawback is that, due to the great freedom and independence of the agents within such an agent system, it is hardly feasible to control the contacts made by the agents with third parties. As a result, an agent is capable of inadvertently providing confidential information to, or copying incorrect information from, an unreliable third party.
The object of the invention is to provide a system which eliminates said problems. To this end, according to the invention a system of the type described above is characterised by a personal- assistant environment, comprising a plurality of programs operating as a personal assistant, each personal assistant being arranged to communicate with a single user, at any rate one personal-service- agent environment, comprising a plurality of programs operating as personal-service agents, each personal-service agent being arranged for carrying out at least one specific service, and each personal- service agent being in communicative connection with a single associated personal assistant and a processing-part environment, comprising at least one processing part, the at least one processing part being arranged for processing data from at least two personal- service agents .
The invention also provides for a method of the type described above, characterised by the steps of initiating a program operating as a personal assistant for each respective user, initiating at least one program operating as a personal-service agent for each respective personal assistant, providing a communicative connection between a personal assistant and its associated at least one personal-service agent, and providing a communicative connection between the user and his personal assistant. Since the personal-agent system according to the invention provides for a personal assistent for each user and associated personal-service agents, the user communicating directly only with his personal assistant, who subsequently passes on orders from the user to the personal-service agent in question, there is obtained a very efficient personal-agent system.
In addition, problems regarding unreliable third parties are avoided since the personal assistant and the personal-service agents of a user operate exclusively for their own user. Since interaction with agents of third parties does not take place directly, but by way of a neutral processing part, it is avoided that possible confidential information is inadvertently exchanged.
By constructing the system according to the invention in such a manner that the parts in question are self-learning with respect to user behaviour and wishes, the interactions with the user are decreased so that a further reduction of the burden on the system is obtained. The adjustment to the user of the parts has the additional favourable effect that the quality of the service to the user increases .
The invention will be further clarified in the following description of an exemplary embodiment of the invention, with reference to the drawing enclosed.
The single figure schematically shows an example of a system according to the invention.
The figure shows a personal-agent system 1 according to the invention. System 1 is provided with a receptor section 2 for setting up a communicative connection with users, a central control unit 6 for distributing information flows, and an environment 10 of personal assistants, two environments 20, 30 having personal-service agents, and an environment 40 for processing parts. The personal-assistant environment 10 of the system 1 in this example is provided with four personal assistants 11, 12, 13 and 14. Each personal assistant is allotted to a single user who may set up a connection exclusively with his own personal assistant.
For a user, his own personal assistant is the only means by which he may utilise the system 1. The personal assistants are therefore arranged to communicate with their own user, e.g. , to receive orders or to pass on information obtained to the user. In addition, the personal assistant is arranged for communication with personal-service agents to be discussed below, e.g., for passing on orders to, or receiving results from, the personal-service agents. In this example, there are two personal-service-agent environments present, arranged as a secretary environment 20 having personal-secretary agents in the form of secretaries 21, 22, 23 and, as a personal-travelling-agent environment having travelling agents 31, 32 and 34. Personal-service agents, such as the travelling agents and secretaries referred to above, operate exclusively for a single user. To achieve this, the personal-service agents are connected to the personal assistant of their own user. Having said this, the invention is not limited to application with two service- agent environments; any number of service-agent environments may be chosen.
The processing-part environment 40 is provided with a processing part in the form of an appointment maker 41. Said appointment maker 41 is arranged for processing, based on data as supplied by a service agent such as, e.g., a secretary and, if necessary, making contact with other service agents. In this connection, the data of the service agents is treated confidentially. The appointment maker 41 is referred to by way of example of a processing part, and the invention is also applicable with other processing parts .
A user is always provided with a personal assistant, since the communication with the personal-assistant system takes place by way of the personal assistant. In addition, each user is provided with at least a personal-service agent, but the user does have the choice of the service agent he prefers to use. Since the user chooses the functions required by him, there occur no unused elements in the system. As a result, the system is kept as small as possible, and therefore operates efficiently.
The personal assistant 11 disposes of two personal-service agents, i.e., a secretary 21 and a travelling agent 31. The secretary 21 is implemented in the form of an independently operating program which is especially arranged for carrying out specific tasks, in this case carrying out secretarial tasks such as, e.g., managing the agenda of the user and making appointments with third parties. The travelling agent 31 is also implemented in the form of an independently operating program which is especially arranged for carrying out specific tasks, in this case, by way of example, planning a travelling schedule.
Since the user is permitted to choose which tasks he wants to have the personal-assistant system carry out, not all possible service agents need be allotted to a personal assistant. Thus, the personal assistant 13 is only provided with a secretary 23, and the personal assistant 14 is only provided with a travelling agent 34. Because in the system according to the invention, the assistants and agents are capable only of communicating with predetermined parties according to fixed rules, therewith determining a social hierarchy, the reliability of the system is guaranteed. Because the hierarchy also prevents unnecessary communication, the burden on the system is reduced. Therewith, a personal-assistant system is obtained which is reliable, purposeful and efficient to users .
System 1 is implemented in the form of a computer system, including a computer network. The environments 10, 20, 30 and 40 may each wholly or partly consist of physical and logical environments. In this connection, a physical environment is determined by a single computer, and a logical environment may comprise several computers, the boundaries of the environment being determined by participants' data, such as, e.g., an address list which may be stored in, e.g., the central control unit 6. The communication takes place by way of communicative connections comprising all options for transferring data, both unidirectional and bidirectional connections, as well as permanent and temporary connections. In particular, there is deemed to be included exchange of data within networks, such as intranet. Internet, and the protocols required for the exchange of data within a computer network, and in particular relating to agent software.
In this embodiment, system 1 is arranged, by way of example, for four users. The invention may, however, be applied to other numbers of users. In this example, the users may make contact, by way of a personal computer 60, with a modem by way of a telephone line, with the receptor section 2. By way of a user interface of the personal computer 60, the users may pass on information to, and receive it from, system 1. The way of interaction, which is referred to here, of the user with the system 1 by way of the receptor section 2, is referred to here exclusively by way of example; the invention is also applicable with other ways of communication capable of being applied between a user and a computer system. Such ways are known, so that for briefness1 sake there is refrained from a detailed description.
The personal assistants 11, 12, 13 and 14, as well as the service agents 21, 22, 23, 31, 32 and 34 are implemented as independently operating programs such as , e.g., an agent . Such programs are generally known, so that for brief ess' sake there is refrained from a detailed description.
In operation, a first user makes contact, by way of a personal computer 60, with the receptor section 2 of the system 1. The receptor section 2 provides a communication channel to the central control unit 6 which, based on the identity of the first user, locates its associated personal assistant 11, and sets up a connection. In this example, the central control unit 6 is implemented with an address book with location data of all parts of the system 1. The various parts of the system are capable of obtaining, at the central control unit 6, the data required for making contact with another part . Based on the data present within the central control unit 6, it may decide whether or not to provide information to a part in question; as a result, the central control unit 6 protects the hierarchy within system 1. Therewith, it is also achieved that confidential data is not supplied to unreliable parties .
An example of a service to be rendered by the personal- assistant system according to the invention is making appointments. A first user then passes on to his assistant 11 that he wants to make an appointment with, e.g., a second and a third user on a point in time X and a location z. The assistant 11 passes on the information relating to the appointment to the secretary 21, who is also associated with the first user. The secretary 21 analyses the information and makes contact with a processing unit 41 operating as an appointment maker, with the instruction of making an appointment for the first, second and third users at the point in time between X and Y and location Z . The appointment maker 41 then makes contact with the secretaries 22 and 23 of the second and third users, respectively. Said secretaries 22 and 23 check whether the appointment in question is permitted to take place, based on the agenda of their user. Both secretaries 22 and 23 pass on their wishes relating to the time and place to the appointment maker 41, who subsequently, based on the wishes of all secretaries involved, determines the optimum appointment. In this connection, the location and time offering the best solution for all users are sought . For all those involved, the most acceptable point in time proves to be X1 and for the location Z'. Having said this, in another modification of the embodiment processing parts may also be subject to other criteria in processing data from service agents. In the present example, the wishes of a specific user might prevail over those of other users, e.g. , since said user is available only at, e.g., a specific number of points in time, or is bound to a specific location.
The appointment maker 41 passes on the information on the appointment determined by him on point in time X' and location Z' to the secretaries 21, 22 and 23, who note the appointment in the agenda of the user in question and notify the associated assistant 11, 12 and 13 of the appointment. When their user makes contact again, the assistants 11, 12 and 13 will notify the user of the appointment . The assistant 11, which has been notified of the information of the appointment in the meantime, now notifies the travelling agent 31 associated with it of the appointment with the instruction of drawing up a travelling schedule with which the user will arrive at the appointed location at the appointed time. The travelling agent 31 then draws up the required travelling schedule and passes it on to the assistant 11, who will pass on said schedule at a next contact with the user. In a modification of the embodiment of the invention, the personal-service agents of a user may directly exchange specified information, apart from the option referred to above of exchanging information by way of the personal assistant . In this connection, the service agents must be aware of each other's existence and options . A secretary of the travelling agent of a user might hear, e.g., what the travelling time between two locations amounts to, in order to be capable, e.g., of better managing the agenda of the user in this way. Since both agents operate exclusively for the same user, problems relating to confidential data are avoided. Due to said direct communication between the service agents, the burden on the system is reduced.
Although in this example there was assumed a central control unit 6, provided with an address book for regulating the social hierarchy within the system, other embodiments of such a control system are also applicable, such as, e.g., identification of agents by way of a password or key. There may also be applied a bulletin- board system. In a modification of the embodiment of the invention, the personal assistants are provided with a self-learning module which is arranged to learn from the interaction with the user and to adjust the behaviour of the assistants thereto. Such modules are formed by a computer program and are generally known. Since the personal assistant is capable of adjusting itself to the wishes of the user, the user receives a better service rendered by the personal assistants and, in doing so, the amount of communication is reduced, which further decreases the burden on the system.
In another modification of the embodiment of the invention, the personal-service agents are additionally provided with such a self-learning module, so that the service agents, too, achieve the advantages referred to above. In addition, it is possible here to have the personal assistant exchange learning information with the service agent in question in order thus to accelerate the learning process.
In a further modification of the embodiment, it is possible that the self-learning modules of personal assistants within an assistant environment exchange learning information in order thus to learn from other personal assistants. This may take place, e.g., by having the programs which constitute the assistants communicate among themselves. For this purpose, the user must expressly give his permission to his personal assistant in advance, and in this connection indicate that the assistant is permitted to gain contact with assistants of third parties and indicate which personal information the assistant may liberate to third parties . Furthermore, it is possible to indicate with which assistants the assistant of the user is permitted to communicate. Through this selective communication, it is prevented that confidential information of the user be inadvertently passed on, as a result of which the trust of the user in the assistant will increase. In this connection, the data traffic between the assistants is limited to the required amount, so that the system is not unnecessarily burdened. Such an exchange of learning information is also possible within an environment of service agents in the way described above. The implementation of the invention in a computer system may take place in various ways; the embodiment referred to in the example must be considered as being non-limitative. The program parts for the implementation of the elements of the invention may be distributed over a computer network, a program part, e.g., being distributed over several computers, or various parts being present in one and the same computer, or several parts of the same program utilising, e.g. , multi-threading.
In an exemplary embodiment of the invention, a personal assistant may be formed for a new user at the first instance of use of the personal-assistant system. This may be effected, e.g., by making a copy of a generic personal-assistant program, and then personalising said copy by, e.g., adding personal data of the user to the program. In the same way, the user may initiate the personal-service agents desired by him. The assistant with associated agents created in this manner may then, e.g. , be added to the central control unit and thereby be ratified.