SlideShare a Scribd company logo
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.

More Related Content

What's hot

ML_in_QM_JC_02-10-18
ML_in_QM_JC_02-10-18ML_in_QM_JC_02-10-18
ML_in_QM_JC_02-10-18
Suzanne Wallace
 
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로 모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로
r-kor
 
Random forest using apache mahout
Random forest using apache mahoutRandom forest using apache mahout
Random forest using apache mahout
Gaurav Kasliwal
 
Visualizing the model selection process
Visualizing the model selection processVisualizing the model selection process
Visualizing the model selection process
Rebecca Bilbro
 
An Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social SciencesAn Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social Sciencesfsmart01
 
Lightning talk at MLConf NYC 2015
Lightning talk at MLConf NYC 2015Lightning talk at MLConf NYC 2015
Lightning talk at MLConf NYC 2015
Mohitdeep Singh
 
Object Detection with Deep Learning - Xavier Giro-i-Nieto - UPC School Barcel...
Object Detection with Deep Learning - Xavier Giro-i-Nieto - UPC School Barcel...Object Detection with Deep Learning - Xavier Giro-i-Nieto - UPC School Barcel...
Object Detection with Deep Learning - Xavier Giro-i-Nieto - UPC School Barcel...
Universitat Politècnica de Catalunya
 
Reading group nfm - 20170312
Reading group  nfm - 20170312Reading group  nfm - 20170312
Reading group nfm - 20170312
Shuai Zhang
 
Machine Learning - Neural Networks - Perceptron
Machine Learning - Neural Networks - PerceptronMachine Learning - Neural Networks - Perceptron
Machine Learning - Neural Networks - Perceptron
Andrew Ferlitsch
 
The ABC of Implementing Supervised Machine Learning with Python.pptx
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 Shrestha
 
Automated Machine Learning (Auto ML)
Automated Machine Learning (Auto ML)Automated Machine Learning (Auto ML)
Automated Machine Learning (Auto ML)
Hayim Makabee
 
Yellowbrick: Steering machine learning with visual transformers
Yellowbrick: Steering machine learning with visual transformersYellowbrick: Steering machine learning with visual transformers
Yellowbrick: Steering machine learning with visual transformers
Rebecca Bilbro
 
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)
Introduction to Tensor Flow for Optical Character Recognition (OCR)
Vincenzo Santopietro
 
Polymer Brush Data Processor
Polymer Brush Data ProcessorPolymer Brush Data Processor
Polymer Brush Data ProcessorCory Bethrant
 
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 - Movie Genre Prediction from Plot Summaries by Comparing Various C...
IRJET Journal
 
Computing and Data Analysis for Environmental Applications
Computing and Data Analysis for Environmental ApplicationsComputing and Data Analysis for Environmental Applications
Computing and Data Analysis for Environmental Applications
Statistics Assignment Help
 
hands on machine learning Chapter 6&7 decision tree, ensemble and random forest
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 Jeong
 
Tensor flow
Tensor flowTensor flow
Tensor flow
Nikhil Krishna Nair
 
Learning machine learning with Yellowbrick
Learning machine learning with YellowbrickLearning machine learning with Yellowbrick
Learning machine learning with Yellowbrick
Rebecca Bilbro
 
Efficient Data Stream Classification via Probabilistic Adaptive Windows
Efficient Data Stream Classification via Probabilistic Adaptive WindowsEfficient Data Stream Classification via Probabilistic Adaptive Windows
Efficient Data Stream Classification via Probabilistic Adaptive WindowsAlbert Bifet
 

What's hot (20)

ML_in_QM_JC_02-10-18
ML_in_QM_JC_02-10-18ML_in_QM_JC_02-10-18
ML_in_QM_JC_02-10-18
 
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로 모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로
모듈형 패키지를 활용한 나만의 기계학습 모형 만들기 - 회귀나무모형을 중심으로
 
Random forest using apache mahout
Random forest using apache mahoutRandom forest using apache mahout
Random forest using apache mahout
 
