Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 20

School of Industrial Engineering and Management

International University-VNU HCM

LABOR COST AND ASSIGNMENT JOB PROBLEM

Minimize total wage of employees in a factory and assignment job - Industry: Textile
Company

Deterministic Models in Operations Research

Friday Morning Class - Group 8

Group 8 ID Contribution

1. Nguyễn Thị Vân Anh IELSIU21256 100%

2. Đặng Hoàng Trúc Ngân IELSIU21328 100%

3. Nguyễn Song Minh Hiếu IELSIU21297 100%

4. Phan Hoàng Yến Nhi IELSIU21345 100%

5. Trần Ngọc Minh Văn IELSIU21402 100%

6. Nguyễn Tuyết Nhiên IELSIU21347 100%


Table of Contents

I. INTRODUCTION .................................................................................................1

1. General definition .................................................................................................1

2. Background of study .............................................................................................1

3. Project objectives...................................................................................................1

4. Problem statement..................................................................................................1

5. Problem scope .......................................................................................................2

6. Problem limitation .................................................................................................2

II. MATHEMATICAL MODEL.................................................................................3

1. Set: ..........................................................................................................................3

2. Index: ......................................................................................................................3

3. Parameters:..............................................................................................................3

4. Decision variables:..................................................................................................3

5. Objective function:..................................................................................................3

6. Constraints: .............................................................................................................3

III. CPLEX APPLICATION........................................................................................4

IV.SENSITIVITY ANALYSIS ...................................................................................10

1. Definition ................................................................................................................10

2. Application ……………………………………………………………………….10

3. Effect of sensitivity analysis on results ..................................................................11

4. Sensitivity analysis..................................................................................................16

V. PRACTICAL APPLICATIONS.............................................................................17

VI. CONCLUSION.....................................................................................................18
I. INTRODUCTION
1. General definition

Deterministic Models in Operations Research is learning how to create and validate a


mathematical model as well as the processes and optimization or sub-optimization. And
computational methods of optimization including linear programming, the theory of optimal
decision-making with a linear objective function, and under linear constraints on resources.
Applications include decision theory in economics, transportation theory, optimal assignments,
production and operations scheduling, network modeling and flows, dynamic programming, and
integer programming. A student is expected to learn how to use a software package (such as
Excel Solver, LINGO/LINDO, CPLEX,...).

+ CPLEX is one of the commendable strategies to solve the OR project. The CPLEX
Interactive Optimizer is an executable program that can read a problem interactively or from files
in particular standard formats, resolve the problem, and transfer the solution interactively or in
text files.

2. Background of the study


Nowadays, the development of the world and the increase in population have made many
changes to modern life. In the global market, supply and demand are also affected by these
changes or even the price. The basic situation is that when the demand for anything increases, it
leads to the fact that its supply also suffers the same increase. In addition, many companies have
been established to adapt to the rapidly increasing demand of customers, the corresponding
employees needed must also increase. However, this incurs additional costs if there is no
reasonable method of recruiting and allocating workers, therefore, some companies are facing
fluctuating finances so the number of employees has to be reduced to the optimal quantity.
Therefore, if the company wants to maintain, it is essential for the company to assign which
worker to do each job to minimize wages and time but upgrade the productivity of workers. This
brings many benefits for cost optimization to earn the greatest profit for the business while
ensuring that the stages are performed on time and perfectly. After that, the assignment of
workers to each process will be calculated and analyzed clearly in this report by applying the
CPLEX method.

3. Project objectives
Our company is a T-shirt textile company that is implementing a plan to reduce personnel, so we
will find the most suitable solution through analysis and evaluation from many angles thanks to
CPLEX method. The purpose of this report is to minimize the amount of labor but still ensure the
quality of goods.

4. Problem statement

1
Assumed textile company is produced only T-shirts. Our company is facing fluctuating finance
so the number of employees should be downsizing. We came up with the idea that now one
employee will only be responsible for one job of the process, which helps minimize the money,
and time, and upgrade the productivity of workers.
In production processing, our company includes 10 steps of manufacturing: ginning - blending
and scutching - carding - combing - drawing - spinning - weaving or knitting - winding - warping
- sizing. And through the survey, we found the labor cost that 10 employees (from 1-10) will
complete each process and the maximum allowed labor cost for each worker. The table is shown
below:

