Two methods for optimising cognitive model parameters

University of Huddersfield
University of HuddersfieldReader in Cognitive Science at University of Huddersfield
Two methods for optimising
cognitive model parameters
David Peebles
—
9th August 2016
The problem
Searching parameter spaces can be laborious and time
consuming – particularly if done iteratively by hand
It’s difficult to know if you have an optimal solution
Worse when model has several interacting parameters, is
non-differentiable, non-continuous, non-linear, stochastic, or
has many local optima.
Guilt and shame < boredom and frustration.
One solution, two methods
Use a population of models to explore the parameter space.
Differential evolution (DE)
Genetic algorithm for multidimensional real-valued functions.
Ideal for optimising models with relatively few parameters or
short run times on a single computer.
High-throughput computing with HTCondor
Open source software for managing job scheduling on
computer clusters or cycle scavenging idle computers.
Ideal for larger, more complex models or when simulating the
behaviour of many participants.
Used by many universities and easy to set up on local
networks (or so I’m told).
Differential evolution
An evolutionary strategy for real numbers used for
multidimensional numerical optimisation [2, 3].
Attractions:
- Simplicity of the algorithm
- Only three control parameters
- Fast, accurate, and robust performance
- Wide applicability
Control parameters:
NP the population size
F a scale factor applied to the mutation process
Cr a constant that regulates the crossover process
The DE algorithm in a nutshell
DE applies repeated cycles of mutation, recombination, and
selection on an initial, randomly generated population of vectors to
create a single vector that produces the best solution to a problem.
RecombinationInitialisation Mutation Selection
Initialisation
RecombinationInitialisation Mutation Selection
Create a population of real-valued vectors – one dimension
for each of the model parameters to be optimised.
Initialise vectors with uniformly distributed random numbers
within maximum and minimum bounds set for each dimension.
(:rt −5.0 −0.01) (:lf 0.1 1.5) (:ans 0.1 0.8)
To create the next population of vectors, each vector i in the
current population is selected in sequence, designated as the
target vector, and subjected to a competitive process. . .
Mutation
RecombinationInitialisation Mutation Selection
Mutation is the weighted difference between two vectors in the
current population.
A mutated donor vector is created by randomly selecting three
unique vectors, j, k and l from the population and adding the
difference between j and k (scaled by the F parameter) to l.
}=
j
k
l
}=
Donor vector
Sum
(weighted by F)
Difference
This ensures that differences in the scale and sensitivity of
different vector parameters are taken into account and that
the search space is explored equally on all dimensions.
Recombination
RecombinationInitialisation Mutation Selection
Cross the donor vector with the target vector to create the trial
vector to allow successful solutions from the previous
generation to be incorporated into the trial vector.
}=
Trial vector
Crossover
Donor
vector
vector
Target
Achieved by series of Bernoulli trials which determine for each
dimension which parent will donate its value.
Moderated by the crossover rate parameter Cr (0 ≤ Cr ≤ 1.).
Selection
RecombinationInitialisation Mutation Selection
Run the model with the parameter values from the trial vector.
If fitnesstrial ≥ fitnesstarget replace target vector with trial vector
in next generation, else retain target vector.
Repeat for each vector in the current population until the next
population is created and the evolutionary process continues
for a user-defined number of cycles.
Retain vector with highest fitness in each population.
Winning vector in the final population is considered the best
solution to the problem.
Paired Associate model example
1. Load (a) ACT-R, (b) DE code file, and (c) the fan effect model.
2. Modify the output function to just return one correlation.
3. Define a function to run the task suppressing the model output
and any warnings resulting from poor parameter choices.
4. Specify the three parameters to adjust with their ranges and
use the default DE configuration.
(defun output-data (data n)
(let ((probability (mapcar (lambda (x) (/ (first x) n)) data))
(latency (mapcar (lambda (x) (/ (or (second x) 0) n)) data)))
;;(correlation latency *paired-latencies*)
(correlation probability *paired-probability*)))
(defun run-paired-with-no-output ()
(let ((*standard-output* (make-string-output-stream)))
(suppress-warnings (paired-experiment 100))))
(optim ’run-paired-with-no-output ’((:rt -5.0 -0.01) (:lf 0.1 1.5) (:ans 0.1 0.8)))
HTCondor
DE useful for models with relatively few parameters or short
run times on a single computer.
DE too slow for large, complex models or when simulating the
behaviour of many participants.
HTCondor Pool
HPC Resources
Cloud Resources
HTCondor
Job
Manager
Users
Run a population of models over a network using HTCondor.
HTCondor – open source, cross-platform software system for
managing and scheduling tasks over computer networks [1].
Running ACT-R models on HTCondor
1. Modify your model to allocate random values to parameters.
2. Create a submit description file specifying job details
(executable, platform, the model files, commands etc.).
requirements =(OpSys == “WINNT61” && Arch == “INTEL”)
(OpSys == “WINDOWS” && Arch == “INTEL”)
(OpSys == “WINDOWS” && Arch == “X86 64”))
executable = actr-s-64.exe
arguments = “-l ’paired.lisp’ -e ’(collect-data 20)’ -e ’(quit)’ ”
transfer executable = ALWAYS
transfer input files = paired.lisp
output = out.stdout.$(Cluster).$(Process)
error = out.err.$(Cluster).$(Process)
log = out.clog.$(Cluster).$(Process)
queue 100
Random number generation
A potential problem arises with how the pseudorandom
number generator (PRNG) seed is set.
Each model instance must be initialised with a unique seed.
Many Lisps (and the ACT-R random module) use the
computer’s clock to generate seed. Problem if different
instances are given the same clock time.
To avoid this, use an ACT-R PRNG that doesn’t using the
system clock, uses a random number generated from CCL
(the Lisp used to create the MS Windows standalone ACT-R).
This method is employed in a new ACT-R
create-random-module which is loaded prior to loading the
model file.
Why not use MindModeling@Home?
NOT a toothbrush thing
MAYBE a lack of knowledge thing
MAYBE a World Community Grid thing (Zika, cancer cures).
Some models are small/trivial
Speed, convenience and flexibility
Try them out
Code and instructions for using both methods using the paired
associate model from tutorial unit 4.
DE: https://github.com/peebz/actr-paired-de
HTCondor: https://github.com/peebz/actr-paired-htc
Thanks as always to Dan Bothell for his patience and advice.
References I
M. J. Litzkow, M. Livny, and M. W. Mutka. ‘Condor—A Hunter
of Idle Workstations’. In: Proceedings of the 8th International
Conference on Distributed Computing Systems. IEEE. June
1988, pp. 104–111.
R. Storn and K. Price. Differential evolution: A simple and
efficient adaptive scheme for global optimization over
continuous spaces. Tech. rep. TR-95-012. Berkeley, CA: ICSI
Berkeley, 1995.
R. Storn and K. Price. ‘Differential evolution: A simple and
efficient heuristic for global optimization over continuous
spaces’. In: Journal of global optimization 11.4 (1997),
pp. 341–359.
1 of 16

