The present application claims priority to Canadian application number 2,481,060, titled “Dynamic Scheduling Tool for Office Appointments Management” filed Sep. 7, 2004.
The present invention relates to methods and systems for dynamic resource allocation. In particular, the present invention relates methods and systems for scheduling optimization of appointments using artificial intelligence.
Computer programs for appointment scheduling have been known in the art. Users of such programs have been able to make their own respective schedules. In a group practice such as a medical office or in a clinic with several professionals, appointments are usually scheduled by office personnel, in response to patients' or professionals' requests, for a large number of professionals and resources.
However, as a working day progresses, circumstances may occur that require modifications of the schedules in real time. For example, patients may call in for emergency appointments or cancellation; unanticipated delays may occur; medical history of a patient may indicate that he needs more or less than the allocated standard time slot. At the present time it is very difficult, if not impossible, to schedule appointments with a doctor, at a short notice. Those circumstances are known to result in increased patient anxiety, in increased risk of aggravating an existing medical condition requiring immediate medical attention and in increased cost of care when such callers use more costly services such as hospital emergency rooms when their need for medical advice cannot be adequately satisfied.
U.S. Pat. No. 5,970,466 describes a graphical computer system and method for appointment scheduling. Appointments are scheduled for an office or business by displaying screen displays on a computer monitor, including a day view screen display with a plurality of thermometer-style schedules opposite a daily appointment file. In a “day view” schedules are arranged by selecting a group from a group list. The appointments can be predetermined as to type and duration, and a scheduler can refer to a list of such pre-configured appointments in scheduling patients. Various types of color-coding arrangements and icons are provided for patient status.
U.S. Pat. No. 6,345,260 provides a system and method for scheduling appointments with a professional, such as a doctor, dentist, veterinarian, or the like, or a professional service, such as a medical testing facility and the like, even when the office of the professional or professional service is closed. The system and method relate to an asynchronous network based appointment scheduling interface for making appointments, and permit off-line review and posting, as well as central scheduling.
Those techniques, exemplify a static approach of the existing appointment organization tools, based on an expert system for manipulating knowledge. The basic concept underlying an expert system is that a collection of specific IF-THEN rules are used to manipulate input data to derive a solution. These rules dictate how the data associated with a particular problem should be manipulated are developed. These rules are eventually programmed into the machine so that, given a set of input data, the formulated rules can be applied to the data to yield a solution. Expert systems are generally associated with deductive reasoning. In other words, to implement an expert system one must first have some previous information indicating how a problem should be solved or a model describing the problem's underlying process in terms of a set of rules. This approach is, however, not suitable for scheduling professional services such as medical services, which are associated by their very nature with event uncertainties such as emergencies and cancellations.
Artificial neural networks, on the other hand, are generally associated with inductive learning. An artificial neural network has generally processing nodes that receive input and produce an output in response to the input. The artificial neural network can be trained by providing it data representative of known problems and their known solutions, the artificial neural network thus learns from the set of known problems and solutions.
At the present time it is not possible to optimize appointments based on artificial intelligence and a plurality of real-time information, in an appointment scheduling computer program. In addition, it is desired to schedule various kinds of medical appointments by one or more staff for a group of professionals and/or for a group of facility and/or equipment resources, through artificial intelligence based on artificial neural network.
It is an object of the invention to provide an improved dynamic scheduling tool for office appointments management.
According to one aspect of the present invention there is provided a method for scheduling a professional service using artificial intelligence, the method comprising the steps of: storing historical data; training a neural network using the historical data to learn a schedule allocation; receiving a current request for the professional service; generating one or more than one input signals based on the current request; applying the input signals to the neural network having the learned schedule allocation; reserving an appointment in a schedule; and outputting the appointment.
According to another aspect of the present invention there is provided an apparatus for scheduling a professional service using artificial intelligence, the apparatus comprising: a memory for storing historical data; a neural network having a plurality of nodes, each node connected to one or more than one neighboring nodes, said neural network trained by the historical data to modify the weights, said neural network being responsive to a plurality of input signals, including one or more than one input signals generated from a current request for the professional service; said neural network generates an appointment in a schedule; and means for displaying the schedule.
According to yet another aspect of the present invention there is provided a computer readable medium storing instructions or statements for use in the execution in a computer of a method for scheduling a professional service using artificial intelligence, the method comprising the steps of: storing historical data; training a neural network using the historical data to learn a schedule allocation; receiving a current request for the professional service; generating one or more than one input signals based on the current request; applying the input signals to the neural network having the learned schedule allocation; reserving an appointment in a schedule; and outputting the appointment.
According to yet another aspect of the present invention there is provided a computer program product comprising: a memory having microcontroller-readable code embedded therein for scheduling a professional service using artificial intelligence, comprising: code means training a neural network using the historical data to learn a schedule allocation; code means for receiving a current request for the professional service; code means for generating one or more than one input signals based on the current request; code means for applying the input signals to the neural network having the learned schedule allocation; code means for generating an appointment in a schedule; and code means for outputting the appointment.
This summary of the invention does not necessarily describe all features of the invention.
These and other features of the invention will become more apparent from the following description in which reference is made to the appended drawings wherein:
The following description is a preferred embodiment.
As discussed before, traditional appointment scheduling systems rely on explicitly stated, blocked time segment with rules for different resource allocation. These rules are often implemented into the prediction system based on the history of data. However, data may have subtle and/or unknown relationships not adaptable to explicitly stated rules. In addition, events in professional services are inherently uncertain, data is often distorted, or incomplete, therefore, explicitly stated rules may fail.
On the other hand, computational systems known as artificial neural networks or simply neural networks allow patterns in data to be recognized and successive states to be predicted without the above limitations of traditional prediction systems. In a neural network model, simple nodes (or “neurons”) are connected together to form a network of nodes—hence the term “neural network”.
Referring to
Lacking expert rules, the nodes of a neural network are assigned a predetermined initial weight. The neural network is then reconfigured by adjusting the weights to each node by training the neural network. Training a neural network by supervised learning involves inputting a known set of inputs, processing the inputs through the hidden layer, obtaining the resulting set of outputs from the neural network, comparing the resulting outputs with a known set of outputs corresponding to the known set of inputs, adjusting the weights of each node based on a comparison of the resulting and known outputs, and repeating the training until the neural network obtains weights which would generate the known outputs within a required degree of error. The neural network thereby learns to generate the known outputs from the known inputs, and then may be used for generating outputs from unknown inputs in use in the field.
One of the more popular techniques used for training feedforward neural networks is the back propagation.
Referring to
At the top of the screen display there are three rows of multi-tab display for month and year (72), weeks within the month (74) and weekdays (76). At the bottom of the screen display there is another multi-tab display for selecting physicians (78). The screen display in
At the left side of the screen there is a time axis illustrated by a column of boxes (80) with indicia of time along one side. To the right there is an appointment file (82) with rows or boxes corresponding to time slots for entry of appointment data. A vertical scroll bar (84) is provided for scrolling up and down the daily schedule. Once appointments have been entered, a color bar (86) extending for the duration of the appointment appears in the vertical graph. Rows in the appointment file (82) which represent time occupied by a long appointment are color-coded or shaded to signify unavailability. The actual location of progress on time axis is indicated by an arrow (88) in
Still referring to
The status of the completed appointments versus the absolute time can be identified by the background discontinuity on the screen. In
Referring to
Therefore, as illustrated in
Referring to
Referring to
Referring to
The embodiment of the present invention is capable of rearranging the sequence of the appointments if task scheduled for a later time in the day is ready to be executed and the schedule is idle at the moment because another task that is supposed to start is late and hence idle waiting time can be minimized. If the lead-lag indicator in
Referring to
Similarly, the embodiment of the present invention can handle overbookings of a given time slot by reshuffling the initial schedule. This can be achieved in one of two ways: (a) eliminating the overbooking problem via completing empty slots resulting from unanticipated cancellations with one or more of the conflicting appointments, and/or (b) eliminating overbooking through stretching out the initial schedule by efficiently spreading the overbooked appointments and incorporating them in a modified version of the initial beginning-of-the-day schedule. Handling of overbooked appointments through options (a) or (b) can also be achieved through extending, or contracting the blocked time segments in the daily schedule.
The embodiment of the present invention can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations thereof. Apparatus of the invention can be implemented in a computer program product tangibly embodied in a machine-readable storage device for execution by a programmable processor; and method actions can be performed by a programmable processor executing a program of instructions to perform functions of the invention by operating on input data and generating output. The invention can be implemented advantageously in one or more computer programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and at least one output device. Each computer program can be implemented in a high-level procedural or object oriented programming language, or in assembly or machine language if desired; and in any case, the language can be a compiled or interpreted language. Suitable processors include, by way of example, both general and special purpose microprocessors. Generally, a processor receives instructions and data from a read-only memory and/or a random access memory. Generally, a computer includes one or more mass storage devices for storing data files. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM disks. Any of the foregoing can be supplemented by, or incorporated in, ASICs (application-specific integrated circuits). Further, a computer data signal representing the software code which may be embedded in a carrier wave may be transmitted via a communication network. Such a computer readable memory and a computer data signal are also within the scope of the present invention, as well as the hardware, software and the combination thereof.
The present invention has been described with regard to one or more embodiments. However, it should be apparent to persons skilled in the art that a number of variations and modifications can be made without departing from the scope of the invention as defined in the claims.
Number | Date | Country | Kind |
---|---|---|---|
2,481,060 | Sep 2004 | CA | national |