WO2002025513A2 - Intelligent electronic personal assistant - Google Patents

Intelligent electronic personal assistant Download PDF

Info

Publication number
WO2002025513A2
WO2002025513A2 PCT/FR2001/002958 FR0102958W WO0225513A2 WO 2002025513 A2 WO2002025513 A2 WO 2002025513A2 FR 0102958 W FR0102958 W FR 0102958W WO 0225513 A2 WO0225513 A2 WO 0225513A2
Authority
WO
WIPO (PCT)
Prior art keywords
user
management
agents
data
information
Prior art date
Application number
PCT/FR2001/002958
Other languages
French (fr)
Other versions
WO2002025513A3 (en
Inventor
David Trechnievski
Original Assignee
David Trechnievski
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by David Trechnievski filed Critical David Trechnievski
Priority to EP01972192A priority Critical patent/EP1320822A2/en
Publication of WO2002025513A2 publication Critical patent/WO2002025513A2/en
Publication of WO2002025513A3 publication Critical patent/WO2002025513A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting

Definitions

  • the present invention describes an intelligent electronic personal assistant making it possible to assist a user in the management of his daily tasks from a plurality of places, for example, his personal accommodation, his office and his portable device.
  • This assistant is particularly interested in the problems posed by making appointments and managing the tasks of a user accessing heterogeneous information systems.
  • This assistant allows, among other things, to process professional and personal user data by using intelligent modules / agents to manage this data, with the aim of confidentiality and ease of management. So far, these different data exist in heterogeneous worlds that do not communicate with each other.
  • the university area interested in artificial intelligence is the most active concerning the automation of appointment scheduling without human intervention.
  • intelligent agents are used in order to make decisions in place of the actors or their representative.
  • the system in question here is not intended for making appointments without the user's prior consent, although this system may do so. It automates the process of making appointments with other players with their final agreement.
  • This assistant One of the goals of this assistant is to establish better management of the timetable and in particular of appointments. It also improves the quality of work and especially meetings. People today are often overworked and do not have enough time to do their jobs. Meetings are organized but often unfortunately remain insufficiently prepared to allow effective work. People therefore have to meet again to discuss the same subjects. These subjects are most of the time badly prepared for lack of information and time. This assistant also aims to increase the quality of the meetings by helping to organize the work. This assistant makes it possible to establish real economies of scale in a company.
  • Another purpose of this wizard is to create a hinge to allow users to manage their private and professional lives from a single system. The user therefore no longer needs to worry about managing private and professional data in parallel, fearing conflicts or trying to optimize the management of several work environments.
  • the system innovates with the use of an interface where it is possible to manage parameters of the type relative importance of the invitation, relative importance of the guest, start of meeting, duration, time slot using fuzzy logic, constraints and preferences on dates and times, subject, comment, authorization to be disturbed during the meeting, delegate in case of non-assistance and finally of the type of strategy to apply to get an appointment.
  • the material working environment • the communication environment (Internet, Intranet, GSM, UMTS, Bluetooth (registered trademark), various media such as computers permanently connected to an Intranet, the Internet, laptops, telephones, personal assistants, pagers occasionally connected to the networks mentioned above)
  • an intelligent agent is in fact a computer program transporting data and is capable of "reasoning" insofar as it was created for this purpose.
  • PASHA JJ Personal Assistant for Scheduling appointments, DF I diploma thesis, September 5, 1996, available on the Internet http://www.schmeier.de/work.htm
  • PASHA II Personal Assistant for Scheduling Appointments
  • This system allows to make appointments between participants taking into account their different constraints and preferences.
  • PASHA II offers an option to choose the strategy to be applied when requesting an appointment.
  • Each user has an agent communicating with his calendar, a manager of material resources and with other agents. no separation between professional and personal data. There is no coordinating agent managing a set of agents dedicated to other tasks.
  • PASHA II no user profile taking into account the different locations of other data. They do not consider the query principle with fuzzy logic, or even a global system allowing agents to search the Internet for information concerning a meeting.
  • Another parameter not taken into account by PASHA II is that only the CM Calendar Manager database developed by Sun Microsystems (registered trademark) is taken into account, there is no multi-source system and therefore no agents serving bridge between the different systems. The users must all have the same system and are therefore limited.
  • PASHA H does not work on portable systems and does not take into account the different heterogeneous worlds in which users evolve.
  • Microsoft Outlook or Lotus Notes do not offer ways to prioritize certain tasks. Nor do they have intelligent agents who automate the tasks done today manually.
  • Microsoft Outlook software it is possible to publish data on an Internet page and make it accessible by communicating the address of the server on which the publication of users' availability is located. It is thus possible to know the schedule of a user if this one carried out the steps for. This software is therefore not suitable for assisting the user, but it does provide the basic building blocks on which our system is based.
  • the aim of intelligent agents is to suppress intermediaries such as secretaries, and this is undoubtedly the main obstacle to the development of the systems using them.
  • the present invention is based on other uses of agents because we believe that intelligent agents are intended to assist men i.e. to do all the work that can be automated and to leave decision-making to man.
  • a standard is being developed by the Internet Society for using data from one application to another.
  • iCalendar Internet Calendaring and Scheduling Core Object Specification (iCalendar) (RFC 2445), iCalendar Transport Independent Interoperability Protocol (iTIP): Scheduling Events, Busy Time, To-dos and Journal Entries (RFC 2446) , iCalendar Message based interoperability Protocol (iMEP) (RFC 2447), Calendar attributes for vCard and LDAP (RFC 2739), Calendar Access Protocol (CAP) (draft-ietf-calsch-cap), Implementors' Guide to Internet Calendaring (draft- ietf- calsch-imp-guide), Fixing the iCalendar Registration Process (draft-stracke-calsch-ical-reviewer), CAP Realtime iTIP based Scheduling Profile (CRISP) (draft-stracke-calsch-crisp).
  • CRISP Realtime iT
  • Patent application EP0917077 entitled “Wireless remote synchronization of data between PC and PDA”, offers a solution to connect devices to each other and to the network so that intelligent agents can obtain information to implement the system.
  • Patent application EP0921670 entitled “Electronic Scheduling devices”, allows you to make appointments remotely using your phone. This system uses voicemail and e-mail.
  • Patent application EP0697671 entitled “Electronic secretary System” can also be used to show that a telephone interface representing a secretary is an element that the telephone call management agent will use in our system.
  • Patent application WO99 / 21101 allowing to connect or disconnect a portable telephone according to the importance of the caller during a meeting and this by using a graphical user interface.
  • the patent US6065138 presents a system listening to the user and the patent US5579238 presents a system for studying the force with which a user hits the keyboard.
  • the intelligent agents responsible for managing the user's work environment to find out if he has a camera for video conferencing, a microphone to interface with a voice recognition module and other devices, it will be possible to find information in the document entitled "Intelligent multi-modal Systems" written by KC Tsui et al, published in BT technical journal vol 16 No3 July 1998.
  • agents for making appointments some information is available on the following site: http://www.es.
  • Multimodal user interfaces in the open agent architecture written by Douglas B Moran et al, and published on January 6, 1997 proposes the global principle of using intelligent agents with PDAs to manage its calendar.
  • the user can interact with other users but in fact he keeps his own data in a single database.
  • JJ does not distinguish between his personal database and his professional database. JJ therefore has no confidentiality from the point of view of an external user.
  • a user profile is never taken into account to specify where to get the data and the type of agent to use to accomplish the task.
  • Figure 1 shows the system as a whole, the different modules or agents that make up the entire system as well as the different environments in which the system is designed to operate.
  • FIG. 2 represents more particularly examples of environments in which the system assists the users.
  • Figure 3 shows the different steps used to make an appointment.
  • Figure 4 shows the approach taken by the intelligent electronic personal assistant to solve the task of making appointments.
  • Figure 5 shows the interface for making appointments.
  • Figure 6 shows the graphical user interface of the intelligent electronic personal assistant.
  • Figure 1 shows the concept of the invention highlighted. The following concept is based on the interaction between intelligent agents dedicated to solving the tasks of users working in heterogeneous environments.
  • the modules or intelligent agents are represented by the elements 1000 to 1017.
  • the different 1000-1017 modules can interact with different networks: intranet 1600, GSM 1500 RTC 1400, UMTS 1300 in future years, Internet 1200 and other 1100 networks like palmnet (registered trademark) or pager network or the ISDN network which is not mentioned in FIG.
  • XML is not yet implemented for data exchanges between the various systems mentioned above.
  • Microsoft uses OLE for example.
  • the data registered in a proprietary database is not directly accessible.
  • a user can have several differentiated databases on several different types of platforms as we have just presented. For example, the user can have a professional base 1611 on his workstation 1610, and a personal base 1621 on his PDA 1620.
  • the professional base can be synchronized on the network (Intranet or Internet) automatically, and accessible to all.
  • the personal database on the other hand, is simply replicated regularly on the network and will only be accessible to him alone and to his personal agent. It may also not be replicated at all. It is of course necessary that the system can access the information contained in both professional and personal databases, or at least indications relating to the content of these databases.
  • a user profile 1005 is created. This profile 1005 is different from the profile 1004 which aims to learn the behavior of the user.
  • This first profile 1005 contains at least the data essential for the functioning of the system:
  • profile 1004 may also include other information which may be of interest for improving the performance, efficiency, flexibility and ergonomics of the system. For example, we can very well consider integrating the information on the user's working time slots. The system can therefore dispense with consulting the personal database during working hours, if the user has defined his personal database as being only accessible for appointments outside working hours. We can also integrate a list of people (contacts) and a series of weights as to the relative importance of these people and the behavior of the system when faced with an urgent request for an appointment. you from one of these. You can also program the system to respond to appointment requests automatically based on the requester. All this information is shared between the two types of profiles 1004 and 1005.
  • an agent is a process in a multitasking environment. This agent has different states. These states change based on interaction with other agents.
  • the agent is programmed to have a goal based on the profile of its user. It is not possible from the outside to know the behavior of an agent.
  • the agents exchange messages with each other.
  • the agents representative of each user are attentive to any change in the databases to which modifications take place.
  • the main program runs on a 1230 and / or 1640 server.
  • the system can also run on each workstation 1210, 1220, 1610, 1630. Some modules can run on servers and others on workstations.
  • the coordinating agent 1000 From the resource profile, it is possible for the coordinating agent 1000 to know the places where he must fetch the data and possibly the resources such as intelligent agents to perform the various tasks which he has to solve.
  • the coordinating agent 1000 is located on the internal server of a company 1640, on an Internet server 1230 or even on a mobile device of the PDA 1620 type. This coordinating agent 1000 communicates with a set of intelligent agents and a user profile 1005 previously mentioned.
  • This coordinating agent 1000 exchanges with other agents 1001-1017 information in a standard data exchange format, for example of XML type, coordinating and managing: The detection and the type of connection that the user uses, module 1001 calendars and making appointments, module 1002 contacts, module 1003 e-mails, module 1012 telephone calls, module 1013 faxes, module 1011 tasks to be carried out, module 1008 memos, implemented in the agenda module 1002 information retrieval on the Internet, module 1016 information retrieval on the intranet, module 1010 user performance level , module 1009 material resources of the type of rooms to be allocated for a meeting, module 1006 material resources of the type of office equipment required (projector or other), module 1006 non-material resources such as ordering refreshments from a specialized establishment , module 1018 (not shown in FIG.
  • module 1017 the purchases of the user in the event of online purchases on the Internet. work environment peripherals
  • module 1007 (this can also be a separate module) the communication environment (Internet, Intranet, GSM, UMTS, Palmnet, Bluetooth, pagers and others), module 1007 user profiles for behavior and preferences, module 1004 technical profiles for resource uses such as databases or previously mentioned modules, module 1005 user knowledge management, module 1014 the appearance of the graphical user window, module 1015
  • connection detection agent and its type
  • An agent is used to detect if a user is connected to the system, thereby communicating to the coordinating agent the authorization to transmit messages intended for the latter.
  • This module also makes it possible to detect the type of connection such as the connection from a PDA, a workstation on the Intranet or the Internet, his personal workstation connected to the Intranet or to the Internet or from a phone. Knowing the type of connection allows the coordinating agent to transmit the messages in an appropriate form optimizing the reception of data depending on the medium. This is very useful when you are connected with a PDA for example and the capacities of the machine are limited. Naturally, it is not very useful to transmit information which cannot be well interpreted by the user. This therefore makes it possible to communicate with the user in an appropriate manner.
  • This agent is used to manage the activations of other agents to obtain responses to the requests requested. Its role is very special. It is programmed in Java (registered trademark) although it is not a unique solution from the moment when another programming language manages processes in parallel. Today the various agents are programmed in Java because Java is portable and allows the execution of processes in parallel.
  • This agent uses a database which stores user profiles such as the location of data on possible calendars and other resources seen previously. The coordinating agent is the one who calls other agents to obtain the data enabling him to manage the entire system.
  • XI is the bridge between all the modules and the different architectures. This agent also accesses data on the user and informs other modules such as the one managing e-mails.
  • the coordinating agent requests requests of the style: searches for information on this appointment ..., then the search agent executes the search, having as parameter what the coordinating agent passed him. The response of this search agent is then given and the coordinating agent determines whether it is necessary to initiate an appointment for an interval of time sufficient to allow the user time to read the information collected.
  • this agent will employ another agent who will determine according to the least significant stress moments calculated in relation to the activity of the user the right time to reserve time for reading and possibly responding to emails. This function will be defined later. The same goes for telephone calls that must be listened to and that are in the voice mailbox. This agent also allows you to manage the level of interruption that the user is ready to accept during an appointment or during a task. that it performs on a predefined time slot. This agent also makes it possible to manage in the background the interactions with memos themselves managed in the agenda management and appointment scheduling module. These memos can relate to user-defined durations and concern certain working environments and not others.
  • the coordinating agent also calls on a database containing the actions to be carried out to carry out the tasks requested by the user. For example if a user wants to organize a meal with another user then the list will contain the following information, for example:
  • the agent managing the activities of the user will take care of performing the tasks related to the list provided by the coordinating agent. It will be possible to organize a reservation by Internet the day when the infrastructure will allow it.
  • the same suggestion can be taken into account for a user wishing to go on vacation or weekend somewhere and require information on a certain destination, on certain travel agencies, on their offers. It is also necessary to be able to contact the agendas of people who may be interested, such as the partner's agenda in the life of the user or that of the school to find out if there are outings already offered for children during these periods.
  • the user profile is indeed one of the only solutions for knowing where to get personal data relating to the user.
  • the coordinating agent can also be used to send requests to interact with the agent managing the user's activities, for example, the reservation of means of transport. It can also give for example the state of traffic at a given time and at a given location.
  • the main role of the coordinating agent is to issue requests and evaluate the responses to make decisions on the actions to be taken.
  • the coordinating agent can also be used to compare offers. It can be used to program videoconferences and to configure them.
  • This agent also serves to specify to a secretary that 200 photocopies of a special document must be made for the scheduled appointment at a given time. This officer is responsible for updating the secretary's to-do list. Automatically, refreshments can be ordered for this meeting according to the tastes of the participants. • Using the agent to manage the scheduling of appointments
  • the intelligent electronic personal assistant will negotiate with other personal agents or other agents representative of other personal assistants intelligent electronics of the people in question and will initiate a negotiation process taking into account various constraints such as the relative importance of the appointment taker compared to the different people contacted, relative priorities of the time slot, place, object of the meeting, relative priorities of material resources such as the availability of rooms to organize the meeting, the availability of the material to be assigned to this meeting.
  • the agents questioned for making appointments have certain characteristics, such as managing entries using fuzzy logic.
  • Another interesting parameter of the system is that it keeps all data concerning users private. It is the agents among themselves who, after negotiation, will arrive at an arrangement.
  • agents can interface with different systems accessing different databases.
  • the agents are chosen from an agent database having agents intended to operate under different operating systems.
  • intelligent agents as an aid to users or as an aid to secretaries representing people like managers of companies or people with an overloaded timetable in which a optimization based on different criteria such as the importance of the people with whom an appointment must be made, the time slot, the place, the subject, the importance of the subject of the appointment will make everyone happy.
  • the agent system is interactive with data on the user and his behavior in order to find the agent who will give him the answers to his requests.
  • the agents do not currently make a decision about making an appointment. They exchange data then when all the data is compatible with the agenda of the people, that the priorities and importance are respected, a choice is proposed to the users at the end of the process negotiation. They must validate the result of negotiation between agents so that the agents update the different databases specific to each person who has been contacted.
  • Agents are also used to manage the contact database. Contacts can be divided into a plurality of areas including the professional area and the personal area. The role of these agents is to get all the contact information of people to keep the contact lists up to date. If necessary, this agent will go to a database located on the internet to go and ask for the business card of the people to meet. Again, contacts are not necessarily saved in the same places. Also these places are not necessarily homogeneous in their storage format. For example, updating your contacts from a contact list stored on the Internet can be automated using these agents. This list could contain all the elements relating to contacts, for example a list of Ncard (electronic business card of a person in electronic format). This list could be located on the Internet or on a company's internal network. This list does not exist today when it would be necessary.
  • Ncard electronic business card of a person in electronic format
  • These agents are used to manage e-mails for filtering according to the importance of the e-mail in relation to its content in order to be able to specify for example to the user whether an e-mail should be read urgently or whether he can wait.
  • Mail can come from several addresses. It is the agents who take care of reading messages and sorting them. If an email arrives and it is related to a close appointment then it is noted to read soon, when there are several "soon" to read then the system reserves a time slot of a few minutes to read these e-mails through the coordinating agent. A color code distinguishes the origin and importance of the mail processed.
  • This email management agent uses the data of the header, the addresses of the recipients if there are several and the subject of the email to define priorities to be given.
  • agents manage the user's mailbox and telephone calls.
  • the calls can come from the personal environment or the professional environment. Certain calls according to their origin are judged important or not and according to this importance are intercepted to be sent either on the user station or on their voice mailbox.
  • An agent of this agent type makes use of the information contained in the other databases relating to the types of appointment in which the user is currently present or in relation to his possibility of being interrupted. If the incoming call is screened, the agent answers for example to the caller that the person cannot be disturbed. This type of agents has the role of handling all objects relating to telephone calls.
  • This agent makes it possible to perform filtering functions on faxes according to the environment in which they must be considered.
  • This agent makes it possible to divert certain private faxes from a main machine to print them, so that the user can keep the confidentiality of the data of these faxes.
  • the faxes are temporarily stored in a memory and are sent for printing when the user wishes.
  • the agents can examine the content of the faxes and warn the coordinating agent that the user must be given a certain amount of time to read these faxes, perhaps before an appointment.
  • This agent is an agent which makes it possible to manage tasks by going to interact with a list of operations to be carried out to accomplish a task. Depending on these various operations, the system will allocate time to the user to perform the actions to be performed. A list of actions to be carried out depending on the task is found in one of the databases that the user can access because the address of this database is found in the resource database 1021.
  • This agent is used to manage user memos in relation to these activities.
  • Memos are information valid for a period predefined by the user. They must help him during the validation phase of making an appointment. These memos can be posted periodically to prevent the user from forgetting. However, the frequency of recall of these memos will vary depending on the actions that the user performs. The user can define the period of validity of these memos and also the context in which they must appear, for example the personal environment or the professional environment.
  • agents to search for information on the Internet or the Intranet Agents are used to fetch information on the Internet or on the Intranet when a user needs information on the subject of a Appointment. An agent is launched in search of information on the Intranet site or on the Internet.
  • the various information found is stored in a file and a time slot preceding the meeting will be reserved for reading this file.
  • the search agents take into account the history of the searches carried out previously in order to be able to obtain the information desired by the user. These search agents are used to manage the classification of certain documents necessary for users.
  • Tasks requiring very little stress are, for example, reading unimportant emails, telephone interviews with people with whom the importance of not missing their interview is paramount.
  • the appointment scheduling agent will advise against making certain appointments at known time periods representing a moment of stress where the user is less efficient, all of course taking into account all of the constraints recorded in the system. This agent communicates fully with the agent managing the multi-mode interface.
  • agents for the management of equipment
  • Other agents are considered to manage equipment profiles such as the timetable of the equipment or the allocation of rooms or even their condition, if they require repairs. , maintenance, cleaning, upkeep or specific preparation before a particular appointment.
  • agents The purpose of these agents is to order refreshments from a specialized establishment and to reserve a person to serve during a meeting with many participants, for example. • Using agents to manage user activity
  • This agent is responsible for taking all data relating to online purchases, paying for transport tickets for a user according to the ruser profile, ie a user may want to buy a business class ticket if it is for his work and an economy class ticket if it is for his personal use. Once the booking process has been established, the agent will ask the user to confirm their purchase by entering the information to authorize payment. This agent is responsible for managing your purchases and notifies the user of the status of his purchases. This agent also manages the secure payment of purchases by making it possible for the merchant to view the buyer's data and by exchanging confidential information with his agent in encrypted form.
  • This agent has the role of examining the working and communication environment. It is in a way a module interacting with a multi-mode interface. If a user has a camera, the agent will ask the user to be able to view it to determine his state of fatigue using other agents or if the user has a microphone then he will be offered to interface with the intelligent electronic personal assistant by entering voice commands.
  • a voice recognition or manual character recognition module using the stylus of a portable device for example or with an electronic slate connected to the computer and having the user interface above, can be used for the entering information.
  • the module managing the peripheral environment includes a multi-mode interface making it possible to manage the data when it is entered using the voice or through images when a camera is used.
  • the camera is used to convert data in the form of images into digital data that can be processed by the user state module 1009.
  • this agent manages the various peripherals adapted to interact with the system. Some printers will surely be more suited than others to do a job for example, depending on their speed. If a document is to be printed confidentially then this agent will initiate the print job to a local printer. • Use of agents for the management of the communication environment
  • the user will not be offered the same services as regards the capacities and speed of execution of the processing of certain tasks. If the bandwidth is low and the central system has a lot of interactions to establish with a personal database then the system will ask the user to connect preferably with a system with more data exchange capacities.
  • the database 1021 gives indications on the addresses of the various servers making it possible to respond to requests.
  • FIG. 2 represents different examples of use of the invention.
  • a user can connect from a workstation 201 or 202 or even a laptop 203 via the Intranet 220 to the system.
  • the 241 agents are located on a server internal to the company. It is possible to connect from laptop 262, 263 or from PDA palrn pilot for example 261, 264.
  • the difference between versions 261,262 on the one hand and 263, 264 on the other hand is the fact that link modules reside on remote machines to access the system.
  • the downloading of a user interface is shown in the case where it is not possible to install a personal link module on the supports.
  • a WAP interface is quite possible in this case.
  • Figure 3 shows the steps for making an appointment.
  • a lot of constraints have to be managed and that is why agents are very useful.
  • the essential advantage of the multi-agent system is that the data is only accessible by intermediary agents, ie if an agent asks a person if an appointment is programmable then the agent of the person in question will answer only yes or no but will not provide any data on the calendar of the person in question as to whether a time slot is taken for personal reasons or for any other reasons.
  • the agent can also suggest another solution for holding the meeting.
  • Regarding the constraints provided to the request we note that it is very interesting to manage the constraints on material or real estate resources in parallel with the constraints from the participants.
  • the people contacted will each have agents who will respond to requests from the initiating agent. At a certain point, a solution suitable for all participants will be found and then the result of the search will be sent to everyone for validation. Since the agents will have to fetch data sometimes located on another device such as a personal computer or a mobile phone or a PDA presented in Figure 2, the agents must have a module allowing them to communicate with these devices . For the moment the TCP / TP module implemented in the agents allows the transport of information.
  • an actor 301 initiates an appointment request by specifying the fields defined in FIG. 5. Once the request has been made, the coordinating agent will interrogate the various databases 312, 313 and 3 14 of each invited and inviting participant. Once the metadata has been acquired, the coordinating agent will negotiate with the intelligent agents of the guests in order to find time slots available for each and satisfying everyone's preferences and constraints. Once the time slots have been selected, a validation request is sent to all participants asking for their agreement, knowing that the time slot (s) offered by the system are already satisfactory. If all respond positively then an update order for user databases is placed. If a negative answer, then the system resumes a negotiation or cancels everything according to the strategy which had been selected initially.
  • FIG 4 shows what the coordinator module does to acquire data on resources.
  • This coordinator module informs the appointment management module 401 of the addresses of the databases to which to send the requests.
  • the profiles database 402 returns these addresses.
  • the appointment scheduling module then sends requests 423 to the various servers 407 and 408 to obtain information concerning the users involved.
  • This abstraction module generally allows access to heterogeneous sleep systems such as Microsoft Outlook or Lotus Notes.
  • FIG. 5 represents a view of the user interface 500 concerning the scheduling of appointments.
  • a user has a user interface in front of him on his mobile or fixed terminal.
  • H is defined with the system as master or slave user. Master means that he has all the rights on his personal electronic assistant and slave means that the rights of the user of the agent system are reduced, in the case of a secretary representing a person for example.
  • the user initiates an appointment booking request for example by defining the name of the people to contact 508, 509 or a type of person to meet 510, for example “quality manager”, their possible importance in relation to the requester 511, a date 514, 515 or a date range 518, 519, 520 defined according to the principle of fuzzy logic (approximately around 10 h, duration of approximately 1 hour) using mathematical functions.
  • the user enters through the same time the start of the appointment 523, 524 as well as its duration 527, 528.
  • the user also defines the place 532, 533 with a relative priority in relation to the criteria 534 and a relative precision 535 also defined by the principle of fuzzy logic. Constraints and preferences regarding time data are of the same type as other preferences and constraints.
  • the user does the same for information on rooms and equipment.
  • the user also defines a subject 541 for the appointment as well as parameters which seem important to him 544.
  • the user interface can be modified to take into account what the user wishes to appear as parameters. This interface can therefore be simpler or more complex, it is up to the users. Users can choose from four 545 strategies for requesting an appointment:
  • FIG. 6 represents a graphical user interface 600 operating on the platforms on which the user works.
  • the user interface is adapted to the medium. It can either be implemented on the medium, or downloaded from a server, or be a dynamic Internet page.
  • the use of mobile intelligent agents is not excluded in order to be able to execute code on the remote machine which connects and which must serve as support for the user to use his intelligent personal electronic assistant.
  • This interface has different windows where the results of certain agents are visible, such as the fax 609, telephone 610 and e-mail 611 agents.
  • This interface can be completely personalized. Users can choose the windows they decide to get quickly within sight.
  • This interface offers to visualize the different environments in which the users are likely to evolve. In this interface, through the file menu it is planned to give an option allowing you to visualize your own work rate, to visualize what you do to better manage your actions.
  • This functionality increases in value when it is possible to visualize the work carried out over a long period and to compare with what the system would have proposed to optimize productivity. The principle is based somewhat on the same foundations as software allowing you to visualize your expenses to control your budget. Here, the budget is not only financial but much more temporal. The time and the quality of the management of its working environment are the values on which this system finds all its power.
  • a final remark characterizing the system concerns the contact of users.
  • Some systems use email to send messages between agents.
  • the agents of the present system it is possible to ensure that when a user of a portable device connects to the network, a process makes it possible initially to exchange information concerning various possibilities of taking Appointment.
  • the process brings up a window on the user's screen asking him to validate a proposed appointment resulting from a negotiation between the agents taking into account the information collected. by the agent during the first connection.
  • a concrete case of our system gives all the power of the intelligent electronic personal assistant.
  • a boss who has small children he uses a nanny to babysit every day because his / her life partner also works every day.
  • JJ receives the information from the nanny that she will be unavailable the next day when he already has an appointment scheduled. In this case it is necessary to arrange the agendas to warn everyone and find a solution.
  • the intelligent electronic personal assistant will take into account the request for absence of the nanny initiated by the boss from either a phone, his PDA or his PC connected to Internet
  • a liaison officer works who will contact the coordinating agent on the Intranet. This first searches for resource data.
  • a telephone call management agent located on the Intranet will contact his own coordinating agent through his telephone agent. Once the coordinating agent is contacted, he is responsible for contacting the agent managing the contacts to find the data relating to the user with whom the boss wants to cancel an appointment. The latter will return data such as telephone number, e-mail address to the coordinating agent. Then this agent will ask a call management agent to send a message to the person or will ask an email management agent to send an appointment cancellation message. The person will thus avoid traveling the next day for nothing which could not have been the case if it had been necessary to wait the next morning for the presence of a secretary to contact the person in question.
  • the agents will negotiate a future meeting opportunity with each other.
  • several agents involved in the canceled appointment will be summoned to update any data relating to the appointment that was in question, to modify the timetable for the equipment or the rooms, etc.
  • Another advantage of the general system is that it provokes meetings which until then did not take place for lack of good organization. Take the case of people working on several sites but around the same project. If a person X belonging to site 1 comes once a week to site 2 and must meet several people Y and Z belonging to site 2, and people do not have a secretary to make their appointment for them and that they are not often available to make an appointment, so it is likely that it will take several weeks for people to meet. The case is even more obvious when a group meeting is attempted. With the system, everyone's respective schedules are optimized, and the final gain for people and for the product that requires validation by different people will see its delivery times shortened.

Abstract

The invention concerns an intelligent electronic personal assistant designed to assist in managing personal data concerning a user and to assist in making appointments. The system takes into account the user's global work environment using intelligent agents and intelligent modules. The system is completely integrated and has said agents which while preserving confidentiality of the data are used to manage the detection and the type of connection used, agendas, contacts, electronic mail, telephone calls, faxes, tasks to be executed, memos, Internet information, Intranet information, the user's performance level (based on his stress state), equipment resources such as availability of halls, equipment and non-material resources, daily activities of users, online purchases, the work environment peripherals, the communication environment, user profiles in terms of preferences, technical profiles, database of knowledge and management of at least a user interface. The agents access any type of data and exchange data among them via messages based on a data exchange universal language, such as XML. The system operates on different platforms as computers connected among them through a local network or an Internet-type network and also on any type of portable personal apparatus. It is different from any system currently under study since it enables to globally manage a user while preserving data concerning the latter recorded in heterogeneous worlds.

Description

Assistant personnel électronique intelligent Intelligent electronic personal assistant
La présente invention décrit un assistant personnel électronique intelligent permettant d'assister un utilisateur dans la gestion de ses tâches quotidiennes à partir d'une pluralité d'endroits par exemple, son logement personnel, son bureau et son appareil portable. Cet assistant s'intéresse tout particulièrement aux problèmes posés par la prise de rendez-vous et à la gestion des tâches d'un utilisateur accédant à des systèmes d'information hétérogènes. Cet assistant permet entre autres de traiter les données utilisateurs professionnelles et personnelles en utilisant des modules / agents intelligents pour gérer ces données, ceci dans un but de confidentialité et de facilité de gestion. Jusqu'à présent, ces différentes données existent dans des mondes hétérogènes ne communiquant pas ensemble.The present invention describes an intelligent electronic personal assistant making it possible to assist a user in the management of his daily tasks from a plurality of places, for example, his personal accommodation, his office and his portable device. This assistant is particularly interested in the problems posed by making appointments and managing the tasks of a user accessing heterogeneous information systems. This assistant allows, among other things, to process professional and personal user data by using intelligent modules / agents to manage this data, with the aim of confidentiality and ease of management. So far, these different data exist in heterogeneous worlds that do not communicate with each other.
Considérons la gestion des rendez-vous. De nos jours, la prise de rendez-vous avec d'autres participants est un problème quotidien. Les participants doivent négocier des propositions puis des contre propositions pour arriver à un accord sur l'organisation d'une éventuelle réunion. Chaque acteur doit prendre en compte ses propres préférences et contraintes sans qu'un autre ne soit au courant des siennes. Chacun souhaite travailler avec un emploi du temps aménagé en fonction des tâches à effectuer. Etant donné la quantité de donnée à manipuler dorénavant pour gérer ses rendez-vous, il est nécessaire de travailler avec un système permettant de limiter le temps consacré à chaque tâche. Ces données proviennent généralement de plusieurs environnements de travail professionnels et personnels. La gestion de ses données est devenue extrêmement complexe quand il faut garder à l'esprit que les rendez-vous pris dans un environnement ne doivent pas interférer avec ceux pris dans un autre environnement. Pour éviter les conflits, il faudrait pouvoir disposer librement des données personnelles et professionnelles des participants. Cependant, chacun souhaite garder ses données personnelles et professionnelles confidentielles. C'est en voulant trouver une solution répondant aux problèmes de prise de rendez-vous qu'est né l'assistant personnel électronique intelligent Diverses motivations encouragent le développement du système présenté tout au long de cette invention. Par exemple, dans le milieu professionnel, le système permet d'accélérer la validation d'étapes de développement d'un produit pour réduire les délais de livraison de ce produit. Le système permet naturellement de mieux gérer un agenda et par conséquent d'augmenter la productivité d'un utilisateur. Une meilleure organisation des données entre différents collaborateurs permet à ceux- ci de se rencontrer plus rapidement. Ces raisons peuvent être aussi personnelles. Du fait que le système intègre les données personnelles, une rencontre établie à l'avance avec un concessionnaire automobile pour la révision d'un véhicule sera prise en compte par l'utilisateur pour éviter des conflits dans l'organisation de son emploi du temps avec d'autres rendez-vous. Le système ne permet pas seulement d'éviter les conflits mais il optimise la résolution des tâches par rapport à chaque utilisateur. Il existe bien actuellement des systèmes permettant d'automatiser la prise de rendez-vous mais on s'aperçoit que les systèmes proposés ne font pas runanimité auprès des utilisateurs. Les utilisateurs refusent qu'un programme informatique puisse prendre des décisions à leur place. Les utilisateurs refusent de rendre accessibles leurs données personnelles à d'autres personnes, que celles-ci soit leur secrétaire ou un autre utilisateur. Aujourd'hui, aucun système ne permet de lier en temps réel quand il le faut, plusieurs acteurs pour négocier rapidement une prise de rendez-vous, tout en prenant en compte des dispositions personnelles de chaque utilisateur. Aucun système ne permet de gérer l'ensemble des priorités dans un environnement de travail global. Le système présenté dans cette invention s'intéresse particulièrement à l'automatisation du travail ne nécessitant pas de logique humaine afin de laisser du temps à l'utilisateur pour se focaliser sur des tâches demandant une réelle réflexion humaine.Consider the management of appointments. Nowadays, making appointments with other participants is a daily problem. Participants must negotiate proposals and then counter-proposals to reach an agreement on the organization of a possible meeting. Each actor must take into account his own preferences and constraints without another being aware of his own. Everyone wants to work with a timetable arranged according to the tasks to be performed. Given the amount of data to be manipulated from now on to manage appointments, it is necessary to work with a system allowing the time spent on each task to be limited. This data generally comes from several professional and personal work environments. Managing your data has become extremely complex when you have to keep in mind that appointments made in one environment must not interfere with those made in another environment. To avoid conflicts, it should be possible to freely dispose of the personal and professional data of the participants. However, everyone wishes to keep their personal and professional data confidential. It is by wanting to find a solution to meet the appointment scheduling problems that the intelligent electronic personal assistant was born. Various motivations encourage the development of the system presented throughout this invention. For example, in the professional environment, the system makes it possible to accelerate the validation of product development stages to reduce the delivery times of this product. The system naturally allows better management of an agenda and therefore increases the productivity of a user. Better organization of data between different employees allows them to meet more quickly. These reasons can also be personal. As the system integrates personal data, a meeting established in advance with a car dealer for the overhaul of a vehicle will be taken into account by the user to avoid conflicts in the organization of his timetable with other meetings. The system not only avoids conflicts but also optimizes the resolution of tasks in relation to each user. There are currently systems for automating appointment scheduling, but we can see that the systems offered are not unanimous with users. Users refuse to allow a computer program to make decisions for them. Users refuse to make their personal data accessible to other people, whether they are their secretary or another user. Today, no system allows to link in real time when it is necessary, several actors to quickly negotiate an appointment, while taking into account the personal provisions of each user. No system can manage all the priorities in a global work environment. The system presented in this invention is particularly interested in the automation of work not requiring human logic in order to give the user time to focus on tasks requiring real human reflection.
Le domaine universitaire s'intéressant à l'intelligence artificielle est le plus actif concernant l'automatisation de la prise de rendez-vous sans intervention humaine. Aujourd'hui, des agents intelligents sont utilisés dans le but de prendre des décisions à la place des acteurs ou de leur représentant. Le système en question ici n'est pas destiné à la prise de rendez-vous sans accord préalable de l'utilisateur bien que ce système puisse le faire. Il permet d'automatiser le processus de prise de rendez-vous avec d'autres acteurs avec accord final de ceux-ci.The university area interested in artificial intelligence is the most active concerning the automation of appointment scheduling without human intervention. Today, intelligent agents are used in order to make decisions in place of the actors or their representative. The system in question here is not intended for making appointments without the user's prior consent, although this system may do so. It automates the process of making appointments with other players with their final agreement.
Un des buts de cet assistant est d'établir une meilleure gestion de l'emploi du temps et notamment des rendez-vous. Il permet en plus d'améliorer la qualité du travail et tout particulièrement des réunions. Aujourd'hui, les gens sont souvent surchargés et ne trouvent pas suffisamment de temps pour réaliser au mieux leurs tâches. Des réunions sont organisées mais restent souvent malheureusement insuffisamment préparées pour permettre un travail efficace. Les gens doivent donc se rencontrer une nouvelle fois pour aborder les mêmes sujets. Ces sujets sont la plupart de temps mal préparés par manque d'infoπnations et de temps. Cet assistant vise aussi à augmenter la qualité des réunions en apportant une aide à l'organisation du travail. Cet assistant permet d'établir de réelles économies d'échelle dans une entreprise.One of the goals of this assistant is to establish better management of the timetable and in particular of appointments. It also improves the quality of work and especially meetings. People today are often overworked and do not have enough time to do their jobs. Meetings are organized but often unfortunately remain insufficiently prepared to allow effective work. People therefore have to meet again to discuss the same subjects. These subjects are most of the time badly prepared for lack of information and time. This assistant also aims to increase the quality of the meetings by helping to organize the work. This assistant makes it possible to establish real economies of scale in a company.
Un autre but de cet assistant est de créer une charnière pour permettre aux utilisateurs de gérer leur vie privée et leur vie professionnelle à partir d'un système unique. L'utilisateur n'a donc plus besoin de s'inquiéter pour gérer en parallèle des données privées et professionnelles en craignant des conflits ou en essayant d'optimiser la gestion de plusieurs environnements de travail.Another purpose of this wizard is to create a hinge to allow users to manage their private and professional lives from a single system. The user therefore no longer needs to worry about managing private and professional data in parallel, fearing conflicts or trying to optimize the management of several work environments.
Aujourd'hui, les gens n'ont pas tous des secrétaires ou bien partagent une secrétaire avec dix autres personnes. Le système proposé permet de mieux repartir l'effectif des secrétaires, et en l'absence de secrétaires, de les aider à gérer leurs données personnelles et professionnelles. En quelques sortes, les agents échangent des données qui permettent de trouver un compromis dans la prise de rendez- vous et proposer ainsi à l'ensemble des utilisateurs désireux d'obtenir une réunion, une solution convenant à tous et optimisée en fonction des contraintes définies par eux- mêmes dans un profil utilisateur. Afin d'automatiser le processus de prise de rendez-vous, il faut avoir accès à tous types de données. II est nécessaire de travailler avec un outil permettant de joindre des données hétérogènes à l'intérieur d'un système homogène. Par manque d'outils adéquats, il n'est donc pas possible aujourd'hui de gérer dynamiquement différents systèmes d'information comme Microsoft Outlook/Exchange (marque déposée) et Lotus Notes (marque déposée) à partir d'un unique système les intégrant. H n'y a pas d'agents sur le marché en tant qu'assistant personnel gérant l'environnement de l'utilisateur (bien que des universités s'y intéressent). Une solution est apportée par la présente invention. Dans le cas où un utilisateur posséderait ses données sur un Intranet, par exemple dans un système d'information Microsoft ou Lotus, et d'autres données sur un PDA (assistant numérique personnel) ou tout autre appareil portable, la synchronisation sur un serveur d'information centralisé est pour l'instant le seul moyen pour faire interagir les données. Dans l'état actuel, l'utilisateur est donc obligé de laisser entièrement accès à ses données personnelles pour que sa secrétaire puisse le seconder par exemple, ceci dans le cas où il aurait une secrétaire évidemment. La solution apportée ici permet de séparer les données professionnelles et personnelles tout en laissant accès aux informations réellement nécessaires. Par exemple concernant l'agenda, la disponibilité de certains créneaux horaires est donnée par les agents. Le contenu des agendas n'est en outre jamais divulgué. L'agent agissant au nom de l'utilisateur principal est programmé pour répondre à l'agent de la secrétaire ou à un autre agent ayant émis une requête: "non ce rendez-vous ABC n'est pas possible, mais les moments disponibles pour un rendez-vous seraient plutôt XYZ".Today, not all people have secretaries or share a secretary with ten other people. The proposed system makes it possible to better distribute the number of secretaries, and in the absence of secretaries, to help them manage their personal and professional data. In a way, the agents exchange data which makes it possible to find a compromise in making appointments and thus offer all the users wishing to obtain a meeting, a solution suitable for all and optimized according to the defined constraints. by themselves in a user profile. In order to automate the appointment booking process, you must have access to all types of data. It is necessary to work with a tool allowing to join heterogeneous data inside a homogeneous system. Due to a lack of adequate tools, it is therefore not possible today to dynamically manage different information systems such as Microsoft Outlook / Exchange (registered trademark) and Lotus Notes (registered trademark) from a single system integrating them. . There are no agents on the market as a personal assistant managing the user environment (although some universities are interested). A solution is provided by the present invention. In the event that a user has his data on an Intranet, for example in a Microsoft or Lotus information system, and other data on a PDA (personal digital assistant) or any other portable device, synchronization on a centralized information is currently the only way to make data interact. In the current state, the user is therefore obliged to give full access to his personal data so that his secretary can assist him, for example, this in the case where he would obviously have a secretary. The solution provided here makes it possible to separate professional and personal data while leaving access to the information really necessary. For example concerning the agenda, the availability of certain time slots is given by the agents. The content of the diaries is also never disclosed. The agent acting on behalf of the main user is programmed to respond to the secretary's agent or to another agent who has made a request: "No, this ABC appointment is not possible, but the times available for an appointment would be more like XYZ ".
Basé sur ce système et en ce qui concerne la requête de prise de rendez-vous, le système innove avec l'utilisation d'interface où il est possible de gérer des paramètres du type importance relative de l'invitant, importance relative de l'invité, début de la réunion, durée, plage horaire utilisant la logique floue, contraintes et préférences sur les dates et horaires, sujet, commentaire, autorisation d'être dérangé pendant la réunion, personne déléguée en cas de non-assistance et enfin du type de stratégie à appliquer pour obtenir un rendez-vous. Based on this system and with regard to the appointment booking request, the system innovates with the use of an interface where it is possible to manage parameters of the type relative importance of the invitation, relative importance of the guest, start of meeting, duration, time slot using fuzzy logic, constraints and preferences on dates and times, subject, comment, authorization to be disturbed during the meeting, delegate in case of non-assistance and finally of the type of strategy to apply to get an appointment.
En résumé, il n'y a pas de système intégrant un ensemble d'agents intelligents échangeant avec d'autres agents des informations sous un format standard d'échange de données, par exemple de type XML, conservant la confidentialité des données échangées si nécessaire, de plus coordonnant et gérant: la détection et le type de connexion les agendas et prises de rendez-vous les contacts les courriers électroniques les appels téléphoniques • les fax les tâches à effectuer les mémos la recherche d'informations sur l'Internet la recherche d'information sur l'Intranet « le niveau de rendement de l'utilisateur les ressources matérielles du type des salles à allouer pour une réunion les ressources matérielles du type matériel de bureau nécessaire (projecteur ou autres) les ressources non matérielles comme la commande de rafraîchissements auprès d'un établissement spécialisé • les activités quotidiennes comme l'étude du trafic avant de prendre la route ou la commande de billet en fonction de son profil utilisateur professionnel ou personnel ou bien encore l'utilisation de thésaurus pour communiquer dans d'autres languesIn summary, there is no system integrating a set of intelligent agents exchanging with other agents information in a standard format of data exchange, for example of XML type, preserving the confidentiality of the exchanged data if necessary , moreover coordinating and managing: the detection and the type of connection the diaries and making appointments the contacts the electronic mails the telephone calls • the faxes the tasks to carry out the memos the research of information on the Internet the research information on the Intranet "the level of performance of the user material resources of the type of rooms to be allocated for a meeting material resources of the type of office equipment required (projector or other) non-material resources such as the control of refreshments at a specialized establishment • daily activities such as studying traffic before setting off or driving ticket order according to their professional or personal user profile or even the use of thesaurus to communicate in other languages
• les achats de l'utilisateur en cas d'achats en ligne sur Internet• user purchases in the case of online purchases on the Internet
• l'environnement de travail matériel • renvironnement de communication (Internet, Intranet, GSM, UMTS, Bluetooth (marque déposée), différents supports comme des ordinateurs connectés en permanence à un Intranet, à Internet, des ordinateurs portables, téléphones, assistants personnels, pageurs connectés ponctuellement aux réseaux cités précédemment)• the material working environment • the communication environment (Internet, Intranet, GSM, UMTS, Bluetooth (registered trademark), various media such as computers permanently connected to an Intranet, the Internet, laptops, telephones, personal assistants, pagers occasionally connected to the networks mentioned above)
• les profils utilisateur quant au comportement et aux préférences « les profils techniques pour l'utilisation de ressources• user profiles for behavior and preferences “technical profiles for the use of resources
• la gestion des connaissance des utilisateurs• user knowledge management
• l'apparence de la fenêtre graphique utilisateur• the appearance of the graphical user window
Au final, avec toutes ces options, il est envisagé de visualiser l'activité de l'utilisateur ou l'activité de ces collaborateurs si on y est autorisé en fonction des paramètres que l'on souhaite étudier.In the end, with all these options, it is envisaged to view the activity of the user or the activity of these collaborators if we are authorized to do so according to the parameters that we wish to study.
Les récents progrès ayant permis l'élaboration de cette invention vont être maintenant décrits dans la rubrique suivante concernant l'état de la technique. Art antérieurThe recent advances which have made it possible to develop this invention will now be described in the following section relating to the state of the art. Prior art
Le sujet demandant un extrême niveau de complexité, de nombreux chercheurs en intelligence artificielle se sont penchés sur la question de la prise de rendez-vous assistée par des agents intelligents. Il faut rappeler qu'un agent intelligent est en fait un programme informatique transportant de la donnée et est capable de «raisonnement» dans la mesure où il a été créé dans cet objectif.As the subject requires an extreme level of complexity, many researchers in artificial intelligence have looked into the question of making appointments assisted by intelligent agents. It should be remembered that an intelligent agent is in fact a computer program transporting data and is capable of "reasoning" insofar as it was created for this purpose.
Sven Schmeier et Achim Schupeta (PASHA JJ, Personal Assistant for Scheduling appointments, DF I diploma thesis, september 5, 1996, disponible sur Internet http://www.schmeier.de/work.htm) avec le système MAS (multi agents System) fournissent une implémentation fonctionnant autour du système Oz (langage permettant aux agents de communiquer entre eux. Us ont créés PASHA II (Personal Assistant for Scheduling Appointments). Ce système permet de prendre des rendez-vous entre participants en tenant compte de leurs différentes contraintes et préférences. PASHA II propose une option pour choisir la stratégie à appliquer lors d'une requête de rendez- vous. Chaque utilisateur possède un agent communiquant avec son calendrier, un gestionnaire de ressources matérielles et avec d'autres agents. Il n'existe pas de séparation entre les données professionnelles et personnelles. Il n'existe pas d'agent de coordination gérant un ensemble d'agents dédies à d'autres tâches. Il n'y a donc pas de profil utilisateur prenant en compte les différentes localisations d'autres données. Us ne considèrent pas le principe de requête avec la logique floue, ni même un système global permettant d'avoir des agents qui vont chercher sur l'Internet des informations concernant une réunion. Un autre paramètre non pris en compte par PASHA II est que seul la base de donnée CM Calendar Manager développée par Sun Microsystems (marque déposée) est prise en compte, il n'y a pas de système multi source et donc pas d'agents servant de passerelle entre les différents systèmes. Les utilisateurs doivent tous posséder le même système et sont donc limités. PASHA H ne fonctionne pas sur des systèmes portables et ne prend pas en compte les différents mondes hétérogènes dans lesquels évoluent les utilisateurs.Sven Schmeier and Achim Schupeta (PASHA JJ, Personal Assistant for Scheduling appointments, DF I diploma thesis, September 5, 1996, available on the Internet http://www.schmeier.de/work.htm) with the MAS system (multi agents System ) provide an implementation operating around the Oz system (language allowing agents to communicate with each other. They created PASHA II (Personal Assistant for Scheduling Appointments). This system allows to make appointments between participants taking into account their different constraints and preferences. PASHA II offers an option to choose the strategy to be applied when requesting an appointment. Each user has an agent communicating with his calendar, a manager of material resources and with other agents. no separation between professional and personal data. There is no coordinating agent managing a set of agents dedicated to other tasks. nc no user profile taking into account the different locations of other data. They do not consider the query principle with fuzzy logic, or even a global system allowing agents to search the Internet for information concerning a meeting. Another parameter not taken into account by PASHA II is that only the CM Calendar Manager database developed by Sun Microsystems (registered trademark) is taken into account, there is no multi-source system and therefore no agents serving bridge between the different systems. The users must all have the same system and are therefore limited. PASHA H does not work on portable systems and does not take into account the different heterogeneous worlds in which users evolve.
British Télécommunications (marque déposée) est aussi un acteur important sur ce marché puisque sur leur site Internet de nombreuses informations sont rendues publiques. De plus par le brevet WO99/05597, un système est mis en place utilisant la collaboration d'agents intelligents entre eux. Dans un avenir proche leur système emploiera sûrement des agents intelligents pour gérer les différents types de données comme la gestion d'agenda, des mails, d'appels téléphoniques, de liste de tâches à effectuer. La plate-forme commune permettant d'échanger des messages entre agents s'appelle ZEUS (marque déposée). Cependant ZEUS n'est pas conçu pour pouvoir faire interagir des agents intelligents avec des appareils portables. Il ne sera donc pas prévu d'utiliser un profil utilisateur fournissant les différentes sources de données de l'utilisateur. Avec ZEUS comme plate-forme, il est peu probable que l'utilisateur puisse avoir des données stockées à plusieurs endroits, par exemple dans une base de donnée stockée sur un serveur Internet et sur un PDA par exemple. La logique floue sera peut-être utilisée lors de la requête pour un rendez-vous étant donné que quelques autres s'intéressent à cette logique pour des applications de même type. A la vue des informations publiées par British Télécommunications, il semble que leur système sera davantage basé sur l'utilisation d'agents gérant des tâches. Le concept d'assistant personnel sur lequel travaille British Télécommunications est un programme fonctionnant sur des machines fixes internes à une société soit sur un ordinateur en local soit sur un serveur interne. Le système n'est pas prévue pour fonctionner avec des appareils portables ni même avec un serveur distant. Dans le cas où les utilisateurs se servent de Microsoft Outlook ou Lotus Notes alors une passerelle devrait permettre aux agents de communiquer à travers l'arête centrale ZEUS. Le brevet W099/17194, intitulé "Ressource management system" est une des briques principales d'un système utilisant les agents intelligents pour gérer la charge de travail et le flux d'informations dans une entreprise.British Telecommunications (registered trademark) is also an important player in this market since a lot of information is made public on their website. In addition, by patent WO99 / 05597, a system is implemented using the collaboration of intelligent agents with one another. In the near future their system will surely employ intelligent agents to manage the various types of data like the management of diary, e-mails, telephone calls, to-do list. The common platform for exchanging messages between agents is called ZEUS (registered trademark). However ZEUS is not designed to be able to interact with intelligent agents with portable devices. It will therefore not be planned to use a user profile providing the various sources of user data. With ZEUS as a platform, it is unlikely that the user will be able to have data stored in several places, for example in a database stored on an Internet server and on a PDA for example. Fuzzy logic may be used when request for an appointment since a few others are interested in this logic for applications of the same type. In view of the information published by British Telecommunications, it seems that their system will be based more on the use of agents managing tasks. The concept of personal assistant on which British Telecommunications works is a program running on fixed machines internal to a company either on a local computer or on an internal server. The system is not intended to work with portable devices or even with a remote server. In the event that users are using Microsoft Outlook or Lotus Notes then a gateway should allow agents to communicate across the ZEUS central edge. Patent W099 / 17194, entitled "Resource management system" is one of the main building blocks of a system using intelligent agents to manage the workload and the flow of information in a company.
Microsoft Outlook ou encore Lotus Notes, pour ne citer qu'eux ne proposent pas de moyens pour donner des priorités à certaines tâches. Ils ne possèdent pas non plus d'agents intelligents qui automatisent les tâches faites aujourd'hui manuellement. A travers le logiciel Microsoft Outlook, il est possible de publier des données sur une page Internet et de les rendre accessibles en communiquant l'adresse du serveur sur lequel se trouve la publication des disponibilités des utilisateurs. Il est ainsi possible de connaître l'emploi du temps d'un utilisateur si celui-ci a effectué les démarches pour. Ces logiciels ne sont donc pas adaptés pour assister l'utilisateur mais ils permettent de fournir les briques de bases sur lesquelles notre système repose.Microsoft Outlook or Lotus Notes, to name a few, do not offer ways to prioritize certain tasks. Nor do they have intelligent agents who automate the tasks done today manually. Using Microsoft Outlook software, it is possible to publish data on an Internet page and make it accessible by communicating the address of the server on which the publication of users' availability is located. It is thus possible to know the schedule of a user if this one carried out the steps for. This software is therefore not suitable for assisting the user, but it does provide the basic building blocks on which our system is based.
Le but des agents intelligents est de supprimer les intermédiaires comme les secrétaires et c'est sans doute le frein principal au développement des systèmes les utilisant. La présente invention se base sur d'autres utilisations des agents parce que nous pensons que les agents intelligents sont destinés à seconder les hommes i.e. faire tout le travail automatisable et laisser le prise de décision à l'homme.The aim of intelligent agents is to suppress intermediaries such as secretaries, and this is undoubtedly the main obstacle to the development of the systems using them. The present invention is based on other uses of agents because we believe that intelligent agents are intended to assist men i.e. to do all the work that can be automated and to leave decision-making to man.
Un standard est en cours d'élaboration par l'Internet Society pour utiliser les données d'une application à une autre. Par exemple on peut faire référence aux documents suivant: Internet Calendaring and Scheduling Core Object Spécification (iCalendar) (RFC 2445), iCalendar Transport Independent Interoperability Protocol (iTIP): Scheduling Events, Busy Time, To-dos and Journal Entries (RFC 2446), iCalendar Message based interoperability Protocol (iMEP) (RFC 2447), Calendar attributes for vCard and LDAP (RFC 2739), Calendar Access Protocol (CAP) (draft-ietf-calsch-cap), Implementors' Guide to Internet Calendaring (draft-ietf- calsch-imp-guide), Fixing the iCalendar Registration Process (draft-stracke-calsch-ical-reviewer), CAP Realtime iTIP based Scheduling Profil (CRISP) (draft-stracke-calsch-crisp). Ces standards seront utilisés par le système présenté dans l'invention pour simplifier les échanges entre agents.A standard is being developed by the Internet Society for using data from one application to another. For example, we can refer to the following documents: Internet Calendaring and Scheduling Core Object Specification (iCalendar) (RFC 2445), iCalendar Transport Independent Interoperability Protocol (iTIP): Scheduling Events, Busy Time, To-dos and Journal Entries (RFC 2446) , iCalendar Message based interoperability Protocol (iMEP) (RFC 2447), Calendar attributes for vCard and LDAP (RFC 2739), Calendar Access Protocol (CAP) (draft-ietf-calsch-cap), Implementors' Guide to Internet Calendaring (draft- ietf- calsch-imp-guide), Fixing the iCalendar Registration Process (draft-stracke-calsch-ical-reviewer), CAP Realtime iTIP based Scheduling Profile (CRISP) (draft-stracke-calsch-crisp). These standards will be used by the system presented in the invention to simplify the exchanges between agents.
Etant donné que le système présenté dans cette demande de brevet prend en compte le fait que les données puissent être enregistrées à des endroits qui ne sont pas accessibles en permanence par des agents intelligents, il sera sûrement nécessaire d'utiliser des outils permettant d'établir un lien entre les différentes bases de données. La demande de brevet EP0917077, intitulé "Wireless remote synchronization of data between PC and PDA", propose une solution pour connecter les appareils entre eux et avec le réseau afin que les agents intelligents puissent obtenir des informations pour mettre en oeuvre le système.Since the system presented in this patent application takes into account the fact that data can be saved in places which are not permanently accessible by intelligent agents, it will surely be necessary to use tools allowing to establish a link between the different databases. Patent application EP0917077, entitled "Wireless remote synchronization of data between PC and PDA", offers a solution to connect devices to each other and to the network so that intelligent agents can obtain information to implement the system.
La demande de brevet EP0921670, intitulé "Electronic Scheduling devices", permet de prendre des rendez-vous à distance en utilisant son téléphone. Ce système utilise les boîtes vocales et les courriers électroniques.Patent application EP0921670, entitled "Electronic Scheduling devices", allows you to make appointments remotely using your phone. This system uses voicemail and e-mail.
La demande de brevet EP0697671, intitulé "Electronic secretary System", peut aussi servir pour montrer qu'une interface téléphonique représentant une secrétaire est un élément que l'agent de gestion des appels téléphoniques emploiera dans notre système. Pour optimiser cette gestion, on notera aussi la demande de brevet WO99/21101 permettant de connecter ou déconnecter un téléphone portable en fonction de l'importance de l'appelant durant une réunion et ceci en utilisant une interface graphique utilisateur.Patent application EP0697671, entitled "Electronic secretary System", can also be used to show that a telephone interface representing a secretary is an element that the telephone call management agent will use in our system. To optimize this management, note also the patent application WO99 / 21101 allowing to connect or disconnect a portable telephone according to the importance of the caller during a meeting and this by using a graphical user interface.
Un autre type d'interface utilisateur a été développé dans le brevet US5877759. Cette interface emploie en arrière plan des agents intelligents qui servent à aller chercher des informations ou bien à prendre des rendez-vous. La prise de rendez-vous est toujours assistée par l'envoi de courrier électronique et ne permet pas de gérer des contraintes complexes ni même de garder la confidentialité des données. En aucun cas, le lien avec autres types de réseau comme celui gérant les appareils portables n'est pris en compte. De plus, en aucun cas, l'environnement dans lequel évolue l'utilisateur n'est pris en compte. Concernant l'utilisation d'un agent intelligent pour la gestion des courriers électroniques, certaines informations sont disponibles dans les différents articles comme "l^arning rules that classify E-mail" écrit par Wiliam W. Cohen d'AT&T, "An open agent architecture" de Philip R. Cohen et Adam Cheyer ou bien dans les brevets US5765178 "Electronic mail receiving system allowing receiving party control of a display format of received mail", EP0420779 "User selectable electronic mail management method".Another type of user interface has been developed in US Pat. No. 5,877,759. This interface employs intelligent agents in the background, which are used to seek information or to make appointments. Making an appointment is always assisted by sending e-mail and does not make it possible to manage complex constraints or even to keep data confidential. In any case, the link with other types of network such as that managing portable devices is not taken into account. In addition, in no case is the environment in which the user operates is taken into account. Concerning the use of an intelligent agent for the management of e-mails, certain information is available in the various articles like "l ^ arning rules that classify E-mail" written by Wiliam W. Cohen of AT & T, "An open agent architecture "by Philip R. Cohen and Adam Cheyer or in patents US5765178" Electronic mail receiving system allowing receiving party control of a display format of received mail ", EP0420779" User selectable electronic mail management method ".
En ce qui concerne le fait d'utiliser un agent coordinateur, des informations se trouvent dans l'article "Coordination of multiple intelligent software agents" de Katia Sycara et Dajun Zeng. Cet article n'adresse cependant pas le cas d'un système ayant des calendriers utilisant différents formats bien que des bases de données hétérogènes soient employées. C'est à dire que le système possède un seul type d'agent intelligent de prise de rendez-vous et celui-ci s'occupe d'aller chercher des informations dans un type de calendrier. Un autre type d'agent s'occupe d'aller chercher des informations sur l'Internet par exemple mais en tout cas quand ils parlent d'hétérogénéité des données ils envisagent les formats différents entre le format de l'Internet et le format du calendrier. Il n'est jamais fait allusion aux possibilités d'extension du système avec des données enregistrées sur des appareils portables ni même aux faits de posséder des données sur plusieurs systèmes hétérogènes.Regarding the use of a coordinating agent, information can be found in the article "Coordination of multiple intelligent software agents" by Katia Sycara and Dajun Zeng. However, this article does not address the case of a system having calendars using different formats although heterogeneous databases are used. That is to say that the system has only one type of intelligent agent for making appointments and this one takes care of fetching information in a type of calendar. Another type of agent takes care of looking for information on the Internet for example but in any case when they talk about heterogeneity of the data they consider the different formats between the format of the Internet and the format of the calendar . There is never any reference to the possibility of expanding the system with data stored on portable devices or even to the fact of having data on several heterogeneous systems.
En ce qui concerne les PDAs, le brevet US5842009 décrit un PDA ayant une interface permettant d'obtenir des informations sur des rendez-vous ou sur des tâches. Il n'est aucunement question cependant d'avoir un outil gérant la prise de rendez-vous sur ce type de PDA et encore σWith regard to PDAs, US Pat. No. 5,842,009 describes a PDA having an interface making it possible to obtain information on appointments or on tasks. There is no question, however, of having a tool managing the scheduling of appointments on this type of PDA and again σ
moins d'avoir des agents intelligents servant d'assistant personnel pour gérer les données dans la globalité en les faisant interagir avec d'autres types de données.less having intelligent agents serving as personal assistant to manage the data in a global way by making them interact with other types of data.
En ce qui concerne l'utilisation d'agents intelligents pour établir une requête vers les pages jaunes, des informations se trouvent dans un article intitulé "an intelligent directory enquiry assistant" écrit par A de Roeck entre autres.Regarding the use of intelligent agents to establish a request to the yellow pages, information can be found in an article entitled "an intelligent directory inquiry assistant" written by A de Roeck among others.
En ce qui concerne les agents intelligents chargés de gérer l'activité et l'état de stress de l'utilisateur, le brevet US6065138 présente un système étant à l'écoute de l'utilisateur et le brevet US5579238 présente un système pour étudier la force avec laquelle un utilisateur frappe le clavier. En ce qui concerne les agents intelligents chargés de gérer l'environnement de travail de l'utilisateur pour savoir si il possède une caméra pour la visio conférence, un microphone pour interfacer avec un module de reconnaissance vocale et autres périphériques, il sera possible de trouver des informations dans le document intitulé "Intelligent multi-modal Systems" écrit par K C Tsui et al, publié dans BT technical journal vol 16 No3 July 1998. En ce qui concerne les agents pour la prise de rendez-vous, certaines informations sont disponibles sur le site suivant: http://www.es. ualberta.ca/~qihua/scheduler/report.html «An intelligent meeting scheduler». Les agents sont essentiellement dédiées à la prise de rendez- vous. Us ne fonctionnent que sur une seule plate-forme. Us n'y a pas non plus d'agent coordinateur interagissant avec d'autres agents. En ce qui concerne l'utilisation d'agents intelligents avec des PDAs, le document intituléWith regard to the intelligent agents responsible for managing the activity and the stress state of the user, the patent US6065138 presents a system listening to the user and the patent US5579238 presents a system for studying the force with which a user hits the keyboard. Regarding the intelligent agents responsible for managing the user's work environment to find out if he has a camera for video conferencing, a microphone to interface with a voice recognition module and other devices, it will be possible to find information in the document entitled "Intelligent multi-modal Systems" written by KC Tsui et al, published in BT technical journal vol 16 No3 July 1998. Regarding agents for making appointments, some information is available on the following site: http://www.es. ualberta.ca/~qihua/scheduler/report.html "An intelligent meeting scheduler". The agents are mainly dedicated to making appointments. They only work on one platform. There is also no coordinating agent interacting with other agents. Regarding the use of intelligent agents with PDAs, the document entitled
"Multimodal user interfaces in the open agent architecture" écrit par Douglas B Moran et al, et publié le 6 Janvier 1997 propose le principe global d'utiliser des agents intelligents avec des PDAs pour gérer son calendrier. L'utilisateur peut interagir avec d'autres utilisateurs mais en fait il garde ses propres données dans une seule base de donnée. JJ n'y a pas de distinction entre sa base de donnée personnelle et sa base de donnée professionnelle. JJ n'y a donc aucune confidentialité du point de vue d'un utilisateur externe. Jamais un profil utilisateur n'est pris en compte pour spécifier l'endroit où aller chercher les données et le type d'agent à utiliser pour accomplir la tâche."Multimodal user interfaces in the open agent architecture" written by Douglas B Moran et al, and published on January 6, 1997 proposes the global principle of using intelligent agents with PDAs to manage its calendar. The user can interact with other users but in fact he keeps his own data in a single database. JJ does not distinguish between his personal database and his professional database. JJ therefore has no confidentiality from the point of view of an external user. A user profile is never taken into account to specify where to get the data and the type of agent to use to accomplish the task.
Les principales caractéristiques que ne comprend jamais l'art antérieur et qui consiste à rendre le système présent nouveau et inventif est que jamais un assistant électronique personnel intelligent n'a comporté la possibilité de gérer tout l'environnement de travail de l'utilisateur tout en conservant ses données à des endroits différents sur des plate-formes hétérogènes. Pour cela, il existe un profil qualifié de technique dans ce sens où ce n'est pas un profil utilisateur en charge de la gestion du comportement de l'utilisateur. Pour que les agents fassent leur travail, le système comprend aussi évidemment ce dernier type de profil. Description brèves des figuresThe main features that the prior art never understands and which consists in making the present system new and inventive is that never an intelligent personal electronic assistant has included the possibility of managing the entire working environment of the user while keeping its data in different places on heterogeneous platforms. For this, there is a profile qualified as technical in the sense that it is not a user profile in charge of managing user behavior. For the agents to do their job, the system also obviously includes this last type of profile. Brief description of the figures
La figure 1 représente le système dans sa globalité, les différents modules ou agents qui constituent le système dans son intégralité ainsi que les différents environnements dans lesquels le système est prévu pour fonctionner.Figure 1 shows the system as a whole, the different modules or agents that make up the entire system as well as the different environments in which the system is designed to operate.
La figure 2 représente plus particulièrement des exemples d'environnements dans lesquels le système assiste les utilisateurs.FIG. 2 represents more particularly examples of environments in which the system assists the users.
La figure 3 représente les différentes étapes utilisées pour prendre un rendez-vous.Figure 3 shows the different steps used to make an appointment.
La figure 4 représente la démarche effectuée par l'assistant personnel électronique intelligent pour résoudre la tâche consistant à prendre des rendez-vous.Figure 4 shows the approach taken by the intelligent electronic personal assistant to solve the task of making appointments.
La figure 5 représente l'interface pour la prise de rendez-vous.Figure 5 shows the interface for making appointments.
La figure 6 représente l'interface utilisateur graphique de l'assistant personnel électronique intelligent. Figure 6 shows the graphical user interface of the intelligent electronic personal assistant.
DescriptionDescription
Le monde dans lequel les utilisateurs évoluent est un monde hétérogène où l'échange de donnée n'est pas encore très facile. Chaque société utilise un ou plusieurs systèmes propriétaires pour enregistrer ses propres données. Certains standards voient le jour comme Ncard et Ncalendar (marques déposées) dans le but d'échanger des données de type carte de visite et calendrier. XML (eXtended Markup Language) sera sans doute le format standard pour échanger des données du type carte de visite et calendrier dans le futur cependant il faudrait que chacun s'accorde à développer une DTD (Document Type Définition) commune pour ces deux applications. L'Internet va aussi sûrement évoluer dans ce sens en utilisant de plus en plus XML comme langage d'échange de donnée. En supposant que les agents intelligents servent à aller modifier des informations relatives à un utilisateur et que ces informations se trouvent sur un appareil portable, il faudra envoyer à partir d'un serveur, un document XML et un agent intelligent qui soit capable de faire interagir les données avec l'appareil portable. Par la demande de brevet FA572683 requise par l'auteur de la présente demande, il est utilisé une méthode permettant de traiter des informations sous format XML à l'aide d'un programme dépendant du profil technique de la machine qui doit traiter les informations XML. Ce programme servirait donc à faire l'interface entre l'agenda, les contacts, tout l'environnement fonctionnant sur l'appareil portable et le serveur partenaire de l'échange de données. L'idée est donc venue d'utiliser XML pour échanger des données de type calendrier ou toutes informations personnelles avec un autre système dans le but d'accroître la productivité, l'efficacité de chacun en travaillant sur un outil gérant les agendas, les contacts, les prises de rendez-vous et autres tout en gardant confidentiel les données de chaque utilisateur.The world in which users operate is a heterogeneous world where the exchange of data is not yet very easy. Each company uses one or more proprietary systems to record its own data. Some standards are emerging such as Ncard and Ncalendar (registered trademarks) in order to exchange data such as business cards and calendars. XML (eXtended Markup Language) will undoubtedly be the standard format for exchanging data such as a business card and calendar in the future, however everyone should agree to develop a common DTD (Document Type Definition) for these two applications. The Internet will also surely evolve in this direction by using more and more XML as the data exchange language. Assuming that intelligent agents are used to modify information relating to a user and that this information is on a portable device, it will be necessary to send from a server, an XML document and an intelligent agent capable of making it interact. data with the portable device. By the patent application FA572683 required by the author of the present application, a method is used making it possible to process information in XML format using a program dependent on the technical profile of the machine which must process the XML information . This program would therefore be used to interface between the calendar, contacts, the entire environment running on the portable device and the partner server for data exchange. The idea therefore came to use XML to exchange calendar type data or any personal information with another system in order to increase productivity, efficiency of everyone by working on a tool managing calendars, contacts , making appointments and the like while keeping each user's data confidential.
La figure 1 représente le concept de l'invention mis en évidence. Le concept suivant est basé sur l'interaction entre agents intelligents dédiés a résoudre les tâches des utilisateurs travaillant dans des environnements hétérogènes. Les modules ou agents intelligents sont représentés par les éléments 1000 à 1017. Aujourd'hui les utilisateurs travaillent sous des environnements intégrés, par exemple Microsoft Outlook, Lotus Notes, Symantec (marque déposée) pour gérer leur agendas, liste de contacts, liste de tâches à effectuer, gérer les courriers électroniques quand les données sont à caractère professionnel et qu'ils sont sur des postes fixes. Sur la figure 1, les différents modules 1000-1017 peuvent interagir avec différents réseaux: intranet 1600, GSM 1500 RTC 1400, UMTS 1300 dans les années futures, Internet 1200 et d'autres réseaux 1100 comme le palmnet (marque déposée) ou bien le réseau des pageurs ou encore le réseau ISDN qui n'est pas mentionné sur la figure 1 bien qu'aucune difficulté ne se présenterait pour intégrer le système avec ce réseau. Aussi, les utilisateurs sont amenés à posséder des données personnelles et professionnelles que ce soient pour les agendas, les contacts, les courriers électroniques, les numéros de téléphones et autres. Ces données peuvent être stockées dans des bases complètement délocalisées comme dans une base 1611 stockée sur le disque dur d'une station de travail personnelle 1610 reliée à l'Intranet ou sur une base 1621 d'un PDA 1620, ou sur une base 1631 d'une station de travail 1630 quelconque cependant reliée à l'Intranet De plus en plus, ils utilisent des bases de données stockées à distance sur l'Internet dans le but d'accéder aux données indépendamment de leur localisation. Ces bases de données sont représentées par les éléments 1121, 1211, 1221, 1222, 1231 et 1232. Les utilisateurs sont amenés à travailler aussi à partir de leur assistant personnel de type Palm pilot (marque déposée) par exemple. Chaque base de donnée possède aujourd'hui son propre système pour gérer les données. XML n'est pas encore implémenté pour les échanges de données entre les différents systèmes cités précédemment. Pour accéder aux données, il faut par exemple utiliser des méthodes développées par les créateurs de ces bases de données. Microsoft utilise des OLE par exemple. En général, les données inscrites dans une base de donnée propriétaire ne sont pas directement accessibles. Et même si XML était déjà implémenté, il faudrait toujours un outil permettant de gérer le flux de données entre différents environnements. Un utilisateur peut posséder plusieurs bases de données différenciées sur plusieurs types de plate-formes différentes comme nous venons de le présenter. Par exemple, l'utilisateur peut avoir une base professionnelle 1611 sur sa station de travail 1610, et une base personnelle 1621 sur son PDA 1620. La base professionnelle peut être synchronisée sur le réseau (Intranet ou Internet) de manière automatique, et accessible à tous. La base personnelle par contre, est simplement répliquée régulièrement sur le réseau et ne sera accessible qu'à lui seul et à son agent personnel. Elle peut aussi ne pas être répliquée du tout. Il faut bien sûr que le système puisse accéder aux informations contenues dans les deux bases professionnelles et personnelles, ou tout au moins à des indications relatives au contenu de ces bases. Pour cela, un profil utilisateur 1005 est créé. Ce profil 1005 est différent du profil 1004 s'attachant à apprendre le comportement de l'utilisateur. Ce premier profil 1005 contient au minimum les données indispensables au fonctionnement du système:Figure 1 shows the concept of the invention highlighted. The following concept is based on the interaction between intelligent agents dedicated to solving the tasks of users working in heterogeneous environments. The modules or intelligent agents are represented by the elements 1000 to 1017. Today the users work under integrated environments, for example Microsoft Outlook, Lotus Notes, Symantec (registered trademark) to manage their calendars, contact list, task list to carry out, manage e-mails when the data is professional in nature and when it is on fixed workstations. In Figure 1, the different 1000-1017 modules can interact with different networks: intranet 1600, GSM 1500 RTC 1400, UMTS 1300 in future years, Internet 1200 and other 1100 networks like palmnet (registered trademark) or pager network or the ISDN network which is not mentioned in FIG. 1 although no difficulty would arise in integrating the system with this network. Also, users are required to have personal and professional data whether for calendars, contacts, emails, telephone numbers and others. These data can be stored in completely delocalized databases such as in a base 1611 stored on the hard disk of a personal workstation 1610 connected to the Intranet or on a base 1621 of a PDA 1620, or on a base 1631 of any workstation 1630 however connected to the Intranet Increasingly, they use databases stored remotely on the Internet in order to access data regardless of their location. These databases are represented by the elements 1121, 1211, 1221, 1222, 1231 and 1232. The users are also led to work from their personal assistant of the Palm pilot type (registered trademark) for example. Each database now has its own system for managing data. XML is not yet implemented for data exchanges between the various systems mentioned above. To access the data, for example, you must use methods developed by the creators of these databases. Microsoft uses OLE for example. In general, the data registered in a proprietary database is not directly accessible. And even if XML was already implemented, there would still be a tool to manage the flow of data between different environments. A user can have several differentiated databases on several different types of platforms as we have just presented. For example, the user can have a professional base 1611 on his workstation 1610, and a personal base 1621 on his PDA 1620. The professional base can be synchronized on the network (Intranet or Internet) automatically, and accessible to all. The personal database, on the other hand, is simply replicated regularly on the network and will only be accessible to him alone and to his personal agent. It may also not be replicated at all. It is of course necessary that the system can access the information contained in both professional and personal databases, or at least indications relating to the content of these databases. For this, a user profile 1005 is created. This profile 1005 is different from the profile 1004 which aims to learn the behavior of the user. This first profile 1005 contains at least the data essential for the functioning of the system:
• Identification de l'utilisateur • Mot de passe• User identification • Password
• Données nécessaires pour l'accès à la base professionnelle (emplacement, type de base, type d'agent, identification, mot de passe, algorithme d'accès, procédures en cas d'échec de lecture ou d'écriture)• Data necessary for access to the professional database (location, type of database, type of agent, identification, password, access algorithm, procedures in the event of failure to read or write)
• Données nécessaires pour l'accès aux bases personnelles • Mode de contact et coordonnées de l'utilisateur (GSM, SMS, courrier électronique)• Data required for access to personal databases • Contact mode and contact details of the user (GSM, SMS, email)
Par ailleurs, le profil 1004 peut aussi comporter d'autres informations susceptibles d'être intéressantes pour améliorer les performances, l'efficacité, la flexibilité et l'ergonomie du système. Par exemple, on peut très bien envisager d'intégrer les informations sur les plages horaires de travail de l'utilisateur. Le système peut donc se passer de consulter la base de données personnelle pendant les heures de travail, si l'utilisateur a défini sa base de donnée personnelle comme étant uniquement accessible pour des rendez-vous en dehors du temps de travail. On peut aussi intégrer une liste de personnes (contacts) et une série de pondérations quant à l'importance relative de ces personnes et le comportement du système face à une requête urgente de rendez- vous d'un de ceux-ci. On peut aussi programmer le système pour répondre à des demandes de rendez-vous automatiquement en fonction du requérant. Toutes ces informations sont partagées entre les deux types de profils 1004 et 1005.In addition, profile 1004 may also include other information which may be of interest for improving the performance, efficiency, flexibility and ergonomics of the system. For example, we can very well consider integrating the information on the user's working time slots. The system can therefore dispense with consulting the personal database during working hours, if the user has defined his personal database as being only accessible for appointments outside working hours. We can also integrate a list of people (contacts) and a series of weights as to the relative importance of these people and the behavior of the system when faced with an urgent request for an appointment. you from one of these. You can also program the system to respond to appointment requests automatically based on the requester. All this information is shared between the two types of profiles 1004 and 1005.
Pour les utilisateurs ayant une secrétaire, celle-ci possède un droit de regard relativement complet sur l'environnement de travail bien que ce regard soit accordé par le responsable qu'elle aide. Pour ce qui concerne les données en général, une forte tendance apparaît pour la gestion des données à l'aide de terminaux portables comme le Palm pilot, le Psion (marque déposée), le Pocket PC (marque déposée) et tous les PDAs ou téléphone portable permettant de gérer des données, tous de type 1120, 1310, 1410, 1510 et 1620. En effet, le marché des appareils portables est en pleine explosion et aucune solution ne permet d'avoir un environnement de travail similaire indépendant de la machine sur laquelle l'utilisateur est connecté. Une forte tendance apparaît aussi pour la délocalisation des données de types agendas pour être stockées sur l'Internet et donc accessible plus facilement et à partir d'un poste ayant une connexion Internet 1220.For users with a secretary, this one has a relatively complete right of scrutiny over the working environment although this gaze is granted by the manager she helps. Regarding data in general, a strong trend appears for data management using portable terminals such as the Palm pilot, Psion (registered trademark), Pocket PC (registered trademark) and all PDAs or phones portable allowing to manage data, all type 1120, 1310, 1410, 1510 and 1620. Indeed, the market for portable devices is exploding and no solution allows to have a similar working environment independent of the machine on which the user is connected to. A strong trend is also emerging for the delocalization of calendar-type data to be stored on the Internet and therefore more easily accessible and from a station with an Internet connection 1220.
L'idée sous jacente du système est qu'un agent est un processus dans un environnement multi tâche. Cet agent possède différents états. Ces états changent en fonction d'interaction avec d'autres agents. L'agent est programmé pour avoir un but en fonction du profil de son utilisateur. U n'est pas possible de l'extérieur de connaître le comportement d'un agent. Les agents entre eux échangent des messages. Les agents représentatifs de chaque utilisateur sont à l'écoute de tout changement dans les bases de données auxquelles des modifications interviennent Le programme principal fonctionne sur un serveur 1230 et / ou 1640. Le système peut aussi fonctionner sur chaque station de travail 1210, 1220, 1610, 1630. Certains modules peuvent fonctionner sur les serveurs et d'autres sur les stations de travail. A partir du profil des ressources, il est possible à l'agent coordinateur 1000 de connaître les endroits où il doit aller chercher les données et éventuellement les ressources comme les agents intelligents pour effectuer les différentes tâches qu'il doit résoudre. L'agent coordinateur 1000 se trouve sur le serveur interne d'une entreprise 1640, sur un serveur Internet 1230 ou bien encore sur un appareil mobile du type PDA 1620. Cet agent coordinateur 1000 communique avec un ensemble d'agents intelligents et un profil utilisateur 1005 mentionné précédemment. Cet agent coordinateur 1000 échange avec d'autres agents 1001-1017 des informations sous un format standard d'échange de données, par exemple de type XML, coordonnant et gérant: La détection et le type de connexion que l'utilisateur emploie, module 1001 les agendas et la prise de rendez-vous, module 1002 les contacts, module 1003 les courriers électroniques, module 1012 les appels téléphoniques, module 1013 les fax, module 1011 les tâches à effectuer, module 1008 les mémos, implémenté dans le module de l'agenda 1002 la recherche d'informations sur l'Internet, module 1016 la recherche d'information sur l'Intranet, module 1010 le niveau de rendement de l'utilisateur, module 1009 les ressources matérielles du type des salles à allouer pour une réunion, module 1006 les ressources matérielles du type matériel de bureau nécessaire (projecteur ou autres), module 1006 les ressources non matérielles comme la commande de rafraîchissements auprès d'un établissement spécialisé, module 1018 ( non représenté sur la figure 1) les activités quotidiennes de l'utilisateur, module 1017 les achats de l'utilisateur en cas d'achats en ligne sur Internet les périphériques de l'environnement de travail, module 1007 (cela peut aussi être un module à part) l'environnement de communication (Interner, Intranet, GSM, UMTS, Palmnet, Bluetooth, pageurs et autres), module 1007 les profils utilisateur quant au comportement et aux préférences, module 1004 les profils techniques pour les utilisations des ressources comme les bases de données ou les modules précédemment cités, module 1005 la gestion des connaissances des utilisateurs, module 1014 l'apparence de la fenêtre graphique utilisateur, module 1015The underlying idea of the system is that an agent is a process in a multitasking environment. This agent has different states. These states change based on interaction with other agents. The agent is programmed to have a goal based on the profile of its user. It is not possible from the outside to know the behavior of an agent. The agents exchange messages with each other. The agents representative of each user are attentive to any change in the databases to which modifications take place. The main program runs on a 1230 and / or 1640 server. The system can also run on each workstation 1210, 1220, 1610, 1630. Some modules can run on servers and others on workstations. From the resource profile, it is possible for the coordinating agent 1000 to know the places where he must fetch the data and possibly the resources such as intelligent agents to perform the various tasks which he has to solve. The coordinating agent 1000 is located on the internal server of a company 1640, on an Internet server 1230 or even on a mobile device of the PDA 1620 type. This coordinating agent 1000 communicates with a set of intelligent agents and a user profile 1005 previously mentioned. This coordinating agent 1000 exchanges with other agents 1001-1017 information in a standard data exchange format, for example of XML type, coordinating and managing: The detection and the type of connection that the user uses, module 1001 calendars and making appointments, module 1002 contacts, module 1003 e-mails, module 1012 telephone calls, module 1013 faxes, module 1011 tasks to be carried out, module 1008 memos, implemented in the agenda module 1002 information retrieval on the Internet, module 1016 information retrieval on the intranet, module 1010 user performance level , module 1009 material resources of the type of rooms to be allocated for a meeting, module 1006 material resources of the type of office equipment required (projector or other), module 1006 non-material resources such as ordering refreshments from a specialized establishment , module 1018 (not shown in FIG. 1) the daily activities of the user, module 1017 the purchases of the user in the event of online purchases on the Internet. work environment peripherals, module 1007 (this can also be a separate module) the communication environment (Internet, Intranet, GSM, UMTS, Palmnet, Bluetooth, pagers and others), module 1007 user profiles for behavior and preferences, module 1004 technical profiles for resource uses such as databases or previously mentioned modules, module 1005 user knowledge management, module 1014 the appearance of the graphical user window, module 1015
Les différents agents vont maintenant être décrits par rapport au système global. Us possèdent tous leur propre interface utilisateur et interagissent avec les autres types d'agents. • Utilisation de l'agent de détection d'une connexion et de son typeThe different agents will now be described in relation to the overall system. They all have their own user interface and interact with other types of agents. • Using the connection detection agent and its type
Un agent sert à détecter si un utilisateur est connecté au système communiquant ainsi à l'agent coordinateur l'autorisation de transmettre des messages destinés à celui-ci. Ce module permet parallèlement de détecter le type de connexion comme la connexion à partir d'un PDA, d'une station de travail sur l'Intranet ou l'Internet, de sa station de travail personnelle connectée à l'Intranet ou à l'Internet ou encore à, partir d'un téléphone. Le fait de connaître le type de connexion permet à l'agent coordinateur de transmettre les messages sous une forme appropriée optimisant la réception des données en fonction du support. Cela est très utile lorsqu'on est connecté avec un PDA par exemple et que les capacités de la machine sont restreintes. Naturellement, il n'est pas bien utile de transmettre des informations qui ne pourront pas être bien interprétées par l'utilisateur. Cela permet donc de communiquer avec l'utilisateur de manière adaptée.An agent is used to detect if a user is connected to the system, thereby communicating to the coordinating agent the authorization to transmit messages intended for the latter. This module also makes it possible to detect the type of connection such as the connection from a PDA, a workstation on the Intranet or the Internet, his personal workstation connected to the Intranet or to the Internet or from a phone. Knowing the type of connection allows the coordinating agent to transmit the messages in an appropriate form optimizing the reception of data depending on the medium. This is very useful when you are connected with a PDA for example and the capacities of the machine are limited. Naturally, it is not very useful to transmit information which cannot be well interpreted by the user. This therefore makes it possible to communicate with the user in an appropriate manner.
• Utilisation de l'agent coordinateur Cet agent sert à gérer les activations d'autres agents pour obtenir des réponses aux requêtes souhaitées. Son rôle est bien particulier. Il est programmé en Java (marque déposée) bien que ce ne soit pas une solution unique à partir du moment où un autre langage de programmation gère des processus en parallèle. Aujourd'hui les différents agents sont programmés en Java parce que Java est portable et permet l'exécution de processus en parallèle. Cet agent fait appel à une base de donnée où sont enregistrés les profils des l'utilisateurs tels que l'endroit où se trouvent les données concernant les agendas possibles et autres ressources vues précédemment. L'agent coordinateur est celui qui provoque l'appel d'autres agents pour obtenir les données lui permettant de gérer l'intégralité du système. XI est la passerelle entre tous les modules et les différentes architectures. Cet agent accède aussi aux données sur l'utilisateur et renseigne les autres modules comme celui gérant les courriers électroniques. Il existe un fichier où sont répertoriées les conditions, les contraintes et les préférences que tous les agents utilisent pour répondre aux requêtes de l'agent coordinateur. L'agent coordinateur demande des requêtes du style: cherche des informations sur ce rendez-vous..., ensuite l'agent de recherche exécute la recherche en ayant en paramètre ce que l'agent coordinateur lui a passé. La réponse de cet agent recherche est ensuite donnée et l'agent coordinateur détermine si il est nécessaire de lancer une prise de rendez-vous d'un intervalle de temps suffisant pour laisser du temps à l'utilisateur pour lire les informations collectées.• Use of the coordinating agent This agent is used to manage the activations of other agents to obtain responses to the requests requested. Its role is very special. It is programmed in Java (registered trademark) although it is not a unique solution from the moment when another programming language manages processes in parallel. Today the various agents are programmed in Java because Java is portable and allows the execution of processes in parallel. This agent uses a database which stores user profiles such as the location of data on possible calendars and other resources seen previously. The coordinating agent is the one who calls other agents to obtain the data enabling him to manage the entire system. XI is the bridge between all the modules and the different architectures. This agent also accesses data on the user and informs other modules such as the one managing e-mails. There is a file that lists the conditions, constraints and preferences that all agents use to respond to requests from the coordinating agent. The coordinating agent requests requests of the style: searches for information on this appointment ..., then the search agent executes the search, having as parameter what the coordinating agent passed him. The response of this search agent is then given and the coordinating agent determines whether it is necessary to initiate an appointment for an interval of time sufficient to allow the user time to read the information collected.
11 va de soi que lorsqu'un utilisateur reçoit du courrier électronique qui doit être lu et être assimilé, alors cet agent emploiera un autre agent qui déterminera en fonction des moments de stress les moins importants calculés par rapport à l'activité de l'utilisateur le moment opportun pour réserver du temps à la lecture et éventuellement à la réponse aux courriers électroniques. Cette fonction sera définie ultérieurement. Il en va de même pour les appels téléphoniques qu'il faut écouter et qui sont dans la boite vocale. Cet agent permet aussi de gérer le niveau d'interruption que l'utilisateur est prêt à accepter pendant un rendez-vous ou pendant une tâche qu'il effectue sur un créneau horaire prédéfini. Cet agent permet aussi de gérer en tâche de fond les interactions avec des mémos eux-mêmes gérés dans le module de gestion de l'agenda et de prise de rendez-vous. Ces mémos peuvent porter sur des durées définies par l'utilisateur et concerner certains environnements de travail et pas d'autres. L'agent coordinateur fait aussi appel à une base de donnée contenant les actions à exécuter pour réaliser les tâches demandées par l'utilisateur. Par exemple si un utilisateur veut organiser un repas avec un autre utilisateur alors la liste contiendra les informations suivantes, par exemple:It goes without saying that when a user receives electronic mail which must be read and assimilated, then this agent will employ another agent who will determine according to the least significant stress moments calculated in relation to the activity of the user the right time to reserve time for reading and possibly responding to emails. This function will be defined later. The same goes for telephone calls that must be listened to and that are in the voice mailbox. This agent also allows you to manage the level of interruption that the user is ready to accept during an appointment or during a task. that it performs on a predefined time slot. This agent also makes it possible to manage in the background the interactions with memos themselves managed in the agenda management and appointment scheduling module. These memos can relate to user-defined durations and concern certain working environments and not others. The coordinating agent also calls on a database containing the actions to be carried out to carry out the tasks requested by the user. For example if a user wants to organize a meal with another user then the list will contain the following information, for example:
• trouver le nom d'un restaurant dans le quartier qui se trouve à une distance d'environ 5 minutes• find the name of a restaurant in the neighborhood which is about 5 minutes away
• trouver le numéro de téléphone de ce restaurant• find the phone number of this restaurant
• envoyer une proposition de rendez vous pour un repas commun aux personnes concernées• send a proposed meeting for a common meal to the people concerned
• en fonction de leurs réponses, inscrire sur l'écran la proposition de validation ainsi que Xes informations nécessaires à l'utilisateur pour réserver. L'agent gérant les activités de l'utilisateur s'occupera d'effectuer les tâches en rapport avec la liste fournie par l'agent coordinateur. Il sera possible d'organiser une réservation par Internet le jour où l'infrastructure le permettra.• according to their answers, enter on the screen the validation proposal as well as the information necessary for the user to book. The agent managing the activities of the user will take care of performing the tasks related to the list provided by the coordinating agent. It will be possible to organize a reservation by Internet the day when the infrastructure will allow it.
Une même suggestion peut être prise en compte pour un utilisateur souhaitant aller en vacances ou en week-end quelque part et nécessitent des informations sur une certaine destination, sur certaines agences de voyage, sur leur offres. Il faut aussi pouvoir contacter les agendas des personnes que cela peut intéresser comme l'agenda du partenaire dans la vie de l'utilisateur ou bien celui de l'école pour savoir si il y a des sorties déjà proposées pour les enfants à ces périodes. Le profil de l'utilisateur est bien une des seules solutions pour savoir où aller chercher les données personnelles relatives à l'utilisateur. L'agent coordinateur peut aussi servir à envoyer des requêtes pour interagir avec l'agent gérant les activités de l'utilisateur comme par exemple, la réservation de moyens de transport. Il peut donner aussi par exemple l'état du trafic à un moment donné et à un endroit donné. L'agent coordinateur a pour rôle principal d'émettre des requêtes et évaluer les réponses pour prendre des décisions sur les actions à mener. L' agent coordinateur peut aussi servir à comparer des offres. H peut servir à programmer des visioconférences et à paramétrer celles-ci.The same suggestion can be taken into account for a user wishing to go on vacation or weekend somewhere and require information on a certain destination, on certain travel agencies, on their offers. It is also necessary to be able to contact the agendas of people who may be interested, such as the partner's agenda in the life of the user or that of the school to find out if there are outings already offered for children during these periods. The user profile is indeed one of the only solutions for knowing where to get personal data relating to the user. The coordinating agent can also be used to send requests to interact with the agent managing the user's activities, for example, the reservation of means of transport. It can also give for example the state of traffic at a given time and at a given location. The main role of the coordinating agent is to issue requests and evaluate the responses to make decisions on the actions to be taken. The coordinating agent can also be used to compare offers. It can be used to program videoconferences and to configure them.
Cet agent sert aussi à préciser à une secrétaire qu'il faut faire 200 photocopies d'un document spécial pour le rendez-vous prévu à moment donné. Cet agent s'occupe de mettre à jour la liste des tâches à effectuer de la secrétaire. Automatiquement, des rafraîchissements peuvent être commandés pour ce rendez-vous en fonction des goûts des participants. • Utilisation de l'agent pour gérer la prise de rendez vous dans un agendaThis agent also serves to specify to a secretary that 200 photocopies of a special document must be made for the scheduled appointment at a given time. This officer is responsible for updating the secretary's to-do list. Automatically, refreshments can be ordered for this meeting according to the tastes of the participants. • Using the agent to manage the scheduling of appointments
L'utilisation de ces agents est un très bon exemple de coopération d'agents autonomes dans un système multi agents. Les personnes doivent négocier des propositions, puis souvent des contre propositions pour arriver à trouver un commun accord prenant en compte les contraintes ou préférences de chacun des participants. Il existe des problèmes lorsque plusieurs personnes ayant différentes préférences sont contactées pour un rendez-vous et que chacune de ces personnes ne connaît pas les contraintes des autres personnes. Chaque agent représentatif d'une personne possède les compétences pour aller chercher des informations dont l'utilisateur a besoin, pour aller négocier avec d'autres agents les horaires des rendez-vous par exemple en fonction de plusieurs niveaux de priorité relative. Pour les rendez-vous, quand l'utilisateur demande une prise de rendez-vous avec une personne ou un groupe de personnes, son assistant personnel électronique intelligent va négocier avec d'autres agents personnels ou d'autres agents représentatifs d'autres assistants personnels électroniques intelligents des personnes en question et va initier un processus de négociation prenant en compte des contraintes diverses du type importance relative du preneur de rendez-vous par rapport aux différentes personnes contactées, priorités relatives de la plage horaire, du lieu, de l'objet du rendez-vous, priorités relative des ressources matérielles comme la disponibilité des salles pour organiser le rendez-vous, la disponibilité du matériel à affecter à ce rendez-vous. Les agents mis en cause pour la prise de rendez vous possèdent certaines caractéristiques comme le fait de gérer les entrées en utilisant la logique floue. Un autre paramètre intéressant du système est qu'il garde privée toutes données concernant les utilisateurs. Ce sont les agents entre eux qui après négociation vont arriver à un arrangement. A aucun moment les données situées sur les différents systèmes mis en cause ne sont divulguées à un utilisateur non maître. Un utilisateur peut en effet dans ce système avoir des données sous la forme de système propriétaire, par exemple Microsoft, Lotus, Symantec pour ce qui est des systèmes fixes et en plus des données situées sur leur PDA ou téléphone mobile stockées dans un format différent. Dans notre système, les agents peuvent s'interfacer avec différents systèmes accédant à différentes bases de données. Les agents sont choisis parmi une base de donnée agent possédant des agents prévus pour fonctionner sous différents systèmes d'exploitations. Dans l'implémentation de notre système, nous considérons l'usage d'agents intelligents comme une aide aux utilisateurs ou bien comme une aide aux secrétaires représentantes de personnes comme des dirigeants de sociétés ou bien des personnes ayant un emploi du temps surchargé dans lequel une optimisation en fonction de différents critères comme l'importance des personnes avec qui un rendez-vous doit être pris, la plage horaire, le lieu, le sujet, rimportance de l'objet du rendez-vous fera le bonheur de tout le monde. Le système d'agents est interactif avec les données sur l'utilisateur et sur son comportement dans le but de trouver l'agent qui va lui donner les réponses a ses requêtes. Les agents ne prennent pour le moment pas de décision quant à la prise de rendez vous. Ils échangent des données puis lorsque toutes les données sont compatibles avec l'agenda des personnes, que les priorités et importances sont respectées, un choix est proposé aux utilisateurs à la fin du processus de négociation. Ceux ci doivent valider le résultat de la négociation entre agents pour que les agents mettent à jour les différentes bases de données propres à chaque personne ayant été contactée.The use of these agents is a very good example of cooperation of autonomous agents in a multi-agent system. People must negotiate proposals, then often counter proposals to arrive at a common agreement taking into account the constraints or preferences of each of the participants. There are problems when several people with different preferences are contacted for an appointment and each of these people does not know the constraints of the other people. Each representative agent of a person has the skills to fetch information that the user needs, to negotiate with other agents the schedules of appointments for example according to several levels of relative priority. For appointments, when the user requests an appointment with a person or a group of people, his intelligent electronic personal assistant will negotiate with other personal agents or other agents representative of other personal assistants intelligent electronics of the people in question and will initiate a negotiation process taking into account various constraints such as the relative importance of the appointment taker compared to the different people contacted, relative priorities of the time slot, place, object of the meeting, relative priorities of material resources such as the availability of rooms to organize the meeting, the availability of the material to be assigned to this meeting. The agents questioned for making appointments have certain characteristics, such as managing entries using fuzzy logic. Another interesting parameter of the system is that it keeps all data concerning users private. It is the agents among themselves who, after negotiation, will arrive at an arrangement. At no time are the data located on the different systems in question disclosed to a non-master user. A user can indeed in this system have data in the form of a proprietary system, for example Microsoft, Lotus, Symantec with regard to fixed systems and in addition to the data located on their PDA or mobile phone stored in a different format. In our system, agents can interface with different systems accessing different databases. The agents are chosen from an agent database having agents intended to operate under different operating systems. In the implementation of our system, we consider the use of intelligent agents as an aid to users or as an aid to secretaries representing people like managers of companies or people with an overloaded timetable in which a optimization based on different criteria such as the importance of the people with whom an appointment must be made, the time slot, the place, the subject, the importance of the subject of the appointment will make everyone happy. The agent system is interactive with data on the user and his behavior in order to find the agent who will give him the answers to his requests. The agents do not currently make a decision about making an appointment. They exchange data then when all the data is compatible with the agenda of the people, that the priorities and importance are respected, a choice is proposed to the users at the end of the process negotiation. They must validate the result of negotiation between agents so that the agents update the different databases specific to each person who has been contacted.
La description de cet agent sera complétée lorsque les figures 3 et 5 seront décrites.The description of this agent will be completed when Figures 3 and 5 are described.
• Utilisation des agents pour la gestion des contacts• Use of agents for contact management
Les agents servent aussi à gérer la base de données des contacts. Les contacts peuvent être répartis en une pluralité de domaines dont le domaine professionnel et le domaine personnel. Le rôle de ces agents est d'aller chercher toutes les informations sur les contacts des personnes pour garder mis à jour les listes de contacts. Si il le faut, cet agent ira dans une base de donnée située sur internet pour aller demander la carte de visite des personnes à rencontrer. Encore une fois, les contacts ne sont pas forcément enregistrés aux mêmes endroits. Aussi ces endroits ne sont pas forcément homogènes dans leur format de stockage. Par exemple, le fait d'actualiser ses contacts à partir d'une liste de contact stockée sur l'Internet est automatisable à l'aide de ces agents. Cette liste pourrait contenir tous les éléments relatifs à des contacts, par exemple une liste de Ncard (carte de visite électronique d'une personne au format électronique). Cette liste pourrait être située sur l'Internet ou sur le réseau interne d'une entreprise. Cette liste n'existe pas aujourd'hui alors qu'elle serait nécessaire.Agents are also used to manage the contact database. Contacts can be divided into a plurality of areas including the professional area and the personal area. The role of these agents is to get all the contact information of people to keep the contact lists up to date. If necessary, this agent will go to a database located on the internet to go and ask for the business card of the people to meet. Again, contacts are not necessarily saved in the same places. Also these places are not necessarily homogeneous in their storage format. For example, updating your contacts from a contact list stored on the Internet can be automated using these agents. This list could contain all the elements relating to contacts, for example a list of Ncard (electronic business card of a person in electronic format). This list could be located on the Internet or on a company's internal network. This list does not exist today when it would be necessary.
• Utilisation des agents pour la gestion du coumer électronique• Use of agents to manage electronic coumer
Ces agents servent à gérer les courriers électroniques pour le filtrage en fonction de rimportance du courrier électronique par rapport à son contenu pour pouvoir préciser par exemple à l'utilisateur si un courrier électronique doit être lu en urgence ou bien si il peut attendre. Les courriers peuvent provenir de plusieurs adresses. Ce sont les agents qui s'occupent d'aller lire les messages à ces adresses et de les trier. Si un courrier électronique arrive et qu'il est en rapport avec un rendez-vous proche alors il est noté à lire bientôt, quand il y a plusieurs «bientôt» à lire alors le système réserve une plage horaire de quelques minutes pour aller lire ces courriers électroniques par le biais de l'agent coordinateur. Un code de couleur permet de distinguer la provenance et l'importance des courriers traités. Cet agent de gestion de courrier électronique utilise les données de l'entête, des adresses des récepteurs si il y en a plusieurs et le sujet du courrier électronique pour définir des priorités à donner. Plusieurs niveaux de priorités sont donnés: élevé, moyen et bas. La date à laquelle les lire est aussi basée sur les différents paramètres comme l'entête, les adresses et le sujet. Le système prend en compte le temps mis dans le passé pour lire les courriers provenant de certaines adresses, en rapport avec le même sujet et en relation avec les différents receveurs et détermine l'importance en fonction de ce paramètre historique. Cet agent possède sa propre interface utilisateur permettant de visualiser les courriers en fonction de leur importance. Aussi trois icônes permettront de visualiser les courriers en permanence en fonction de leur priorité. • Utilisation des agents pour la gestion des appels téléphoniquesThese agents are used to manage e-mails for filtering according to the importance of the e-mail in relation to its content in order to be able to specify for example to the user whether an e-mail should be read urgently or whether he can wait. Mail can come from several addresses. It is the agents who take care of reading messages and sorting them. If an email arrives and it is related to a close appointment then it is noted to read soon, when there are several "soon" to read then the system reserves a time slot of a few minutes to read these e-mails through the coordinating agent. A color code distinguishes the origin and importance of the mail processed. This email management agent uses the data of the header, the addresses of the recipients if there are several and the subject of the email to define priorities to be given. Several priority levels are given: high, medium and low. The date on which to read them is also based on various parameters such as the header, the addresses and the subject. The system takes into account the time taken in the past to read the mails coming from certain addresses, in relation to the same subject and in relation to the various recipients and determines the importance according to this historical parameter. This agent has its own user interface allowing to view the mails according to their importance. Also three icons will allow you to view the mails permanently according to their priority. • Use of agents to manage phone calls
Ces agents permettent de gérer la boite vocale et les appels téléphoniques de l'utilisateur. Les appels peuvent provenir de l'environnement personnel ou de l' environnement professionnel. Certains appels en fonction de leur provenance sont jugés importants ou pas et en fonction de cette importance sont interceptés pour être envoyés soit sur le poste de l'utilisateur soit sur leur boite vocale. Un agent de ce type agent se sert des informations contenues dans les autres bases de données relatives aux types de rendez-vous dans lequel se trouve l'utilisateur actuellement ou par rapport à sa possibilité d'être interrompu. Si l'appel entrant est filtré, l'agent répond par exemple à l'appelant que la personne ne peut être dérangé. Ce type d'agents a pour rôle de manipuler tous les objets relatifs aux appels téléphoniques.These agents manage the user's mailbox and telephone calls. The calls can come from the personal environment or the professional environment. Certain calls according to their origin are judged important or not and according to this importance are intercepted to be sent either on the user station or on their voice mailbox. An agent of this agent type makes use of the information contained in the other databases relating to the types of appointment in which the user is currently present or in relation to his possibility of being interrupted. If the incoming call is screened, the agent answers for example to the caller that the person cannot be disturbed. This type of agents has the role of handling all objects relating to telephone calls.
• Utilisation des agents pour la gestion des fax• Use of agents for fax management
Cet agent permet de faire des fonctions de filtrage sur les fax en fonction de l'environnement dans lequel ils doivent être considérés. Cet agent permet de détourner certains fax privés d'une machine principale pour les imprimer, de sorte que l'utilisateur puisse garder la confidentialité des données de ces fax. Les fax sont mis provisoirement dans une mémoire et sont envoyés à l'impression quand l'utilisateur le souhaite. Aussi, les agents peuvent examiner le contenu des fax et prévenir l'agent coordinateur qu'il faut réserver un lapse de temps à l'utilisateur pour lire ces fax, peut être avant un rendez-vous.This agent makes it possible to perform filtering functions on faxes according to the environment in which they must be considered. This agent makes it possible to divert certain private faxes from a main machine to print them, so that the user can keep the confidentiality of the data of these faxes. The faxes are temporarily stored in a memory and are sent for printing when the user wishes. Also, the agents can examine the content of the faxes and warn the coordinating agent that the user must be given a certain amount of time to read these faxes, perhaps before an appointment.
• Utilisation des agents pour la gestion des tâches• Use of agents for task management
Cet agent est un agent qui permet de gérer les tâches en allant interagir avec une liste d'opérations à effectuer pour accomplir une tâche. En fonctions de ces diverses opérations, le système allouera du temps à rutilisateur pour réaliser les actions à accomplir. Une liste d'actions à mener en fonction de la tâche se trouve dans une des bases de données que l'utilisateur peut accéder parce que l'adresse de cette base se trouve dans la base de donnée des ressources 1021.This agent is an agent which makes it possible to manage tasks by going to interact with a list of operations to be carried out to accomplish a task. Depending on these various operations, the system will allocate time to the user to perform the actions to be performed. A list of actions to be carried out depending on the task is found in one of the databases that the user can access because the address of this database is found in the resource database 1021.
• Utilisation des agents pour la gestion des mémos• Using agents to manage memos
Cet agent permet de gérer les mémos de rutilisateur par rapport à ces activités. Les mémos sont des informations valables sur période prédéfinie par l'utilisateur. Ceux-ci doivent l'aider lors de la phase de validation d'une prise de rendez-vous. Ces mémos peuvent être affiché périodiquement pour empêcher l'utilisateur d'oublier. Cependant, le fréquence de rappel de ces mémos variera en fonction des actions que l'utilisateur effectue. L'utilisateur peut définir la période de validité de ces mémos et aussi le contexte dans lequel ils doivent apparaître par exemple l'environnement personnel ou bien l'environnement professionnel. • Utilisation des agents pour la recherche d'informations sur l'Internet ou l'Intranet Des agents servent à aller chercher des informations sur l'Internet ou sur l'Intranet lorsqu'un utilisateur a besoin d'informations sur le sujet d'un rendez-vous. Un agent est lancé à la recherche d'informations sur le site Intranet ou sur l'Internet. Les différentes informations trouvées sont stockées dans un fichier et un créneau horaire précédent le rendez-vous sera réservé à la lecture de ce fichier. Les agents de recherche prennent en compte l'historique des recherches effectuées précédemment pour pouvoir obtenir l'information souhaitée par l'utilisateur. Ces agents recherches permettent de gérer la classification de certains documents nécessaire aux utilisateurs.This agent is used to manage user memos in relation to these activities. Memos are information valid for a period predefined by the user. They must help him during the validation phase of making an appointment. These memos can be posted periodically to prevent the user from forgetting. However, the frequency of recall of these memos will vary depending on the actions that the user performs. The user can define the period of validity of these memos and also the context in which they must appear, for example the personal environment or the professional environment. • Using agents to search for information on the Internet or the Intranet Agents are used to fetch information on the Internet or on the Intranet when a user needs information on the subject of a Appointment. An agent is launched in search of information on the Intranet site or on the Internet. The various information found is stored in a file and a time slot preceding the meeting will be reserved for reading this file. The search agents take into account the history of the searches carried out previously in order to be able to obtain the information desired by the user. These search agents are used to manage the classification of certain documents necessary for users.
• Utilisation des agents pour la gestion de l'activité des utilisateurs.• Use of agents to manage user activity.
En fonction de l'état de stress des utilisateurs , des tâches nécessitant très peu de stress seront exécutées. Le niveau de stress est mesuré par rapport aux mouvements de la souris comme le double clique utilisé abusivement ou bien mesuré par l'utilisation intensive des touches du clavier pour effacer ou bien encore par le fait d'appuyer sur beaucoup de touches en même temps, tout cela par rapport à son utilisation quotidienne dans l'environnement. Les tâches nécessitant très peu de stress sont par exemple la lecture de courriers non importants, l'entretien téléphonique avec des gens avec qui l'importance de ne pas rater son entretien soit primordiale. Après la phase d'apprentissage, l'agent de prise de rendez-vous déconseillera de prendre certains rendez-vous aux plages horaires connues représentant un moment de stress où l'utilisateur est moins efficace, tout cela bien entendu en prenant en compte toutes les contraintes enregistrées dans le système. Cet agent communique intégralement avec l'agent gérant l'interface multi mode.Depending on the stress level of the users, tasks requiring very little stress will be performed. The level of stress is measured in relation to the movements of the mouse such as the double click used improperly or measured by the intensive use of the keys of the keyboard to erase or even by the fact of pressing on many keys at the same time, all this compared to its daily use in the environment. Tasks requiring very little stress are, for example, reading unimportant emails, telephone interviews with people with whom the importance of not missing their interview is paramount. After the learning phase, the appointment scheduling agent will advise against making certain appointments at known time periods representing a moment of stress where the user is less efficient, all of course taking into account all of the constraints recorded in the system. This agent communicates fully with the agent managing the multi-mode interface.
• Utilisation des agents pour la gestion du matériel D'autres agents sont considérés pour gérer des profils matériels comme l'emploi du temps du matériel ou bien l'allocation des salles voire même l'état de ceux-ci, si ils nécessitent des réparations, de l'entretien, du nettoyage, de la maintenance ou une préparation spécifique avant un rendez-vous particulier.• Use of agents for the management of equipment Other agents are considered to manage equipment profiles such as the timetable of the equipment or the allocation of rooms or even their condition, if they require repairs. , maintenance, cleaning, upkeep or specific preparation before a particular appointment.
• Utilisation des agents pour la gestion des ressources non matérielles• Use of agents for the management of non-material resources
Ces agents ont pour but de commander des rafraîchissements auprès d'un établissement spécialisé et de réserver une personne pour servir lors d'une réunion avec beaucoup de participants par exemple. • Utilisation des agents pour gérer l'activité de l'utilisateurThe purpose of these agents is to order refreshments from a specialized establishment and to reserve a person to serve during a meeting with many participants, for example. • Using agents to manage user activity
Ces agents permettent entre autres de gérer les nouvelles quotidiennes au format électronique provenant de l'Internet, des groupes de nouvelles, etc.. Ils permettent la gestion du trafic routier en prenant les trajets de I'utiUsateur et en rassemblant les informations pour l'assister dans ses soucis quotidiens quant aux encombrements autoroutiers. Un thésaurus est aussi disponible pour l'aider dans la formulation des communiqués.These agents make it possible, among other things, to manage daily news in electronic format from the Internet, news groups, etc. They allow traffic management by taking the routes of the user and collecting information for the user. assist in their daily worries about motorway congestion. A thesaurus is also available to help it formulate press releases.
• Utilisation des agents pour le paiement en ligne• Use of agents for online payment
Cet agent est chargé de prendre toutes les données relatives à des achats en ligne, s'occuper de payer des billets de transports pour un utilisateur en fonction du profil de rutilisateur, i.e. une utilisateur peut vouloir acheter un billet en classe affaire si c'est pour son travail et un billet en classe économique si c'est pour son usage personnel. Une fois le processus de réservation établi, l'agent demandera à l'utilisateur de valider son achat en entrant les informations pour autoriser le paiement. Cet agent se charge de gérer vos achats et prévient l'utilisateur de l'état de ses achats. Cet agent gère aussi le paiement sécurisé des achats en rendant possible au commerçant de visualiser les données de l'acheteur et en échangeant avec son agent des informations confidentielles sous forme cryptée.This agent is responsible for taking all data relating to online purchases, paying for transport tickets for a user according to the ruser profile, ie a user may want to buy a business class ticket if it is for his work and an economy class ticket if it is for his personal use. Once the booking process has been established, the agent will ask the user to confirm their purchase by entering the information to authorize payment. This agent is responsible for managing your purchases and notifies the user of the status of his purchases. This agent also manages the secure payment of purchases by making it possible for the merchant to view the buyer's data and by exchanging confidential information with his agent in encrypted form.
• Utilisation des agents pour la gestion des périphériques de l'environnement de travail Cet agent a pour rôle d'examiner l'environnement de travail et de communication C'est en quelques sortes un module interagissant avec une interface multi mode. Si un utilisateur possède une caméra, l'agent demandera à l'utilisateur de pouvoir le visualiser pour déterminer son état de fatigue à l'aide d'autres agents ou bien si l'utilisateur possède un microphone alors il sera proposé d'interfacer avec l'assistant personnel électronique intelligent en rentrant des commandes vocales.• Use of agents for the management of peripherals in the working environment This agent has the role of examining the working and communication environment. It is in a way a module interacting with a multi-mode interface. If a user has a camera, the agent will ask the user to be able to view it to determine his state of fatigue using other agents or if the user has a microphone then he will be offered to interface with the intelligent electronic personal assistant by entering voice commands.
Dans le système implicitement mis en œuvre un module de reconnaissance vocale ou reconnaissance de caractère manuel utilisant le stylet d'un appareil portable par exemple ou avec une ardoise électronique connectée à l'ordinateur et possédant l'interface utilisateur dessus, peut être employé pour la saisie des informations. Le module gérant l'environnement périphérique, module 1007 ou bien un module séparé non représenté sur la figure 1, comprend une interface multi mode permettant de gérer les données lorsqu'elles sont entrées à l'aide de la voix ou par des images lorsqu'une caméra est utilisée. On note au passage que la caméra sert à convertir les données sous forme d'images en des données digitales traitables par le module état utilisateur 1009. De même, cet agent gère les différents périphériques adaptés pour interagir avec le système. Certaines imprimantes seront sûrement plus adaptées que d'autres pour faire un travail par exemple, en fonction de leur rapidité. Si un document doit être imprimé confidentiellement alors cet agent lancera la tâche d'impression à une imprimante locale. • Utilisation des agents pour la gestion de l'environnement de communicationIn the system implicitly implemented, a voice recognition or manual character recognition module using the stylus of a portable device for example or with an electronic slate connected to the computer and having the user interface above, can be used for the entering information. The module managing the peripheral environment, module 1007 or else a separate module not shown in FIG. 1, includes a multi-mode interface making it possible to manage the data when it is entered using the voice or through images when a camera is used. We note in passing that the camera is used to convert data in the form of images into digital data that can be processed by the user state module 1009. Likewise, this agent manages the various peripherals adapted to interact with the system. Some printers will surely be more suited than others to do a job for example, depending on their speed. If a document is to be printed confidentially then this agent will initiate the print job to a local printer. • Use of agents for the management of the communication environment
En fonction de renvironnement de communication Internet, Intranet, GSM, UMTS, Palmnet, Bluetooth, pageurs et autres, l'utilisateur ne se verra pas offert les mêmes services, quant aux capacités et vitesses d'exécution des traitements de certaines tâches. Si la bande passante est faible et que le système central a beaucoup d'interactions à établir avec une base de donnée personnelle alors le système demandera à l'utilisateur de se connecter de préférence avec un système ayant plus de capacités d'échange de donnée. On peut penser qu'une vague de service utilisant des agents intelligents et XML comme langage d'échange de donnée va bientôt voir le jour et donc il faudra pouvoir les incorporer au système, cependant si ceux-ci réduisent les performances de ce dernier, l'agent de gestion des périphériques permettra de faire le choix des services que l'utilisateur pourra employer efficacement.Depending on the Internet, Intranet, GSM, UMTS, Palmnet, Bluetooth, pagers and other communication environments, the user will not be offered the same services as regards the capacities and speed of execution of the processing of certain tasks. If the bandwidth is low and the central system has a lot of interactions to establish with a personal database then the system will ask the user to connect preferably with a system with more data exchange capacities. One might think that a wave of service using intelligent agents and XML as the data exchange language will soon see the light of day and therefore it will be necessary to be able to incorporate them into the system, however if these reduce the performance of the latter, the The device management agent will allow you to choose the services that the user will be able to use effectively.
• Utilisation des agents pour la gestion des profils utilisateur quant au comportement et aux préférences Ces agents intelligents apprennent le comportement des utilisateurs dans le but de les aider au fur et à mesure dans leur prise de décision. Initialement des préférences sont inscrites dans la base de donnée 1020 et permettent de renseigner les autres agents sur les préférences et contraintes qu'un utilisateur peut avoir.• Use of agents to manage user profiles with regard to behavior and preferences These intelligent agents learn the behavior of users in order to help them gradually in their decision-making. Initially preferences are entered in the database 1020 and allow other agents to be informed about the preferences and constraints that a user may have.
• Utilisation des agents pour la gestion des profils techniques pour les utilisations des ressources• Use of agents for the management of technical profiles for resource uses
Ces agents servent à renseigner physiquement sur les type de d'agents utilisables et sur les données auxquelles ils peuvent accéder. La base de donnée 1021 donne des indications sur les adresses des différents serveurs permettant de répondre aux requêtes.These agents are used to provide physical information on the types of agents that can be used and on the data to which they can access. The database 1021 gives indications on the addresses of the various servers making it possible to respond to requests.
• Utilisation des agents pour la gestion des connaissances• Use of agents for knowledge management
Ces agents servent à renseigner les utilisateurs sur l'état des connaissances dans une entreprise. De plus en plus les entreprises possèdent une base de donnée des connaissances, malheureusement, les utilisateurs ne peuvent pas en faire un usage efficace. Le rôle de cet agent est d'aller chercher des informations dans cette base pour accroître la vitesse d'exécution des tâches des salariés. Grâce à cette outil, les gens seront plus à même de s'enrichir d'expériences de collègues. Ce module est assez similaire au module de recherche de données sur l'Intranet.These agents are used to inform users about the state of knowledge in a company. More and more companies have a knowledge database, unfortunately, users cannot make effective use of it. The role of this agent is to get information from this database to increase the speed of execution of employees' tasks. With this tool, people will be better able to learn from the experiences of colleagues. This module is quite similar to the data search module on the Intranet.
• Utilisation des agents pour la gestion des interfaces graphiques utilisateurs En fonction du support sur lequel évolue l'utilisateur, le système ne se présentera pas sous la même forme. Quelques interfaces sont représentées à travers les figures 5 et 6. Le module de l'interface peut être téléchargé à partir d'un serveur sur lequel le système est enregistré. L'interface graphique peut être aussi un programme enregistré sur la machine support. L'usage d'agents mobiles permet de faire en sorte que l'interface soit un programme venant d'un serveur et allant s'exécuter sur la machine distante. Enfin, le procédé mis en évidence dans la demande de brevet FA572683 développé par Mr. Julien Clausse est une autre solution à l'obtention d'une interface pouvant servir dans le cas présent.• Using agents to manage graphical user interfaces Depending on the medium on which the user operates, the system will not be presented in the same form. Some interfaces are shown in Figures 5 and 6. The interface module can be downloaded from a server on which the system is registered. The graphical interface can also be a program saved on the support machine. The use of mobile agents allows the interface to be a program coming from a server and going to run on the remote machine. Finally, the process highlighted in patent application FA572683 developed by Mr. Julien Clausse is another solution to obtaining an interface which can be used in the present case.
La figure 2 représente différents exemples d'utilisation de l'invention. Un usager peut se connecter à partir d'une station de travail 201 ou 202 ou encore un ordinateur portable 203 via l'Intranet 220 au système. Dans ce cas, les agents 241 se trouvent sur un serveur interne à l'entreprise. Il est possible de se connecter à partir d'ordinateur portable 262, 263 ou à partir de PDA palrn pilot par exemple 261, 264. La différence entre les versions 261,262 d'une part et 263, 264 d'autre part est le fait que des modules de liaison résident sur les machines distantes pour accéder au système. Le téléchargement d'une interface utilisateur est montré dans le cas où il ne soit pas possible d'installer un module de liaison personnel sur les supports. Une interface WAP est tout à fait envisageable dans le cas présent.FIG. 2 represents different examples of use of the invention. A user can connect from a workstation 201 or 202 or even a laptop 203 via the Intranet 220 to the system. In this case, the 241 agents are located on a server internal to the company. It is possible to connect from laptop 262, 263 or from PDA palrn pilot for example 261, 264. The difference between versions 261,262 on the one hand and 263, 264 on the other hand is the fact that link modules reside on remote machines to access the system. The downloading of a user interface is shown in the case where it is not possible to install a personal link module on the supports. A WAP interface is quite possible in this case.
La figure 3 représente les étapes servant à la prise de rendez-vous. Enormément de contraintes doivent être gérées et c'est pour cela que les agents sont très utiles. Aujourd'hui, les utilisateurs possèdent plusieurs types de formats de sauvegarde de données, soit Microsoft Outlook, soit Lotus Organiser, soit un PDA ou bien les données sous format papier. Evidement lorsque les données sont sous format papier, alors il n'y a aucune possibilité pour un agent d'aller interagir avec un autre agent. L'avantage essentiel du système multi agents est que les données ne sont accessibles que par agents interposés, i.e. si un agent demande à une personne si un rendez- vous est programmable alors l'agent de la personne en question répondra seulement oui ou non mais ne fournira aucune donnée sur l'agenda de la personne en question quant à savoir si une plage horaire est prise pour des raisons personnelles ou pour tout autres raisons. L'agent peut aussi suggérer une autre solution pour réaliser la réunion. S'agissant des contraintes fournies à la requête, nous noterons qu'il est très intéressant de gérer les contraintes sur les ressources matérielles ou immobilières en parallèle aux contraintes provenant des participants.Figure 3 shows the steps for making an appointment. A lot of constraints have to be managed and that is why agents are very useful. Today, users have several types of data backup formats, either Microsoft Outlook, Lotus Organizer, PDA or data in paper format. Obviously when the data is in paper format, then there is no possibility for an agent to go and interact with another agent. The essential advantage of the multi-agent system is that the data is only accessible by intermediary agents, ie if an agent asks a person if an appointment is programmable then the agent of the person in question will answer only yes or no but will not provide any data on the calendar of the person in question as to whether a time slot is taken for personal reasons or for any other reasons. The agent can also suggest another solution for holding the meeting. Regarding the constraints provided to the request, we note that it is very interesting to manage the constraints on material or real estate resources in parallel with the constraints from the participants.
Les personnes contactées auront chacune des agents qui répondront aux requêtes de l'agent initiateur. A un certain moment, une solution convenant à tous les participants sera trouvée et alors le résultat de la recherche sera envoyé à chacun pour validation. Etant donné que les agents devront aller chercher des données quelques fois localisées sur un autre appareil comme un ordinateur personnel ou un téléphone mobile ou encore un PDA présentés sur la figure 2, il faut que les agents possèdent un module leur permettant de communiquer avec ces appareils. Pour le moment le module TCP/TP implémenté dans les agents permet le transport de rinformation.The people contacted will each have agents who will respond to requests from the initiating agent. At a certain point, a solution suitable for all participants will be found and then the result of the search will be sent to everyone for validation. Since the agents will have to fetch data sometimes located on another device such as a personal computer or a mobile phone or a PDA presented in Figure 2, the agents must have a module allowing them to communicate with these devices . For the moment the TCP / TP module implemented in the agents allows the transport of information.
A chaque fois qu'une requête est faite par un initiateur, des fonctions mathématiques sont appliquées prenant en compte les différents niveaux de priorité et de contraintes pour optimiser la rapidité des agents à trouver des solutions possibles aux requêtes et augmenter l'efficacité des négociations. Ces fonctions mathématiques s'appliquent en fonction de la densité des calendriers des utilisateurs, du nombre de participants et de l'importance général du rendez-vous à mettre en place. Ceci est dans le but de regarder à quelle période, un rendez-vous peut avoir lieu par rapport au résultat de la fonction donnant les meilleurs approximations du nombre de créneaux horaires disponibles pour ce rendez-vous. Ce qui est rajouté dans cette section vient en complément de la description faite à propos des agents servant à la prise de rendez-vous.Each time a request is made by an initiator, mathematical functions are applied taking into account the different levels of priority and constraints to optimize the speed of agents to find possible solutions to requests and increase the efficiency of negotiations. These mathematical functions apply according to the density of the calendars of users, the number of participants and the general importance of the meeting to set up. This is for the purpose of looking at which period, an appointment can take place in relation to the result of the function giving the best approximations of the number of slots available for this appointment. What is added in this section complements the description made about the agents used to make appointments.
En schématisant ce processus de prise de rendez-vous, différentes étapes sont identifiées. Tout d'abord, un acteur 301 initie une requête de rendez-vous en précisant les champs définis dans la figure 5. Une fois la requête passée, l'agent coordinateur va procéder à l'interrogation des différentes bases de données 312, 313 et 3 14 de chaque participant invité et invitant. Une fois les meta données acquises, l'agent coordinateur va négocier avec les agents intelligents des invités dans le but de trouver des créneaux horaires disponibles pour chacun et satisfaisant les préférences et contraintes de tout le monde. Une fois les créneaux horaires sélectionnés, une demande de validation est envoyée à tous les participants demandant leur accord sachant que le ou les créneaux horaires que proposent le système sont déjà satisfaisants. Si tous répondent positivement alors un ordre de mise à jour des bases de données des utilisateurs est passé. Si un répond négativement, alors le système relance une négociation ou annule tout en fonction de la stratégie qui avait été sélectionnée initialement.By schematizing this appointment booking process, different stages are identified. First, an actor 301 initiates an appointment request by specifying the fields defined in FIG. 5. Once the request has been made, the coordinating agent will interrogate the various databases 312, 313 and 3 14 of each invited and inviting participant. Once the metadata has been acquired, the coordinating agent will negotiate with the intelligent agents of the guests in order to find time slots available for each and satisfying everyone's preferences and constraints. Once the time slots have been selected, a validation request is sent to all participants asking for their agreement, knowing that the time slot (s) offered by the system are already satisfactory. If all respond positively then an update order for user databases is placed. If a negative answer, then the system resumes a negotiation or cancels everything according to the strategy which had been selected initially.
La figure 4 montre ce que fait le module coordinateur pour acquérir des données sur des ressources. Ce module coordinateur renseigne le module de gestion des rendez-vous 401 sur les adresses des bases de données où envoyer les requêtes. La base de donnée des profils 402 retourne ces adresses. Ensuite le module de prise de rendez-vous envoie des requêtes 423 aux différents serveurs 407 et 408 pour obtenir des informations concernant les utilisateurs impliqués. Notons au passage le module d'abstraction servant à faire l'interface entre les bases de données et le module de prise de rendez-vous. Ce module d'abstraction permet généralement d'accéder à des systèmes de dormées hétérogènes comme Microsoft Outlook ou Lotus Notes.Figure 4 shows what the coordinator module does to acquire data on resources. This coordinator module informs the appointment management module 401 of the addresses of the databases to which to send the requests. The profiles database 402 returns these addresses. The appointment scheduling module then sends requests 423 to the various servers 407 and 408 to obtain information concerning the users involved. Note in passing the abstraction module used to interface between the databases and the appointment scheduling module. This abstraction module generally allows access to heterogeneous sleep systems such as Microsoft Outlook or Lotus Notes.
La figure 5 représente une vue de l'interface utilisateur 500 concernant la prise de rendez- vous. Par exemple, un utilisateur possède une interface utilisateur devant lui sur son terminal mobile ou fixe. H est défini auprès du système comme utilisateur maître ou esclave. Maître signifie qu'il possède tous les droits sur son assistant personnel électronique et esclave signifie que les droits de l'utilisateur du système d'agents sont réduits, dans le cas d'une secrétaire représentante d'une personne par exemple. L'utilisateur initie une requête de prise de rendez-vous par exemple en définissant le nom des personnes à contacter 508, 509 ou un type de personne à rencontrer 510, par exemple «directeur qualité», leur éventuelle importance par rapport au demandeur 511, une date 514, 515 ou une plage de dates 518, 519, 520 définie selon le principe de la logique floue (environ vers lOh, durée d'à peu près 1 heure) utilisant des fonctions mathématiques. L'utilisateur rentre par la même occasion le début du rendez-vous 523, 524 ainsi que sa durée 527, 528. L'utilisateur définit aussi le lieu 532, 533 avec une priorité relative par rapport aux critères 534 et une précision relative 535 définie aussi par le principe de la logique floue. Les contraintes et préférences concernant les données temporelles sont du même type que d'autres préférences et contraintes. L'utilisateur procède de même pour les informations sur les salles et matériels. L'utilisateur définit aussi un sujet 541 pour le rendez-vous ainsi que des paramètres qui lui semblent importantes 544. L'interface utilisateur peut être modifiée pour prendre en compte ce que l'utilisateur souhaite voir figurer comme paramètres. Cette interface peut donc être plus simple ou plus complexe, c'est au choix des utilisateurs. Les utilisateurs peuvent choisir entre quatre stratégies 545 pour émettre une requête de prise de rendez-vous:FIG. 5 represents a view of the user interface 500 concerning the scheduling of appointments. For example, a user has a user interface in front of him on his mobile or fixed terminal. H is defined with the system as master or slave user. Master means that he has all the rights on his personal electronic assistant and slave means that the rights of the user of the agent system are reduced, in the case of a secretary representing a person for example. The user initiates an appointment booking request for example by defining the name of the people to contact 508, 509 or a type of person to meet 510, for example “quality manager”, their possible importance in relation to the requester 511, a date 514, 515 or a date range 518, 519, 520 defined according to the principle of fuzzy logic (approximately around 10 h, duration of approximately 1 hour) using mathematical functions. The user enters through the same time the start of the appointment 523, 524 as well as its duration 527, 528. The user also defines the place 532, 533 with a relative priority in relation to the criteria 534 and a relative precision 535 also defined by the principle of fuzzy logic. Constraints and preferences regarding time data are of the same type as other preferences and constraints. The user does the same for information on rooms and equipment. The user also defines a subject 541 for the appointment as well as parameters which seem important to him 544. The user interface can be modified to take into account what the user wishes to appear as parameters. This interface can therefore be simpler or more complex, it is up to the users. Users can choose from four 545 strategies for requesting an appointment:
• Si une personne refuse une demande de rendez-vous alors on ne fait rien et le rendez-vous n'aura pas lieu• If a person refuses an appointment request then nothing is done and the appointment will not take place
• Si une personne refuse une demande de rendez-vous, alors on propose une autre solution tant que la proposition n'est pas convenable• If a person refuses an appointment request, then we propose another solution until the proposal is not suitable
• Si une personne refuse une demande de rendez-vous, alors cette personne devient automatiquement initiatrice de rendez-vous• If a person refuses an appointment request, then that person automatically becomes an initiator of an appointment
• On prend en compte une quatrième stratégie qui consiste à pouvoir déplacer des rendez- vous• We take into account a fourth strategy which consists in being able to move appointments
Nous pouvons considérer le cas d'un agent coordinateur de tâche 1000 qui en fait sert dans le processus de négociation Avec la stratégie numéro 3 par exemple, dans ce processus, la personne ayant le plus haut niveau de contrainte va devenir l'agent coordinateur et enverra des proposition aux autres intervenants et si elles sont acceptées, un rendez-vous sera organisé ou alors si elles sont rejetés, un autre agent deviendra l'agent coordinateur.We can consider the case of a task coordinating agent 1000 which in fact serves in the negotiation process With strategy number 3 for example, in this process, the person with the highest level of constraint will become the coordinating agent and will send proposals to the other speakers and if they are accepted, an appointment will be organized or if they are rejected, another agent will become the coordinating agent.
La figure 6 représente une interface graphique utilisateur 600 fonctionnant sur les plateformes sur lesquelles l'utilisateur travail. L'interface utilisateur est adapté au support. Elle peut être soit implémenté sur le support, soit téléchargé à partir d'un serveur, soit être une page Internet dynamique. L'utilisation d'agents intelligents mobiles n'est pas exclu pour pouvoir exécuter du code sur la machine distante qui se connecte et qui doit servir de support à l'utilisateur pour utiliser son assistant personnel électronique intelligent.FIG. 6 represents a graphical user interface 600 operating on the platforms on which the user works. The user interface is adapted to the medium. It can either be implemented on the medium, or downloaded from a server, or be a dynamic Internet page. The use of mobile intelligent agents is not excluded in order to be able to execute code on the remote machine which connects and which must serve as support for the user to use his intelligent personal electronic assistant.
Cette interface possède différents fenêtres où sont visibles les résultats de certains agents comme les agents fax 609, téléphone 610 et e-mail 611. Cette interface peut être complètement personnalisée. Les utilisateurs peuvent choisir les fenêtres qu'ils décident obtenir rapidement à portée de vue. Cette interface propose de visualiser les différents environnements dans lesquels les utilisateurs sont susceptibles d'évoluer. Dans cette interface, à travers le menu fichier il est prévu de donner une option permettant de visualiser sa propre cadence de travail, de visualiser ce qu'on fait pour mieux gérer ses actions. Cette fonctionnalité prend de la valeur quand il est possible de visualiser le travail effectué sur une longue période et de comparer avec ce que le système aurait proposé pour optimiser la productivité. Le principe repose quelque peu sur les mêmes fondements que les logiciels permettant de visualiser ses dépenses pour maîtriser son budget. Ici, le budget n'est pas seulement financier mais bien plus temporel. Le temps et la qualité de la gestion de son environnement de travail sont les valeurs sur lesquelles ce système trouve toute sa puissance.This interface has different windows where the results of certain agents are visible, such as the fax 609, telephone 610 and e-mail 611 agents. This interface can be completely personalized. Users can choose the windows they decide to get quickly within sight. This interface offers to visualize the different environments in which the users are likely to evolve. In this interface, through the file menu it is planned to give an option allowing you to visualize your own work rate, to visualize what you do to better manage your actions. This functionality increases in value when it is possible to visualize the work carried out over a long period and to compare with what the system would have proposed to optimize productivity. The principle is based somewhat on the same foundations as software allowing you to visualize your expenses to control your budget. Here, the budget is not only financial but much more temporal. The time and the quality of the management of its working environment are the values on which this system finds all its power.
Une dernière remarque caractérisant le système concerne le contact des utilisateurs. Certains systèmes utilisent le courrier électronique pour envoyer des messages entre agents. U subsiste un problème aujourd'hui quand les appareils recevant les coumers ne sont pas connectés en permanence au réseau. Grâce à l'utilisation des agents du système présent, il est possible de faire en sorte que lorsqu'un utilisateur d'appareil portable se connecte au réseau, un processus permet dans un premier temps d'échanger des informations concernant diverses possibilités de prise de rendez-vous. Puis dans un second temps, lors d'une connexion suivante, le processus fait apparaître une fenêtre sur l'écran de l'utilisateur pour lui demander de valider un rendez-vous proposé résultant d'une négociation entre les agents compte tenue des informations collectées par l'agent lors de la première connexion. Avec ce système, même délocalisées du réseau, les données vont être accessibles et le processus de prise de rendez-vous toujours plus rapide qu'une des solutions courantes actuelles consistant à effectuer une vérification manuelle dans son propre agenda pour décider d'une prise de rendez-vous reçue par courrier électronique. Le système offre l'opportunité de garder à jour son emploi du temps et d'inscrire automatiquement les rendez-vous. Le système présenté ne demande plus à l'utilisateur de rentrer les données dans ses différents calendriers. Il demande juste d'accepter ou de refuser des propositions. A final remark characterizing the system concerns the contact of users. Some systems use email to send messages between agents. There remains a problem today when the devices receiving the coumers are not permanently connected to the network. Thanks to the use of the agents of the present system, it is possible to ensure that when a user of a portable device connects to the network, a process makes it possible initially to exchange information concerning various possibilities of taking Appointment. Then in a second step, during a next connection, the process brings up a window on the user's screen asking him to validate a proposed appointment resulting from a negotiation between the agents taking into account the information collected. by the agent during the first connection. With this system, even delocalized from the network, the data will be accessible and the appointment booking process always faster than one of the current current solutions consisting of carrying out a manual verification in one's own agenda to decide on a booking. appointment received by email. The system offers the opportunity to keep your timetable up to date and to automatically record appointments. The system presented no longer asks the user to enter the data in its different calendars. He just asks to accept or refuse proposals.
Exemple concret d'utilisationConcrete example of use
Un cas concret de notre système donne toute la puissance de l'assistant personnel électronique intelligent. Imaginons un patron qui possède des enfants en bas âge, il fait appel à une nourrice pour garder les enfants tous les jours parce que son/sa partenaire dans la vie travaille aussi tous les jours. JJ reçoit rinformation de la part de la nourrice que celle-ci sera indisponible le lendemain alors que celui ci a déjà un rendez-vous de prévu. Dans ce cas il faut agencer les agendas pour prévenir tout le monde et trouver une solution. Dans un premier temps, on peut imaginer que l'assistant personnel électronique intelligent va prendre en compte la requête d'absence de la nourrice initié par le patron à partir soit d'un téléphone, soit de son PDA ou encore de son PC relié à l'Internet Sur ces deux derniers systèmes fonctionne un agent de liaison qui contactera l'agent coordinateur sur l'Intranet. Celui-ci recherche premièrement les données concernant les ressources. Si une requête est formulé par téléphone, un agent de gestion d'appel téléphonique situé sur l'Intranet se chargera de contacter son propre agent coordinateur par l'intermédiaire de son agent téléphonique. Une fois l'agent coordinateur contacté, il se charge de contacter l'agent gérant les contacts pour retrouver les données relatives à l'utilisateur avec qui le patron veut annuler un rendez-vous. Ce dernier rendra des données du type numéro de téléphone, adresse de courrier électronique à l'agent coordinateur. Ensuite cet agent demandera à un agent de gestion des appels téléphoniques d'envoyer un message à la personne ou bien demandera à un agent de gestion de courrier électronique d'envoyer un message d'annulation de rendez-vous. La personne évitera ainsi de se déplacer le lendemain pour rien ce qui n'aurait pu être le cas si il avait fallu attendre le lendemain matin la présence d'une secrétaire pour contacter la personne en question. Dans le cas où la personne contactée possède des moyens pour interfacer avec des agents alors les agents vont négocier entre eux une future opportunité de rendez-vous. Bien entendu plusieurs agents impliqué dans le rendez-vous annulé vont être convoqués pour mettre à jour toute donnée relative au rendez-vous qui était en question, pour modifier l'emploi du temps du matériel ou bien des salles, etc..A concrete case of our system gives all the power of the intelligent electronic personal assistant. Imagine a boss who has small children, he uses a nanny to babysit every day because his / her life partner also works every day. JJ receives the information from the nanny that she will be unavailable the next day when he already has an appointment scheduled. In this case it is necessary to arrange the agendas to warn everyone and find a solution. At first, we can imagine that the intelligent electronic personal assistant will take into account the request for absence of the nanny initiated by the boss from either a phone, his PDA or his PC connected to Internet On these last two systems, a liaison officer works who will contact the coordinating agent on the Intranet. This first searches for resource data. If a request is made by telephone, a telephone call management agent located on the Intranet will contact his own coordinating agent through his telephone agent. Once the coordinating agent is contacted, he is responsible for contacting the agent managing the contacts to find the data relating to the user with whom the boss wants to cancel an appointment. The latter will return data such as telephone number, e-mail address to the coordinating agent. Then this agent will ask a call management agent to send a message to the person or will ask an email management agent to send an appointment cancellation message. The person will thus avoid traveling the next day for nothing which could not have been the case if it had been necessary to wait the next morning for the presence of a secretary to contact the person in question. In the event that the person contacted has the means to interface with agents, then the agents will negotiate a future meeting opportunity with each other. Of course, several agents involved in the canceled appointment will be summoned to update any data relating to the appointment that was in question, to modify the timetable for the equipment or the rooms, etc.
Un autre avantage du système général est de provoquer des rendez-vous qui jusque là n'avait pas lieu par manque de bonne organisation. Prenons le cas de personnes travaillant sur plusieurs sites mais autour d'un même projet. Si une personne X appartenant au site 1 vient une fois par semaine sur le site 2 et doit rencontrer plusieurs personnes Y et Z appartenant au site 2, et que les gens n'ont pas de secrétaire pour prendre leur rendez-vous à leur place et qu'ils ne sont pas souvent disponibles pour s'occuper de leur prise de rendez-vous, alors il est fort probable qu'il faille plusieurs semaines pour arriver à ce que des personnes se rencontrent. Le cas est encore plus flagrant lorsqu'un rendez-vous de groupe est tenté d'être organisé. Avec le système, les emploi du temps respectifs de tout le monde sont optimisés, et le gain final pour les gens et pour le produit qui demande des validations par des personnes différentes verra ses délais de livraison raccourcis. Le système permet aussi de répondre aux normes qualités ISO9000 en terme d'amélioration des méthodes de travail pour réduire les temps affectés aux différentes tâches dans une entreprise. Bien que l'invention divulguée dans le présent document ait été décrite au moyen d'implémentations spécifiques, de nombreuses modifications et variations peuvent être envisagées par l'homme de l'art, tant au niveau de Parchitecture du système que des fonctionnalités des agents décrits, sans départir de l'étendue de l'invention telle qu'elle est décrite dans les revendications. Another advantage of the general system is that it provokes meetings which until then did not take place for lack of good organization. Take the case of people working on several sites but around the same project. If a person X belonging to site 1 comes once a week to site 2 and must meet several people Y and Z belonging to site 2, and people do not have a secretary to make their appointment for them and that they are not often available to make an appointment, so it is likely that it will take several weeks for people to meet. The case is even more obvious when a group meeting is attempted. With the system, everyone's respective schedules are optimized, and the final gain for people and for the product that requires validation by different people will see its delivery times shortened. The system also makes it possible to meet ISO9000 quality standards in terms of improving working methods to reduce the time allocated to different tasks in a company. Although the invention disclosed in this document has been described by means of specific implementations, numerous modifications and variations can be envisaged by those skilled in the art, both in terms of the architecture of the system and of the functionalities of the agents described. , without departing from the scope of the invention as described in the claims.