Visualizing the model selection process
Visualizing the model selection processVisualizing the model selection process
Visualizing the model selection process
 
An Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social SciencesAn Introduction to Simulation in the Social Sciences
An Introduction to Simulation in the Social Sciences
 
Lightning talk at MLConf NYC 2015
Lightning talk at MLConf NYC 2015Lightning talk at MLConf NYC 2015
Lightning talk at MLConf NYC 2015
 
Object Detection with Deep Learning - Xavier Giro-i-Nieto - UPC School Barcel...
Object Detection with Deep Learning - Xavier Giro-i-Nieto - UPC School Barcel...Object Detection with Deep Learning - Xavier Giro-i-Nieto - UPC School Barcel...
Object Detection with Deep Learning - Xavier Giro-i-Nieto - UPC School Barcel...
 
Reading group nfm - 20170312
Reading group  nfm - 20170312Reading group  nfm - 20170312
Reading group nfm - 20170312
 
Machine Learning - Neural Networks - Perceptron
Machine Learning - Neural Networks - PerceptronMachine Learning - Neural Networks - Perceptron
Machine Learning - Neural Networks - Perceptron
 
The ABC of Implementing Supervised Machine Learning with Python.pptx
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
 
Automated Machine Learning (Auto ML)
Automated Machine Learning (Auto ML)Automated Machine Learning (Auto ML)
Automated Machine Learning (Auto ML)
 
Yellowbrick: Steering machine learning with visual transformers
Yellowbrick: Steering machine learning with visual transformersYellowbrick: Steering machine learning with visual transformers
Yellowbrick: Steering machine learning with visual transformers
 
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)
Introduction to Tensor Flow for Optical Character Recognition (OCR)
 
Polymer Brush Data Processor
Polymer Brush Data ProcessorPolymer Brush Data Processor
Polymer Brush Data Processor
 
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 - Movie Genre Prediction from Plot Summaries by Comparing Various C...
 
Computing and Data Analysis for Environmental Applications
Computing and Data Analysis for Environmental ApplicationsComputing and Data Analysis for Environmental Applications
Computing and Data Analysis for Environmental Applications
 
hands on machine learning Chapter 6&7 decision tree, ensemble and random forest
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
 
Tensor flow
Tensor flowTensor flow
Tensor flow
 
Learning machine learning with Yellowbrick
Learning machine learning with YellowbrickLearning machine learning with Yellowbrick
Learning machine learning with Yellowbrick
 
Efficient Data Stream Classification via Probabilistic Adaptive Windows
Efficient Data Stream Classification via Probabilistic Adaptive WindowsEfficient Data Stream Classification via Probabilistic Adaptive Windows
Efficient Data Stream Classification via Probabilistic Adaptive Windows
 

Similar to Two methods for optimising cognitive model parameters

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...
Accounting for uncertainty in species delineation during the analysis of envi...
methodsecolevol
 
Approaches to online quantile estimation
Approaches to online quantile estimationApproaches to online quantile estimation
Approaches to online quantile estimation
Data Con LA
 
Heuristic design of experiments w meta gradient search
Heuristic design of experiments w meta gradient searchHeuristic design of experiments w meta gradient search
Heuristic design of experiments w meta gradient search
Greg Makowski
 
maxbox starter60 machine learning
maxbox starter60 machine learningmaxbox starter60 machine learning
maxbox starter60 machine learning
Max Kleiner
 
Computational Intelligence Assisted Engineering Design Optimization (using MA...
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
 
A Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in ParallelA Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in Parallel
Jenny Liu
 
HW2-1_05.doc
HW2-1_05.docHW2-1_05.doc
HW2-1_05.docbutest
 
Machine Learning Guide maXbox Starter62
Machine Learning Guide maXbox Starter62Machine Learning Guide maXbox Starter62
Machine Learning Guide maXbox Starter62
Max Kleiner
 
Genetic Algorithms
Genetic AlgorithmsGenetic Algorithms
Genetic Algorithms
Oğuzhan TAŞ Akademi
 
All projects
All projectsAll projects
All projects
Karishma Jain
 
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)
AI optimizing HPC simulations (presentation from 6th EULAG Workshop)
byteLAKE
 
