Eligibility, IP Address, and Group Assignment


Author
Message
jbfleming
jbfleming
Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)
Group: Forum Members
Posts: 46, Visits: 75

I am currently putting together an Inquisit experiment meant to be delivered by Inquisit's web platform.


I am trying to determine if we are able to do our eligibility screening within Inquisit or if we need to do that separately. (I think I am leaning towards doing it separately, just to avoid having people download the plug-in only to find out they are ineligible)


So I have a couple questions related to this, to help inform my decision.


1) Is it possible to record the source IP anywhere? It looks like computer.ipaddress is the IP address assigned to the local computer's NIC.  That is not what I'm interested in. I am interested in the internet IP address that is the source of the web traffic to the server.  I am very aware of all the reasons why that is not a good unique identifier (NAT, dynamic IPs, etc.)  My question is only is that information available to me or not?


2) I have a script now that uses <include> statements and multiple <expt> blocks to randomly assign subjects to 4 different groups and it seems to work okay. There is some concern that we will end up with unequal group sizes using truly random assignment. I don' think we can get around that, it's either truly random (so you may end up with unequal group sizes, even though they should tend to roughly equal size), or you can do a round-robin assignment where group size will always be about equal, but you lose "randomness" outside of the generally random nature by which we expect participants to come to the study to begin with. I guess this isn't a question so much as an inquiry as to what others have done and any opinions they have about it.


I think right now I am leaning towards having a separate web survey somewhere that determines eligibility, and then doing group assignment outside of Inquisit, and providing eligible participants with a URL to the actual experiment, and the group number (or incorporating the group # into the URL to make it less error-prone) and having Inquisit just handle the experiment proper itself and not eligibility and group assignment.


John


Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K

I am leaning towards doing it separately, just to avoid having people download the plug-in only to find out they are ineligible


That's sensible.


1) Is it possible to record the source IP anywhere?


Yes. There is some additional participant activity tracking available outside of scripts via https://www.millisecond.com/myaccount/reporting/rptscripts.aspx (cf. http://www.millisecond.com/forums/Topic11703.aspx#11703 for a brief description). The data includes public IP.


2) I have a script now that uses <include> statements and multiple <expt> blocks to randomly assign subjects to 4 different groups and it seems to work okay. There is some concern that we will end up with unequal group sizes using truly random assignment. I don' think we can get around that, it's either truly random (so you may end up with unequal group sizes, even though they should tend to roughly equal size), or you can do a round-robin assignment where group size will always be about equal, but you lose "randomness" outside of the generally random nature by which we expect participants to come to the study to begin with. I guess this isn't a question so much as an inquiry as to what others have done and any opinions they have about it.


As you already noted, you can indeed assign participants to groups yourself (thus achieving near-equal Ns) and simply pass the designate group id to the launch page via a query parameter. In other words: You simply distribute different links to different participants.


For group 1 distribute

http://research.millisecond.com/username/myexperiment.web?mygroup=1

for group 2:

http://research.millisecond.com/username/myexperiment.web?mygroup=2

etc.

with the launch page set up to read out the mygroup parameter value and use as groupid.




jbfleming
jbfleming
Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)
Group: Forum Members
Posts: 46, Visits: 75
Okay, I currently have four <expt> blocks that look something like this:

<expt group_1>
/ subjects = (1 of 4)
/ groupassignment = random
/ blocks = [1=block1;2=block2;3=block3]
</expt>

If I pass in the group number (and probably subject number) via the URL, will I still have 3 <expt> blocks, and how do I tell them what value in "mygroup" to look for to determine which <expt> block to run?

Thanks!
John

Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
First you need to set the /groupassignment attribute to 'groupnumber'. Second you need to set the *launch page* to retrieve the groupid from a specified query parameter. This is not something you do in the script. You do this via the web script wizard when uploading the script, its associated files and configuring the various launch page options.

