SelfEfficacyModel_5

No preview image

1 collaborator

Default-person Jonathan Lesser (Author)

Tags

(This model has yet to be categorized with any tags)
Visible to everyone | Changeable by everyone
Model was written in NetLogo 4.1.2 • Viewed 192 times • Downloaded 34 times • Run 1 time
Download the 'SelfEfficacyModel_5' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


WHAT IS IT?

The Self-Efficacy Model is an interactive model in a program to teach educational leaders about self-efficacy that allows users to simulate task performance and self-efficacy updates by constructing individual students with modifiable trait levels and manipulating student and environmental variables. The program is designed to introduce users to increasing complex models of self-efficacy that progressively incorporate more and more input factors that contribute to the development of self-appraisals. Each model consists of a visualization screen that represents students as individual agents (accompanied in some cases by an adult _elper_, as well as a set of sliders that allow the user to change environmental or agent-based variables to modify the observed behavior. The students will dynamically move horizontally across the screen as their self-efficacy values shift. Leaders who use engage with the SEMP program should be empowered to identify factors in their own environments that can be either detrimental or advantageous to improving their students_self-efficacy judgments, improving the lives of young children and the people around them.

This model is the fifth and final model. This model introduces the presence of "helpers" that can help or hurt the students' perform and self-efficacy levels.

HOW IT WORKS

Steps/Rules in "Perform Task/Update Efficacy" - When the user click the "perform task/update efficacy" or "perform/update x100" button, these are the processes that take place and the rules and factors that govern them.

1) Effort Update _This process modifies the students_effort expenditure level according to their self-efficacy level.

a. If the student has a high perception of task difficulty AND a high level of self-efficacy, the student receives a boost in effort expenditure based on the world attribute value of _erceived Difficulty Effect._If the student has a low perception of task difficulty AND a low level of self-efficacy, the student receives a reduction in effort expenditure (Bandura, 1982).

b. This effect is also multiplied by the world attribute _fficacy Bonus;_this variable can be changed to a value between 0 and 1 through the slider present in the interface. This allows the user to modify the impact that efficacy has on effort based on their own conceptions of how those factors interact.

2) Outcome determination _This process results in either a success or a failure for the student on a single trial, dependent on whether the task difficulty value is greater than a randomly-generated value bounded by effort expenditure plus a randomly-generated value bounded by ability level.

a. _ask difficulty_is a task attribute that can modified through a slider present in the interface. This attribute can be changed after a single task performance or during a run and will dynamically affect the environment.

b. The formula for determining the outcome is a simplistic view on performance. It views effort and ability as the main factors contributing to actual performance success, as it relates to the level of difficulty a student is encountering. The element of randomness is added because every trial on a task is not necessarily equal, but there is a probability that the outcome will be the same given the value of the factors.

c. After each task performance, the patch on which the student is standing will change color: green to represent a success, or red to represent a failure. Because students will _erform_over the same patches many times, the color of the patch will subsequently lighten for successes or darken for failures if the patch has already been _erformed_on.

d. The randomness of task performance can be turned off through the _andomness_switch present in the interface.

3) Receive feedback _According to the _eedback frequency_box available in the interface, this process increases the level of attributions that the student gives to either effort expenditure or ability level. Upon receiving feedback about the causes of their performance, the students will then form internalized attributions about what causes outcomes in the future.

a. If the student receives feedback on either their effort or their ability, their attributions of outcomes towards luck is reduced (Schunk, 1984). The value of luck attribution is not available to the user in the interface but can be accessed by inspecting a student, or by asking the student to show it_ attributes in the command prompt.

