# Optimization and Simulation of a Reasonable Scheduling Model under Multiple Tasks in Company Management

Authors: Zhuo Wang
Journal: Complexity
 (2020)

---

## Abstract

With the rapid development of market economy, the task scheduling model has become the core problem in the field of corporate management. In order to solve the problem that the stability of the model will decline due to the interference of human factors in the process of multitask scheduling in the traditional algorithm, a reasonable scheduling model based on the priority principle is proposed in this paper. This paper expounds the principle of multitask scheduling in company management, constructs a multitask scheduling network model based on priority, performs virtual scheduling on the model, searches the optimal solution in the solution space of the scheduling problem, and obtains the reasonable multitask scheduling method in the company management. Through the analysis of relevant simulation experiments, it can be concluded that the task scheduling algorithm proposed in this paper can not only allocate the corresponding resources for high-priority tasks effectively, but also can save the cost, so as to show better execution efficiency.


---

## Body

## 1. Introduction

With the rapid development of market economy, the competition between enterprises is becoming more and more fierce. As a more important factor affecting the competitiveness of enterprises, the method of task scheduling in company management has been paid more and more attention by company managers [1, 2]. Therefore, the method of task scheduling in company management has become a hot topic in the field of enterprise, which has been paid attention by many experts. At present, the main task scheduling models in company management mainly include the task scheduling method based on the fuzzy clustering algorithm, the task scheduling method based on the optimization genetic algorithm, and the task scheduling method based on the ant colony algorithm [3, 4]. Because of the wide development space of the task scheduling method, it has become the focus of many experts.Task scheduling model has become the core problem in the field of company management. In the management of the company, the pipeline work task management mode is adopted, and the multithread and multitask mode is adopted for the work task under this management [5]. In the process of multitask scheduling, the correlation between tasks is very complex, which is greatly affected by the scheduling order. The traditional task scheduling model is based on single linear order optimization [6, 7]. Once there are too many tasks, the contradiction between different task scheduling will increase, the stability of the model will decline, and the efficiency of scheduling will be low. However, it is difficult to assign a schedulable priority to each task in the design model due to the limitation of multiple times. At the same time, it is difficult to avoid the undesirable priority inversion. Therefore, the design model cannot be used to analyze the fixed priority scheduling theory.Aiming at the defects of the traditional algorithm, a reasonable scheduling method based on the multiconstraint scheduling model is proposed. In this paper, the principle of multitask scheduling in company management is described in detail [8, 9]. A multitask scheduling network model based on priority is constructed by using this principle. Virtual scheduling is carried out for the network model, and the optimal solution is searched in the solution space, and the reasonable multitask scheduling method in company management is obtained [10]. The experimental results show that the improved algorithm can improve the resource utilization rate and scheduling efficiency and avoid the defect of reduced stability of the scheduling model caused by multiwork doping.


## 2. Principle of Multitask Scheduling in Company Management

### 2.1. Analysis of Task Scheduling Model

Task scheduling is simply a problem of allocating resources according to time to complete tasks. The accuracy and rationality of scheduling is directly related to the economic effect of the whole production activity. The goal of task scheduling software is to use advanced computer technology to achieve efficient control of production scheduling [11]. The objectives of the task scheduling software are as follows:(l)
Convenient Interaction. The software should have a friendly man-machine interface, which is convenient, intuitive, and easy to learn. The user can easily realize the man-machine dialogue.(2)
Network Management. As a part of the enterprise internal management system, the task scheduling software should have a good information interface to realize the information interaction with other subsystems. Through the interface, it can realize the functions of task allocation, release, and processing.(3)
Controllability of Scheduling Process. It has the monitoring function for the whole process of task scheduling and timely reflects the problems to the system administrator.(4)
Security. Most of the internal resources involved in software are confidential, so security is very important. The software should have the ability of user identification and authority control.According to the requirement analysis of task scheduling software, the task scheduling is divided into six functions: plan preprocessing, task scheduling, basic information management, material resource management, job management, and work process tracking. Thus, the domain model of task scheduling is obtained, as shown in Figure1. The task scheduling model is mainly composed of two modules: task request scheduling and optimal task selection. The classifier classifies tasks into several classes according to their priority and sends them to the corresponding queue buffer and gives each queue a weight. The difference between virtual scheduling and actual scheduling is that the virtual scheduling task allocates a set of resources, while the actual scheduling task allocates a specific resource. Virtual scheduling is developed based on relaxation theory, so virtual scheduling is an intermediate process to solve the scheduling scheme.Figure 1
Domain model of production task scheduling.After the plan preprocessing function searches the plans, it classifies the plans according to the retrieved results and compiles the dispatch list, which is used to drive the task scheduling [12]. After receiving the dispatch list issued by the plan, the task scheduling first calls the residual production capacity information in the basic information management, the process information of the product, and the task decomposition, assignment, and sorting based on the example-based contract net scheduling method. Then, the raw materials and semifinished products in the resource management are called to schedule and process the tasks [13, 14]. After the scheduling is completed, the production, man hour quota, and cost are statistically managed. The whole scheduling process is accompanied by work process tracking. Work process tracking tracks the execution status of the plan before the execution of the task scheduling, tracks the logistics and cost information generated in the scheduling process, and tracks the output and quality in the operation management after the scheduling is completed.


