The present application claims the priority benefit of Malaysian Patent Application No. PI 2015002496, filed Oct. 5, 2015, which is incorporated by reference in its entirety.
The invention relates to a task scheduling system and method. More particularly, the invention relates to an automation system and method in assigning duties to a group of workers via an improved genetic algorithm that satisfies all constraints.
Planning and scheduling are important in the telecommunication sector. A big demand to broadband services causes the internet service provider (ISP) to increase investment in new equipment, and upgrade older infrastructure into a better one in order to widen the coverage and improve service performance. The increase of demand in either the installation of new infrastructure or the maintenance of servers causes the number of possible courses of action and the ways to allocate resources to become overwhelmed.
One of the main objectives of an ISP is to ensure the service given to their customer or subscriber complies with the service-level-agreement (SLA). For any complaints or trouble ticket which cannot be resolved via a call to the service center, a repair team is dispatched to perform an on-site evaluation and repair. Managing a large amount of repair teams and cases is a complicated task and requires a good algorithm to compute an optimized solution for resource allocation and task scheduling. Although several automated methods have been implemented in Telekom Malaysia (TM), the operators still have to rely on the manual system due to the complexities of received cases. The complexities are referring to the types of service, types of customer, priority of cases, repeat complaint, etc. This is due to most of the present method only focusing on fixed constraints and fixed target locations.
Therefore, a need exists to design an engine based on an improved genetic algorithm to overcome the aforementioned drawbacks and to replace the prior manual task assignment system with a fully automated engine that can assign multiple tasks with multiple objectives to multiple groups of workers. The present invention provides such a method and system thereof.
The invention provides a computer implemented method for assigning tasks to a group of workers including the steps of retrieving, by a data retrieval module, information relating to a set of activities to be executed, a set resources to be utilized during the execution of the activities, a set of constraints to be satisfied, and a set of objectives to be accomplished from a database; assigning, by a weight assigning module, a weight value according to the set of constraints for each of the activities; sorting, by a task sorting module, the activities according to each of their respective weight value; assigning, by the task sorting module, at least one resource to each of the activities; generating, by a match matrix generator, a matrix carrying the list of activities with their corresponding resource assigned; and applying, by a genetic algorithm module, a genetic algorithm process on the generated matrix to produce an optimum solution for the assignment of the at least one resource to each of the activities.
Preferably, the genetic algorithm process includes the steps of generating a plurality rows of initial population, wherein each row of the initial population corresponds to one chromosome in a genetic algorithm, and each activity in the row of the initial population corresponds to a gene in the genetic algorithm, forming a fitness function based on the initial population to acquire fitness values of the chromosomes, selecting an optimum fitness value by using roulette wheel selection, performing a chromosome crossover process and a mutation process to generate new and mutated sets of chromosomes, executing an iteration process on the chromosome crossover process and the mutation process until a predetermined maximum repetition value is reached so as to obtain an optimum chromosome, and outputting the outcomes of the genetic algorithm process to a display unit.
Alternatively, the step of sorting the activities is according to descending order of the weights.
Preferably, the chromosome crossover process includes the steps of defining the crossover rate, randomly assigning a chromosome value for the crossover process, defining the crossover point, executing the recombination process of genes based on the defined parameters, and updating the recombined chromosome to the population.
Preferably, the mutation process includes the steps of defining the mutation rate, randomly generating a value for the gene, defining the mutation point, executing the replacement of generated value according to the defined parameter, and updating the mutated chromosome to the population.
Preferably, the output process includes the steps of generating a task schedule chart which illustrates timeline, resources, priority for each activity, and computing distance score, priority serving score, balance score, and total fitness value.
At least one of the preceding objects is met, in whole or in part, by the invention, in which the embodiment of the invention discloses an automated system for assigning tasks to a group of workers includes a service server connected to a communication network, and coupled with at least one database; and a data mining engine connected to the service server via the communication network, and configured to retrieve data from the database, assigning weight value to the retrieved data, sorting the data according to each of their respective weight value, processing the sorted data via a genetic algorithm to produce an optimum solution for the task assignment, and transmit the optimum solution to at least one electronic device via the communication network.
Preferably, the data mining engine includes a data retrieval module configured to retrieve data from the database of the service server, a weight assigning module configured to assign a weight value to the retrieved data, a task sorting module configured to sort the data according to each of their assigned weight value, a match matrix generator configured to generate a match matrix according to the sorted data, and a genetic algorithm module configured to apply the genetic algorithm process on the generated matrix to produce an optimum solution for the assignment of tasks.
One skilled in the art will readily appreciate that the invention is well adapted to carry out the objects and obtain the ends and advantages mentioned, as well as those inherent therein. The embodiments described herein are not intended as limitations on the scope of the invention.
For the purpose of facilitating an understanding of the invention, there is are illustrated in the accompanying drawing the preferred embodiments from an inspection of which when considered in connection with the following description, the invention, its construction and operation and many of its advantages would be readily understood and appreciated.
The present invention is described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, that execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
Referring to
Preferably, the service server 1 is a platform where complaints, trouble ticket and information are collected and the collected data are stored within the database. The service server 1 may include one or more heavy duty computers and any known devices or group of devices to provide sufficient capacity. In operation, the service server 1 is configured to process the collected data, to update the database, and to transmit the requested data to the data mining engine 4 via the communication network 3. The service server 1 can be operated via one or more operator or under the control of a fully automated intelligent system.
Preferably, the data mining engine 4 has a plurality of fully automated modules. Those modules include a data retrieval module configured to retrieve data from the database 2 of the service server 1, a weight assigning module configured to assign a weight value to the retrieved data, a task sorting module configured to sort the data according to each of their assigned weight value, a match matrix generator configured to generate a match matrix according to the sorted data, and a genetic algorithm module configured to apply the genetic algorithm process on the generated matrix to produce an optimum solution for the assignment of tasks. The data retrieval can be executed on a real time or periodical basis depending on the situation and the update rate of the database. Preferably, the data mining engine 4 retrieves and processes data from the service server 1 in every 30 minutes.
The repair center 5, 6 is a platform where repair teams/workers/engineers are stationed. Preferably, each repair team carries at least one electronic device 7-10 and the repair center 5, 6 has a central server that links the plurality of electronic devices 7-10. The central server is configured to receive and process the optimum solution from the data mining engine 4, and then transmit the solution to the plurality of electronic devices 7-10 for display. The plurality of electronic devices 7, 10 can be personal digital assistants (PDA), smart phones, tablets, computers, laptops, netbooks, phoblets, or any suitable means which are capable of processing data, displaying the data, and performing data transmission.
The communication network 3 is preferably a wireless network which may include but is not limited to a Code Division Multiple Access (CDMA) network, a General Packet Radio Service (GPRS) network for use in conjunction with Global System for Mobile Communications (GSM) network, and future third-generation (3G) networks like Enhanced Data rates for GSM Evolution (EDGE) and Universal Mobile Telecommunications System (UMTS). It is to be understood that although particular IP-based wireless networks have been described, the system could be utilized in any suitable type of wireless network. It should also be noted that the communication network 3 can be a wired network such as telephone network, cable television, internet access, or fiber-optic communication.
Referring to
Table 1 shows the elements of the temporal constraint.
Table 2 shows the elements of the procedural constraint.
Table 3 shows the elements of the resource constraint.
In step 200, a weight assigning module prepares a job list having information relating to the tasks assigned with their corresponding weight values based on the retrieved constraints. In step 300, a job sorter module sorts the tasks according to the weight value of each task. In step 400, a match matrix generator generates a match matrix for use in the genetic algorithm process. In step 500, a genetic algorithm module applies a genetic algorithm process on the generated match matrix. In step 600, the genetic algorithm module determines the optimum solution and applies the outcomes to a task assigner for assigning resources to each task. In step 700, the outcomes of the assignment are outputted to a display.
Referring to
The present disclosure includes as contained in the appended claims, as well as that of the foregoing description. Although this invention has been described in its preferred form with a degree of particularity, it is understood that the present disclosure of the preferred form has been made only by way of example and that numerous changes in the details of construction and the combination and arrangements of parts may be resorted to without departing from the scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
PI 2015002496 | Oct 2015 | MY | national |