As we mentioned there will be 10 jobs and 10 workers in this process:

Our purpose is to determine which job will be assigned to which employee and minimize the
total labor cost in manufacturing.

5. Problem Scope
This project is a case study of scheduling employees for a textile company, focusing on
assigning jobs to minimize the cost by using the CPLEX. Since the scale of this problem is small
and virtual, the database will be based on information from other companies, like time, output
capacity, productivity, et cetera.

6. Problem limitation
Our case is to find the optimal employee scheduling for 10 workers with 10 corresponding jobs
in the textile factory. As our minimization problem focuses on labor costs, the hourly wage is
essential. The difference in each worker’s wage for each job is attributed to their different levels
of proficiency. However, the levels of proficiency cannot be subjectively assessed by figures,
thus assumptions may result in inaccuracy. It would be more practical if we had more time to
survey and collect databases in reality. Moreover, unlike practical problems, our case has been

2
scaled down due to limited preparation time and the complexity of the data system.
Consequently, we have solely taken 10 jobs for 10 workers into consideration. Our goal of the
project is to apply CPLEX into manufacturing to achieve optimal solutions for minimization
problems.

II. MATHEMATICAL MODEL/ ALGORITHMS


1. Set:
In this problem, we see that there are 10 workers and 10 jobs, so we called:
+ n: number of workers (n=10)
+ m: number of jobs (m=10)

2. Index:
+ i: the worker location at i (i={1 2 3…10})
+ j: the jobs location at j (j={1 2 3…10})

3. Parameters:

Parameter name Interpretation

Wage [Worker] *[job]

C [Worker]

4. Decision variables:

+ Xij: woker*job means that the job belongs to that worker.

5. Objective function:

n m
Minimize: Z = ∑ ∑ X[i][j] * Wage [i][j]
i=1 j=1

6. Constraint:

m
● Worker constraint: ∑ X[i][j] = 1; ∀i
j=1

Explain: one job only assign to one worker.

3
n
● Job constraint: ∑ X[i][j]= 1; ∀j
i=1

Explain: one worker is assigned to one job only.

m
● Wage constraint: ∑ X[i][j] * Wage [i][j] <= C [i];
j=1

Explain: one worker is assigned to one job and that salary of the job must be lower than our
maximum allowed labor cost.

With Xij, Wage ij, Ci: a non-negative integer

III. CPLEX APPLICATION


- In Sets:
We need to identify that the solution for the number of workers and the number of jobs
must be an integer.

Figure 1: Code of sets.

- Index:
We noticed that the range for workers is from one to the number of employees, and the
range for jobs is from one to the number of jobs.

Figure 2: Code of index.

- In Parameters:
The data type for the salary of each worker i in each stage j is "Wageij"; the maximum
labor cost for each worker i is "Ci". These parameters have to be integer.

4
Figure 3: Code of parameters.

- In Decision Variables:
“dvar” stands for decision variable in the CPLEX method, which means declaring a
variable. A domain shortcut called boolean is exclusively used with decision variables (dvar).
Code “dvar boolean X[Worker][Job]” means X has to be a boolean, choose 1 or 0 that stands for
“yes” or “no”.

Figure 4: Code of decision variables.

- In Objective Function:
The below code means to minimize the sum of the salary for the first employee to the
tenth one from stage 1 (ginning) to stage 10 (sizing), where Xij will be the worker (i) who is
responsible for one out of 10 steps (j) in the creating T-shirt process and Wageij is the cost for
Xij's labor.

Figure 5: Code of objective function.

- In Constraint:
+ All workers from 1 to 10; constraint 1 for one labor is assigned only one job. There are
10 workers and 10 jobs, the sum of the number of jobs assigned to each worker must add
up to 1.

Figure 6: Code of constraint 1.


