A quick post to point you towards a great website with a lot of really cool content (if you’re into that kind of thing, which if you’re reading this blog, then I assume you probably are… anyway, I digress; I apologise, it was my lab’s Christmas party last night and I’m in a somewhat rambling mood. Anyway, back to the point).
So, the website is called cogsci.nl, and is run by a post-doc at the University of Aix-Marseille called Sebastiaan Mathôt. It’s notable in that it’s the homepage of OpenSesame - a very nice-looking, Python-based graphical experiment builder that I’ve mentioned before on these very pages. There’s a lot of other cool stuff on the site though, including more software (featuring a really cool online tool for instantly creating Gabor patch stimuli), a list of links to stimulus sets, and a selection of really-cool optical illusions. Really worth spending 20 minutes of your time poking around a little and seeing what’s there.
I’ll leave you with a video of Sebastiaan demonstrating an experimental program, written in his OpenSesame system, running on a Google Nexus 7 Tablet (using Ubuntu linux as an OS). The future! It’s here!
A brief post about a fantastically useful little utility – AutoHotKey. This is a small, free, very flexible and powerful program for Windows which has potentially unlimited usefulness. It allows the user to either a) define a string of mouse/keyboard inputs (i.e. macros) which can be triggered with a single key-press, or b) re-map a particular keyboard/mouse/whatever input to act as if it’s any other kind of input. All this can be achieved either with a fairly simple scripting language, or by the use of AutoScriptWriter – a means of ‘recording’ a sequence of inputs that can then be ‘played back’ at much faster rates.
I use it for some of my fMRI stimulus programs. The MRI scanner sends out a TTL-like pulse at the beginning of every functional volume acquisition (or ‘TR’) and this can be used to synchronise with external equipment – in fMRI it’s important to know exactly when your stimuli were presented (relative to the volume acquisition sequence) in order to generate an accurate statistical model. The pulse from the scanner goes into a little USB adapter doo-hickey, which is plugged into the computer running the stimulus program – the USB box simulates a joystick button-press every time it receives a scanner pulse. This works great, except that when I’m writing my programs in my office, I don’t have a joystick, and also sometimes I want to start my programs manually (for demo purposes, or whatever). The solution? I write all my programs to start with a left-mouse click, and run an AutoHotKey script on the stimulus-program computer in the scanner room which transforms the game-port input to a left-mouse-click. This is the script in its entirety:
Simple, huh? In this way, my programs can start either with a left-mouse-clickorwhen they receive the input from the scanner on the game-port, and I don’t have to change them at all when I move them from my office machine to the scanner-room computer. It works perfectly. There’s loads of good help, advice and sample scripts on the AHK website/forums – a quick search will usually bring up something at least somewhat-related to what you want to achieve.
It’s also possible to play a very mean prank on somebody by running a script on their computer re-mapping several (or even all) of their keyboard keys to other random keys, but the less said about that the better…
Mac users are out of luck with AutoHotKey I’m afraid – it’s Windows only. However the built-in Automator application in Mac OS X has a lot of the same macro-like functionality, and is pretty easy to use once you get the hang of it. For the input re-mapping side of things IronAHK looks like a good (and very powerful) free option, and KeyRemap4MacBook also looks good – less powerful, but a much more user-friendly interface.
Happy key-hacking! If you find a good use for AHK, then let me know in the comments. TTFN.
When I started this blog, one of the main reasons for doing so was to talk about how to program and run psychology experiments. I’ve made a couple of low-level forays into those areas in the past, but I’ve always intended to put up some reviews, handy hints, and maybe even some completed programs related to particular pieces of specialised experimental software.
Unfortunately, this post is not going to do that. I started aimlessly browsing a load of websites this morning looking at the options available for this kind of software, and quickly realised that a) I needed to do a lot more reading and work if I was going to write anything which could hope to be even moderately comprehensive, and b) that there are already some really rather good sites that already exist and can serve as an introduction to this sort of thing.
For instance, as a starting point, you could do a lot worse than this wikipedia page, which lists a bunch of the more well-known behavioural software packages and includes some helpful information about platforms, interface, and cost. This little snippet of a page on the Cambridge MRC-CBU website is also of interest, as it shows the results of a survey of researchers and what packages they use (quite old though; 2006).
Lastly, I urge you to check out this heroically comprehensive collection of information and links curated by Hans Strasburger, who works at the universities of München and Göttingen. There is an awful lot to digest on this web-page, but it’s packed full of solid-gold nuggets of greatness. It’s mostly skewed towards visual psychophysics-type experimentation, but there’s an awful lot of value here for any kind of psychology researcher.
At some point, I’ll do a ‘proper’ post (or more likely, series) on experimental software with reviews, examples etc., but these links should keep you busy enough until then.
I was a bit of a weird kid. While my school-mates were running around in the playground playing football and mindlessly inflicting minor injuries on each other I used to sit on a bench reading 1960s science fiction books.* One of my favourite authors at the time was Isaac Asimov, and I was particularly captivated by his Robot stories, and the character of Susan Calvin, with her neologistic job description of ‘robopsychologist’. What Asimov astutely recognised back in the 60s was that if artificial intelligence of even a relatively simple and tightly-bounded nature was ever to be created, its behaviour would be complex, often unpredictable, and even occasionally aberrant. Susan Calvin’s job description is therefore to interpret and understand robot behaviour, and to manage and study their interactions with humans.
50 years on from the publication of Asimov’s initial robot books (and coincidentally, roughly in the time period in which Asimov set his stories), robopsychology might just be beginning to emerge as a discipline. While the robots we are currently developing are clunky simpletons compared to Asimov’s capable, graceful, positronic-brained creations, the behaviour they exhibit is arguably starting to be at a level where some serious questions need to be asked and investigated. A Google Scholar search for the term ‘robopsychology‘ turns up 22 results, most of which are spurious, but three in particular stand out. The first two are reviews by Alexander and Elena Libin, published in 2004 (PDF) and 2005 (PDF), and deal with similar themes. These authors seek to establish a set of principles by which person-robot interaction might be studied, and also present some findings derived from their use of a robotic cat with various cross-cultural and clinical populations (incidentially defining the term ‘robotherapy’ for apparently the first time). The third source found by Google Scholar is an unpublished MSc thesis from Diego J. Mejias‐Sanabria at UCL (PDF) which details some theoretical and experimental studies of the impact of different physical features on human-robot interaction, and particularly on the strength and type of relationship that is produced.
While clearly of great interest, this preliminary work is focussed almost entirely on the human side of the equation, with little to be said about the psychology of the robot itself. This is understandable, as most robots now commonly in use, while sophisticated in many ways, are capable of only a relatively simple set of pre-programmed behaviours. As such, there is relatively little to investigate from a psychological perspective. However, all that may be about to change. The inspiration for this blog post actually came from some stunning work performed by a company named TheCorpora, using the open-source, linux-distro-powered Qbo robot. In the video below, Qbo learns to recognise itself in a mirror:
And in this second video, Qbo learns to distinguish a view of itself in a mirror from another Qbo robot, using a flashing light pattern on its nose. Once the other robot is recognised as a different entity, a short conversation between the two is carried out:
Needless to say, this is some seriously impressive stuff. Astute students of behaviour will recognise the setup in the videos as an example of the Mirror Test, first devised by Gordon Gallup in the 1970s, and used as one way of guaging the level of various animal species’ self-awareness. The nose-flashes that Qbo uses to recognise itself are even equivalent to the methods used in an elaboration of the mirror test where odourless dye-spots are painted on animals in order to get a clearer behavioural indication of whether they respond to the mirror as an image of themselves.
This work done with the Qbo robot clearly raises a whole host of questions, principal among them being (to my mind at least), just what exactly is happening here? The exact interpretation of success or failure by a particular species/individual at the mirror test is a matter of open debate, and the arguments about what the results might mean quickly spin off into the realms of unfettered philosophising. Some have argued that the mirror test is unsuitable for assessing species which use odour or auditory cues more extensively than humans, if this is the case, how suitable is it for assessing the self-awareness of a robot? It could be that Qbo is merely performing a relatively mechanical set of pre-programmed responses when confronted with the mirror, however it could just be possible that something a lot deeper, and a lot more interesting, is going on.
The point I’m hoping to demonstrate here is that an understanding of what’s going on in these videos may require an understanding not just of the mechanics, programming and behaviour of Qbo, but fundamentally of its psychology. We need to know, essentially, what’s going on in its head when it recognises itself in the mirror. Such an understanding would doubtless be hugely valuable in driving further research and development of artificial intelligence, but could conceivably shed light on the development of consciousness and self-reflective abilities in humans and other species. For this, we obviously need robopsychologists, and with the pace of development of robot abilities and their increasing penetration into society it’s not unlikely that such needs may become pressing within the next 10-20 years. The field is currently so nascent as to be practically zygotic, and it may be some time before it produces the real equivalent of Susan Calvin, however, I have little doubt that given time, it will.
And that is why I want to be a robopsychologist. I leave you with a quote from the Master himself:
“Individual science fiction stories may seem as trivial as ever to the blinder critics and philosophers of today — but the core of science fiction, its essence, the concept around which it revolves, has become crucial to our salvation if we are to be saved at all.”
My Own View” in The Encyclopedia of Science Fiction (1978) edited by Robert Holdstock; later published in Asimov on Science Fiction (1981).
* The word ‘nerd’ hadn’t been invented yet, or at least wasn’t in common usage where I grew up, so I was a ‘boffin’ to my contemporaries, the heartless little cretins.
Another quickie link-out type post (yes, alright, I’ll sit down and write a proper post sometime soon – it’s been a busy few weeks, OK?), this time to a… let’s say, a spirited discussion over on DrugMonkey’s blog on my very favourite topic – reference management. Well, it’s actually about writing and citing at the same time, but there’s loads of good work-flow related tips related to referencing and reference-management software.
Once again, for those of you at the back – if you’re a student and you’re not using something like Mendeley, then you are a) making your life much harder than it needs to be, and b) a massive idiot.
As an example of the ways in which technology and psychology have developed together recently, I thought it would be fun to do a little case-study of a particular area of research which has benefitted from advances in computer software over recent years. Rather than talk about the very technical disciplines like brain imaging (which have of course advanced enormously recently) I thought it would be more fun to concentrate on an area of relatively ‘pure’ psychology, and one of the most important and fundamental cognitive processes which is present pretty much from birth; face perception.
In November 1991 Michael Jackson released the single ‘Black or White’; the first to be released from his eighth album ‘Dangerous’. The single is of some significance as it marked the beginning of Jackson’s descent from the firmament of music stardom into the spiral of musical mediocrity and personal weirdness which only ended with his death in 2009, but for the purposes of the present discussion it was interesting because of part of its accompanying video. Towards the end of the video a series of people of both sexes and of various ethnic groups are shown singing along with the song and the images of their faces morph into each other in series:
I decided to put together a computer skills checklist. A lot of the things on this list are not specific to psychology and should be part of the training of every student. I would advise students to work through the list and note down any entries that you’re not comfortable with – finding out how to do these things and ticking off every item on the list will definitely advance your knowledge and help you out in future. Some of the things on the list have already been covered on this blog, and some I’m planning to cover in the future. Let me know in the comments if you think I’ve missed anything!
Green text denotes a basic/essential skill, orange means intermediate, red means it’s an advanced skill. Most students should be able to tick off all the green ones straight away – if you can’t you’ve got some work to do! Read the rest of this entry
Functional Magnetic Resonance Imaging (fMRI) has now become a pretty mainstream activity for researchers interested in the workings of the human brain, and since its inception in the early-90s a whole load of software has been developed which can enable even the most clueless or Unix-averse researcher to (reasonably) easily perform complex analyses on fMRI datasets. I wrote a brief earlier post about fMRI software based on a presentation, and thought I’d expand on it a little more in a future series. There’s obviously a great deal to say about these pieces of software in terms of advanced features, UI etc. and I’ll get to all that at some point in the future. This post will focus on the very basic aspects of three popular choices for fMRI analysis: BrainVoyager, FSL and SPM*; what platforms they support, and the basic features of each. Read the rest of this entry