HomeOverviewDownload PalamedesSupporting documentationFrequently asked questionsSubmit comments and questionsSubmit a bug reportNews and updates (last update: September 25, 2011)Why Palamedes?About usOptions besides Palamedes

Below are some questions that might arise, with answers

  • Q: What do I need to be able to run the Palamedes routines?

    A: The basic Matlab® package. No additional Matlab toolboxes are required. Palamedes is backwards compatible going back at least as far as Matlab release 14 (2004).

  • Q: How do I install the Palamedes toolbox?

  • A: Download and unzip the Palamedes folder and the PalamedesDemos folder to your computer (likely your computer contains the tools to unzip the files already). Add the Palamedes folder to the Matlab search path (on Matlab menu, go to ‘file’, then ‘set path’). This will allow you to call the Palamedes routines from any directory. In case you wish to be able to run the demos from any directory, add the PalamedesDemos folder also. Save the changes to the paths you have made.

  • Q: How do I get started? How do I figure out how the routines work and what they do?

    A: All of the scripts in the Demos folder will take you through a complete analysis and are heavily commented. Do not be put off by the amount of code in these demo scripts: The bulk of the code serves to create presentable graphs. All user-end Palamedes routines contain help comments (type ‘help’ followed by the name of the routine). These help comments in all user-end routines contain example code that should execute when typed into the command window.

  • Q: I have used Palamedes routines in my research. Should I cite you in my report?

    A: Yes. Prins, N. & Kingdom, F.A.A. Palamedes: Matlab routines for analyzing psychophysical data.  www.palamedestoolbox.org

  • Q: I don’t understand the theory behind the routines (e.g., what is Maximum Likelihood?). Do you have time to explain it to me?

    A: No.

  • Q: Will you guarantee that the Palamedes routine will work free of error?

    A: No.

  • Q: I have made changes to the code and now it doesn’t work anymore, can you tell me what I did wrong?

    A: No.

  • Q: A routine crashed. Reading the elaborate help you provided seems like an awful lot of work. Do you have time to figure out and tell me what I did wrong?

    A: No.

  • Q: I wrote a few routines that do this or that. Would you incorporate them into your toolbox?

    A: No.

  • Q: I need to perform an analysis on some data that your toolbox can not do. Will you add routines that can solve my problem?

    A: Possibly. Tell us what it is that you’d like to see added and we’ll take it into consideration.

  • Q: Will you release updates to Palamedes from time to time?

    A: Yes. Check this website for updates. The current version number will be displayed on the website. Type PAL_version or PAL_info to find out which version you have.

  • Q: Your Weibull isn't a Weibull (or is it)?
A: Yes, it is. You are probably looking for the Gumbel (or log-Weibull): PAL_Gumbel.
  • Q: What is the function value (e.g., probability correct) of the PFs (Logistic, Weibull, etc.) at threshold?
A: That depends on the form of the PF (Logistic, Weibull, etc.), the 'guess-rate' and the 'lapse rate'. To find the function value at threshold simply evaluate the function at threshold. For example, the function value at threshold for the Logistic using guess rate = 0.5 and lapse rate = 0.02 can be found by typing e.g.,:
y=PAL_Logistic([1 2 .5 .02],1);
  • Q: Occassionally, PAL_PFLR_ModelComparison and/or PAL_PFML_GoodnessOfFitMultiple return negative values for the Transformed Likelihood Ratio (or Deviance). Palamedes does not indicate that any of the fits failed. That can't be right, can it?
A: Either one of two things happened.
(1) If the negative TLRs (or Devs) are near zero, it is likely that the corresponding lesser and fuller model have actual Log Likelihoods (LL) that are nearly identical. Palamedes only approximates LL values. If the approximation of LL for the fuller model happens to be a bit lower than the actual LL value and the approximation of the LL for the lesser model happens to be a bit higher than the actual value the TLR value might be (slightly) negative. The solution is either to accept the negative TLR (or Dev) value to be the result of imprecision or to decrease the acceptable degree of imprecision by using the 'searchOptions' option and decrease the value of the '.TolFun' field in the options structure (this will generally require you to increase the maximum allowed iterations and function evaluations as well. It will also slow down the routine). See PAL_PFLR_Demo for an example of usage.
(2) If the negative values are not near zero, the fitting procedure ended up in a local maximum in the likelihood function. (These mis-fits can usually be spotted easily by inspection of the parameter estimates which will generally be nowhere near any realistic value). A solution that might work here is to use different guesses for the initial search values in the call to the function. Also use a sensible range of values when using the 'rangeTries' option. If this does not solve the problem, either reduce the number of free parameters or gather more data.
  • Q: Is it possible to restrict the range of possible value for the parameter estimates when fitting multiple PFs?

    A: Yes. With the introduction of custom reparametrization of parameters in Palamedes Version 1.1.0 this is possible. For example, to restrict a slope estimate to be positive, use the reparametrization:

slope = exp(b)
and have Palamedes find the best-fitting estimate of b. See the example code in PAL_PFLR_CustomDefine.m for an example. The atan function can be used to restrict parameter estimates to a range bound by a lower and upper value.
  • Q: When I fit a psychometric function, should I allow the lapse rate to vary/estimate the lapse rate?
 A: Maybe. But exercise caution and consider various options. Bad things can happen when you don't. For more information type help PAL_PFML_Fit or click here.
 
  • Q:Routines crash because I don't have a function called 'iscolumn', what do I do?
 A: You are running a version of Matlab older than R2010b. Upgrade Matlab or go here to find out how to create a quick fix.