1. Putting a Face on Embodied Interface Agents
We will be using data on users' preferences on embodied interface agents who are assisting them with various tasks. The paper by Prof. McQuaid et al. is on cTools. The complete data set had the users' demographic info, how much they preferred each agent for particular tasks (e.g. getting movie recommendations or athletic training), and various attributes of the agent. You can download the abridged version, embodiedAgents.txt, from cTools. If you save it in your working directory, you can load it into your workspace by typing:
mcquaid <- read.table("embodiedAgents.txt", header = TRUE, sep = "\t")
Check out the data to see what columns you have. In brief, you have a subjectID, the subject's sex, the agent they are rating, the agenttype (not human, male, female), how the subject rated the agent on various tasks, and the average rating given by the subject to that agent across all tasks.
A. (15 pts) Create boxplots of the distribution of average agent ratings by agenttype. From the boxplots, interpret the subjects' preferences of the agents' form and gender.
B. (15 pts) Do a one-way ANOVA on the average agent rating by agenttype. Can you reject the null hypothesis that the subjects prefer all 3 types (form+gender) of agents equally?
C. (15 pts) Follow up with a pairwise t-test and report on which of the means are pairwise significantly different.
D (15 pts)
. We will now consider the task ratings separately. In order to do this we will need to stack the data such that each subject's rating of a particular agent for a particular task is in its own row. In order to accomplish this, enter the following:
attach(mcquaid) #if you haven't already
tasks <- data.frame(receptionist, therapist, customer, financial,
concierge, athletic, medical, tutor, museum, travel, librarian,
estate, laboratory, movie, matchmaker)
stackeddata = data.frame(agent,subjectSex,agenttype,stack(tasks))
stackeddata = stackeddata[complete.cases(stackeddata),]
colnames(stackeddata)=c("agentname","subjectsex","agenttype","rating","task")
detach(mcquaid)
attach(stackeddata)
Check out the data now stored under "stackeddata" to see what you have.
Draw an interaction plot of the rating with respect to the two independent variables of task and agent gender (works best if task is the first argument passed to interaction.plot and so ends up on the x-axis). Does the plot show interaction? (hint: if all the tasks are not labeled, you can try scaling down the axis font with e.g. cex.axis=0.5, or stretching out the plot, or, most effectively, rotating the labels by additing the las=2 option).
E. (15 pts) Follow up on D. by performing a two-way anova on the ratings with respect to the same two variables: task and agent type. Is there a significant interaction effect? Are the two variables individually significant?
F. (20 pts) Repeat D & E for task and subject sex. Do you see evidence of interaction in the plot? Does this correspond to the results of the anova?
G. (5 pts) Discuss the results of D-F in terms of implications for the development and use of embodied agents for different online tasks.
|