4) Determine chance of deep processing / Make attributions _This process is where the students change their efficacy or effort expenditure levels based on the attributions they are currently making. This attributional process is dependent on chance of deep processing: the less experience the student has on the task, the more likely the student is to make _eep processing_judgments about efficacy based on task and environmental factors (Gist & Mitchell, 1992). If the student is making ability attributions AND they have just failed on the performance, their self-efficacy level is reduced; if they are making ability attributions AND they have just succeeded, their self-efficacy level is increased (Schunk, 1984; Forsterling, 1985). If the student is making effort attributions AND they have just failed, their effort expenditure is increased by an amount equal to the level of their effort attributions (Forsterling, 1985), multiplied by the _ttribution effect_world attribute slider available in the interface; if the student succeeds with effort attributions, their self-efficacy level increases (Schunk, 1984). If the student is making effort attributions AND the helper_ feedback strength is positive (ie influential) AND the student perceives the task to be difficult, then the student_ efficacy level is actually decreased as a function of the level of helper influence, task perception, and the _elper impact_world attribute slider present in the interface.

a. The student_ efficacy level is decreased when effort attributions are influential but the student perceives the task to be easy because that gives the student the impression that if they are putting in a lot of effort to an easy task, then they must have low ability (Schunk, 1984).

b. If the student is receiving ability feedback and succeeds on a task, the student will increase their efficacy to a greater degree than if they succeeded and were receiving effort feedback, determined by the _ttribution effect_slider present in the interface. This is because ability feedback has been shown to be more effective than effort feedback when attributing causes to success (Schunk, 1984).

c. If the student has a high level of self-efficacy but fails on the task, the student will increase the attributions of his outcome that he places on luck (Gist & Mitchell, 1992).

5) Determine chance of deep processing / Helper impact incorporation _If the student exhibits deep processing, the student will either decrease or increase their self-efficacy level as a function of how effective or ineffective the helper_ modeling level is, multiplier by the _elper Effect_slider (Bandura, 1982).

6) Determine chance of automatic processing / Change efficacy level _This step is where the students update their efficacy levels according to the outcome on their last performance: increase efficacy after a success or decrease efficacy after a failure. This efficacy change is dependent on chance of automatic processing: the more experience the student has on the task, the more likely the student is to make _utomatic_judgments about efficacy based on past performance (Gist & Mitchell, 1992). If the student is new to the task, there is a higher chance that the student will incorporate other factors to make judgments about efficacy.

a. If a student has failed on a task AND holds an _ntity_view of intelligence, his self-efficacy value is additionally reduced by the value set on the _OI-strength_slider present on the interface (Dweck & Leggett, 1988; Wood & Bandura, 1989).

7) Ability update _This process increases the student_ ability on the task if the student successfully performed the task.

a. The level of ability increase is determined by the world attribute _earning Bonus;_this variable can be changed to a value between 0 and 1 through the slider present in the interface. This allows the user to modify the impact that success has on ability based on their own conceptions of how those factors interact.

b. If the student has a high perception of task difficulty AND a high level of self-efficacy, the student receives a boost in ability based on the world attribute value of _erceived Difficulty Effect._If the student has a low perception of task difficulty AND a low level of self-efficacy, the student receives a reduction in ability (Bandura, 1982).

8) Experience update _This process increases the students_experience value after having performed on the task

9) [Plotting] _After all of the values have been updated after a performance, the values will be plotted for each student on the Self-Efficacy, Ability-Level, Effort-Expenditure, and Outcomes plots.

a. The Self-Efficacy, Ability-Level, and Effort-Expenditure plots represent the students_values (0 to 100) on the y-axis and time (in performances) on the x-axis

b. The Outcomes plot charts the aggregate difference between successes and failures on the y-axis and time (in performances) on the x-axis. That is, a value of 30 represents the student has 30 more successes than failures, whereas a value of -30 represents the student has 30 more failures than successes.

HOW TO USE IT

Import Student List

This button allows the user to select a student list created using the Student Setup tool. Once a list is selected, all of the students, helpers, and their values will be imported for use in the present model.

Perform task/update efficacy button

This button simulates a single task trial for all students.

Perform/update x100

This button simulates 100 subsequent trials of performance for all students.

Update Student/Helper

These buttons allow the user to pick a student (represented by a number mapping to the order in which the student was created) and change the students' (or helpers') initial values for the current model only. This update WILL NOT change the students_values that are coded in the student list file. The user has the option to modify starting self-efficacy, starting effort expenditure, or starting ability level.

