Constructing nurse schedules at large hospitals

Size: px
Start display at page:

Download "Constructing nurse schedules at large hospitals"

Transcription

1 Intl. Trans. in Op. Res. 10 (2003) INTERNATIONAL TRANSACTIONS IN OPERATIONAL RESEARCH Constructing nurse schedules at large hospitals Tiago M. Dias a, Daniel F. Ferber b, Cid C. de Souza c and Arnaldo V. Moura d a Electrical and Computing Engineering School, University of Campinas, Brazil tdias@fee.unicamp.br, supported by FAPESP, grant 00/ b Institute of Computing, University of Campinas, Brazil ra991569@ic.unicamp.br, supported by FAPESP, grant 00/ c Institute of Computing, University of Campinas, Brazil cid@ic.unicamp.br, supported by FINEP (ProNEx 107/97) and CNPq (300883/94-3) d Institute of Computing, University of Campinas, Brazil arnaldo@ic.unicamp.br, supported by FAPESP, grant 99/ Received 11 May 2002; accepted 1 April 2003 Abstract Several heuristics, based on evolutive algorithms and local search, are used to solve the nurse scheduling problem at a large hospital. Due to several intricate and specific restrictions imposed on the schedules, the problem is a difficult one to solve by hand. Moreover, some of the restrictions have a subjective value attached to them, and this constrains the use of exact methods that search for global optima. In order to facilitate the use of the solver modules by the hospital staff, a user interface was also implemented. Keywords: nurse, scheduling, heuristics, genetic algorithm, tabu search 1. Introduction The School Hospital at the University of Campinas, Brazil, is a large facility. In its technical staff, there are about 30 specialized nurses on supervisory duties and approximately 1500 specialized nurses and other general health professionals. Counting by medical specialties, the hospital manages about 30 infirmaries. Monthly, the nurse department has to construct a work schedule that accommodates all staff members. This schedule is constrained by a number of subjective restrictions, such as preferences for days off, and special as well as legal restrictions, such as a maximum on the number of consecutive work days allowed, among many others. Some of these restrictions are clearly in conflict. Moreover, it is always convenient to obtain a work schedule that not only satisfies all restrictions, but also attains some optimization criteria, such as minimizing the number of extra working hours. If done by hand, the construction of the work schedule consumes a considerable number of hours from the nurse department staff, including all supervisor nurses. It is therefore desirable to r 2003 International Federation of Operational Research Societies. Published by Blackwell Publishing Ltd.

2 246 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) automate this process as much as possible. We describe a heuristic approach to the problem of constructing such duty schedules that has proven to work very well in practice. The solvers are based on genetic programming and on tabu search techniques. Details of the implementation are discussed. The algorithms have been tested on real data and several results are presented and compared. The users interact with the solvers by invoking a friendly interface. Such an interface is important because otherwise the hospital staff would not be able to interact and operate the solver modules that construct the work schedules. Given the many subjective restrictions that apply to the problem, it is difficult to select an optimal solution among several good ones. Also the solvers, being based on heuristics, are not guaranteed to produce the best possible solutions, in any sense. Therefore, it is advisable to provide means for the user to adjust the solutions that are automatically generated by the solvers. The interface (Dias et al., 2002) was designed to allow for this possibility, although the details of its implementation will not be discussed here. The article is organized as follows. The next section describes the nurse scheduling problem and discusses the specific restrictions that apply to the variant of the problem that will be treated here. This is followed by a discussion about genetic heuristics in general and its application to the current problem, when test cases and performance measures are also presented. Next, tabu search techniques are introduced, and a number of implementation ideas specific to this problem are discussed. Some results on real data obtained using tabu search heuristics are also presented. The next section compares the results obtained with both techniques. Finally, the last section offers some concluding remarks. 2. The nurse scheduling problem Scheduling problems, in various guises, have been extensively studied (Schaerf, 1995; Fang, 1994; Yunes et al., 2000; Jan et al., 1994; Collingwood, 1995). In general, these problems can be shown to be NP-hard (Garey and Johnson, 1979). As a consequence, these are inherently intractable problems, in the sense that no efficient, i.e. polynomial-time, algorithm is known to solve them. Yet, scheduling problems can be very sensitive to the particular restrictions that are brought to bear on them. An algorithm that produces satisfactory solutions to a particular problem might not perform well when applied to the same instances, when a group of restrictions has been altered in what may seem a superficial manner. The School Hospital of the University of Campinas is a sizable facility that is a reference in medical care for a large group of inhabitants in the metropolitan area of Campinas, Brazil. The nursing department has a staff in excess of 1500 professionals that manage over 30 infirmaries, in several medical specialties. Monthly, the head of the department must construct a work schedule for the next month, distributing the shift duties among all technical staff without jeopardizing the high standard of quality the hospital is known for, while still guaranteeing that the schedule satisfies a number of soft and hard restrictions. This is a large and very difficult scheduling problem. Most restrictions are common to all infirmaries, and it is rare for some infirmary to impose very specific restrictions on the work schedule. Also, due to specialized training, it is not common to have professionals that are qualified to work on several infirmaries. On these grounds, the work schedule problem can be simplified by taking each infirmary independently. But even in this case,

3 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) the staff number in some infirmaries can be in the dozens. Taken over a period of a month, manually constructing the work schedule for such infirmaries is still a challenge. In this work, this simplification was assumed and the intensive care unit, a typical infirmary, was used as a source for real data and tests. In the remainder of this section the problem restrictions are presented in more detail. The duties are scheduled in three shifts: morning, evening and night shifts. Usually, a person that works on one of the three shifts does not work on the other ones. The only exception is when some professional is working extra hours in order to fill in for someone else. But extra hours are negotiated by the administration and the technical staff on a case by case basis, and so this requirement is of no concern to the algorithms. Also, from the standpoint of a scheduling problem, the night shift is a simple one. All night shift personnel are scheduled on a cycle of 12 hours of work followed by 60 hours off work, this being a simple problem. Hence, the restrictions that follow are for all morning and evening shifts in all infirmaries. Based on its medical specialty, on the number of beds and from experience, each infirmary stipulates a minimum number of graduate nurses and of support personnel that must be on duty every hour, in order to maintain the standard of service the hospital must attain. These numbers may vary from weekdays to weekends and to holidays. The user can easily enter these data from the interface and, in fact, the user can specify a different number for each day of the month. The software knows about weekends and fixed holidays. Once saved in a specific file, the data can be automatically read back from this file every time the program starts, so that in the future the user has to input only adjustments, if any. For each staff member, some days can be marked as days of absence. This accounts for sick leave, vacations and similar absences. The number of days off each staff member is entitled to in the current month must also be indicated. This number may vary from one professional to the other, depending on past work history. Before the schedule is constructed, each staff member can indicate preferences for any number of days off in the month. The system user indicates the minimum number among the preferred days that must be effectively chosen as days off in the proposed schedule, for each staff member. In addition, specific days can be singled out and must be chosen as days off by the algorithms. Finally, a certain fraction of the days off must be made to coincide with weekends. This number can vary among the professionals, but the algorithms must try to schedule days off at weekends on an equal basis among all professionals. All this data is input to the algorithms by the user through self explanatory forms that are activated by the interface. There is a certain limit on the maximum number of consecutive days anyone is allowed to work. A minimum on the number of consecutive work days can also be specified. This will prevent the algorithms from alternating between single work days and single days off. These minimum and maximum numbers are common to all staff members, and the interface makes it easy for the user to input them. Finally, there must be a special arrangement to accommodate people who are assigned to training courses during a certain period. If marked as in training, a staff member must be scheduled to work during weekends and must take off all weekdays. There is also the necessity to treat the opposite situation, when some staff member is assigned to work through all weekdays and takes off all weekends. As an example, Table 1 shows the minimum number of graduate nurses and support personnel that are needed at the Clinical Emergency and at the Trauma Surgery infirmaries. An entry in the form n/m indicates n available professionals, m from which must be on duty.

4 248 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) Table 1 Necessities at a typical infirmary. Weekdays Weekends/Holidays Morning Evening Morning Evening Nurses 6/4 5/4 6/4 5/4 Support 13/9 12/9 12/8 11/8 The nurse scheduling problem for the School Hospital is how to distribute the work days among its staff members, in all infirmaries, in such a way as to satisfy all these restrictions. The schedule constructed must use the minimum possible number of extra working hours, among all feasible schedules. In addition, the system user may impose a limit on the maximum number of extra hours that is allocated in any single day, as well as a maximum on the total number of extra hours that are necessary during the whole month in order to operate the schedule. 3. Evolutive heuristics Evolutive programming, and in particular genetic algorithms, have been successfully used to solve a number of different scheduling problems (Wren and Wren, 1995; Dorigo, 1989; Burke et al., 1995; Colorni et al., 1989; 1990; 1992; Filho and Lucena, 2001). In an evolutive heuristics, each candidate solution is encoded in a data structure, called a chromosome. A fitness function takes as input a chromosome and computes a measure of quality of the solution encoded in the chromosome. The heuristics maintains a set of chromosomes, called a population, and uses the fitness function to evolve the population over time, improving the quality of the best solution constructed as it advances. In general, the fitness function incorporates a penalty for each restriction that is violated and the process searches for chromosomes with values for the fitness function as low as possible. At each evolution cycle, pairs of chromosomes, called parent chromosomes, exchange information giving rise to new individuals, an operation called recombination. In addition, each new chromosome can undergo another transformation, called a mutation. In a clear analogy to natural selection, the heuristics main theme is centered around the idea that the best fit chromosomes will pass their good characteristics onto the future generations, thereby preserving and improving such characteristic as the whole population evolves. The strategy for selecting the parent chromosomes, the specifics of the operations of recombination and mutation usually all involve randomized choices. The iterations are performed until no further improvements are registered for a number of cycles, or until a maximum number of cycles is reached. The whole process admits an enormous number of variations. Among its most distinctive characteristics is the fact that there are no restrictions on the form of the fitness function, and the flexibility to associate penalty values to each restriction that is violated in any way that is appropriate, including non-linear criteria. More details can be found in the specialized literature (Fang, 1994; Schaerf, 1995; Collingwood, 1995; Beasley and Chu, 1996; Jan et al., 1994; Reeves, 1997) or in a number of good books (Banzhaf et al., 1998; Ladd, 1995; Davis, 1991; E., 1989).

