联系我们: 手动添加方式: 微信>添加朋友>企业微信联系人>13262280223 或者 QQ: 1483266981
MECH5495M Home Assignment v1, 2024-02-09
MECH5495M Engineering Psychology & Human Factors
Home Assignment (40% of the total module mark)
General instructions
Please submit via Minerva. The deadline is 12.00 noon Thursday May 2, 2024.
The maximum mark on the home assignment is 100. For full marks, all four tasks need to be carried
out. The estimated total workload is about 40 hours (but note that if you do not have a good prior
grasp of MATLAB, especially tasks 1(e), 4(f), and 4(h) may not be feasible within this time.)
Never copy any text or code from another student – even with the intent to completely edit it.
Collusion and plagiarism will be detected, and will have severe consequences for you.
For further guidance on academic integrity, use of generative AI, and on when you can start working
on the different tasks, see the Minerva pages > Assessment and Feedback > Home assignment.
Your submission should consist of a single report with your answers for the four tasks, in a format
compatible with Turnitin (e.g., Word .docx, Acrobat .pdf), using your student ID as the “title” of your
Turnitin submission. Further instructions:
Please include your student ID on at least the first page of the report.
On the first page of your report, clearly indicate the total word count, excluding cover page
and reference list (if you have these) and any MATLAB code (see further below).
Your answers are marked on content, not length. The maximum total word count is 3500.
Any parts of the report extending beyond this word count limit will not be marked.
MATLAB code written by you, with understandable variable names and code comments,
should be included as part of your responses to the following tasks:
o Task 1b: The part of do_1_CalculateMetricValues.m written by you.
o Task 1e: All code written by you.
o Task 4f and h: The parts of SimulateRearEndCollisionScenario.m written by you.
For some further guidance on MATLAB, including variable naming conventions, see the Appendix at
the end of this document.
Task 1: Analysing pilot control data [20 marks]
(The data for this task were kindly provided by Dr Andreas Haslbeck,
from a study with Lufthansa First Officers in a flight simulator at the
Technical University of Munich.)
Let us assume that you are part of a team investigating the manual
flying behaviour of pilots, as an input to further development of a fly_x005f by-wire system. As a first step you run a small flight simulator
experiment with eleven pilots, and record their use of the side-stick
control, in both pitch (forward/backward) and roll (left/right) directions
during an approach to landing, from an initial altitude of about 4500
feet above ground. You want to study the behaviour both in an early
phase, between 4500 and 1500 feet, and a late phase, from 1500 to
50 feet. Based on literature and your own past experience, you
hypothesise that pilots will be more active in their side-stick input in
the late phase (i.e., at lower altitudes) than in the early phase (i.e., at high altitudes).
An Airbus side-stick.
(https://commons.wikimedia
.org/wiki/File:Airbus_A380_
cockpit_zoom_on_sidestick.
JPG)
MECH5495M Home Assignment v1, 2024-02-09
2
The eleven recordings are provided in the file PilotData.mat, which can be loaded into MATLAB using
the load command. This loads a structure SPilotData into the MATLAB workspace, and SPilotData(1)
provides the data signals recorded for the first pilot, and so on. For each pilot, there are data vectors
holding time stamps in seconds, the altitude in feet, and side-stick deflection in pitch and roll
directions, with ±1 indicating full deflection and 0 indicating no side-stick input.
(a) Inspect the recorded data by plotting the various signals as a function of time. (For example,
plot(SPilotData(1).VTimeStamp_s, SPilotData(1).VAltitude_ft) will plot the altitude signal for the
first pilot as a function of time.) Looking at the data, do you see any indications that there may be
support for the hypothesis suggested above Provide one or two example plots supporting your
answer. [3 marks]
Let us denote the pitch and roll deflections of the side-stick by and respectively, and let us assume
that you decide to test two different metrics quantifying how active the pilots are in their control: (1)
, the fraction (i.e., a value between 0 and 1) of time during an approach phase when the pilot
provided non-zero input, defined as at least one of | | or | | exceeding 0.01 (1% of full side-stick
deflection). (2) , the average, during a phase of the approach, of the combined side-stick
deflection = √ 2 + 2.
The provided MATLAB script do_1_CalculateMetricValues.m loads the data, loops through all of the
recordings, identifies the early and late phases, calculates metric values, stores them in two matrices
and saves these in a file MetricValues.mat. The metric is already implemented, but not the
metric.
(b) Implement the calculation of in do_1_CalculateMetricValues.m, and provide the relevant
line or lines of MATLAB code (not the entire .m file) in your report. [4 marks]
The provided MATLAB script do_2_StatisticalAnalysis.m loads the MetricValues.mat file, generates
overview plots of the metric data, applies Wilcoxon’s signed-rank test (testing the null hypothesis that
the early and late phase data have the same median), and calculates effect size (Cohen’s d).
(c) Run do_2_StatisticalAnalysis.m, and provide in your report the generated figure (with box plots
and statistical analysis results), together with a discussion of the obtained results. Is there support
for the hypothesis that pilots are more active in their control in the later phase of the landing
approach Motivate your answer, and discuss why you think pilots behave the way suggested by
the results, ideally with reference to some concepts you have learned in this module. [5 marks]
(d) In (c) you drew a conclusion about whether pilots are more active in the later phase of the
landing approach. Does this conclusion apply to all pilots, as individuals Justify your answer.
[2 marks]
(e) Write MATLAB code to carry out one further piece of analysis of this dataset. This can be
anything you find interesting or useful, such as a different way of visualising the data, or calculation
of some other objective metric (e.g., how common is it that pilots move the side-stick in just one of
the two directions at a time, versus applying both pitch and roll inputs at the same time ), or a
different way of structuring the analysis (e.g., divide the approach into more than just two phases,
or look separately at individual pilots to see if they differ in their overall control strategies, …), or
even further statistical testing, if you know what you are doing. If you want to, you can consult for
example (Haslbeck et al., 2016) or (Haslbeck et al., 2018) for inspiration. In your report, explain
what question you are trying to answer with your analysis, describe what you have done, provide
one or more figures illustrating your results, and briefly discuss what you have found. Also provide
your full MATLAB script file(s) in your report (in an appendix if you prefer). [6 marks]
MECH5495M Home Assignment v1, 2024-02-09
3
Task 2: Evaluating external HMI design for automated vehicles [20 marks]
In the most advanced levels of road vehicle automation, it is envisioned that human occupants will
not at all need to monitor the driving, or that there may not even need to be a human in the vehicle
(SAE Level 4 or 5; Society of Automotive Engineers International, 2018). One concern with respect
to such automated vehicles (AVs), is how to make them capable of interacting effectively with human
road users, for example pedestrians. In current traffic, a human driver may for example make eye
contact with a pedestrian that is waiting to cross the road, apply deceleration and maybe signal with
a hand gesture or by flashing the headlights that the pedestrian can cross.
An illustration of pedestrians crossing the road
(Source: https://www.highwaycodeuk.co.uk/rules-for-pedestrians-crossing-the-road.html)
(a) Imagine a pedestrian who is wanting to cross a road (like in the photo above), and who is
looking at an approaching, human-driven vehicle, trying to determine whether or not the driver is
yielding to let him or her cross. Using the information processing model of cognition, and any other
concepts from the module you find useful, describe roughly what you think may be happening in
the pedestrian’s brain while he or she is making the decision to cross or not in front of the vehicle.
(Note: There is no clear right or wrong answer here; what is important is that you are able to use
the module’s taught concepts in a reasonable way.) [3 marks]
In various studies, participants have reported that putting external displays on the outsides of vehicles
“would be helpful when autonomous vehicles become available” (Clamann et al., 2017). Therefore,
researchers are now trying to design external human-machine interfaces (eHMIs), to enable AVs to
communicate with other road users. Two potential designs are proposed below.
Design 1 suggests that a green light will be presented to indicate that the AV is accelerating and a
red light will be presented to indicate that the AV is decelerating.
Design 1
(AV is accelerating) (AV is decelerating)
MECH5495M Home Assignment v1, 2024-02-09
4
(b) Describe and explain two different ways in which Design 1 may be problematic from an
information processing point of view. You should consider at least two of the following aspects:
perception; working memory; long-term memory. [5 marks]
(c) Consider the perceptual and memory principles of display design, as described in the course
book. Choose one of these principles, describe the principle, and explain how Design 1 is not
properly taking the principle into account. [2 marks]
Design 2 instead shows a text message ‘Please Cross’ to indicate that the pedestrian is safe to cross,
and ‘Please Do Not Cross’ to indicate that it is not safe for the pedestrian to cross.
Design 2
(It is safe to cross in front of the AV) (It is not safe to cross in front of the AV)
(d) Describe and explain two different ways in which Design 2 may be problematic from an
information processing point of view. You should consider both of the following aspects: bottom up processing and top-down processing. [5 marks]
(e) Consider the perceptual principles of display design, as described in the course book. Choose
one of these principles, describe the principle, and explain how Design 2 is not properly taking the
principle into account. [2 marks]
(f) Taking into the account the principles of display design you have considered in (c) and (e)
above, suggest and briefly describe an eHMI that you think may be better than Design 1 and 2.
You can provide a graphical illustration of your suggested eHMI if you want, but it is also ok to just
describe it in text. [3 marks]
MECH5495M Home Assignment v1, 2024-02-09
5
Task 3: Human Factors evaluation of an automated vehicle (AV) accident [20 marks]
On May 7, 2016, a vehicle with automated driving capabilities (AV) collided with a tractor trailer
crossing an uncontrolled intersection on a highway west of Williston, Florida, resulting in fatal injuries
to the AV driver. Data obtained from the AV indicated that: 1) the AV was being operated in SAE Level
2 mode at the time of the collision; 2) the Automatic Emergency Braking (AEB) system did not provide
any warning or automated braking for the collision event; 3) the driver took no braking, steering or
other actions to avoid the collision; and 4) the last recorded driver action was increasing the cruise
control set speed to 74 miles/h = 119 km/h about two minutes prior to impact. The crash occurred on
a clear day with dry road conditions. On June 21, 2016, NHTSA deployed a Special Crash
Investigations team to the crash site to evaluate the vehicle and study the crash environment.
NHTSA’s crash reconstruction concluded that the AV’s sensors did not detect the tractor trailer, but
that the tractor trailer should have been visible to the AV’s driver for at least seven seconds prior to
impact.
(a) Leaving aside the technical failings of the automation system, there are a number of “Problems
with Automation”, from a human-factors perspective in the described scenario. Drawing on your
knowledge of these, select and describe two “Problems with Automation” from the module material
that you think best account for why the above accident occurred. Also provide a figure
showing a hypothetical timeline of the time before the crash, to show when you think those
problems started. [4 marks]
(b) Make a fault tree analysis of this accident, showing how you think technical errors and human
errors may have contributed to causing this crash. You will probably want to use at least five
(probably more) events besides the crash itself, and at least one or two AND or OR gates. You do
not need to write text in addition to the fault tree, as long as you make sure to label each event in
the tree with enough detail to make it easily understandable. [4 marks]
(c) Discuss how your fault tree analysis maps on to the different parts of the accident causation
model in Fig 16.1 of the course book (Lee et al., 2017, 3rd ed.). [6 marks]
(d) Drawing on your fault tree analysis and at least 2 of the principles of human-centred automation
taught in the module, discuss how you would design the automation system to mitigate the two
“Problems of Automation” you listed above as possibly contributing to the accident. Please share
a hypothetical example of how your design solution would alleviate similar situations. [6 marks]
AV
AV
AV
MECH5495M Home Assignment v1, 2024-02-09
6
Task 4: Modelling driver responses during automation failures [40 marks]
Let us assume that you are part of a team
developing automated vehicle functionality,
and that you are tasked with developing a
driver model that can help you better
understand situations such as the accident
described in Task 3 above. As a starting
point, you make use of a model by Markkula
et al (2016), describing driver braking, as
observed in real critical rear-end collision
situations with manually driven vehicles. As
illustrated to the right, this model’s behaviour
is dependent on the urgency of the situation,
quantified in terms of the time left to
collision, assuming constant velocities of
both involved vehicles (i.e., assuming the
driver does not take any action). 0 is the
initial time to collision, at the time = 0 when
the collision threat becomes physically
visible to the driver, e.g., 0 = 7 s for the crash described in Task 3.
The model suggests that in critical rear-end situations, drivers respond with deceleration as a
piecewise linear function (the blue curve above), with the deceleration onset time obtained as:
= 0.2 + ( 0.2
), (1)
where 0.2 is the first time at which the driver sees a of 5 seconds or less, is the time at which
collision occurs if the driver maintains constant speed (i.e., = 0), and is a random value, drawn
from one of two distributions as shown below. The “eyes-on-threat” normal distribution is used if 0 >
5 s (the type of situation shown in the plots above), and the “eyes-off-threat” lognormal distribution is
used if 0 ≤ 5 s. Note that in this latter case, 0.2 = 0 by definition. Also note that in both types of
situations, a randomly drawn ≥ 1 means that the model does not apply any deceleration before
crashing.
The black curves show probability distributions for the Markkula et al (2016) braking model, with
values for means (m) and standard deviations (s). The blue histograms show observed human data.
The other two random variables in the figure above are , the final acceleration level applied by the
model, and , which is a scale factor for the rate of change of acceleration rate , obtained as:
=
1
, (2)
where is at the time of brake onset.
MECH5495M Home Assignment v1, 2024-02-09
7
(a) How would you explain the Markkula et al (2016) model to someone who isn’t good at maths
Explain in your own words, without mathematical notation, how the model describes near-crash
braking behaviour, and how this behaviour is affected by the urgency of the situation. [4 marks]
The provided MATLAB script do_SimulateRearEndCollisionScenario.m calls a function
SimulateRearEndCollisionScenario, which implements and simulates this driver braking model for a
collision obstacle with zero speed in the forward road direction. As provided, the script runs the
scenario once, configured as a reconstruction of the crash described above in Task 3, with a 12 m
wide obstacle (representing the tractor trailer), initial speed 0 = 119 km/h, and 0 = 7 s. Each time
you run do_SimulateRearEndCollisionScenario.m, you will get a figure window showing a bird’s eye
view of the road with the obstacle at longitudinal position = 0, and trajectory and final position for
the modelled car, blue or red for non-collisions and collisions respectively. The figure window also
shows time series plots of a number of useful quantities. Due to the probabilistic nature of the model,
each time you run it you will get a different result. You can also run many simulations at a time, by
changing the setting of the variable c_nMonteCarloSimulations in the script.
(b) Recall that the human driver of the AV in the crash described in Task 3 did not respond at all
before the crash. How common is this type of behaviour among drivers of manually driven vehicles
in critical rear-end scenarios, according to the Markkula et al (2016) model Justify your answer
mathematically and/or with simulation results. [4 marks]
(c) Based on your result in (b), would you say that the AV driver’s behaviour in the described crash
was similar to or different from what would be expected from a driver of a manually driven vehicle
in the same traffic situation Justify your answer, and briefly discuss possible reasons for this
similarity/difference (it is ok to refer back to answers you provided in Task 3). [4 marks]
Obstacles at zero speed along the road’s forward direction are difficult to reliably detect with current
automotive sensors, and many on-market automated driving systems therefore come with disclaimers
saying that that the system may not respond at all if, for example, a vehicle that you are following in
automated mode changes lanes to reveal a stationary obstacle further ahead.
Let us assume that you are tasked with using the driver model to provide rough, simulation-based
predictions about this type of “reveal” scenario. You wish to investigate whether serious accidents
can be avoided by ensuring that the automated vehicle always keeps a long enough time gap to
the lead vehicle. As a first step, you assume that the driver monitoring the automation is reasonably
attentive, and that their braking behaviour can therefore be approximated by the Markkula et al (2016)
model. You wish to study a scenario at 70 mph = 113 km/h, where the lead vehicle changes lanes to
reveal a stationary obstacle of width 2 m, just 0.5 s before reaching it, such that 0 = + 0.5 s.
(d) Modify the parameter settings in do_SimulateRearEndCollisionScenario.m to run many
simulations of this “reveal” scenario. Please note that you do not need to include the original, lane changing lead vehicle in any way, since it is assumed to already have changed lanes when the
simulation starts. A time gap setting that would be considered relatively typical for manual driving
is = 1.5 s. With this time gap, what is the model’s predicted frequency of collisions in general,
and of collisions at more than 60 km/h speed [3 marks]
Let us assume that your design goal is to keep the risk of > 60 km/h collisions lower than 25%, but
that you also want to keep ≤ 3 s, because drivers are unlikely to accept larger settings.
(e) According to the model, is it possible to achieve this design goal As part of your answer,
provide a plot showing the frequency of collisions at more than 60 km/h as a function of
between 1 s and 5 s. (Tip: the function SimulateRearEndCollisionScenario returns number of
MECH5495M Home Assignment v1, 2024-02-09
8
collisions at > 60 km/h as an output nHighSpeedCrashes, so if you want to you can modify
do_SimulateRearEndCollisionScenario.m to loop through different time gap settings
programmatically, instead of going through them manually.) [5 marks]
Next, you wish to model also the possibility of steering avoidance (to the left, in this right-hand driving
scenario). Maybe shorter time gap settings are possible when the adjacent lane is free Let us
assume that you have data indicating that avoidance steering can be modelled independently from
the braking, using the same type of piecewise linear function as the braking model, to describe the
vehicle’s curvature (roughly proportional to steering wheel angle) over time, with parameters:
– eyes-on-road:
m = 0.88; s = 0.87
– eyes-off-road:
m = 1.27; s = 0.77
k:
m = 0.031; s = 0.042
A:
m = 0.010; s = 0.0025
The function SimulateRearEndCollisionScenario is prepared for handling such a model, which will be
activated when the input parameter c_SModelParameters.bSimulateAvoidanceSteering is set to true,
but the model itself is not implemented in the provided version of the file.
(f) Implement, in SimulateRearEndCollisionScenario.m, the avoidance steering model, and provide
the code you have written (not the entire .m file) in your report. Leave the braking model untouched,
and note that you will need to copy and adapt code from the braking model in two places: to set
up a structure c_SSteeringModelParameters (or similar name), e.g, somewhere around line 48,
and to add a new call to the function PiecewiseLinearAvoidanceModel, at line 81. (Line numbers
will obviously change as you edit the originally provided function.) Provide, in your report, a figure
showing results for a set of simulations at some . Does the presence of steering avoidance
change the conclusion you made in (e) with respect to your design goal [7 marks]
Finally, you also want to consider the “stabilisation” steering that
happens after steering avoidance. Maybe drivers are likely to lose
control of the vehicle at this stage Let us assume that you have data
indicating that the model proposed by Re ski (1998) acceptably
reproduces stabilisation steering in this scenario:
( ) = ( ),
where is a control gain, is a control delay, and ( ) is the
momentary angle (in radians) between the vehicle’s heading and a sight
point in the middle of the target lane, a preview time further down the road. Again, the function
SimulateRearEndCollisionScenario is prepared for handling such a model, activated using
c_SModelParameters.bSimulateStabilisationSteering, but the model is not implemented.
(g) Similarly to task 4(a), explain in your own words how the Re ski (1998) model describes driver
steering, in a way such that it is understandable to someone who is not trained in mathematics or
control theory. [4 marks]
(h) Implement the stabilisation steering model in SimulateRearEndCollisionScenario.m, adding
your code from line 117 (line numbering of originally provided file), using = 0.1, = 0.2 s (tip:
exactly two of the 0.1 s simulation time steps), and =1.5 s. You will need to understand and use
(at least) the variables iTimeStep, VY, VLongitudinalSpeed, VHeading, and
c_SScenarioParameters.laneWidth. Provide the code you have written (not the entire .m file) in
your report, and explain clearly what each line of your code is doing. Also provide a figure in your
report showing simulation results, where the model’s stabilisation steering is visible (e.g., the
vehicle trajectories), for some . Assuming that the model is a good representation of human
steering, does stabilisation seem to be a concern in this scenario Justify your answer. [9 marks]
MECH5495M Home Assignment v1, 2024-02-09
9
References
Clamann, M., Aubert, M., & Cummings, M. L. (2017). Evaluation of vehicle-to-pedestrian
communication displays for autonomous vehicles. Proceedings of the 96th TRB Annual Meeting.
Haslbeck, A., & Hoermann, H. J. (2016). Flying the needles: flight deck automation erodes fine motor flying skills among airline pilots. Human factors, 58(4), 533-545.
Haslbeck, A., Hoermann, H. J., & Gontar, P. (2018). Stirring the pot: comparing stick input patterns
and flight-path control strategies in airline pilots. The International Journal of Aerospace
Psychology, 28(1-2), 15-30.
Markkula, G., Engstr m, J., Lodin, J., B rgman, J., & Victor, T. (2016). A farewell to brake reaction
times Kinematics-dependent brake response in naturalistic rear-end emergencies. Accident
Analysis & Prevention, 95, 209-226.
Re ski, A. (1998). The driver model and identification of its parameters. SAE Technical Paper No.
980011.
Society of Automotive Engineers International (2016). Taxonomy and definitions for terms related to
driving automation systems for on-road motor vehicles. Standard J3016_201806.
Appendix: Further guidance on MATLAB
Advice for beginners
If you need help getting started with MATLAB, please refer to the guidance on MATLAB provided on
this module’s Minerva pages (link).
Naming convention for variables in the provided scripts
MATLAB is a “weakly typed” programming language, i.e., it does not require declaring variables
before use, and any variable can hold data of any type. This can make coding faster, but also
increases the risk of generating code that is incorrect or hard to understand. To mitigate against those
risks, the code supplied with this home assignment uses some simple naming conventions:
Use of prefixes to indicate type, e.g. iTimeStep:
o i : integer
o n : integer used to count something
o b : Boolean
o s : character string
o No prefix indicates floating point numbers
Use of additional prefixes to indicate data structures; can be combined with the prefixes above,
e.g. VbValidTimeSteps for a vector of Booleans:
o V : vector
o M : matrix
o C : cell array
o S : structure
Use of the additional prefix c_ to indicate a constant variable, i.e., one that is not intended to
change during program execution.
You are welcome to adopt these conventions in your solutions if you want to, but it is not required.


发表评论