See Student Attributes

Clicking this button will provide a list of attribute values for the student currently selected in the Student Number box. This list will appear in the command prompt, and represents the most recent values for that student; these values will likely change after a single performance. This button can be extremely helpful to see what level students start at, or to get a better idea of some of the attribute values that are not represented in the plots.

Reset/Clear

The _eset_button will reset all student values back to the values present in the student list file (or to the values modified through the update student button), including task experience and outcome totals. The _lear_button will remove all students from the screen and allow the user an opportunity to import a different student list.

THINGS TO NOTICE

What variable does the modeling-effectiveness seem to change most? Imagine how students might change their conception of a task if they see a teacher poorly perform on that task.

Experiment with a student/helper pair where the student is receiving effort feedback and the helper is providing a strong level of feedback. Try to manipulate the students_perceived task difficulty values and see what happens to the students_efficacy and outcome levels. Do you see anything that is surprising to you?

THINGS TO TRY

EXTENDING THE MODEL

NETLOGO FEATURES

RELATED MODELS

StudentSetup.nlogo

SelfEfficacyModel_1.nlogo

SelfEfficacyModel_2.nlogo

SelfEfficacyModel_3.nlogo

SelfEfficacyModel_4.nlogo

CREDITS AND REFERENCES

Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

globals [avail-resources env-responsiveness distraction efficacy-level-list task-counter zero-se one-se variable-list feedback-counter
  next-color student-num student-num-counter helper-num-counter temp-list]
breed [students student]
breed [helpers helper]
students-own [init-self-efficacy-level self-efficacy-level
  init-effort-expend effort-expend persev perc-task-diff perc-avail-resource
  perc-outcome student-perf-outcome init-ability-level ability-level TOI task-significance init-task-experience task-experience
  outcome-history outcome-totals temp-resource-bonus effort-attrib ability-attrib luck-attrib effort-feedback? ability-feedback? helper-num
  who-helping? my-name]
helpers-own [persuasion modeling evaluation perf-outcome
  competitor? self-efficacy-level other-efficacy-level feedback-strength feedb-type]

to clear
  clear-all
end 

to show-traits
  ask student student-number
  [show (list word "Self Efficacy Level: " self-efficacy-level word "Effort Expenditure: " effort-expend
      word "Ability Level: " ability-level word "Perceived Task Difficulty: " perc-task-diff
      word "Theory of Intelligence: " TOI word "Perceived Resources Available: " perc-avail-resource
      word "Task Significance: " task-significance word "Task Experience: " task-experience
      word "Effort Attribution: " effort-attrib word "Ability Attribution: " ability-attrib
      word "Luck Attribution: " luck-attrib word " Successes: " first bf outcome-totals
      word "Failures: " first outcome-totals
      )]
end 

to import-students
  file-open user-file
  create-students file-read [set shape "person student" set size 10 set outcome-history [] set heading 180]
;  create-helpers file-read [set shape "person graduate" set size 10 set heading 180]
  while [NOT file-at-end?]
  [give-attributes]
  file-close
  startpos
  make-student-pens
end 

to give-attributes
  let current-attributes file-read
  ask student item 1 current-attributes
  [set init-self-efficacy-level item 2 current-attributes set self-efficacy-level item 2 current-attributes
    set init-ability-level item 3 current-attributes set ability-level item 3 current-attributes
    set init-effort-expend item 4 current-attributes set effort-expend item 4 current-attributes
    set perc-task-diff item 5 current-attributes
    set TOI item 6 current-attributes
    set perc-avail-resource item 7 current-attributes
    set task-significance item 8 current-attributes
    set init-task-experience item 9 current-attributes
    set my-name item 13 current-attributes
    set color who * 20 + 5
    set label my-name
    set outcome-history []
    set temp-resource-bonus 0
    set ability-attrib 0
    set effort-attrib 0
    set luck-attrib 0
    set outcome-totals [0 0]
    if item 10 current-attributes
    [hatch-helpers 1 [set shape "person graduate" set size 10 set heading 180 create-link-from myself [tie]
      set modeling item 12 current-attributes set feedback-strength item 11 current-attributes
      setxy ([xcor] of myself + 5) [ycor] of myself set label ""]]]