5 3.1. Implementation T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) The genetic algorithm was implemented as a set of classes in C11. In order to attain maximum flexibility, a set of generic classes were defined. From these classes, objects can be instanced to implement particular data structures and strategies that, together, realize a particular implementation of the genetic paradigm. Next, some details of the implementation are discussed. A fuller account can be obtained from Dias et al. (2002) Classes and methods In the implementation the most important classes are: Population: A class of objects that can handle two populations, each with a certain fixed number of chromosomes. Each individual can be coded in an arbitrary data structure, be it a simple array of bits or more complex structures, e.g. trees and graphs. An index may be used to refer to a particular chromosome. Recombination: This class computes two new chromosomes, given a pair of chromosomes as parameters. If more than one operator is present, the algorithm makes a choice among them depending on some weight value, calculated by a function that is also passed as a parameter. Mutation: This class is similar to the preceding one in permitting the selection of one among several mutation methods. With respect to the chromosomes that will undergo a mutation, it is possible to apply the mutation operator on all of them, or to choose just one of them using a certain weight function as a parameter. Fitness: Given a certain solution, this class computes a numeric value that measures the quality of the solution. The larger the value, the better the solution. Filter: Sometimes it is convenient to adjust the values computed by the fitness function in order to prevent undesirable behavior of be algorithm, such as premature convergence. This class can be used to specify an operation to be applied on the fitness value, in an attempt to avert undesirable behavior. Selection: This class specifies the strategy for selecting pairs of parent chromosomes. It is one of the important factors that will influence the algorithm behavior and basically, any method can be coded in this class. Initial solution: This class is responsible for generating the initial population. Any method can be used Penalties The cost of a solution is the sum of the penalties associated with the solution. The search procedure seeks to maximize the fitness value of a solution, which is the inverse of its cost. When dealing with large cost values, this approach can blur the distinction between different solutions. As a counter-measure, the fitness values are linearly spread over a more convenient interval. Given a population, a linear transformation maps the minimum cost of a chromosome in the

6 250 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) population to a maximum fitness value, and maps the maximum cost of a chromosome in the population to a minimum fitness value. Intermediate fitness values are, then, taken from this linear transformation. The minimum and maximum fitness values are held constant throughout the execution of the algorithm. Given a solution, it is examined for restriction violations. For each restriction r that is violated, the penalty associated to r is p r 5 a r 1 (n 1)b r, where n is the deviation of r with respect to the allowed limit, and a r and b r are fixed integer constants associated with r. This scheme allows the algorithm to associate distinct weights to the first and remaining violations of the same restriction. Penalties are computed by examining the schedule associated with each staff member, in turn. As the algorithm scans the schedule associated with some staff member, it checks for restriction violations and charges the corresponding penalties, as appropriate. The penalty associated with the whole solution is obtained by summing over the penalties associated with all staff members. Next, it is explained how the algorithm charges for the most important restriction violations. Consecutive work days: Let m and M be the parameter values that specify the minimum and maximum number of consecutive working days for a particular staff member. Her work schedule is scanned from the first to the last day of the month, noting the number of consecutive work days that appear. Let s be one of these values. If s 4 M, the algorithm charges s M violations; if it finds that s o m, it charges m s violations. Note that, in fact, the algorithm must start its scan from the next to last day of the previous month when this person was off duty, if any. For that, it is enough to look back over the last M days of the schedule associated with the same staff member in the last month. Days off at weekends: Assume that the algorithm must attribute d days off that coincide with a weekend to a certain staff member. Let u and s be the number of days off on Sundays and Saturdays, respectively, that the present solution associates with this professional. Let w be the number of complete weekends that are marked as days off for this same person. If the algorithm finds that wod, it charges d w violations. In addition, the algorithm computes a number h 5 ru1ys1mw, where r, y and m are universal constants that measure the relative importance of getting days off on Sundays, Saturdays and complete weekends. Let m be the minimum value of h among all workers. For each staff member, the algorithm also charges h m violations. This penalty value stresses the importance of balancing the distribution of weekends as off work among all the staff. Preferences: Let p be the number of days that a certain staff member has indicated as her preferences for days off. Let m denote the integer parameter that indicates how many days off the algorithm ought to attribute to this professional. Let d be the number of days off that actually are among the preferred ones, in the present schedule for this staff. If domin(p, m), the algorithm charges min(p, m) d violations. On the other hand, if momin(p, d) then the algorithm charges p m violations, although with much smaller coefficients. The latter makes it more attractive for the algorithm to attribute a number of days off that is closer to the minimum necessary. Extra duties: Let e i and m i be the number of staff on duty on day i and the minimum number of staff that must be on duty on day i, respectively. Whenever m i oe i, the algorithm charges e i m i

7 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) violations, using light weight coefficients. If m i 4e i, the algorithm also charges m i e i, violations, but with heavier weights. In tests where the penalty imposed in this last case was a constant value, the solutions proved to be inferior, with a tendency to concentrate extra hours in a small number of days. Let M be the maximum number of staff that can be on extra duty work on any day. If e i 4m i 1M, the algorithm charges M1m i e i violations and uses much larger coefficients in this case. Of course, the penalties for these violations are summed over all days in the month. Absences and days off: The implementation, discussed below, guarantees that there are no violations with respect to these two items. As a consequence, no violations are charged by the algorithm with respect to any of these items Recombination and mutation The schedule associated to each staff member is encoded as a sequence of bits. The number of bits is given by the number of days that she is not on a leave of absence during the current month. Since only potential working days are represented, there will be no violations on the requirements that concern the days some staff member is on leave of absence. Also, the first schedule will be created in such a way as to guarantee that each staff member is allocated the correct number of days off, as specified by the system user. Moreover, the recombination and mutation operators will maintain this property as the population evolves, thereby establishing that there will be no room for violations on the number of days off at the final solution. A chromosome, then, is formed by concatenating the sequences of bits that represent the schedules of the various staff members in a particular order. The initial population is generated randomly, each chromosome in turn. In each chromosome the sequence of bits that codes the schedule are created one at a time. For each staff member, a number of active bits equal to the number of work days associated with this staff member is chosen randomly. In this way, the number of work days for each staff member is set correctly in the initial population. Three recombination schemes were implemented. In the first scheme, a random sequence of whole schedules is interchanged between the two chromosomes. Of course, this guarantees that the number of work days remains correct in the new pair of chromosomes that are created. In the second method, a pair of chromosomes is scanned for the viable cut points. A cut point is viable if the number of active bits to the left of the cut point is the same in both chromosomes. Given the set of viable cut points, one of them is selected randomly and the recombination method exchanges the pair of suffixes between the parent chromosomes. Clearly, the viable cut point property guarantees that the number of work days will remain correct in the offspring. The third scheme is a variation of the second one. Here, the sets of viable cut points is obtained for each staff member, in turn. The recombination method then chooses randomly a cut point for each staff member and interchanges the suffixes of the corresponding sequences of bits for each staff member. Mutation operates over each chromosome. Given a chromosome, the operator chooses in a random manner the segment of the chromosome corresponding to a staff member. Next, the

8 252 method randomly chooses two opposite bits in this particular segment and interchanges their positions. It is clear that number of work days is not changed by the mutation operator Results The generation of the initial population and the recombination and mutation operators all involve randomization. In order to obtain averages, all tests cases were repeated 15 times. There was no significant variation on the run time. All runs took about 2 minutes in a typical desktop PC with a 600 MHz AMD Athlon processor. The values for the penalty weights were obtained after some preliminary experimentation with the algorithms. Once determined, the values were kept fixed during all subsequent experiments. Table 2 lists the weight values, where a and b indicate the weight for the first violation and for the deviation from allowed limit of violations, respectively. The algorithm also computes the relative importance of days off at weekends using the expression 1 u1l s13 w, where u, s and w are the number of days off at Sundays, Saturdays and on complete weekends, respectively. The relative a and b weights used to charge for violations in this last case were both set to 1. Other important parameters controlled the execution of the genetic algorithm. They are listed in Table 3 and were also fixed, after experimentation indicated a good compromise between solution quality and running times. The elite value indicates how many of the best chromosomes are copied to the next generation. The recombination percentage indicates what fraction of the population undergoes recombination. The remapping interval gives the interval used for the linear remapping of the inverse of the fitness function Comparison with manual solutions A total of 12 real instances were used for tests and comparisons between the manual solutions and the schedules produced by the genetic algorithm. The data for these instances were all taken from the Clinical Emergency and the Trauma Surgery infirmaries. In all tests, the solutions produced by the algorithm were considerably better than the corresponding manual solutions constructed by hand by the hospital staff. It was typical for the manual solutions to exhibit an average of 20 violations. By contrast, none of the best solutions Table 2 Weight values. T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) Violation a b Worker in excess 10 5 Worker deficit Above maximum consecutive work days Below minimum consecutive work days Above maximum days off Below minimum days off Below minimum days off in weekends Below minimum days off at preferred days Other preferred days as work days Above maximum extra workers per day