Claims

Revendications claims
1. Assistant personnel électronique intelligent pour assister la gestion d'informations pour au moins un utilisateur et automatiser la gestion de tâches mettant en œuvre des appareils pouvant être connectés à au moins un réseau téléphonique filaire et sans fil, comprenant une pluralité de modules spécialisés gérant un type d'information en utilisant des techniques informatiques de raisonnement intelligent, un module de gestion d'interface graphique utilisateur et un module coordinateur communiquant avec ces dits modules Caractérisé en ce qu'il comprend en plus des données personnelles et professionnelles enregistrées dans au moins une base de donnée pour chacun des dits utilisateurs, au moins une base de donnée additionnelle contenant des informations sur le profil d'au moins un utilisateur, sur leurs ressources associées et sur les identificateurs des dits modules spécialisés permettant de gérer les dites ressources, un module de détection des connexions des appareils communiquant et un module de gestion de la configuration de l'environnement de travail permettant d'adapter les dits modules spécialisés.1. Intelligent electronic personal assistant to assist in the management of information for at least one user and to automate the management of tasks using devices which can be connected to at least one wired and wireless telephone network, comprising a plurality of specialized modules managing a type of information using computerized reasoning techniques, a graphical user interface management module and a coordinator module communicating with these so-called modules Characterized in that it includes in addition personal and professional data recorded in at least a database for each of said users, at least one additional database containing information on the profile of at least one user, on their associated resources and on the identifiers of said specialized modules making it possible to manage said resources, a ap connection detection module similar communicating and a module for managing the configuration of the working environment allowing adaptation of said specialized modules.
2. Un assistant personnel électronique intelligent selon la revendication 1 où les différents modules spécialisés gérant rinformation servent à la gestion du temps, la gestion d'informations et la gestion de moyens de communication.2. An intelligent electronic personal assistant according to claim 1 wherein the various specialized modules managing the information are used for time management, information management and management of means of communication.
3. Un assistant personnel électromque intelligent selon la revendication 2 où les modules gérant les informations comportent au moins un module parmi des modules de détection de type de connexions, de gestion d'au moins un calendrier et de prise de rendez-vous, de gestion d'au moins une liste de contact, de gestion d'au moins une type de courrier électronique, de gestion d'au moins un type d'appel téléphonique à au moins un numéro de téléphone, de gestion de fax correspondant à au moins un numéro, de gestion de tâches, de gestion des mémos, de gestion de l'Internet, de gestion de l'Intranet, de gestion du niveau de rendement et de l'activité quotidienne de l'utilisateur, de gestion des ressources matérielles, de gestion des ressources non matérielles, de gestion de profils préférentiels et techniques, de gestion de l'environnement de travail, de gestion de l'environnement de communication et de gestion d'interface graphique utilisateur.3. An intelligent electric personal assistant according to claim 2 wherein the modules managing the information comprise at least one module from among modules for detecting the type of connection, managing at least one calendar and making appointments, managing at least one contact list, management of at least one type of electronic mail, management of at least one type of telephone call to at least one telephone number, management of fax corresponding to at least one number, task management, memo management, Internet management, Intranet management, performance level and daily user activity management, material resource management, management of non-material resources, management of preferential and technical profiles, management of the working environment, management of the communication environment and management of the graphical user interface.
4. Un assistant personnel électronique intelligent selon une des revendications précédentes où les différents modules peuvent communiquer entre eux sans intervention extérieur et sont autonomes les uns par rapport aux autres. 4. An intelligent electronic personal assistant according to one of the preceding claims wherein the different modules can communicate with each other without outside intervention and are autonomous with respect to each other.
5. Un assistant personnel électronique intelligent selon la revendications 3 où le module de gestion de l'environnement de travail possède une interface multi mode pour obtenir des informations concernant l'utilisateur provenant d'au moins un périphérique informatique matériel, comprenant une interface pour gérer des commandes vocales et des commandes visuelles, une interface pour gérer les commandes vocales ou écrites passées suivant la logique floue et une interface pour communiquer avec l'environnement de communication dans lequel se trouve l'utilisateur.5. An intelligent electronic personal assistant according to claim 3 wherein the work environment management module has a multi-mode interface for obtaining information concerning the user from at least one hardware computer peripheral, comprising an interface for managing voice commands and visual commands, an interface for managing voice or written commands passed according to fuzzy logic and an interface for communicating with the communication environment in which the user is located.
6. Un assistant personnel électronique intelligent selon une des revendications précédentes où le module coordinateur permet de gérer et visualiser le flux d'informations entres les différents modules spécialisés et l'activité des utilisateurs, le module de gestion d'au moins une interface graphique utilisateur, les modules de détection des connexions des appareils connectés et le module de détection de la configuration de renvironnement de travail et de communication permettant d'adapter lesdits modules spécialisés complémentaires.6. An intelligent electronic personal assistant according to one of the preceding claims wherein the coordinator module makes it possible to manage and view the flow of information between the various specialized modules and the activity of the users, the management module of at least one graphical user interface. , the modules for detecting the connections of the connected devices and the module for detecting the configuration of the working and communication environment making it possible to adapt said complementary specialized modules.
7. Un assistant personnel électronique intelligent selon une des revendications précédentes où les modules sont des agents intelligents mobiles.7. An intelligent electronic personal assistant according to one of the preceding claims wherein the modules are mobile intelligent agents.
8. Procédé mis en œuvre dans l'assistant personnel électronique intelligent selon une des revendications précédentes caractérisé en ce qu'il comporte les étapes suivantes : a) Identification de l'utilisateur à partir de la machine sur laquelle il se trouve via une interface homme machine b) Détection par le dispositif du type d'appareil communiquant et du type d'environnement de travail de l'utilisateur c) Accès à la base de données des profils ressources et utilisateurs d) Utilisation d'un module coordinateur adapté aux types d'appareils et à l'environnement de travail et permettant de gérer les différents modules spécialisés en fonction des tâches à effectuer, des systèmes d'information à accéder et des supports sur lesquels les informations sont enregistrées e) Exécution dans les environnements hétérogènes des tâches par les modules spécialisés8. Method implemented in the intelligent electronic personal assistant according to one of the preceding claims, characterized in that it comprises the following steps: a) Identification of the user from the machine on which he is located via a human interface machine b) Detection by the device of the type of communicating device and the type of working environment of the user c) Access to the database of resource and user profiles d) Use of a coordinator module adapted to the types d '' devices and the working environment and making it possible to manage the various specialized modules according to the tasks to be performed, the information systems to be accessed and the media on which the information is recorded e) Execution in heterogeneous environments of the tasks by specialized modules
9. Un programme d'ordinateur comprenant des portions de code de programme pour l'exécution d'une au moins parmi les étapes du procédé selon la revendication 8 lorsque ledit programme est exécuté sur un support tel qu'un ordinateur, un assistant numérique personnel et un téléphone. 9. A computer program comprising portions of program code for the execution of at least one of the steps of the method according to claim 8 when said program is executed on a medium such as a computer, a personal digital assistant and a telephone.
PCT/FR2001/002958 2000-09-25 2001-09-25 Intelligent electronic personal assistant WO2002025513A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP01972192A EP1320822A2 (en) 2000-09-25 2001-09-25 Intelligent electronic personal assistant

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0012476A FR2814568B1 (en) 2000-09-25 2000-09-25 INTELLIGENT ELECTRONIC PERSONNEL ASSISTANT
FR00/12476 2000-09-25