end 

;attribute-list order
;0: who OR "helper"
;1: student-num OR who
;2: self-efficacy-level OR helper-num
;3: ability-level OR who-helping?
;4: effort-expend OR modeling
;5: perc-task-diff OR feedback-strength
;6: TOI
;7: perc-avail-resource
;8: task-significance
;9: task-experience
;10: has-helper?
;11: helper-feedback-strength
;12: helper-modeling-strength
;13: my-name

to experience-update
  set task-experience task-experience + 1
  if task-experience > 100 [set task-experience 100]
end 

to-report has-helper?
  report any? out-link-neighbors
end 

to-report my-helper?
  if has-helper?
  [report one-of out-link-neighbors]
end 

to receive-feedback
  ifelse feedback-counter = feedback-frequency
  [if effort-feedback? = true
    [set effort-attrib effort-attrib + 1
      set luck-attrib luck-attrib - .5]
  if ability-feedback? = true
    [set ability-attrib ability-attrib + 1
      set luck-attrib luck-attrib - .5]
    if who + 1 = count students
    [set feedback-counter 1]]
  [set feedback-counter feedback-counter + (1 / count students)]
  min-max-attrib-correct
end 

to-report chance50?
  report random 10 > 4
end 

to-report deep-process-chance
  report random 101 > task-experience
end 

to-report automatic-process-chance
  report random 101 < task-experience + 50
end 

to helper-impact
  if has-helper? AND chance50?
  [let helper-modeling [modeling] of my-helper?
  if helper-modeling < 50
  [set self-efficacy-level self-efficacy-level + ((helper-effect * (helper-modeling - 50)) / 16)]
  if helper-modeling > 50
  [set self-efficacy-level self-efficacy-level + ((helper-effect * (helper-modeling - 50)) / 16)]]
end 

to min-max-attrib-correct
  if luck-attrib < 0 [set luck-attrib 0]
  if luck-attrib > 100 [set luck-attrib 100]
  if effort-attrib < 0 [set effort-attrib 0]
  if effort-attrib > 100 [set effort-attrib 100]
  if ability-attrib < 0 [set ability-attrib 0]
  if ability-attrib > 100 [set ability-attrib 100]
end 

to effort-update
  if perc-task-diff - 50 > 0 AND self-efficacy-level - 50 > 0
  [set effort-expend effort-expend + perceived-difficulty-effect]
  if perc-task-diff - 50 < 0 AND self-efficacy-level - 50 < 0 
  [set effort-expend effort-expend - perceived-difficulty-effect]
  set effort-expend effort-expend + ((efficacy-bonus * (self-efficacy-level - 50) / 8))
  if effort-expend < 0
  [set effort-expend 0]
  if effort-expend > 100
  [set effort-expend 100]
end 

to make-attributions
  ifelse ability-attrib >= effort-attrib
    [ifelse first outcome-history = 1 [increase-eff-level 1 + attribution-effect]
      [decrease-eff-level 1]] ;ending of actions when attribution = ability
    [ifelse first outcome-history = 1 [increase-eff-level 1] 
      [set effort-expend effort-expend + (effort-attrib * attribution-effect)] ;attribution is to effort, failure leads to increased effort
      if (has-helper? AND [feedback-strength] of my-helper? > 50) AND perc-task-diff < 50
      [set self-efficacy-level self-efficacy-level - 
        helper-effect * ((([feedback-strength] of my-helper? - 50) + (50 - perc-task-diff)) / 4)] 
     ]
  if self-efficacy-level > 50 AND first outcome-history = 0 AND random 10 > 4 [set luck-attrib luck-attrib + 1]
  min-max-attrib-correct
end 