### 2.2. Design of Task Scheduling Architecture

Class model is the core of object-oriented modeling and an important part of UML. Its main function is to define the classes in the system and the relations between them. Class structure in the class model is formed by abstracting meaningful concepts from domain requirements and then encapsulating certain behaviors with them [15, 16]. The initial class model is a concept-based class model, which focuses on the expression of the relationship between classes, while ignoring the expression of the attributes and behaviors in the internal structure of the class. According to the domain requirements and basic framework of the system, the initial class model is constructed abstractly. The following is an analysis and summary of the abstract modeling methods of the initial class model [17, 18]:(1)
The initial class is extracted from the underlying use case, activity diagram, and information carrier analysis, and the initial class framework is established(2)
From the use case diagram and the activity diagram to the relationship between information flow and data flow abstract classes in the class diagram(3)
The mapping from the use case diagram and the activity diagram to workflow in the class diagram is used to reflect business processing logic(4)
Accurate identification of association types (association, aggregation, composition, and generalization)(5)
An interface definition or description that expresses the services (operations) provided to the user using the interface(6)
Proxy object is used to refine association and provide access control; action object is used to provide preprocessing to simplify interactionThe initial class architecture of task scheduling software is shown in Figure2. The initial class framework of task scheduling is developed according to the business main line of domain application, which embodies the functional abstraction and data processing flow of IPO control.Figure 2
Initial class architecture of production task scheduling.In addition, the initial architecture of the system only describes the status of this class in the system and the relationship between this class and other classes in the system, but fails to describe its detailed design and optimization. Therefore, it is necessary to further analyze and design the middle classification of the initial class framework according to the situation. The optimization method is used to optimize the structure [19–21]. Task assignment class is the core process of collaborative task scheduling. According to the domain analysis, the task assignment class is further analyzed and designed. The structure of the task assignment class is shown in Figure 3.Figure 3
Task assignment class architecture.


### 2.3. Description of Multitask Scheduling Principle

