WO2001077912A2 - Configurable scheduling system - Google Patents
Configurable scheduling system Download PDFInfo
- Publication number
- WO2001077912A2 WO2001077912A2 PCT/CA2001/000419 CA0100419W WO0177912A2 WO 2001077912 A2 WO2001077912 A2 WO 2001077912A2 CA 0100419 W CA0100419 W CA 0100419W WO 0177912 A2 WO0177912 A2 WO 0177912A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- rules
- rule
- scheduling
- reservation
- orders
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/02—Reservations, e.g. for tickets, services or events
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
- G06Q10/063112—Skill-based matching of a person or a group to a task
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
- G06Q10/063114—Status monitoring or status determination for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
- G06Q10/063116—Schedule adjustment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06314—Calendaring for a resource
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06315—Needs-based resource requirements planning or analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06316—Sequencing of tasks or work
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
- G06Q10/1093—Calendar-based scheduling for persons or groups
- G06Q10/1095—Meeting or appointment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
- G06Q10/1093—Calendar-based scheduling for persons or groups
- G06Q10/1097—Task assignment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/80—Management or planning
Definitions
- the technical field relates generally to scheduling, and more particularly, to a system and method for a configurable scheduling system that is configurable by a service organization using the system.
- scheduling systems have reduced the difficulty a service provider faces in scheduling and dispatching mobile workers, the systems and algorithms employed are generally difficult customize or reconfigure to the needs of a particular service organization .
- some conventional scheduling systems have incorporated some aspects of configurability by the service organization, the extent of configurability is usually limited to customizing the scheduling system by having the service organization select from a set of predefined scheduling rules.
- any additional configuration of the scheduling system by the service organization involves custom reprogramming of the algorithms themselves, which will require the reprogramming be performed the programmers of the scheduling system.
- additional reprogramming may be required.
- the present invention relates to a user-configurable scheduling method and apparatus configurable by a service organization for scheduling orders and workers in accordance with a constraint set including a programmable constraint set and a fixed constraint set.
- the programmable constraint set alters the schedule process from a normal process governed by the fixed constraint set.
- the constraint set includes programmable rules and constants.
- the programmable rules may be programmed in accordance with a rule language convention having a first field containing rule identifier to uniquely identify the data structure, and a field containing a rule body including material for altering the schedule process from a standard process to a reconfigured process configured by the service organization.
- Figure 1 is a block diagram of a system showing the relationship between a service organization, a scheduling system, mobile service representatives, and customers according to and embodiment of the present invention.
- Figure 2 is a block diagram showing the scheduling system according to an embodiment of the present invention.
- FIG. 1 is a block diagram of a system 100 according to one aspect of the present invention.
- the system 100 includes a service organization 102.
- the service organization 102 performs services for a roster of customers.
- the customer 108 calls the service organization 102 to make a reservation for a service to be performed.
- the service organization 102 negotiates with the customer 108 to place a reservation on a schedule.
- the scheduling system 104 provides to the service organization 102 several appointment windows from which the customer 108 may choose.
- the customer 108 selects an appointment window in which the service will be performed.
- the scheduling system 104 makes preliminary assignment to one or more mobile service representatives 106.
- a mobile service A mobile service
- SU iFU CT t , ! rUTE SHEET (RULE 26) representative 106 is one who is capable of performing the service requested by the customer 108.
- the scheduling system 104 accounts for many factors in assigning the reservation to a mobile service representative 106, such as time availability, skill sets, geographic area, duration of each job, travel times between jobs, and equipment requirements.
- the scheduling system 104 can be implemented over one machine or several machines with different processors. This allows the scheduling system 104 to be scalable depending on the needs of the service organization 102.
- the scheduling system 104 is also configurable by the service organization, thus allowing the scheduling system 104 to meet different constraints and objectives as defined by the service organization.
- FIG. 2 illustrates a scheduling system 200 according to an embodiment of the present invention.
- the scheduling system 200 is similar to the scheduling system 104 shown in Figure 1 and can be substituted for the scheduling system 104.
- the scheduling system 200 performs a scheduling process. That is, the scheduling process includes appointment negotiation, assignment and optimization processes. It will be appreciated that additional processes may be included, as well as having one or more of the processes described herein omitted, without departing from the scope of the present invention.
- the processes of appointment negotiation, assignment and optimization have been provided merely for the purposes of an example. It will be appreciated that "process" is used herein to refer to a logical collection of activities.
- the scheduling system includes a negotiator 204, an assigner 208, and an optimizer 212 which perform negotiating, assigning, and optimizing functions through the use of a negotiation algorithm 216, an assignment algorithm 220, and an optimization function 224, respectively.
- a negotiation algorithm 216 an assignment algorithm 220
- an optimization function 224 an optimization function 224
- Optimizing changes the way reservations are assigned by the assigning function to meet optimization objectives defined by the service organization.
- the optimization may move reservations within a shift of a mobile service representative. It may swap reservations between two shifts of two mobile service representatives as well.
- the optimization is designed to occur independent from the assignment while new reservations are being assigned.
- scheduling system 200 may be implemented using various computer systems and software techniques that are well-known to those of ordinary skill in the art. A more detailed description of a system in which the scheduling system 200 may be implemented is provided in co-pending U.S. Patent Application , entitled ENTERPRISE SCHEDULING SYSTEM FOR
- operation of the negotiation algorithm 216, the assignment algorithm 220, and the optimization algorithm 224 of the scheduling system 200 is governed by a constraint set, which includes a set of rules and a set of constants.
- the set of constraints can be defined in a file that is then compiled into a library that are used when the negotiation, assignment, or optimization algorithms are executed.
- the set of rules include both fixed business rules, which are generally inaccessible by a service organization, and configurable rules that can be programmed by the service organization.
- the set of constants are programmable and may be used by the service organization to control the flow of execution of the rules. Their values can be changed at run time by dispatchers and system administrators to adjust the rule set based on different operating conditions. For example, changing the scheduling during a snow store as compared to a sunny day, or scheduling during a major service outage.
- SUBSTITUTE Sr ET (HULL 25) service organization
- the rules, and consequently the constants are invoked from within the negotiation, assignment, and optimization algorithms 216, 220, and 224 by rule identifiers that are coded into the algorithms.
- the service organization cannot modify the algorithm itself, through the use of the programmable rules and constants, the service organization is provided with a mechanism by which the operation of the negotiation, assignment, and optimization algorithms 216, 220, and 224 of the scheduling system 200 may be customized or configured to the particular needs of the service organization using the scheduling system 200.
- the rules of the constraint set include both fixed business rules and configurable or programmable rules programmed by the service organization.
- the rules both the fixed and configurable ones, can also be generally categorized by a type as well.
- the rules of the constraint set can be categorized according to the following types.
- Order candidacy rules which govern which orders can be considered by the appointment, negotiation, assignment, and optimization algorithms
- Intermediate rules refer to those rules that are referenced by other rules.
- the intermediate rules are used to build up complex high level rules.
- the three candidacy rules namely, the order, mobile user, and assignment candidacy rules return a value of true or fail.
- the score rules return a numerical value, typically between zero and one.
- the various rules previously described can be used or accessed by one or all of the algorithms executing in the scheduling system, including the negotiation, assignment and optimization algorithms. As will be explained in more detail below, certain types of business rule values are available to corresponding types of rules.
- the grammar for the rule language is designed to provide enough flexibility to express the various business rules that need to be defined for the scheduling system.
- a programmable rule is written by a service organization according to a language convention, which is subsequently translated into a rule grammar format.
- the same language convention could be used for the fixed business rules and constraint sets as well, except that the fixed business rules are inaccessible by the service organization.
- a suggested language convention is as follows.
- a programmable rule is identified by a ⁇ rule_id> which is a label starting with the symbol "R:”.
- the ⁇ rule_id> must be unique within the rule context group.
- the rule is composed of a rule body or rule clause composed of different rule types or more rule identifiers.
- the rule clause is bounded by a pair of brackets ( ⁇ ), and each of the rule identifiers therein are separated by a semicolon (;).
- the rule is then terminated by a period (.).
- data types are defined as well. The following list provides examples of those data types that can be defined within the language.
- Rule label This label identifies a rule for future reference. Rule labels begin with R:.
- variable label This type of label is enclosed in [square brackets] and denotes a value that is returned by the system that the rule may access. The value is returned by a function and may be a single field in a database or the result of combining information from a variety of sources (e.g. a synthesis of different database fields).
- the motivation for providing this label mechanism is to furnish the service organization with the ability to reference values that are logically related to one another (e.g., the wage paid to a given mobile user).
- a variable label may be composed of one or more elements, each separated by a period (.).
- Each of the elements denotes a sub-field of those to its left; for example, [order.date] denotes the date belonging to the order object, and [order.assignedUser.state] denotes the state of the mobile user assigned to the order.
- Variables may, as will be discussed in more detail below, represent literals, numbers, dates and strings. If the variable label is preceded by a dollar sign ($) the label is taken to be a database field name and not an accessor function. This is done in order to allow for the possibility that a service organization creates a customized database field or configurable fields that can be used by the rules and constants. For example, some configurable fields include customer contact number, completion codes (showing work done and parts or materials used to complete and order), customer account number, previous work history, and the like.
- Dates are bounded by a pair of percentage signs (%%) and are specified in the following format: yyyy/mm/dd (numeric year, month, and day)
- Times are bounded by a pair of ampersand signs (&&) and are specified in the following format:
- Datetimes are bounded by a pair of "at” signs (@@) and are specified in the following format: yyyy/mm/dd-hh :mm : ss - Numbers. These may be signed or unsigned, integers or real numbers base ten. Real numbers are specified in floating point format only.
- Literals may be any of the date, number or string types.
- a literal label represents a label that has been equated to a literal.
- Literal labels are delimited by a pair of colons (::).
- R:ol l ⁇ [order.state] eq :pending: ⁇ is a Boolean rule where "R:ol 1" is the rule label and "[order.state] eq :pending:” is the rule clause. Within the rule clause, "order.state” is a variable label which provides the current state of the order, and ":pending:” is a literal label. Essentially, the rule R:ol 1 will return a "true” value for all the orders that are currently pending. As will be shown in various examples below, simple rules such as R:ol 1 can be combined with other rules to configure the operation of the negotiation, assignment, and optimization algorithms.
- R:xyz all-of ⁇ R:ol ; R:o2; R:o3 ⁇ . is equivalent to:
- Expression rule may consist of an expression that can either be a numeric, date or string expression or may consist of a number of rule identifiers.
- the result of the execution of the rule is the value of the expression or, in the case of a number of rules, the value returned by the last rule executed.
- An "if statement without an "else" clause is only considered to execute if the condition is true.
- R:xyz ⁇ R:ol; R:o2; R:o3 ⁇ . executes each of the rules and returns the value of the last rule that executed. Thus, if no conditional clauses are evaluated the result of executing rule R:xyz will be the result returned by rule R:o3.
- the expression rule provides a flexible mechanism for performing a number of conditional clauses where the rule is expected to yield a value corresponding to the conditional clause that succeeded. exec-fn
- This operator applies to a single named function in the rule body.
- the result returned by the rule is that returned by the named function.
- This operator is provided so that complex expressions may be invoked as a single rule clause without requiring the service organization to program the expression.
- clause may be a simple Boolean clause or may be a rule identifier.
- the expression may be numeric (returning an integer or real value), a date expression (returning a date) or a rule identifier.
- Order Candidacy and Assignment Candidacy The following table provides some examples of the types of business rule values that may be used in expressions for order candidacy and assignment candidacy:
- Assignment Candidacy The following table enumerates the values that may be used in expressions for assignment candidacy:
- Constants allow a service organization to control the flow of execution within the rules. Constants are a mechanism for replacing global constants that would otherwise require explicit reference in the programmable business rules. This feature is illustrated by the following example.
- Rule R2 If (Cl) and (Y or Z) then expression.
- this mechanism allows the service organization to change the behavior of rules by manipulating secondary level rules (those invoked explicitly by other rules) rather than referencing a global value explicitly.
- Order Candidacy Rules This example uses the constant rule R:EmergencyOrderDispatching previously defined.
- the order candidacy rule (R:OrderCandidacy) describes the conditions under which an order can be automatically assigned by the scheduling system to a mobile user. For example, for an order to be assignable, the order state must be pending (R:ol 1) or dispatched (R:ol2), the order must be enabled for automatic assignment (R:o6), as well as a number of other conditions.
- the order candidacy rule also makes use of a constant. For example, there is a constant that indicates whether an emergency order can be automatically dispatched (R:EmergencyOrderDispatching). If the value of this constant is false, that is, emergency orders cannot be automatically dispatched, and the order is an emergency order, then it cannot be automatically assigned. However, if the value of this constant is true, then the order can be dispatched even it is an emergency order.
- the mobile user candidacy rule (R:UserCandidacy) describes the conditions under which a mobile user can be automatically assigned orders. For example, to be assigned orders, a mobile user must be enabled for automatic assignment (R:fl 00) and must not be in an emergency state (R:fl01), as well as a number of other conditions.
- R:UserCandidacy all-of ⁇ R:fl 00; R:fl01; R:fl02; R:fl05 ⁇ .
- R:fl02 ⁇ [order.assignedUser.isInEmergencyControl] neq :true: ⁇ .
- R: ⁇ 05 ⁇ any-of ⁇ R:fl 051; R: ⁇ 052 ⁇ .
- R:fl051 [order. assignedUser.mode] neq :local: ⁇ .
- R: ⁇ 052 ⁇ all-of ⁇ R:fl0521;
- R:UserlocalModeDispatch ⁇ .
- R:fl0521 ⁇ [order.assignedUser.mode] eq :local: ⁇ .
- R:AmountCollectedScore ⁇ R:acl; R:ac2; R:ac3 ⁇ .
- R:ac21 ⁇ R:acl0 t 0 ⁇ .
- R:ac22 ⁇ R:acl0 1t 1 ⁇ .
- R:acl01 ⁇ ( 1 - (([order.amountCollected] - [systemAmount CollectedMin]) / ([systemAmountCollectedMax] - [systemAmount CollectedMin])) ⁇ .
- the mobile user wage rule provides a score, between 0 and 1 , that indicates the whether the mobile user is expensive to assign to orders. Lower values represent more expensive mobile users.
- R:WageScore ⁇ R:wl; R:w2; R:w3 ⁇ .
- R:w21 ⁇ R:wl0 t 0 ⁇ .
- R:w22 ⁇ R:wl0 1t l ⁇ .
Description
CONFIGURABLE SCHEDULING SYSTEM
CROSS-REFERENCE TO RELATED APPLICATION
This application claims the benefit of U.S. Provisional Applications 60/193,834, 60/193,917, 60/193,832, 60/193,705 and 60/193,833, each of which were filed March 31 , 2000, and each of which are incorporated herein by reference
TECHNICAL FIELD
The technical field relates generally to scheduling, and more particularly, to a system and method for a configurable scheduling system that is configurable by a service organization using the system.
COPYRIGHT NOTICE - PERMISSION
A portion of the disclosure of this patent document contains materials which are subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to the software and data as described below and in the drawings attached hereto: Copyright © 2001, MDSI Mobile Data Solutions Inc., All Rights Reserved.
BACKGROUND OF THE INVENTION
In many industries which employ a large mobile workforce, such as utilities, taxi companies, and large equipment repair services, the efficiency with which mobile workers can be scheduled and dispatched to customers can have a great impact on customer satisfaction as well as on a service provider's bottom line. From the customer satisfaction standpoint, it is not uncommon for a customer to call a cable television company, or other service provider, to request service only to be told to choose a four-hour service window on
good days, or an "all day" service window on bad days. Even when the customer is "lucky" enough to request service on a "good" day, the worker dispatched by the service provider typically will arrive well after the window has closed, or the customer will have waited, and wasted, most of the day for what should typically only be a half-hour service call. This situation arises from an inability of the service provider to accurately predict when a particular worker will complete a given task and how long it will take for the worker to reach the next service location.
From the financial standpoint, inefficient scheduling and dispatching results in fewer service calls being performed each day, potentially resulting in lower earnings per worker-hour, as well as possible additional expenditures required for hiring and training additional workers. To improve scheduling and dispatching, many service providers have an automated or computerized scheduling system carry out these tasks. Conventional scheduling systems typically perform the scheduling and dispatching tasks through the use of various algorithms that account for many factors in assigning a mobile worker to service a customers work order, such as time availability, skill sets, geographic area, duration of each work order, travel time, and the like. Thus, using scheduling systems such as these allow for a service provider to more efficiently utilize their mobile workers in satisfying customer work orders.
Although scheduling systems have reduced the difficulty a service provider faces in scheduling and dispatching mobile workers, the systems and algorithms employed are generally difficult customize or reconfigure to the needs of a particular service organization . Although some conventional scheduling systems have incorporated some aspects of configurability by the service organization, the extent of configurability is usually limited to customizing the scheduling system by having the service organization select from a set of predefined scheduling rules. However, any additional configuration of the scheduling system by the service organization involves custom reprogramming of the algorithms themselves, which will require the reprogramming be performed the programmers of the scheduling system. Moreover, in the cases where additional
modifications to the scheduling system are required by the service organization, additional reprogramming may be required. As one could imagine, having the algorithms reprogrammed for a custom configuration of the scheduling system can be costly and time consuming. The service organization is also subject to the time constraints of the programmers reprogramming the algorithms. That is, service organizations have no choice but to wait until programmers have time to work on their scheduling systems. For the service organization having limited financial resources, or where reprogramming of the algorithms cannot be completed within the desired timeframe, the service organization is left without any options but to suffer through the use of the existing scheduling system. Therefore, there is a need for a configurable scheduling system having greater flexibility in allowing a service organization using the system to configure the system.
SUMMARY OF THE INVENTION
The present invention relates to a user-configurable scheduling method and apparatus configurable by a service organization for scheduling orders and workers in accordance with a constraint set including a programmable constraint set and a fixed constraint set. The programmable constraint set alters the schedule process from a normal process governed by the fixed constraint set. The constraint set includes programmable rules and constants. The programmable rules may be programmed in accordance with a rule language convention having a first field containing rule identifier to uniquely identify the data structure, and a field containing a rule body including material for altering the schedule process from a standard process to a reconfigured process configured by the service organization.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 is a block diagram of a system showing the relationship between a service organization, a scheduling system, mobile service representatives, and customers according to and embodiment of the present invention.
Figure 2 is a block diagram showing the scheduling system according to an embodiment of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
In the following detailed description of exemplary embodiments of the invention, reference is made to the accompanying drawings, which form a part hereof, and in which are shown, by way of illustration, specific exemplary embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. Other embodiments may be utilized and structural, logical, electrical, and other changes may be made without departing from the spirit or scope of the present invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims. The present application incorporates by reference the following references:
Simon Jacobs, Enterprise Scheduling System (ESS) Function Specification, Rev. 4.1 (June 30, 2000); and Simon Jacobs, Configurable WDS (CWDS), Rev. 2.1 (August 1999).
Figure 1 is a block diagram of a system 100 according to one aspect of the present invention. The system 100 includes a service organization 102. The service organization 102 performs services for a roster of customers. When a customer 108 is interested in having a service performed by the service organization 102, the customer 108 calls the service organization 102 to make a reservation for a service to be performed. Using the scheduling system 104, the service organization 102 negotiates with the customer 108 to place a reservation on a schedule. The scheduling system 104 provides to the service organization 102 several appointment windows from which the customer 108 may choose. The customer 108 selects an appointment window in which the service will be performed. During the negotiation, the scheduling system 104 makes preliminary assignment to one or more mobile service representatives 106. A mobile service
SU iFUCTt ,! rUTE SHEET (RULE 26)
representative 106 is one who is capable of performing the service requested by the customer 108. Each time a reservation is placed, the scheduling system 104 accounts for many factors in assigning the reservation to a mobile service representative 106, such as time availability, skill sets, geographic area, duration of each job, travel times between jobs, and equipment requirements. The scheduling system 104 can be implemented over one machine or several machines with different processors. This allows the scheduling system 104 to be scalable depending on the needs of the service organization 102. As will be discussed in more detail below, the scheduling system 104 is also configurable by the service organization, thus allowing the scheduling system 104 to meet different constraints and objectives as defined by the service organization.
Figure 2 illustrates a scheduling system 200 according to an embodiment of the present invention. The scheduling system 200 is similar to the scheduling system 104 shown in Figure 1 and can be substituted for the scheduling system 104. The scheduling system 200 performs a scheduling process. That is, the scheduling process includes appointment negotiation, assignment and optimization processes. It will be appreciated that additional processes may be included, as well as having one or more of the processes described herein omitted, without departing from the scope of the present invention. The processes of appointment negotiation, assignment and optimization have been provided merely for the purposes of an example. It will be appreciated that "process" is used herein to refer to a logical collection of activities.
The scheduling system includes a negotiator 204, an assigner 208, and an optimizer 212 which perform negotiating, assigning, and optimizing functions through the use of a negotiation algorithm 216, an assignment algorithm 220, and an optimization function 224, respectively. Negotiating offers appointment windows to a customer to select for a reservation and has performed enough processing to know that the reservation may be assigned to any of the appointment windows that are offered to the customer. Assigning assigns the reservations to a shift of a mobile service representative provided that the shift and the mobile service representative satisfy certain constraints, such as sufficient skill sets
SUBSTITUTE SriOTf (HULE 26)
to perform the work under the reservation. Optimizing changes the way reservations are assigned by the assigning function to meet optimization objectives defined by the service organization. The optimization may move reservations within a shift of a mobile service representative. It may swap reservations between two shifts of two mobile service representatives as well. The optimization is designed to occur independent from the assignment while new reservations are being assigned.
It will be appreciated that scheduling system 200 may be implemented using various computer systems and software techniques that are well-known to those of ordinary skill in the art. A more detailed description of a system in which the scheduling system 200 may be implemented is provided in co-pending U.S. Patent Application , entitled ENTERPRISE SCHEDULING SYSTEM FOR
SCHEDULING MOBILE SERVICE REPRESENTATIVES, filed on April 2, 2001, to Jacobs et al, which is incorporated herein by reference.
In embodiments of the present invention, operation of the negotiation algorithm 216, the assignment algorithm 220, and the optimization algorithm 224 of the scheduling system 200 is governed by a constraint set, which includes a set of rules and a set of constants. The set of constraints can be defined in a file that is then compiled into a library that are used when the negotiation, assignment, or optimization algorithms are executed. The set of rules include both fixed business rules, which are generally inaccessible by a service organization, and configurable rules that can be programmed by the service organization. Similarly, as will be explained in more detail below, the set of constants are programmable and may be used by the service organization to control the flow of execution of the rules. Their values can be changed at run time by dispatchers and system administrators to adjust the rule set based on different operating conditions. For example, changing the scheduling during a snow store as compared to a sunny day, or scheduling during a major service outage.
Although the underlying structure of the negotiation, assignment, and optimization algorithms 216, 220, and 224 are fixed, and generally inaccessible to the
SUBSTITUTE Sr ET (HULL 25)
service organization, the rules, and consequently the constants, are invoked from within the negotiation, assignment, and optimization algorithms 216, 220, and 224 by rule identifiers that are coded into the algorithms. Thus, although the service organization cannot modify the algorithm itself, through the use of the programmable rules and constants, the service organization is provided with a mechanism by which the operation of the negotiation, assignment, and optimization algorithms 216, 220, and 224 of the scheduling system 200 may be customized or configured to the particular needs of the service organization using the scheduling system 200.
Examples of the types of rules and constants shall now be discussed to illustrate their use in customizing or configuring the scheduling system 200. It will be appreciated, however, that the following description, although describing particular embodiments, is provided by way of example, and should not be interpreted in limiting the scope of the present invention.
As mentioned previously, the rules of the constraint set include both fixed business rules and configurable or programmable rules programmed by the service organization. However, the rules, both the fixed and configurable ones, can also be generally categorized by a type as well. For example, the rules of the constraint set can be categorized according to the following types.
Order candidacy rules, which govern which orders can be considered by the appointment, negotiation, assignment, and optimization algorithms;
Mobile user candidacy rules, which govern which mobile users can be considered by the appointment, negotiation, assignment, and optimization algorithms; Assignment candidacy rules, which determine which order and user pairs constitute valid assignments;
SUBSTITUTE Sl i EΪ (RULE 26)
Score rules, which provide a measure of the quality of the assignment or an order to a mobile user, and is used in assignment and optimization as well; and
Intermediate rules refer to those rules that are referenced by other rules. The intermediate rules are used to build up complex high level rules. The three candidacy rules, namely, the order, mobile user, and assignment candidacy rules return a value of true or fail. The score rules return a numerical value, typically between zero and one. There can be a variety of score rules. For example, there are a number of instances of each type of candidacy rule, where all instances of each type must be true for the order or user to be considered a candidate. It will be appreciated that the various rules previously described can be used or accessed by one or all of the algorithms executing in the scheduling system, including the negotiation, assignment and optimization algorithms. As will be explained in more detail below, certain types of business rule values are available to corresponding types of rules.
As mentioned previously, the grammar for the rule language is designed to provide enough flexibility to express the various business rules that need to be defined for the scheduling system. A programmable rule is written by a service organization according to a language convention, which is subsequently translated into a rule grammar format. The same language convention could be used for the fixed business rules and constraint sets as well, except that the fixed business rules are inaccessible by the service organization. A suggested language convention is as follows.
A programmable rule is identified by a <rule_id> which is a label starting with the symbol "R:". The <rule_id> must be unique within the rule context group. The rule is composed of a rule body or rule clause composed of different rule types or more rule identifiers. The rule clause is bounded by a pair of brackets ({}), and each of the rule identifiers therein are separated by a semicolon (;). The rule is then terminated by a period (.).
In addition to defining the rule language convention, data types are defined as well. The following list provides examples of those data types that can be defined within the language.
- Rule label. This label identifies a rule for future reference. Rule labels begin with R:.
- Variable label. This type of label is enclosed in [square brackets] and denotes a value that is returned by the system that the rule may access. The value is returned by a function and may be a single field in a database or the result of combining information from a variety of sources (e.g. a synthesis of different database fields). The motivation for providing this label mechanism is to furnish the service organization with the ability to reference values that are logically related to one another (e.g., the wage paid to a given mobile user). A variable label may be composed of one or more elements, each separated by a period (.). Each of the elements denotes a sub-field of those to its left; for example, [order.date] denotes the date belonging to the order object, and [order.assignedUser.state] denotes the state of the mobile user assigned to the order.
Variables may, as will be discussed in more detail below, represent literals, numbers, dates and strings. If the variable label is preceded by a dollar sign ($) the label is taken to be a database field name and not an accessor function. This is done in order to allow for the possibility that a service organization creates a customized database field or configurable fields that can be used by the rules and constants. For example, some configurable fields include customer contact number, completion codes (showing work done and parts or materials used to complete and order), customer account number, previous work history, and the like.
- Dates. Dates are bounded by a pair of percentage signs (%%) and are specified in the following format: yyyy/mm/dd (numeric year, month, and day)
- Times. Times are bounded by a pair of ampersand signs (&&) and are specified in the following format:
SUBSTITUTE C1 SEET (RULE 26)
hh:mm:ss (hours, minutes, and seconds)
- Datetimes. Datetimes are bounded by a pair of "at" signs (@@) and are specified in the following format: yyyy/mm/dd-hh :mm : ss - Numbers. These may be signed or unsigned, integers or real numbers base ten. Real numbers are specified in floating point format only.
- Strings. These are delimited by a pair of double quotes ("") and may contain alphanumeric or special characters.
- Literals may be any of the date, number or string types. A literal label represents a label that has been equated to a literal. Literal labels are delimited by a pair of colons (::). Some special literals are defined for the rule language:
- Boolean values are treated as literals e.g., :true: and :false:. An undefined or non-existent value is :nil:
- Sets are supported in so far as there are operators to perform membership comparisons on sets. There is no defined mechanism for defining a set literal (via a literal label).
Based on the rule semantics and data types previously defined, an example programmable rule is provided:
R:ol l {[order.state] eq :pending:} is a Boolean rule where "R:ol 1" is the rule label and "[order.state] eq :pending:" is the rule clause. Within the rule clause, "order.state" is a variable label which provides the current state of the order, and ":pending:" is a literal label. Essentially, the rule R:ol 1 will return a "true" value for all the orders that are currently pending. As will be shown in various examples below, simple rules such as R:ol 1 can be combined with other rules to configure the operation of the negotiation, assignment, and optimization algorithms.
The rules written according to the rule language convention previously described are subsequently translated into a rule grammar. The following list provides an example rule grammar as expressed using a BNF notation. That is, the expression to the
SUBSTITUTE SHL ' (P.ULE 26)
left of the "::=" symbol are expanded to the expression provided to the right. Additionally, optional selection of a terminal or non-terminal symbol is indicated with an OR symbol "|", where terminal symbols are in bold and non-terminal symbols are enclosed in angle brackets "<>".
Rule definition:
<rule> <rule_ιd> <rule_body>
<rule_x > R: <ιd_label> <space>
<rule_body> <allof_rule> | <anyof_rule> | <oneof_rule> |
<cond_rule> | <expr_rule> | <exec_rule>
<allof_rule> all-of <blnk> { <blnk> <allof_body> <blnk> }
<allof_body> <rule_ιd> | <rule_ιd> ; <allof_body>
<anyof_rule> any-of <blnk> { <blnk> <anyof_body> <blnk> }
<anyof_body> <rule_ιd> | <rule_ιd> ; <anyof_body>
<oneof_rule> one-of <blnk> { <blnk> <oneof_body> <blnk> }
<oneof_body> <rule_ιd> | <rule_ιd> ; <oneof_body>
<exec_rule> exec-fn <blnk> { <ιd_label> }
<expr_rule> { <blnk> <exp_body> <blnk> }
<exp_body> <rule_ιd> | <rule_ιd> ; <exp_body>
<cond rule> if <blnk> { <blnk> <cond_clause> <blnk> } <blnk> then
<blnk> { <blnk> <expr_clause> <blnk> } <blnk> else
<blnk> { <blnk> <expr_clause> <blnk> }
<cond_clause> <clause_body> | <rule_ιd> <expr _clause> <expr> I <rule_ιd>
Rule clause definition:
<rule_clause> <rule_ιd> { <rcl_body> } . <rcl_body> <blnk> <rcl_ιtem> <blnk> <rcl_ιtem> <clause_body> | <rule_body> | <rule_ιd> <clause_body> <value><logop><val e> | <setvalχsetopχsetval>
Expression definition:
<expr> <num_exp> | <date_exp>
<num_exp> <numval> | (<blnk><num_exp><numopxnu _exp><blnk>)
<date_exp> <dateval> | (<blnkχdatevalχdateop>
<numval><blnk>)
<numval> <number> | <lιteral> | <vaπable>
<dateval> <date> j <lιteral> | <varιable>
<value> <blnk> <val_type> <blnk>
<setval> < <set_body> >
<set_body> <set_element> | <set_element> <blnk <set_body>
<set_element> <number> | <date> | <lιteral>
<val_type> <number> | <strmg> | <date> | <lιteral> [
<varιable> | <rule_ιd>
<lιteral> : <ιd_label> :
<vaπable> [ <var_label> ] | [ <var_label_l>]
<var_label_l> $<var_label>
<var_label> <ιd_label> | <var_label> . <var_label>
<ιd_label> <alpha> <alphanum>
<alphanum> <alp a> ] <numerιc>
<stπng> ™ <strmg_body> "
<strlng_body> <ans> I <stπng_body> <ans>
<number> <sιgn> <real> <space> j <sιgn> <ιnteger> <space>
<date> % <date defn> %
SUBSTITUTE SHEET 1E 26)
<date_def n> <yyyy> / <mon_mon> / <dd>
<time> & <time_defn> &
<time_def n> <hh> / <min_min> / <ss>
<datet ime > @ <date_defn> - <time_defn> @
<real > <integer> . <floatpart>
<floatpart> <null> j <integer>
<integer> <numeric> | <integer> <numeric>
<ans> <alpha> | <number> | <special>
<sign> <null> I + I -
<dd> <mteger> Range : 01 -31
<mon_mon> <integer> Range : 01 -12
<yyyy> <integer> Range : 0 - 9999
<hh> <integer> Range : 0 - 23
<min_min> <integer> Range : 0 - 59
<ss> <integer> Range : 0 - 59
<logop> eq I neq | It leq I gt | geq |
<setop> seq notin
<numop> +
<dateop> +
<alpha> a b d e g h i 3 k 1 m n P q s t u v w x y z
A B c D Ξ M N 0 P Q R T U V w X Y z
<numerιc> 0 1 2 5 7 8
<special> ! I / I
<space>
<blnk> <spaces> | <null>
<spaces> <space> I <spaces> <space>
<space> UNICODE space character
<null> No token required
The operators used in the above grammar are defined as follows.
all-of
This operator applies to all clauses identified in the rule body. A logical AND operation is performed on the clauses, thus:
R:xyz all-of { R:ol ; R:o2; R:o3 }. is equivalent to:
R:ol AND R:o2 AND R:o3 The value returned by this operator is a Boolean (true or false).
any-of
This operator applies to all clauses identified in the rule body. A logical OR operation is performed on the clauses, thus:
R:xyz any-of { R:ol; R:o2; R:o3 }. is equivalent to:
R:ol OR R:o2 OR R:o3
The value returned by this operator is a Boolean (true or false).
one-of
This operator applies to all clauses identified in the rule body. A logical exclusive OR (XOR) operation is performed on the clauses, thus: R:xyz one-of { R:ol; R:o2; R:o3 }. is equivalent to:
R:ol XOR R:o2 XOR R:o3 The value returned by this operator is a Boolean (true or false).
Expression rule An expression rule may consist of an expression that can either be a numeric, date or string expression or may consist of a number of rule identifiers. The result of the execution of the rule is the value of the expression or, in the case of a number of rules, the value returned by the last rule executed. An "if statement without an "else" clause is only considered to execute if the condition is true. Thus, the rule:
R:xyz { R:ol; R:o2; R:o3 }. executes each of the rules and returns the value of the last rule that executed. Thus, if no conditional clauses are evaluated the result of executing rule R:xyz will be the result returned by rule R:o3. The expression rule provides a flexible mechanism for performing a number of conditional clauses where the rule is expected to yield a value corresponding to the conditional clause that succeeded.
exec-fn
This operator applies to a single named function in the rule body. The result returned by the rule is that returned by the named function.
This operator is provided so that complex expressions may be invoked as a single rule clause without requiring the service organization to program the expression.
Conditional clause
Conditional expressions only have a consequent and "else" clause. The former is evaluated if the logical expression of the conditional evaluates to true otherwise the "else" expression is evaluated. The syntax used is the following:
If clause then expression else expression. The clause may be a simple Boolean clause or may be a rule identifier. The expression may be numeric (returning an integer or real value), a date expression (returning a date) or a rule identifier.
Logical Operators (A op B)
Logical operators must be provided with operands of the same type. In the event that one or both operands are undefined (mil:) the result of the operation will be :false:
In the following expressions, if A and B evaluate to numeric or date values the comparison is done based on the arithmetic relationship between the operands. If A and B evaluate to strings the comparison is done according to the UNICODE collating sequence. eq Returns true if A = B neq Returns true if A ≠ B leq Returns true if A ≤ B
geq Returns true if A ≥ B It Returns true if A < B gt Returns true if A > B
Set Operators (A op B)
In the following expressions, A and B must represent sets of similar objects. mem Returns true if A n B ≠ 0 nmeni Returns true if A rs B = 0 seq Returns true if A = B in Returns true if A e B notin Returns true if A g B
The following tables describe valid label sets that can be used in the grammar for the rule language, given the type of rule being created. The tables presented below list the variable labels that the service organization is allowed to reference and the values that the variables referenced may take.
Order Candidacy and Assignment Candidacy. The following table provides some examples of the types of business rule values that may be used in expressions for order candidacy and assignment candidacy:
Mobile User Candidacy and Assignment Candidacy. The following table enumerates the business rule values that may be used in expressions for mobile user candidacy and assignment candidacy:
Assignment Candidacy. The following table enumerates the values that may be used in expressions for assignment candidacy:
Area Data. The following table enumerates some of the values that may be used in expressions involving areas:
System Data. The following table enumerates some of the system values that may be used in expressions for mobile user or order candidacy:
Constants, as briefly discussed above, allow a service organization to control the flow of execution within the rules. Constants are a mechanism for replacing global constants that would otherwise require explicit reference in the programmable business rules. This feature is illustrated by the following example.
Let there be a Boolean constant X that the service organization sets to establish some configuration. Additionally, the service organization has included a programmable rule that should be invoked if the value of X is true. Through the use of constants, the rule could be formulated in the form:
Rule Rl : If (X = true) and (Y or Z) then expression. This rule could be recast in the following form, using a constant: Constant Cl : true.
Rule R2: If (Cl) and (Y or Z) then expression. Thus, this mechanism allows the service organization to change the behavior of rules by manipulating secondary level rules (those invoked explicitly by other rules) rather than referencing a global value explicitly.
The following are some examples illustrating the use of the programmable rules and constants that may be created by the service organization using the rule language
SUBSTITUTE S! iL 'i (RULE 26)
convention previously described. It will be appreciated that the following examples have been provided to illustrate various aspects of the present invention, and are not intended to limit its scope.
Constants:
Emergency Order Dispatching:
This constant allows for emergency order dispatching. It is checked in the order candidacy rule.
R:EmergencyOrderDispatching {{:true:}} If we wish to turn off emergency order dispatching the constant would read thus:
R:EmergencyOrderDispatching {{rfalse:}}
Rules:
Order Candidacy Rules: This example uses the constant rule R:EmergencyOrderDispatching previously defined. The order candidacy rule (R:OrderCandidacy) describes the conditions under which an order can be automatically assigned by the scheduling system to a mobile user. For example, for an order to be assignable, the order state must be pending (R:ol 1) or dispatched (R:ol2), the order must be enabled for automatic assignment (R:o6), as well as a number of other conditions. The order candidacy rule also makes use of a constant. For example, there is a constant that indicates whether an emergency order can be automatically dispatched (R:EmergencyOrderDispatching). If the value of this constant is false, that is, emergency orders cannot be automatically dispatched, and the order is an emergency order, then it cannot be automatically assigned. However, if the value of this constant is true, then the order can be dispatched even it is an emergency order.
R:OrderCandidacy all-of { R:ol ; R:o3; R:o4; R:o6; R:o7; R:o9 }.
R:ol {any-of { R: oi l; R: ol2 }}.
SUBSTITUTE SHEET {HilΞ 23)
R:ol l {[order.state] eq :pending:}. R: ol2 {[order.state] eq :dispatched:}. R:o3 {[order.isAssigned] eq :false:}. R:o4 { [order. scheduleDate] le [systemDate]}. R:o6 {[order.isAutoDispatchable] eq :true:}.
R:o7 {any-of { R:o71; R:o72}}.
R:o71 {[order.priorityType] neq emergency:}. R:o72 {all-of {R:o721 ; R:EmergencyOrderDispatching}}. R:o721 {[order.priorityType] eq :emergency:}. R:o9 {R:Usercandidacy}.
Mobile User Candidacy Rules:
The mobile user candidacy rule (R:UserCandidacy) describes the conditions under which a mobile user can be automatically assigned orders. For example, to be assigned orders, a mobile user must be enabled for automatic assignment (R:fl 00) and must not be in an emergency state (R:fl01), as well as a number of other conditions.
R:UserCandidacy all-of { R:fl 00; R:fl01; R:fl02; R:fl05 }.
R:fl00 {[order.assignedUser.isAutoDispatchable] eq :true:}. R:fl01 { [order. assignedUser. state] neq emergency:}.
R:fl02 {[order.assignedUser.isInEmergencyControl] neq :true:}. R:Ω05 {any-of {R:fl 051; R:Ω052}}.
R:fl051 { [order. assignedUser.mode] neq :local:}. R:Ω052 {all-of {R:fl0521; R:UserlocalModeDispatch }}. R:fl0521 {[order.assignedUser.mode] eq :local:}.
SUBSTi ruTt J l 'L i
Amount Collected Rule: The amount collected rule provides a score, between 0 and 1, that indicates the relative value of (that is, the revenue generated by) working on an order. Higher values represent more revenue collected. Note that rule R:acl0 is used in many places in the following example. Thus, the R:acl0 rule provides a good example of the use of an intermediate rule.
R:AmountCollectedScore { R:acl; R:ac2; R:ac3 }.
R:acl {if {R:acl0 leq 0} then { 0 }}. R:ac2 {if { R:ac20 }} then { R:10 }}.
R:ac20 all-of { R:ac21; R:ac22 }. R:ac21 { R:acl0 t 0 }. R:ac22 { R:acl0 1t 1 }. R:ac3 {if {R:acl0 geq 1} then { 1 }}. R:acl0 { if {[systemAmountCollectedMax] eq [systemAmount
CollectedMin]} then
{ 1 } else {R:acl01}}. R:acl01 {( 1 - (([order.amountCollected] - [systemAmount CollectedMin]) / ([systemAmountCollectedMax] - [systemAmount CollectedMin])))}.
Mobile User Wage Rule:
The mobile user wage rule provides a score, between 0 and 1 , that indicates the whether the mobile user is expensive to assign to orders. Lower values represent more expensive mobile users.
R:WageScore { R:wl; R:w2; R:w3 }.
R:wl {if {R:wl0 leq 0} then { 0 }}.
suBsπ U i . uϊ'i ^ι t LE 25)
R:w2 {if { R:w20 }} then { R:10 }}.
R:w20 all-of { R:w21; R:w22 }. R:w21 { R:wl0 t 0 }. R:w22 { R:wl0 1t l }. R:w3 {if {R:wl0 geq l} then { 1 }}.
R:wl0 {if {[ systemMaxUserWage] eq [systemMinUserWage]} then { 1 } else {R:wl01}}.
R:wl01 {( 1 - (([user. wage] - [systemMinUserWage]) / ([systemMaxUserWage] - [systemMinUserWage])))}.
It will be appreciated that certain details have been set forth herein to provide a sufficient understanding of the invention. However, it will be clear to one skilled in the art that the invention may be practiced without these particular details. In other instances, well-known circuits, control signals, timing protocols, and software operations have not been shown in detail in order to avoid unnecessarily obscuring the invention. Additionally, computer and/or software implementation of embodiments of the present invention are well-known to those of ordinary skill in the art. It will be further appreciated that, although specific embodiments of the invention have been described herein for purposes of illustration, various modifications may be made without deviating from the spirit and scope of the invention. Accordingly, the invention is not limited except as by the appended claims.
Claims
1. A method for configuring a schedule process, comprising: scheduling an order into a shift of a worker according to a set of rules; and configuring the set of rules to change the act of scheduling.
2. The method of claim 1 wherein configuring comprises programming a rule to control which orders are considered in the schedule process.
3. The method of claim 1 wherein configuring comprises programming a rule to control which workers are considered in the schedule process.
4. The method of claim 1 wherein configuring comprises programming a rule to control whether an order can be assigned to a worker.
5. The method of claim 1 wherein configuring comprises programming a rule to provide a score when comparing a workers to an order.
6. The method of claim 1, further comprising programming a set of constants to control the flow of execution within the rules, the constants replacing global constants that would otherwise require explicit reference in the configured set of rules.
7. The method of claim 1 wherein scheduling comprises negotiating a reservation, assigning the reservation, and optimizing the reservation.
8. A method for configuring a schedule process, comprising: scheduling an order into a shift of a worker according to a set of rules; and programming a constraint set to change the act of scheduling.
9. The method of claim 8, wherein programming a constraint set includes programming a set of rules, each rule programmed in accordance with a rule language convention having: a first field containing rule identifier to uniquely identify the data structure; and a field containing a rule body including material for altering the schedule process from a standard process to a reconfigured process.
10. The method of claim 8 wherein scheduling comprises negotiating a reservation, assigning the reservation, and optimizing the reservation.
11. A method for performing a schedule process, comprising: programming a programmed constraint set to supplement or change a fixed constraint set; and executing a scheduling process that performs a process of scheduling orders to a worker in accordance with the programmed constraint set and the fixed constraint set.
12. The method of claim 11 wherein the programmed constraint set comprises programmable rules and constants.
13. The method of claim 12, further comprising translating the first set of rules from a defined configurable rule language convention into a predefined grammar.
14. The method of claim 13 wherein translating the first set of rules comprises compiling the first set of rules into a library that is used when the schedule process is performed.
15. The method of claim 12 wherein executing the scheduling process comprises performing the scheduling process according to a standard process except where the programmed first set of rules have altered performance of the scheduling process to a reconfigured process.
Suϋύi l l U t c os tc l [iiu c 2θ)
16. A scheduling system for a scheduling environment, comprising: a negotiator to negotiate the reservation of orders; and an assigner to assign the orders to workers, the negotiator and assigner respectively negotiating and assigning the orders according to a constraint set including a fixed set of business rules and a set of programmable configuration rules.
17. The scheduling system of claim 16, further comprising an optimizer to optimize the reservation of orders.
18. The scheduling system of claim 16 wherein the negotiator and assigner are implemented in a computer system having a processor and a memory coupled thereto.
19. The scheduling system of claim 16 wherein the set of configuration rules programmed according to a rule language convention defining a first data field containing data to uniquely identify a respective configuration rule and a second data field containing data representing a rule clause for altering a scheduling process from a standard process to a reconfigured process.
20. A scheduling system, comprising: a memory for storing a set of rules having a set of fixed business rules and a set of configurable rules programmed by a service organization; and a processor coupled to the memory for executing a scheduling process that performs a schedule process of scheduling orders and workers in accordance with the set of rules as altered by the set of configurable rules.
21. The scheduling system of claim 20 wherein execution of the scheduling process by the processor includes invoking the set of rules from defined locations in a negotiation algorithm.
SUBSTil U i c ufli--. i ' ULE 26)
22. The scheduling system of claim 20 wherein the processor further executes an assignment algorithm in accordance with the set of rules as altered by the set of configurable rules to assign orders to a worker.
23. The scheduling system of claim 20 wherein the processor further executes an optimization algorithm in accordance with the set of rules as altered by the set of configurable rules to assign orders to a worker.
24. The scheduling system of claim 20 wherein the processor further executes negotiation, assignment, and optimization algorithms in accordance with the set of rules as altered by the set of configurable rules to schedule orders to a worker.
25. The scheduling system of claim 20 wherein the set of configurable rules programmed by the service organization are compiled from a defined rule language convention into libraries and stored in the memory according to a defined rule grammar format.
26. A scheduling system, comprising: a first algorithm for negotiating the reservation of work orders; a second algorithm for assigning work orders to workers; a set of rules that are invoked from defined locations in the first and second algorithms to govern execution of the algorithms, the set of rules including a fixed set of business rules augmented by a set of programmable rules for altering execution of the algorithms from the execution according to only the fixed set of business rules.
27. The scheduling system of claim 26 wherein the first and second algorithms are implemented in a processor and the set of rules are stored in a memory coupled to the processor.
SUBSTITUTE SHEET (RULE 25)
28. A computer-readable medium having stored thereon a data structure, comprising: a first data field containing data to uniquely identify the data structure; and a second data field containing data representing a rule body including data for altering a scheduling process from a standard process to a reconfigured process.
29. The computer-readable medium of claim 28 wherein the scheduling process comprises negotiating a reservation, assigning the reservation, and optimizing the reservation.
30. The computer-readable medium of claim 28 wherein the second data field includes a variable label denoting a value that is returned when the data structure is accessed.
31. The computer-readable medium of claim 30 wherein the second data field includes bracket delimiters to identify the variable label.
32. The computer-readable medium of claim 28 wherein the second data field includes an operator and a rule body, the rule body bounded by a pair of braces and the operator operating on the rule body.
33. The computer-readable medium of claim 32 wherein the operation comprises a Boolean operator.
34. The computer-readable medium of claim 32 wherein the operation comprises a set operator.
35. A computer-readable medium having instructions stored thereon for causing a computer to perform a method for performing a schedule process, comprising: scheduling an order into a shift of a worker according to a set of rules; and configuring the set of rules to change the act of scheduling.
SUBSTITUTE SliELT (MULE 23)
36. Themethodofclaim35 wherein configuring comprises programming a rule to control which orders are considered in the schedule process.
37. The method of claim 35 wherein configuring comprises programming a rule to control which workers are considered in the schedule process.
38. The method ofclaim 35 wherein configuring comprises programming a rule to control whether an order can be assigned to a worker.
39. The method ofclaim 35 wherein configuring comprises programming a rule to provide a score when comparing a workers to an order.
40. The method of claim 35, further comprising programming a set of constants to control the flow of execution within the rules, the constants replacing global constants that would otherwise require explicit reference in the configured set of rules.
41. The method of claim 35 wherein scheduling an order comprises negotiating a reservation, assigning the reservation, and optimizing the reservation.42.
A computer-readable medium having instructions stored thereon for causing a computer to perform a method for performing a schedule process, comprising executing a scheduling process that performs the schedule process of scheduling orders to a worker in accordance with a programmed constraint set and the fixed constraint set, the programmed constraint set programmed by a service organization and augmenting the fixed constraint set to alter performance of the schedule process to a desired configuration.
SUBSTϊW Ε SiϊEEl (RULE 26)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2001246269A AU2001246269A1 (en) | 2000-03-31 | 2001-04-02 | Configurable scheduling system |
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US19370500P | 2000-03-31 | 2000-03-31 | |
US19383400P | 2000-03-31 | 2000-03-31 | |
US19383300P | 2000-03-31 | 2000-03-31 | |
US19383200P | 2000-03-31 | 2000-03-31 | |
US19391700P | 2000-03-31 | 2000-03-31 | |
US60/193,834 | 2000-03-31 | ||
US60/193,833 | 2000-03-31 | ||
US60/193,832 | 2000-03-31 | ||
US60/193,917 | 2000-03-31 | ||
US60/193,705 | 2000-03-31 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2001077912A2 true WO2001077912A2 (en) | 2001-10-18 |
Family
ID=27539308
Family Applications (7)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CA2001/000423 WO2001075694A2 (en) | 2000-03-31 | 2001-04-02 | Methods and systems for scheduling complex work orders for a workforce of mobile service technicians |
PCT/CA2001/000420 WO2001075691A2 (en) | 2000-03-31 | 2001-04-02 | Finding technique for a scheduling system |
PCT/CA2001/000446 WO2001075637A2 (en) | 2000-03-31 | 2001-04-02 | Enterprise scheduling system for scheduling mobile service representatives |
PCT/CA2001/000422 WO2001075693A2 (en) | 2000-03-31 | 2001-04-02 | Order scheduling system and method for scheduling appointments over multiple days |
PCT/CA2001/000419 WO2001077912A2 (en) | 2000-03-31 | 2001-04-02 | Configurable scheduling system |
PCT/CA2001/000421 WO2001075692A2 (en) | 2000-03-31 | 2001-04-02 | Assigning technique for a scheduling system |
PCT/CA2001/000445 WO2001075663A2 (en) | 2000-03-31 | 2001-04-02 | Systems and methods for enhancing connectivity |
Family Applications Before (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CA2001/000423 WO2001075694A2 (en) | 2000-03-31 | 2001-04-02 | Methods and systems for scheduling complex work orders for a workforce of mobile service technicians |
PCT/CA2001/000420 WO2001075691A2 (en) | 2000-03-31 | 2001-04-02 | Finding technique for a scheduling system |
PCT/CA2001/000446 WO2001075637A2 (en) | 2000-03-31 | 2001-04-02 | Enterprise scheduling system for scheduling mobile service representatives |
PCT/CA2001/000422 WO2001075693A2 (en) | 2000-03-31 | 2001-04-02 | Order scheduling system and method for scheduling appointments over multiple days |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CA2001/000421 WO2001075692A2 (en) | 2000-03-31 | 2001-04-02 | Assigning technique for a scheduling system |
PCT/CA2001/000445 WO2001075663A2 (en) | 2000-03-31 | 2001-04-02 | Systems and methods for enhancing connectivity |
Country Status (3)
Country | Link |
---|---|
US (8) | US7155519B2 (en) |
AU (7) | AU2001246270A1 (en) |
WO (7) | WO2001075694A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9841990B2 (en) | 2015-08-28 | 2017-12-12 | Servicepower, Inc. | Encoding of a schedule into a binary structure |
Families Citing this family (330)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7177825B1 (en) | 1999-05-11 | 2007-02-13 | Borders Louis H | Integrated system for ordering, fulfillment, and delivery of consumer products using a data network |
US7139637B1 (en) | 1999-05-11 | 2006-11-21 | William Henry Waddington | Order allocation to minimize container stops in a distribution center |
AU4839300A (en) | 1999-05-11 | 2000-11-21 | Webvan Group, Inc. | Electronic commerce enabled delivery system and method |
US6975937B1 (en) | 1999-05-11 | 2005-12-13 | Christopher Kantarjiev | Technique for processing customer service transactions at customer site using mobile computing device |
US7127412B2 (en) * | 1999-06-07 | 2006-10-24 | Pointserve, Inc. | Method and system for allocating specific appointment time windows in a service industry |
US7251612B1 (en) | 2000-01-10 | 2007-07-31 | Parker John E | Method and system for scheduling distribution routes and timeslots |
JP2001282974A (en) * | 2000-03-29 | 2001-10-12 | Ricoh Co Ltd | System and device for managing work and recording medium |
US6577726B1 (en) * | 2000-03-31 | 2003-06-10 | Siebel Systems, Inc. | Computer telephony integration hotelling method and system |
WO2001075694A2 (en) * | 2000-03-31 | 2001-10-11 | Mdsi Mobile Data Solutions Inc. | Methods and systems for scheduling complex work orders for a workforce of mobile service technicians |
US7240283B1 (en) | 2000-11-10 | 2007-07-03 | Narasimha Rao Paila | Data transmission and rendering techniques implemented over a client-server system |
US7139721B2 (en) * | 2000-05-10 | 2006-11-21 | Borders Louis H | Scheduling delivery of products via the internet |
JP2001350881A (en) * | 2000-06-06 | 2001-12-21 | Nec Corp | System and method for controlling talented person dispatch information, dispatching terminal, job offering terminal and dispatch information server and recording medium |
US7925524B2 (en) * | 2000-07-14 | 2011-04-12 | United Parcel Service Of America, Inc. | Method and system of delivering items using overlapping delivery windows |
US6505123B1 (en) | 2000-07-24 | 2003-01-07 | Weatherbank, Inc. | Interactive weather advisory system |
US7283971B1 (en) * | 2000-09-06 | 2007-10-16 | Masterlink Corporation | System and method for managing mobile workers |
US8190463B2 (en) * | 2000-09-06 | 2012-05-29 | Masterlink Corporation | System and method for managing mobile workers |
US8655698B2 (en) * | 2000-10-17 | 2014-02-18 | Accenture Global Services Limited | Performance-based logistics for aerospace and defense programs |
US7124059B2 (en) * | 2000-10-17 | 2006-10-17 | Accenture Global Services Gmbh | Managing maintenance for an item of equipment |
US7457762B2 (en) * | 2001-09-04 | 2008-11-25 | Accenture Global Services Gmbh | Optimization of management of maintenance, repair and overhaul of equipment in a specified time window |
US7440906B1 (en) | 2001-09-04 | 2008-10-21 | Accenture Global Services Gmbh | Identification, categorization, and integration of unplanned maintenance, repair and overhaul work on mechanical equipment |
US6980959B1 (en) * | 2000-10-17 | 2005-12-27 | Accenture Llp | Configuring mechanical equipment |
US7461008B2 (en) * | 2001-09-04 | 2008-12-02 | Accenture Global Services Gmbh | Planning and scheduling modification of a configuration |
US7457763B1 (en) | 2001-09-04 | 2008-11-25 | Accenture Global Services Gmbh | Predictive maintenance system |
US8706542B2 (en) * | 2000-12-18 | 2014-04-22 | Apple Inc. | Allocation of location-based orders to mobile agents |
US7233914B1 (en) | 2000-12-27 | 2007-06-19 | Joyo Wijaya | Technique for implementing item substitution for unavailable items relating to a customer order |
US20020143600A1 (en) * | 2001-03-08 | 2002-10-03 | Dugan Valerie G. | Internet-based appointment scheduling |
US20020161618A1 (en) * | 2001-03-13 | 2002-10-31 | Mitchell Weiss | Integrated scheduler and material control system |
US7308423B1 (en) | 2001-03-19 | 2007-12-11 | Franklin Goodhue Woodward | Technique for handling sales of regulated items implemented over a data network |
US7313530B2 (en) * | 2001-04-10 | 2007-12-25 | General Electric Company | Methods and systems for generating and displaying the capacity of a delivery management system |
US20020156670A1 (en) * | 2001-04-23 | 2002-10-24 | Newman Frederic M. | Method of managing workers at a well site |
US20020153134A1 (en) * | 2001-04-23 | 2002-10-24 | Newman Frederic M. | Method of managing work orders at a well site |
US6941514B2 (en) * | 2001-04-30 | 2005-09-06 | Bellsouth Intellectual Property Corporation | System and method for priority-based work order scheduling |
EP1260914A1 (en) * | 2001-05-23 | 2002-11-27 | Mediabricks Ab | A method for optimizing utilization of client capacity |
US7305491B2 (en) * | 2001-07-02 | 2007-12-04 | Intellisync Corporation | Techniques for handling time zone changes in personal information management software |
US8266066B1 (en) | 2001-09-04 | 2012-09-11 | Accenture Global Services Limited | Maintenance, repair and overhaul management |
US20030069899A1 (en) * | 2001-10-04 | 2003-04-10 | International Business Machines Corporation | Method, system, and program for providing personal preference information when scheduling events |
JP2003122867A (en) * | 2001-10-10 | 2003-04-25 | Toshiba Tec Corp | Repair support system, repair support method and computer-readable recording medium |
US7212984B2 (en) * | 2001-10-29 | 2007-05-01 | Qualcomm Incorporated | Method and apparatus for providing virtual capacity to a provider of services |
US7502747B1 (en) * | 2001-11-29 | 2009-03-10 | Microsoft Corporation | Automated job scheduling based on resource availability |
US7110745B1 (en) * | 2001-12-28 | 2006-09-19 | Bellsouth Intellectual Property Corporation | Mobile gateway interface |
DE10204691C1 (en) * | 2002-02-06 | 2003-04-24 | Philips Corp Intellectual Pty | Mercury-free, high-intensity, high pressure gas discharge lamp for vehicle headlights, has infra-red reflecting coating on lower wall to promote vaporization |
GB0202991D0 (en) * | 2002-02-08 | 2002-03-27 | Koninkl Philips Electronics Nv | Radio communication system |
AU2003201148A1 (en) * | 2002-02-08 | 2003-09-02 | Koninklijke Philips Electronics N.V. | Radio communication system |
US7555440B2 (en) * | 2002-04-29 | 2009-06-30 | At&T Intellectual Property I, L.P. | Immediate next task dispatch system and method |
EP1603301B1 (en) * | 2002-05-06 | 2007-03-07 | Research in Motion | Event reminder method |
US7221937B2 (en) * | 2002-05-06 | 2007-05-22 | Research In Motion Limited | Event reminder method |
US20030220827A1 (en) * | 2002-05-21 | 2003-11-27 | Neil Murphy | System and Method for Scheduling Service Technicians |
US7865387B2 (en) * | 2002-05-23 | 2011-01-04 | Aol Inc. | Method and system for scheduling a meeting for a set of attendees via a special attendee |
US7451098B2 (en) * | 2002-05-31 | 2008-11-11 | At&T Intellectual Property I, L.P. | Method, system, and computer program product for assigning multiple telecommunications technicians at one time to at least one skill and a turf |
US7433830B2 (en) * | 2002-06-19 | 2008-10-07 | At&T Intellectual Property I, L.P. | Method and system for assigning and dispatching a telecommunications systems work order based on global positioning information |
US7523046B2 (en) * | 2002-07-26 | 2009-04-21 | Cartmanager, Llc | Communication system for managing hotel operations |
US7941514B2 (en) * | 2002-07-31 | 2011-05-10 | Level 3 Communications, Llc | Order entry system for telecommunications network service |
JP4373060B2 (en) * | 2002-08-14 | 2009-11-25 | 株式会社エヌ・ティ・ティ・ドコモ | Distributed processing system and proxy node, user side node and method in distributed processing system |
US20040044554A1 (en) * | 2002-08-27 | 2004-03-04 | Christopher Bull | Methods and systems for managing field personnel and projects through a wireless network |
US20050033603A1 (en) * | 2002-08-29 | 2005-02-10 | Olympus Optical Co., Ltd. | Hospital information system |
US20040158762A1 (en) * | 2002-09-23 | 2004-08-12 | Abraham Richard J. | Processes for determining nondiscriminatory access to a telecommunication network |
US7840434B2 (en) * | 2002-10-29 | 2010-11-23 | At&T Intellectual Property I, L. P. | Methods and systems for assigning multiple tasks |
US20040133635A1 (en) * | 2002-11-26 | 2004-07-08 | Axel Spriestersbach | Transformation of web description documents |
US20040111336A1 (en) * | 2002-12-10 | 2004-06-10 | International Business Machines Corporation | Method, system, and storage medium for optimizing procurement and fulfillment processes over a computer network |
US20040122951A1 (en) * | 2002-12-18 | 2004-06-24 | Andre Beck | Method and apparatus for providing Web users with a click-to-contact service |
US8712867B2 (en) | 2003-01-31 | 2014-04-29 | Media Queue, Llc | System for providing access to playable media |
US8688462B2 (en) * | 2003-01-31 | 2014-04-01 | Media Queue, Llc | Media auto exchange system and method |
US8700538B2 (en) | 2003-01-31 | 2014-04-15 | Media Queue, Llc | Media exchange system and method |
US7895065B2 (en) * | 2003-02-26 | 2011-02-22 | Sony Corporation | Method and apparatus for an itinerary planner |
US20040205394A1 (en) * | 2003-03-17 | 2004-10-14 | Plutowski Mark Earl | Method and apparatus to implement an errands engine |
US7840435B2 (en) * | 2003-03-28 | 2010-11-23 | Accenture Global Services Gmbh | Effective security scheduler |
US7827204B2 (en) * | 2003-03-31 | 2010-11-02 | Sap Ag | Order document data management |
US7856406B2 (en) | 2003-04-28 | 2010-12-21 | Onforce, Inc. | System and method for managing accounts payable and accounts receivable |
US20040220848A1 (en) * | 2003-04-28 | 2004-11-04 | Leventhal Jeffrey P. | System and method for managing requests for services |
US7590695B2 (en) | 2003-05-09 | 2009-09-15 | Aol Llc | Managing electronic messages |
US8209205B1 (en) | 2003-05-22 | 2012-06-26 | John W. McElroy | Planning and scheduling tool assistant assuring high utilization of resources |
US20040236704A1 (en) * | 2003-05-22 | 2004-11-25 | Gotfried Bradley L. | Method and system for providing a compensation opportunity to a task candidate |
US20040249691A1 (en) * | 2003-06-05 | 2004-12-09 | Schell H. Mike | Method, system and computer product for strategic priority order tracking |
US7739602B2 (en) | 2003-06-24 | 2010-06-15 | Aol Inc. | System and method for community centric resource sharing based on a publishing subscription model |
WO2005022353A2 (en) * | 2003-08-29 | 2005-03-10 | Siemens Medical Solutions Health Services Corporation | A customer service support system |
US7149736B2 (en) * | 2003-09-26 | 2006-12-12 | Microsoft Corporation | Maintaining time-sorted aggregation records representing aggregations of values from multiple database records using multiple partitions |
CA2485595A1 (en) * | 2003-10-21 | 2005-04-21 | Itron, Inc. | Combined scheduling and management of work orders, such as for utility meter reading and utility servicing events |
US20050119927A1 (en) * | 2003-12-02 | 2005-06-02 | International Business Machines Corporation | Accounting for traveling time within scheduling software |
US20050165631A1 (en) * | 2004-01-28 | 2005-07-28 | Microsoft Corporation | Time management representations and automation for allocating time to projects and meetings within an online calendaring system |
US20050177407A1 (en) * | 2004-02-09 | 2005-08-11 | Barni Meghan M. | Method and computer system for schedule trading |
US7747464B2 (en) | 2004-02-18 | 2010-06-29 | Jansen Michael E | Motion picture theater and associated promotion |
US7810099B2 (en) * | 2004-06-17 | 2010-10-05 | International Business Machines Corporation | Optimizing workflow execution against a heterogeneous grid computing topology |
US7636671B2 (en) * | 2004-08-30 | 2009-12-22 | Halliburton Energy Services, Inc. | Determining, pricing, and/or providing well servicing treatments and data processing systems therefor |
US20070203723A1 (en) * | 2006-02-28 | 2007-08-30 | Segura Michael J | Methods for designing, pricing, and scheduling well services and data processing systems therefor |
US20100088196A1 (en) * | 2004-08-30 | 2010-04-08 | Segura Michael J R | Methods for Designing, Pricing, and Scheduling Well Services and Data Processing Systems Therefor |
US7548877B2 (en) * | 2004-08-30 | 2009-06-16 | Quixtar, Inc. | System and method for processing orders for multiple multilevel marketing business models |
US9552599B1 (en) | 2004-09-10 | 2017-01-24 | Deem, Inc. | Platform for multi-service procurement |
US7143222B2 (en) | 2004-09-21 | 2006-11-28 | International Business Machines Corporation | Adaptive message delivery system |
US9100776B2 (en) * | 2004-10-06 | 2015-08-04 | Intelligent Mechatronic Systems Inc. | Location based event reminder for mobile device |
US20060101467A1 (en) * | 2004-10-18 | 2006-05-11 | International Business Machines Corporation | Process execution management based on resource requirements and business impacts |
CA2587075A1 (en) * | 2004-10-27 | 2006-05-04 | Naruto Takaoku | Cleaning work estimating system, cleaning work estimating method, and cleaning work estimating program |
US7693735B2 (en) * | 2004-11-23 | 2010-04-06 | Etadirect Holdings, Inc. | Dynamic schedule mediation |
US20060235856A1 (en) * | 2004-12-16 | 2006-10-19 | Halcrow Michael A | Route generation for task completion by a location-aware device |
US20060161469A1 (en) * | 2005-01-14 | 2006-07-20 | Weatherbank, Inc. | Interactive advisory system |
US8832121B2 (en) * | 2005-02-02 | 2014-09-09 | Accuweather, Inc. | Location-based data communications system and method |
US7889857B2 (en) * | 2005-02-15 | 2011-02-15 | Siemens Aktiengesellschaft | Method and system for providing a service |
US7793294B2 (en) * | 2005-02-22 | 2010-09-07 | Northrop Grumman Corporation | System for scheduling tasks within an available schedule time period based on an earliest possible end time of the task |
US7828202B2 (en) * | 2005-02-24 | 2010-11-09 | E-Courier (Belize), Inc. | System and method for controlling the transport of articles |
WO2006090844A1 (en) * | 2005-02-25 | 2006-08-31 | International Business Machines Corporation | Work management system, work management system building assisting service, control method, and program |
US20060218027A1 (en) * | 2005-03-22 | 2006-09-28 | Carrion Veronica L | System and method for single user interface window event scheduling |
US7894938B1 (en) * | 2005-03-31 | 2011-02-22 | Cantaloupe Systems, Inc. | Vending machine service scheduling |
US20060241996A1 (en) * | 2005-04-20 | 2006-10-26 | International Business Machines Corporation | Method, system and program product for monitoring work items |
US8090707B1 (en) | 2005-07-07 | 2012-01-03 | Rearden Commerce Inc. | Chance meeting addition to trip planner or meeting planner |
US8626548B2 (en) * | 2005-09-19 | 2014-01-07 | Oracle International Corporation | Access point triangulation for task assignment of warehouse employees |
US20070078863A1 (en) * | 2005-10-03 | 2007-04-05 | Peter Thompson | Application support and maintenance system, software, database and related methods |
US10248914B2 (en) * | 2005-11-29 | 2019-04-02 | The Boeing Company | Sustaining a fleet of configuration-controlled assets |
FI20051291L (en) * | 2005-12-16 | 2007-06-17 | Kone Corp | Maintenance program optimization method |
US8229467B2 (en) | 2006-01-19 | 2012-07-24 | Locator IP, L.P. | Interactive advisory system |
US7499869B2 (en) * | 2006-02-02 | 2009-03-03 | Matthew Iknoian | System and method for scheduling employee shifts |
US8112306B2 (en) * | 2006-02-22 | 2012-02-07 | Verint Americas, Inc. | System and method for facilitating triggers and workflows in workforce optimization |
US8078486B1 (en) * | 2006-02-22 | 2011-12-13 | Verint Americas Inc. | Systems and methods for providing workforce optimization to branch and back offices |
US20070198330A1 (en) * | 2006-02-22 | 2007-08-23 | Shmuel Korenblit | Integrated contact center systems for facilitating contact center coaching |
US8112298B2 (en) * | 2006-02-22 | 2012-02-07 | Verint Americas, Inc. | Systems and methods for workforce optimization |
US8825736B2 (en) * | 2006-03-14 | 2014-09-02 | Lifeworx, Inc. | System and method for service provider search |
CN101046859A (en) * | 2006-03-29 | 2007-10-03 | 鸿富锦精密工业(深圳)有限公司 | Job cards made system and method |
US20070233292A1 (en) * | 2006-03-30 | 2007-10-04 | Mandt Marc E Sr | Team Binding Process For Game Scheduling Software |
US7672746B1 (en) * | 2006-03-31 | 2010-03-02 | Verint Americas Inc. | Systems and methods for automatic scheduling of a workforce |
US8706799B2 (en) * | 2006-05-29 | 2014-04-22 | Sandisk Il Ltd. | Method and apparatus to exchange information with a local storage device |
US20070282656A1 (en) * | 2006-06-06 | 2007-12-06 | Jeffery Battcher | Dynamic appointment tracking |
US7610151B2 (en) | 2006-06-27 | 2009-10-27 | Microsoft Corporation | Collaborative route planning for generating personalized and context-sensitive routing recommendations |
US8793066B2 (en) | 2006-06-27 | 2014-07-29 | Microsoft Corporation | Route monetization |
US8131578B2 (en) | 2006-06-30 | 2012-03-06 | Verint Americas Inc. | Systems and methods for automatic scheduling of a workforce |
US8126641B2 (en) * | 2006-06-30 | 2012-02-28 | Microsoft Corporation | Route planning with contingencies |
US7617042B2 (en) * | 2006-06-30 | 2009-11-10 | Microsoft Corporation | Computing and harnessing inferences about the timing, duration, and nature of motion and cessation of motion with applications to mobile computing and communications |
US7739040B2 (en) * | 2006-06-30 | 2010-06-15 | Microsoft Corporation | Computation of travel routes, durations, and plans over multiple contexts |
US7953621B2 (en) * | 2006-06-30 | 2011-05-31 | Verint Americas Inc. | Systems and methods for displaying agent activity exceptions |
US7706964B2 (en) * | 2006-06-30 | 2010-04-27 | Microsoft Corporation | Inferring road speeds for context-sensitive routing |
US8055526B2 (en) * | 2006-09-08 | 2011-11-08 | Varec, Inc. | Method for the automated dispatch of fueling operations |
WO2008035989A2 (en) * | 2006-09-18 | 2008-03-27 | Arc Innovations Limited | Utility meter installation system and method |
US8645179B2 (en) | 2006-09-29 | 2014-02-04 | Verint Americas Inc. | Systems and methods of partial shift swapping |
CA2567368A1 (en) * | 2006-09-29 | 2007-02-06 | Witness Systems, Inc. | Systems and methods of partial shift swapping |
US7747458B2 (en) * | 2006-10-11 | 2010-06-29 | International Business Machines Corporation | Electronic calendar auto event resolution system and method |
ES2384227T3 (en) * | 2006-10-19 | 2012-07-02 | Motorola Mobility, Inc. | Method and apparatus for recovery after network disconnections in a network between peer entities |
US20080103843A1 (en) * | 2006-10-27 | 2008-05-01 | Sap Ag-Germany | Integrating information for maintenance |
US20080114638A1 (en) * | 2006-11-10 | 2008-05-15 | Inspection Management Systems, Inc. | Parameter-based appointment scheduling system and method |
KR101384902B1 (en) * | 2006-12-15 | 2014-04-15 | 삼성전자주식회사 | Method and apparatus for preventing omission of schedule and overlapping execution due to change in time |
US8799046B2 (en) * | 2006-12-27 | 2014-08-05 | Verizon Patent And Licensing Inc. | Dispatching prioritized jobs at multiple locations to workers |
US8141089B2 (en) * | 2007-01-11 | 2012-03-20 | International Business Machines Corporation | Method and apparatus for reducing contention for computer system resources using soft locks |
US7987471B2 (en) * | 2007-01-26 | 2011-07-26 | Microsoft Corporation | Mobile device management proxy system |
US8620712B1 (en) * | 2007-01-26 | 2013-12-31 | Intuit Inc. | Method and system of intelligent matching for meetings |
EP2115540A4 (en) * | 2007-01-31 | 2011-02-02 | Quintiles Transnat Corp Inc | Methods and systems for allocating representatives to sites in clinical trials |
US8634814B2 (en) | 2007-02-23 | 2014-01-21 | Locator IP, L.P. | Interactive advisory system for prioritizing content |
JP5440780B2 (en) * | 2007-02-26 | 2014-03-12 | 日本電気株式会社 | Message notification method, business management apparatus, and computer program |
US20080275754A1 (en) * | 2007-04-03 | 2008-11-06 | Zurisoft, Llc | System for automated management of a mixed workforce using priority queuing of automated bid dispatch and compliance monitoring |
US8533847B2 (en) | 2007-05-24 | 2013-09-10 | Sandisk Il Ltd. | Apparatus and method for screening new data without impacting download speed |
US8522258B1 (en) | 2007-06-15 | 2013-08-27 | At&T Mobility Ii Llc | Event handling system |
US20080313037A1 (en) * | 2007-06-15 | 2008-12-18 | Root Steven A | Interactive advisory system |
US8380744B2 (en) | 2007-07-17 | 2013-02-19 | At&T Intellectual Property I, L.P. | Methods, systems, and computer-readable media for generating a report indicating job availability |
US8352302B2 (en) * | 2007-07-17 | 2013-01-08 | At&T Intellectual Property I, L.P. | Methods, systems, and computer-readable media for determining a plurality of turfs from where to reallocate a workforce to a given turf |
US8249905B2 (en) * | 2007-07-17 | 2012-08-21 | At&T Intellectual Property I, Lp | Methods, systems, and computer-readable media for providing future job information |
US8069072B2 (en) | 2007-07-17 | 2011-11-29 | At&T Intellectual Property I, Lp | Methods, systems, and computer-readable media for providing an indication of hightime |
US8060401B2 (en) | 2007-07-17 | 2011-11-15 | At&T Intellectual Property I, Lp | Methods, systems, and computer-readable media for providing an indication of a schedule conflict |
US20090024435A1 (en) * | 2007-07-17 | 2009-01-22 | Robert Ingman | Methods, Systems, and Computer-Readable Media for Providing Notification of a Last Job Dispatch |
US8239232B2 (en) | 2007-07-17 | 2012-08-07 | At&T Intellectual Property I, L.P. | Methods, systems, and computer-readable media for providing commitments information relative to a turf |
US8341547B2 (en) * | 2007-07-17 | 2012-12-25 | At&T Intellectual Property I, L.P. | Methods, systems, and computer-readable media for providing contact information at turf level |
US20090024437A1 (en) * | 2007-07-17 | 2009-01-22 | Robert Ingman | Methods, Systems, and Computer-Readable Media for Providing A Ratio of Tasks Per Technician |
US20090023431A1 (en) * | 2007-07-19 | 2009-01-22 | Hewlett-Packard Development Company, L.P. | Systems and Methods for Communicating with a Network Switch |
US20090063239A1 (en) * | 2007-08-30 | 2009-03-05 | Ibm Corporation | Method and Apparatus for Providing an Electronic Calendar with an Indication of Timeslot Availability Dependent on the Importance of a Requester |
US20090063241A1 (en) * | 2007-08-31 | 2009-03-05 | Accenture Global Services Gmbh | Demand Driven Scheduling |
US20090094089A1 (en) * | 2007-10-05 | 2009-04-09 | Michael Anthony Iacovone | Custom dispatch software |
CN101141449A (en) * | 2007-10-22 | 2008-03-12 | 珠海金山软件股份有限公司 | Apparatus and method for implementing Web client terminal software self-adaptive running |
US20090138311A1 (en) * | 2007-11-28 | 2009-05-28 | Michael Anthony Iacovone | System and method for computer aided work order scheduling |
CA2706074A1 (en) * | 2007-11-29 | 2009-06-04 | Horst Lohstoeter | Planning and controlling of objects transportation |
US9104988B2 (en) * | 2007-12-04 | 2015-08-11 | Verizon Patent And Licensing Inc. | System and method for providing facilities management based on weather vulnerability |
US20090150206A1 (en) * | 2007-12-07 | 2009-06-11 | Mci Communications Services | Notification system and method |
US20090157498A1 (en) * | 2007-12-14 | 2009-06-18 | Microsoft Corporation | Generational intelligent navigation synchronization or update |
US20090157540A1 (en) * | 2007-12-14 | 2009-06-18 | Microsoft Corporation | Destination auctioned through business of interest |
US20090171743A1 (en) * | 2008-01-02 | 2009-07-02 | Dana Spiegel | Service request system with natural service provider profiling and methods thereof |
US20090171718A1 (en) * | 2008-01-02 | 2009-07-02 | Verizon Services Corp. | System and method for providing workforce and workload modeling |
US20090199192A1 (en) * | 2008-02-05 | 2009-08-06 | Robert Laithwaite | Resource scheduling apparatus and method |
US20090210302A1 (en) * | 2008-02-19 | 2009-08-20 | Microsoft Corporation | Route reward augmentation |
US20090210242A1 (en) * | 2008-02-19 | 2009-08-20 | Microsoft Corporation | Load balance payment |
US20090210142A1 (en) * | 2008-02-19 | 2009-08-20 | Microsoft Corporation | Safe route configuration |
US8538788B1 (en) | 2008-04-02 | 2013-09-17 | Onforce, Inc. | System for work order refinement prior to acceptance and methods thereof |
WO2009143104A1 (en) * | 2008-05-20 | 2009-11-26 | Raytheon Company | System and method for maintaining stateful information |
EP2148216B1 (en) * | 2008-07-14 | 2013-01-09 | Ecole Polytechnique Fédérale de Lausanne (EPFL) | Time of flight estimation method using beamforming for acoustic tomography |
US8041586B2 (en) * | 2008-09-18 | 2011-10-18 | International Business Machines Corporation | Shared space availability by dynamically responding to user utilization behavior of shared space |
US20100088143A1 (en) * | 2008-10-07 | 2010-04-08 | Microsoft Corporation | Calendar event scheduling |
US8730056B2 (en) | 2008-11-11 | 2014-05-20 | Itron, Inc. | System and method of high volume import, validation and estimation of meter data |
US8219467B2 (en) * | 2008-12-11 | 2012-07-10 | At&T Intellectual Property I, Lp | System and method for dispatching field technicians based on locations of virtual warehouses |
US9020993B2 (en) | 2008-12-16 | 2015-04-28 | Sandisk Il Ltd. | Download management of discardable files |
US9015209B2 (en) | 2008-12-16 | 2015-04-21 | Sandisk Il Ltd. | Download management of discardable files |
US9104686B2 (en) | 2008-12-16 | 2015-08-11 | Sandisk Technologies Inc. | System and method for host management of discardable objects |
US8375192B2 (en) | 2008-12-16 | 2013-02-12 | Sandisk Il Ltd. | Discardable files |
US8849856B2 (en) | 2008-12-16 | 2014-09-30 | Sandisk Il Ltd. | Discardable files |
US8205060B2 (en) | 2008-12-16 | 2012-06-19 | Sandisk Il Ltd. | Discardable files |
US8612276B1 (en) | 2009-02-11 | 2013-12-17 | Certusview Technologies, Llc | Methods, apparatus, and systems for dispatching service technicians |
CA2897462A1 (en) | 2009-02-11 | 2010-05-04 | Certusview Technologies, Llc | Management system, and associated methods and apparatus, for providing automatic assessment of a locate operation |
US20100235210A1 (en) * | 2009-03-11 | 2010-09-16 | United Parcel Service Of America, Inc. | Scheduled delivery service systems, apparatuses, methods, and computer programs embodied on computer-readable media |
US8713146B2 (en) * | 2009-03-27 | 2014-04-29 | Ebay Inc. | Change management automation tool |
US20100287025A1 (en) * | 2009-05-06 | 2010-11-11 | Brian Fletcher | Mobile resource task scheduling |
IL199115A (en) | 2009-06-03 | 2013-06-27 | Verint Systems Ltd | Systems and methods for efficient keyword spotting in communication traffic |
US8321253B2 (en) * | 2009-06-09 | 2012-11-27 | Accenture Global Services Limited | Technician control system |
US8364513B2 (en) * | 2009-06-09 | 2013-01-29 | Accenture Global Services Limited | Technician control system |
US8849690B1 (en) * | 2009-06-24 | 2014-09-30 | American Airlines, Inc. | Optimized bill of work for aircraft maintenance based on task prioritization and time slot proximity analysis |
US8886760B2 (en) * | 2009-06-30 | 2014-11-11 | Sandisk Technologies Inc. | System and method of predictive data acquisition |
US9378511B2 (en) * | 2009-07-15 | 2016-06-28 | International Business Machines Corporation | Real-time appointment of enterprise mobile agents in response to customer requests |
US20140195287A1 (en) * | 2009-08-21 | 2014-07-10 | Christopher Ian Fraser | Gesture based electronic signature |
US8521372B2 (en) * | 2010-05-28 | 2013-08-27 | Agjunction Llc | System and method for collecting and processing agricultural field data |
US10115065B1 (en) | 2009-10-30 | 2018-10-30 | Verint Americas Inc. | Systems and methods for automatic scheduling of a workforce |
US20110112943A1 (en) * | 2009-11-09 | 2011-05-12 | Dietz Jay B | Location-based mobile workforce management system |
US20110145037A1 (en) * | 2009-12-16 | 2011-06-16 | Vertafore, Inc. | Document management method and apparatus to process a workflow task by parallel or serially processing subtasks thereof |
US9063932B2 (en) | 2009-12-18 | 2015-06-23 | Vertafore, Inc. | Apparatus, method and article to manage electronic or digital documents in a networked environment |
US8700682B2 (en) | 2009-12-24 | 2014-04-15 | Vertafore, Inc. | Systems, methods and articles for template based generation of markup documents to access back office systems |
US20110213634A1 (en) * | 2010-03-01 | 2011-09-01 | Business Equipment Information Services, Inc. | System and method for effective workload distribution for service technicians |
US8583462B2 (en) | 2010-06-23 | 2013-11-12 | Canadian National Railway Company | Method and system for assessing penalties associated with an employee without a job assignment |
CA2744473C (en) * | 2010-06-23 | 2023-06-20 | Canadian National Railway Company | A system and method for employee resource management |
US8788375B2 (en) | 2010-06-23 | 2014-07-22 | Canadian National Railway Company | Method and system for pre-populating job assignment submissions |
US8463802B2 (en) | 2010-08-19 | 2013-06-11 | Sandisk Il Ltd. | Card-based management of discardable files |
US8549229B2 (en) | 2010-08-19 | 2013-10-01 | Sandisk Il Ltd. | Systems and methods for managing an upload of files in a shared cache storage system |
US8689759B2 (en) * | 2010-10-01 | 2014-04-08 | GM Global Technology Operations LLC | Dual drive pump system using an engine starter motor |
US20120303404A1 (en) * | 2011-03-14 | 2012-11-29 | ClearCare, Inc. | System and apparatus for generating work schedules |
US20120101867A1 (en) * | 2010-10-25 | 2012-04-26 | Zgardovski Stanislav V | System for Automatic Assignment of Agents in Inbound and Outbound Campaigns |
US9384198B2 (en) | 2010-12-10 | 2016-07-05 | Vertafore, Inc. | Agency management system and content management system integration |
US8527575B2 (en) * | 2010-12-17 | 2013-09-03 | Verizon Patent And Licensing Inc. | Queue processing system |
US20120166243A1 (en) * | 2010-12-27 | 2012-06-28 | Belmont Brian V | Field service management systems and methods |
US9619786B2 (en) * | 2011-01-28 | 2017-04-11 | International Business Machines Corporation | Shape driven scheduling of multiple events for a task in a calendaring and scheduling system |
US8788849B2 (en) | 2011-02-28 | 2014-07-22 | Sandisk Technologies Inc. | Method and apparatus for protecting cached streams |
US9659260B2 (en) | 2011-03-15 | 2017-05-23 | Dan Caligor | Calendar based task and time management systems and methods |
US9348790B2 (en) | 2011-04-01 | 2016-05-24 | Facebook, Inc. | Method for efficient use of content stored in a cache memory of a mobile device |
US10481945B2 (en) | 2011-04-01 | 2019-11-19 | Facebook, Inc. | System and method for communication management of a multi-tasking mobile device |
US9559868B2 (en) | 2011-04-01 | 2017-01-31 | Onavo Mobile Ltd. | Apparatus and methods for bandwidth saving and on-demand data delivery for a mobile device |
US20120259540A1 (en) * | 2011-04-07 | 2012-10-11 | Infosys Technologies Limited | Methods and systems for workforce management |
US8731973B2 (en) | 2011-04-19 | 2014-05-20 | Vertafore, Inc. | Overlaying images in automated insurance policy form generation |
US8700656B2 (en) | 2011-05-27 | 2014-04-15 | Oracle International Corporation | Method and system for implementing an on-demand scheduler |
US9021095B2 (en) | 2011-05-27 | 2015-04-28 | Oracle International Corporation | Method and system for implementing an on-demand scheduler in a mobile device |
US20120316907A1 (en) * | 2011-06-07 | 2012-12-13 | Avaya, Inc. | System and method for managing agent contact assignments near end of agent work shift |
US20120317172A1 (en) | 2011-06-13 | 2012-12-13 | International Business Machines Corporation | Mobile web app infrastructure |
US8791816B2 (en) * | 2011-06-27 | 2014-07-29 | The Boeing Company | Situational awareness for an electrical distribution system |
US9165011B2 (en) | 2011-09-30 | 2015-10-20 | Oracle International Corporation | Concurrent calculation of resource qualification and availability using text search |
US9740999B2 (en) | 2011-10-11 | 2017-08-22 | Mobiwork, Llc | Real time customer access to location, arrival and on-site time data |
US9818074B2 (en) | 2011-10-11 | 2017-11-14 | Mobiwork, Llc | Method and system to analyze time stamp location data to produce movement and idle segments |
US8977236B2 (en) | 2011-10-11 | 2015-03-10 | Mobiwork, Llc | Method and system to record and visualize type, path and location of moving and idle segments |
US20130090968A1 (en) * | 2011-10-11 | 2013-04-11 | Stephen Borza | Methods of employee scheduling and management |
US9123005B2 (en) | 2011-10-11 | 2015-09-01 | Mobiwork, Llc | Method and system to define implement and enforce workflow of a mobile workforce |
US8971853B2 (en) | 2011-10-11 | 2015-03-03 | Mobiwork, Llc | Method and system to record and visualize type, time and duration of moving and idle segments |
US8510144B1 (en) * | 2011-10-21 | 2013-08-13 | Verint Americas Inc. | Method and apparatus for cell-based workforce scheduling |
US20130151298A1 (en) * | 2011-12-12 | 2013-06-13 | Moose Loop Holdings, LLC | Acquiring and distributing tasks |
WO2013090473A1 (en) * | 2011-12-12 | 2013-06-20 | Moose Loop Holdings, LLC | Task scheduling and rescheduling |
US9330380B2 (en) * | 2011-12-29 | 2016-05-03 | Unisys Corporation | Method and system for managing one or more recurrencies including exclusionary schedule |
CN103186829A (en) * | 2011-12-30 | 2013-07-03 | 北大方正集团有限公司 | Dispatching system and method |
FR2986645B1 (en) * | 2012-02-02 | 2014-10-17 | Somfy Sas | METHOD AND COMMUNICATION DEVICE FOR REMOTELY CONTROLLING AN ACTUATOR FOR A BUILDING MOBILE EQUIPMENT |
WO2013128905A1 (en) * | 2012-02-27 | 2013-09-06 | 国立大学法人名古屋大学 | Anti-tumor aqueous solution, anti-cancer agent, and methods for producing said aqueous solution and said anti-cancer agent |
US20150178687A1 (en) * | 2012-04-26 | 2015-06-25 | Google Inc. | System and method for improving resource utilization |
US9842317B2 (en) | 2012-05-28 | 2017-12-12 | Brandon Jordan | Methods, systems, and apparatus for scheduling appointments |
JP5457503B2 (en) * | 2012-06-05 | 2014-04-02 | 日本瓦斯株式会社 | Delivery number rank setting system |
US9436921B2 (en) * | 2012-06-21 | 2016-09-06 | International Business Machines Corporation | Intelligent service management and process control using policy-based automation and predefined task templates |
US10346784B1 (en) | 2012-07-27 | 2019-07-09 | Google Llc | Near-term delivery system performance simulation |
US8583467B1 (en) | 2012-08-23 | 2013-11-12 | Fmr Llc | Method and system for optimized scheduling of workflows |
WO2014049361A1 (en) * | 2012-09-27 | 2014-04-03 | Tyco Electronics Uk Ltd. | Mobile application for assisting a technician in carrying out an electronic work order |
US9450839B2 (en) * | 2012-11-09 | 2016-09-20 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Efficient network bandwidth utilization in a distributed processing system |
JP5961848B2 (en) * | 2012-11-27 | 2016-08-02 | 株式会社日立製作所 | Plan management system and plan management method |
EP2747000B1 (en) * | 2012-12-20 | 2017-11-22 | ABB Schweiz AG | System and method for automatic allocation of mobile resources to tasks |
US9741021B2 (en) * | 2013-01-18 | 2017-08-22 | Robert Yu | Optimized online marketing and scheduling systems and methods that are based on driving demand for services |
US10115078B2 (en) * | 2013-03-11 | 2018-10-30 | Sony Corporation | Service scheduling system |
US9734194B1 (en) * | 2013-03-14 | 2017-08-15 | Google Inc. | Encoding time interval information |
US20140277622A1 (en) * | 2013-03-15 | 2014-09-18 | First Principles, Inc. | System and method for bio-signal control of an electronic device |
US9727832B2 (en) * | 2013-03-15 | 2017-08-08 | Profit Strategies, Inc. | Methods for generating a work-order in real time and devices thereof |
CA2911977A1 (en) * | 2013-05-09 | 2014-11-13 | Benoit Brunel | System and method for managing scheduled and unscheduled resources, and appointments for establishments |
US20140350995A1 (en) * | 2013-05-24 | 2014-11-27 | International Business Machines Corporation | Characterizing Statistical Time-Bounded Incident Management Systems |
US9477523B1 (en) * | 2013-06-25 | 2016-10-25 | Amazon Technologies, Inc. | Scheduling data access jobs based on job priority and predicted execution time using historical execution data |
US9547836B2 (en) * | 2013-06-28 | 2017-01-17 | Verizon Patent And Licensing Inc. | Method and apparatus for scheduling media processing jobs on multiple processors to maximize processor utilization |
US20150026077A1 (en) * | 2013-07-18 | 2015-01-22 | Netapp, Inc. | Centralized Method for Customer Assistance and System Verification |
US9992138B1 (en) * | 2013-07-26 | 2018-06-05 | Ca, Inc. | Method and apparatus for processing scheduling requests in a shared calendar system |
JP5847986B2 (en) * | 2013-08-09 | 2016-01-27 | 株式会社ゼスト | Business allocation device and business allocation program |
US9967349B2 (en) * | 2013-09-25 | 2018-05-08 | Open Text Sa Ulc | Integrated social media server and architecture |
US9436696B2 (en) * | 2013-10-02 | 2016-09-06 | International Business Machines Corporation | Data fragmentation tuning and candidacy persistence |
US11775892B2 (en) | 2013-10-03 | 2023-10-03 | Crc R&D, Llc | Apparatus and method for freight delivery and pick-up |
US9274687B1 (en) | 2013-10-11 | 2016-03-01 | Google Inc. | Managing schedule changes for correlated calendar events |
US20150106144A1 (en) * | 2013-10-13 | 2015-04-16 | Wavsys Llc | Field crew management system and method |
US9507814B2 (en) | 2013-12-10 | 2016-11-29 | Vertafore, Inc. | Bit level comparator systems and methods |
US9367435B2 (en) | 2013-12-12 | 2016-06-14 | Vertafore, Inc. | Integration testing method and system for web services |
US10241654B2 (en) | 2013-12-20 | 2019-03-26 | Dassault Systemes Americas Corp. | Computer method and apparatus for automated scheduling |
US10015812B2 (en) * | 2013-12-25 | 2018-07-03 | Intel IP Corporation | Apparatus, system and method of setting transmit slots in a wireless communication network |
US20150206092A1 (en) * | 2014-01-21 | 2015-07-23 | Avaya, Inc. | Identification of multi-channel connections to predict estimated wait time |
US9531651B1 (en) | 2014-02-13 | 2016-12-27 | Google Inc. | Methods for displaying notifications |
US20150262113A1 (en) * | 2014-03-11 | 2015-09-17 | Bank Of America Corporation | Work status monitoring and reporting |
US9413707B2 (en) | 2014-04-11 | 2016-08-09 | ACR Development, Inc. | Automated user task management |
US8942727B1 (en) | 2014-04-11 | 2015-01-27 | ACR Development, Inc. | User Location Tracking |
US9665432B2 (en) | 2014-08-07 | 2017-05-30 | Microsoft Technology Licensing, Llc | Safe data access following storage failure |
US9847918B2 (en) * | 2014-08-12 | 2017-12-19 | Microsoft Technology Licensing, Llc | Distributed workload reassignment following communication failure |
US9747556B2 (en) | 2014-08-20 | 2017-08-29 | Vertafore, Inc. | Automated customized web portal template generation systems and methods |
US11328262B2 (en) * | 2014-09-11 | 2022-05-10 | Dean DiCarlo | System and method of collaborative electronic product showing scheduler and sale closing platform |
US9911087B1 (en) | 2014-09-18 | 2018-03-06 | Servicenow, Inc. | System and method for efficient travel time and route computation |
WO2016054721A1 (en) * | 2014-10-08 | 2016-04-14 | Tsx Inc. | Selective delayed and undelayed database updating |
TWI571809B (en) * | 2014-11-14 | 2017-02-21 | 財團法人資訊工業策進會 | Working item audit system and method thereof |
US20160140507A1 (en) * | 2014-11-18 | 2016-05-19 | Intrenational Business Machines Corporation | Optimizing service provider schedule and route |
EP3054404A1 (en) * | 2015-02-04 | 2016-08-10 | Hexagon Technology Center GmbH | Work information modelling |
US10726366B2 (en) * | 2015-04-14 | 2020-07-28 | International Business Machines Corporation | Scheduling and simulation system |
US11748834B1 (en) * | 2015-04-27 | 2023-09-05 | Priority 5 Holdings, Inc. | Systems and methods for planning and optimizing the mitigation of potential impacts to critical infrastructure or key resources |
US10684890B2 (en) * | 2015-05-08 | 2020-06-16 | Accenture Global Services Limited | Network deployment for cellular, backhaul, fiber optic and other network infrastructure |
WO2016191311A1 (en) * | 2015-05-22 | 2016-12-01 | Percolata Corporation | Method for determining staffing needs based in part on sensor inputs |
CA3204965A1 (en) | 2015-06-19 | 2016-12-22 | United Rentals, Inc. | Equipment staging application and platform |
US11093878B2 (en) * | 2015-07-01 | 2021-08-17 | Oracle International Corporation | System and method for providing temporal dependencies between tasks |
US20170011312A1 (en) * | 2015-07-07 | 2017-01-12 | Tyco Fire & Security Gmbh | Predicting Work Orders For Scheduling Service Tasks On Intrusion And Fire Monitoring |
US20200342421A1 (en) * | 2015-09-17 | 2020-10-29 | Super Home Inc. | Home maintenance and repair information technology methods and systems |
US11188878B2 (en) * | 2015-09-22 | 2021-11-30 | International Business Machines Corporation | Meeting room reservation system |
US9600400B1 (en) | 2015-10-29 | 2017-03-21 | Vertafore, Inc. | Performance testing of web application components using image differentiation |
US10339536B2 (en) * | 2015-11-17 | 2019-07-02 | Schneider Enterprise Resources, LLC | Geolocation compliance for a mobile workforce |
WO2017135946A1 (en) * | 2016-02-04 | 2017-08-10 | Ent. Services Development Corporation Lp | Schedule creation |
WO2018018127A1 (en) * | 2016-07-26 | 2018-02-01 | Fio Corporation | A dynamic quality control workforce management system, device, method, and computer-readable medium |
US11157860B2 (en) | 2016-08-26 | 2021-10-26 | Conduent Business Services, Llc | System and method for motivating parking enforcement officer performance with the aid of a digital computer |
US11062241B2 (en) * | 2016-08-26 | 2021-07-13 | Conduent Business Services, Llc | System and method for facilitating parking enforcement officer dispatching in real time with the aid of a digital computer |
US11151494B2 (en) | 2016-08-26 | 2021-10-19 | Palo Alto Research Center Incorporated | System and method for visualizing parking enforcement officer movement in real time with the aid of a digital computer |
US11120375B2 (en) | 2016-08-26 | 2021-09-14 | Conduent Business Services, Llc | System and method for monitoring parking enforcement officer performance in real time with the aid of a digital computer |
US11144855B2 (en) | 2016-08-26 | 2021-10-12 | Conduent Business Services, Llc | System and method for managing coverage of parking enforcement for a neighborhood with the aid of a digital computer |
US10817814B2 (en) | 2016-08-26 | 2020-10-27 | Conduent Business Services, Llc | System and method for coordinating parking enforcement officer patrol in real time with the aid of a digital computer |
US11068813B2 (en) | 2016-08-26 | 2021-07-20 | Palo Alto Research Center Incorporated | System and method for providing conditional autonomous messaging to parking enforcement officers with the aid of a digital computer |
US11126942B2 (en) | 2016-08-26 | 2021-09-21 | Conduent Business Services, Llc | System and method for facilitating parking enforcement officer performance in real time with the aid of a digital computer |
US10362139B2 (en) | 2016-10-06 | 2019-07-23 | Mitsubishi Electric Research Laboratories, Inc. | Systems and methods for resource allocation for management systems |
US20180150925A1 (en) * | 2016-11-30 | 2018-05-31 | Corelogic Solutions, Llc | Computer-based control of timing with which property review orders are processed |
US20180150923A1 (en) * | 2016-11-30 | 2018-05-31 | Corelogic Solutions, Llc | Property study workflow system |
US20180150924A1 (en) * | 2016-11-30 | 2018-05-31 | Corelogic Solutions, Llc | Computer-based photo re-use across property reports |
MX2020002269A (en) | 2017-08-31 | 2021-01-29 | Crc R&D Llc | Management of vehicular traffic at a facility having allocable space resources. |
US10650337B2 (en) * | 2018-01-29 | 2020-05-12 | Salesforce.Com, Inc. | Technical field service inventory management |
US10832209B2 (en) * | 2018-02-26 | 2020-11-10 | Walmart Apollo, Llc | Systems and methods for rush order fulfilment optimization |
US20200410417A1 (en) | 2018-03-01 | 2020-12-31 | Bringg Delivery Technologies, Ltd. | Automated dispatch optimization |
US11055647B2 (en) * | 2018-03-22 | 2021-07-06 | Microsoft Technology Licensing, Llc | Resource conflict detection and communication |
US20190318322A1 (en) * | 2018-04-12 | 2019-10-17 | Rithm Al, Inc. | System and method for determining an order of future events |
US11210752B2 (en) * | 2018-06-28 | 2021-12-28 | International Business Machines Corporation | Real time travel contingency service |
US20190050817A1 (en) * | 2018-08-02 | 2019-02-14 | Jeffrey P. DeRouen | Method and system for managing employee shift and transportation |
US11126939B2 (en) * | 2018-12-06 | 2021-09-21 | At&T Intellectual Property I, L.P. | Telecommunication network customer premises service dispatch optimization |
US11551167B2 (en) | 2018-12-27 | 2023-01-10 | Clicksoftware, Inc. | Systems and methods for fixing schedule using a remote optimization engine |
CN114270393A (en) * | 2019-08-22 | 2022-04-01 | 大正天空大厦有限公司 | Rental space |
US11755970B2 (en) * | 2020-04-30 | 2023-09-12 | Bfs Operations Llc | Systems and methods for generating construction assignment schedules having multi-task construction projects |
US11941560B2 (en) | 2020-09-02 | 2024-03-26 | Bfs Operations Llc | Systems and methods for generating construction models for construction projects |
US11080636B1 (en) * | 2020-11-18 | 2021-08-03 | Coupang Corp. | Systems and method for workflow editing |
US20220245551A1 (en) * | 2021-02-03 | 2022-08-04 | ServiceTitan, Inc. | Adjustable work-flow capacity planning |
US11966784B2 (en) * | 2021-12-27 | 2024-04-23 | Rakuten Mobile, Inc. | Cloud-native application reservation management method and apparatus |
US11777815B1 (en) * | 2022-03-02 | 2023-10-03 | Servicenow, Inc. | Techniques for dynamically configuring service availability |
Family Cites Families (95)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US23157A (en) * | 1859-03-08 | Improvement in sewing-machines | ||
US37229A (en) * | 1862-12-23 | Improvement in adjustable links | ||
US10610A (en) * | 1854-03-07 | Method of operating hydraulic bams | ||
US7299A (en) * | 1850-04-23 | Dentist s chair | ||
US46073A (en) * | 1865-01-31 | Improvement in pumps | ||
US16645A (en) * | 1857-02-17 | Method of generating air-blasts | ||
US65700A (en) * | 1867-06-11 | William sloan | ||
US47288A (en) * | 1865-04-18 | Improvement in hoop-locks for cotton | ||
US10615A (en) * | 1854-03-07 | Improvement in sewing-machines | ||
US47287A (en) * | 1865-04-18 | Improvement in skates | ||
US4831552A (en) * | 1987-01-29 | 1989-05-16 | International Business Machines Corporation | Method for concurrently displaying entries from a plurality of different electronic calendars based on interactively entered non-temporal criteria |
US5064546A (en) * | 1987-04-11 | 1991-11-12 | Idemitsu Kosan Co., Ltd. | Lubricating oil composition |
EP0300456A3 (en) | 1987-07-24 | 1990-08-08 | Bruce H. Faaland | Improved scheduling method and system |
US4937743A (en) | 1987-09-10 | 1990-06-26 | Intellimed Corporation | Method and system for scheduling, monitoring and dynamically managing resources |
US5168451A (en) * | 1987-10-21 | 1992-12-01 | Bolger John G | User responsive transit system |
US5093794A (en) * | 1989-08-22 | 1992-03-03 | United Technologies Corporation | Job scheduling system |
US5113380A (en) * | 1989-08-24 | 1992-05-12 | Levine Alfred B | Multiple option electronic scheduler and rescheduler |
JP2887815B2 (en) * | 1990-08-08 | 1999-05-10 | アイシン精機株式会社 | Mobile station position monitoring system |
US5325292A (en) * | 1990-10-12 | 1994-06-28 | Crockett Gary B | Tour/schedule generation for a force management system |
US5289368A (en) * | 1990-10-12 | 1994-02-22 | Iex Corporation | Force management system user interface |
US5303145A (en) * | 1990-12-26 | 1994-04-12 | International Business Machines Corporation | Method and apparatus for meeting confirmation in a data processing system |
US5913201A (en) | 1991-04-30 | 1999-06-15 | Gte Laboratories Incoporated | Method and apparatus for assigning a plurality of work projects |
WO1993012488A1 (en) * | 1991-12-13 | 1993-06-24 | White Leonard R | Measurement analysis software system and method |
EP0555596B1 (en) * | 1992-01-31 | 1997-04-09 | Alcatel Cit | Method for determining the propagation time between a remote terminal station and a central terminal station, in a bidirectional point-to-multipoint transmission system |
JPH07110831A (en) | 1992-08-11 | 1995-04-25 | Rockwell Internatl Corp | Strict observance system of schedule |
US5636122A (en) | 1992-10-16 | 1997-06-03 | Mobile Information Systems, Inc. | Method and apparatus for tracking vehicle location and computer aided dispatch |
US5428546A (en) | 1992-10-16 | 1995-06-27 | Mobile Information Systems | Method and apparatus for tracking vehicle location |
US5758313A (en) * | 1992-10-16 | 1998-05-26 | Mobile Information Systems, Inc. | Method and apparatus for tracking vehicle location |
IL103976A0 (en) * | 1992-12-04 | 1994-05-30 | Mintz Yossi | Method and system for iteratively targeting participants according to their priorities |
US5774867A (en) * | 1993-03-25 | 1998-06-30 | International Business Machines Corporation | Meeting conflict resolution for electronic calendars |
JPH06342357A (en) * | 1993-06-01 | 1994-12-13 | Mitsubishi Electric Corp | User interface system |
US5767848A (en) * | 1994-12-13 | 1998-06-16 | Hitachi, Ltd. | Development support system |
US5467268A (en) * | 1994-02-25 | 1995-11-14 | Minnesota Mining And Manufacturing Company | Method for resource assignment and scheduling |
US5623404A (en) * | 1994-03-18 | 1997-04-22 | Minnesota Mining And Manufacturing Company | System and method for producing schedules of resource requests having uncertain durations |
US5655118A (en) * | 1994-03-21 | 1997-08-05 | Bell Communications Research, Inc. | Methods and apparatus for managing information on activities of an enterprise |
IL112660A (en) | 1994-03-31 | 1998-01-04 | Minnesota Mining & Mfg | System integrating active and simulated decision- making processes |
US5590269A (en) | 1994-04-22 | 1996-12-31 | Minnesota Mining & Manufacturing Company | Resource assignment system providing mixed-initiative user interface updates |
US5787000A (en) | 1994-05-27 | 1998-07-28 | Lilly Software Associates, Inc. | Method and apparatus for scheduling work orders in a manufacturing process |
US5615121A (en) | 1995-01-31 | 1997-03-25 | U S West Technologies, Inc. | System and method for scheduling service providers to perform customer service requests |
US5774661A (en) | 1995-04-18 | 1998-06-30 | Network Imaging Corporation | Rule engine interface for a visual workflow builder |
US5904727A (en) | 1995-05-17 | 1999-05-18 | Mobile Information Systems, Inc. | Graphical fleet management methods |
US5922040A (en) | 1995-05-17 | 1999-07-13 | Mobile Information System, Inc. | Method and apparatus for fleet management |
DE19539662C2 (en) | 1995-09-27 | 1997-10-02 | Stefan J Halblaender | Method for situation-dependent disposition over or activation of resources |
US6070144A (en) | 1996-01-09 | 2000-05-30 | The State Of Oregon | System and process for job scheduling using limited discrepancy search |
US5920846A (en) | 1996-02-27 | 1999-07-06 | Southwestern Bell Telephone Co. | Method and system for processing a service request relating to installation, maintenance or repair of telecommunications services provided to a customer premises |
GB9606194D0 (en) * | 1996-03-23 | 1996-05-29 | Int Computers Ltd | Appointment booking and scheduling system |
JP4334623B2 (en) * | 1996-06-12 | 2009-09-30 | 出光興産株式会社 | Lubricating oil composition for automatic transmission |
US5893906A (en) * | 1996-08-13 | 1999-04-13 | Electronic Data Systems Corporation | Managing work in a computing application |
JPH10143574A (en) | 1996-11-08 | 1998-05-29 | Hitachi Ltd | Job execution supporting system |
WO1998022897A1 (en) | 1996-11-22 | 1998-05-28 | British Telecommunications Public Limited Company | Resource allocation |
US5870545A (en) | 1996-12-05 | 1999-02-09 | Hewlett-Packard Company | System and method for performing flexible workflow process compensation in a distributed workflow management system |
US5826239A (en) * | 1996-12-17 | 1998-10-20 | Hewlett-Packard Company | Distributed workflow resource management system and method |
JPH10207939A (en) * | 1997-01-17 | 1998-08-07 | Nec Corp | Work flow system |
US5963913A (en) * | 1997-02-28 | 1999-10-05 | Silicon Graphics, Inc. | System and method for scheduling an event subject to the availability of requested participants |
JP3184113B2 (en) * | 1997-03-24 | 2001-07-09 | 東燃ゼネラル石油株式会社 | Lubricating oil composition for automatic transmission |
US6047260A (en) * | 1997-06-05 | 2000-04-04 | Attention Control Systems, Inc. | Intelligent planning and calendaring system with cueing feature and floating tasks |
US5970466A (en) * | 1997-10-06 | 1999-10-19 | Impromed, Inc. | Graphical computer system and method for appointment scheduling |
JPH11116982A (en) * | 1997-10-09 | 1999-04-27 | Mitsubishi Oil Co Ltd | Lubricating oil composition |
US6370566B2 (en) * | 1998-04-10 | 2002-04-09 | Microsoft Corporation | Generating meeting requests and group scheduling from a mobile device |
US6745381B1 (en) * | 1997-12-12 | 2004-06-01 | International Business Machines Coroporation | Method and apparatus for annotating static object models with business rules |
US6016477A (en) * | 1997-12-18 | 2000-01-18 | International Business Machines Corporation | Method and apparatus for identifying applicable business rules |
US6115690A (en) * | 1997-12-22 | 2000-09-05 | Wong; Charles | Integrated business-to-business Web commerce and business automation system |
EP1062559A2 (en) * | 1998-03-12 | 2000-12-27 | DMW Worldwide, Inc. | Operational system for operating on client defined rules |
US6278978B1 (en) * | 1998-04-07 | 2001-08-21 | Blue Pumpkin Software, Inc. | Agent scheduling system and method having improved post-processing step |
US6430538B1 (en) | 1998-04-30 | 2002-08-06 | Enterworks | Workflow management system, method and medium with personal subflows |
US20020046073A1 (en) | 1998-05-29 | 2002-04-18 | Runar Indseth | Configurable weighting of representational controls to obtain an optimal routing solution |
US6473748B1 (en) | 1998-08-31 | 2002-10-29 | Worldcom, Inc. | System for implementing rules |
US6721288B1 (en) | 1998-09-16 | 2004-04-13 | Openwave Systems Inc. | Wireless mobile devices having improved operation during network unavailability |
US6546425B1 (en) * | 1998-10-09 | 2003-04-08 | Netmotion Wireless, Inc. | Method and apparatus for providing mobile and other intermittent connectivity in a computing environment |
US7505827B1 (en) | 1998-11-06 | 2009-03-17 | Honeywell International Inc. | Automated finite capacity scheduler |
AU2707200A (en) * | 1998-11-30 | 2000-06-19 | Siebel Systems, Inc. | Assignment manager |
US6546364B1 (en) * | 1998-12-18 | 2003-04-08 | Impresse Corporation | Method and apparatus for creating adaptive workflows |
US6633900B1 (en) * | 1999-01-08 | 2003-10-14 | Abb Inc. | Mobile crew management system for distributing work order assignments to mobile field crew units |
US6430562B1 (en) | 1999-03-01 | 2002-08-06 | Electronic Data Systems Corporation | Integrated resource management system and method |
US20020065700A1 (en) | 1999-04-19 | 2002-05-30 | G. Edward Powell | Method and system for allocating personnel and resources to efficiently complete diverse work assignments |
US6219412B1 (en) * | 1999-05-05 | 2001-04-17 | Spiderphone.Com, Inc. | Choice of guaranteed vs. bumpable conference call reservations |
AU4839300A (en) | 1999-05-11 | 2000-11-21 | Webvan Group, Inc. | Electronic commerce enabled delivery system and method |
US7177825B1 (en) * | 1999-05-11 | 2007-02-13 | Borders Louis H | Integrated system for ordering, fulfillment, and delivery of consumer products using a data network |
US7127412B2 (en) | 1999-06-07 | 2006-10-24 | Pointserve, Inc. | Method and system for allocating specific appointment time windows in a service industry |
US6415259B1 (en) * | 1999-07-15 | 2002-07-02 | American Management Systems, Inc. | Automatic work progress tracking and optimizing engine for a telecommunications customer care and billing system |
US6535883B1 (en) | 1999-08-04 | 2003-03-18 | Mdsi Software Srl | System and method for creating validation rules used to confirm input data |
US6823315B1 (en) | 1999-11-03 | 2004-11-23 | Kronos Technology Systems Limited Partnership | Dynamic workforce scheduler |
US6745321B1 (en) * | 1999-11-08 | 2004-06-01 | International Business Machines Corporation | Method and apparatus for harvesting problematic code sections aggravating hardware design flaws in a microprocessor |
US6484036B1 (en) * | 1999-11-19 | 2002-11-19 | International Business Machines Corporation | Method and apparatus for scheduling mobile agents utilizing rapid two-way communication |
US20050027580A1 (en) * | 1999-12-01 | 2005-02-03 | Richard Crici | Internet-based appointment scheduling system |
US20010029499A1 (en) | 1999-12-30 | 2001-10-11 | Tuatini Jeffrey Taihana | Rules processing system |
US20020035493A1 (en) | 2000-01-04 | 2002-03-21 | Bahram Mozayeny | Method and system for coordinating appointments |
GB0004010D0 (en) * | 2000-02-22 | 2000-04-12 | Ibm | Naming convention fjor different types of device and apparatus and methods using the naming convention |
JP2001282974A (en) * | 2000-03-29 | 2001-10-12 | Ricoh Co Ltd | System and device for managing work and recording medium |
WO2001075694A2 (en) * | 2000-03-31 | 2001-10-11 | Mdsi Mobile Data Solutions Inc. | Methods and systems for scheduling complex work orders for a workforce of mobile service technicians |
US6721779B1 (en) * | 2000-07-07 | 2004-04-13 | Softwired Ag | Messaging proxy system |
US7925524B2 (en) | 2000-07-14 | 2011-04-12 | United Parcel Service Of America, Inc. | Method and system of delivering items using overlapping delivery windows |
US6757530B2 (en) * | 2000-12-29 | 2004-06-29 | International Business Machines Corporation | System and method for providing wireless device access to scheduling applications |
US20020199182A1 (en) | 2001-02-15 | 2002-12-26 | Susan Whitehead | Method and apparatus providing convergent solution to end-to end, adaptive business application management |
US6701299B2 (en) | 2001-03-16 | 2004-03-02 | United Parcel Service Of America, Inc. | Real-time delivery feasibility analysis systems and methods |
-
2001
- 2001-04-02 WO PCT/CA2001/000423 patent/WO2001075694A2/en active Application Filing
- 2001-04-02 AU AU2001246270A patent/AU2001246270A1/en not_active Abandoned
- 2001-04-02 WO PCT/CA2001/000420 patent/WO2001075691A2/en active Application Filing
- 2001-04-02 US US09/825,184 patent/US7155519B2/en not_active Expired - Lifetime
- 2001-04-02 AU AU2001246271A patent/AU2001246271A1/en not_active Abandoned
- 2001-04-02 US US09/824,853 patent/US7487105B2/en not_active Expired - Lifetime
- 2001-04-02 US US09/825,153 patent/US20020016645A1/en not_active Abandoned
- 2001-04-02 AU AU2001248163A patent/AU2001248163A1/en not_active Abandoned
- 2001-04-02 AU AU2001246273A patent/AU2001246273A1/en not_active Abandoned
- 2001-04-02 WO PCT/CA2001/000446 patent/WO2001075637A2/en active Application Filing
- 2001-04-02 AU AU2001246272A patent/AU2001246272A1/en not_active Abandoned
- 2001-04-02 WO PCT/CA2001/000422 patent/WO2001075693A2/en active Application Filing
- 2001-04-02 WO PCT/CA2001/000419 patent/WO2001077912A2/en active Application Filing
- 2001-04-02 US US09/824,850 patent/US20010047287A1/en not_active Abandoned
- 2001-04-02 AU AU2001248164A patent/AU2001248164A1/en not_active Abandoned
- 2001-04-02 WO PCT/CA2001/000421 patent/WO2001075692A2/en active Application Filing
- 2001-04-02 US US09/825,296 patent/US7587327B2/en not_active Expired - Lifetime
- 2001-04-02 US US09/824,849 patent/US7346531B2/en active Active
- 2001-04-02 AU AU2001246269A patent/AU2001246269A1/en not_active Abandoned
- 2001-04-02 WO PCT/CA2001/000445 patent/WO2001075663A2/en active Application Filing
- 2001-04-02 US US09/824,852 patent/US7603285B2/en not_active Expired - Lifetime
-
2008
- 2008-03-18 US US12/050,869 patent/US8768738B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9841990B2 (en) | 2015-08-28 | 2017-12-12 | Servicepower, Inc. | Encoding of a schedule into a binary structure |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2001077912A2 (en) | Configurable scheduling system | |
JP3566550B2 (en) | Computer system and computer readable storage medium for developing a software system | |
US10068190B2 (en) | Component based interface to handle tasks during claim processing | |
CA2371703C (en) | Method and article of manufacture for component based task handling during claim processing | |
US8224859B2 (en) | Component based information linking during claim processing | |
US5913912A (en) | Flight strips management method and system | |
US20030009357A1 (en) | Component based organizing of projects and members of an organization during claim processing | |
AU2001249273A1 (en) | Method and system for top-down business process definition and execution | |
EP1266334A1 (en) | Method and system for top-down business process definition and execution | |
Weske et al. | A reference model for workflow application development processes | |
WO2000067186A2 (en) | Article of manufacture for component based negotiation facilitating during claim processing | |
US20030229891A1 (en) | Installation tool for enterprise management systems based on building blocks | |
Allaoui et al. | Hybrid flow shop scheduling with availability constraints | |
EP0897149B1 (en) | Framework for business applications providing financial integration | |
Cunningham et al. | A decision support tool for planning bills-of-material | |
Nixon | Managing performance requirements for information systems | |
Niraj Ramesh et al. | Efficient models, formulations and algorithms for some variants of fixed interval scheduling problems | |
Mishelevich et al. | Application development system: The software architecture of the IBM Health Care Support/DL/I-Patient Care System | |
Bußler | Capability based modeling | |
Cunningham et al. | A decision support tool for planning bills of material | |
Grant et al. | The user's role in a simulation based scheduling system | |
CA2380197C (en) | Object frameworks for reinsurance | |
Hart | Matching intelligent systems with business process reengineering | |
Barclay et al. | Development and Use of PROPHET Life Cycle Cost Model | |
Dedene et al. | Generic object models and business process (re) design |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
122 | Ep: pct application non-entry in european phase | ||
NENP | Non-entry into the national phase |
Ref country code: JP |