首页
网站开发
桌面应用
管理软件
微信开发
App开发
嵌入式软件
工具软件
数据采集与分析
其他
首页
>
> 详细
代做CSE 535、MATLAB编程设计代写
项目预算:
开发周期:
发布时间:
要求地区:
CSE 535 Project 2: Context-Aware Adaptation
**Note: The provided content, along with any associated project materials, is exclusively intended for
classroom use. Any form of sharing, posting, or redistribution, even after the completion of this course, is
strictly prohibited in accordance with ASU regulations. Such actions are considered violations of the FSE
code of conduct and may result in severe academic consequences.
In Project 1 you learnt about developing a monitoring application using on-board sensors in a smart
phone. In this project, we will design a context aware adaptation strategy for the development of
autonomous braking system for Level 3 autonomous cars which assumes an underlying distributed
monitoring and actuation cyber-physical system specifically human-in-the-loop and human-in-the plant.
Before we delve into the details let us understand some basic definitions.
Level 3 autonomy: The vehicle operates autonomously, however, requires the driver to be
attentive at all times for potential switch to manual mode.
Controller: It is a software that takes sensor data from the vehicle such as speed, distance
between cars and acceleration or deceleration and outputs the braking pressure to apply
deceleration to stop the car.
Controller gain: It is a property of the controller that determines how aggressively a controller
will apply brakes and stop the car.
Deceleration Limit: This is the maximum limit on the deceleration applied by the controller.
High deceleration can lead to unwanted harm to the driver behind the wheel. The controller can
never apply deceleration that is higher than the maximum limit.
Controller frequency: It is the number of times the controller needs to compute a new braking
input per second.
Reaction time: It is the time taken for the human to decide on an action after a switch to
manual mode
Action time: Time taken to execute the action decided by the human and stop the car.
Autonomous vehicle braking system example
Figure 1: Autonomous Driving example
Consider a user driving a Level 3 autonomous car (Fig. 1). We are specifically focusing on the
autonomous braking system. As a part of the autonomous braking system, there is an advisory control
that:
a) processes a driving scenario, by sensing environmental conditions
b) Predicts if the autonomous braking system will be able to stop the car
c) Determines if the control should be transferred to the human behind the wheel
Autonomous braking system has a feed-back loop controller that senses the distance between the
autonomous car and the car in front , and computes a braking force as a function of the ’s initial
speed !, and distance between and . The braking force applied is also a function of the controller
gain , which is a design parameter that you will have to tune.
The braking force is constrained by the maximum deceleration limit "#$, which is dependent on the
road condition. For example, on dry road you can apply more deceleration than on wet road in rainy
season. The braking force is thus given by the following equation:
= min ( ( !, !%, ), "#$).
Once the braking force is applied, the vehicle kinematics show how the vehicle behaves in the real
world. Given the initial speed ! and initial distance between and , !%, the vehicle kinematics gives
the stopping distance &'(), and stopping time &'() for the vehicle. This you can obtain using the
vehicle kinematics Simulink model ( *+,-./+) provided to you.
If &'() ≥ !% then the autonomous vehicle fails, and the cars collide, else there is no collision. If cars
collide, then stopping time &'() is same as collision time ..
In this example, we will fix the distance between cars and , !%. However, changing initial velocity !,
controller gain , and deceleration limit "#$, can change the stopping distance and stopping time
resulting in potential collisions.
Human driver model
The human driver is assumed to be alert all the time to take over control. However, we have to account
for the reaction time 0 of the human driver after a switching signal is sent through the dashboard
controls. In addition to the reaction time the human action also takes some time to execute.
In this example, we assume that the human provides a deceleration that is 10% higher than the
deceleration limit "#$, i.e. ℎ# = 1.1 "#$. The action time # can be obtained by removing the braking
controller from the Simulink model and applying a static deceleration of ℎ# into the vehicle kinematics
model. After simulation the action time can be obtained as the stopping time reported in the Simulink
model.
The total time taken by the human to completely stop the car is ℎ&'() = 0 + #.
We are now in a position to define a basic logic for the advisory control. The advisory control uses the
following algorithm to decide if it wants to switch:
SWITCH = ADVISORY CONTROL ( !, , "#$, 0)
Step 1: Predict if autonomous braking control collides or not using !, , "#$.
Step 2: If no collision then
Step 3: Do not switch to manual control
Step 4: Else
Step 5: Collision time .= predicted stopping time from Step 1
Step 6: Predict action time #, using !, remove controller, and constant
deceleration 1.1 "#$.
Step 7: Predict reaction time 0
Step 8: Compute ℎ&'() = 0 + #
Step 9: if <
Step 10: Switch to human
Step 11: Else
Step 12: Do not switch.
Driving Context Changes
Road conditions depend on several factors including:
a) User mobility patterns
b) Traffic conditions
c) Weather patterns
Each context can be modeled using stochastic modeling techniques such as Markov chains. In this
assignment you are given a composite model of driving context that has two states: a) normal with
deceleration limit -200 "
&+.! and b) poor road conditions with deceleration limit -150 "
678! .
The prior probabilities of each state ( ) = 0.6, ( ) = 0.4. The transition probabilities
are given by the matrix:
=
0.6 0.4
0.85 0.15
Human Reaction time model
The cognitive workload of a human changes based on driving context. We will assume that normal
driving conditions have low workload, and poor driving conditions require high workload.
Consider Table 1 in https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6338053/pdf/fnhum-12-00525.pdf
The heart rate and respiratory rate is provided for single task under low cognitive workload (LCW) and
high cognitive workload (HCW) tasks. Use the mean and standard deviation to create a gaussian model
of heart rate and respiratory rate. For each driving condition, the heart rate and respiratory rate
is sampled from the gaussian model. The respiratory quotient can be computed as = 90
:0
. The human
reaction time 0 can be computed using the following equation:
0 = 0.01 ∗
Project Tasks
The project has three specific tasks as shown in Fig 2.
Fig 2: Project tasks
In this project, we will first attempt to design the advisory control for an average user. Then choose a
specific user and modify the advisory control design at deployment. Finally, after deployment revert
back to the design phase to change the advisory control and personalize it for the specific user.
This mimics the standard context aware application development workflow. Here the manufacturer
initially designs a system to be used for a large set of users. After deployment, a specific user can make
some limited configuration changes to the system. The data is collected during deployment. This data is
then used to redesign the system to personalize for specific user profiles.
Task 1: Controller design
Given:
1. A set of initial speeds, 20 kmph to 40 kmph
2. Deceleration limits of normal (-200 / ) and poor (-150 / )
3. User profiles
User LCW HCW
HR RR HR RR
1 80 (± ) 16 (±6) 95 (± ) 21 (± )
2 65 (± ) 13 (± ) 71 (± ) 14 (±5)
3 61 (± ) 17 (± ) 92 (± ) 26 (± )
To do:
1: Create an average user profile
2. Determine reaction time model
3. Determine controller gain for each road condition such that collision is minimized for the given
initial speed range
4. Determine the number of switches necessary to avoid collision for your design
Task 2: Reaction time update in advisory control
Given:
1. User 3 as the actual user of the system
2. Initial speed range 20 kmph to 60 kmph
3. Fix the gains for Normal and Poor road condition from Task 1.
4. Markov chain model for road condition generation
To do:
1. Using the monte Carlo Markov chain simulation method generate a sequence of length
100 of normal and poor road conditions
2. For each road condition in the sequence, sample the initial speed range uniformly to get
one initial speed
3. For each road condition in the sequence, sample the HR and RR models of User 3 to obtain
one HR, one RR and consequently one reaction time for the user.
4. Evaluate collision status for each road condition in the sequence.
5. Evaluate the number of switches in each road condition in the sequence.
6. Determine the reaction time setting in the advisory control that gives the least number of
collisions with the least number of switches.
Note here that the reaction time of the human user is independent of the reaction time setting of
the controller.
So there will be scenarios where even if you decide to switch according to the current reaction
time of the human driver it is not feasible for the user to stop the car and as a result there is a
collision.
Task 3: Gain personalization
Given:
1. User 3 as the actual user of the system
2. Fixed reaction time setting of advisory control
3. Initial speed range of 20 to 60 kmph
To do:
1. Update the gains for each road condition such that the number of collisions and number
of switches are both reduced.
DETAILS FOR PROJECT SUBMISSION:
Software required: MATLAB
To get Started with MATLAB:
Refer to the documentation uploaded on Canvas – ‘Software Requirements and Guidelines for Project 2’
Provided Files:
You have been provided with some files in the Github repository:
https://github.com/ImpactLabASU/MC535Project2
These files contain components related to the project or task you are working on.
Deliverables:
1.Kindly submit three separate MATLAB files for Task 1, 2, and 3, along with an output CSV file.
2.The MATLAB submission files should follow the naming convention:
.m
3.All output data should be saved in a CSV file containing two columns: 'Tasks' and 'Output.' The task
name should adhere to this format: Task
.
:
. For instance, if Task 1
involves 2 switches, it should be displayed as follows in the CSV:
Tasks Output
Task1.4 2
Append all outputs of Task 1, 2 and 3 to the same csv file. The naming convention for the CSV file should
be
.csv
软件开发、广告设计客服
QQ:99515681
邮箱:99515681@qq.com
工作时间:8:00-23:00
微信:codinghelp
热点项目
更多
代写dts207tc、sql编程语言代做
2024-12-25
cs209a代做、java程序设计代写
2024-12-25
cs305程序代做、代写python程序...
2024-12-25
代写csc1001、代做python设计程...
2024-12-24
代写practice test preparatio...
2024-12-24
代写bre2031 – environmental...
2024-12-24
代写ece5550: applied kalman ...
2024-12-24
代做conmgnt 7049 – measurem...
2024-12-24
代写ece3700j introduction to...
2024-12-24
代做adad9311 designing the e...
2024-12-24
代做comp5618 - applied cyber...
2024-12-24
代做ece5550: applied kalman ...
2024-12-24
代做cp1402 assignment - netw...
2024-12-24
热点标签
mktg2509
csci 2600
38170
lng302
csse3010
phas3226
77938
arch1162
engn4536/engn6536
acx5903
comp151101
phl245
cse12
comp9312
stat3016/6016
phas0038
comp2140
6qqmb312
xjco3011
rest0005
ematm0051
5qqmn219
lubs5062m
eee8155
cege0100
eap033
artd1109
mat246
etc3430
ecmm462
mis102
inft6800
ddes9903
comp6521
comp9517
comp3331/9331
comp4337
comp6008
comp9414
bu.231.790.81
man00150m
csb352h
math1041
eengm4100
isys1002
08
6057cem
mktg3504
mthm036
mtrx1701
mth3241
eeee3086
cmp-7038b
cmp-7000a
ints4010
econ2151
infs5710
fins5516
fin3309
fins5510
gsoe9340
math2007
math2036
soee5010
mark3088
infs3605
elec9714
comp2271
ma214
comp2211
infs3604
600426
sit254
acct3091
bbt405
msin0116
com107/com113
mark5826
sit120
comp9021
eco2101
eeen40700
cs253
ece3114
ecmm447
chns3000
math377
itd102
comp9444
comp(2041|9044)
econ0060
econ7230
mgt001371
ecs-323
cs6250
mgdi60012
mdia2012
comm221001
comm5000
ma1008
engl642
econ241
com333
math367
mis201
nbs-7041x
meek16104
econ2003
comm1190
mbas902
comp-1027
dpst1091
comp7315
eppd1033
m06
ee3025
msci231
bb113/bbs1063
fc709
comp3425
comp9417
econ42915
cb9101
math1102e
chme0017
fc307
mkt60104
5522usst
litr1-uc6201.200
ee1102
cosc2803
math39512
omp9727
int2067/int5051
bsb151
mgt253
fc021
babs2202
mis2002s
phya21
18-213
cege0012
mdia1002
math38032
mech5125
07
cisc102
mgx3110
cs240
11175
fin3020s
eco3420
ictten622
comp9727
cpt111
de114102d
mgm320h5s
bafi1019
math21112
efim20036
mn-3503
fins5568
110.807
bcpm000028
info6030
bma0092
bcpm0054
math20212
ce335
cs365
cenv6141
ftec5580
math2010
ec3450
comm1170
ecmt1010
csci-ua.0480-003
econ12-200
ib3960
ectb60h3f
cs247—assignment
tk3163
ics3u
ib3j80
comp20008
comp9334
eppd1063
acct2343
cct109
isys1055/3412
math350-real
math2014
eec180
stat141b
econ2101
msinm014/msing014/msing014b
fit2004
comp643
bu1002
cm2030
联系我们
- QQ: 9951568
© 2021
www.rj363.com
软件定制开发网!