According to the above method, we can solve the utilization ratio of scheduling resources in multitasks. In the process of scheduling tasks, the demand for nonrenewable resources is determined. Therefore, the task scheduling cannot be ignored. Therefore, when solving the multitask scheduling problem, we first simplify the problem [22, 23]:(1)
Nonupdatable resources are ignored during the operation(2)
The duration of task completion is only related to the working capacity of the selected renewable resourcesThe solution of the scheduling problem with multiple tasks isW,R,S. W is used to describe the total number of tasks, and ωi is used to describe i. R is used to describe the resource allocation vector of all tasks, and ri is used to describe the allocation of resources to task i. S is used to describe the start time of work task, and Si is used to describe the start time of work task i. S is obtained by calculating W and R. Therefore, the process of solving the scheduling problem is to solve the W and R values. The process of solving the multitask scheduling problem can be described as follows: (1) constructing the priority network of the problem to be scheduled; (2) through virtual scheduling, the solution space is continuously compressed until the end condition is met, and the problem solving process is exited; (3) the solution result (no solution or optimal solution) of the scheduling problem is obtained.In the management of the company, the pipeline work task management mode is adopted, and the multithread and multitask mode is adopted for the work task under this management. In the process of multitask scheduling, the correlation between tasks is very complex, which is greatly affected by the scheduling order. In the company management, reasonable distribution of work tasks is conducive to improving task efficiency. The principle of scheduling is as follows.Sett=Ti1≤i≤l as the multitask set in company management, which can be described by the following matrix:(1)t=T1TypeT1LT1InT1OutT1ET2TypeT2LT2InT2OutT2E⋯TlTypeTlLTlInTlOutTlE.The row vector of the matrix can be used to describe the attribute set of the corresponding task. Among them,TiType is used to describe the types of work tasks; T1L is the total length of work tasks; TiIn is the input size of work tasks; TiOut is the output size of work tasks; TiE is the expected value of work tasks by company management. QoS can also be divided into different tasks according to the type of QoS. For example, completion time, labor quantity, and cost.Setd=Di1≤i≤m to describe the resource set of a work task in the company management, which can be described by the following matrix:(2)d=D1rgD1timeD1smD1cbD1jqD2rgD2timeD2smD2cbD2jq⋯DmrgDmtimeDmsmDmcbDmjq.The row vector of the matrix is used to describe the attributes of various resources in the corresponding task. Among them,Dirg is used to describe the working ability of workers; Ditime is used to describe the completion time of tasks; Dism is used to describe the number of workers required to complete tasks; Dicb is used to describe the use cost of a single worker; Dijq is used to describe the use cost of machines. In order to comprehensively consider the performance of various resources in multitask scheduling, it is necessary to normalize the performance attribute values of resources.(3)V=Virg−minrgmaxrg−minrg,maxrg≠minrg,1≤i≤m,1,maxrg=minrg,where Virg is the working ability attribute value of the ith worker, minrg is the minimum value of the working ability performance attribute value of m workers in the scheduling resource set, and maxrg is the maximum value of the working ability attribute value of m workers. Obviously, formula (1) normalizes the attribute value of workers’ working ability to the interval of 0,1.The utilization rate of scheduling the resource set under multitasks can be described by a vector, whereDi,uti1≤i≤m is used to describe the corresponding scheduling resource utilization. For example, for labor-intensive tasks, the utilization rate of scheduling resources is mainly reflected by worker resources, and its calculation formula can be described as follows:(4)Di,uti=∑j=1lTj.etime−Tj.stime×ΔijTtime,1≤i≤m,where Tj.etime and Tj.stime are used to describe the end time and the start time of the corresponding task; Δij=1 is used to describe that task J is allocated on schedule I, otherwise Δij=0.The overall load balanceVm of scheduling resources under multiple tasks can be described by the standard value of variance. The specific calculation formula is as follows:(5)Vm=1m∑i=1mVi,uti−V¯2,V¯=1m∑i=1mVi,uti.The optimization goal of scheduling is to achieve the minimum task scheduling spanTj.etime and the minimum system resource overall load Vm through the reasonable scheduling of task set t on the scheduling resource set v. In the management of the company, the pipeline work task management mode is adopted, and the multithread and multitask mode is adopted for the work task under this management. In the process of multitask scheduling, the correlation between tasks is very complex, which is greatly affected by the scheduling order. The traditional task scheduling model is based on single linear order optimization. Once there are too many tasks, the contradiction between different task scheduling will increase, the stability of the model will decline, and the efficiency of scheduling will be low.In addition, due to the need to maintain the stack of each task, there is also a lot of memory overhead. In order to reduce the space-time cost of real-time multitasking, it is common to map multiple tasks to the same thread, so that the thread will receive and process the requests of each task in the queue in turn. However, it is difficult to assign a schedulable priority to each task in the design model due to the limitation of multiple times. At the same time, it is difficult to avoid the undesirable priority inversion. Therefore, the design model cannot be used to analyze the fixed priority scheduling theory. The other method is to assign an implementation thread for each task; that is, the number of tasks is equal to the number of threads, which will have the disadvantage of high space-time cost.


## 2.1. Analysis of Task Scheduling Model

Task scheduling is simply a problem of allocating resources according to time to complete tasks. The accuracy and rationality of scheduling is directly related to the economic effect of the whole production activity. The goal of task scheduling software is to use advanced computer technology to achieve efficient control of production scheduling [11]. The objectives of the task scheduling software are as follows:(l)
Convenient Interaction. The software should have a friendly man-machine interface, which is convenient, intuitive, and easy to learn. The user can easily realize the man-machine dialogue.(2)
Network Management. As a part of the enterprise internal management system, the task scheduling software should have a good information interface to realize the information interaction with other subsystems. Through the interface, it can realize the functions of task allocation, release, and processing.(3)
Controllability of Scheduling Process. It has the monitoring function for the whole process of task scheduling and timely reflects the problems to the system administrator.(4)
Security. Most of the internal resources involved in software are confidential, so security is very important. The software should have the ability of user identification and authority control.According to the requirement analysis of task scheduling software, the task scheduling is divided into six functions: plan preprocessing, task scheduling, basic information management, material resource management, job management, and work process tracking. Thus, the domain model of task scheduling is obtained, as shown in Figure1. The task scheduling model is mainly composed of two modules: task request scheduling and optimal task selection. The classifier classifies tasks into several classes according to their priority and sends them to the corresponding queue buffer and gives each queue a weight. The difference between virtual scheduling and actual scheduling is that the virtual scheduling task allocates a set of resources, while the actual scheduling task allocates a specific resource. Virtual scheduling is developed based on relaxation theory, so virtual scheduling is an intermediate process to solve the scheduling scheme.Figure 1
Domain model of production task scheduling.After the plan preprocessing function searches the plans, it classifies the plans according to the retrieved results and compiles the dispatch list, which is used to drive the task scheduling [12]. After receiving the dispatch list issued by the plan, the task scheduling first calls the residual production capacity information in the basic information management, the process information of the product, and the task decomposition, assignment, and sorting based on the example-based contract net scheduling method. Then, the raw materials and semifinished products in the resource management are called to schedule and process the tasks [13, 14]. After the scheduling is completed, the production, man hour quota, and cost are statistically managed. The whole scheduling process is accompanied by work process tracking. Work process tracking tracks the execution status of the plan before the execution of the task scheduling, tracks the logistics and cost information generated in the scheduling process, and tracks the output and quality in the operation management after the scheduling is completed.