9 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) Table 3 Parameter values. Parameter Value Number of generations 6000 Population size 250 Elite size 1 Recombination percentage 99% Mutation probability 20% Remapping interval 2 7 Table 4 Number of violations. Instance Best Average Worse Instance Best Average Worse generated automatically had a single violation. The worst case among all schedules produced by the algorithm presented only 4 violations. Table 4 lists the number of violations that were detected in all instances. In the manual solution a number of professionals were assigned no days off during a whole weekend. The algorithm was able to accommodate at least one weekend off for all professionals and, moreover, the majority among them were off work for two weekends. On the other hand, staff members that received only one complete weekend off were assigned more weekend days off. Counting the total number of weekend days off, the algorithm managed to keep a better balance when compared with the manual solution, maintaining the maximum difference at one. The number of preferred days off was also always attained by the algorithm. It is worth noting that the manual solution also satisfied this restriction, since the schedule was constructed by first assigning each staff member a minimum of her preferences as days off. Both the manual and the automatic solutions always required the minimum of extra duty calls. The solutions produced by the genetic algorithm, however, showed a more even distribution of extra duty hours throughout the month. Figure 1 shows the results obtained for the third instance listed in Table 4. In Fig. 1(a), the value of the best, average and the worst solutions are plotted for each of the three recombination schemes discussed above. The vertical axis gives the solution cost, measured by the value of the objective function. Fig. 1(b) shows the convergence trace for the first recombination scheme as the population evolved against the value of the objective function. Plots for the other two recombination schemes showed very similar results. As can be observed from this figure, all three schemes behaved in a very similar way. This was typical for all runs.

10 254 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) Table 5 Comparing the three recombination schemes. Fig. 1. A run of the genetic algorithm. Inst. Scheme 1 Scheme 2 Scheme 3 Best Aver. Worst Best Aver. Worst Best Aver. Worst Table 5 summarizes the results obtained with the genetic algorithm on all test instances, when comparing the relative efficiency of the three recombination schemes. The figures reflect the cost values of the various runs. Note that the cost values may be positive even when there are no violations. The reason for this is that penalties may be charged even when there are no violations, as is the case, for instance, when extra duty hours are scheduled within the allowed maximum. 4. A tabu search algorithm Several heuristics and meta-heuristics procedures have been investigated and applied to a vast number of optimization problems (Reeves, 1995). Among them tabu search (Glover, 1989; Glover, 1990) has proven to be very effective on a variety of problems. In general, tabu search starts with an initial solution which has been previously constructed, and runs through an iterative

11 process by means of which it seeks to improve the objective function value of subsequent solutions (Schaerf, 1996; Glover and Laguna, 1997; Glover, 1989; 1990; Laguna, 1995; Glover and Laguna, 1995). At each iteration, the method searches for the best candidate in some neighborhood of the current solution. The neighborhood definition is one of the central issues of the method. In order to avoid cycles, the algorithm keeps a dynamical list of prohibited moves and, in contrast to more classical hill climbing local search methods, the algorithm might, at some point, migrate to a solution that is actually worse than the current solution. The iteration proceeds until some halting criterion is met. A great number of variations and refinements are possible (Glover and Laguna, 1997). As is usual with heuristic methods, there are always a fair number of parameters that have to be adjusted so that the method performs well for the particular problem at hand Implementation T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) A tabu search was implemented and applied to the hospital scheduling problem. In the following items, the more noteworthy points of the implementation are discussed. As with to the genetic algorithm, the implementation was also based on a set of C11 classes and objects. The most important objects and classes were: Input and output: A class of objects that is able to read the input data from a specific file created by the user interface. These objects also record the solutions produced by the algorithm in the same file. Configuration parameters: Each run of the algorithm depends on a number of internal parameters, such as the size of the dynamical tabu list and the maximum number of iterations for a run. These objects read in the internal parameters from a file. The latter can be edited and a new run started, in order to test the behavior of the algorithm under a different set of parameters. Penalty parameters: As with the genetic algorithm, the tabu search heuristics seeks to minimize an objective function that sums up penalties that are attributed to rule violations, given a solution to the hospital problem. The relative weights assigned to these penalties form a very important set of parameters that influence the behavior of the algorithm. All these weight parameters are also read in from the parameter file. Two different kind of penalties were considered. There are a set of penalties that are charged only once, when a first violation of a particular restriction is detected. Examples of such restrictions are the minimum number of working staff members in a day and the minimum number of days off attributed to a particular staff member. A second kind of penalty has a cumulative effect, based on a measure of the deviation provoked by a violation, where the penalty charged is more intense as the deviation increases. For example, if the maximum number of consecutive work days is exceeded, the penalty charged is more intense when there are more days in excess with respect to the maximum allowed. Data structures: These objects describe the encoding of a solution. In the present implementation, a solution was encoded in the form of a rectangular matrix, where the lines represent staff members and the columns represent the days in the month. Other representations can easily be accommodated by reprogramming only this object, the rest of the implementation remaining as is.

12 256 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) Cost of a solution: These objects are used to calculate the cost of a solution, given that the solution is encoded as a data structure object. A run: A run of the algorithm is controlled by these objects. They store the current and the best solutions, and manipulate encoded solutions and, more importantly, they embody the neighborhood definition for the problem at hand Initial solution The simple idea of generating a random initial solution was implemented. The initial matrix is generated line by line. At each line, a fraction f of days are marked as days off, were f is the proportion of days off to the total number of active days of the staff member corresponding to this line of the matrix. The number of active days is just the total number of days in the month from which subtracted the number of days this staff member is on leave of absence, in the present month The neighborhood The first neighborhood considered was a simple one. A neighbor was obtained by flipping the contents of a single active position in the matrix representing the current solution. An active position includes all work days and days off, but excludes days of absence. Hence, a position marked as a work day could be changed to a day off, and vice-versa. This first implementation showed good preliminary results. A second neighborhood was also developed in which the algorithm implements a two step method in order to visit the neighbors of a current solution. The two steps are carried out in a line by line fashion over the the matrix that encodes the current solution. In a first step, the algorithm searches a line from left to right. For each position d that represents a day off the algorithm locates the position l, to the left of d, such that all positions p with max(0, l)opod are work days. The algorithm, then, repositions the day off in position d to any such positions p, each repositioning corresponding to a new neighbor, where the objective function is evaluated again. A similar scan, now to the right of d, is also performed. Recall that there is a distinction between a single day off and a pair of consecutive days off. This distinction is necessary in order to differentiate between a complete weekend off and just a weekend day off. In order to maintain the distinction, these two possibilities are marked differently in the encoding of a solution. In the second step and for each new neighbor the algorithm rescans the line encoding the solution for the staff member at hand. When repositioning the day off in the first step, it is possible that a new complete weekend off is created by adjoining a new Sunday off to the right of a Saturday that was already marked as a day off, or the other way around. If that is the case, then the algorithm also considers as a new neighbor of the current solution any new solution that is created by remarking one of the complete weekends off in the current solution as two ordinary days off, and remarking the newly created pair of days off that coincide with a weekend as a complete weekend off. Any of these new solutions is also considered for evaluation. The main characteristic of this neighborhood is to avoid introducing certain violations in the visited solutions. In particular, no new violations against the minimum number of days off or the

13 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) minimum number of consecutive days off are introduced. The latter condition is guaranteed by avoiding repositionings, on the first step, that might give rise to violations of that kind. Tests using this second neighborhood showed results comparable to the ones obtained when using the first neighborhood. However, one particular characteristic of the new implementation was noticeable: the algorithm quickly obtained a very good first minimum, and from then on showed little improvement on the value of the objective function. This behavior could be a consequence of a reduction in the size of neighborhood space, given that some restrictions are now always satisfied. The results obtained with the first and the second neighborhoods appear to be complementary. The second neighborhood proved better until the first minimum is found, and the first neighborhood showed better results when searching the solution space after the first minimum was found. A new hybrid implementation was then developed. The algorithm starts with the second neighborhood until the solution does not change for a determined number of iterations. At this point, the first minimum has been found and the algorithm switches to the first neighborhood, which starts searching for a better solution in a larger neighborhood space. As can be seen from the sequel, the results obtained with this hybrid method proved to be a faster and more efficient way to construct work schedules for the hospital infirmaries Results The implementation of the tabu meta-heuristics using the hybrid neighborhood also produced high quality work schedules for the hospital infirmaries. In all cases, except with explicit mention to the contrary, the weights used to compute penalty violations are listed in Table 6. The best values for these parameters were determined by extensive experimentation. In addition, a penalty was also established for deviations from an ideally balanced schedule with respect to the number of single days off at weekends and complete weekends off. In both cases, a penalty of 10 was charged for each violation of this kind. A typical behavior of the objective function along a sequence of iterations is shown in Fig. 2. The test instance in this case was the same as instance 1 in Table 4. In order to compare the algorithm performance with manual work schedules constructed for the hospital problem, the manual solutions for instances 2 and 3 were examined and the result is shown in Table 7. The total number of restriction violations is listed under Table 6 Penalty weights for the tabu meta-heuristics. Violation Weight Minimum number days off 500 Minimum number workers per day 60 Minimum number preferred days off 400 Each preferred days off not attibuted 50 Minimum days off in complete weekends 180 Maximum consecutive work days 500 Minimum consecutive work days 100 Maximum extra duty per day 20