A TALE of DATA PATTERN DISCOVERY IN PARALLEL
A TALE of DATA PATTERN DISCOVERY IN PARALLELA TALE of DATA PATTERN DISCOVERY IN PARALLEL
A TALE of DATA PATTERN DISCOVERY IN PARALLEL
Jenny Liu
 
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...
Ernest: Efficient Performance Prediction for Advanced Analytics on Apache Spa...
Spark Summit
 
Machine Learning Algorithms (Part 1)
Machine Learning Algorithms (Part 1)Machine Learning Algorithms (Part 1)
Machine Learning Algorithms (Part 1)
Zihui Li
 
An Adaptive Masker for the Differential Evolution Algorithm
An Adaptive Masker for the Differential Evolution AlgorithmAn Adaptive Masker for the Differential Evolution Algorithm
An Adaptive Masker for the Differential Evolution Algorithm
IOSR Journals
 
AHF_IDETC_2011_Jie
AHF_IDETC_2011_JieAHF_IDETC_2011_Jie
AHF_IDETC_2011_Jie
MDO_Lab
 
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...
Sparse Support Faces - Battista Biggio - Int'l Conf. Biometrics, ICB 2015, Ph...
Pluribus One
 
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automata
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
ijait
 
MEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational ExperimentsMEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational ExperimentsGIScRG
 
Week08.pdf
Week08.pdfWeek08.pdf

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

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...
Accounting for uncertainty in species delineation during the analysis of envi...
 
Approaches to online quantile estimation
Approaches to online quantile estimationApproaches to online quantile estimation
Approaches to online quantile estimation
 
Heuristic design of experiments w meta gradient search
Heuristic design of experiments w meta gradient searchHeuristic design of experiments w meta gradient search
Heuristic design of experiments w meta gradient search
 
maxbox starter60 machine learning
maxbox starter60 machine learningmaxbox starter60 machine learning
maxbox starter60 machine learning
 
Computational Intelligence Assisted Engineering Design Optimization (using MA...
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
A Tale of Data Pattern Discovery in ParallelA Tale of Data Pattern Discovery in Parallel
A Tale of Data Pattern Discovery in Parallel
 
HW2-1_05.doc
HW2-1_05.docHW2-1_05.doc
HW2-1_05.doc
 
Machine Learning Guide maXbox Starter62
Machine Learning Guide maXbox Starter62Machine Learning Guide maXbox Starter62
Machine Learning Guide maXbox Starter62
 
Genetic Algorithms
Genetic AlgorithmsGenetic Algorithms
Genetic Algorithms
 
All projects
All projectsAll projects
All projects
 
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)
AI optimizing HPC simulations (presentation from 6th EULAG Workshop)
 
A TALE of DATA PATTERN DISCOVERY IN PARALLEL
A TALE of DATA PATTERN DISCOVERY IN PARALLELA TALE of DATA PATTERN DISCOVERY IN PARALLEL
A TALE of DATA PATTERN DISCOVERY IN PARALLEL
 
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...
Ernest: Efficient Performance Prediction for Advanced Analytics on Apache Spa...
 
Machine Learning Algorithms (Part 1)
Machine Learning Algorithms (Part 1)Machine Learning Algorithms (Part 1)
Machine Learning Algorithms (Part 1)
 
An Adaptive Masker for the Differential Evolution Algorithm
An Adaptive Masker for the Differential Evolution AlgorithmAn Adaptive Masker for the Differential Evolution Algorithm
An Adaptive Masker for the Differential Evolution Algorithm
 
AHF_IDETC_2011_Jie
AHF_IDETC_2011_JieAHF_IDETC_2011_Jie
AHF_IDETC_2011_Jie
 
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...
Sparse Support Faces - Battista Biggio - Int'l Conf. Biometrics, ICB 2015, Ph...
 
Cost Optimized Design Technique for Pseudo-Random Numbers in Cellular Automata
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
 
MEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational ExperimentsMEME – An Integrated Tool For Advanced Computational Experiments
MEME – An Integrated Tool For Advanced Computational Experiments
 
Week08.pdf
Week08.pdfWeek08.pdf
Week08.pdf
 

More from University of Huddersfield

Multiple processes in graph-based reasoning
Multiple processes in graph-based reasoningMultiple processes in graph-based reasoning
Multiple processes in graph-based reasoning
University of Huddersfield
 
Modelling alternative strategies for mental rotation
Modelling alternative strategies for mental rotationModelling alternative strategies for mental rotation
Modelling alternative strategies for mental rotation
University of Huddersfield
 
Robert Gordon talk, 21 March 2018
Robert Gordon talk, 21 March 2018Robert Gordon talk, 21 March 2018
Robert Gordon talk, 21 March 2018
University of Huddersfield
 
EWIC talk - 07 June, 2018
EWIC talk - 07 June, 2018EWIC talk - 07 June, 2018
EWIC talk - 07 June, 2018
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...
Multiple representations and visual mental imagery in artificial cognitive sy...
University of Huddersfield
 
Multiple representations talk, Middlesex University. February 23, 2018
Multiple representations talk, Middlesex University. February 23, 2018Multiple representations talk, Middlesex University. February 23, 2018
Multiple representations talk, Middlesex University. February 23, 2018
University of Huddersfield
 
Machine Learning, Artificial General Intelligence, and Robots with Human Minds
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
University of Huddersfield
 
Cardiff map-based orientation talk
Cardiff map-based orientation talkCardiff map-based orientation talk
Cardiff map-based orientation talk
University of Huddersfield
 
Graph comprehension model talk, Birkbeck and Toulouse Le Mirail, February 2012
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 2012University 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...
Diagrammatic Cognition: Discovery and Design workshop, Humboldt University, B...
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 ...
A cognitive architecture-based modelling approach to understanding biases in ...
University of Huddersfield
 
DECISIVe workshop introduction
DECISIVe workshop introductionDECISIVe workshop introduction
DECISIVe workshop introduction
University of Huddersfield
 

More from University of Huddersfield (12)

Multiple processes in graph-based reasoning
Multiple processes in graph-based reasoningMultiple processes in graph-based reasoning
Multiple processes in graph-based reasoning
 
Modelling alternative strategies for mental rotation
Modelling alternative strategies for mental rotationModelling alternative strategies for mental rotation
Modelling alternative strategies for mental rotation
 
Robert Gordon talk, 21 March 2018
Robert Gordon talk, 21 March 2018Robert Gordon talk, 21 March 2018
Robert Gordon talk, 21 March 2018
 
EWIC talk - 07 June, 2018
EWIC talk - 07 June, 2018EWIC talk - 07 June, 2018
EWIC talk - 07 June, 2018
 
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...
Multiple representations and visual mental imagery in artificial cognitive sy...
 
Multiple representations talk, Middlesex University. February 23, 2018
Multiple representations talk, Middlesex University. February 23, 2018Multiple representations talk, Middlesex University. February 23, 2018
Multiple representations talk, Middlesex University. February 23, 2018
 
Machine Learning, Artificial General Intelligence, and Robots with Human Minds
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
 
Cardiff map-based orientation talk
Cardiff map-based orientation talkCardiff map-based orientation talk
Cardiff map-based orientation talk
 
Graph comprehension model talk, Birkbeck and Toulouse Le Mirail, February 2012
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...
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 ...
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 ...
 
DECISIVe workshop introduction
DECISIVe workshop introductionDECISIVe workshop introduction
DECISIVe workshop introduction
 

Recently uploaded

The ASGCT Annual Meeting was packed with exciting progress in the field advan...
The ASGCT Annual Meeting was packed with exciting progress in the field advan...The ASGCT Annual Meeting was packed with exciting progress in the field advan...
The ASGCT Annual Meeting was packed with exciting progress in the field advan...
Health Advances
 
In silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptxIn silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptx
AlaminAfendy1
 