Recommended

Data Analysis Assignment Help by
Data Analysis Assignment HelpData Analysis Assignment Help
Data Analysis Assignment HelpMatlab Assignment Experts
54 views17 slides
Learning On The Border:Active Learning in Imbalanced classification Data by
Learning On The Border:Active Learning in Imbalanced classification DataLearning On The Border:Active Learning in Imbalanced classification Data
Learning On The Border:Active Learning in Imbalanced classification Data萍華 楊
1.1K views32 slides
Machine learning and linear regression programming by
Machine learning and linear regression programmingMachine learning and linear regression programming
Machine learning and linear regression programmingSoumya Mukherjee
309 views44 slides
Data Analysis project "TITANIC SURVIVAL" by
Data Analysis project "TITANIC SURVIVAL"Data Analysis project "TITANIC SURVIVAL"
Data Analysis project "TITANIC SURVIVAL"LefterisMitsimponas
113 views6 slides
Intro to Machine Learning for non-Data Scientists by
Intro to Machine Learning for non-Data ScientistsIntro to Machine Learning for non-Data Scientists
Intro to Machine Learning for non-Data ScientistsParinaz Ameri
224 views68 slides
WEKA: Credibility Evaluating Whats Been Learned by
WEKA: Credibility Evaluating Whats Been LearnedWEKA: Credibility Evaluating Whats Been Learned
WEKA: Credibility Evaluating Whats Been LearnedDataminingTools Inc
2.7K views39 slides

More Related Content

What's hot