14 258 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) Table 7 Manual and automatic work schedules. Fig. 2. A typical run for the meta-heuristics. Inst. Manual Tabu search NV EDH NV EDH column NV, and the total number of extra duty hours were annotated under column EDH. It is clear that the automatic solution is superior, when the number of violations are compared. All violations present in the manual solutions were due to days off too close, that is, the restriction on the minimum number of consecutive workdays was not being observed. The automatic solution corrected these distortions. With respect to the total number of extra duty hours, the manual solution was close to the best possible value of 41 in the first test case, and managed to attain the best value of 29 in the second test case. Since the real cost of extra labor is the most important factor of over budget at the hospital, the infirmary supervisors always try to keep it to a minimum. Even with this extra care, however, when the number of staff members working in an infirmary reaches 8 10, the manual solution almost always fails to attain the minimum number of extra duty hours. A number of tests addressed the effect of using different initial solutions and the effects of single modifications of some important penalty weights. In all cases the algorithm was exercised against all the real test instances that appear in Table 4. The following items collect observations about the results of these tests Different initial solutions Different initial solutions caused a small difference of 1 5% on the final value of the objective function, when the algorithm was tested across all infirmary data. In three typical runs over

15 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) instance number 12, the best values of the objective function were 5554, 5548 and 5471, when the same infirmary data were used and the algorithm was allowed to start at different initial solutions. Plots of the values of the objective function can be seen Figs. 3 and 4, for the best and worst among these three cases, respectively. The plots start at the first iteration were a local minimum was detected, although, in the case of Fig. 3, this initial value was somewhat higher and decreased sharply. Note that the value of these local minima differ, as can be seen from the figures. It is clear that the initial solutions can influence the behavior of the algorithm. In these three cases, there were no hard restriction violations and the minimum possible number of total extra duty hours throughout the month was always attained. The difference in the objective function cost can be attributed to a few violations of some softer restrictions, such as deviations around the ideal balance on the number of days off that coincided with weekends, or deviations on the number of extra duty hours in particular days of the month. The penalties associated with these restrictions carry smaller weights, as can be seen from Table Different penalty weights A set of four important penalties were tested in order to investigate the performance of the algorithm when their associated weights were modified. The restrictions and the new weight values that were used appear in Table 8. In each test case, the indicated parameter values were altered, with the other parameters remaining fixed. The results appear in Table 9. The algorithm behavior was tested by noting the number of restriction violations under the column labeled NV, by writing the cost of the objective function under the column marked OF, and by registering the number of total extra duty hours throughout the month under the column labeled EDH. The total of 38 extra duty hours, attained by the base solution, is the minimum possible when all other restrictions are to be satisfied. In all cases, modifying the weights values lead to less adequate solutions to the problem, when compared to the base solution. When lighter weights are Fig. 3. Varying the initial solution, one best run.

16 260 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) Fig. 4. Varying the initial solution, worst run. Table 8 New penalty weights for selected restrictions. Test Description Base New 1 Minimum number preferred days off Each preferred day off not attributed Minimum number workers per day Maximum extra duty per day Minimum consecutive work days Table 9 Measures with new weights for selected restrictions. Test NV OF EDH Base attributed to penalties associated with the preferences for days off, the final value of the objective function decreased, but at the expense of having one staff member with only one of their preferences for days off satisfied, and another staff member with only two of their preferences selected as a day off by the algorithm. The minimum number of preferences to be associated with days off was three, in this case. Strengthening the penalty for violating the minimum number of staff members at work in a day caused a decrease in the total number of extra duty hours throughtout the month, as expected. On

17 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) the other hand, eleven severe violations were registered in this case: six staff members had one fewer day off than the minimum required, one staff member had two fewer days off and another staff had three fewer days off. The much higher value of the objective function reflected these violations. The third test revealed no violations, but showed an undesired effect not reflected in Table 9. The balance of extra duty hours per day throughout the month became much more irregular. It oscillated between the acceptable limit of two extra hours and the maximum observed of four extra hours in two days, through the month. In the fourth test, the penalty weight for violating the restriction on the minimum number of consecutive work days was decreased to one-fifth of the base value. There were no violations on the total number of extra duty hours, but the restriction on the minimum number of consecutive work days was not satisfied by the work schedule associated with two of the staff members. 5. Relative performance In principle, a direct comparison of both methods were not possible since they used different parameters to penalize violated constraints and to guide the search. However, from a practical point of view, it was important to find one set of parameters for each method which could yield good solutions, even though the fitness of a solution may vary depending on the individual responsible for the scheduling. Clearly, it would be impractical to conduct extensive computational tests in order to compare the two methods if we were to rely on human evaluations of the solutions. Thus, we have decided to compare them by measuring the cost of their solutions according to a common set of penalties that seemed to be able to capture the spirit of an adequate solution. Therefore, after results were collected, they were read by a routine that computed the costs of the solutions produced using this common set of penalties in the objective function. It should be noted, however, that each algorithm ran using its own set of penalty weights, adjusted for best performance. Only the final solutions presented had their costs measured in a uniform way. A first comparison between the genetic and the tabu search approaches, over all instances listed in Table 4, can be obtained by consulting Tables 5 and 10. Table 10 Overall performance of the tabu search algorithm. Inst. Best Aver. Worst Inst. Best Aver. Worst

18 262 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) In graphical form, the results obtained with the genetic algorithm appear in Fig. 5. In that figure, the first bar in each group indicates the value of the objective function for the worst run under the common evaluation function, the second bar indicates the values for the average over all ten runs, and the third bar indicates the value for the best run. Note that the differences between the worst and the best runs are small, showing that the heuristics proved to be robust across all tested instances. Similar results were obtained with the tabu search heuristic, as shown in Fig. 6. In all best cases, no restriction violations were found, while the total number of extra duty hours was kept to the minimum possible. Fig. 5. Genetic algorithm with costs measured in the common scale. Fig. 6. Tabu search with costs measured in the common scale.

19 T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) Fig. 7. Values for worst, average and best runs under a common evaluation function. Figure 7 depicts the exact values that were used to compose Figs. 5 and 6. From this table, it is apparent that the genetic approach produced slightly better values for the objective functions in most cases. On the other hand, the tabu search heuristic was more time efficient in most cases. In fact, the users at the School Hospital showed no particular preference for any of the two methods. All solutions produced were deemed as very adequate by the School Hospital staff. In some cases, it was necessary to manually introduce only minor adjustments, and the latter were mostly due to factors beyond the control of the algorithm, such as last minute preferences, or a particular unfair schedule that occurred a number of months previously (Fig. 7). 6. Conclusions The problem of creating adequate work schedules for hospital infirmaries, subject to a large number of conflicting restrictions, is a difficult one. No exact and efficient, i.e. polynomial-time, algorithms are known to solve this class of problems. The ability to produce an adequate work schedule for all infirmaries in a fraction of the time that it used to take when only manual labor was involved was one of the most noticeable gains brought forth by automating the process of constructing work schedules at the hospital. Two heuristics, a genetic procedure and a tabu search algorithm, were developed and implemented in order to address instances of this problem that arise at the School Hospital of the University of Campinas. Both heuristics proved very efficient and were able to construct quite adequate work schedules in all real test instances provided by the hospital. The best results attained by each technique registered no restriction violations and were computed in an average of 30 seconds to 2 minutes of running time on a typical desktop PC platform. The genetic algorithm

