WO2007090410A1 - A method and system for resource planning - Google PatentsA method and system for resource planning Download PDF
- Publication number
- WO2007090410A1 WO2007090410A1 PCT/DK2007/050014 DK2007050014W WO2007090410A1 WO 2007090410 A1 WO2007090410 A1 WO 2007090410A1 DK 2007050014 W DK2007050014 W DK 2007050014W WO 2007090410 A1 WO2007090410 A1 WO 2007090410A1
- WIPO (PCT)
- Prior art keywords
- Prior art date
- 238000004590 computer program Methods 0.000 claims 1
- 238000000034 methods Methods 0.000 description 41
- 230000000694 effects Effects 0.000 description 8
- 238000004364 calculation methods Methods 0.000 description 2
- 230000002354 daily Effects 0.000 description 2
- 230000001419 dependent Effects 0.000 description 2
- 230000002045 lasting Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000000737 periodic Effects 0.000 description 1
- 230000002441 reversible Effects 0.000 description 1
- 230000002123 temporal effects Effects 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- G06—COMPUTING; CALCULATING; COUNTING
- G06Q—DATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management, e.g. organising, planning, scheduling or allocating time, human or machine resources; Enterprise planning; Organisational models
A METHOD AND SYSTEM FOR RESOURCE PLANNING
The invention relates to a method and system for performing complex resource planning tasks by means of hierarchic, interdependent scheduling charts comprising preferably continuously identifiable information, typically in the form of rules. The method makes use of meta-heuπstic (an algorithmic approach to approximate optimal solutions for problems in combinatorial optimization) for processing of the information comprised in the interdependent charts in order to supply an optimized resource allocation chart
One example of an existing attempt to perform planning of resource allocation is presented in published PCT-application WO 2005/010791 which describes a method and system for creating an optimized workforce schedule for a set of human resources to ensure optimum staff schedules based on a number of parameters. In operation, the system uses a pattern recognition procedure to create an initial workforce schedule. This procedure considers staff attributes and skills as well as past schedules to create the initial workforce schedule. The initial workforce schedule is subsequently refined by adding user input and employee preferences to generate an optimized schedule that meets the necessary requirements and employee preferences.
An essential feature of the known planning method and system is that it uses simple statistics based on past schedules to determine future needs, i.e. forecasting the demand for resources. The system uses "artificial intelligence" in the form of a "feed forward Artificial Neural Network" in order to recognize resource-dependent and time-dependent shift patterns from past resource schedules. Examples of such patterns could be that a resource is working a particular position every day or that a specific task needs to be performed during a specific period of time.
The planning method and system of the PCT-application WO 2005/010791 provides a relatively simple generation of a workforce schedule based on historical data, but does not address the very common problem of day-to-day changes in staffing, such as caused by sudden illness, delays, employees exchanging their shifts, need for training days or external courses, and other reasons. These are common events found in every organization. One of the main purposes of performing accurate resource planning is to optimize resource allocation while reducing costs. This is seldom achieved by generating a simple workforce schedule e. g. owing to the reasons mentioned above. In practice, all of these changes have an impact on previously made decisions/choices in connection with the planning procedure made by the planner. Therefore, the planner would not have planned the same resource allocations if he/she had been able to foresee the changes. At the very least, this would require an inappropriate extra workload for the planner. Hence, the known method does not provide for day-to-day changes to be registered in the schedule, which in many cases leads to inaccurate scheduling and to outdated information being submitted to employees.
Another often faced problem in connection with planning tasks for a large number of resources is that, owing to the enormous amount of information required to plan a resource chart, the administrator/planner simply cannot manually keep track of all historical, present and future allocations. The risk of allocating personnel at an unfair distribution is therefore highly present and needs to be addressed. Otherwise, it may typically lead to dissatisfaction among the employees.
Problem related to the number of possible combinations
It is therefore an object of the invention to provide a dynamic method and system for performing complex resource planning tasks that is able to generate an updated, optimized resource chart taking all changes of staffing and other criteria into account, both on a long-term basis and particularly on a day-to-day basis. This will ensure a very good accuracy of the optimized resource chart and provide administrators as well as employees (users) with an updated overview and the best possibilities for adapting resource planning according to a "best practise" approach.
The invention as described in the following provides a method for dynamic resource planning, the method being based on a stack (possibly to be executed successively) of hierarchic interdependent charts. Each chart comprises rules related to its order in the hierarchy, and each resource allocation in each chart is based on a rule that is identifiable (reversible executable, possibly by each rule taking as input allocations according to a rule in a preceding chart) from a preceding chart so that a change in the allocation can be tracked to the rule(s) from which the allocation was originated/based. Furthermore, the method and system may take a calculated fairness parameter into account when allocating resources. The fairness parameter according to the invention is not only derived from a collection of historical data. According to the invention the system may also at any present point of time compute the value of the fairness parameter for a specific resource provided that the resource is allocated to a task. If this computation leads to an unsatisfying value of the fairness parameter, the system may preferably leave it to the administrator to make a decision regarding the allocation
These and other objects are achieved by a resource planning method and system in which rules of the resource planning procedure are set up in a hierarchy, allowing rules from each chart in single allocations to be continuously identified, the rules relating to a specific resource allocation. By simultaneous registration of all the changes to the plan, it is possible to continuously optimize the plan even on constantly changing premises, depending on the current situation. The changes consequently cause new optimization possibilities to arise in the planning system owing to the changed premises.
In the method and system according to the invention a number of planning parameters are initially identified. Among others these may be- an initial task list, the number and kind of resources that are to be planned for, competences of those resources and employee preferences/wishes. Collective agreements for the different types of resources are also identified and used as basic information. Furthermore, a statistical module in the system collects the updated information regarding actual delivered working hours and preferences/wishes as well as information on the value of the fairness parameter for each individual resource as described above.
Subsequently to each planned activity having been performed by actual allocated resources, the activity and the resources are registered in the statistical module and data indicative thereof are used in establishing the fairness parameter and may also be interchanged with a salary scheme system e. g. when the registered data about the activity have been approved by a relevant department manager. The registered data from which the fairness parameter is established is subsequently used as basis for future resource allocations thus weighted from a fairness point of view
For generating an optimized resource chart according to the invention the method and system basically perform a routine that may be described by three stages. First, the system performs an automatic generation of the best possible resource chart for a given planning period acknowledging all rules and regulations known to the system at that particular time Secondly, the users are then "invited" to provide new input/changes into the system which then subsequently runs its optimization procedure. Thirdly, the administrator must manually resolve all the conflicts, which the system is not authorized to do automatically.
In the course of this manual optimization it will often be necessary to go "back" in the planning sequence and alter rules or allocations giving rise to an otherwise unsolvable conflict later in the sequence. Since each allocation is defined by an identifiable rule the administrator can easily overlook where to perform the needed change manually and subsequently run the planning procedure again on the new basis. The method and system according to the invention thus eliminates the almost impossible task of keeping track of all suddenly required changes to a resource plan and, in addition, these changes are recorded and "weighted" when computing the fairness parameter for use in future planning runs.
In the method and system according to the invention the entire resource planning procedure is established as a continuous flow with a possibility for carrying out online optimization both by administrators/planners and by users via a network Each time a change is registered by the system, new possibilities for optimization arise. This means that the system may perform an optimization operation each time an update of the resource chart is carried out or otherwise at predetermined time intervals. Furthermore, the optimization of the resource chart may also involve human overruling in case of conflicting situations. With the described method and system according to the invention the goals and/or performance of an organization (or any sub-department of an organization) with regard to allocation of resources and minimization of costs may be optimally achieved. The continuous optimization procedure of the method and system for carrying out the resource planning is highly dynamic and consequently more accurate and cost-reducing. As an additional benefit, the system also provides an improved management tool for the long- term allocation of resources owing to the high accuracy. The high accuracy consequently provides more reliable statistical data to determine future allocation requirements. Not only is the method and system according to the invention able to perform the above- explained continuous optimization, but it also takes into account the actual performed activities of the previous planning period when allocating resources for the next period in order to maintain an equitable distribution of resources over time. The data collected by the statistical module and the calculated fairness parameter are used in the planning of resource allocation for the next period The fact that the optimization procedure is carried out by the system makes it highly advantageous since it renders the "old-fashioned" need for manual, human overview of all the resource allocations obsolete (which may be hundreds or even thousands of pieces of individual information). Thereby a substantial number of working hours spent on planning are saved, which allows these resources to be used better elsewhere.
In summary, one of the major improvements of the method and system according to the invention over known planning procedures is the ability to perform adjustments of resource allocations from input on premises that are continuously changing. Every rule, i.e. choice of a given resource allocation, is identifiable in the rules hierarchy, which makes the system able to automatically deduce every possible legal and illegal solution to allocation conflicts both retrospectively and progressively.
The above-mentioned as well as other objects and advantages are achieved according to a first aspect of the invention in which; a computer-implemented method for dynamic resource allocation based on providing groups of information to a centralized computer system, comprises: a setting up a basis chart comprising a group of information about mandatory criteria; b. creating a sub-chart by adding a group of information about additional criteria to the basis chart; and c repeating step b for all groups of additional information until an optimized resource chart is generated; wherein the information in a previously set up chart constitutes one or more rules that determine the possible allocations in the subsequent sub-chart.
BRIEF DESCRIPTION OF THE DRAWINGS
Figure 1 illustrates an overall schematic flow chart of the dynamic resource planning procedure also indicating the possibility for continuous optimization. Figure 2 illustrates that the system comprises a basis chart and a number of sub-charts, each chart comprising information that defines the rules of the next sub-chart in the sequence.
Figure 3 illustrates interdependent rules in a stack of charts that are in set up in a hierarchic sequence. Figure 4 illustrates the network over which the method and system is distributed.
Figure 5 illustrates how the number of possible legal allocations is reduced for each rule being set up in the individual sub-charts.
Figures 6 a) to d) illustrate an example of a basis chart and a sub-chart (local rules), a sub-chart (request) and a sub-chart (match). Figures 7 illustrate an example of a sub-chart (shared functions).
Figure 1 shows an overall schematic flow chart 10 of the dynamic resource planning procedure and the continuous optimization according to an embodiment of the invention. The overall flow chart begins at a basis chart 100. From the basis chart 100 total sums of all fairness indicators are re-calculated in 101 for the entire chart, individuals and individal cells. From 101 sums of fairness on individual cell level are calculated in 102 for all cells. From 102 fairness indicators in a motor, that will be dexcπbed in more details, are adjusted in 103, so that fairness indicators which were under-weighed in a first calculation are weighed more heavily in the next calculation. From 103 an adapation chart including empty cells may be unrolled, ι. e. added, again in 104, or a preference chart and empty cells may be unrolled again in 105 for the adaptation chart, or a preference chart, rules chart and empty cells may be enrolled again in 106 for an adustment schedule, or conflicts are presented with simulated suggestions to a human administrator in 107. From 104, 105, 106 or 107, empty cells are determined in 108. If empty cells are determined in 108, via 109 total sums of all fairness indicators are re-calculated in 101 for the entire chart, individuals and individal cells. If empty cells are not determined in 108, via 110 the adapation chart is optimized in 111 by means of simulated annealing. From 111 time off, maternity leave, exchange, illness etc. are considered in 112. From 112, data is made available for a next planning period in 113. From 113, the data is used in the basis chart in 100. The dynamic resource planning procedure and the continuous optimization will be described in more detail.
Figure 2 shows a system 20 according to another embodiment of the invention comprising a basis chart 200 and a number of sub-charts 201 to 205. The basis chart 200 comprises a number of cells arranged in a number of columns, each of which corresponding to one of a numbers of functions, e. g. resources, and a number of rows, each of which corresponding to one of a number of periods of time, e. g. days. Thus, each cell represents allocation of a particular function at a particular period of time. The basis chart 200 comprises two dimensions: functions and time. Allocation of a particular function, e. g. resource, at a particlar period of time may, as exemplified in figure 2, be possible or impossible. The number of sub-charts 201 to 205 is arranged above the basis chart 200 in a stack for illustration. Each of the sub-charts 201 to 205 comprises a number of cells as described with reference to the basis chart 200. A first sub-chart 201, e. g. primary chart, is arranged above the basis chart 200. A second sub-chart 202, e. g. rules chart, is arranged above the first sub-chart 201. A third sub-chart 203, e. g. preference chart, is arranged above the second sub-chart 202. A fourth sub-chart 204, e. g. adapation chart, is arranged above the third sub-chart 203. A fifth sub-chart 205, e. g. optimized resource chart, is arranged above the fourth sub-chart 204. In the fifth sub-chart 205, allocation of a particular function, e. g. resource, at a particlar period of time may also be final. Thus, each chart 200 to 205 comprises information that defines rules of the next sub-chart 201 to 205 in the sequence. The stack of charts 200 to 205 comprises three dimensions: functions, time and rules. Owing to the arrangement of the basis chart 200 and the number of sub-charts 201 to 205 in a stack, allocation of a particular function, e. g. resource, at a particlar period of time may be determined, manipulated and compared across the charts 200 to 205 from the basis chart 200 to the fifth sub-chart 205 as will be described in more detail.
Figure 3 shows a system 30 according to yet another embodiment of the invention comprising a basis chart 300, e. g. room restraints chart, and a number of sub-charts 301 to 305. The basis chart 300 comprises a number of cells arranged in a number of columns, each of which corresponding to one of a numbers of functions, e. g. resources, and a number of rows, each of which corresponding to one of a number of periods of time, e. g. days. Thus, each cell represents allocation of a particular function at a particular period of time. The basis chart 300 comprises two dimensions: functions and time. Allocation of a particular function, e. g. resource, at a particlar period of time may, as exemplified in figure 3, be possible or impossible. The number of sub-charts 301 to 305 is arranged above the basis chart 300 in a stack for illustration. Each of the sub-charts 301 to 305 comprises a number of cells as described with reference to the basis chart 300. A first sub- 5 chart 301 is arranged above the basis chart 300. A second sub-chart 302, e. g. 2D what-ιf restraints chart, is arranged above the first sub-chart 301. A third sub-chart 303, e. g. 3D what-ιf restraints chart, is arranged above the second sub-chart 302. A fourth sub-chart 304, e. g. learning restraints chart, is arranged above the third sub-chart 303. A fifth sub- chart 305 is arranged above the fourth sub-chart 304. In the fifth sub-chart 305, allocation
10 of a particular function, e. g. resource, at a particlar period of time may also be final. Thus, each chart 300 to 305 comprises information that defines rules of the next sub-chart 301 to 305 in the sequence. Owing to the arrangement of the basis chart 300 and the number of sub-charts 301 to 305 in a stack, allocation of a particular function, e. g. resource, at a particlar period of time may be determined, manipulated and compared across the charts
15 300 to 305 from the basis chart 300 to the fifth sub-chart 305 as will be described in more detail By setting up rules in the charts 301 to 305 in a stack of charts 301 to 305 that are interdependent in a hierarchic sequence, these rules may represent a third dimension in a resource planning chart. The more fundamental a rule is, the higher its position or ranking in the hierarchy. In figure 3 the most fundamental rules are placed in the basis chart 300.
20 The system 30 may preferably deduct changes to the rules of a higher-ranking chart in the hierarchy, that are illegal, but at the same time these changes provide a solution to one or more problems/conflicts in a lower-ranking chart in the planning procedure. As an example, a fundamental, highest-ranking rule of the basis chart 300 provides basis for other decisions all the way through the chart hierarchy. It is, therefore, important, that
25 every rule can be identified in a subsequent sequence situation if conflicts arise in a lower- ranking chart.
Figure 4 shows a system 40 according to examplatory implementation of the invention comprising a SQL server 400, a passport, e. g. password, database 401, site X database 402, site Y database 403, webserver 410, software firewall 411, hardware firewall 412, a
30 mobile device 420, 421, a user terminal 422, an administrator terminal 423, and a network, e. g. the internet 430 The SQL server 400 is coupled to the passport database 401 being coupled to the site X database 402 and the site Y database 403, and, via the software firewall 411, the webserver 410. The webserver 410 is coupled to, via the hardware firewall 412, to the network 430. The webserver 410 may comprise a server
35 certificate 413. A user may access the system 40 via the mobile device 420, 421 or the user terminal 422, that may provide the user with a graphical user interface (GUI). An administrator may access the system 40 via the administrator terminal 422 Figure 5 illustrates how the number of possible legal allocations is reduced for each rule being set up in the individual sub-charts Figure 5 shows a basis chart 500 and a number of sub-charts 501 to 503. The basis chart 500 comprises a number of cells arranged in a number of columns and a number of rows. The cells in the basis chart 500 are empty, indicating that legal allocation of all functions at all periods of time is possible. Each of the sub-charts 501 to 503 comprises a number of cells as described with reference to the basis chart 500. Some of the cells in a first sub-chart 501 are filled with a square, indicating that, owing to a first rule set up in the first sub-chart 501, legal allocation of some functions at some periods of time is not possible. Thus, the number of possible legal allocations is reduced owing to the first rule as will be described in more detail. Some of the cells in a second sub-chart 502 are filled with a circle, indicating that, owing to a second rule set up in the second sub-chart 502, legal allocation of some functions at some periods of time is not possible. Thus, the number of possible legal allocations is again reduced owing to the second rule. Some of the cells in a third sub-chart 503 are filled with a triangle, indicating that, owing to a third rule set up in the second sub-chart 503, legal allocation of some functions at some periods of time is not possible. Thus, the number of possible legal allocations is further reduced owing to the third rule.
Figures 6 a) to d) illustrate a 4x3 example of a basis chart and a sub-chart (local rules), a sub-chart (request) and a sub-chart (match). Figure 6 a) shows a 4x3 basis chart 600 comprising a number of cells arranged in three columns, each of which corresponding to one of a numbers of functions, ι. e. Task A, Task B and Task C, and four rows, each of which corresponding to one of a number of periods of time, ι. e Period 1, Period 2, Period 3 and Period 4. Thus, each cell represents allocation of a particular function at a particular period of time. The basis chart 600 comprises two dimensions: functions and time. Allocation of a particular function, ι. e. Task A, Task B and Task C, at a particlar period of time, ι. e. Period 1, Period 2, Period 3 and Period 4, may be possible or impossible. Each function, ι. e. Task A to C, requires competences from a resource, that may be an individual, e. g. a specialist or a support staff member, a whole group of individuals, a piece of equipment or a facility, allocated to the function, as will be described in more detail. Figure 6 a) further shows a resource list 610 listing resources and their competences in performing functions, ι. e. resource Rl having competences A and B, resource R2 having competences A and C, resource R3 having competences A, B and C, and resource R4 having competences B and C. Thus, resources Rl, R2 and R3 are allowed to be allocated to Task A, resources Rl, R3 and R4 are allowed to be allocated to Task B, and resources R2, R3 and R4 are allowed to be allocated to Task C as indicated in figure 6 a). Rule-based allocation of resources may take into account quality restraints, competence restraints, time restraints, e. g. if a resource is allocated to Task A in Period 1 then this resource is allocated to Task C in Period 2, or organisational restraints, and the like as indicated by rules for allocation 620 in figure 6 a). As an intermediate result, resources Rl, R2 and R3 are allowed to be allocated to Task A, resources Rl, R3 and R4 are allowed to be allocated to Task B, and resources R2, R3 and R4 are allowed to be allocated to Task C as indicated in figure 6 a).
5 Figure 6 b) shows a first 4x3 sub-chart, i. e. local-rules chart, 601 comprising a number of cells arranged in three columns and four rows as described with reference to the basis chart 600 of figure 6 a), and a resource list 611 as described with reference to the resource list 610 of figure 6 a). Rule-based allocation of resources takes into account time restraints: if a resource is allocated to Task A in Period 1 then this resource is allocated to
10 Task C in Period 2 as indicated by rules for allocation 621 in figure 6 b). Furthermore, local-rule-based allocation takes into account restraints: resource Rl is always allocated to Task A in Period 1, and if resource R4 is allocated to Task C then resource R2 is not allocated to Task A as indicated by local-applied rules 631 in figure 6 b). Thus, in Period 1 resource Rl is allocated to Task A, resources R3 and R4 are allowed to be allocated to
15 Task B, and resources R2, R3 and R4 are allowed to be allocated to Task C as indicated in figure 6 b). As an intermediate result, resource Rl is allocated to Task A in Period 1 ("resource Rl is always allocated to Task A in Period 1") and Task C in Period 2 ("if a resource is allocated to Task A in Period 1 then this resource is allocated to Task C in Period 2") as indicated in figure 6 b). However, resource Rl has competences A and B, but
20 not C. Furthermore, in Period 1 resources R3 or R4, but not Rl may be allocated to Task B, and resources R2, R3 or R4 may be allocated to Task C as indicated in figure 6 b).
Figure 6 c) shows a second 4x3 sub-chart, i. e. request chart, 602 comprising a number of cells arranged in three columns and four rows as described with reference to the basis chart 600 of figure 6 a), a resource list 612 as described with reference to the resource list
25 610 of figure 6 a), rules for allocation 622 as described with reference to the rules for allocation 621 of figure 6 b), and local-applied rules 632 as described with reference to the local-applied rules 631 of figure 6 b). Furthermore, request-based allocation takes into account a request: resource R4 is to be allocated to Task C in Period 4 as indicated by request-applied rules 642 in figure 6 c). Thus, in Period 4 resource R4 is allocated to
30 Task C, resources Rl and R3 are allowed to be allocated to Task A, and resources Rl, R3 and R4 are allowed to be allocated to Task B as indicated in figure 6 a). As an intermediate result, resource Rl is allocated to Task A in Period 1 ("resource Rl is always allocated to Task A in Period 1") and Task C in Period 2 ("if a resource is allocated to Task A in Period 1 then this resource is allocated to Task C in Period 2") as indicated in figure 6 c). However,
35 resource Rl has competences A and B, but not C. Furthermore, in Period 1 resources R3 or R4, but not Rl may be allocated to Task B, and resources R2, R3 or R4 may be allocated to Task C as indicated in figure 6 c). Furthermore, resource R4 is allocated to Task C in Period 4 ("resource R4 is to be allocated to Task C in Period 4"), and resource R2 may not be allocated to Task A ("if resource R4 is allocated to Task C then resource R2 is not allocated to Task A") as indicated in figure 6 c).
Figure 6 d) shows a third 4x3 sub-chart, i e. match chart, 603 comprising a number of cells arranged in three columns and four rows as described with reference to the basis chart 600 of figure 6 a), a resource list 613 as described with reference to the resource list 610 of figure 6 a), local-applied rules 633 as described with reference to the local-applied rules 631 of figure 6 b), and request-applied rules 643 as described with reference to the request-applied rules 642 of figure 6 c) Rule-based allocation of resources takes into account time restraints; if a resource is allocated to Task A in Period X then this resource is allocated to Task C in Period (X+ 1) as indicated by rules for allocation 623 in figure 6 d). This rule of the rules for allocation 623 is similar to, but more general than the rule of the rules for allocation 622, in figure 6 b). Furthermore, match-based allocation takes into account restraints: all resources Rl to R4 are allocated in each of the Periods 1 to 4, and all resources Rl to R4 are to have equal share as indicated by match rules 653 in figure 6 d). For each of the four Periods 1 to 4 the four resources Rl to R4 are to be allocated to the three Tasks A to C. Thus, for each of the four periods 1 to 4 two of the four resources Rl to R4 may be allocated to one of the Tasks A to C. As an examplatory result, in Period 1, resource Rl is allocated to Task A ("resource Rl is always allocated to Task A in Period 1"), resource R3 is allocated to Task B, and resources R2 and R4 are allocated to Task C. Thus, in Period 1 all resources Rl to R4 are allocated ("all resources Rl to R4 are allocated in each of the Periods 1 to 4"), at least one allowable resource is allocated to each of the Tasks A to C. Furthermore, in Period 2, resource R3 is allocated to Task A, resource R4 is allocated to Task B, and resources Rl ("if a resource is allocated to Task A in Period X then this resource is allocated to Task C in Period (X+ 1)") and R2 are allocated to Task C. Thus, in Period 1 all resources Rl to R4 are allocated ("all resources Rl to R4 are allocated in each of the Periods 1 to 4"), at least one allowable resource is allocated to each of the Tasks A to C (not resource Rl, but R2 has competence C). Furthermore, in Period 3, resource R2 is allocated to Task A, resource Rl is allocated to Task B, and resources R3 ("if a resource is allocated to Task A in Period X then this resource is allocated to Task C in Period (X+ 1)") and R4 are allocated to Task C. Thus, in Period 3 all resources Rl to R4 are allocated ("all resources Rl to R4 are allocated in each of the Periods 1 to 4"), at least one allowable resource is allocated to each of the Tasks A to C. Furthermore, in Period 4, resource Rl is allocated to Task A, resource R3 is allocated to Task B, and resources R4 ("resource R4 is to be allocated to Task C in Period 4") and R2 ("if a resource is allocated to Task A in Period X then this resource is allocated to Task C in Period (X+l)" and "if resource R4 is allocated to Task C then resource R2 is not allocated to Task A") are allocated to Task C. Thus, in Period 4 all resources Rl to R4 are allocated ("all resources Rl to R4 are allocated in each of the Periods 1 to 4"), at least one allowable resource is allocated to each of the Tasks A to C.
Figures 7 illustrate an example of a sub-chart (shared functions).
Figure 7 shows a 4x3 sub-chart, ι. e. shared-function chart, 704 comprising a number of cells arranged in three columns and four rows as described with reference to the basis chart 600 of figure 6 a), a resource list 714 as described with reference to the resource list 610 of figure 6 a), and request-applied rules for shared functions 744 similar to those described with reference to the request-applied rules 642 of figure 6 c). When using shared functions, a resource may be allocated to more than one function, ι. e. task, at a particular period of time, ι. e one resource attends two or more tasks at the same time. The two or more tasks require one or more competences from the resource, that may be an individual, e. g. a specialist or a support staff member, a whole group of individuals, a piece of equipment or a facility as has already been described. The shared functions may be identical, or equal or unequal in some respect, such as demand, length, difficulty, strength, costs and so on. When two functions are unequal, a first function, e. g. Task A in figure 7 such as "answering the telephone", may be "minor" compared to a "major" second function, e. g. Task B in figure 7 such as "operating complex equipment". Shared-function- based allocation of resources takes into account restraints such as which functions are compatible with each other and may, therefore, be shared, which functions are identical, which functions are equal, which functions are "minor", which functions are "major", which functions are "simple", or from which chart a rule for shared functions applies. Furthermore, shared-function-based allocation of resources may take into account cost, e. g. salary for a resource, associated with the shared functions, and may award salary for only one, possibly "major", function, although the resource is allocated to more than one function at a time. Thus, a "minor" shared function is a "slave" function to a "major" shared function, ι. e. salary corresponds with the "major" shared function. However, shared-function-based allocation of resources may also award salary for two or more "minor" or "major" shared functions, that are equal, when the resource is allocated to these shared functions at a time. Alternatively, the two or more "minor" or "major" shared functions may be treated as one function, for example, by using a special salary or statistical code following one of the shared functions to indicate a "joint definition" of the shared functions. Furthermore, shared-function-based allocation of resources may award statistical data associated with the shared functions in a similar way. A "simple" shared function is a "slave" function to another shared function, requiring that a resource allocated to the "simple" shared function is also allocated to the other function at a particular period of time, such as "attending a Midday meeting". The resource may, while attening the other function within the period of time, attend to the "simple" shared function regularly, occassionally or on demand. Although a "simple" shared function is a "slave" function to another shared function, it may influence allocation of resources to the other shared function. It may, for example, raise the basic need for ressorces in the other shared function. When a minimum number of ressources is required for the other shared function, for example three in an emergency room, a totel number of allocated resources may need to be higher than the required minimum number of resources, in this example four, if one of resources has also been allocated to a "simple" shared function, such as "attending a Midday meeting", in order to ensure the required minimum number of ressources for the other function at any time within the period of time. Furthermore, shared-function-based allocation of resources may award salary or statistical data associated with "simple" functions as has already been described.
With reference to figure 7, shared-function-based allocation of resources takes into account: resource Rl attends "minor" Task A and "major" Task B in Period 3, and resource R2 attends "minor" Task A in Period 3 as indicated by request-applied rules for shared functions 744 in figure 7. As an intermediate result, in Period 3 resource Rl is allocated to Tasks A and B, and resources R2 is allocated to Task A as indicated in figure 7. Although resource Rl is allocated to "minor" Task A and "major" Task B in Period 3, the resource Rl may be awarded salary only for "major" Task B. As resource R2 is allocated to "minor" Task A, the resource R2 is awarded salary only "minor" Task A.
Example of allocating resources according to the method Below is described how an allocation of resources according to the method is schematically illustrated in figure 1. In order to simplify the description, the example goes through a very simple sequence with a 2x2 chart.
Setting up / drafting the initial task list
Before running the planning procedure by means of the chart sequence each task requiring resources is defined in the initial task list.
Setting up of the basis chart
For each task on the initial task list the administrator first defines the required competences for the task. Each required competence is represented by a column. The required competences may then be satisfied by allocating resources to the cells. A resource may be an individual such as a specialist, a support staff member or a whole group of individuals. Furthermore, a resource may also be particular equipment required for carrying out the task, or a specific facility needed for the task. The administrator also defines the planning period, i.e. how many and/or which days to be covered. Each day in the planning period is represented by a row in the chart. When the "grid" of the basis chart (in this case 2x2 as mentioned) has been established the administrator allocates every possible resource to each relevant cell of the grid. The possible resources are resources that are not already bound by other tasks or which are illegal to allocate to the task in question (refer to other sections for a definition of legal and illegal resources). The number of possible resources may vary from zero to several hundreds. When all the cells of the basis chart have been processed the basis chart is ready for the next step in the sequence. In the example, some resources are possible for allocation both on Day I and Day II. Similarly, other resources are possible for allocation on Days I and II.
Setting up the primary chart
The number of cells in the "grid" structure of the primary chart corresponds to that of the basis chart. Each of the tasks on the initial task list has a specific chart structure "drafted" to fit exactly that task.
Structure of the system
With reference to figure 1 the overall set up of the method according to the invention is shown which also illustrates the principle of the continuously optimized resource allocation.
First, an initial task list is identified for the given planning period. Thereupon a basis chart is set up manually by an administrator allocating mandatory resources within the framework of criteria applicable for the basis chart. When this is done, information in the form of rules is set up in the sub-charts such as the primary chart, the rules chart and the preference chart. The established fairness parameter and other statistical parameters are added to the preference chart which produces the adaptation chart. The adaptation chart is then distributed to the users as the optimal starting point with regard to resource allocation and fairness for the present planning period.
When the adaptation chart is distributed to the users, these can access the adaptation chart online and input the changes they may have. Each user will be awarded a user ID for use in a graphic user interface and be able to access the adaptation chart in the system over a network by a standard procedure not described in further detail. When the changes have been registered by the system, the optimization procedure will be run and the system subsequently produces the optimized resource chart. As previously indicated, the optimization procedure is run automatically at pre-determined intervals or at any given time on the request of an administrator The updated, optimized resource chart will then take the position as the new adaptation chart as soon as it is released for all users.
Depending on the chosen frequency of the optimizations, the optimized resource chart may be used for different objectives. For instance, if the optimized resource chart is produced once every morning, it may be used as the daily shift schedule. If the optimized resource chart is produced at longer intervals it may alternatively be suitable for long-term planning purposes by the management. An important feature in connection herewith is the collection of data in the statistical module, so that future requirements are evaluated in the most optional manner.
Every time a change in the optimized resource chart is made by a user or an administrator, this change is registered and collected by the statistical module of the system. The statistical module can, of course, be set up to register any kind of action, but may preferably register data indicative of delivered working hours and employee preferences/wishes. Such statistical data may preferably then be used in the course of the next planning run so that a fair and equitable distribution of assignments is achieved over time. A simple example of this could be to make sure that the same employee is not allocated to the same unattractive working hours every week.
By using the method and system according to the invention such fair distribution is made by using the fairness parameter and other statistic parameters in future planning. Arbitrarily, hierarchic rules may also be set up locally by an administrator for shorter periods of time or if other special conditions apply to a specific group of resources. An example could be: only two persons have the skills required for running a specialized machine and they both fall ill at the same time, then a local rule (with a short duration) may be set up determining that the normally required support staff is reallocated to other tasks.
Stacking concept Traditionally spoken, a planning chart is a two-dimensional plan comprising a time-axis and a function-axis. These two axes have provided the basis for traditional planning, but this kind of set-up is not good for a quick understanding of why a specific resource has been allocated to a specific field in a chart. It is, therefore, desirable to provide a system that offers both a resource allocation overview and the possibility of checking the rule(s) that caused the resource to be allocated in a fast and unambiguous manner.
The method and system according to the invention perform the resource planning procedure by setting up a stack of hierarchic, interdependent charts in a particular sequence together resulting in a single, complete and optimized resource allocation chart. The information in each individual chart in the stack forms rules that are used as the basis for allocating resources in the next chart in the sequence. The generation of each chart requires the input of additional information (data) from one or more administrators/planners, i.e. "the next" chart in the sequence cannot be generated until the required information in the preceding chart has been added
However, the administrator/planner may overrule the system and actively avoid adding information if he/she does not have the necessary information to fill out the relevant data field, whereby the system may continue the planning procedure on the basis of the already provided information. This may yield both legal and illegal solutions to a conflict/problem, which are then presented to the administrator who manually decides on the preferred solution. In this approach the different possible solutions are presented by the system, which means that the administrator only has to decide on a limited number of automatically generated, possible solutions and not overlook all of these manually. This is obviously a faster and safer method than performing normal manual planning.
Stack of hierarchic charts
The system allows for the hierarchy of decisions in a resource allocation planning process to be set up and executed locally under supervision of the administrator by facilitating the setting up of rules in individual charts or cross-chart related rules. By means of 3D meta- heuristic, the system deductively examines whether it is possible to locate legal combinations of rules in preceding charts that provide a solution to a conflict that turned up in one of the subsequent sequence charts. If such a legal combination is found, it is possible to solve the problem within the regulations set up for each chart without the need for human overruling. Thereby, all considerations are properly attended to at every critical moment in the planning procedure. If no legal solutions to a conflict can be found, each illegal solution may be presented to the administrator who has to overrule the system manually, e. g. by selecting the least unfavourable solution based on an immediate judgment.
By setting up rules in charts in a stack of charts that are interdependent in a hierarchic sequence, these rules may represent a third dimension in a resource planning chart. Please see figure 3 for a graphic display of this. The more fundamental a rule is, the higher its position or ranking in the hierarchy. Please note that in the figure this means that the most fundamental rules are placed in the basis chart. The system may preferably deduct changes to the rules of a preceding chart (higher ranking chart in the hierarchy) that are illegal, but at the same time these changes provide a solution to one or more problems/conflicts in a lower-ranking chart in the planning procedure.
This/these solutιon(s) is/are presented to the administrator so that he/she can set up rules in a rules chart corresponding to an isolated (locally defined) hierarchy. This rules chart may then be stored in the system for a longer or a shorter period of time and in this way be used for automatic conflict resolution in future planning procedures. Rules set up by the administrator are positioned in the hierarchy in such a way that they are executed in sequence according to their rank in the hierarchy. However, still at the same time it is possible to identify the reason for a conflict and solve this by human overruling and consequently set the rules for the subsequent planning. In figure 3 it is shown how a fundamental rule (highest ranking in the hierarchy) positioned in the basis chart provides basis for other decisions all the way through the chart hierarchy. It is therefore essential that every rule can be identified in a subsequent sequence situation if conflicts arise in a lower ranking chart
With reference to figure 2 it is shown that the system comprises a basis chart and a number of sub-charts, each chart comprising defined rules that set out the possible allocations in the next sub-chart of the sequence. In the unrolling sequence the system "adds" each new (next) sub-chart when all the rules of the previous chart in the sequence have been laid down If the system cannot find any legal solution to an allocation in a specific field of the sub-chart, it can, as described above, identify the rule of the previous (or any of the previous) sub-chart(s) that constitutes the root of the conflict. If the system is then able (and/or authorized) to perform a change to a rule in the previous chart that yields a legal solution to the conflict in question, then this change is automatically carried out by the system. However, if the system cannot (and/or is not authorized to) perform such a change, the system instead presents the possible solutions to the administrator who then arranges an isolated hierarchy for the rules in question. The applied rules hierarchy will then automatically be used by the system in future planning procedures, possibly only for a limited time. Below, the charts in the sequence are described in more detail
In the basis chart rules comprising information about basic mandatory requirements (e. g. specific resources) are set up. It also comprises information on the legal criteria that must be fulfilled before the system can/must/may allocate a resource to a specific field. Furthermore, it may preferably also comprise other relevant information such as relevant legislation and/or collective agreements. The system may also collect information about competences and availability of employees and/or information regarding collective agreements made for the different occupational groups in the system from e. g. an organization-specific database and use it as relevant criteria for setting up rules. For each new planning procedure the rules in the basis chart are set up and maintained manually by the administrator.
Primary chart The primary chart is set up based on the basis chart as it is the next sub-chart in the planning sequence The primary chart comprises information in the form of a number of known system regulations and priorities that are to be acknowledged in the planning procedure. These may be periodic atypical changes in the organization, definition of holidays, changes owing to vacation periods and other adaptations of functions regarding temporal parameters. The primary chart may preferably be planned with the aid of e g. a calendar module and pre-defined holiday schedules. Rules chart
The next sub-chart in the sequence is the rules chart in which the possible set up of rules is based on the primary chart. In each actual planning procedure there will be a number of compulsory rules that varies from planning period to planning period. Compulsory rules are indicative of necessary activities such as introduction runs, rosters, project days throughout the organization, lasting changes in the organization or of the resources, courses etc. Rules that can be foreseen to conflict later in the planning sequence are arranged hierarchically so as to avoid human overruling later in the procedure.
One example of a conflict situation in the rules chart could be that a specific employee is allocated to an external course but also to a day shift the same day. To solve this, a rule can be manually defined which determines that for the specific employee allocation to a course always has a higher priority than allocation to the day shift. The rules chart is set up by already defined rules together with algorithms for rules of varying character and/or progress e. g. an introduction run. Conflicts in the chart are solved automatically, either empirically or logically. The rules chart is optimized by means of constraints and meta- heuπstics as previously described.
The next sub-chart in the sequence is the preference chart which comprises preferences (wishes) from the employees. These may be a request/wish for one or more days off during the next planning period for the employee. It may also be a request/wish to fill in a specific function on a specific working day or a request/wish to be allocated together with other specific employees if possible. Other requests and preferences are possible as well. The preference chart is set up in a manner similar to that of the rules chart.
Adaptation chart The final chart in the part of the sequence administered by one or more administrators is the adaptation chart which considers the "softer" criteria of a planning procedure. Such criteria may be the rational gathering/accumulation of certain succeeding functions for the same resource/person, a rational collection of days off, consideration for colleagues regarding e. g. off time in connection with weekends or holidays and/or uniform distribution of functions, working days and shifts. The rules in the adaptation chart are set up by means of matching statistics concerning each resource in each cell/field of the chart followed by means of simple two-dimensional heuristic such as with the aid of algorithms, and finally by means of three-dimensional meta-heuπstic whereby the system looks for previously carried out allocations that can be changed in order to achieve a more optimal planning. The adaptation chart is the chart that is released to the employees (users) as the resource allocation plan via a network. Optimized resource chart
When the adaptation chart is released to the users, it is possible for each user to input changes to the planning by giving input to the system by means of a graphic user interface (GUI) accessible via a network, e. g. the Internet. The changes are registered by the system, and by running the optimization procedure the system produces the optimized resource chart. This may preferably be done each time a change has been entered or at a predetermined time interval or at any time upon the request of an administrator
To run the optimization procedure the system may preferably utilize different strategies for solving conflicts depending on the character of the changes to the adaptation chart. In order to solve a specific conflict, the system may search the identifiable rules of any previous sub-chart, thereby automatically retrieving the optimal (new) solution based on all the rules and/or criteria already being part of the planning of each individual allocation cell/field. However, if the conflict cannot be automatically solved by the system, the system may preferably examine higher-ranking rules in the hierarchy, i.e. go further back in the chart sequence.
Based on this the system can retrieve possible solutions requiring change of e. g. allocations in the basis chart. If the system is not authorized to perform the necessary change on its own, the possible solutions are presented by the system to an administrator who then decides what to do, e. g. by setting up a new rules hierarchy or changing an existing rules hierarchy. The administrator may of course also manually decide on individual conflicts not applicable to be set up in a rules hierarchy.
The Statistical Module
The statistical module collects and stores updated registrations of every single allocation and changes down to an individual resource level. These registrations are used for defining "hard" as well as "soft" ranks in the hierarchy for future allocations and conflicts.
One example of "soft" ranking could be: two employees candidate for a specific allocation. Both have an interest in the allocation, but from two different perspectives. One has an educational benefit, the other has a beneficial reduction in work load. By performing a comparison of the historical, statistical registrations stored in the statistical module for both types of ranks as well as of a total fairness rank (value of the fairness parameter), including all performed dynamic, historical changes, for both employees, the system determines which one of the employees to allocate. In connection with future changes to the resource plan, the system then acknowledges which of the employees was allocated.
An example of "hard" ranking: two employees are candidates for working a night shift. Both have made a request for a day off on that day. From the data stored in the statistical module it is established that a relatively minor number of night shifts is registered for one of the employees, while the other is registered for a relatively large number of night shifts. The system then allocates the night shift to the former of the two, as the system is set up to optimize on fairness. As a result of this allocation, the administrator is presented with a "non-obliged-request" prompt, whereby the automatic allocation may be changed by illegal human overruling e. g. by exchanging the allocation to the latter employee anyway.
The planning "motor"
The planning motor is used for all of the functionalities of the method according to the invention. This means both for the automatic generation of a resource chart, for the automatic optimization procedure (run) of the chart and for the manual part of the planning procedure. In the following, a number of terms used for describing the method and system according to the invention are defined.
In connection with the planning procedure a column dictates an allocation that must/may be performed by one specific resource. A column defines which competencies must be present with the person (specific resource) that is to be allocated to the task and the type of watch, the working hours, the time of day, the basis time and the salary codes to be used. It also defines in which of the rows (see below) of the column the allocation is needed. A column may be optional. If so, the system will try to allocate resources to the column during the automatic planning procedure if it is possible.
Rows A row represents one day in the planning chart. For planning purposes, each activity can only be placed on one day but may of course stretch over a duration of 24 hours. The starting day dictates the placing of an allocation. The rows stretch from the starting point to the finish point of the planning period.
Cells At the "intersection point" between a column and a row a cell is generated. Each cell that comprises an activity must be matched with precisely one allocation unit (one person covering one allocation). Each allocation unit inherits its definition from the column definition, but this may be overruled with a local content (local, human overruling).
Automatic and manual resource chart generation The automatic resource chart generation is not able to break any defined rules that are approved by the administrator. Furthermore, the automatic resource chart generation is not able to perform allocations that conflict with the collective agreement for the specific employee. In connection with the manual scheduling and/or the optimization procedure, all decisions can be made by the administrator. Rules
Each allocation unit is tied to a set of rules. The rules may be:
• Resource-bound, or
• Competence-bound A resource-bound rule may for example describe a list of named employees, one of which must be allocated to the task. The list may be prioritized or non-pπoπtized. A competence- bound rule may e. g. describe a list of one or more competences that must be allocated to a task. Also this list may be prioritized or non-prioritized The list can be combined with one or more competences that may not be found with the employee that is allocated to the task. The two types of rules may be combined in one allocation unit.
Each resource can put forward a set of generic or specific wishes. Generic wishes will apply to one or more rules that influences on more than one allocation unit. Specific wishes apply to precisely one allocation unit. Wishes can be either "additive" or "rejective". An example of an "additive" wish is: "I would like to work morning shifts" whereas a
"rejective" wish could be: "I do not want to work Fridays". Every wish (generic or specific) can be promoted to a rule by the administrator.
System preferences are used by the administrator as a tool to arrange introduction runs as well as tutorial passes of new employees and can be defined as a set of specific wishes for one specific resource.
The collective agreement is a set of rules that describes the demands for working time, resting time, efficiency, types of tasks/shifts etc. Each individual resource is allocated to one single collective agreement. The collective agreement comprises a set of variables and a number of specific functions. The following applies to a collective agreement (as defined in the method):
• Each body of the collective agreement matches precisely one resource
• Each collective agreement may be instantiated with variables from the collective agreement, variables from a local agreement and variables from a specific resource
• The collective agreement recognises every fιlled-ιn watch for each specific resource
• The collective agreement can compute efficiency and basis time based on knowledge of current allocations
• The collective agreement determines whether a specific watch/task starting from the current allocations can be filled in • The collective agreement indicates the fairness of an actual allocation for a specific resource in relationship to historical bookings of the resource and the collective agreement
• The collective agreement indicates holiday and weekend fairness in relationship to the collective agreement.
There is always an intention behind any allocation in a complete resource planning schedule. The decision strategy for each allocation is highly variable and depends on other allocations and earlier decisions. A single allocation can be more or less appropriate (legal) based on previously decided parameters and there are basically three system strategies for making a single heuristic allocation :
1. Steepest climb, in which the most legal allocation is the only legal allocation.
2. First fit, in which the first found legal allocation is implemented.
3. Hill climbing, in which an allocation must be neutral with respect to other possible allocations to be accepted.
One problem when using one of these strategies in all cells of a chart is that the composition of all the single decisions does not necessarily yield the most optimal schedule in total.
Meta-heunstics To optimize the total sum of decisions, meta-heuπstics are used in each chart. Two possible meta-heuπstics may be applied depending on the chart and the problem:
1. Search for "taboos", in which predefined illegal decisions block an allocation in a single cell even though the taboo is defined in a distant cell or chart.
2. "simulated annealing", in which several single solutions (even illegal) in each cell is accepted ab initio, owing to a high degree of freedom. Resources are allocated to all cells. As each step in the process continuously lower the degree of freedom, only a few possible solutions in each cell fit the resulting optimal chart. Some cells may comprise illegal solutions but the process still generates the most optimal chart possible.
Even with the use of meta-heuπstics, it still remains problematic that a complete, optimized resource chart may comprise thousands of single cells, thus rendering a single logic used for complete scheduling with an astronomical number of variants as the result, which for practical purpose is inaccurate with respect to all the earlier mentioned possible ways of making decisions regarding one single cell.
The method and system according to the invention comprises several layered charts each comprising one or more different rules of allocation and each chart being subject of different configurations dependent on human control or rulings thereby limiting the number of meta-heuπstic solutions and the need for adapting appropriate logics to each allocation, which makes it possible to identify the reason for each allocation in later changes of the complete and optimized chart
Each chart is comprised of single allocations in each cell having a value of algorithmic legality and meta-heuπstic legality with respect to allocations in other cells in earlier charts and other cells in the actual chart. The interrelationship between allocations in individual charts is described by rules in each cell affecting the other cells, by a value in each cell and by chart hierarchy A set of rules by which the system defines one or more critical/mandatory cell allocations as the roots of a later conflict is set up. As a consequence, the system distinguishes between legal and illegal substitutions of allocations that can solve later conflicts.
Actual process of the automatic planning procedure
Below is presented the central algorithm for generating an optimized resource chart with the method according to the invention incorporating the use of meta-heuπstics as previously described. The algorithm is to be construed as a general outline for the method which means that it is representative for all three "steps" of the chart generation procedure as earlier described.
For each kind of collective agreement (representing different staffing groups) the algorithm may be altered to reflect specific aspects of the different agreements.
For all of the activities/tasks identified in the initial task list the following iteration is run : Set SelectedResource to empty Set BackupResource to empty
Load possible resources (in compliance with the collective agreement) IF Possibleresources > 0 THEN
Iterate for each individual resource If SelectedResource is empty, set to current resource
OR: fl = WιshFaιrness(PresentResourceCurrent), f2 = WιshFaιrness(SelectedResource) IF fl < f2 and f2 > 10 or fl=0 and f2=0 THEN If FairnessIndicatorParameterfSelectedResource) >
SelectedResource = PresentResource OR
BackupResource = PresentResource OR THEN
IF GrantedWιshes(SelectedResource) < GrantedWιshes(PresentResource) THEN SelectedResource = PresentResource OR IF PossibleResources for the task > 0 THEN
SelectedResource = PossibleResourcesfO]
IF SelectedResource IS NOT EMPTY and BackupResource IS NOT EMPTY THEN IF IsWishCSelectedResource) AND IsWιsh( BackupResource) THEN
SelectedResource = BackupResource IF SelectedResource IS NOT EMPTY THEN Book(SelectedResource)
Examples of solving conflicts A problem faced in any scheduling process is a conflict between two apparently mandatory rules. This could be a usual specific allocation to a specific cell that is met by a rare but important allocation such as a highly specialized function that has to take place a certain weekday confronted with a rare important personal demand in another cell. In this situation the system asks the administrator to set up an isolated hierarchy for future planning procedures or alternatively to set up this conflict to be presented to the administrator every time this conflict appears in the future.
In other situations a personal wish of freedom conflicts with a roster allocation in the scheduling process. In this case the system searches for alternative heuristic or meta- heuπstic solutions in the roster allocation in the basis chart that makes the freedom wish possible. Depending on the type of freedom wish, it is possible to define how radically the system searches for alternative solutions in previous charts. One example could be: a senior consultant wishing freedom to travel owing to a job-related conference which results in a more radical search for solutions than if the same consultant wanted freedom to go shopping. If none of the mentioned wishes are met automatically by the system, they will be presented to the administrator who sets up an isolated hierarchy for future (even possibly illegal to the system) solutions in those two situations, thus dynamically defining a criterion of illegality that is converted into a future legality.
Another problem often faced by organizations is shortage of personnel owing to sudden illness. In most cases this requires only a change in employee allocation for the current day. The possible solutions to the change are subjected to further limitation by means of a filter indicative of the present date thereby limiting the number of possible solutions and altering the definitions of legal allocations by selecting an appropriate logic to this specific problem.
Yet another example is shortage of qualified personnel owing to a change of one of the duties of the initial task list. A possible solution to this is to define different meta-heuristic legal solutions depending on time (is the change taking place the present day, near future or distant future) and (possibly by human overruling) one or more (possibly time limited) rules for securing an optimization result locally that ensures maintenance of a specific daily routine, e. g. a hospital round, while still only performing a reallocation of resources on the current day.
Yet another example is shortage of personnel owing to a sudden increase in workload. This situation may be caused by an unforeseen number of employees falling ill, if new duties are allocated to the department or if no possible substitutions are present, e. g. if an employee allocated to a night shift falls ill. This requires summoning of extra resources that must fulfil the right qualifications and not have duties on the days adjoining the night shift that are inconsistent with working those hours. Also a historical account of similar events is taken into consideration, e. g. so that no one is summoned five times in a row.
Priority Applications (2)
|Application Number||Priority Date||Filing Date||Title|
|Publication Number||Publication Date|
|WO2007090410A1 true WO2007090410A1 (en)||2007-08-16|
Family Applications (1)
|Application Number||Title||Priority Date||Filing Date|
|PCT/DK2007/050014 WO2007090410A1 (en)||2006-02-06||2007-02-02||A method and system for resource planning|
Country Status (1)
|WO (1)||WO2007090410A1 (en)|
|Publication number||Priority date||Publication date||Assignee||Title|
|US5369570A (en) *||1991-11-14||1994-11-29||Parad; Harvey A.||Method and system for continuous integrated resource management|
|JPH09146773A (en) *||1995-11-20||1997-06-06||Hitachi Ltd||Scheduling method|
|WO2001035278A1 (en) *||1999-11-10||2001-05-17||Fakhouri Sameh A||A decision based system for managing distributed resources and modeling the global optimization problem|
- 2007-02-02 WO PCT/DK2007/050014 patent/WO2007090410A1/en active Application Filing
Patent Citations (3)
|Publication number||Priority date||Publication date||Assignee||Title|
|US5369570A (en) *||1991-11-14||1994-11-29||Parad; Harvey A.||Method and system for continuous integrated resource management|
|JPH09146773A (en) *||1995-11-20||1997-06-06||Hitachi Ltd||Scheduling method|
|WO2001035278A1 (en) *||1999-11-10||2001-05-17||Fakhouri Sameh A||A decision based system for managing distributed resources and modeling the global optimization problem|
Non-Patent Citations (3)
|DJAMILA OUELHADJ: "a multi-agent system for the integrated dynamic scheduling of steel production", THESIS OF THE UNIVERSITY OF NOTTINGHAM, XX, XX, August 2003 (2003-08-01), pages COMPLETE253, XP002321065 *|
|NORBIS M ET AL: "An interactive decision support system for the resource constrained scheduling problem", EUROPEAN JOURNAL OF OPERATIONAL RESEARCH ELSEVIER NETHERLANDS, vol. 94, no. 1, 11 October 1996 (1996-10-11), pages 54 - 65, XP002391633, ISSN: 0377-2217, Retrieved from the Internet <URL:http://www.sciencedirect.com/science?_ob=MImg&_imagekey=B6VCT-3VV42S8-18-2&_cdi=5963&_user=987766&_orig=search&_coverDate=10%2F11%2F1996&_sk=999059998&view=c&wchp=dGLbVzb-zSkWb&md5=0a74845f2e36f9de6b35fab87f316c4a&ie=/sdarticle.pdf> [retrieved on 20060720] *|
|VALOUXIS C ET AL: "Hybrid optimization techniques for the workshift and rest assignment of nursing personnel", ARTIFICIAL INTELLIGENCE IN MEDICINE ELSEVIER NETHERLANDS, vol. 20, no. 2, pages 155 - 175, XP002391634, ISSN: 0933-3657, Retrieved from the Internet <URL:http://www.sciencedirect.com/science?_ob=MImg&_imagekey=B6T4K-40X8CPR-4-14&_cdi=4977&_user=987766&_orig=search&_coverDate=10%2F01%2F2000&_sk=999799997&view=c&wchp=dGLbVtb-zSkzS&md5=52ee636a2bfdc988637c0819fe605136&ie=/sdarticle.pdf> *|
|CN104956330B (en)||Workload allocations with resource perception|
|Ahmadi-Javid et al.||Outpatient appointment systems in healthcare: A review of optimization studies|
|Gupta et al.||Revenue management for a primary-care clinic in the presence of patient choice|
|Choi et al.||Self‐efficacy changes in groups: effects of diversity, leadership, and group climate|
|Eveborn et al.||Operations research improves quality and efficiency in home care|
|Applegate||Technology support for cooperative work: A framework for studying introduction and assimilation in organizations|
|Anavi-Isakow et al.||Managing multi-project environments through constant work-in-process|
|Testi et al.||A three-phase approach for operating theatre schedules|
|US7103562B2 (en)||System and method for generating forecasts and analysis of contact center behavior for planning purposes|
|US7725339B1 (en)||Contact center scheduling using integer programming|
|US7003475B1 (en)||Computer implemented resource allocation model and process to dynamically and optimally schedule an arbitrary number of resources subject to an arbitrary number of constraints in the managed care, health care and/or pharmacy industry|
|US8571912B2 (en)||Method and system for allocating specific appointment time windows in a service industry|
|Hahn-Goldberg et al.||Dynamic optimization of chemotherapy outpatient scheduling with uncertainty|
|Fricke et al.||Managing multiple engineering projects in a manufacturing support environment|
|ES2155678T5 (en)||Resource allocation.|
|US7539627B2 (en)||System and method for forecasting workload and resource requirements in a call center/help desk|
|Kendall et al.||A tabu search hyper-heuristic approach to the examination timetabling problem at the MARA university of technology|
|Pérez et al.||Stochastic online appointment scheduling of multi-step sequential procedures in nuclear medicine|
|US6415259B1 (en)||Automatic work progress tracking and optimizing engine for a telecommunications customer care and billing system|
|Van Riet et al.||Trade-offs in operating room planning for electives and emergencies: A review|
|He et al.||The timing of staffing decisions in hospital operating rooms: incorporating workload heterogeneity into the newsvendor problem|
|Bard et al.||Hospital-wide reactive scheduling of nurses with preference considerations|
|Puente et al.||Medical doctor rostering problem in a hospital emergency department by means of genetic algorithms|
|Laslo et al.||Resource allocation under uncertainty in a multi-project matrix environment: Is organizational conflict inevitable?|
|US20150154528A1 (en)||Task manager for healthcare providers|
|121||Ep: the epo has been informed by wipo that ep was designated in this application|
|NENP||Non-entry into the national phase in:||
Ref country code: DE
|122||Ep: pct application non-entry in european phase||
Ref document number: 07702528
Country of ref document: EP
Kind code of ref document: A1