CIV 1275F - Construction Modeling Methods

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 11

CIV 1275F - Construction Modeling Methods

Assignment #2 – Belief Network

David Magarici Nahon - Student Number: 1005561045

October 24th, 2018

Table of Contents

Introduction to the Problem and Objective: ______________________1

Model and Methods:________________________________________2

Discussion, Analysis and Results: _____________________________6

Conclusion: ______________________________________________9

References: _____________________________________________10

I hereby certify that I am thoroughly familiar with the contents of this


project/ assignment/ essay/report. It is my own work. I have
referenced all my sources of information where the work is not my
own. I am the sole author.
______________, David Magarici Nahon, October 24th, 2018
1

Introduction to the Problem and Objective:

The second assignment for the class was focused on familiarizing the students with
artificial intelligence and Bayesian Network models. This model was used to calculate the
probabilities of a previously defined network for an earlier assignment (2a). The main
purpose of the assignment was for students to properly understand Bayesian Network
models, how to prepare one utilizing MSBNx software, and finally, how to analyze the
results obtained, evaluating if they were right or wrong.
Another important point to discuss for the assignment was the exact scope and objective
of the network produced. While growing up, one of my hobbies was to go sailing with my
dad and having participated in many regattas, I wanted to create a model that could
predict the good or poor performance of a sailor in a race. This model focuses on smaller
boats, as they are my main amusement and follow my experience. To test it, a
hypothetical scenario will be proposed in the Model and Method section.
In order to understand the methodology used to create the model mentioned beforehand,
it is important to know what a Bayesian Network model is, and how it was utilized. A
Bayesian Network is defined as a graphical structure used to represent a certain domain,
utilizing nodes, probabilities, and arrows that connect such nodes; also denominated as
activities. Knowing this, it is possible to discuss what the models used to solve the
problem were (Ben-Gal, 2008).
Such models require a lot of data gathered from experts on the field and usually are
created using computer software, as it allows for quicker node assessment. The program
used for this model was MSBNx, as it is simple to use, widely available and free of charge.
2

Model and Methods:

To create this model, it is important to know where would the qualitative and expected
quantitative data may come from, since most of the time, they are the main content of a
Bayesian Network model and allow the engineer to obtain proper results. If said data is
incorrect, the model will be so too, so engineers must take special care when handling
this data. The quantitative data refers to how the arrows will connect on the model and
will come from a matrix questionnaire prepared by me, which will then be filled out by
experts on the topic. The matrix will show a relation between all nodes proposed for the
model, in which the experts will fill out the cells where a relationship is present. A summary
of this matrix is presented next.

Another important point to highlight is the anticipated sources of qualitative data. I


anticipate the qualitative data (probabilities) to come from a survey I send out to two
experts on the sailboat racing field, besides my own inputs on said survey. The results
from the survey will then be averaged and said average is presented in the Discussion,
Analysis and Results section. It is crucial to present the expert’s background on the topic
for an unbiased opinion on the sailboat matrix, which are presented next.
3

Melissa Benhamu - Ms. Benhamu has been involved in water-sports ever since she was
a little girl. Now, after having more than 15 years of experience sailing different types of
boats, and also being one of the best kite surfers in Australia, she has settled down and
left sailing. Nevertheless, her experience will be valuable when gathering qualitative data
for the Bayesian Network model.
Meyer Magarici - Dr. Magarici is an experienced sailor with more than 1000 hours on the
sea. After being captain of a 30-foot vessel, he decided to go into a sport with smaller
boats, and that is where he found sunfish sailboats. In the 1990’s he went on to win
several national regatta trophies in Venezuela, where he came out on top on more than
3 highly skilled competitive races.
David Magarici - Myself. I have had 8 years of experience sailing sunfish boats and have
participated in 5 regattas. While I have not won any of them, I have vast experience with
sailing and what is required for a good race performance.
After speaking with the experts and gathering all the required quantitative and qualitative
data, I prepared the Bayesian network model presented below. All the nodes will be
explained with the objective of a proper understanding of the model.