jbfleming
jbfleming
Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)Guru (11K reputation)
Group: Forum Members
Posts: 46, Visits: 75
Perfect, thank you! I am not to the point where I have a web account yet for me to experiment with the launch page, but that sounds straightforward. Thanks for the help!
juju
juju
Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)
Group: Forum Members
Posts: 26, Visits: 118
Hi,

I am using web to run a lab experiment (multiple testing so it makes the data gathering easier) and I need to have a manual group assignment (1 for female and 2 for male - in variables, I defined 2 groups leading to different material in the script). However when creating the launch page there is no option "user entered" as for the subject number. I also tried using an old launch page including the group id option was present:
function GetGroupId()
{
    PromptMask  = /(^\d{1,2}$)/;
    PromptMessage = "Inserire gruppo partecipante";
    PromptError = "The ID you entered was invalid.";
    if ( PromptResult == null )
    {
        Prompt();
    }
    return PromptResult;
}
but it does not work: the group id is not asked.

If going via a query parameter is the solution I am not sure tough I understood what should I do. Could I have more info?

I know I can get around the problem by asking at the beginning of the experiment the gender question and then run different elements depending on the answer but I wonder whether I could do directly this at the level of the launch page with group assignment.

Thanks in advance
Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
> If going via a query parameter is the solution I am not sure tough I understood what should I do. Could I have more info?

Configure the launch page to retrieve group id from a query parameter. Enter the *name* of the query parameter (mygroup in the below example).

To launch condition 1, use

https://research.millisecond.com/myusername/myscript.web?mygroup=1

To launch condition 2, use

https://research.millisecond.com/myusername/myscript.web?mygroup=2
juju
juju
Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)Distinguished Member (2.7K reputation)
Group: Forum Members
Posts: 26, Visits: 118
thanks for the tip


katjusha_user
katjusha_user
Esteemed Member (2K reputation)Esteemed Member (2K reputation)Esteemed Member (2K reputation)Esteemed Member (2K reputation)Esteemed Member (2K reputation)Esteemed Member (2K reputation)Esteemed Member (2K reputation)Esteemed Member (2K reputation)Esteemed Member (2K reputation)
Group: Forum Members
Posts: 10, Visits: 193
Hi Dave,


I want to build on this question. I am also using the Counterbalance Method und have defined it thusly:

<expt>
/subjects = (1 of 2)
/ blocks = [1=code; 2=attributepractice; 3=compatibletest1; 4=compatibletestinstructions; 5=compatibletest2;
                6=incompatibletest1; 7=incompatibletestinstructions; 8=incompatibletest2; 9=summary; 10=survey1; 11=survey2]
</expt>

<expt>
/subjects = (2 of 2)
/ blocks = [1=code; 2=attributepractice; 3=incompatibletest1; 4=incompatibletestinstructions; 5=incompatibletest2;
                6=compatibletest1; 7=compatibletestinstructions; 8=compatibletest2; 9=summary; 10=survey1; 11=survey2]
</expt>

I have omitted the " /groupassignment "  on purpose since I do not want the experimentees to have to submit group IDs or use different launching pages. Does the selection of the goups thus take place automically through Inquisit? I understood that the first of the two has to work on the first order and the second on the other. Is that correct?

Whenever I test the IAT local myself, I get the same order every time. This confuses me.

Greetings from Germany!


Dave
Dave
Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)Supreme Being (1M reputation)
Group: Administrators
Posts: 12K, Visits: 98K
If you only specify

/ subjects = (1 of 2)

and

/ subjects = (2 of 2)


this means that *odd-numbered subject numbers* (1, 3, 5, ...) will receive the 1st condition, and *even-numbered subject ids* (2,4,6, ...) will receive the 2nd one. If you only ever enter the same subject number (1), you will always get the same condition and you should.

None of this has anything to do with participants having to enter a subject or group number via the launch page. You simply ought to configure the launch page according to what you want (e.g. generate a random numerical id).


GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Explore
Messages
Mentions
Search