Report
Report
INTERNATIONAL UNIVERSITY
Report
Table of Content
I. Introduction ......................................................................................1
1. General information .......................................................................................................1
2. Problem statement .........................................................................................................1
I. Introduction
1. General information
One of the suggested methods to solve the OR project is CPLEX/LINGO, softwares that can
solve integer programming problems, linear programming problems with extremely large
sizes, quadratic programming problems and convex programming problems.
2. Problem statement
Before finding the solution, the task for a group of students was that they needed to decide
whether to invest in a company. The teacher guides them to perform the analysis in the
following 14 steps:
1: Learn about the stock market
2: Choose a company
3: Find information and history of the chosen company
4: Get the company's annual report and do an analysis of the indicators
5: Make a specific investment strategy
6: Evaluate the stock screening model
7: Open stock account
8: Ask for the staff or human resources at that company for information
9: Financial investment analysis
10: How will that market share change in the future?
11: learn trading discipline
12: Risk management
13: Collect stock price data and make charts
14: Evaluate data and make group decisions whether to buy stocks
1|Page
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
The objective of this problem is to satisfy the minimum time to complete the project if all
activities run on time; the activities that are critical to ensure that the project is finished in
the minimum time; the earliest start time and the latest finish time for each activity, if the
project is to be finished in the minimum time; the amount of time by which each activity
can be delayed without delaying the project as a whole. We use linear programming
software (CPLEX/LINGO) and critical path method (CPM) to solve the model for this
problem according to the provided data.
After using the given data time, the OR team of the project could achieve an optimal
solution (We will show it in detail in the next part).
1. Network
To solve this problem first we need to draw a network to have an insight about the
problem, our group chose activity on the arrow (AOA) network to illustrate the problem.
Our solution which is minimizing Cmax and finding critical path will be based on this
network.
2|Page
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
2. Set
n: Number of job
3. Index
4. Decision variables:
5. Parameter:
6. Objective function
The Critical Path is the longest path between the start and finish nodes of the project
network. So, the objective is
� �
For each node, the total input flow must equal to total output to balance the flow equation.
Our problem has only one beginning node and final node, so the critical path must go
through both. Also, it is important to assure that xij follow the presence constraints.
3|Page
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
��� = � (�)
�=�
��� = � (�)
�=�
d. Precedence constraint:
��� ≤ ��� ∀�, ∀� (�)
e. Binary constraint:
��� = �; � (�)
1. Definition
Sensitivity analysis is a systematic study of how sensitive optimal solutions are to changes
in the data. This includes the changes in coefficient of decision variables and the right hand
side..
2. Application
However, in this problem, only can the change in coefficient occur, so our analysis mainly
calculates the allowable range. Which is the allowable increase/decrease associated with
the original coefficient of a decision variable tells us the range in which the coefficient of a
4|Page
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
given decision variable in the objective function may be increased/ decreased without
changing the optimal solution, where all other data are fixed. Since, sensitivity analysis
cannot apply on integer model, we change the constraint of our decision variable (xij) from
binary to 0 ≤ xij ≤ 1. This allows us to use the Tool in Lingo to find allowable range for each
node.
5|Page
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
From the above table, we can find the range of processing time for each job (i,j) that the
optimum does not change. Take node x(0,1) as an example, the duration of this job can
change from 0.0 (Current Coefficient – Allowable Increase) to 7.0 (Current Coefficient +
Allowable Decrease).
IV. Application
To better understand how CPM works, look at Figure below, which shows a CPM diagram
for constructing a house. All of the tasks required to finish the house and an estimated time
for each have been identified. The arrows indicate the links between the various steps and
their required sequence. As you can see, most of the jobs to be done can’t be started until
the house’s foundation and frame are completed. It will take five days to finish the
foundation and another seven days to erect the house frame. The activities linked by brown
arrows form the critical path for this project. It tells us that the fastest possible time the
house can be built is 38 days, the total time needed for all of the critical path tasks. The
noncritical path jobs, those connected with black arrows, can be delayed a bit or done early.
Short delays in installing appliances or roofing won’t delay construction of the house
because these activities don’t lie on the critical path.
6|Page
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
V. Conclusion
This research used mathematical programming, based on the Deterministic model of
Operation Research, approach to formulate the decision model. Besides, we also clarified
the mathematical model into the Lingo application which is the better and quicker tool to
get the optimal solution of the model, and the final objective, in this case, is to find the ideal
critical path to manage the completion of duration. After this problem, we have chance to
approach the OR knowledge to solve the real case. And we hope that this problem will be
the motivation for the next generation of university students for knowing how to apply
what they learn and how they can handle the hard problem
VI. Appendix
1. Code Cplex: ORproject.mod
/*********************************************
* OPL 12.10.0.0 Model
* Author: Admin
* Creation Date: May 1, 2021 at 1:25:09 PM
*********************************************/
// Set:
int n=14;
// Range:
range job=0..n;
// Parameter
int P[job][job]=...;
int E[job][job]=...;
// Decision variable
dvar boolean x[job][job];
// Objective function
dexpr float z=sum(i in job, j in job)x[i][j]*P[i][j];
maximize z;
// Constraint
7|Page
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
subject to
{
8|Page
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
a) ORproject.dat
b) ORproject.xlsx
9|Page
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
model:
sets:
jobs/0,1,2,3,4,5,6,7,8,9,10,11,12,13,14/;
p(jobs,jobs):e,d,x;
endsets
data:
e=
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 1 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 1 1 0 0 0 0 0
0 0 0 0 0 0 0 0 1 1 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 0 0 0 0 0 0 1 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
;
10 | P a g e
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
d=
0 5 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 6 9 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 12 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 7 12 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 10 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 8 9 0 0 0 0 0
0 0 0 0 0 0 0 0 8 9 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 9 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 7 0 0 0
0 0 0 0 0 0 0 0 0 0 0 7 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 8 0 0
0 0 0 0 0 0 0 0 0 0 0 0 8 7 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 5
0 0 0 0 0 0 0 0 0 0 0 0 0 0 5
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
;
Enddata
!Objective function;
max=@sum(p(i,j):x(i,j)*d(i,j));
!Precedence Constraint;
@for(p(i,j):x(i,j)<= e(i,j));
11 | P a g e
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
VII. References
https://www.youtube.com/watch?v=vUMGvpsb8dc
https://sms.wgtn.ac.nz/foswiki/pub/Events/TeacherDay/WebHome/Peter_Rachel_Linear_Progra
mming_and_Critical_Path_Analysis.pdf?fbclid=IwAR13SevsgjFB__QGnAR3vMlLF3vrkCKyPxRF2Wp
CckakRmcI2JHDMggdB38
https://116.90.59.164/MODSIM03/Volume_04/C06/04_Caccetta_Project.pdf?fbclid=IwAR3ae45r
U_eSX_MU82iu3GE3WWdIC_G4JqqhJvKP6gXhoHYE4_OIV1Aj81U
http://ikucukkoc.baun.edu.tr/lectures/EMM4129/Algorithms_for_Sequencing_and_Scheduling.pdf?
fbclid=IwAR3Glsx3EoTD2EO97s44mWdsF6ZgTZHrOpucOdAE69NL2GYh8WFymrEz_pQ
https://courses.lumenlearning.com/wmopen-introductiontobusiness/chapter/production-
planning/
12 | P a g e
INTERNATIONAL UNIVERSITY Group 4: CRITICAL PATH METHOD IN
A PROJECT NETWORK
Contribution form
Name and ID Evaluation
Lê Thế Kiên 100%
IELSIU19180
Nguyễn Hoàng Ngọc Hoài 100%
IELSIU19158
Nguyễn Thanh Hòa 100%
IELSIU19156
Trần Võ Minh Duy 100%
IELSIU19138
Vương Quốc Dũng 100%
IELSIU19136
The end
13 | P a g e