20 264 produced slightly better solutions but, on the other hand, the tabu search implementation proved to be somewhat more time efficient. By contrast, the manual solutions to the same instances invariably presented severe restriction violations, and required days of manual work before they could be concluded. The possibility of easily introducing these adjustments through the user interface was also highly praised. A first version of the implementation, including a friendly user interface, was installed at the hospital. The interface allows the user to select which algorithm to run, either the genetic or the tabu search version and, since the user is able to save several solutions for the same instance, he can also run both methods keeping the solution which he likes most. For each heuristic, a small set of options is provided. The options differ only on the maximum number of iterations the algorithms are allowed to execute, thereby giving the user the choice of running faster or slower versions of the algorithms. This first version was used, for almost a year, by the hospital staff as an automatic aid in constructing the monthly work schedule for all the infirmaries. A second version of the implementation has also been developed. This new version had its internal data structures completely rewritten. The interface also underwent major changes, being much more flexible and configurable. The first version presented certain difficulties when adapting the algorithms to run properly in infirmaries whose operational restrictions differed substantially. The new version of the interface now has configuration facilities that render it much more amenable to parameter adjustments. This extension proved invaluable in meeting the necessities of all users. It has been installed in all infirmaries at the hospital and presently is being used routinely by the hospital staff to generate monthly work schedules. Since its installation, feedback from users has been very positive. At the time of writing two other public hospitals, colligated with the main School Hospital at the University, have also requested that the software be installed on their premises. It will be a good test for the implementation to run at other institutions which may contemplate slightly different restrictions. Acknowledgment T.M. Dias et al. / Intl. Trans. in Op. Res. 10 (2003) The authors are grateful to our colleague Tallys H. Yunes, for insightful comments during the preparation of this article. References Banzhaf, W., Nordin, P., Keller, R. E., and Francone, F. D. (1998). Genetic algorithms: An Introduction. Morgan Kaufmann. Beasley, J. and Chu, P. (1996). A genetic algorithm for the set covering problem. Available at citeseer.nj.nec.com/ beasley96genetic.html. Burke, E. K., Ellilman, D. G., and Weare, R. F. (1995). A hybrid genetic algorithm for highly constrained timetabling problems. In Eshelman, L., editor, Proceedings of the Sixth International Conference on Genetic Algorithms, pp , San Francisco, CA. Morgan Kaufmann. Collingwood, E. (1995). Investigation of a multiple chromosome evolutionary algorithm for bus driver scheduling and other problems. Master s thesis, Department of Artificial Intelligence, University of Edinburgh, Edinburgh, Scotland.

Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm

Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm Journal of Al-Nahrain University Vol.15 (2), June, 2012, pp.161-168 Science Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm Manal F. Younis Computer Department, College

More information

A Brief Study of the Nurse Scheduling Problem (NSP)

A Brief Study of the Nurse Scheduling Problem (NSP) A Brief Study of the Nurse Scheduling Problem (NSP) Lizzy Augustine, Morgan Faer, Andreas Kavountzis, Reema Patel Submitted Tuesday December 15, 2009 0. Introduction and Background Our interest in the

More information

Scheduling Breaks in Shift Plans for Call Centers

Scheduling Breaks in Shift Plans for Call Centers Scheduling Breaks in Shift Plans for Call Centers Andreas Beer Johannes Gärtner Nysret Musliu Werner Schafhauser Wolfgang Slany Abstract In this paper we consider a real-life break scheduling problem for

More information

GA as a Data Optimization Tool for Predictive Analytics

GA as a Data Optimization Tool for Predictive Analytics GA as a Data Optimization Tool for Predictive Analytics Chandra.J 1, Dr.Nachamai.M 2,Dr.Anitha.S.Pillai 3 1Assistant Professor, Department of computer Science, Christ University, Bangalore,India, chandra.j@christunivesity.in

More information

The Second International Timetabling Competition (ITC-2007): Curriculum-based Course Timetabling (Track 3)

The Second International Timetabling Competition (ITC-2007): Curriculum-based Course Timetabling (Track 3) The Second International Timetabling Competition (ITC-2007): Curriculum-based Course Timetabling (Track 3) preliminary presentation Luca Di Gaspero and Andrea Schaerf DIEGM, University of Udine via delle

More information

Comparison of algorithms for automated university scheduling

Comparison of algorithms for automated university scheduling Comparison of algorithms for automated university scheduling Hugo Sandelius Simon Forssell Degree Project in Computer Science, DD143X Supervisor: Pawel Herman Examiner: Örjan Ekeberg CSC, KTH April 29,

More information

Evolutionary Detection of Rules for Text Categorization. Application to Spam Filtering

Evolutionary Detection of Rules for Text Categorization. Application to Spam Filtering Advances in Intelligent Systems and Technologies Proceedings ECIT2004 - Third European Conference on Intelligent Systems and Technologies Iasi, Romania, July 21-23, 2004 Evolutionary Detection of Rules

More information

HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE

HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE HYBRID GENETIC ALGORITHMS FOR SCHEDULING ADVERTISEMENTS ON A WEB PAGE Subodha Kumar University of Washington subodha@u.washington.edu Varghese S. Jacob University of Texas at Dallas vjacob@utdallas.edu

More information

Software Project Management with GAs

Software Project Management with GAs Software Project Management with GAs Enrique Alba, J. Francisco Chicano University of Málaga, Grupo GISUM, Departamento de Lenguajes y Ciencias de la Computación, E.T.S Ingeniería Informática, Campus de

More information

Student Project Allocation Using Integer Programming

Student Project Allocation Using Integer Programming IEEE TRANSACTIONS ON EDUCATION, VOL. 46, NO. 3, AUGUST 2003 359 Student Project Allocation Using Integer Programming A. A. Anwar and A. S. Bahaj, Member, IEEE Abstract The allocation of projects to students

More information

Nurse Rostering. Jonathan Johannsen CS 537. Scheduling Algorithms

Nurse Rostering. Jonathan Johannsen CS 537. Scheduling Algorithms Nurse Rostering Jonathan Johannsen CS 537 Scheduling Algorithms Most hospitals worldwide create schedules for their staff by hand, spending hours trying to optimally assign workers to various wards at

More information

The Problem of Scheduling Technicians and Interventions in a Telecommunications Company

The Problem of Scheduling Technicians and Interventions in a Telecommunications Company The Problem of Scheduling Technicians and Interventions in a Telecommunications Company Sérgio Garcia Panzo Dongala November 2008 Abstract In 2007 the challenge organized by the French Society of Operational

More information

Empirically Identifying the Best Genetic Algorithm for Covering Array Generation

Empirically Identifying the Best Genetic Algorithm for Covering Array Generation Empirically Identifying the Best Genetic Algorithm for Covering Array Generation Liang Yalan 1, Changhai Nie 1, Jonathan M. Kauffman 2, Gregory M. Kapfhammer 2, Hareton Leung 3 1 Department of Computer

More information

Expert Systems with Applications

Expert Systems with Applications Expert Systems with Applications 38 (2011) 8403 8413 Contents lists available at ScienceDirect Expert Systems with Applications journal homepage: www.elsevier.com/locate/eswa A knowledge-based evolutionary

More information

An Empirical Study of Two MIS Algorithms

An Empirical Study of Two MIS Algorithms An Empirical Study of Two MIS Algorithms Email: Tushar Bisht and Kishore Kothapalli International Institute of Information Technology, Hyderabad Hyderabad, Andhra Pradesh, India 32. tushar.bisht@research.iiit.ac.in,

More information

Staff Scheduling in Health Care Systems

Staff Scheduling in Health Care Systems IOSR Journal of Mechanical and Civil Engineering (IOSRJMCE) ISSN: 2278-1684 Volume 1, Issue 6 (July-Aug 2012), PP 28-40 Staff Scheduling in Health Care Systems Mudra S. Gondane 1, Prof. D. R. Zanwar 2

More information

How To Check For Differences In The One Way Anova

How To Check For Differences In The One Way Anova MINITAB ASSISTANT WHITE PAPER This paper explains the research conducted by Minitab statisticians to develop the methods and data checks used in the Assistant in Minitab 17 Statistical Software. One-Way

More information

Fitness Evaluation for Nurse Scheduling Problems

Fitness Evaluation for Nurse Scheduling Problems Fitness Evaluation for Nurse Scheduling Problems Edmund K. Burke University of Nottingham School of Computer Science & IT Nottingham NG8 1BB, UK ekb@cs.nott.ac.uk Patrick De Causmaecker KaHo St.-Lieven

More information

http://www.jstor.org This content downloaded on Tue, 19 Feb 2013 17:28:43 PM All use subject to JSTOR Terms and Conditions

http://www.jstor.org This content downloaded on Tue, 19 Feb 2013 17:28:43 PM All use subject to JSTOR Terms and Conditions A Significance Test for Time Series Analysis Author(s): W. Allen Wallis and Geoffrey H. Moore Reviewed work(s): Source: Journal of the American Statistical Association, Vol. 36, No. 215 (Sep., 1941), pp.

More information

Clustering and scheduling maintenance tasks over time

Clustering and scheduling maintenance tasks over time Clustering and scheduling maintenance tasks over time Per Kreuger 2008-04-29 SICS Technical Report T2008:09 Abstract We report results on a maintenance scheduling problem. The problem consists of allocating

More information

each college c i C has a capacity q i - the maximum number of students it will admit

each college c i C has a capacity q i - the maximum number of students it will admit n colleges in a set C, m applicants in a set A, where m is much larger than n. each college c i C has a capacity q i - the maximum number of students it will admit each college c i has a strict order i

More information

Genetic Algorithms and Sudoku

Genetic Algorithms and Sudoku Genetic Algorithms and Sudoku Dr. John M. Weiss Department of Mathematics and Computer Science South Dakota School of Mines and Technology (SDSM&T) Rapid City, SD 57701-3995 john.weiss@sdsmt.edu MICS 2009

More information

Effect of Using Neural Networks in GA-Based School Timetabling

Effect of Using Neural Networks in GA-Based School Timetabling Effect of Using Neural Networks in GA-Based School Timetabling JANIS ZUTERS Department of Computer Science University of Latvia Raina bulv. 19, Riga, LV-1050 LATVIA janis.zuters@lu.lv Abstract: - The school

More information