+ All jobs from 1 (ginning) to 10 (sizing); constraint 2 for each step should be undertaken
by only one person. There are 10 workers and 10 jobs, the sum of the number of workers
working on step j must be equal to 1.

5
Figure 7: Code of constraint 2.

+ All workers from 1 to 10; constraint 3 for maximum cost for each labor. The sum of the
number of workers' assigned tasks multiplied by the labor cost for each step needs to be
smaller than the allowable maximum cost for each employee.

Figure 8: Code of constraint 3.

- Overall Code:

6
Figure 9: Overall code
/*Sets*/
int Numberworker = ...;
int Numberjob =...;
/*Index*/
range Worker =1 .. Numberworker;
range Job =1 .. Numberjob;
/*Parameter*/
int Wage[Worker][Job]=...;
int C[Worker]= ...;
/*Decision variable*/
dvar boolean X[Worker][Job];
execute PRE_PROCESSING {
cplex.epgap =0.1;
cplex.tilim =100;
}
/*Objective*/
minimize

7
sum ( i in Worker, j in Job ) X[i][j] * Wage[i][j];
/*Constraint*/
subject to {
constraint_1://Worker constraint
forall (i in Worker) {
sum (j in Job)X[i][j]==1;
}
constraint_2://Job constraint
forall (j in Job){
sum (i in Worker )X[i][j]==1;
}
constraint_3://Cost constraint
forall(i in Worker) {
sum(j in Job)X[i][j]*Wage[i][j]<= C[i];
}
}
execute WRITE_RESULT {
var ofile = new IloOplOutputFile ("Result.txt")
ofile.writeln(cplex.getObjValue());//Get the value of the objective
for (i in Worker) for (j in Job){
if (X[i][j]==1){
ofile.write ("Work[",i,"]will be assigned to Job[",j,"]");
}
}
ofile.writeln("______________________");
ofile.close ();
}
→ Run code and result shown
Data is inserted into Excel worksheet and linked to CPLEX for our optimization problem.
Wage for each worker in each process and constraints in quantity are tabulated as below

8
To import Excel data to CPLEX:

After minimizing, the total labor cost supposed to be paid is $16 (~ 375,000 VND) per hour for
10 workers.

Results presented in Excel table:

9
The job is allocated for each worker to minimize the total labor cost. Worker 1 will do the
Sizing; worker 2 will do the Weaving & Knitting; worker 3 will do the Ginning; worker 4 will do
the Warping; worker 5 will do the Carding; worker 6 will do Winding; worker 7 will do the
Blending and Scutching; worker 8 will do the Drawing; worker 9 will do Spinning and worker
10 will do the Combing.

IV. SENSITIVITY ANALYSIS


1. Definition
Sensitivity analysis is the method to determine how parameters affect the optimal solutions under
a given set of assumptions.

2. Application
Sensitivity analysis has long been accepted as a valuable analytical technique when used for
capital project financial evaluation. This method is believed to be effective in determining the
factors that contribute the most to an investment's overall risk and, hence, require the most work,
even if it cannot measure risk on itself. The controlling force needs to be focused. The results of
the research on the use of various grouping sensitivity analyses with respect to staff reductions
are presented in the article. to show how this technique can be used in practice to support the
process of risk control involved with big projects. As a result, the technique's benefits and
drawbacks are mentioned.

In this report, the CPLEX method is applied to divide the work and the corresponding salary for
each employee. More specifically, the company will choose 10 employees, each of whom does
10 different jobs, we will, in turn, increase the total value of each person by 1 dollar to change
the work arrangement for the employees, they will take turns to do different jobs alternately.
This also considers whether the objective increases or decreases
3. Effect of sensitivity analysis on results

It is essential to determine which factors will affect the optimal solutions. In this part, factors
making changes in the result will be analyzed.

After applying CPLEX tools, we can find:


With the original value table:

10
A. Case 1: We add 1 unit for the maximum allowed labor cost of worker number 1 as the
following table:

The result will be changed as follows:

* In CPLEX:

11
* In Excel:

Comparing to the original solutions we receive above, we see that there are no differences with
jobs allocated for each worker and the objective keeps the same value 16.

