Implementing nominal model from Polytomous Item Response Theory I am attempting to map out the probabilities of observing different categories given different person ability using the Nominal Model.  From the handbook of Polymous Item Response Theory 2010, the probability of responding in category $k$ given ability $\theta$ and item parameters $a$ and $b$ for item $i$ is:
$$P_{ik}(u=k|\theta;\textbf{a, b})={\exp(a_k\theta+b_k)}/{\sum_i \exp(a_i\theta+b_i)}$$
This model should be variable in person ability $\theta$. However, it does not seem to make a difference if I change $\theta$ in my R code.  I am not sure if this seems a poor fit for CV.  I thought it might be a theoretical error on my part.
Here is my R code:
pnom <- function(theta, a, b) exp(a*theta+b)/sum(exp(a*theta+b))

pnom(2,c(1,1),c(-1,1))
[1] 0.1192029 0.8807971
pnom(1,c(1,1),c(-1,1))
[1] 0.1192029 0.8807971

 A: The $a$ and $b$ parameters likely don't function the way you would think. Specifically, the $a$s are not really discrimination parameters in the sense of the usual IRT dichotomous/graded response models, but instead represent the parameter ordering. Under Bock's (1972) original formulation, both sets of parameters were constrained to sum to 1 for proper identification and interpretation, so some of the $a$s will necessarily have to be negative as well as the $b$s. Lower values of $a$ represent lower categories (where the rank of the values indicate the empirical ordering), while lower values of $b$ represent the relative 'easiness' of the category to select.
What you've presented here is two response category that have exactly the same ordering (neither one is theoretically higher than the other) since both the $a$ and $b$ are the same. Try changing the value of the parameters to see what happens, but try to do so under the $\sum_k a_k = 1$ and $\sum_k b_k = 1$ constraints (not required for plots of course, but good to think about to see how real data would behave). 
For a quick interactive graphical representation already available, you could always check out the shiny interface that ships with the mirt package. Simply put the following in R:
library(mirt)
itemplot(shiny=TRUE)

Then select the nominal itemtype from the drop down menu, and click the checkbox to use the traditional IRT metric. Play around after that with the parameter values sliders to see what happens to the output plots. Hope that helps.
References
Bock, R. D. Estimating item parameters and latent ability when the responses are scored in two or more nominal categories Psychometrika, 1972, 37, 29-51.