## 2.2. Design of Task Scheduling Architecture

Class model is the core of object-oriented modeling and an important part of UML. Its main function is to define the classes in the system and the relations between them. Class structure in the class model is formed by abstracting meaningful concepts from domain requirements and then encapsulating certain behaviors with them [15, 16]. The initial class model is a concept-based class model, which focuses on the expression of the relationship between classes, while ignoring the expression of the attributes and behaviors in the internal structure of the class. According to the domain requirements and basic framework of the system, the initial class model is constructed abstractly. The following is an analysis and summary of the abstract modeling methods of the initial class model [17, 18]:(1)
The initial class is extracted from the underlying use case, activity diagram, and information carrier analysis, and the initial class framework is established(2)
From the use case diagram and the activity diagram to the relationship between information flow and data flow abstract classes in the class diagram(3)
The mapping from the use case diagram and the activity diagram to workflow in the class diagram is used to reflect business processing logic(4)
Accurate identification of association types (association, aggregation, composition, and generalization)(5)
An interface definition or description that expresses the services (operations) provided to the user using the interface(6)
Proxy object is used to refine association and provide access control; action object is used to provide preprocessing to simplify interactionThe initial class architecture of task scheduling software is shown in Figure2. The initial class framework of task scheduling is developed according to the business main line of domain application, which embodies the functional abstraction and data processing flow of IPO control.Figure 2
Initial class architecture of production task scheduling.In addition, the initial architecture of the system only describes the status of this class in the system and the relationship between this class and other classes in the system, but fails to describe its detailed design and optimization. Therefore, it is necessary to further analyze and design the middle classification of the initial class framework according to the situation. The optimization method is used to optimize the structure [19–21]. Task assignment class is the core process of collaborative task scheduling. According to the domain analysis, the task assignment class is further analyzed and designed. The structure of the task assignment class is shown in Figure 3.Figure 3
Task assignment class architecture.


## 2.3. Description of Multitask Scheduling Principle