Figure 1: Bayesian Network for Finishing Position in a Sunfish Regatta

Underside: Probability of the boat’s underside clean or dirty, as debris slows down boats.
Rudder: Probability of the rudder being in optimal or subpar conditions.
4

Daggerboard: Probability of the daggerboard being in optimal or subpar conditions.


Hull: Probability of the hull being in optimal or subpar conditions, given underside, rudder
and daggerboard information.
Line: Probability of the line being in optimal or subpar conditions.
Sail: Probability of the sail being in optimal or subpar conditions.
Pulley: Probability of the pulleys being in optimal or subpar conditions.
OtherComponents: Probability of all “secondary” components being in optimal or subpar
conditions, given line, sail and pulley information
EquipmentCondition: Probability of the overall’s boat condition being optimal or subpar,
given hull and secondary component’s information.
WindSpeed: Probability that the wind speed will be low, medium, or high.
WindDirection: Probability that the sailor can properly catch the wind is advantageous or
disadvantageous.
WindCondition: Probability the wind condition is favorable or not favorable for the sailor
in the race.
Waves: Probability of waves being present or not in the race.
WaterCurrents: Probability of water currents being favorable or not for the race.
WaterCondition: Probability of the water condition being flat or rough given the waves and
water currents information.
CrewWeight: Probability of the crew being a standard weight, or overweight.
BoatSpeed: Probability of the boat speed being low, medium or high given equipment,
water and wind conditions, besides crew weight.
CrewExperience: Probability that the crew sailing the boat has low, medium or high
experience.
CrewPMCond: Probability that the crew has adequate or inadequate physical and mental
conditions.
Crew: Probability that the crew is considered good or bad, given their experience and
physical and mental conditions.
FinishingPosition: Probability the boat finishes in the top or bottom half of the race given
the crew “quality” and boat speed.
5

It is important to mention that this model assumes all equipment is completely functional
for the race, as it is expected for racers to have equipment in working order, but optimal
conditions are not enforced. Additionally, sailors typically race with their boats and
equipment, which means that the boat used may vary slightly between competitors.
For the model testing, a hypothetical scenario of a sailor had problems finishing on the
top half of the contestants is proposed. After an interview, the sailor affirmed that prior to
the regatta he saw that his rudder, daggerboard and lines were in poor conditions.
Additionally, he mentioned that there were waves during the race, he could not catch wind
properly, and that he had gained much more weight that he had on his previous race.
Finally, the sailor admitted that he had very little experience in races. All these factors will
be put in the model. It is assumed that no more evidence is given.
6

Discussion, Analysis, and Results:

In order to create a functional Bayesian Network model for a sailboat race, it was
important to gather information about the probability of the state proposed for all nodes in
the network. In order to get those probabilities, I created a Google Forms survey that I
communicated to the other experts and kept for myself in order to fill out all the
probabilities for each node.
This survey was designed to ask the experts the different probabilities an event could
possibly happen and allowed them to score it from 0 (highly unlikely) to 10 (highly likely).
Once the survey was completed, the results were tabulated in an Excel sheet, and then
an average was taken for the response of all 3 experts. If the results seemed too far from
each other, the experts were contacted again for them to revise their initial answer. It is
important to mention that since there is no 100% certainty in real life experiences, those
answers were taken as 0.99, and their inverses, instead of being 0, were taken as 0.01.

The Excel sheet with the tabulated average results is presented next:
7

