Applying neural networks and analogous estimating to determine the project budget
Ricardo Viana Vargas
United Nations (UNOPS)—Universidade Federal Fluminense
This paper aims to discuss the use of the artificial neural networks (ANN) to model aspects of the project budget where traditional algorithms and formulas are not available or not easy to apply. Neural networks use a process analogous to the human brain, where a training component takes place with existing data and subsequently a trained neural network becomes an “expert” in the category of information that has been given to analyze. This “expert” can then be used to provide projections, given new situations based on adaptive learning (Stergiou & Siganos, 1996).
The article also presents a fictitious example of the use of neural networks to determine the cost of project management activities based on the complexity, location, budget, duration, and number of relevant stakeholders. The example is based on data from 500 projects and is used to predict the project management cost of a given project.
ARTIFICIAL NEURAL NETWORKS (ANN)
Some categories of problems and challenges faced in the project environment may depend on so many subtle factors that a computer algorithm cannot be created to calculate the results (Kriesel, 2005). Artificial Neural Networks (ANN) are a family of statistical learning models inspired by the way biological nervous systems, such as the brain, process information. They process records one at a time, and “learn” by comparing their classification of the record with the known actual classification of the record.
The errors from the initial classification of the first record are fed back into the network, and used to modify the networks algorithm the second time around and so on for a large number of iterations in a learning process in order to predict reliable results from complicated or imprecise data (Stergiou & Siganos, 1996) (see Exhibit 1).
Exhibit 1: Artificial neural networks architecture (adapted from McKim, 1993 and Stergiou & Siganos, 1996).
Some typical applications of ANN include the following:
- Handwriting recognition,
- Stock market prediction,
- Image compression,
- Risk management,
- Sales forecasting, and
- Industrial process control.
The mathematical process behind the calculation uses different neural network configurations to give the best fit to predictions. The most common network types are briefly described below.
Probabilistic Neural Networks (PNN)—These are statistical algorithms where the operations are organized in multilayered feedforward networks with four layers (input, pattern, summation, and output). Training is fast but it has a slow execution and requires large memory. It is also not as general as the feedforward networks (Cheung & Cannons, 2002).
Multilayer Feedforward Networks (MLF)—MLF neural networks are trained with a back-propagation learning algorithm (Exhibit 2). They are the most popular neural networks (Svozil, Kvasnička, & Pospíchal, 1997).
Generalized Regression Neural Networks (GRNN)—Closely related to PNN networks, these are memory-based networks that provide estimates of continuous variables. They represent a one-pass learning algorithm with a highly parallel structure. This algorithmic form can be used for any regression problem in which an assumption of linearity is not justified (Specht, 2002).
Exhibit 2: Training data and generalization in a multilayer feedforward network (Svozil, Kvasnička, & Pospíchal, 1997).
ANALOGY PROCESS AND DATA SET
One of the key factors of the neural networks is the data set used on the learning process. If the data set is not reliable, the results from the networks calculations will not be reliable. The use of artificial neural networks can be considered one kind of analogy (Bailer-Jones & Bailer-Jones, 2002).
Analogy is a comparison between two or more elements, typically for the purpose of explanation or clarification (Exhibit 3). One of the most relevant uses of the analogy is to forecast future results based on similar results obtained in similar conditions (Bartha, 2013). The challenge is to understand what a similar condition is. Projects in the past can be a reference for future projects if the underlining conditions where they were developed still exist in the project being subjected to analysis.
Exhibit 3: Simple analogy example: “Socks are to feet as gloves are to hands” (adapted from Spitzig, 2013).
One of the most relevant aspects of the analogy is related to the simple process of estimation based on similar events and facts. This process reduces the granularity of all calculations, where the final project costs can be determined by a set of fixed, finite variables.
DATA SET, DEPENDENT AND INDEPENDENT CATEGORIES, AND NUMERIC VARIABLES
The first step to develop an Artificial Neural Network is to prepare the basic data set that will be used as a reference for the “training process” of the neural network. It is important to highlight that usually the right data set is expensive and time consuming to build (Ingrassia & Morlini, 2005). A data set is composed of a set of variables filled with information that will be used as a reference. These references are called cases (Exhibit 4).
Exhibit 4: Structure of a basic data set.
The most common variables types are:
- Dependent Category: Dependent or output variable whose possible values are taken from a set of possible categories; for example, yes or no, or red, green, or blue.
- Dependent Numeric: Dependent or output variable whose possible values are numeric.
- Independent Category: Independent variable whose possible values are taken from a set of possible categories; for example, yes or no, or red, green, or blue.
- Independent Numeric: Independent variable whose possible values are numeric.
In the project environment, several variables can be used to calculate the project budget. Some common examples are:
- Complexity: Level of complexity of the project (low, medium, high). Usually, this is an independent category.
- Location: Where the project works will happen. This is associated with the complexity of the works and logistics. Most of the time it is an independent category.
- Budget: Planned budget of the project. It is a numeric variable that can be independent or dependent (output).
- Actual Cost: Actual expenditure of the project. Most of the time, it is an independent numeric variable.
- Cost Variance: The difference between the budget and the actual cost. It is a numeric variable that can be independent or dependent (output).
- Baseline Duration: Duration of the project. This is an independent numeric variable.
- Actual Duration: Actual duration of the project. Usually, it is an independent numeric variable.
- Duration Variance: The difference between the baseline duration and the actual duration.
- Type of Contract: Independent category variable that defines the type of the contract used for the works in the project (e.g., fixed firm price, cost plus, unit price).
- Number of Relevant Stakeholder Groups: Independent numeric variable that reflects the number of relevant stakeholder groups in the project.
Some examples of input variables are presented in Exhibits 5, 6, and 7.
Exhibit 5: Example of variables in road construction (Sodikov, 2005).
Exhibit 6: Example of key variables for buildings (Arafa & Alqedra, 2011).
Exhibit 7: Example of variables for building construction (Aibinu, Dassanayake, & Thien, 2011).
TRAINING ARTIFICIAL NEURAL NETWORKS
When the data set is ready, the network is ready to be trained. Two approaches can be used for the learning process: supervised or adaptive training.
In supervised training, both inputs and outputs are provided and the network compares the results with the provided output. This allows the monitoring of how well an artificial neural network is converging on the ability to predict the right answer.
For adaptive training, only the inputs are provided. Using self-organization mechanisms, the neural networks benefit from continuous learning in order to face new situations and environments. This kind of network is usually called a self-organizing map (SOM) and was developed by Teuvo Kohonen (2014).
One of the biggest challenges of the training method is to decide which network to use and the runtime process in the computer. Some networks can be trained in seconds but in some complex cases with several variables and cases, hours can be needed just for the training process.
The results of the training process are complex formulas that relate the input or independent variables with the outputs (dependable variables), like the graph presented in Exhibit 2.
Most commercial software packages usually test the results of the training with some data points to evaluate the quality of the training. Around 10–20% of the sample is used for testing purposes (Exhibit 8).
Exhibit 8: Training results example to forecast the blood pressure where some data are used for testing the network results (Palisade Neural Tools software example).
After the training, the model is ready to predict future results. The most relevant information that should be a focus of investigation is the contribution of each individual variable to the predicted results (Exhibit 9) and the reliability of the model (Exhibit 10).
Exhibit 9: Example of relative variable impacts, demonstrating that the salary variable is responsible for more than 50% of the impact in the dependent variable (Palisade Neural Tools software example).
Exhibit 10: Example of histogram of probability of incorrect categories showing a chance of 30% that 5% of the prediction can be wrong (Palisade Neural Tools software example).
It is important to highlight that one trained network that fails to get a reliable result in 30% of the cases is much more unreliable than another one that fails in only 1% of the cases.
EXAMPLE OF COST MODELING USING ARTIFICIAL NEURAL NETWORKS
In order to exemplify the process, a fictitious example was developed to predict the project management costs on historical data provided by 500 cases1. The variables used are described in Exhibit 11.
Exhibit 11: Variables used on the example data set.
The profiles of the cases used for the training are presented in Exhibits 12, 13, 14, 15, and 16, and the full data set is presented in the Appendix.
Exhibit 12: Distribution of cases by location.
Exhibit 13: Distribution of cases by complexity.
Exhibit 14: Distribution of cases by project budget.
Exhibit 15: Distribution of cases by project duration.
Exhibit 16: Distribution of cases by relevant stakeholder groups.
The training and tests were executed using the software Palisade Neural Tools. The test was executed in 20% of the sample and a GRNN Numeric Predictor. The summary of the training of the ANN is presented in Exhibit 17.
Exhibit 17: Palisade Neural Tools summary table.
The training and tests were used to predict the project management cost of a fictitious project with the variables as shown in Exhibit 18.
Exhibit 18: Basic information of a future project to be used to predict the project management costs.
After running the simulation, the project management cost predictions based on the patterns in the known data are US$24,344.75, approximately 3% of the project budget.
Another aspect of the analysis of the results is to provide insights about how each independent variable affects the output (Exhibit 19). In the case of the example, more than 50% of the project management cost is related to the project budget.
Exhibit 19: Relative variable impacts.
The use of artificial neural networks can be a helpful tool to determine aspects of the project budget such as the cost of project management, the estimated bid value of a supplier, or the insurance cost of equipment. Neural networks allow for a precise decision-making process without an algorithm or formula-based process.
With the recent development of software tools, the calculation process becomes very simple and straightforward. However, the biggest challenge in producing reliable results lies in the quality of the known information. The whole process is based on actual results, and most of the time the most expensive and laborious part of the process is related to getting enough reliable data to train and test the process.
Aibinu, A. A., Dassanayake, D., & Thien, V. C. (2011). Use of artificial intelligence to predict the accuracy of pretender building cost estimate. Amsterdam, Netherlands: Proceedings of the International Conference on Management and Innovation for a Sustainable Built Environment (ISBN: 9789052693958).
Arafa, M., & Alqedra, M. (2011). Early stage cost estimation of buildings construction projects using artificial neural networks. Journal of Artificial Intelligence. Faisalabad, Pakistan: Asian Network for Scientific Information.
Bailer-Jones, D., & Bailer-Jones, C. (2002). Modeling data: Analogies in neural networks, simulated annealing and genetic algorithms. In Model-Based Reasoning: Science, Technology, Values. New York, NY: Kluwer Academic/Plenum Publishers.
Bartha, P. (2013). Analogy and analogical reasoning. Palo Alto, CA: Stanford Center for the Study of Language and Information.
Cheung, V., & Cannons, K. (2002). An introduction to probabilistic neural networks. Winnipeg, Manitoba, Canada: Signal & Data Compression Laboratory of the Electrical & Computer Engineering Department, University of Manitoba.
Ingrassia, S., & Morlini, I. (2005). Neural network modeling for small datasets in Technometrics, 47 (3). Alexandria, VA: American Statistical Association and the American Society for Quality.
Kohonen, T. (2014). MATLAB implementations and applications of the self-organizing map. Helsinki, Finland: School of Science, Aalto University.
Kriesel, D. (2005). A brief introduction to neural networks. Retrieved from http://www.dkriesel.com/_media/science/neuronalenetze-en-zeta2-2col-dkrieselcom.pdf
McKim, R. A. (1993). Neural network applications for project management. Project Management Journal, 24(4), 51–55.
Sodikov, J. (2005). Cost estimation of highway projects in developing countries: Artificial Neural Network approach. Journal of the Eastern Asia Society for Transportation Studies, 6, 1036–1047.
Specht, D. F. (2002). A general regression neural network. IEEE Transactions on Neural Networks, 2(6), 568–576.
Spitzig, S. (2013). Analogy in literature: Definition & examples in SAT prep: Help and review. Retrieved from http://study.com/academy/lesson/analogy-in-literature-definition-examples-quiz.html
Stergiou, C., & Siganos, D. (1996). Neural networks. Surprise Journal, 4(11). Retrieved from http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol4/cs11/report.html
Svozil, D., Kvasnička, V., & Popsíchal, J. (1997). Introduction to multi-layer feed-forward neural networks. Chemometrics and Intelligent Laboratory Systems, 39.
APPENDIX—EXAMPLE DATA SET
1 The example was developed to demonstrate the use of the artificial networks and was not built from actual data. All data used are fictitions and should be considered only as an example.
© 2015, Ricardo Viana Vargas
Originally published as a part of the 2015 PMI Global Congress Proceedings – Orlando, Florida, USA