According to the above method, we can solve the utilization ratio of scheduling resources in multitasks. In the process of scheduling tasks, the demand for nonrenewable resources is determined. Therefore, the task scheduling cannot be ignored. Therefore, when solving the multitask scheduling problem, we first simplify the problem [22, 23]:(1)
Nonupdatable resources are ignored during the operation(2)
The duration of task completion is only related to the working capacity of the selected renewable resourcesThe solution of the scheduling problem with multiple tasks isW,R,S. W is used to describe the total number of tasks, and ωi is used to describe i. R is used to describe the resource allocation vector of all tasks, and ri is used to describe the allocation of resources to task i. S is used to describe the start time of work task, and Si is used to describe the start time of work task i. S is obtained by calculating W and R. Therefore, the process of solving the scheduling problem is to solve the W and R values. The process of solving the multitask scheduling problem can be described as follows: (1) constructing the priority network of the problem to be scheduled; (2) through virtual scheduling, the solution space is continuously compressed until the end condition is met, and the problem solving process is exited; (3) the solution result (no solution or optimal solution) of the scheduling problem is obtained.In the management of the company, the pipeline work task management mode is adopted, and the multithread and multitask mode is adopted for the work task under this management. In the process of multitask scheduling, the correlation between tasks is very complex, which is greatly affected by the scheduling order. In the company management, reasonable distribution of work tasks is conducive to improving task efficiency. The principle of scheduling is as follows.Sett=Ti1≤i≤l as the multitask set in company management, which can be described by the following matrix:(1)t=T1TypeT1LT1InT1OutT1ET2TypeT2LT2InT2OutT2E⋯TlTypeTlLTlInTlOutTlE.The row vector of the matrix can be used to describe the attribute set of the corresponding task. Among them,TiType is used to describe the types of work tasks; T1L is the total length of work tasks; TiIn is the input size of work tasks; TiOut is the output size of work tasks; TiE is the expected value of work tasks by company management. QoS can also be divided into different tasks according to the type of QoS. For example, completion time, labor quantity, and cost.Setd=Di1≤i≤m to describe the resource set of a work task in the company management, which can be described by the following matrix:(2)d=D1rgD1timeD1smD1cbD1jqD2rgD2timeD2smD2cbD2jq⋯DmrgDmtimeDmsmDmcbDmjq.The row vector of the matrix is used to describe the attributes of various resources in the corresponding task. Among them,Dirg is used to describe the working ability of workers; Ditime is used to describe the completion time of tasks; Dism is used to describe the number of workers required to complete tasks; Dicb is used to describe the use cost of a single worker; Dijq is used to describe the use cost of machines. In order to comprehensively consider the performance of various resources in multitask scheduling, it is necessary to normalize the performance attribute values of resources.(3)V=Virg−minrgmaxrg−minrg,maxrg≠minrg,1≤i≤m,1,maxrg=minrg,where Virg is the working ability attribute value of the ith worker, minrg is the minimum value of the working ability performance attribute value of m workers in the scheduling resource set, and maxrg is the maximum value of the working ability attribute value of m workers. Obviously, formula (1) normalizes the attribute value of workers’ working ability to the interval of 0,1.The utilization rate of scheduling the resource set under multitasks can be described by a vector, whereDi,uti1≤i≤m is used to describe the corresponding scheduling resource utilization. For example, for labor-intensive tasks, the utilization rate of scheduling resources is mainly reflected by worker resources, and its calculation formula can be described as follows:(4)Di,uti=∑j=1lTj.etime−Tj.stime×ΔijTtime,1≤i≤m,where Tj.etime and Tj.stime are used to describe the end time and the start time of the corresponding task; Δij=1 is used to describe that task J is allocated on schedule I, otherwise Δij=0.The overall load balanceVm of scheduling resources under multiple tasks can be described by the standard value of variance. The specific calculation formula is as follows:(5)Vm=1m∑i=1mVi,uti−V¯2,V¯=1m∑i=1mVi,uti.The optimization goal of scheduling is to achieve the minimum task scheduling spanTj.etime and the minimum system resource overall load Vm through the reasonable scheduling of task set t on the scheduling resource set v. In the management of the company, the pipeline work task management mode is adopted, and the multithread and multitask mode is adopted for the work task under this management. In the process of multitask scheduling, the correlation between tasks is very complex, which is greatly affected by the scheduling order. The traditional task scheduling model is based on single linear order optimization. Once there are too many tasks, the contradiction between different task scheduling will increase, the stability of the model will decline, and the efficiency of scheduling will be low.In addition, due to the need to maintain the stack of each task, there is also a lot of memory overhead. In order to reduce the space-time cost of real-time multitasking, it is common to map multiple tasks to the same thread, so that the thread will receive and process the requests of each task in the queue in turn. However, it is difficult to assign a schedulable priority to each task in the design model due to the limitation of multiple times. At the same time, it is difficult to avoid the undesirable priority inversion. Therefore, the design model cannot be used to analyze the fixed priority scheduling theory. The other method is to assign an implementation thread for each task; that is, the number of tasks is equal to the number of threads, which will have the disadvantage of high space-time cost.


## 3. Research on Multitask Scheduling Algorithm Based on Priority

### 3.1. Priority Workflow Scheduling Prototype

The level of a workflow can be determined by the level of user payment, as shown in Figure4. For example, if a cloud service provider divides users into free users, VIP, the priority value can be 0, 1, and 2. If there are multiple workflows applying for one cloud resource at the same time, the higher the level of workflow, the easier it is to obtain the cloud computing resources needed. If a workflow does not get the cloud computing resources it needs for a long time due to its low level, we can set a value for the workflow. Counting from 0 and adding one after each scheduling. If the value exceeds the set value after multiple rounds of scheduling, the workflow can obtain the cloud computing resources it needs regardless of its priority level in the next round of scheduling. The set value can be calculated according to the following steps.Figure 4
Workflow scheduling system.Firstly, suppose that there areM workflows applying for the required cloud computing resources and the cloud resource provider divides the user level of cloud computing resources into N levels, then the value can be set as M/N. For the workflow being executed, its priority may be lower than that of the workflow that is applying for cloud computing resources. We prefer to let the workflow continue to execute, rather than stop its execution forcibly, because this will waste the consumed resources and make the total consumption more.


### 3.2. Scheduling Algorithm Based on Workflow Priority (PISA)