A Study of Crossover Operators for Genetic Algorithm and Proposal of a New Crossover Operator to Solve Open Shop Scheduling Problem

A Study of Crossover Operators for Genetic Algorithm and Proposal of a New Crossover Operator to Solve Open Shop Scheduling Problem American Journal of Industrial and Business Management, 2016, 6, 774-789 Published Online June 2016 in SciRes. http://www.scirp.org/journal/ajibm http://dx.doi.org/10.4236/ajibm.2016.66071 A Study of Crossover

More information

A Robust Method for Solving Transcendental Equations

A Robust Method for Solving Transcendental Equations www.ijcsi.org 413 A Robust Method for Solving Transcendental Equations Md. Golam Moazzam, Amita Chakraborty and Md. Al-Amin Bhuiyan Department of Computer Science and Engineering, Jahangirnagar University,

More information

An Integer Programming Model for the School Timetabling Problem

An Integer Programming Model for the School Timetabling Problem An Integer Programming Model for the School Timetabling Problem Geraldo Ribeiro Filho UNISUZ/IPTI Av. São Luiz, 86 cj 192 01046-000 - República - São Paulo SP Brazil Luiz Antonio Nogueira Lorena LAC/INPE

More information

A Service Revenue-oriented Task Scheduling Model of Cloud Computing

A Service Revenue-oriented Task Scheduling Model of Cloud Computing Journal of Information & Computational Science 10:10 (2013) 3153 3161 July 1, 2013 Available at http://www.joics.com A Service Revenue-oriented Task Scheduling Model of Cloud Computing Jianguang Deng a,b,,

More information

Polynomials. Dr. philippe B. laval Kennesaw State University. April 3, 2005

Polynomials. Dr. philippe B. laval Kennesaw State University. April 3, 2005 Polynomials Dr. philippe B. laval Kennesaw State University April 3, 2005 Abstract Handout on polynomials. The following topics are covered: Polynomial Functions End behavior Extrema Polynomial Division

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

Scheduling Algorithm with Optimization of Employee Satisfaction

Scheduling Algorithm with Optimization of Employee Satisfaction Washington University in St. Louis Scheduling Algorithm with Optimization of Employee Satisfaction by Philip I. Thomas Senior Design Project http : //students.cec.wustl.edu/ pit1/ Advised By Associate

More information

A Shift Sequence for Nurse Scheduling Using Linear Programming Problem

A Shift Sequence for Nurse Scheduling Using Linear Programming Problem IOSR Journal of Nursing and Health Science (IOSR-JNHS) e-issn: 2320 1959.p- ISSN: 2320 1940 Volume 3, Issue 6 Ver. I (Nov.-Dec. 2014), PP 24-28 A Shift Sequence for Nurse Scheduling Using Linear Programming

More information

SIMPLIFIED PERFORMANCE MODEL FOR HYBRID WIND DIESEL SYSTEMS. J. F. MANWELL, J. G. McGOWAN and U. ABDULWAHID

SIMPLIFIED PERFORMANCE MODEL FOR HYBRID WIND DIESEL SYSTEMS. J. F. MANWELL, J. G. McGOWAN and U. ABDULWAHID SIMPLIFIED PERFORMANCE MODEL FOR HYBRID WIND DIESEL SYSTEMS J. F. MANWELL, J. G. McGOWAN and U. ABDULWAHID Renewable Energy Laboratory Department of Mechanical and Industrial Engineering University of

More information

Optimization of sampling strata with the SamplingStrata package

Optimization of sampling strata with the SamplingStrata package Optimization of sampling strata with the SamplingStrata package Package version 1.1 Giulio Barcaroli January 12, 2016 Abstract In stratified random sampling the problem of determining the optimal size

More information

Cryptography and Network Security. Prof. D. Mukhopadhyay. Department of Computer Science and Engineering. Indian Institute of Technology, Kharagpur

Cryptography and Network Security. Prof. D. Mukhopadhyay. Department of Computer Science and Engineering. Indian Institute of Technology, Kharagpur Cryptography and Network Security Prof. D. Mukhopadhyay Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Module No. # 01 Lecture No. # 12 Block Cipher Standards

More information

Intelligent Search Heuristics for Cost Based Scheduling. Murphy Choy Michelle Cheong. Abstract

Intelligent Search Heuristics for Cost Based Scheduling. Murphy Choy Michelle Cheong. Abstract Intelligent Search Heuristics for Cost Based Scheduling Murphy Choy Michelle Cheong Abstract Nurse scheduling is a difficult optimization problem with multiple constraints. There is extensive research

More information

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay

Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Information Theory and Coding Prof. S. N. Merchant Department of Electrical Engineering Indian Institute of Technology, Bombay Lecture - 17 Shannon-Fano-Elias Coding and Introduction to Arithmetic Coding

More information

2. Simple Linear Regression

2. Simple Linear Regression Research methods - II 3 2. Simple Linear Regression Simple linear regression is a technique in parametric statistics that is commonly used for analyzing mean response of a variable Y which changes according

More information

2) Write in detail the issues in the design of code generator.

2) Write in detail the issues in the design of code generator. COMPUTER SCIENCE AND ENGINEERING VI SEM CSE Principles of Compiler Design Unit-IV Question and answers UNIT IV CODE GENERATION 9 Issues in the design of code generator The target machine Runtime Storage

More information

Research on a Heuristic GA-Based Decision Support System for Rice in Heilongjiang Province

Research on a Heuristic GA-Based Decision Support System for Rice in Heilongjiang Province Research on a Heuristic GA-Based Decision Support System for Rice in Heilongjiang Province Ran Cao 1,1, Yushu Yang 1, Wei Guo 1, 1 Engineering college of Northeast Agricultural University, Haerbin, China

More information

Alpha Cut based Novel Selection for Genetic Algorithm

Alpha Cut based Novel Selection for Genetic Algorithm Alpha Cut based Novel for Genetic Algorithm Rakesh Kumar Professor Girdhar Gopal Research Scholar Rajesh Kumar Assistant Professor ABSTRACT Genetic algorithm (GA) has several genetic operators that can

More information

ESQUIVEL S.C., GATICA C. R., GALLARD R.H.

ESQUIVEL S.C., GATICA C. R., GALLARD R.H. 62/9,1*7+(3$5$//(/7$6.6&+('8/,1*352%/(0%

More information

A Hybrid Tabu Search Method for Assembly Line Balancing

A Hybrid Tabu Search Method for Assembly Line Balancing Proceedings of the 7th WSEAS International Conference on Simulation, Modelling and Optimization, Beijing, China, September 15-17, 2007 443 A Hybrid Tabu Search Method for Assembly Line Balancing SUPAPORN

More information

6 Scalar, Stochastic, Discrete Dynamic Systems

6 Scalar, Stochastic, Discrete Dynamic Systems 47 6 Scalar, Stochastic, Discrete Dynamic Systems Consider modeling a population of sand-hill cranes in year n by the first-order, deterministic recurrence equation y(n + 1) = Ry(n) where R = 1 + r = 1

More information

PLAANN as a Classification Tool for Customer Intelligence in Banking

PLAANN as a Classification Tool for Customer Intelligence in Banking PLAANN as a Classification Tool for Customer Intelligence in Banking EUNITE World Competition in domain of Intelligent Technologies The Research Report Ireneusz Czarnowski and Piotr Jedrzejowicz Department

More information

Bridging the gap between self schedules and feasible schedules in staff scheduling

Bridging the gap between self schedules and feasible schedules in staff scheduling Bridging the gap between self schedules and feasible schedules in staff scheduling Eyjólfur Ingi Ásgeirsson Abstract Every company that has employees working on irregular schedules must deal with the difficult

More information

NEUROEVOLUTION OF AUTO-TEACHING ARCHITECTURES

NEUROEVOLUTION OF AUTO-TEACHING ARCHITECTURES NEUROEVOLUTION OF AUTO-TEACHING ARCHITECTURES EDWARD ROBINSON & JOHN A. BULLINARIA School of Computer Science, University of Birmingham Edgbaston, Birmingham, B15 2TT, UK e.robinson@cs.bham.ac.uk This

More information

Genetic Algorithm. Based on Darwinian Paradigm. Intrinsically a robust search and optimization mechanism. Conceptual Algorithm

Genetic Algorithm. Based on Darwinian Paradigm. Intrinsically a robust search and optimization mechanism. Conceptual Algorithm 24 Genetic Algorithm Based on Darwinian Paradigm Reproduction Competition Survive Selection Intrinsically a robust search and optimization mechanism Slide -47 - Conceptual Algorithm Slide -48 - 25 Genetic

More information

Modified Version of Roulette Selection for Evolution Algorithms - the Fan Selection

Modified Version of Roulette Selection for Evolution Algorithms - the Fan Selection Modified Version of Roulette Selection for Evolution Algorithms - the Fan Selection Adam S lowik, Micha l Bia lko Department of Electronic, Technical University of Koszalin, ul. Śniadeckich 2, 75-453 Koszalin,

More information

Fuzzy Genetic Heuristic for University Course Timetable Problem

Fuzzy Genetic Heuristic for University Course Timetable Problem Int. J. Advance. Soft Comput. Appl., Vol. 2, No. 1, March 2010 ISSN 2074-8523; Copyright ICSRS Publication, 2010 www.i-csrs.org Fuzzy Genetic Heuristic for University Course Timetable Problem Arindam Chaudhuri

More information

The QOOL Algorithm for fast Online Optimization of Multiple Degree of Freedom Robot Locomotion

The QOOL Algorithm for fast Online Optimization of Multiple Degree of Freedom Robot Locomotion The QOOL Algorithm for fast Online Optimization of Multiple Degree of Freedom Robot Locomotion Daniel Marbach January 31th, 2005 Swiss Federal Institute of Technology at Lausanne Daniel.Marbach@epfl.ch

More information

The Goldberg Rao Algorithm for the Maximum Flow Problem

The Goldberg Rao Algorithm for the Maximum Flow Problem The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 }