ML_in_QM_JC_02-10-18 by
ML_in_QM_JC_02-10-18ML_in_QM_JC_02-10-18
ML_in_QM_JC_02-10-18Suzanne Wallace
191 views27 slides
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로 by
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로 모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로 r-kor
959 views70 slides
Random forest using apache mahout by
Random forest using apache mahoutRandom forest using apache mahout
Random forest using apache mahoutGaurav Kasliwal
8.7K views20 slides
Visualizing the model selection process by
Visualizing the model selection processVisualizing the model selection process
Visualizing the model selection processRebecca Bilbro
338 views47 slides
An Introduction to Simulation in the Social Sciences by
An Introduction to Simulation in the Social SciencesAn Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social Sciencesfsmart01
1.8K views24 slides
Lightning talk at MLConf NYC 2015 by
Lightning talk at MLConf NYC 2015Lightning talk at MLConf NYC 2015
Lightning talk at MLConf NYC 2015Mohitdeep Singh
711 views9 slides

What's hot(20)

모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로 by r-kor
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로 모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로
r-kor959 views
Random forest using apache mahout by Gaurav Kasliwal
Random forest using apache mahoutRandom forest using apache mahout
Random forest using apache mahout
Gaurav Kasliwal8.7K views
Visualizing the model selection process by Rebecca Bilbro
Visualizing the model selection processVisualizing the model selection process
Visualizing the model selection process
Rebecca Bilbro338 views
An Introduction to Simulation in the Social Sciences by fsmart01
An Introduction to Simulation in the Social SciencesAn Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social Sciences
fsmart011.8K views
Lightning talk at MLConf NYC 2015 by Mohitdeep Singh
Lightning talk at MLConf NYC 2015Lightning talk at MLConf NYC 2015
Lightning talk at MLConf NYC 2015
Mohitdeep Singh711 views
Reading group nfm - 20170312 by Shuai Zhang
Reading group  nfm - 20170312Reading group  nfm - 20170312
Reading group nfm - 20170312
Shuai Zhang124 views
Machine Learning - Neural Networks - Perceptron by Andrew Ferlitsch
Machine Learning - Neural Networks - PerceptronMachine Learning - Neural Networks - Perceptron
Machine Learning - Neural Networks - Perceptron
Andrew Ferlitsch1.3K views
The ABC of Implementing Supervised Machine Learning with Python.pptx by Ruby Shrestha
The ABC of Implementing Supervised Machine Learning with Python.pptxThe ABC of Implementing Supervised Machine Learning with Python.pptx
The ABC of Implementing Supervised Machine Learning with Python.pptx
Ruby Shrestha199 views
Automated Machine Learning (Auto ML) by Hayim Makabee
Automated Machine Learning (Auto ML)Automated Machine Learning (Auto ML)
Automated Machine Learning (Auto ML)
Hayim Makabee3.4K views
Yellowbrick: Steering machine learning with visual transformers by Rebecca Bilbro
Yellowbrick: Steering machine learning with visual transformersYellowbrick: Steering machine learning with visual transformers
Yellowbrick: Steering machine learning with visual transformers
Rebecca Bilbro997 views
Introduction to Tensor Flow for Optical Character Recognition (OCR) by Vincenzo Santopietro
Introduction to Tensor Flow for Optical Character Recognition (OCR)Introduction to Tensor Flow for Optical Character Recognition (OCR)
Introduction to Tensor Flow for Optical Character Recognition (OCR)
Polymer Brush Data Processor by Cory Bethrant
Polymer Brush Data ProcessorPolymer Brush Data Processor
Polymer Brush Data Processor
Cory Bethrant258 views
IRJET - Movie Genre Prediction from Plot Summaries by Comparing Various C... by IRJET Journal
IRJET -  	  Movie Genre Prediction from Plot Summaries by Comparing Various C...IRJET -  	  Movie Genre Prediction from Plot Summaries by Comparing Various C...
IRJET - Movie Genre Prediction from Plot Summaries by Comparing Various C...
IRJET Journal17 views
hands on machine learning Chapter 6&7 decision tree, ensemble and random forest by Jaey Jeong
hands on machine learning Chapter 6&7 decision tree, ensemble and random foresthands on machine learning Chapter 6&7 decision tree, ensemble and random forest
hands on machine learning Chapter 6&7 decision tree, ensemble and random forest
Jaey Jeong88 views
Learning machine learning with Yellowbrick by Rebecca Bilbro
Learning machine learning with YellowbrickLearning machine learning with Yellowbrick
Learning machine learning with Yellowbrick
Rebecca Bilbro11.1K views
Efficient Data Stream Classification via Probabilistic Adaptive Windows by Albert Bifet
Efficient Data Stream Classification via Probabilistic Adaptive WindowsEfficient Data Stream Classification via Probabilistic Adaptive Windows
Efficient Data Stream Classification via Probabilistic Adaptive Windows
Albert Bifet984 views