PISA algorithm is based on the access control model; that is, the workflow task can enter the scheduling sequence and calculate the priority factor only after it has been authenticated by the access control model. Therefore, in PISA, this paper first introduces the access policy audit step. This is based on access control model authentication. When a workflow applies for cloud computing resources, the cloud computing resource provider first queries the access policy library and then queries the corresponding access policy according to the application information of the workflow. If the access policy is accessible, the workflow can enter the second step, that is, entering the workflow scaling sequence. First of all, the workflow task of computing resource application is authenticated. Only the task that meets the rules can enter the second step. In order to facilitate the experiment, we call the access policy of the workflow task as WAPC. The definition of WAPC is as follows:(6)WAPCwork,task,Ts,Tc,P,where Ts is the start time of task Ti, Tc is the end time of task Ti, and P is a periodic expression. The value priority defines the corresponding level of cloud computing resources that the workflow task can obtain. If the level of resource requested by the workflow task matches the value of priority, the request of the workflow will be passed. If the level of the workflow does not meet the corresponding requirements or the time quota is insufficient, the application is rejected. We define the time quota Tq, which indicates the maximum execution time quota of the task. Work defines the set priority value of the workflow to which the workflow task belongs. The authorization rules for the policy are as follows.Suppose that userU applies to the cloud computing service provider for a workflow instance W, and the task ID contained in the request obtains the required cloud computing resources at time T. in the workflow task, the priority value of the corresponding level resources required is priority. If Ts<t<Tc, the access application is passed, otherwise the application is rejected.For a workflow with multiple tasks, the completion of one task may depend on the completion degree of other tasks, so their running time is related. In order to facilitate the statistics of the possible time completion rate of a task, we define the time parameterTq, which takes the time parameters of each task into account:(7)time=Minti+WStite−ts∑i=1mti,where Minti is the minimum execution time of task ti, WSti is the time parameter required for the task to use all available cloud computing resources, and tq cannot be greater than te−ts, otherwise its request will not be passed.For a workflowWi, it may contain multiple tasks. Similarly, users can specify the hierarchical weights of these tasks. Suppose that there are n tasks whose rank weights are T1,T2,⋯,Tn and Wi are the priority weights of the workflow to which these tasks belong, then the average rank weight bps of the tasks is(8)bps=∑i=1mtiN.Figure5 only shows the work scheduling process, so there is no numerical value in the graph. It is only a reference for the process, and there may be other types. Figure 5 illustrates the scheduling process of workflow tasks.Figure 5
Task scheduling block diagram.For task scheduling, we also have the following considerations:(1)
The amount of cloud computing resources that a cloud computing service provider can provide is limited.(2)
Tasks belonging to high-level workflow should be executed first, which means that the first-level impact factorA is more important than the second-level impact factor B. In some cases, some tasks of low-level workflow may be higher in the scheduling queue after being calculated by the above formula, so we need to add the above conditions.The second step is to bind the tasks that have been prioritized to the virtual machine and establish the mapping relationship between tasks and virtual machines. This involves the concept of quality of service. In cloud computing, service quality is used to measure the user satisfaction with cloud computing services. Different users have different standards for QoS, some may need to ensure real-time performance, while others want low cost. According to the importance of the user’s task, the priority factor of the related task is calculated, and all the tasks participating in the scheduling are prioritized. Then the virtual machine resources are sorted. The higher the level of the task, the more abundant the resources can be obtained.


## 3.1. Priority Workflow Scheduling Prototype

The level of a workflow can be determined by the level of user payment, as shown in Figure4. For example, if a cloud service provider divides users into free users, VIP, the priority value can be 0, 1, and 2. If there are multiple workflows applying for one cloud resource at the same time, the higher the level of workflow, the easier it is to obtain the cloud computing resources needed. If a workflow does not get the cloud computing resources it needs for a long time due to its low level, we can set a value for the workflow. Counting from 0 and adding one after each scheduling. If the value exceeds the set value after multiple rounds of scheduling, the workflow can obtain the cloud computing resources it needs regardless of its priority level in the next round of scheduling. The set value can be calculated according to the following steps.Figure 4
Workflow scheduling system.Firstly, suppose that there areM workflows applying for the required cloud computing resources and the cloud resource provider divides the user level of cloud computing resources into N levels, then the value can be set as M/N. For the workflow being executed, its priority may be lower than that of the workflow that is applying for cloud computing resources. We prefer to let the workflow continue to execute, rather than stop its execution forcibly, because this will waste the consumed resources and make the total consumption more.


## 3.2. Scheduling Algorithm Based on Workflow Priority (PISA)