More information

A Constraint Programming based Column Generation Approach to Nurse Rostering Problems

A Constraint Programming based Column Generation Approach to Nurse Rostering Problems Abstract A Constraint Programming based Column Generation Approach to Nurse Rostering Problems Fang He and Rong Qu The Automated Scheduling, Optimisation and Planning (ASAP) Group School of Computer Science,

More information

December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B. KITCHENS

December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B. KITCHENS December 4, 2013 MATH 171 BASIC LINEAR ALGEBRA B KITCHENS The equation 1 Lines in two-dimensional space (1) 2x y = 3 describes a line in two-dimensional space The coefficients of x and y in the equation

More information

Optimising Patient Transportation in Hospitals

Optimising Patient Transportation in Hospitals Optimising Patient Transportation in Hospitals Thomas Hanne 1 Fraunhofer Institute for Industrial Mathematics (ITWM), Fraunhofer-Platz 1, 67663 Kaiserslautern, Germany, hanne@itwm.fhg.de 1 Introduction

More information

The Trip Scheduling Problem

The Trip Scheduling Problem The Trip Scheduling Problem Claudia Archetti Department of Quantitative Methods, University of Brescia Contrada Santa Chiara 50, 25122 Brescia, Italy Martin Savelsbergh School of Industrial and Systems

More information

Parallel Simulated Annealing Algorithm for Graph Coloring Problem

Parallel Simulated Annealing Algorithm for Graph Coloring Problem Parallel Simulated Annealing Algorithm for Graph Coloring Problem Szymon Łukasik 1, Zbigniew Kokosiński 2, and Grzegorz Świętoń 2 1 Systems Research Institute, Polish Academy of Sciences, ul. Newelska

More information

Measurement with Ratios

Measurement with Ratios Grade 6 Mathematics, Quarter 2, Unit 2.1 Measurement with Ratios Overview Number of instructional days: 15 (1 day = 45 minutes) Content to be learned Use ratio reasoning to solve real-world and mathematical

More information

NP-Completeness and Cook s Theorem

NP-Completeness and Cook s Theorem NP-Completeness and Cook s Theorem Lecture notes for COM3412 Logic and Computation 15th January 2002 1 NP decision problems The decision problem D L for a formal language L Σ is the computational task:

More information

Heuristics for the Sorting by Length-Weighted Inversions Problem on Signed Permutations

Heuristics for the Sorting by Length-Weighted Inversions Problem on Signed Permutations Heuristics for the Sorting by Length-Weighted Inversions Problem on Signed Permutations AlCoB 2014 First International Conference on Algorithms for Computational Biology Thiago da Silva Arruda Institute

More information

Product Mix as a Framing Exercise: The Role of Cost Allocation. Anil Arya The Ohio State University. Jonathan Glover Carnegie Mellon University

Product Mix as a Framing Exercise: The Role of Cost Allocation. Anil Arya The Ohio State University. Jonathan Glover Carnegie Mellon University Product Mix as a Framing Exercise: The Role of Cost Allocation Anil Arya The Ohio State University Jonathan Glover Carnegie Mellon University Richard Young The Ohio State University December 1999 Product

More information

International Journal of Advanced Research in Electrical, Electronics and Instrumentation Engineering

International Journal of Advanced Research in Electrical, Electronics and Instrumentation Engineering DOI: 10.15662/ijareeie.2014.0307061 Economic Dispatch of Power System Optimization with Power Generation Schedule Using Evolutionary Technique Girish Kumar 1, Rameshwar singh 2 PG Student [Control system],

More information

A Comparison of General Approaches to Multiprocessor Scheduling

A Comparison of General Approaches to Multiprocessor Scheduling A Comparison of General Approaches to Multiprocessor Scheduling Jing-Chiou Liou AT&T Laboratories Middletown, NJ 0778, USA jing@jolt.mt.att.com Michael A. Palis Department of Computer Science Rutgers University

More information

Chapter 6: The Information Function 129. CHAPTER 7 Test Calibration

Chapter 6: The Information Function 129. CHAPTER 7 Test Calibration Chapter 6: The Information Function 129 CHAPTER 7 Test Calibration 130 Chapter 7: Test Calibration CHAPTER 7 Test Calibration For didactic purposes, all of the preceding chapters have assumed that the

More information

An optimisation framework for determination of capacity in railway networks

An optimisation framework for determination of capacity in railway networks CASPT 2015 An optimisation framework for determination of capacity in railway networks Lars Wittrup Jensen Abstract Within the railway industry, high quality estimates on railway capacity is crucial information,

More information

A Genetic Algorithm Approach for Solving a Flexible Job Shop Scheduling Problem

A Genetic Algorithm Approach for Solving a Flexible Job Shop Scheduling Problem A Genetic Algorithm Approach for Solving a Flexible Job Shop Scheduling Problem Sayedmohammadreza Vaghefinezhad 1, Kuan Yew Wong 2 1 Department of Manufacturing & Industrial Engineering, Faculty of Mechanical

More information

An Advanced Model and Novel Meta-heuristic Solution Methods to Personnel Scheduling in Healthcare. Greet Vanden Berghe

An Advanced Model and Novel Meta-heuristic Solution Methods to Personnel Scheduling in Healthcare. Greet Vanden Berghe An Advanced Model and Novel Meta-heuristic Solution Methods to Personnel Scheduling in Healthcare Greet Vanden Berghe 2 Contents I The Nurse Rostering Problem 21 1 Introduction 23 2 Problem Description

More information

OPRE 6201 : 2. Simplex Method

OPRE 6201 : 2. Simplex Method OPRE 6201 : 2. Simplex Method 1 The Graphical Method: An Example Consider the following linear program: Max 4x 1 +3x 2 Subject to: 2x 1 +3x 2 6 (1) 3x 1 +2x 2 3 (2) 2x 2 5 (3) 2x 1 +x 2 4 (4) x 1, x 2

More information

Generating Personnel Schedules in an Industrial Setting Using a Tabu Search Algorithm

Generating Personnel Schedules in an Industrial Setting Using a Tabu Search Algorithm Generating Personnel Schedules in an Industrial Setting Using a Tabu Search Algorithm Pascal Tellier 1 and George White 2 1 PrairieFyre Software Inc., 555 Legget Dr., Kanata K2K 2X3, Canada pascal@prairiefyre.com

More information

Learning in Abstract Memory Schemes for Dynamic Optimization

Learning in Abstract Memory Schemes for Dynamic Optimization Fourth International Conference on Natural Computation Learning in Abstract Memory Schemes for Dynamic Optimization Hendrik Richter HTWK Leipzig, Fachbereich Elektrotechnik und Informationstechnik, Institut

More information

4.2 Description of the Event operation Network (EON)

4.2 Description of the Event operation Network (EON) Integrated support system for planning and scheduling... 2003/4/24 page 39 #65 Chapter 4 The EON model 4. Overview The present thesis is focused in the development of a generic scheduling framework applicable

More information

Introduction To Genetic Algorithms

Introduction To Genetic Algorithms 1 Introduction To Genetic Algorithms Dr. Rajib Kumar Bhattacharjya Department of Civil Engineering IIT Guwahati Email: rkbc@iitg.ernet.in References 2 D. E. Goldberg, Genetic Algorithm In Search, Optimization

More information

Examensarbete. Staff scheduling in elderly care - A simulation study of trade-offs. Rebecka Håkansson

Examensarbete. Staff scheduling in elderly care - A simulation study of trade-offs. Rebecka Håkansson Examensarbete Staff scheduling in elderly care - A simulation study of trade-offs Rebecka Håkansson LiTH - MAT - EX - - 2015 / 02 - - SE Staff scheduling in elderly care - A simulation study of trade-offs

More information

Offline sorting buffers on Line

Offline sorting buffers on Line Offline sorting buffers on Line Rohit Khandekar 1 and Vinayaka Pandit 2 1 University of Waterloo, ON, Canada. email: rkhandekar@gmail.com 2 IBM India Research Lab, New Delhi. email: pvinayak@in.ibm.com

More information

Evaluation of a New Method for Measuring the Internet Degree Distribution: Simulation Results

Evaluation of a New Method for Measuring the Internet Degree Distribution: Simulation Results Evaluation of a New Method for Measuring the Internet Distribution: Simulation Results Christophe Crespelle and Fabien Tarissan LIP6 CNRS and Université Pierre et Marie Curie Paris 6 4 avenue du président

More information

For example, estimate the population of the United States as 3 times 10⁸ and the

For example, estimate the population of the United States as 3 times 10⁸ and the CCSS: Mathematics The Number System CCSS: Grade 8 8.NS.A. Know that there are numbers that are not rational, and approximate them by rational numbers. 8.NS.A.1. Understand informally that every number