to ability-update
  if perc-task-diff - 50 > 0 AND self-efficacy-level - 50 > 0
  [set ability-level ability-level + perceived-difficulty-effect]
  if perc-task-diff - 50 < 0 AND self-efficacy-level - 50 < 0
  [set ability-level ability-level - perceived-difficulty-effect]
  if student-perf-outcome = 1
    [set ability-level ability-level + learning-bonus]
    if ability-level > 100 [set ability-level 100]
    if ability-level < 0 [set ability-level 0]
end 

;to distraction-impact
;  set self-efficacy-level self-efficacy-level - (distraction-level * distraction-effect)
;  if self-efficacy-level < 0 [set self-efficacy-level 0]
;end

;to resource-impact
;  set temp-resource-bonus temp-resource-bonus + (resource-effect * (resources-available - resources-required))
;end

to perform-task ;; button that simulates trial at a task, yielding outcome and efficacy update
  ask students [
    ;distraction-impact resource-impact
    effort-update
    outcome-formula p-color-change
    receive-feedback
    if deep-process-chance [make-attributions]
    if deep-process-chance [helper-impact]
    if automatic-process-chance [change-eff-level]
    ability-update
    experience-update]
  set task-counter task-counter + 1
end 

to change-eff-level
  ifelse student-perf-outcome = 0
  [decrease-eff-level 1]
  [increase-eff-level 1]
end 

to increase-eff-level [num]
  if NOT (self-efficacy-level = 100)
  [set self-efficacy-level self-efficacy-level + num
  if self-efficacy-level > 100 [set self-efficacy-level 100]
  if self-efficacy-level < 0 [set self-efficacy-level 0]
    set xcor self-efficacy-level - 50]
end 

to decrease-eff-level [num]
  if NOT (self-efficacy-level = 0)
  [set self-efficacy-level self-efficacy-level - num
    if TOI = "Entity"
    [set self-efficacy-level self-efficacy-level - toi-strength]
    if self-efficacy-level < 0 [set self-efficacy-level 0]
    if self-efficacy-level > 100 [set self-efficacy-level 100]
    set xcor self-efficacy-level - 50]
end 

to p-color-change
  ifelse [pcolor] of patch-here != 0
  [ifelse first outcome-history = 1 [ask patch-here [set pcolor pcolor + 1 ask neighbors [set pcolor pcolor + 1]]]
      [ask patch-here [set pcolor pcolor - 1 ask neighbors [set pcolor pcolor - 1]]]]
  [ifelse first outcome-history = 1 [ask patch-here [set pcolor 65 ask neighbors [set pcolor 65]]]
      [ask patch-here [set pcolor 15 ask neighbors [set pcolor 15]]]]
end 

to change-outcome-totals
  ifelse first outcome-history = 1
  [set outcome-totals replace-item 1 outcome-totals (first bf outcome-totals + 1)]
  [set outcome-totals replace-item 0 outcome-totals (first outcome-totals + 1)]
end 

to-report outcome-agg
  report (first bf outcome-totals) - (first outcome-totals)
end 

to outcome-formula
  ifelse randomness = true
  [ifelse task-difficulty > (random ability-level + random effort-expend + temp-resource-bonus)
  [set student-perf-outcome 0]
  [set student-perf-outcome 1]
  set temp-resource-bonus 0]
  [ifelse task-difficulty > (ability-level + effort-expend + temp-resource-bonus)
  [set student-perf-outcome 0]
  [set student-perf-outcome 1]
  set temp-resource-bonus 0]
  set outcome-history fput student-perf-outcome outcome-history
  change-outcome-totals
end 

to go
  perform-task
  efficacy-plot
  effort-plot
  outcomes-plot
  ability-plot
end 

to go-100
  repeat 100 [go wait .05]
end 

to startpos
  ask students [setxy (self-efficacy-level - 50) (who * 10 - 5)]
end 