insect taxonomy importance systematics and classification
insect taxonomy importance systematics and classificationinsect taxonomy importance systematics and classification
insect taxonomy importance systematics and classification
anitaento25
 
Lab report on liquid viscosity of glycerin
Lab report on liquid viscosity of glycerinLab report on liquid viscosity of glycerin
Lab report on liquid viscosity of glycerin
ossaicprecious19
 
Comparative structure of adrenal gland in vertebrates
Comparative structure of adrenal gland in vertebratesComparative structure of adrenal gland in vertebrates
Comparative structure of adrenal gland in vertebrates
sachin783648
 
Body fluids_tonicity_dehydration_hypovolemia_hypervolemia.pptx
Body fluids_tonicity_dehydration_hypovolemia_hypervolemia.pptxBody fluids_tonicity_dehydration_hypovolemia_hypervolemia.pptx
Body fluids_tonicity_dehydration_hypovolemia_hypervolemia.pptx
muralinath2
 
insect morphology and physiology of insect
insect morphology and physiology of insectinsect morphology and physiology of insect
insect morphology and physiology of insect
anitaento25
 
erythropoiesis-I_mechanism& clinical significance.pptx
erythropoiesis-I_mechanism& clinical significance.pptxerythropoiesis-I_mechanism& clinical significance.pptx
erythropoiesis-I_mechanism& clinical significance.pptx
muralinath2
 
PRESENTATION ABOUT PRINCIPLE OF COSMATIC EVALUATION
PRESENTATION ABOUT PRINCIPLE OF COSMATIC EVALUATIONPRESENTATION ABOUT PRINCIPLE OF COSMATIC EVALUATION
PRESENTATION ABOUT PRINCIPLE OF COSMATIC EVALUATION
ChetanK57
 
general properties of oerganologametal.ppt
general properties of oerganologametal.pptgeneral properties of oerganologametal.ppt
general properties of oerganologametal.ppt
IqrimaNabilatulhusni
 
Nutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technologyNutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technology
Lokesh Patil
 
Anemia_ different types_causes_ conditions
Anemia_ different types_causes_ conditionsAnemia_ different types_causes_ conditions
Anemia_ different types_causes_ conditions
muralinath2
 
GBSN- Microbiology (Lab 3) Gram Staining
GBSN- Microbiology (Lab 3) Gram StainingGBSN- Microbiology (Lab 3) Gram Staining
GBSN- Microbiology (Lab 3) Gram Staining
Areesha Ahmad
 
Hemoglobin metabolism_pathophysiology.pptx
Hemoglobin metabolism_pathophysiology.pptxHemoglobin metabolism_pathophysiology.pptx
Hemoglobin metabolism_pathophysiology.pptx
muralinath2
 
GBSN - Biochemistry (Unit 5) Chemistry of Lipids
GBSN - Biochemistry (Unit 5) Chemistry of LipidsGBSN - Biochemistry (Unit 5) Chemistry of Lipids
GBSN - Biochemistry (Unit 5) Chemistry of Lipids
Areesha Ahmad
 
Predicting property prices with machine learning algorithms.pdf
Predicting property prices with machine learning algorithms.pdfPredicting property prices with machine learning algorithms.pdf
Predicting property prices with machine learning algorithms.pdf
binhminhvu04
 
plant biotechnology Lecture note ppt.pptx
plant biotechnology Lecture note ppt.pptxplant biotechnology Lecture note ppt.pptx
plant biotechnology Lecture note ppt.pptx
yusufzako14
 
platelets_clotting_biogenesis.clot retractionpptx
platelets_clotting_biogenesis.clot retractionpptxplatelets_clotting_biogenesis.clot retractionpptx
platelets_clotting_biogenesis.clot retractionpptx
muralinath2
 
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
Sérgio Sacani
 
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
muralinath2
 

Recently uploaded (20)

The ASGCT Annual Meeting was packed with exciting progress in the field advan...
The ASGCT Annual Meeting was packed with exciting progress in the field advan...The ASGCT Annual Meeting was packed with exciting progress in the field advan...
The ASGCT Annual Meeting was packed with exciting progress in the field advan...
 
In silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptxIn silico drugs analogue design: novobiocin analogues.pptx
In silico drugs analogue design: novobiocin analogues.pptx
 
insect taxonomy importance systematics and classification
insect taxonomy importance systematics and classificationinsect taxonomy importance systematics and classification
insect taxonomy importance systematics and classification
 
Lab report on liquid viscosity of glycerin
Lab report on liquid viscosity of glycerinLab report on liquid viscosity of glycerin
Lab report on liquid viscosity of glycerin
 
Comparative structure of adrenal gland in vertebrates
Comparative structure of adrenal gland in vertebratesComparative structure of adrenal gland in vertebrates
Comparative structure of adrenal gland in vertebrates
 
Body fluids_tonicity_dehydration_hypovolemia_hypervolemia.pptx
Body fluids_tonicity_dehydration_hypovolemia_hypervolemia.pptxBody fluids_tonicity_dehydration_hypovolemia_hypervolemia.pptx
Body fluids_tonicity_dehydration_hypovolemia_hypervolemia.pptx
 
insect morphology and physiology of insect
insect morphology and physiology of insectinsect morphology and physiology of insect
insect morphology and physiology of insect
 
erythropoiesis-I_mechanism& clinical significance.pptx
erythropoiesis-I_mechanism& clinical significance.pptxerythropoiesis-I_mechanism& clinical significance.pptx
erythropoiesis-I_mechanism& clinical significance.pptx
 
PRESENTATION ABOUT PRINCIPLE OF COSMATIC EVALUATION
PRESENTATION ABOUT PRINCIPLE OF COSMATIC EVALUATIONPRESENTATION ABOUT PRINCIPLE OF COSMATIC EVALUATION
PRESENTATION ABOUT PRINCIPLE OF COSMATIC EVALUATION
 
general properties of oerganologametal.ppt
general properties of oerganologametal.pptgeneral properties of oerganologametal.ppt
general properties of oerganologametal.ppt
 
Nutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technologyNutraceutical market, scope and growth: Herbal drug technology
Nutraceutical market, scope and growth: Herbal drug technology
 
Anemia_ different types_causes_ conditions
Anemia_ different types_causes_ conditionsAnemia_ different types_causes_ conditions
Anemia_ different types_causes_ conditions
 
GBSN- Microbiology (Lab 3) Gram Staining
GBSN- Microbiology (Lab 3) Gram StainingGBSN- Microbiology (Lab 3) Gram Staining
GBSN- Microbiology (Lab 3) Gram Staining
 
Hemoglobin metabolism_pathophysiology.pptx
Hemoglobin metabolism_pathophysiology.pptxHemoglobin metabolism_pathophysiology.pptx
Hemoglobin metabolism_pathophysiology.pptx
 
GBSN - Biochemistry (Unit 5) Chemistry of Lipids
GBSN - Biochemistry (Unit 5) Chemistry of LipidsGBSN - Biochemistry (Unit 5) Chemistry of Lipids
GBSN - Biochemistry (Unit 5) Chemistry of Lipids
 
Predicting property prices with machine learning algorithms.pdf
Predicting property prices with machine learning algorithms.pdfPredicting property prices with machine learning algorithms.pdf
Predicting property prices with machine learning algorithms.pdf
 
plant biotechnology Lecture note ppt.pptx
plant biotechnology Lecture note ppt.pptxplant biotechnology Lecture note ppt.pptx
plant biotechnology Lecture note ppt.pptx
 
platelets_clotting_biogenesis.clot retractionpptx
platelets_clotting_biogenesis.clot retractionpptxplatelets_clotting_biogenesis.clot retractionpptx
platelets_clotting_biogenesis.clot retractionpptx
 
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
Observation of Io’s Resurfacing via Plume Deposition Using Ground-based Adapt...
 
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
Circulatory system_ Laplace law. Ohms law.reynaults law,baro-chemo-receptors-...
 

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.