Publications (2)

Publication Number Publication Date
WO2002025513A2 true WO2002025513A2 (en) 2002-03-28
WO2002025513A3 WO2002025513A3 (en) 2002-06-27

Family

ID=8854851

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2001/002958 WO2002025513A2 (en) 2000-09-25 2001-09-25 Intelligent electronic personal assistant

Country Status (3)

Country Link
EP (1) EP1320822A2 (en)
FR (1) FR2814568B1 (en)
WO (1) WO2002025513A2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2852764A1 (en) * 2003-03-21 2004-09-24 France Telecom Internet application management process for enterprise, involves ensuring connection between application data and intervener base to integrate operations coupled to interveners and processing to be carried out on data
US7895246B2 (en) 2007-05-31 2011-02-22 Microsoft Corporation Collection bin for data management and transformation
KR20180085129A (en) * 2017-01-18 2018-07-26 주식회사 엘지화학 Battery Cell Comprising Electrode Lead Facing Outer Surface of Electrode Assembly
CN109543044A (en) * 2018-10-22 2019-03-29 杭州叙简科技股份有限公司 A kind of event and legal provision automatic patching system and matching process
FR3071648A1 (en) * 2017-09-26 2019-03-29 Sugarcrm Inc. PRESENTATION OF THE ORGANIZED DAILY CONTENT FOR MOBILE DEVICES
CN110036360A (en) * 2016-12-02 2019-07-19 微软技术许可有限责任公司 System for explaining and managing inaccurate temporal expressions
US11200542B2 (en) * 2014-05-30 2021-12-14 Apple Inc. Intelligent appointment suggestions

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999005597A1 (en) * 1997-07-25 1999-02-04 British Telecommunications Public Limited Company Visualisation in a modular software system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999005597A1 (en) * 1997-07-25 1999-02-04 British Telecommunications Public Limited Company Visualisation in a modular software system

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
AZVINE B ET AL: "The Intelligent Assistant: an overview" 2000, BERLIN, GERMANY, SPRINGER-VERLAG, GERMANY, pages 215-238, XP001015379 ISBN: 3-540-67837-9 *
BRAZIER F M T ET AL: "DISTRIBUTED SCHEDULING TO SUPPORT A CALL CENTRE: A CO-OPERATIVE MULTI-AGENT APPROACH" PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON THE PRACTICAL APPLICATION OF INTELLIGENT AGENTS AND MULTI-AGENT TECHNOLOGY, XX, XX, 1998, pages 555-576, XP000984348 *
DIETERICH H ET AL: "INTELLIGENT AGENTS AS APPOINTMENTS MANAGERS LIVING IN PUBLIC NETWORKS" PROCEEDINGS OF THE INTERNATIONAL SYMPOSIUM ON HUMAN FACTORS IN TELECOMMUNICATIONS, XX, XX, 1997, pages 23-30, XP000984330 *
GLEZER C ET AL: "A CONCEPTUAL MODEL OF AN INTELLIGENT MEETING-SCHEDULER" JOURNAL OF ORGANIZATIONAL COMPUTING AND ELECTRONIC COMMERCE, NORWOOD, NJ, US, vol. 9, no. 4, 1999, pages 233-251, XP001014534 ISSN: 1091-9392 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2852764A1 (en) * 2003-03-21 2004-09-24 France Telecom Internet application management process for enterprise, involves ensuring connection between application data and intervener base to integrate operations coupled to interveners and processing to be carried out on data
US7895246B2 (en) 2007-05-31 2011-02-22 Microsoft Corporation Collection bin for data management and transformation
US11200542B2 (en) * 2014-05-30 2021-12-14 Apple Inc. Intelligent appointment suggestions
CN110036360A (en) * 2016-12-02 2019-07-19 微软技术许可有限责任公司 System for explaining and managing inaccurate temporal expressions
CN110036360B (en) * 2016-12-02 2022-04-15 微软技术许可有限责任公司 System for interpreting and managing inaccurate time expressions
US11562199B2 (en) 2016-12-02 2023-01-24 Microsoft Technology Licensing, Llc System for interpreting and managing imprecise temporal expressions
KR20180085129A (en) * 2017-01-18 2018-07-26 주식회사 엘지화학 Battery Cell Comprising Electrode Lead Facing Outer Surface of Electrode Assembly
FR3071648A1 (en) * 2017-09-26 2019-03-29 Sugarcrm Inc. PRESENTATION OF THE ORGANIZED DAILY CONTENT FOR MOBILE DEVICES
CN109543044A (en) * 2018-10-22 2019-03-29 杭州叙简科技股份有限公司 A kind of event and legal provision automatic patching system and matching process