Likewise, we add 1 unit for the maximum allowed labor cost of worker number 2 as the
following table:

12
The results obtained are similar to the two cases above.
Adding 1 unit in turns for the maximum allowed labor cost of worker number 3, number 4,
number 5, number 6, number 9, and number 10 the results obtained are still the same.

B. Case 2: However, with 1 unit - the added maximum allowed labor cost of worker 7,
there are some changes with the result.

* In CPLEX:

* In Excel:

13
There are 2 jobs that were changed to the assigned workers, including:
- Worker number 4 will be assigned to job 8 (Winding).
- Worker number 6 will be assigned to job 9 (Warping).
Other workers take over the same jobs as group case 1 and the objective remains the same value
16.

The changes in the position of jobs assigned to the workers continue to appear when we add 1
unit to the maximum allowed labor cost of worker number 8.

*In CPLEX:

14
* In Excel:

There are 4 jobs that were changed to the assigned workers, including:
- Worker number 4 will be assigned to job 8 (Winding).
- Worker number 6 will be assigned to job 9 (Warping).
- Worker number 9 will be assigned to job 4 (Combing).
- Worker number 10 will be assigned to job 6 (Spinning).
Other workers take over the same jobs as group case 1 and the objective remains the same value
16.

Therefore, we see that there are effects of the maximum allowed labor cost on the result of the
division of jobs for workers. However, these changes occur only when we increase the value of
the cost of the worker's orders within an allowable range from the 7th to the 8th worker. After

15
that, no change occurs for the additional cases by 1 unit to the maximum allowed labor cost of
the remaining workers.
4. Sensitivity analysis

Therefore, the changes happen only when we increase the value of the costs of the worker's
orders by 1 unit within an allowable range from the 7th to the 8th worker.
+ In case 1: We add 1 unit to the maximum allowable labor cost of worker 7, there are
some differences with the outcome.
Namely, there are two jobs that altered the assigned workers, consisting of:
- Worker number 4 will be assigned to job 8 .
- Worker number 6 will be assigned to job 9.
+ In case 2: With 1 added unit to the maximum allowable labor cost of worker 8, there are
also changes with the result.
Namely, there are four jobs that altered the assigned workers, consisting of:
- Worker number 4 will be assigned to job 8.
- Worker number 6 will be assigned to job 9.
- Worker number 9 will be assigned to job 4.
- Worker number 10 will be assigned to job 6.
Nevertheless, there is not any adjustment that exists as well as the objective does not alter for the
other cases when we raise 1 unit to the maximum acceptable labor cost of the rest workers.

V. PRACTICAL APPLICATION

From the project and model that our group has conducted above, Nam Thuan Garment
Factory's strategies can be considered an application.

Nam Thuan Garment Factory established in 2019 is located in Dien My village, Dien Chau town,
Nghe An province. With a total space of up to 22,000 square meters (~2 hectares) and 1,000
workers, right now the company is facing assignment job problems due to lack of workers.

16
According to https://cand.com.vn/ of April 2023 that from the end of 2022 up to now, due to
general difficulties of the textile and garment industry, the unit has to reduce labor to 300
workers, and each worker only works from 15-16 days/month. Every month, this business has to
compensate for a loss of 1.5 billion dong to pay salaries and pay social insurance for workers.

So our group recommends this model for the company to solve the assignment job problem and
also minimize the total labor cost according to the maximum allowed labor cost for each worker
as the company desire.

If the range of employees is huge, we advise the company to use Excel and sheet connection in
CPLEX as the code shown above.

VI. CONCLUSION
Through this case study, we have the opportunity to apply our knowledge, thereby
learning more about the arrangement of personnel for the garment factory in this case. In this
project, we apply the knowledge we have learned, such as linear programming, to build the
model. In addition, we also use the CPLEX application to solve this problem; this is the best and
fastest tool that we currently know that can find the optimal solution for the model and minimize
the labor wage for the textile company. Although there are many shortcomings in the

17
implementation process, we can still handle them. In the future, we will be more confident in
solving practical problems.

18

You might also like