DBM211 - Embodying Intelligent Behaviour in Social context
DBM211 - Embodying Intelligent Behaviour in Social context
Group Report Semester B - Quartile 3 2016
Teaching Professor: Dr. Ir. Emilia Barakova
Submitted by Marijn Bults Eleni Economidou Thijs Roeleven Ivar Kraaijevanger Bastiaan van Hout
A report submitted in fulfillment of the requirements for the course DBM211 Department of Industrial Design TU/e
Table of Contents Design Brief 07 Vision 11
2.1 Overall vision on social agents
12
2.2 Product oriented vision
13
Design Ideation 15
3.1 Cognition 16
3.2 Concept 18
3.3 Design rationale 22
Prototype 25
4.1 Physical prototype 26
4.2 Electronics 28
4.3 Data Analysis 30
4.4 Application 36
Scenarios 41 Discussion 43 Evaluation 49 Conclusion 51 References 53
4
Appendices 57 Reflections 73
5
1
Design Brief
Introduction The
notion
intelligent social
of
design
behaviour
context
for
in
requires
a
some
prediction of high or low levels of
blood
prevent
sugar
can
moments
of
help
to
discomfort
defining before the entire aim
by acting upon them before they
of the assignment is understood.
actually
Initially,
context
group decided to address this
needs to be defined. Within the
problem within the social agent
frame of this elective, our group
framework.
the
social
occur.
Therefore,
the
chose to approach the intelligent agents framework in the social
With the social context defined,
context of young children and
an agent was designed, including
their
its
caregivers;
specifically,
children with diabetes.
intelligent
agent’s
behaviour.
presence
is
The
deemed
necessary, since the intelligent Diabetes Mellitus is a group of
behaviour needs to be embodied
diseases that requires regular
to have the users interact with
monitoring. Either the pancreas
something
does not produce enough insulin
within
or the cells of the body do not
young children).
our
tangible. target
Especially group
(i.e.
respond properly to the produced insulin and
[1].
treatment
injections
8
The
prevention
involves
insulin
timed
sugar
or
After careful research and design iterations,
the
down
options
the
team
narrowed to
smart
intakes. If this type of treatment
wearable products in the form of
does
the
a bracelet called ‘Mbrace’. Its
consequences could lead to hypo-
shape allows the child to wear it
, or hyperglycemia; both being
at all times. It monitors some of
phenomena that can have serious
the main bodily functions, such
consequences for the functioning
as body temperature, heart rate
of the body. Furthermore, the
and
not
occur
on
time,
perspiration,
continuously
whilst are
blood
monitored
sugar
levels
(BSL)
incidentally.
test and they can act accordingly.
More
information about this can be found
To assist and support their children,
under the ‘Embodiment’ chapter.
parents receive notifications on their smartphone via a dedicated
By monitoring the body continuously,
application. If someone else is in
the bracelet can potentially predict
charge of taking care of the child,
what kind of state the child is
the bracelet is communicating with
in using the learning algorithm in
the, at that time, caregiver in
Matlab. Consequently, it calculates
charge
the body’s state according to its
of hardware that is connected to
input variables. If a change of
the
state is detected, the agent gives
connectedness between the patient
continuous feedback accordingly by
and
changing the colour of an RGB-LED
child forgets to undertake action
and a vibration motor, respectively
to either high or low blood sugar
on and in the bracelet. This way,
levels
the user can check the blood sugar
immediately
levels (in approximation). If the
occasion, he or she can help the
blood sugar levels are approaching
child
dangerous
levels and taking further required
zones,
the
user
is
notified to perform a blood sugar
via
an
bracelet, the
increasing
caregiver.
alert,
by
additional
the
In
social
case
caregiver
notified.
measuring
piece
On
blood
the
is that
sugar
actions.
9
2
Vision
2.1 Overall vision on social agents Our
collective
vision
derives
is
happening
from the team members’ individual
of
the
design
behaviour
experiences.
All
group
agent
through from
learning
the
according
to
user’s his
or
members are industrial design (ID)
her input to the agent. The user
master students and have their
should be able to customize the
own personal preferences when it
use of the social agent, making
comes to design. These personal
it
preferences were discussed and
social agent should not behave
weighed against each other, upon
the same in every situation, but
which
rather, it has to be context-
a
vision
towards
social
a
personalised
and
agent.
context-specific
The
agents was formed. This broad
aware
to
vision on social agents was then
prevent it from being a nuisance
made explicit with respect to our
to the user and its surroundings.
own design vision. Our vision on
An effective way to prevent any
social agents can be summarised
form of nuisance is subtleness.
in the following sentence:
This can be achieved by utilizing low volume notifications or the
“Social agents should be adaptive,
restriction of intrusive means
personalized, context specific,
of notification. The social agent
subtle
should promote social interaction
mediators
that
promote
social interaction and learn from
between
users
in
a
way
that
the users.”
it does not draw attention to itself, but attention is rather
Adaptivity
implies
that
the
device should adapt to the user, not the other way around. This
12
on the interaction between the users.
2.2 Product oriented vision By
applying
this
vision
to
the
interaction between the parent and
team’s concept - a bracelet that
the child, whilst learning from the
helps diabetic children in coping
child’s behavioural patterns when
with their condition- our vision
the aforementioned interaction is
takes a more explicit shape:
needed. See the chapter ‘Concept’ for more detailed information. A
The bracelet is rendered into an
list of nine criteria is formulated
adaptive,
to
personalized,
context-
specific, yet subtle mediator. A mediator
that
promotes
shape
the
concept
into
the
desired direction.
social
13
3
Design Ideation
3.1 Cognition To
notion
the optic array, the ambient optic
‘cognition’, we briefly describe
array, and invariant information.
what
encompasses.
These different perspectives are
Cognition (coming from the Latin
important in defining approaches
verb
is
and in understanding these mental
to
processes,
an
understand
the
cognition cognoso;
to
important
understand
perceive)
phenomenon when
explaining
as
they
offer
the
agent different points of view.
intelligent behaviour in social agents and their context as it
With
historically contributed to each
behaviour in technical concepts
other’s
and solutions (agents), we aim
research[2]. Cognition
describes of
mental
collecting,
process
processing
understanding
anything
people
experience
think,
acquire Both
through
their
consciously,
establish
something
in
a
and
similar direction to the learning
that
curve that humans have, through
and
hardware (sensing and actuating)
senses.
learning
algorithms.
These
subconsciously. It is an important
environment as people, and people
part
learning.
interact
Existing knowledge serves as a
Learning
basis
agents
for
everyday cognitive
generate
new
well
and
agents act and sense the same
of
as
to
intelligent
as
to
16
the
embodying
processes knowledge,
with
these
algorithms to
agents.
allow
develop
the
autonomous
behaviour to be able to cope with
describing a virtuous circle. In
the
this, the societal context plays
human
a big role as it serves as an
behaviour
environment in which different
contexts can not be predicted
perspectives
and/or programmed, making these
and
necessary.
are An
possible, example
is
Gibson’s theory on perception [3] described mainly in the form of
complexity
of
behaviour. in
natural
and
The
intended
these
complex
algorithms paramount.
There
are
many
variations,
The
theories and fields of application
the
within
enactive
sufficient extent to understand how
cognition,
our concept classifies as a social
cognition in psychology, etc.), but
agent (i.e. displaying intelligent
we will not go deeper into them.
behaviour) in social contexts.
cognition
cognition,
(e.g.
embodied
aforementioned concept
of
elucidates
cognition
to
a
17
3.2 Concept The concept consists of three
The high sensitive sensors are
connected
the
a result of an increasing need
bracelet itself, the detachable
for the diabetic patient to gain
add-on, and the application which
a better understanding of the
monitors
values from their glucose tests.
components;
and
tracks
the
vital
signs from the bracelet.
Extra bodily measurements will
In combination, they provide a
ensure an easier understanding
secure and subtle mediator for
the body’s reaction to food and
handling the child’s condition. In
exercise [5]. Mbrace is, worn by
most type 1 diabetes diagnoses,
the child during both day and
the
night,
person
must
adapt
to
a
constantly
monitoring
different lifestyle by changing
their heart rate variability, skin
their
conductivity
routine
towards
the
and
temperature.
inclusion of regular glucose level
Nevertheless, it does more than
tests and insulin injections, at
just base its behavior on the
a
aforementioned
input
several times a day. A syringe
These
functions
and blood glucose meter device
derived from a list of symptoms
are their primary tools to manage
that diabetics exhibit [6].
frequency
of
what
could
be
bodily
values. are
their diagnosis [4].
18
On
the
Therefore, the need for Mbrace
is
an
is apparent, as it covers the
being of the child which can be
difficult aspects of living and
adjusted
coping with diabetes, yet still
action
results
ensures a life of activity and
system
that
spontaneity,
qualitative data by remembering
aspects
that
disease often prevents.
the
the
bracelet indicator by
for
there
the
him/herself. in
a
variation
notifications.
well This
learning
incorporates
adjustment
future
itself
Once
the for an
indication of high or low blood
19
sugar occurs, a following action
available to handle these important
must
situations,
take
place.
Mbrace,
then,
therefore,
an
pushes a notification to the child
application is given to the parents,
by utilising light and vibration.
which directly links to Mbrace and
Meanwhile, the Add-on -which has
its database. The social link it
been given to a caregiver in that
creates provides ease of mind to
given
parents, by knowing that through
context-
gets
notified
as
well.
the intuition of Mbrace, difficult situations
can the
be
avoided.
The add-on ensures that the child’s
Moreover,
condition is monitored and that
the parents to monitor, plan and
the blood test - which must be
take preventive measures. All in
performed at certain times during
all, Mbrace decreases difficulties
the day - is performed together
of dealing with diabetes both as an
with a person they trust. In some
individual and as a family.
cases, the parents might not be
20
and
application
allows
21
3.3 Design rationale A
diabetes
be
for rejection. The limitations of
overwhelming; both the children
these alternatives led the team
and the caregivers go through
to refocus and redesign a trifold
a
to
system which could correspond to
things[7].
the specific needs of the chosen
rough
the
adjustment
new
Diabetic age
diagnosis
order
period
of
children
require
could
of
regular
caregiver
supervision
adjusted
lifestyle
a
young
target group.
parental/ an
For the final product, the team
stay
aspired to alleviate the issue,
consistent with care. In brief,
primarily, in terms of indicating
what the team attempted to solve
the most suitable instance for
was to reduce the difficulties
performing
that
children
Secondary, the proposed device,
and their parents have to deal
through the learning algorithm,
with during their daily routine.
creates
a
By
ensure
better
newly
difficulties
to
diagnosed
introducing
and
Mbrace,
are
these
minimised
in
the
sugar
database
symptoms
tests.
that
treatment in
the
will of
future.
a degree that can mitigate the
In parallel, it has the ability
transition phase for all involved
to
parties.
prevent
predict
and,
the
complications
22
level
therefore,
life-threatening and
outcomes
in
Ideas such as a ring wearable, a
case of a delayed (or absence
plush toy and a wearable vest were
thereof) treatment reaction. The
considered and rejected due to
collected
either their indiscreet / invasive
the pool of knowledge of type
design. Also, their inability to
1
record
of
this contribution to the field,
data or their shape inefficiency
patterns which could be applied
for this type of social agent
to every patient can be detected.
were deemed important motivators
Moreover, the families can make a
continuous
streams
data
diabetes
contributes
treatment.
to
Through
better simplified planning of their
she might not have any experience
lifestyle
with this disease. Moreover, a bond
based
indications.
on
is created between the child and
as
an
the caregiver since the wearable
additional level of safety, thus,
bracelet and the add-on are two
provide peace of mind, relief and
products
mental support to all parties.
Lastly,
can
be
a
device’s level,
Mbrace
On
the
mental
perceived
combined the
software As
mentioned
before,
the
into
mobile
enables
one.
application
the
parent
to
team
know the condition of the child at
decided to design three connected
all times, but also tracks patterns
components a wearable, an add-on,
of behaviour which aid the parent
and an mobile application software
which is not yet acquainted with
(mobile app).. This decision was
the lifestyle changes for type 1
collectively made for the following
diabetes patients.
reasons. Firstly, a wearable in a bracelet form is a versatile device
A
which would be effortless for the
Mbrace
child to wear at all times, would
solution to ease the adjustment
not attract that much attention
period
but also would not require the help
children, with benefits extending
of an adult to wear it. Secondly,
to
by using detachable add-on device,
patients. That’s what the team’s
the
aspiration
caregiver
-
responsible
in
device
with
could for
other
the
potential
become recently recently
is
about,
the
of
future
diagnosed diagnosed after
all;
the context to the child - can
designing a mediator/platform that
monitor his or her condition and
promotes social interaction.
act upon any change even if he or
23
4
Prototype
4.1 Physical prototype For the elective, the bracelet was
as
made in the form of a functioning
other variables. For this, copper
prototype. The application and
coins were used to measure skin
the
resistance,
add-on
remain
conceptual
parts complementing the concept. To
embody
bracelet
the
assists
of
null
measurement
depending
to
on
the
skin
humidity [8].
a
diabetic
- Heart rate to give an estimate
children into a working prototype,
to the well being and/or physical
several
activity of the patient, essential
Firstly,
that
concept
a
choices we
will
were
be
made. the
when measuring high blood sugar
hardware that is used to collect
levels. A heart rate sensor is
input variables for the learning
used that utilizes infrared to
algorithm.
measure pulse in the earlobe [9].
The
describe
hardware
(i.e.
sensors and actuators) was picked by looking at the symptoms that
- Body temperature. Research has
are
diabetes
proven that the body temperature
and what symptoms are feasible
drops when the patient has a high
to collect. This resulted in the
blood sugar level, and thus low
following sensors for constant
insulin levels, due to the fact
data collection:
that insulin acts as heating for
associated
with
the body. The body temperature
26
- Skin conductance to give an
could
therefore
estimate of the physical activity
indication
the patient is having, it acts
levels [10].
of
give
the
a
good
blood
sugar
27
4.2 Electronics To support the input data, we
or high at these moments (i.e.
also collect the date and the
different from usual patterns)
time of day in the form of a
the system should warn the user
timestamp.
nonetheless.
the
This
system
to
will
predict
help future
behaviour and find patterns in
The
the daily life, such as moments
the
of
Saturday
collected sporadically. This is
and
moments
measured using a built-in blood
(e.g.
evening
sugar meter in the add-on. With
dinner) where discrepancies are
all additional data, the system
sequacious. This will help the
aims to predict the blood sugar
system
patient’s
level of the patient. By using
lifestyle and avoid false alarms
blood sugar levels as input for
at
the
activity
morning of
(e.g.
swimming)
food
to
these
intake
learn
the
moments.
However,
if
the BSL continues to remain low
28
most
important
blood
learning
system
will
sugar
data level)
algorithm, learn
to
(i.e. is
the
predict
the with
estimated
blood
increasing
sugar
accuracy.
level
the classes that needs to be defined
These
for the learning algorithm.
estimated blood sugar levels are displayed to the patient in the
As a representation of the bracelet
form of an RGB-LED that colours
and
green (i.e. perfect) to red (i.e.
sketch had been created. The sketch
either low or high BSL) with small
displays the 9 different classes
increments, and a physical slider
(in the form of digital buttons)
that
neutral
that the Matlab file calculates and
position (i.e. in the middle) to
outputs the selected class to an
either the left (i.e. high BSL), or
Arduino. The Arduino converts the
to the right (i.e. low BSL). Also,
class into output in the form of an
the caregiver and/or the parents
RGB-LED and a vibration motor. To
receive
real-
supplement the performed actions
time BSL respectively via an add-on
in the Processing sketch, a virtual
and an application as described in
slider
the chapter ‘Concept’. The add-on
slider on the bracelet, provided
and application are described in
with the LED colour together with
more detail in the chapter ‘Mobile
the estimated blood sugar level.
Application Software and Add-on’.
The full Processing and Arduino
The
sketch, together with the interface
slides
the
colour
from
its
estimated
of
the
LED
and
and
the
position of the slider represent
its
interface,
represents
a
the
Processing
physical
can be found in the appendix.
29
4.3 Data Analysis A supervised learning algorithm
indicate state 1 when the blood
will be used in combination with
sugar levels are abnormally low,
a reinforced learning algorithm
where an unsupervised learning
to make the system increasingly
algorithm could place this value
efficient.
“if-then�
in state 9 or 1, due to the fact
statement-based program is not
it is not told what it should
applicable,
fact
do. The child can indicate their
that blood sugar levels amongst
state of well being, by manually
diabetics
moving
sugar
A
normal
due
to
differ
levels
are
the and
not
blood
the
slider
to
a
more
absolute
appropriate value that represents
measurements of the current state
their state more accurately. This
of a patient [11]. Therefore, the
way the system will be trained
system needs to learn from the
in
patient, in this case the child,
learning algorithm. For example,
what normal blood sugar levels are
the system estimates the child is
and what are not. For example,
in state 8, but the child feels
a blood sugar level of 180 is
fine and consequently sets the
considered high, but not during
system in state 5. The system
lunch time, due to the fact that
will receive this as input 5 and
the patient has consumed food.
add more weight to this value
representing
a
reinforced
than the other values, resulting Moreover, operate
the with
system
cannot
in an adjusted output.
predetermined
values, the system will be trained
30
through an input interface on the
Variables
bracelet. The chosen algorithm is
The algorithm uses six variables,
therefore a supervised learning
some
algorithm. A supervised variable
weights
will be the height of the blood
variables body temperature, heart
sugar levels. The system should
rate variety, skin conductivity
of
which in
the
have
different
algorithm.
The
and heart rate variety are less
conductivity.
important
is measured using a thermometer.
sugar
than
levels
being.
measured
and
blood
state
of
the
state
Therefore,
well
Because
the
Body
temperature
variance
in
values
of
is too small to be of significant
well being and measured blood sugar
influence on the algorithm it is
levels have a higher weight than
mapped from 0 to 100 [10]. Heart
the other variables.
rate variety is measured over time, whereafter it is mapped in a class
Algorithm
from 90 to 180 [9]. This pattern
A supervised neural gas learning
could also be evaluated by a neural
algorithm
for
gas class finding algorithm, but
finding classes in sets of data.
in our case it is a matter of
The classes are presented as six
highest subtracted by the lowest
distinctive
measured
is
very
suitable
variables
that
make
heart
rate
(i.e.
heart
one estimation over the state of
rate variety). Blood sugar levels
well being of the child. All the
differ from lowest, approximately
variables
50,
are
mapped
on
certain
to
highest,
approximately
scales, displayed in the diagram
200. These values are not mapped
below. Skin conductivity is mapped
as they need to give an actual
by the sensor that measures this
depiction of the situation. Lastly,
value, being on a scale of 0 to
the state of well being is only
1023
than
presented as an additional value
262 were found, making this the
if the child manually alters the
lowest, predefined value for skin
slider to a state different from
[8].
No
values
lower
31
the suggested class output. If
data
is
presented
to
system,
the state of well being were only
resulting in the output as shown
input, whilst being an output,
in the image below. The data set
the system will become faulty.
consists of 1222 pairs, which are
The time of the day is only used
all mapped in different states
as a prediction for the system
of well being, showing that the
and cannot have weight added to
system is working.
it.
Reinforced learning Training the algorithm The
32
algorithm
is
trained
The system is initially calibrated in
through
supervised
Matlab using 100 sets of data.
However,
The 100 sets of data resemble
variables and classes have been
the variable values as presented
defined, the child teaches the
above and is used to calibrate the
system
system. 9 classes are indicated
reinforced
learning.
as output and after the system
difference
between
is
and reinforced learning is the
calibrated,
the
collected
after
learning.
how
to
the
system
behave
through
The
main
supervised
feedback loop in the system, which we
An example
use to our advantage. In reinforced
In this example, displayed in the
learning the system learns through
image below, the child has just
reward and punishment, where in
woken
supervised
system
presented in minutes, making it
learns through predefined rules.
08:00 in the morning at the first
The
reinforced
set of data. The body temperature is
learning, because blood sugar levels
normal, as is the skin conductivity
differ amongst diabetics, making
and heart rate variety. The blood
it mandatory to have personalized
sugar levels are not exactly what
adjustments in the system. These
they should be, since the child
personal
learning
system
requires
adjustments
predefined,
as
would
the
up.
The
time
of
day
is
cannot
be
has not had food for a long period
happen
in
of time whilst being asleep. The
supervised learning, but need to
system
will
be set through the aforementioned
state of well being in class 4,
feedback loops.
a
relatively
therefore normal
place
the
situation.
The child eats something (time of
33
day 450 minutes) and the values
Application
are back to normal. After some
For children with diabetes being
time
connected
the
child
will
take
the
short workout (time of the day
knowing that the parents and the
510 minutes). During this period
responsible caregiver can react
the body temperature, heart rate
as soon as the children would feel
variety
distressed.
skin
conductivity
the
parents
could
and
give
their
bicycle to school, which is a
It
children
is
ease,
accomplished
will slightly rise and the blood
by providing the parents with an
sugar levels will drop. This is a
application, as well as an add-
potentially dangerous situation,
on from the bracelet that are
which is why the system will place
given to the responsible adult
this data set in state 3. The
in a given context. Whereas, the
child knows it has a low blood
add-on signals in case action is
sugar level and as a result will
needed, the application provides
take some sugar, after which the
data and monitorial options as
values will go back to normal.
well as planning.
of
Add-on The
34
with
what
procedure
to
follow.
In cases of high or low blood
add-on
functions
through
sugar levels a glucose test is
light indications and vibrations.
performed with a syringe and the
It
bracelet’s
add-on that functions as a blood
notifications for when an action
glucose meter. Depending on the
is
the
readings and the LEDs colour on
caregiver
the bracelet and add-on insulin
mimics needed.
light
the The
informs
colour the
of
or sugar are given to the child.
its upper side. The battery within
Visually the add-on is a cylindrical
is
disc with a light emitting plus on
during the night.
recharged
through
induction
35
4.4 Application The application
data, the calendar, food plan and
Social and subtle communication
a predictor.
requires
be
carefully
and
securely handled when it comes
Start screen
to
The
continuous
data
streams.
need
for
the
with only two phones. This allows
of their child is fulfilled by
for
security
adding a rotating circle in the
and direct contact between the
centre of the screen where values
parents and their child. While
in
the bracelet itself is used as
the change in wellbeing in the
an agent in the background, the
last
application
giving
the circle the numeric value is
the parents ease and critically
displayed on the opposite side
review
of
high
level
of
serves
the
in
effectiveness
and
different hour.
the
In
menu
the
to
immediately
a
see
parents
Therefore, the bracelet is paired
colours
wellbeing
indicate
connection
button.
with
In
the
accuracy of the agent. Moreover,
lower right corner an icon for
the
important
taken blood tests are displayed.
information of the child’s status
The number of the drop icons
but have only few measures of
resembles the number of times
notifying
the test was performed
the
parents
or
obtain
“talking�
application,
through
which
serves
the goal of providing the child
- The circle shows the data sent
more independence and control of
from the bracelet from the last
their own situations.
hour
The a
36
to
application
start
screen
consists with
built
as
well
as
the
current
of
Glucose level. the colors depict
in
the change in glucose levels.
menu. In the menu, a list of
- In the bottom right is an icon
four
representing the number of blood
trackers
disabled.
The
can menu
be
enabled/
allows
the
user to navigate to the tracking
tests the child has performed during the day.
Menu screen - The menu where tracking analysis and other functions can be selected. - In the bottom right the indicator of
taken
blood
tests
are
still
visible.
menu Screenfigure
Data tracker The the
data
wristband
represented bars,
streams
color
to
sent
the
through coded
from
phone
graphs with
is and
lowest
values in blue and highest values in yellow. While this service is not vital for most users, a history of the variety can help to better plan and understand the necessary countermeasures
for
the
parent
and children to take. Especially, for families where diabetes is a new factor on which they have to structure their lives around. Start Screen figure
37
Patient’s stats figure
Calendar figure
- Of four possible trackers the
particular situation is accounted
user
for.
can
view
the
graphical
representations of the different inputs the bracelet collects.
- The calendar allows the user to
- The graphs further indicates
inform the system of particular
if the values are stable.
days that includes extra exercise or intake of sugar for the child.
Calendar
38
The calendar and food plan allows
Predictor
the
events
The prediction system functions
that require extra preparation.
in two ways. It visualizes the
This is accomplished by dragging
accuracy
a circle onto one of the dates
system
in the month. This serves as an
reinforcement
indicator that on this particular
contributes to the critical view
day the parent should ensure the
the parents should have towards
family
to
schedule
of as
it
the
intelligent
learns learning,
through which
these systems. It is due to the chance
of
errors
that
they
by
default shouldn’t completely trust the
validity
of
the
data
they
obtain. Therefore, offering a value that describes the accuracy of the system benefits the users in being reactive as well as critical where their own intuition also counts. The application further offers a prediction tool in which the system predicts the glucose levels of the children in a given timeframe. This allows the parent and child to take preemptive measures, in respect to the accuracy level.
Predictor figure
39
5
Scenarios
Scenario 1: High blood Sugar levels
In this scenario, which is most likely to occur after a meal, there is a peak of the patient’s blood sugar levels. The device detects the concerning patterns of data. The slider value adjusts accordingly to the appropriate class, in this case state 2. The device communicates the severity of the situation by utilising the vibration motor and the integrated LED lights. The caregiver receives the appropriate notification through the add-on and the data is sent to the mobile application software. The child has the ability to decide whether to reject or approve this indication; by altering the position of the slider. The caregiver is further notified of the condition of the child at the same levels and is advised to perform a blood sugar test with an indication for a possible insulin injection. If action is performed, the slider returns to the initial position, state 5.
42
Scenario 2: Low blood Sugar levels
In this scenario, the child has the bracelet and a caregiver, which has the bracelet add-on, is within close vicinity of the child.
During the
break the child engages in high activity, resulting in a drop of blood sugar levels. As a result, the device detects concerning patterns of data. Following this, the slider value adjusts to the appropriate class, in this case state 8. The device, once again, communicates the severity of the situation by utilising the vibration motor and the integrated LED lights. The caregiver receives the appropriate notification as well as on the add on. As the previous scenario, the child has the ability to decide whether to reject or approve this indication; by altering the position of the slider. The caregiver is further notified of the condition of the child at the same levels and is advised to perform a blood sugar test with an indication for a possible sugar intake.
If action is taken, the
slider returns to the normal position, state 5, whereafter the child may continue his/her play.
43
- Scenario 3: Add-on tracker
The child hands the add-on tracker to the caregiver which will supervise his or her following activity. The caregiver will provide the appropriate action, if needed.
44
6
Discussion
In this section the team would
State of well being
like to critically address the
The states of well being are used
aspects
to
of
the
concept
and
train
the
algorithm.
These
practice - by utilizing algorithms
states
-
adjusted by the child in case
which
evidently
shaped
the
should
be
indicated/
design process and focus during
the
device
provided
a
false
the product development.
prediction,
something
a
child
is unable to understand during
Unsupervised
their
learning algorithm
with the bracelet. The concept
The learning algorithm used is a
itself
simulation of the real situation.
that the algorithm can learn in a
The used algorithm is the provided
more accurate way. Furthermore,
unsupervised learning algorithm,
according to the goals of the
whereas the actual algorithm will
elective,
be a combination of supervised and
all
reinforced learning algorithms.
possesses different weights as
With
the
unsupervised
algorithms,
values cannot be categorised nor
of
placed into their assigned state.
the
familiarisation should
be
the
aspects
adjusted,
integrity
of
the
understanding the
technology
others.
It
period so
of
concept
and
vision
overshadows
was
therefore
paramount that the team focused
Variables
on
To save unnecessary wasted time,
algorithm and desired behavior
the amount of variables is kept
instead of aiming to develop the
at four, instead of the actual
perfect concept.
six.
The
focus
qualitative
high
was and
on
the
of
the
making
accurate
Two
way
communication
App-
variables, not on making producing
bracelet and add-on-bracelet
the exact amount of variables.
In terms of social communication through
46
development
intelligent
artifacts,
it was decided that a one way communication from Mbrace were preferred. Mainly two points were
used for this decision, namely, that
push a glucose test request through
the learning process and change of
their app, because they felt it was
lifestyle of the child should be
necessary, the situation might be
done gradually towards the child
interpreted completely differently
becoming
independent
by the child. Therefore, a one way
from their parents. Secondly, the
communication seemed appropriate
meddling
to maintain the simplicity of the
somewhat from
external
parties
could lead to interpretation errors
outputs from the bracelet.
from the system. For example if the parent could have the option to
47
7
Evaluation
This
assignment
by
five
was
performed
was made to put an extra person
Design
on this task. After making use of
(ID) students, who all had no
different algorithms from online
prior experience with learning
sources, plus using the provided
algorithms
algorithm,
Industrial
or
even
Matlab.
there
were
little
Some programming knowledge was
results. The provided algorithm
present,
was unable to function due to an
but
applicable
this
error in the program, something
five ID students had knowledge
we were unable to detect. When
in making concepts and working
the error was finally resolved by
them out, which is why the first
dr. ir. E. Barakova, we were able
few weeks the concept was very
to continue and received results
quickly formed. After the first
rapidly. Partly due to the error
few
that took too long to resolve,
of the
the
Matlab.
hardly the
weeks,
to
was
when
concept
algorithm
All
the was
could
outline finished,
were
unable
to
implement
chosen
the correct learning algorithm.
and made ready for use. It was
Possibilities to have the correct
chosen to have one person as the
learning
main
choosing
been present, if the time could
and working with the algorithm,
have been used efficiently. On the
while the other members gathered
other hand, the group dug deeper
and prepared the data for the
into
algorithm (amongst other tasks).
about learning algorithms due to
responsible
for
be
we
the
algorithm
existing
could
have
knowledge
the error, which caused for an One person on the algorithm turned out to be too little, which is why the last two weeks the choice
50
instructional experience.
8
Conclusion
During this elective it became
The
clear
to
good starting point to learn how
design for social behaviour, and
to use them. Also, MatLab is a
that it is even more difficult to
program that works very well with
program it. Algorithms are very
algorithms and data visualisation.
useful
that
in
it
is
difficult
creating
algorithm
provided
was
a
an
overall
It did require some trial and
the
social
error to get it to work properly,
agent,
but it was a useful part of the
as became apparent during the
learning process. MatLab proved
course of this elective.
to be a powerful tool for quick
‘understanding’ situation
of
within
the
and clear data analysis. Future The course revealed the relevance
application of MatLab is probable
and need of algorithms to the
when dealing with complex data
team. Algorithms make a system
computing in the future.
self-adjustable
to
different
situations without the need of
Everyday non intrusive products
very complex programs. Algorithms
need to be subtle. When something
are generally applicable, in a
needs
way that the data testset will
to make it’s presence known in
inform the algorithm about the
natural, yet understandable ways;
data
and
which
used
in
for
the
the
output
specific agent.
can
be
programming
But
there
is
to
is
be
subtle,
sometimes
it
needs
tricky
for
an inorganic thing. A lot needs to
happen
at
once.
Here
the
no need for most situations to
ability of an algorithm to learn
create
of
a
dedicated
algorithm.
previous
and
new
data
and
The algorithm helps systems to
situations is of key importance.
self-adjust and create safer and
With new input it adjusts more
better solutions for the users.
and more to the user, fitting accordingly in the individual’s everyday life.
52
9
References
[1] Type 1 Diabetes. American
Mayoclinic.org, 2015. http://
diabetes Association, 2016.
www.mayoclinic.org/diseases-
http://www.diabetes.org/diabetes-
conditions/diabetic-coma/basics/
basics/type-2/?loc=db-slabnav.
definition/con-20025691.
[2] Wilson, R. and Foglia, L.
[7] Azar, R. and Solomon, C.
Embodied Cognition. Plato.
Coping strategies of parents
stanford.edu, 2011. http://plato.
facing child diabetes mellitus.
stanford.edu/entries/embodied-
Journal of Pediatric Nursing 16,
cognition/.
6 (2001), 418-428.
[3] Gibson, James J. The
[8] Sweat meter could alert
Perception of the Visual World.
diabetes patients about low
Boston: Houghton Mifflin, 1950.
blood sugar. News-Medical.net,
Print.
2011. http://www.news-medical. net/news/20110831/Sweat-meter-
[4] Checking Your Blood Glucose.
could-alert-diabetes-patients-
American Diabetes Association,
about-low-blood-sugar.aspx.
2015. http://www.diabetes.org/ living-with-diabetes/treatment-
[9] Schroeder, E., Chambless,
and-care/blood-glucose-control/
L. and Liao, D. et al. Diabetes,
checking-your-blood-glucose.
Glucose, Insulin, and Heart Rate
html.
Variability: The Atherosclerosis Risk in Communities (ARIC)
[5] Hi-tech devices for self-
study. Diabetes Care 28, 3
monitoring your diabetes |
(2005), 668-674.
beating-diabetes.com. Beating-
54
diabetes.com, 2014. http://
[10] Body temperature can have
beating-diabetes.com/index.
profound impact on diabetic
php/hi-tech-devices-for-self-
patients. News-Medical.net,
monitoring-your-diabetes/.
2016. http://www.news-medical. net/news/20160401/Body-
[6] Diabetic coma - Mayo Clinic.
temperature-can-have-profound-
impact-on-diabetic-patients.aspx. [11] Blood Sugar Levels for Kids and Teens. WebMD, 2014. http:// www.webmd.com/diabetes/type-1diabetes-guide/normal-blood-sugarlevels-chart-kids-teens.
55
10
Appendices
Processing Sketch // All Examples Written by Casey Reas and Ben Fry // unless otherwise stated. import processing.serial.*; HScrollbar hs1;
// Two scrollbars
color currentcolor; RectButton rect1, rect2, rect3, rect4, rect5, rect6, rect7, rect8, rect9, rect10; String[] classState = {“BSL > 240”, “BSL 180”, “BSL 130”, “BSL 115”, “BSL 100”, “BSL 80”, “BSL 70”, “BSL 60”, “BSL < 50”}; int sliderY; int height = 1000; int width = 500; int textval = 4; int X = 100; int Y1 = height/10-25; int Y2 = (height/10)*2-25; int Y3 = (height/10)*3-25; int Y4 = (height/10)*4-25; int Y5 = (height/10)*5-25;
58
int Y6 = (height/10)*6-25; int Y7 = (height/10)*7-25;
int Y8 = (height/10)*8-25; int Y9 = (height/10)*9-25; int sliderpos = Y5; int slidercolor = color(51,255,51); boolean locked = false; Serial port; void setup() { //hs1 = new HScrollbar(300, height/2, width, 16, 16); hs1 = new HScrollbar(300, 50, 50, 900, 3*5+1); size(700, 1000); smooth(); color baseColor = color(102); currentcolor = baseColor; color buttoncolor = color(204); color highlight = color(153); buttoncolor = color(255, 51, 51); highlight = color(255, 51, 51); rect1 = new RectButton(X, Y1, 50, buttoncolor, highlight); buttoncolor = color(255, 153, 51); highlight = color(255, 153, 51); rect2 = new RectButton(X, Y2, 50, buttoncolor, highlight);
59
buttoncolor = color(255, 220, 51); highlight = color(255, 220, 51); rect3 = new RectButton(X, Y3, 50, buttoncolor, highlight); ....etc. port = new Serial(this, “COM12”, 9600); } void draw() { background(220); noStroke(); hs1.update(); hs1.display(); stroke(0); fill(255); noStroke(); rect(75, 50, 100, 900, 10); textSize(24); text(classState[textval], 400, 505); update(mouseX, mouseY); rect1.display(); rect2.display(); ....etc. }
60
void update(int x, int y) { if (locked == false) { rect1.update(); rect2.update(); ....etc. } else { locked = false; } if (mousePressed) { if (rect1.pressed()) { currentcolor = rect1.basecolor; port.write(‘9’); textval = 8; sliderpos = Y1; slidercolor = color(255, 51, 51); } else if (rect2.pressed()) { currentcolor = rect2.basecolor; port.write(‘8’); textval = 7; sliderpos = Y2; slidercolor = color(255, 153, 51); } else if (rect3.pressed()) { currentcolor = rect3.basecolor; port.write(‘7’); textval = 6; sliderpos = Y3; slidercolor = color(255, 220, 51); } else if (rect4.pressed()) { currentcolor = rect4.basecolor; port.write(‘6’);
61
textval = 5; sliderpos = Y4; slidercolor = color(153, 255, 51); } else if (rect5.pressed()) { currentcolor = rect5.basecolor; port.write(‘5’); textval = 4; sliderpos = Y5; slidercolor = color(51, 255, 51); } else if (rect6.pressed()) { currentcolor = rect6.basecolor; port.write(‘4’); textval = 3; sliderpos = Y6; slidercolor = color(153, 255, 51); } else if (rect7.pressed()) { currentcolor = rect7.basecolor; port.write(‘3’); textval = 2; sliderpos = Y7; slidercolor = color(255, 220, 51); } else if (rect8.pressed()) { currentcolor = rect8.basecolor; port.write(‘2’); textval = 1; sliderpos = Y8; slidercolor = color(255, 153, 51); } else if (rect9.pressed()) { currentcolor = rect9.basecolor; port.write(‘1’); textval = 0;
62
sliderpos = Y9;
slidercolor = color(255, 51, 51); } } } class Button { int x, y; int size; color basecolor, highlightcolor; color currentcolor; boolean over = false; boolean pressed = false; void update() { if (over()) { currentcolor = highlightcolor; } else { currentcolor = basecolor; } } boolean pressed() { if (over) { locked = true; return true; } else { locked = false; return false; }
63
} boolean over() { return true; } boolean overRect(int x, int y, int width, int height) { if (mouseX >= x && mouseX <= x+width && mouseY >= y && mouseY <= y+height) { return true; } else { return false; } } } class RectButton extends Button { RectButton(int ix, int iy, int isize, color icolor, color ihighlight) { x = ix; y = iy; size = isize; basecolor = icolor; highlightcolor = ihighlight; currentcolor = basecolor; } boolean over()
64
{
if ( overRect(x, y, size, size) ) { over = true; return true; } else { over = false; return false; } } void display() { noStroke(); fill(currentcolor); rect(x, y, size, size, 5); } } class HScrollbar { int swidth, sheight; float xpos, ypos; float spos, newspos; float sposMin, sposMax;
// width and height of bar // x and y position of bar // x position of slider // max and min values of slider
int loose;
// how loose/heavy
boolean over;
// is the mouse over the slider?
boolean locked; float ratio; HScrollbar (float xp, float yp, int sw, int sh, int l) { swidth = sw; sheight = sh; int heighttowidth = sh - sw; ratio = (float)sh / (float)heighttowidth;
65
xpos = xp-swidth/2; ypos = yp; spos = ypos + sheight/2 - swidth/2; newspos = sliderpos; sposMin = ypos; sposMax = ypos + sheight - swidth; loose = l; } void update() { //if (overEvent()) { //
over = true;
//} else { //
over = false;
//} if (mousePressed) { locked = true; } if (!mousePressed) { locked = false; } if (locked) { newspos = sliderpos; } if (abs(newspos - spos) > 1) { spos = spos + (newspos-spos)/loose; } } float constrain(float val, float minv, float maxv) { return min(max(val, minv), maxv);
66
}
boolean overEvent() { if (mouseX > xpos && mouseX < xpos+swidth && mouseY > ypos && mouseY < ypos+sheight) { return true; } else { return false; } } void display() { noStroke(); fill(204); rect(xpos, ypos, swidth, sheight, 10); if (over || locked) { fill(slidercolor); } else { fill(slidercolor); } rect(xpos, spos, swidth, swidth, 5); } float getPos() { // Convert spos to be values between // 0 and the total width of the scrollbar return spos * ratio; } }
67
Arduino Sketch const int dcMotor = 5; const int red = 11; const int green = 10; const int blue = 9; const int GSR = A0; const int sliderValue = A2; int threshold = 0; int skinValue; int slider; int motorValue; int counter = 0; int counter2 = 0; int prevskinValue = 0; int addedskinValue = 0; int serialskinValue = 0; int incomingByte;
// a variable to read incoming serial data into
void setup() { // put your setup code here, to run once: long sum = 0; Serial.begin(9600); pinMode(sliderValue, INPUT); pinMode(GSR, INPUT); pinMode(blue, OUTPUT); pinMode(green, OUTPUT); pinMode(red, OUTPUT); pinMode(dcMotor, OUTPUT);
68
for (int i = 0; i < 500; i++)
{ skinValue = analogRead(GSR); sum += skinValue; delay(5); } threshold = sum / 500; } void loop() { // put your main code here, to run repeatedly: int temp; skinValue = analogRead(GSR); slider = analogRead(sliderValue); addedskinValue = skinValue + prevskinValue; prevskinValue = skinValue; counter++; counter2++; if(counter == 60){ serialskinValue = addedskinValue/60; Serial.print(serialskinValue); Serial.print(“ @ “); addedskinValue = 0; counter = 0; Serial.println(slider); //
Serial.println(“ : “); delay(100); temp = threshold - skinValue; if(abs(temp) > 100) {
69
skinValue = analogRead(GSR); temp = threshold - skinValue; if(abs(temp)> 100){ } } } if (Serial.available() > 0) { // read the oldest byte in the serial buffer: incomingByte = Serial.read(); // if it’s a capital H (ASCII 72), turn on the LED: if (incomingByte == ‘9’) { analogWrite(red, 255); analogWrite(green, 0); analogWrite(blue, 0); Motoron(); } else if (incomingByte == ‘8’) { analogWrite(red, 255); analogWrite(green, 51); analogWrite(blue, 0); Motorpulse(); } ....etc. } } } void Motoron() { motorValue = 255; analogWrite(dcMotor, motorValue);
70
}
void Motoroff() { motorValue = 0; analogWrite(dcMotor, motorValue); } void Motorpulse() { motorValue = 0; analogWrite(dcMotor, motorValue); delay(500); motorValue = 255; analogWrite(dcMotor, motorValue); delay(500); }
71
Matlab Sketch LoadTrain: clear; load kleinbesta2; TrainingSet_Clusters = neural_gas_cluster (kleinbesta2, 9, 1000); TestSet load besta2;
%Loads the test set
[NoOfScans, lasers] = size (besta2); NoiseChanges =5; t=0:pi/360:pi-pi/360; Scan_Prev_Index =1; ii = 0; Prev_Index = 1; NoOfClasses = 9; NewClass = 0; %%%%%%%%%%%%%%%%%%%%%%%%%%%%% %This part classifies the test set to previously clustered training set. %A plot of the belonging of the test set patterns to a particullar class is %made. The number of Classes are determined. %%%%%%%%%%%%%%%%%%%%%%%%%% for Scan = 1:1:NoOfScans Test_Set_1_class = neural_gas_class(TrainingSet_Clusters,besta2(Scan,:)); %Classifies the test vectors to the known classes figure(3);
hold on; plot(Scan,Test_Set_1_class,â&#x20AC;&#x2122;b*â&#x20AC;&#x2122;);
if (NewClass ~= Test_Set_1_class) NoOfClasses = NoOfClasses + 1; NewClass = Test_Set_1_class;
72
end; end; Regression with own code clear; close all; load halfuur; y = 1:30; a= halfuur(:,3); s= halfuur(:,5); xlim ( [0, 36] ); hold on; plot (y,a, ‘:s’, ‘MarkerSize’, 6, ‘MarkerFaceColor’, ‘b’); title (‘Sugar’); xlabel (‘time’) ylabel (‘sugar’) y2 = transpose (y); %p = polyfit(y2,a,5); %pp = polyval(p,y); hold on; fit1 = fit(a, y2, ‘poly3’, ‘Normalize’, ‘on’); fitexp = fit(a, y2, ‘exp1’); fitexp2 = fit(a, y2, ‘exp2’); y3 = 1 : 50; plot (fit1, ‘b’); plot (fitexp, ‘g’); plot (fitexp2, ‘m’); plot(pp, ‘predobs’);
73
11
Reflections
Reflection
- Marijn Bults s154163
Knowledge beforehand When starting the elective, I had no prior knowledge of Matlab except for a small project in my first year as an ID student. I only knew Matlab was a potentially very interesting and useful application, therefore I decided I wanted to be responsible for the algorithm part in this elective. As for learning algorithms, there also was no knowledge about this section. To say it bluntly, I had no idea where I was starting on. The field we chose, children with diabetes, is not a field my interests are in. All the mentioned aspects made this elective a good step out of my comfort zone.
What went wrong? During the first weeks we did not start on implementing learning algorithms, we first wanted to have a strong concept and something physical to work with. I, therefore, made a SolidWorks file of a bracelet, to have it 3D printed and ready to be used. We decided upon the data we needed to collect to make a learning algorithm, after which we started on making and implementing learning algorithms in Matlab. To be able to do this, I first took a small online course for Matlab, to cover the basics, since I was the sole responsible for the learning algorithm in the beginning. The week we begun working on the learning algorithm was as a result week 4. I also immediately started looking for examples online and starting to implement them. This has been a very instructional experience, but it costed a lot of time. It would have been better if we started on the learning algorithm in week 1 and if I first wouldâ&#x20AC;&#x2122;ve used the provided learning algorithm. In the provided learning algorithm, the most challenging part is providing usable data. I thought I had usable data, but could not get the learning algorithm to work. In the end it turned out that I had usable data, but the error was in the learning algorithm. A lot of time couldâ&#x20AC;&#x2122;ve been used better if I didnâ&#x20AC;&#x2122;t got stuck on the error.
76
What went well? First of all it needs to be said that the teamwork overall was very good. Everybody contributed and no one was repeatedly late with their work or for the meetings. The choice to have an additional member, Bastiaan van Hout, on the algorithm task was also a good call to make. I updated him on my matlab experiences, something that was also instructional for Bastiaan, and by explaining what I was doing I got a better feel of the system.
What would I have done differently? I wouldâ&#x20AC;&#x2122;ve started working in matlab and on the provided learning algorithm from day 1. I would like to be able to successfully implement a supervised learning algorithm, since I think I now have the knowledge to do so. I also would like to improve the concept, since itâ&#x20AC;&#x2122;s not completely realistic to give a child so much responsibility over their diabetic situation (the child controls the slider values). All in all I think I have been a very useful member of the design, as was everyone else. The elective has been a very instructional experience, because I now have experience with Matlab and learning algorithms in general. The mentioned error I experienced in matlab that caused the system not to work, caused me to look deeper into the subject, which is why I am actually happy the error occurred.
77
Reflection
- Eleni Economidou - s150682
Motivation The reason behind my personal preference to choose a such a vulnerable target group and an ambitious concept was the experience gained from trying out a solution with social implications. Having to make a choice between the CDR and the RDD track, I have selected this elective so that I gain a better insight by working within a research design and development framework. This elective proved to be a unique opportunity to design embodied meaningful products that have the potential to create an immediate impact on society, and especially those who are in need.
Aims My personal goals and expectations out of this elective - and particularly out of designing for children with a disease like diabetes - included improving my design approach, familiarising myself with the general philosophy
of
employing
embodied
intelligent
behaviour
in
a
social
context, as well as the coding that takes place behind it. In addition, extending my skill-set by gaining further knowledge about the types of intelligent algorithms and the differences between each one, learn how to research before applying solutions, developing an understanding of how the input data is collected and analysed, and, lastly, implement concepts for meaningful social interaction using these intelligent algorithms. In short, my main goal was to adopt the most suitable mindset for a design project of this nature.
Learning activities / duties Initially, the team analysed the given paper and got acquainted with the foundation of embodied cognition. In the following weeks, the team went through the iterative process to figure out the approaching angle of the intelligent embodiment frame, researched for other examples, solutions
78
and publications within the subject in question, created a low-fidelity
prototype. The process was quite collaborative, since each member of the team brought to the table a different set of competencies. On a personal level, I have gained further knowledge on what intelligent algorithms are and the difference between each type, how to design for specific scenarios in a social context, improved my persona design, editing and animation of 2D vector graphics in After Effects - something I felt confident in doing but also wanted to improve and also had a role in the documentation and the setup of the report. I have closely observed what the other team members responsibilities were and got acquainted with how intelligent algorithms work even though I havenâ&#x20AC;&#x2122;t implemented it myself.
Relevance for future development By the end of the elective there was a clear understanding of the methods of using intelligent algorithms in a meaningful way within a social context. Personally, I would like to be more active on the programming part but the team decided to separate tasks according to each memberâ&#x20AC;&#x2122;s strengths, something that proved to be a wise decision since the result would not have been the same or of the same quality. To conclude, any gained knowledge from this elective could be applied in my future design explorations, thus, contributing to existing areas of design.
Team dynamics I genuinely enjoyed being a member of this team. We came a long way, but, we were mostly efficient. The planning of tasks was successful and there was a friendly climate amongst us. Collaboration came naturally due to an immediate connection and common understanding. Everyone had his or her skills that we wanted to share in order to contribute to better results. Iâ&#x20AC;&#x2122;m looking forward to future collaborations.
79
Reflection - Ivar Kraaijevanger - s156193 At the beginning of this elective I was not sure what to expect. I knew about algorithms, but not what they were able to do exactly. The lectures helped to clarify what different types of algorithms there are and what they are capable of. In the beginning of the elective I wanted to get our idea clear. We brainstormed a lot. We discussed
all kind of different ideas on where we
could design a solution for. A solution that had the potential to embody social and intelligent behaviour. We decided to create a solution for children with diabetes. Children are vulnerable and forget things easy. A device to help keep them keep track of their illness and keep monitoring their health can be highly beneficial for them. I 3D printed the design we made so we had a shape prototype to get things going. The elective challenged me. It took me a while to wrap my head around the paper we were provided with at the beginning of the elective. It was a dense paper, describing about 45 years of scientific research. It was very useful to have it chopped up in pieces and presented from one team to another. I did need to read it a couple of times to really understand it. I think we made a good start with pinning down the concept we wanted to develop. But we should have started with the algorithm earlier. Marijn struggled a lot. I tried to help him. I research on what kind of data we should use for the feed for the algorithm. Eventually Bastiaan teamed up with Marijn to get the learning algorithm working. We thought it was useful to have an application that runs on a mobile platform such as a smartphone. This device will enable the bracelet to communicate with anyone near and far away in, for example, case of emergency. Also the phone will be able to store all the data and provide the user with insights.
80
I designed the basis for the app, who then later were redesigned by Thijs.
The lay-out for the report is something I took responsibility in. I need to work on my graphic skills as a designer. This is something that lacked in my bachelor education at the Hogeschool Utrecht. Therefore I wanted to develop my graphic skills and thought this elective was a useful opportunity. I asked my team and also outsiders what they thought of the lay-out, so that I was able to develop my skills further and know what others would think of my graphic development. The teamwork was good. Everyone worked well and I believe that the work was evenly distributed. Some did work that was more visible than others. The team dynamics were also good, which ensured that meetings were never boring or useless. Thought they could sometimes have been more effective if we stayed on topic more. Nonetheless I am happy with the outcome of our work. If I would do the elective again I would like to do more on the programming and the learning algorithm part. I think Marijn did a good job. He claimed the learning algorithm part, and I did not communicate clearly that I wanted to do that too. A part of the problems was that I needed to figure out how to get MatLab installed on my MacBook, while Marijn already had his laptop set up quickly with MatLab. I have learned a great deal in this elective. It see a lot more opportunities for me to program with. In hindsight of programs I tried to make I believe that I had an earlier need for algorithm than this last quartile. So I am happy to have learned the potential of algorithms and will certainly use those later on to get programs working better.
81
Reflection - Thijs H. Roeleven - s144261 My interest in intelligent agents and behavior of products originates from my interest and knowledge in designing for children. In many design processes, the desire for making a product that grows whilst used would seem perfect, but is oftentimes downgraded and replaced by a simple version with limited adaptivity. However, if you succeed in making an adaptive and sensing product, you get a product that doesn’t become boring or outdated. My motivation and goal to learn more about technology that changes society further helped me decide to choose this elective, as the area – Technology and realization – deals with creating a vision and expectation of how the future will change. A change that is perceived from a technological impact or in this case on the behavioral impact on the user.
The expectation
for what the future occupies me as a designer and it inspires me.
During the process of choosing a context for where a social agent best could be utilized, it became apparent that the vision guides this process. Therefore, the choice landed on minimizing the goal for what the agent should do. Additionally, the context that was chosen suited me very well as my interest for designing for children acts as a great motivator. The process of familiarizing myself with the theory and history of cognition / artificial intelligence is something I have touched upon before to an extend that I could refer and discuss the topic with reference to other papers, such as, the paper from 1991 – The computer for the 21st century. The paper does what I accomplished in this elective. It suggested a peek into the future and how it could look in 10-20 years time, and realized this, just as us, through mockups and prototypes. In a team of five designers the focus on interaction with the bracelet was a priority that introduced different responsibilities to effectively
82
work together. It meant that while involved in most parts, I was mainly focusing on implementing the heart rate monitor and the development of the application and add-on. It somewhat resulted in trusting people and allowing them to take charge of their own areas. It was interesting to experience the time consuming process of approaching a project differently. To start with the attempt to add data to a learning algorithm with a hope for a meaningful result, resulted in a more chaotic progression where uncertainty for the topic and of the usage were slightly dominating. However, I feel that I and the team worked well together in solving the challenges together. Looking back, I hope to further improve my understanding of neural network algorithms as they have gained an increasing investment from the tech industry, where especially Google is a frontrunner with their selfdriving cars and dream machine. On the other hand, I sustain my critical view on where this approach can be applied to, as privacy, ethics, morals and security for the users are challenged with the development of thinking products.
83
Reflection - Bastiaan van Hout - s123868 Perspective on intelligent behaviour in social agents This elective has been important in the development of my view on the role that products should and can have in design. It has provided me with a perspective on products and how people interact with them, and on social behaviour in general. With my vision towards systems design and the importance of (societal) context, I see individual agents interact with each other (mediated) through technology. The theoretical background knowledge provided in this elective in combination with a practical solution to promote social interaction through intelligent behaviour, proved to be an effective learning trajectory. At first I was sceptical about robotics and their role in society and I still am, but I have opened up to the potential of learning algorithms and their embodiment. In my view robots can learn to perform mundane and quite complicated tasks, but they can never have genuine social capabilities. However, when thinking about social behaviour, one could argue that if a person feels a robot is displaying social behaviour, the robot has succeeded in social interaction. With learning algorithm chat programs already leading towards characters being indistinguishable from humans, a big step in direction has already been made.
Complexity of human behaviour I do believe that the next step towards this behaviour in an embodied agent is a very big one. An important argument in this is the complexity of human behaviour and skills. Will social behaviour in interaction between humans and products/robots ever be possible? Or will they remain nothing more than social mediators for interaction among humans? And, if so, could this eventually lead to a form disconnected between people over a longer term if every form of interaction is technologically mediated? In my view, intelligent and interactive products are potentially great applications to promote
84
social interaction (as long as they are mediated properly), but I am curious to see where the development of autonomous robots goes to and its impact on particularly the ethical side of human-product interaction. Perhaps the fact that this social behaviour is taught by humans gives it some form of realness? This is something to definitely ponder about.
The elective and its role in my designs The learned algorithms and software to create learning products and systems can be very useful in my development as a designer, especially towards personalized solutions. A system can learn to adapt to the user(s) and context, and grow to fit the user(s) better and better over time. This allows for a product to be similar at first with different users, but develop to grow into a situation that is desirable and meaningful. In the elective I mainly focused on the theories and the why, and I tried to understand the use of learning algorithms and their functionality to answer to the aforementioned insight of using them in my designs. By implementing the learning algorithm functionality into a working prototype in combination with a visual representation of what the concept could look like we managed to communicate the concept efficiently and clearly. What I would do different in the future is to communicate the necessity of the concept in more detail in the presentation. We mainly focused on learning the algorithm and its use, and how to communicate its use through detailed scenarios. However, to convince the audience of the necessity, a clear description and proof for the concept to be meaningful and desirable is paramount. In short, the elective has given me useful and important insight into the potential and use for these systems, and it made me contemplate about where and how these systems can be of value.
85