% Energy behaviour change intervention model based on cognitive aspects: personal values, energy litarcy and persuasion model % 15 April 2016 %Author: Nataliya Mogles, University of Bath %In this version general energy mental model, or knowledge is included %together with your own energy context awareness, or knowledge on the personal %situation, your own context clear all; close all; % Simulation parameters start_time = 0; end_time = 51; delta_t = 1; steps = (end_time - start_time) / delta_t; %ALL model inputs and parameters have values on [0,1] scale % Model parameters % the sum of the weights of all variables contributing to/influencing another variable is always equal to 1 %Connection weights from the 4 environmental values to 'salient value' %for a non-intervention scenario when no cue is presented hedonic2value = 1/4; egoistic2value = 1/4; altruistic2value = 1/4; biospheric2value = 1/4; %For the scenario when a value-based behaviour change intervention cue is %presented, the connection weight from the framed value and 'salient value' %is equal to primed2value and the other three value acquire weak2value conenction primed2value = 0.9; weak2value = 0.1/3; %Connection weights from 'success expectancy', 'salient value' to 'motivation' exp2motivation = 1/2; value2motivation = 1/2; %Connection weights from 'barriers', 'energy literacy', 'context literacy' to 'ability' barriers2ability = 0.3; literacy2ability = 0.5; context_literacy2ability = 0.2; %Situation awareness connection %Connection weights from 'energy literacy', 'cue/trigger' to 'context information' literacy2context = 0.8; cue2context = 0.2; %Connection weights from 'motivation', 'ability', 'cue/trigger' to 'behavioral intention' motivation2behaviour = 0.4; ability2behaviour = 0.4; cue2behaviour = 0.2; %Parameters that define the speed of change of 'energy literacy'(eta) and success %expectancy(eta_expect over time given the behaviour intervetnion cue/trigger is present gamma =0.01; eta_expect = 0.005; %CONCEPTS (VARIABLES) %Initialisation of vectors for all model concepts (needed in MATLAB prior %to the actual vairables initialisation %these concepts are calculated on the fly %4 environmental values hedonic = zeros(end_time,1); egoistic = zeros(end_time,1); altruistic = zeros(end_time,1); biospheric = zeros(end_time,1); value = zeros(end_time,1); % salient value expect = zeros(end_time,1); %success expectancy barriers = zeros(end_time,1); literacy = zeros(end_time,1); %energy literacy context_literacy = zeros(end_time,1); %context information educ = zeros(end_time,1); %educational component extracted from cue/trigger cue_context = zeros(end_time,1); motivation = zeros(end_time,1); ability = zeros(end_time,1); behaviour = zeros(end_time,1); %Actual initialisation of model concepts/vairables %Numbers for environmental values (e.g. for this particular individual profile) altruistic(1,1) = 0.5; biospheric(1,1) = 0.5; egoistic(1,1)= 0.8; hedonic(1,1) = 0.8; expect(1,1) = 0.5; %Initial success expectancy literacy(1,1) = 0.5; %Initial energy literacy context_literacy(1,1) = 0; %context information barriers(1,1) = 0.5; % Coding of different components of cue/trigger % position 1 - neutral energy info, 2 - hedonic value framing, 3 - egoistic value framing, 4 - biospheric value framing, 5 - altruisitc value framing, 6 - action prompt c = [1 0 0 0 0 0]; %neutral energy consumption cue - just knowledge without values activation c1 = [0 0 1 0 0 1]; % 3d element - egoistic value is framed c2 = [0 0 0 1 0 0]; % 4th element - biospheric value is framed c3 = [0 0 0 0 0 1]; %cue with only acions or no cue - the last 6th position in the cue vector defines the presence of action prompts c4 = [0 0 0 0 0 0]; %no cue % Cues are introduced during the 50 timesteps of a simulation: a vector of % 50 elements is created here; you can change cues and thus simulate % different types of interventions cue = [c; c; c; c; c; c1; c1; c1; c1; c1; c1; c1; c1; c1; c1; c3; c3; c3; c3; c3; c3; c3; c3; c3; c3; c3; c3; c3; c3; c3; c2; c2; c2; c2; c2; c2; c2; c2; c2; c2; c2; c2; c4; c4; c4; c4; c4; c4; c4; c4; c4]; %MODEL SIMULATION for i=1:(steps-1) %We assume that 4 values and barries are static during the whole simulation hedonic(i+1) = hedonic(i); egoistic(i+1) = egoistic(i); altruistic(i+1) = altruistic(i); biospheric(i+1) = biospheric(i); barriers(i+1) = barriers(i); % SALIENT VALUE if cue(i,2)==1 value(i,1) = hedonic(i,1) * primed2value + egoistic(i,1) * weak2value + biospheric(i,1) * weak2value + altruistic(i,1) * weak2value; elseif cue(i,3)==1 value(i,1) = hedonic(i,1) * weak2value + egoistic(i,1) * primed2value + biospheric(i,1) * weak2value + altruistic(i,1) * weak2value; elseif cue(i,4)==1 value(i,1) = hedonic(i,1) * weak2value + egoistic(i,1) * weak2value + biospheric(i,1) * primed2value + altruistic(i,1) * weak2value; elseif cue(i,5)==1 value(i,1) = hedonic(i,1) * weak2value + egoistic(i,1) * weak2value + biospheric(i,1) * weak2value + altruistic(i,1) * primed2value; else value(i,1) = hedonic(i,1) * hedonic2value + egoistic(i,1) * egoistic2value + biospheric(i,1) * biospheric2value + altruistic(i,1) * altruistic2value; end % MOTIVATION motivation(i) = expect(i) * exp2motivation + value(i) * value2motivation; if cue(i,1)==1 educ(i) = 1; elseif cue(i,2)==1 educ(i) = 1; elseif cue(i,3)==1 educ(i) = 1; elseif cue(i,4)==1 educ(i) = 1; elseif cue(i,5)==1 educ(i) = 1; else educ(i) = 0; end % ENERGY LITERACY literacy(i+1) = literacy(i) + (gamma * educ(i)*(1-literacy(i)))* delta_t; %SUCCESS EXPECTANCY expect(i+1) = expect(i) + (eta_expect * educ(i)*(1-expect(i)))* delta_t; %CONTEXT LITERACY if cue(i,1)==1 cue_context(i) = 1; elseif cue(i,2)==1 cue_context(i) = 1; elseif cue(i,3)==1 cue_context(i) = 1; elseif cue(i,4)==1 cue_context(i) = 1; elseif cue(i,5)==1 cue_context(i) = 1; else cue_context(i) = 0; end context_literacy(i) = literacy(i) * literacy2context + cue_context(i) * cue2context; % ABILITY ability(i) = barriers(i) * barriers2ability + literacy(i) * literacy2ability + context_literacy(i) * context_literacy2ability; %ADD 2 more components: COGNITIVE SKILLS and context LITERACY %BEHAVIOURAL INTENTION behaviour(i) = motivation(i) * motivation2behaviour + ability(i) * ability2behaviour + cue(i, 6) * cue2behaviour; %PLOT VARIABLES plot(behaviour, '-r'); hold on; plot(motivation, '-m'); hold on; plot(value, 'b'); hold on; plot(cue(:,1), 'x-g'); hold on; plot(cue(:,2), 'x-b'); hold on; plot(cue(:,3), 'x-k'); hold on; plot(cue(:,4), 'x-c'); hold on; plot(cue(:,5), 'x-y'); hold on; hold off; axis([0 50 0 1.2]) xlabel('Time') ylabel('Model value') l1 = legend('behaviour','motivation', 'salient value', 'cue neutral', 'cue hedonic','cue egoistic', 'cue biospheris', 'cue altruistic'); title('Cognitive Dynamics') end