More information

arxiv:1112.0829v1 [math.pr] 5 Dec 2011

arxiv:1112.0829v1 [math.pr] 5 Dec 2011 How Not to Win a Million Dollars: A Counterexample to a Conjecture of L. Breiman Thomas P. Hayes arxiv:1112.0829v1 [math.pr] 5 Dec 2011 Abstract Consider a gambling game in which we are allowed to repeatedly

More information

Original Article Efficient Genetic Algorithm on Linear Programming Problem for Fittest Chromosomes

Original Article Efficient Genetic Algorithm on Linear Programming Problem for Fittest Chromosomes International Archive of Applied Sciences and Technology Volume 3 [2] June 2012: 47-57 ISSN: 0976-4828 Society of Education, India Website: www.soeagra.com/iaast/iaast.htm Original Article Efficient Genetic

More information

A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem

A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem John Karlof and Peter Hocking Mathematics and Statistics Department University of North Carolina Wilmington Wilmington,

More information

Scheduling Shop Scheduling. Tim Nieberg

Scheduling Shop Scheduling. Tim Nieberg Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations

More information

HYBRID GENETIC ALGORITHM PARAMETER EFFECTS FOR OPTIMIZATION OF CONSTRUCTION RESOURCE ALLOCATION PROBLEM. Jin-Lee KIM 1, M. ASCE

HYBRID GENETIC ALGORITHM PARAMETER EFFECTS FOR OPTIMIZATION OF CONSTRUCTION RESOURCE ALLOCATION PROBLEM. Jin-Lee KIM 1, M. ASCE 1560 HYBRID GENETIC ALGORITHM PARAMETER EFFECTS FOR OPTIMIZATION OF CONSTRUCTION RESOURCE ALLOCATION PROBLEM Jin-Lee KIM 1, M. ASCE 1 Assistant Professor, Department of Civil Engineering and Construction

More information

Solving Simultaneous Equations and Matrices

Solving Simultaneous Equations and Matrices Solving Simultaneous Equations and Matrices The following represents a systematic investigation for the steps used to solve two simultaneous linear equations in two unknowns. The motivation for considering

More information

An Autonomous Agent for Supply Chain Management

An Autonomous Agent for Supply Chain Management In Gedas Adomavicius and Alok Gupta, editors, Handbooks in Information Systems Series: Business Computing, Emerald Group, 2009. An Autonomous Agent for Supply Chain Management David Pardoe, Peter Stone

More information

An evolutionary learning spam filter system

An evolutionary learning spam filter system An evolutionary learning spam filter system Catalin Stoean 1, Ruxandra Gorunescu 2, Mike Preuss 3, D. Dumitrescu 4 1 University of Craiova, Romania, catalin.stoean@inf.ucv.ro 2 University of Craiova, Romania,

More information

Comparison of Major Domination Schemes for Diploid Binary Genetic Algorithms in Dynamic Environments

Comparison of Major Domination Schemes for Diploid Binary Genetic Algorithms in Dynamic Environments Comparison of Maor Domination Schemes for Diploid Binary Genetic Algorithms in Dynamic Environments A. Sima UYAR and A. Emre HARMANCI Istanbul Technical University Computer Engineering Department Maslak

More information

A Flexible Mixed Integer Programming framework for Nurse Scheduling

A Flexible Mixed Integer Programming framework for Nurse Scheduling A Flexible Mixed Integer Programming framework for Nurse Scheduling Murphy Choy Michelle Cheong Abstract In this paper, a nurse-scheduling model is developed using mixed integer programming model. It is

More information

Make Better Decisions with Optimization

Make Better Decisions with Optimization ABSTRACT Paper SAS1785-2015 Make Better Decisions with Optimization David R. Duling, SAS Institute Inc. Automated decision making systems are now found everywhere, from your bank to your government to

More information

Long-term monitoring of apparent latency in PREEMPT RT Linux real-time systems

Long-term monitoring of apparent latency in PREEMPT RT Linux real-time systems Long-term monitoring of apparent latency in PREEMPT RT Linux real-time systems Carsten Emde Open Source Automation Development Lab (OSADL) eg Aichhalder Str. 39, 78713 Schramberg, Germany C.Emde@osadl.org

More information

New Modifications of Selection Operator in Genetic Algorithms for the Traveling Salesman Problem

New Modifications of Selection Operator in Genetic Algorithms for the Traveling Salesman Problem New Modifications of Selection Operator in Genetic Algorithms for the Traveling Salesman Problem Radovic, Marija; and Milutinovic, Veljko Abstract One of the algorithms used for solving Traveling Salesman

More information

Lab 4: 26 th March 2012. Exercise 1: Evolutionary algorithms

Lab 4: 26 th March 2012. Exercise 1: Evolutionary algorithms Lab 4: 26 th March 2012 Exercise 1: Evolutionary algorithms 1. Found a problem where EAs would certainly perform very poorly compared to alternative approaches. Explain why. Suppose that we want to find

More information

Optimization of an Operating Room Surgical Schedule. Anastasia Romanyuk & Alexandra Silva

Optimization of an Operating Room Surgical Schedule. Anastasia Romanyuk & Alexandra Silva Optimization of an Operating Room Surgical Schedule Anastasia Romanyuk & Alexandra Silva Washington University in St. Louis Department of Electrical & Systems Engineering April 27, 2012 Abstract: Operating

More information

Retirement Financial Planning: A State/Preference Approach. William F. Sharpe 1 February, 2006

Retirement Financial Planning: A State/Preference Approach. William F. Sharpe 1 February, 2006 Retirement Financial Planning: A State/Preference Approach William F. Sharpe 1 February, 2006 Introduction This paper provides a framework for analyzing a prototypical set of decisions concerning spending,

More information

DYNAMIC RANGE IMPROVEMENT THROUGH MULTIPLE EXPOSURES. Mark A. Robertson, Sean Borman, and Robert L. Stevenson

DYNAMIC RANGE IMPROVEMENT THROUGH MULTIPLE EXPOSURES. Mark A. Robertson, Sean Borman, and Robert L. Stevenson c 1999 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or

More information

Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths

Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths Single-Link Failure Detection in All-Optical Networks Using Monitoring Cycles and Paths Satyajeet S. Ahuja, Srinivasan Ramasubramanian, and Marwan Krunz Department of ECE, University of Arizona, Tucson,

More information

Soft-Computing Models for Building Applications - A Feasibility Study (EPSRC Ref: GR/L84513)

Soft-Computing Models for Building Applications - A Feasibility Study (EPSRC Ref: GR/L84513) Soft-Computing Models for Building Applications - A Feasibility Study (EPSRC Ref: GR/L84513) G S Virk, D Azzi, K I Alkadhimi and B P Haynes Department of Electrical and Electronic Engineering, University

More information

Nonlinear Model Predictive Control of Hammerstein and Wiener Models Using Genetic Algorithms

Nonlinear Model Predictive Control of Hammerstein and Wiener Models Using Genetic Algorithms Nonlinear Model Predictive Control of Hammerstein and Wiener Models Using Genetic Algorithms Al-Duwaish H. and Naeem, Wasif Electrical Engineering Department/King Fahd University of Petroleum and Minerals

More information

Euler: A System for Numerical Optimization of Programs

Euler: A System for Numerical Optimization of Programs Euler: A System for Numerical Optimization of Programs Swarat Chaudhuri 1 and Armando Solar-Lezama 2 1 Rice University 2 MIT Abstract. We give a tutorial introduction to Euler, a system for solving difficult

More information

Integer Programming: Algorithms - 3

Integer Programming: Algorithms - 3 Week 9 Integer Programming: Algorithms - 3 OPR 992 Applied Mathematical Programming OPR 992 - Applied Mathematical Programming - p. 1/12 Dantzig-Wolfe Reformulation Example Strength of the Linear Programming

More information

A COOL AND PRACTICAL ALTERNATIVE TO TRADITIONAL HASH TABLES

A COOL AND PRACTICAL ALTERNATIVE TO TRADITIONAL HASH TABLES A COOL AND PRACTICAL ALTERNATIVE TO TRADITIONAL HASH TABLES ULFAR ERLINGSSON, MARK MANASSE, FRANK MCSHERRY MICROSOFT RESEARCH SILICON VALLEY MOUNTAIN VIEW, CALIFORNIA, USA ABSTRACT Recent advances in the

More information

Population-based Metaheuristics for Tasks Scheduling in Heterogeneous Distributed Systems

Population-based Metaheuristics for Tasks Scheduling in Heterogeneous Distributed Systems Population-based Metaheuristics for Tasks Scheduling in Heterogeneous Distributed Systems Flavia Zamfirache, Marc Frîncu, Daniela Zaharie Department of Computer Science, West University of Timişoara, Romania

More information

2695 P a g e. IV Semester M.Tech (DCN) SJCIT Chickballapur Karnataka India

2695 P a g e. IV Semester M.Tech (DCN) SJCIT Chickballapur Karnataka India Integrity Preservation and Privacy Protection for Digital Medical Images M.Krishna Rani Dr.S.Bhargavi IV Semester M.Tech (DCN) SJCIT Chickballapur Karnataka India Abstract- In medical treatments, the integrity

More information