From this table, it can be seen how all the information on the probabilities was gathered,
and then taken an average for all the answers given by the experts. Since the survey
included answers that were increasing in 0.1 values, it can be seen that most answers go
in 0.1 increments.
Some important aspects that are also important to mention are the validity and verification
of the model. In order to verify the model, I checked that all the probabilities I entered in
the MSBNx model were correct, comparing what was entered in the model with the Excel
sheet proposed beforehand. Once that was complete, I did a trial run of the model by
putting evidence on one of the nodes and checked how the probabilities changed for the
FinishingPosition node. This allowed the realization that the structures and probabilities
were indeed correct. After a first pass of the model, I realized that the Crew node was not
properly functioning. Because of this, I decided to create a new node and give it the same
properties, and after that, the model worked accordingly. To validate the model I made
sure the model was giving the correct responses, by doing a pass were I checked every
single node with evidence, and then started adding more evidence throughout the model.
This allowed me to see how the model was functioning besides permitting the validation
of the nodes. After all the passes, the model was proven to function correctly.
The last crucial step in verifying that the model is working perfectly is doing a sensitivity
analysis on the nodes and noting which ones should be investigated further for
understanding of how the model works. The most efficient way of checking the sensitivity
of certain nodes is to input evidence at certain nodes of the model. After inputting
evidence in all the model’s nodes, the Crew Weight, Crew Experience and Waves nodes
were found to be the most sensitive from the parent nodes with a respective increase in
the BottomHalf probability of the FinishingPosition node of 11%, 9% and 7%. On the
equipment conditions side, the node that is the most sensitive is the Sail with an increase
in the BottomHalf probability of the FinishingPosition node of 1.5%. However, I believe
that the sail node should be investigated further, since it impossible to cruise without a
sail.
Now that all this information is known about the model, the hypothetical scenario may be
analyzed. As explained in the Model and Methods section, the sailor had problems
finishing on the top half of the contestants, and after his interview, he affirmed that before
8

the regatta he saw that his rudder, daggerboard, and lines were in poor conditions.
Additionally, he mentioned that there were waves during the race, he could not catch wind
properly, and that he had gained much more weight that he had on his previous race.
Finally, the sailor admitted that he had very little experience in races. All these factors
were put in the model. It is assumed that no more evidence is given. The final result for
finishing position from the model is shown next.

Figure 2: Bayesian Network Model for the Sailor (Including Evidence)

After analyzing the result, it can be seen that there was an almost 62% chance that the
sailor would finish in the bottom half of the competitors, something that actually occurred.
Some recommendations for the sailor in order to do better his next race would be to
practice how to catch the wind better, get more experience by spending more hours at
sea, and lose some weight, as an excess of weight greatly affects the boat speed.
Additionally, repairing the different boat’s components before the race starts would slightly
improve the equipment’s condition, which would subsequently increase the boat’s speed.
9

Conclusion:

This assignment was a great tool in getting the students introduced into the world of
Artificial Intelligence in the field, as well as getting practice in creating Bayesian Network
models using the MSBNx program.
Creating this Bayesian network allowed students to understand the different relations and
weights various activities may have in a final result, as expressed on the Results section.
Moreover, this assignment exposed the importance of not taking a simple average and
standard relationship between two items that may be completely unrelated. Bayesian
Models allow for items that cannot be modeled in a standard graph to get relations
between them.
After finishing the models and hypothetical scenario, it can be seen how important it is to
understand the sensitivity of a node, as well as verifying and validating the model. A minor
mistake in a node can cause a vast error in the final probability for the last node.
Another important skill students obtained from this assignment was to contact with
experts with different backgrounds, interpret the data the experts provided from a survey
and convert said data into Excel tables that could be easily managed.
One thing that I would have done differently while completing the assignment would have
been allowing the experts to revise the parent nodes and allow them to make any
additions or changes as seen necessary. I would also connect the experts between each
other so that they could discuss their ideas. Another thing I would do differently would be
in the step of the network creation. I utilized a top-down approach where I started with the
parent node and went straight down to the last child. Finally, I would have been a bit more
specific when I made ranges for the probabilities on the network, since I presented the
state as low, medium and high for example. This may generate a some expert bias that
could be avoided by being more specific and presenting exact numbers.
10

References:

Ben‐Gal, I. (2008). Bayesian networks. Encyclopedia of statistics in quality and


reliability, 1.

You might also like