Also Published As

Publication number Publication date
FR2814568A1 (en) 2002-03-29
FR2814568B1 (en) 2005-11-25
WO2002025513A3 (en) 2002-06-27
EP1320822A2 (en) 2003-06-25

Similar Documents

Publication Publication Date Title
JP7183154B2 (en) Increased efficiency in task management applications
US20220046107A1 (en) Intent-based calendar updating via digital personal assistant
KR100952546B1 (en) System and method for identifying and establishing preferred modalities or channels for communications based on participants preferences and contexts
US7783698B2 (en) Generalized web-service
EP3378204A1 (en) Bot interaction
US10038658B2 (en) Communication streams
US10831866B2 (en) Systems and methods for facilitating remote care services
CN101494622A (en) Preferred modalities or channels for identifying and establishing communications
JP2005115912A (en) Method and architecture for cross-device activity monitoring, reasoning, and visualization for providing status and forecast of user's presence and availability
EP2085916A1 (en) Knowledge transfer in a project environment
CA2691693A1 (en) Method of managing a collaborative process by means of electronic messages
CN114641785A (en) Calendar insights in search and assistance
FR3076390A1 (en) COGNITIVE VIRTUAL AGENT FOR CLOUD PLATFORM
WO2002025513A2 (en) Intelligent electronic personal assistant
EP1559258A2 (en) Multistage network computer architecture, with user-centered remote operating system
US20110191415A1 (en) Communication setup
JP2022506910A (en) Intelligent as an Intelligent Operating Interface and Service for Cryptographic Secure Social Media and Cross-Bridge Services with Continuous Prosumer Verification Based on I-Operant Tag, I-Bubble Tag, D Pictogram and D Emoticon · Systems and methods for providing personal assistants
FR3110992A1 (en) Application executable on a Smart and Communicating Object to reserve a room
Doshi et al. Donna-A web based AI Personal Assistant
FR3120458A3 (en) METHOD AND SYSTEM FOR ASSIGNING A RESOURCE, MEDIA, COMPUTER PROGRAM PRODUCT
CH716688A2 (en) A process for recruiting candidates, a system for managing candidates, and an interactive terminal intended for recruiting candidates.
FR2831689A1 (en) Personalized content generation method for terminal e.g. mobile telephone, collects personalized data from user via portal then uses collected data to personalize general content which is transmitted back to user
FR2930102A1 (en) Mobile terminal e.g. mobile telephone, user communication establishing method for e.g. telephone conference, involves establishing communication between premier user and selected users during acceptance of communication by selected users

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): US

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR

AK Designated states

Kind code of ref document: A3

Designated state(s): US

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2001972192

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2001972192

Country of ref document: EP