Similar to Two methods for optimising cognitive model parameters

Accounting for uncertainty in species delineation during the analysis of envi... by
Accounting for uncertainty in species delineation during the analysis of envi...Accounting for uncertainty in species delineation during the analysis of envi...
Accounting for uncertainty in species delineation during the analysis of envi...methodsecolevol
5.6K views38 slides
Approaches to online quantile estimation by
Approaches to online quantile estimationApproaches to online quantile estimation
Approaches to online quantile estimationData Con LA
41 views23 slides
Heuristic design of experiments w meta gradient search by
Heuristic design of experiments w meta gradient searchHeuristic design of experiments w meta gradient search
Heuristic design of experiments w meta gradient searchGreg Makowski
1.1K views44 slides
maxbox starter60 machine learning by
maxbox starter60 machine learningmaxbox starter60 machine learning
maxbox starter60 machine learningMax Kleiner
96 views5 slides
Computational Intelligence Assisted Engineering Design Optimization (using MA... by
Computational Intelligence Assisted Engineering Design Optimization (using MA...Computational Intelligence Assisted Engineering Design Optimization (using MA...
Computational Intelligence Assisted Engineering Design Optimization (using MA...AmirParnianifard1
36 views29 slides
A Tale of Data Pattern Discovery in Parallel by
A Tale of Data Pattern Discovery in ParallelA Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in ParallelJenny Liu
126 views55 slides

Similar to Two methods for optimising cognitive model parameters(20)

Accounting for uncertainty in species delineation during the analysis of envi... by methodsecolevol
Accounting for uncertainty in species delineation during the analysis of envi...Accounting for uncertainty in species delineation during the analysis of envi...
Accounting for uncertainty in species delineation during the analysis of envi...
methodsecolevol5.6K views
Approaches to online quantile estimation by Data Con LA
Approaches to online quantile estimationApproaches to online quantile estimation
Approaches to online quantile estimation
Data Con LA41 views
Heuristic design of experiments w meta gradient search by Greg Makowski
Heuristic design of experiments w meta gradient searchHeuristic design of experiments w meta gradient search
Heuristic design of experiments w meta gradient search
Greg Makowski1.1K views
maxbox starter60 machine learning by Max Kleiner
maxbox starter60 machine learningmaxbox starter60 machine learning
maxbox starter60 machine learning
Max Kleiner96 views
Computational Intelligence Assisted Engineering Design Optimization (using MA... by AmirParnianifard1
Computational Intelligence Assisted Engineering Design Optimization (using MA...Computational Intelligence Assisted Engineering Design Optimization (using MA...
Computational Intelligence Assisted Engineering Design Optimization (using MA...
A Tale of Data Pattern Discovery in Parallel by Jenny Liu
A Tale of Data Pattern Discovery in ParallelA Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in Parallel
Jenny Liu126 views
HW2-1_05.doc by butest
HW2-1_05.docHW2-1_05.doc
HW2-1_05.doc
butest171 views
Machine Learning Guide maXbox Starter62 by Max Kleiner
Machine Learning Guide maXbox Starter62Machine Learning Guide maXbox Starter62
Machine Learning Guide maXbox Starter62
Max Kleiner65 views
AI optimizing HPC simulations (presentation from 6th EULAG Workshop) by byteLAKE
AI optimizing HPC simulations (presentation from  6th EULAG Workshop)AI optimizing HPC simulations (presentation from  6th EULAG Workshop)
AI optimizing HPC simulations (presentation from 6th EULAG Workshop)
byteLAKE182 views
A TALE of DATA PATTERN DISCOVERY IN PARALLEL by Jenny Liu
A TALE of DATA PATTERN DISCOVERY IN PARALLELA TALE of DATA PATTERN DISCOVERY IN PARALLEL
A TALE of DATA PATTERN DISCOVERY IN PARALLEL
Jenny Liu124 views
Ernest: Efficient Performance Prediction for Advanced Analytics on Apache Spa... by Spark Summit
Ernest: Efficient Performance Prediction for Advanced Analytics on Apache Spa...Ernest: Efficient Performance Prediction for Advanced Analytics on Apache Spa...
Ernest: Efficient Performance Prediction for Advanced Analytics on Apache Spa...
Spark Summit1.1K views
Machine Learning Algorithms (Part 1) by Zihui Li
Machine Learning Algorithms (Part 1)Machine Learning Algorithms (Part 1)
Machine Learning Algorithms (Part 1)
Zihui Li650 views
An Adaptive Masker for the Differential Evolution Algorithm by IOSR Journals
An Adaptive Masker for the Differential Evolution AlgorithmAn Adaptive Masker for the Differential Evolution Algorithm
An Adaptive Masker for the Differential Evolution Algorithm
IOSR Journals454 views
AHF_IDETC_2011_Jie by MDO_Lab
AHF_IDETC_2011_JieAHF_IDETC_2011_Jie
AHF_IDETC_2011_Jie
MDO_Lab395 views
Sparse Support Faces - Battista Biggio - Int'l Conf. Biometrics, ICB 2015, Ph... by Pluribus One
Sparse Support Faces - Battista Biggio - Int'l Conf. Biometrics, ICB 2015, Ph...Sparse Support Faces - Battista Biggio - Int'l Conf. Biometrics, ICB 2015, Ph...
Sparse Support Faces - Battista Biggio - Int'l Conf. Biometrics, ICB 2015, Ph...
Pluribus One707 views
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automata by ijait
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular AutomataCost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automata
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automata
ijait1 view
MEME – An Integrated Tool For Advanced Computational Experiments by GIScRG
MEME – An Integrated Tool For Advanced Computational ExperimentsMEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational Experiments
GIScRG913 views

More from University of Huddersfield

Multiple processes in graph-based reasoning by
Multiple processes in graph-based reasoningMultiple processes in graph-based reasoning
Multiple processes in graph-based reasoningUniversity of Huddersfield
106 views11 slides
Modelling alternative strategies for mental rotation by
Modelling alternative strategies for mental rotationModelling alternative strategies for mental rotation
Modelling alternative strategies for mental rotationUniversity of Huddersfield
103 views27 slides
Robert Gordon talk, 21 March 2018 by
Robert Gordon talk, 21 March 2018Robert Gordon talk, 21 March 2018
Robert Gordon talk, 21 March 2018University of Huddersfield
103 views26 slides
EWIC talk - 07 June, 2018 by
EWIC talk - 07 June, 2018EWIC talk - 07 June, 2018
EWIC talk - 07 June, 2018University of Huddersfield
96 views20 slides
Multiple representations and visual mental imagery in artificial cognitive sy... by
Multiple representations and visual mental imagery in artificial cognitive sy...Multiple representations and visual mental imagery in artificial cognitive sy...
Multiple representations and visual mental imagery in artificial cognitive sy...University of Huddersfield
157 views26 slides
Multiple representations talk, Middlesex University. February 23, 2018 by
Multiple representations talk, Middlesex University. February 23, 2018Multiple representations talk, Middlesex University. February 23, 2018
Multiple representations talk, Middlesex University. February 23, 2018University of Huddersfield
91 views27 slides

More from University of Huddersfield(12)

Multiple representations and visual mental imagery in artificial cognitive sy... by University of Huddersfield
Multiple representations and visual mental imagery in artificial cognitive sy...Multiple representations and visual mental imagery in artificial cognitive sy...
Multiple representations and visual mental imagery in artificial cognitive sy...
Machine Learning, Artificial General Intelligence, and Robots with Human Minds by University of Huddersfield
Machine Learning, Artificial General Intelligence, and Robots with Human MindsMachine Learning, Artificial General Intelligence, and Robots with Human Minds
Machine Learning, Artificial General Intelligence, and Robots with Human Minds
Graph comprehension model talk, Birkbeck and Toulouse Le Mirail, February 2012 by University of Huddersfield
Graph comprehension model talk, Birkbeck and Toulouse Le Mirail, February 2012Graph comprehension model talk, Birkbeck and Toulouse Le Mirail, February 2012
Graph comprehension model talk, Birkbeck and Toulouse Le Mirail, February 2012
Diagrammatic Cognition: Discovery and Design workshop, Humboldt University, B... by University of Huddersfield
Diagrammatic Cognition: Discovery and Design workshop, Humboldt University, B...Diagrammatic Cognition: Discovery and Design workshop, Humboldt University, B...
Diagrammatic Cognition: Discovery and Design workshop, Humboldt University, B...
A cognitive architecture-based modelling approach to understanding biases in ... by University of Huddersfield
A cognitive architecture-based modelling approach to understanding biases in ...A cognitive architecture-based modelling approach to understanding biases in ...
A cognitive architecture-based modelling approach to understanding biases in ...

Recently uploaded

Synthesis and Characterization of Magnetite-Magnesium Sulphate-Sodium Dodecyl... by
Synthesis and Characterization of Magnetite-Magnesium Sulphate-Sodium Dodecyl...Synthesis and Characterization of Magnetite-Magnesium Sulphate-Sodium Dodecyl...
Synthesis and Characterization of Magnetite-Magnesium Sulphate-Sodium Dodecyl...GIFT KIISI NKIN
17 views31 slides
Distinct distributions of elliptical and disk galaxies across the Local Super... by
Distinct distributions of elliptical and disk galaxies across the Local Super...Distinct distributions of elliptical and disk galaxies across the Local Super...
Distinct distributions of elliptical and disk galaxies across the Local Super...Sérgio Sacani
30 views12 slides
himalay baruah acid fast staining.pptx by
himalay baruah acid fast staining.pptxhimalay baruah acid fast staining.pptx
himalay baruah acid fast staining.pptxHimalayBaruah
5 views16 slides
Batrachospermum.pptx by
Batrachospermum.pptxBatrachospermum.pptx
Batrachospermum.pptxnisarahmad632316
34 views37 slides
Pollination By Nagapradheesh.M.pptx by
Pollination By Nagapradheesh.M.pptxPollination By Nagapradheesh.M.pptx
Pollination By Nagapradheesh.M.pptxMNAGAPRADHEESH
15 views9 slides
Workshop Chemical Robotics ChemAI 231116.pptx by
Workshop Chemical Robotics ChemAI 231116.pptxWorkshop Chemical Robotics ChemAI 231116.pptx
Workshop Chemical Robotics ChemAI 231116.pptxMarco Tibaldi
95 views41 slides

Recently uploaded(20)

Synthesis and Characterization of Magnetite-Magnesium Sulphate-Sodium Dodecyl... by GIFT KIISI NKIN
Synthesis and Characterization of Magnetite-Magnesium Sulphate-Sodium Dodecyl...Synthesis and Characterization of Magnetite-Magnesium Sulphate-Sodium Dodecyl...
Synthesis and Characterization of Magnetite-Magnesium Sulphate-Sodium Dodecyl...
GIFT KIISI NKIN17 views
Distinct distributions of elliptical and disk galaxies across the Local Super... by Sérgio Sacani
Distinct distributions of elliptical and disk galaxies across the Local Super...Distinct distributions of elliptical and disk galaxies across the Local Super...
Distinct distributions of elliptical and disk galaxies across the Local Super...
Sérgio Sacani30 views
himalay baruah acid fast staining.pptx by HimalayBaruah
himalay baruah acid fast staining.pptxhimalay baruah acid fast staining.pptx
himalay baruah acid fast staining.pptx
HimalayBaruah5 views
Pollination By Nagapradheesh.M.pptx by MNAGAPRADHEESH
Pollination By Nagapradheesh.M.pptxPollination By Nagapradheesh.M.pptx
Pollination By Nagapradheesh.M.pptx
MNAGAPRADHEESH15 views
Workshop Chemical Robotics ChemAI 231116.pptx by Marco Tibaldi
Workshop Chemical Robotics ChemAI 231116.pptxWorkshop Chemical Robotics ChemAI 231116.pptx
Workshop Chemical Robotics ChemAI 231116.pptx
Marco Tibaldi95 views
Experimental animal Guinea pigs.pptx by Mansee Arya
Experimental animal Guinea pigs.pptxExperimental animal Guinea pigs.pptx
Experimental animal Guinea pigs.pptx
Mansee Arya13 views
PRINCIPLES-OF ASSESSMENT by rbalmagro
PRINCIPLES-OF ASSESSMENTPRINCIPLES-OF ASSESSMENT
PRINCIPLES-OF ASSESSMENT
rbalmagro11 views
A Ready-to-Analyze High-Plex Spatial Signature Development Workflow for Cance... by InsideScientific
A Ready-to-Analyze High-Plex Spatial Signature Development Workflow for Cance...A Ready-to-Analyze High-Plex Spatial Signature Development Workflow for Cance...
A Ready-to-Analyze High-Plex Spatial Signature Development Workflow for Cance...
InsideScientific43 views
CSF -SHEEBA.D presentation.pptx by SheebaD7
CSF -SHEEBA.D presentation.pptxCSF -SHEEBA.D presentation.pptx
CSF -SHEEBA.D presentation.pptx
SheebaD711 views
ENTOMOLOGY PPT ON BOMBYCIDAE AND SATURNIIDAE.pptx by MN
ENTOMOLOGY PPT ON BOMBYCIDAE AND SATURNIIDAE.pptxENTOMOLOGY PPT ON BOMBYCIDAE AND SATURNIIDAE.pptx
ENTOMOLOGY PPT ON BOMBYCIDAE AND SATURNIIDAE.pptx
MN6 views
Open Access Publishing in Astrophysics by Peter Coles
Open Access Publishing in AstrophysicsOpen Access Publishing in Astrophysics
Open Access Publishing in Astrophysics
Peter Coles725 views
Light Pollution for LVIS students by CWBarthlmew
Light Pollution for LVIS studentsLight Pollution for LVIS students
Light Pollution for LVIS students
CWBarthlmew5 views
별헤는 사람들 2023년 12월호 전명원 교수 자료 by sciencepeople
별헤는 사람들 2023년 12월호 전명원 교수 자료별헤는 사람들 2023년 12월호 전명원 교수 자료
별헤는 사람들 2023년 12월호 전명원 교수 자료
sciencepeople31 views
Connecting communities to promote FAIR resources: perspectives from an RDA / ... by Allyson Lister
Connecting communities to promote FAIR resources: perspectives from an RDA / ...Connecting communities to promote FAIR resources: perspectives from an RDA / ...
Connecting communities to promote FAIR resources: perspectives from an RDA / ...
Allyson Lister34 views

Two methods for optimising cognitive model parameters

  • 1. Two methods for optimising cognitive model parameters David Peebles — 9th August 2016
  • 2. The problem Searching parameter spaces can be laborious and time consuming – particularly if done iteratively by hand It’s difficult to know if you have an optimal solution Worse when model has several interacting parameters, is non-differentiable, non-continuous, non-linear, stochastic, or has many local optima. Guilt and shame < boredom and frustration.
  • 3. One solution, two methods Use a population of models to explore the parameter space. Differential evolution (DE) Genetic algorithm for multidimensional real-valued functions. Ideal for optimising models with relatively few parameters or short run times on a single computer. High-throughput computing with HTCondor Open source software for managing job scheduling on computer clusters or cycle scavenging idle computers. Ideal for larger, more complex models or when simulating the behaviour of many participants. Used by many universities and easy to set up on local networks (or so I’m told).
  • 4. Differential evolution An evolutionary strategy for real numbers used for multidimensional numerical optimisation [2, 3]. Attractions: - Simplicity of the algorithm - Only three control parameters - Fast, accurate, and robust performance - Wide applicability Control parameters: NP the population size F a scale factor applied to the mutation process Cr a constant that regulates the crossover process
  • 5. The DE algorithm in a nutshell DE applies repeated cycles of mutation, recombination, and selection on an initial, randomly generated population of vectors to create a single vector that produces the best solution to a problem. RecombinationInitialisation Mutation Selection
  • 6. Initialisation RecombinationInitialisation Mutation Selection Create a population of real-valued vectors – one dimension for each of the model parameters to be optimised. Initialise vectors with uniformly distributed random numbers within maximum and minimum bounds set for each dimension. (:rt −5.0 −0.01) (:lf 0.1 1.5) (:ans 0.1 0.8) To create the next population of vectors, each vector i in the current population is selected in sequence, designated as the target vector, and subjected to a competitive process. . .
  • 7. Mutation RecombinationInitialisation Mutation Selection Mutation is the weighted difference between two vectors in the current population. A mutated donor vector is created by randomly selecting three unique vectors, j, k and l from the population and adding the difference between j and k (scaled by the F parameter) to l. }= j k l }= Donor vector Sum (weighted by F) Difference This ensures that differences in the scale and sensitivity of different vector parameters are taken into account and that the search space is explored equally on all dimensions.
  • 8. Recombination RecombinationInitialisation Mutation Selection Cross the donor vector with the target vector to create the trial vector to allow successful solutions from the previous generation to be incorporated into the trial vector. }= Trial vector Crossover Donor vector vector Target Achieved by series of Bernoulli trials which determine for each dimension which parent will donate its value. Moderated by the crossover rate parameter Cr (0 ≤ Cr ≤ 1.).
  • 9. Selection RecombinationInitialisation Mutation Selection Run the model with the parameter values from the trial vector. If fitnesstrial ≥ fitnesstarget replace target vector with trial vector in next generation, else retain target vector. Repeat for each vector in the current population until the next population is created and the evolutionary process continues for a user-defined number of cycles. Retain vector with highest fitness in each population. Winning vector in the final population is considered the best solution to the problem.
  • 10. Paired Associate model example 1. Load (a) ACT-R, (b) DE code file, and (c) the fan effect model. 2. Modify the output function to just return one correlation. 3. Define a function to run the task suppressing the model output and any warnings resulting from poor parameter choices. 4. Specify the three parameters to adjust with their ranges and use the default DE configuration. (defun output-data (data n) (let ((probability (mapcar (lambda (x) (/ (first x) n)) data)) (latency (mapcar (lambda (x) (/ (or (second x) 0) n)) data))) ;;(correlation latency *paired-latencies*) (correlation probability *paired-probability*))) (defun run-paired-with-no-output () (let ((*standard-output* (make-string-output-stream))) (suppress-warnings (paired-experiment 100)))) (optim ’run-paired-with-no-output ’((:rt -5.0 -0.01) (:lf 0.1 1.5) (:ans 0.1 0.8)))
  • 11. HTCondor DE useful for models with relatively few parameters or short run times on a single computer. DE too slow for large, complex models or when simulating the behaviour of many participants. HTCondor Pool HPC Resources Cloud Resources HTCondor Job Manager Users Run a population of models over a network using HTCondor. HTCondor – open source, cross-platform software system for managing and scheduling tasks over computer networks [1].
  • 12. Running ACT-R models on HTCondor 1. Modify your model to allocate random values to parameters. 2. Create a submit description file specifying job details (executable, platform, the model files, commands etc.). requirements =(OpSys == “WINNT61” && Arch == “INTEL”) (OpSys == “WINDOWS” && Arch == “INTEL”) (OpSys == “WINDOWS” && Arch == “X86 64”)) executable = actr-s-64.exe arguments = “-l ’paired.lisp’ -e ’(collect-data 20)’ -e ’(quit)’ ” transfer executable = ALWAYS transfer input files = paired.lisp output = out.stdout.$(Cluster).$(Process) error = out.err.$(Cluster).$(Process) log = out.clog.$(Cluster).$(Process) queue 100
  • 13. Random number generation A potential problem arises with how the pseudorandom number generator (PRNG) seed is set. Each model instance must be initialised with a unique seed. Many Lisps (and the ACT-R random module) use the computer’s clock to generate seed. Problem if different instances are given the same clock time. To avoid this, use an ACT-R PRNG that doesn’t using the system clock, uses a random number generated from CCL (the Lisp used to create the MS Windows standalone ACT-R). This method is employed in a new ACT-R create-random-module which is loaded prior to loading the model file.
  • 14. Why not use MindModeling@Home? NOT a toothbrush thing MAYBE a lack of knowledge thing MAYBE a World Community Grid thing (Zika, cancer cures). Some models are small/trivial Speed, convenience and flexibility
  • 15. Try them out Code and instructions for using both methods using the paired associate model from tutorial unit 4. DE: https://github.com/peebz/actr-paired-de HTCondor: https://github.com/peebz/actr-paired-htc Thanks as always to Dan Bothell for his patience and advice.
  • 16. References I M. J. Litzkow, M. Livny, and M. W. Mutka. ‘Condor—A Hunter of Idle Workstations’. In: Proceedings of the 8th International Conference on Distributed Computing Systems. IEEE. June 1988, pp. 104–111. R. Storn and K. Price. Differential evolution: A simple and efficient adaptive scheme for global optimization over continuous spaces. Tech. rep. TR-95-012. Berkeley, CA: ICSI Berkeley, 1995. R. Storn and K. Price. ‘Differential evolution: A simple and efficient heuristic for global optimization over continuous spaces’. In: Journal of global optimization 11.4 (1997), pp. 341–359.