PISA algorithm is based on the access control model; that is, the workflow task can enter the scheduling sequence and calculate the priority factor only after it has been authenticated by the access control model. Therefore, in PISA, this paper first introduces the access policy audit step. This is based on access control model authentication. When a workflow applies for cloud computing resources, the cloud computing resource provider first queries the access policy library and then queries the corresponding access policy according to the application information of the workflow. If the access policy is accessible, the workflow can enter the second step, that is, entering the workflow scaling sequence. First of all, the workflow task of computing resource application is authenticated. Only the task that meets the rules can enter the second step. In order to facilitate the experiment, we call the access policy of the workflow task as WAPC. The definition of WAPC is as follows:(6)WAPCwork,task,Ts,Tc,P,where Ts is the start time of task Ti, Tc is the end time of task Ti, and P is a periodic expression. The value priority defines the corresponding level of cloud computing resources that the workflow task can obtain. If the level of resource requested by the workflow task matches the value of priority, the request of the workflow will be passed. If the level of the workflow does not meet the corresponding requirements or the time quota is insufficient, the application is rejected. We define the time quota Tq, which indicates the maximum execution time quota of the task. Work defines the set priority value of the workflow to which the workflow task belongs. The authorization rules for the policy are as follows.Suppose that userU applies to the cloud computing service provider for a workflow instance W, and the task ID contained in the request obtains the required cloud computing resources at time T. in the workflow task, the priority value of the corresponding level resources required is priority. If Ts<t<Tc, the access application is passed, otherwise the application is rejected.For a workflow with multiple tasks, the completion of one task may depend on the completion degree of other tasks, so their running time is related. In order to facilitate the statistics of the possible time completion rate of a task, we define the time parameterTq, which takes the time parameters of each task into account:(7)time=Minti+WStite−ts∑i=1mti,where Minti is the minimum execution time of task ti, WSti is the time parameter required for the task to use all available cloud computing resources, and tq cannot be greater than te−ts, otherwise its request will not be passed.For a workflowWi, it may contain multiple tasks. Similarly, users can specify the hierarchical weights of these tasks. Suppose that there are n tasks whose rank weights are T1,T2,⋯,Tn and Wi are the priority weights of the workflow to which these tasks belong, then the average rank weight bps of the tasks is(8)bps=∑i=1mtiN.Figure5 only shows the work scheduling process, so there is no numerical value in the graph. It is only a reference for the process, and there may be other types. Figure 5 illustrates the scheduling process of workflow tasks.Figure 5
Task scheduling block diagram.For task scheduling, we also have the following considerations:(1)
The amount of cloud computing resources that a cloud computing service provider can provide is limited.(2)
Tasks belonging to high-level workflow should be executed first, which means that the first-level impact factorA is more important than the second-level impact factor B. In some cases, some tasks of low-level workflow may be higher in the scheduling queue after being calculated by the above formula, so we need to add the above conditions.The second step is to bind the tasks that have been prioritized to the virtual machine and establish the mapping relationship between tasks and virtual machines. This involves the concept of quality of service. In cloud computing, service quality is used to measure the user satisfaction with cloud computing services. Different users have different standards for QoS, some may need to ensure real-time performance, while others want low cost. According to the importance of the user’s task, the priority factor of the related task is calculated, and all the tasks participating in the scheduling are prioritized. Then the virtual machine resources are sorted. The higher the level of the task, the more abundant the resources can be obtained.


## 4. Simulation Experiment and Analysis

### 4.1. GABP Optimized RO

The cloud simulation environment used in this paper includes 10 virtual machines, each of which performs a task. We set up five users to apply to cloud computing service providers. Each user proposes a workflow, and each workflow package contains two tasks. Based on the convenience of experiments, this paper assumes that all tasks for priority factor calculation have passed the authentication of the access control model, and we only consider the priority of tasks without considering the order of task execution. In order to verify the rationality of the multitask scheduling method based on the multiconstraint scheduling algorithm, an experiment is needed. In the process of the experiment, the resource utilization, personnel utilization, and scheduling efficiency are used to measure the performance of the multitask scheduling method. The relationship among enterprise personnel, resources, and work tasks is described in Figure6.Figure 6
Relationship among personnel, resources, and tasks in enterprises.The data related to the relationship among personnel, resources, and work tasks are described in Table1.Table 1
Comparison of resource utilization of different algorithms.
Number of experimentsNumber of personnelNumber of resourcesWorkload1152202254353356554458705551080665121207751415088516180995182101010520220The traditional algorithm and the improved algorithm are, respectively, used for multitask scheduling in company management. In the process of the above experiment, the personnel utilization rate of different algorithms is shown in Figure7.Figure 7
Comparison of personnel utilization of different algorithms.The traditional algorithm and the improved algorithm are used to schedule multitasks in company management, respectively. The scheduling efficiency of different algorithms is shown in Figure8.Figure 8
Comparison of scheduling efficiency of different algorithms.According to Table1, it can be seen that using the improved algorithm for reasonable scheduling under multiple tasks in company management can improve resource utilization and personnel utilization and effectively improve scheduling efficiency. The experimental data are compared and analyzed, as shown in Figures 9 and 10. Generally speaking, the task scheduling algorithm based on PISA has higher execution efficiency for high-priority tasks than those based on FIFO and fixed-priority FPSA.Figure 9
Comparison chart of execution time experiment results.Figure 10
Execution cost comparison chart.In terms of execution time, taking MS as the unit and 135 ms as the boundary, we can see in Figure9 that in the PISA test, 5 tasks were completed within 135 ms, including 3 tasks with high priority. In the FIFO test, 5 tasks were completed in time, but only 1 was of high priority. Obviously, the task scheduling strategy based on the PISA algorithm is more suitable for the resource allocation of high-priority tasks. Compared with FPSA fixed priority, both of them can provide better services for high-priority tasks. Therefore, the efficiency difference is relatively small, and the efficiency of FPSA is higher than that of PISA because FPSA takes the maximum satisfaction of high-priority tasks as the optimization condition, and optimization is more extreme.From the perspective of the execution cost, we can see from Figure10 that although the fixed priority can meet the user’s execution requirements for important priorities to a certain extent, its priority is fixed. Only the priority level of the workflow is considered, and the priority value of each task included in the workflow is not considered. Therefore, the implementation cost of FPSA is not as reasonable as that of PISA. PISA has more advantages in controlling the overall execution cost of workflow tasks. Because of its randomness, FIFO has no corresponding optimization in the execution cost, so its cost-effectiveness ratio is very low.