to make-student-pens
  ask students [set-current-plot "Effort Expenditure" create-temporary-plot-pen my-name set-plot-pen-color (who * 20 + 5)]
  ask students [set-current-plot "Outcomes" create-temporary-plot-pen my-name set-plot-pen-color (who * 20 + 5)]
  ask students [set-current-plot "Self-Efficacy" create-temporary-plot-pen my-name set-plot-pen-color (who * 20 + 5)]
  ask students [set-current-plot "Ability Level" create-temporary-plot-pen my-name set-plot-pen-color (who * 20 + 5)]
end 

to reset
  ask students [set self-efficacy-level init-self-efficacy-level
    set effort-expend init-effort-expend
    set ability-level init-ability-level
    set outcome-history []
    set temp-resource-bonus 0
    set ability-attrib 0
    set effort-attrib 0
    set luck-attrib 0
    set outcome-totals [0 0]
    set task-experience init-task-experience]
  clear-all-plots
  set task-counter 0
  set feedback-counter 1
  ask patches [set pcolor 0]
  startpos
  make-student-pens
  set next-color 5
end 

to min-max-correct
  if feedback-valence > 100 [set feedback-valence 100] if feedback-valence < 0 [set feedback-valence 0]
  if modeling-effectiveness > 100 [set modeling-effectiveness 100] if modeling-effectiveness < 0 [set modeling-effectiveness 0]
;  if student-ability > 100 [set student-ability 100] if student-ability < 0 [set student-ability 0]
;  if starting-efficacy > 100 [set starting-efficacy 100] if starting-efficacy < 0 [set starting-efficacy 0]
;  if perceived-resources-avail > 100 [set perceived-resources-avail 100] if perceived-resources-avail < 0 [set perceived-resources-avail 0]
;  if effort-expenditure > 100 [set effort-expenditure 100] if effort-expenditure < 0 [set effort-expenditure 0]
;  if perceived-task-difficulty > 100 [set perceived-task-difficulty 100] if perceived-task-difficulty < 0 [set perceived-task-difficulty 0]
;  if significance-of-task > 100 [set significance-of-task 100] if significance-of-task < 0 [set significance-of-task 0]
;  if experience-on-task > 100 [set experience-on-task 100] if experience-on-task < 0 [set experience-on-task 0]
;  if ability-attribution-feedback > 100 [set ability-attribution-feedback 100] if ability-attribution-feedback < 0 [set ability-attribution-feedback 0]
;  if effort-attribution-feedback > 100 [set effort-attribution-feedback 100] if effort-attribution-feedback < 0 [set effort-attribution-feedback 0]
end 

to update-student
;  min-max-correct
  ask student student-number [
;  [set init-self-efficacy-level starting-efficacy
;    set init-effort-expend effort-expenditure
;    set init-ability-level student-ability
;    set self-efficacy-level starting-efficacy
;    set effort-expend effort-expenditure
;    set ability-level student-ability
;    set TOI theory-of-intelligence
    set effort-feedback? effort-feedback
    set ability-feedback? ability-feedback
    set outcome-history []
    set temp-resource-bonus 0
    set ability-attrib 0
    set effort-attrib 0
    set luck-attrib 0
    set outcome-totals [0 0]
    set heading 180]
;;  reset
end 

to update-helper
  ask turtle student-number [
    ifelse has-helper? = false
  [user-message "Sorry, that student does not have a helper to update."]
  [min-max-correct
  ask helper (student-number + 2)
  [set modeling modeling-effectiveness
    set feedback-strength feedback-valence]]]
end 

to effort-plot
  set-current-plot "effort expenditure"
  ask students [set-current-plot-pen my-name
    plot effort-expend]
end  

to efficacy-plot
  set-current-plot "self-efficacy"
  ask students [set-current-plot-pen my-name
    plot self-efficacy-level]
end 

to outcomes-plot
  set-current-plot "outcomes"
  ask students [set-current-plot-pen my-name
    plot outcome-agg]
end  

to ability-plot
  set-current-plot "ability level"
  ask students [set-current-plot-pen my-name
    plot ability-level]
end  

There is only one version of this model, created over 14 years ago by Jonathan Lesser.

Attached files

No files

This model does not have any ancestors.

This model does not have any descendants.