## 4.1. GABP Optimized RO

The cloud simulation environment used in this paper includes 10 virtual machines, each of which performs a task. We set up five users to apply to cloud computing service providers. Each user proposes a workflow, and each workflow package contains two tasks. Based on the convenience of experiments, this paper assumes that all tasks for priority factor calculation have passed the authentication of the access control model, and we only consider the priority of tasks without considering the order of task execution. In order to verify the rationality of the multitask scheduling method based on the multiconstraint scheduling algorithm, an experiment is needed. In the process of the experiment, the resource utilization, personnel utilization, and scheduling efficiency are used to measure the performance of the multitask scheduling method. The relationship among enterprise personnel, resources, and work tasks is described in Figure6.Figure 6
Relationship among personnel, resources, and tasks in enterprises.The data related to the relationship among personnel, resources, and work tasks are described in Table1.Table 1
Comparison of resource utilization of different algorithms.
Number of experimentsNumber of personnelNumber of resourcesWorkload1152202254353356554458705551080665121207751415088516180995182101010520220The traditional algorithm and the improved algorithm are, respectively, used for multitask scheduling in company management. In the process of the above experiment, the personnel utilization rate of different algorithms is shown in Figure7.Figure 7
Comparison of personnel utilization of different algorithms.The traditional algorithm and the improved algorithm are used to schedule multitasks in company management, respectively. The scheduling efficiency of different algorithms is shown in Figure8.Figure 8
Comparison of scheduling efficiency of different algorithms.According to Table1, it can be seen that using the improved algorithm for reasonable scheduling under multiple tasks in company management can improve resource utilization and personnel utilization and effectively improve scheduling efficiency. The experimental data are compared and analyzed, as shown in Figures 9 and 10. Generally speaking, the task scheduling algorithm based on PISA has higher execution efficiency for high-priority tasks than those based on FIFO and fixed-priority FPSA.Figure 9
Comparison chart of execution time experiment results.Figure 10
Execution cost comparison chart.In terms of execution time, taking MS as the unit and 135 ms as the boundary, we can see in Figure9 that in the PISA test, 5 tasks were completed within 135 ms, including 3 tasks with high priority. In the FIFO test, 5 tasks were completed in time, but only 1 was of high priority. Obviously, the task scheduling strategy based on the PISA algorithm is more suitable for the resource allocation of high-priority tasks. Compared with FPSA fixed priority, both of them can provide better services for high-priority tasks. Therefore, the efficiency difference is relatively small, and the efficiency of FPSA is higher than that of PISA because FPSA takes the maximum satisfaction of high-priority tasks as the optimization condition, and optimization is more extreme.From the perspective of the execution cost, we can see from Figure10 that although the fixed priority can meet the user’s execution requirements for important priorities to a certain extent, its priority is fixed. Only the priority level of the workflow is considered, and the priority value of each task included in the workflow is not considered. Therefore, the implementation cost of FPSA is not as reasonable as that of PISA. PISA has more advantages in controlling the overall execution cost of workflow tasks. Because of its randomness, FIFO has no corresponding optimization in the execution cost, so its cost-effectiveness ratio is very low.


## 5. Conclusion

In order to solve the problem that the stability of the model will decline due to the interference of human factors in the process of multitask scheduling in the traditional algorithm, a reasonable scheduling method based on the priority principle in company management based on the multiconstraint scheduling model is proposed. This paper expounds the principle of multitask scheduling in company management, constructs a priority-based multitask scheduling network model based on the above principles, conducts virtual scheduling on the model, searches the optimal solution in the solution space of the scheduling problem, and obtains the reasonable multitask scheduling method in the company management. The experimental results show that the improved algorithm can improve the resource utilization rate and scheduling efficiency and avoid the defect that the stability of the scheduling model is reduced in the case of multiwork doping, and the satisfactory effect is achieved. The use environment of the model is more complex, and the role mapping and permission inheritance between multiple domains are taken into account, so that it can be applied to a wider range of fields. The various types of the cloud computing simulation platform are continued to be studied and strived to expand them to better simulate task scheduling.



---

*Source: 1204815-2020-09-25.xml*