Summary
As for Simple Schedules, but you can run two schedules concurrently, specifying the manipulandum and reinforcer independently. (You can even use two manipulanda but have up to two schedules attached to each manipulandum.)
Configuring the task

• | Schedule. For each, you can enable or disable it; specify the response object and its location; specify a visual and auditory response marker; specify the schedule type and associated parameters, and specify a distinct reinforcer (or -- unusually -- more than one; see below). |
• | PR schedules end based on time since last response (not reward). For progressive ratio schedules, you may choose whether the timeout that eventually terminates the schedule, if selected, is calculated from the last response or the last reinforcer. |
• | Use changeover delay. When you respond on one schedule, a changeover delay disables the other schedule for a specified amount of time, and thereby discourages rapid alternation. See Notes on reinforcement schedules. |
• | Jackson schedule: noncontingent reward only if no response to opposite side as well. If ticked, then in the Jackson contingency schedule, schedules score a time bin towards the "contingent" count if there's been a response, but instead of (as normal) scoring a bin towards the "noncontingent" count if there's been no response, score it as noncontingent only if there's been no response to EITHER side during the bin. (Under these circumstances, if neither criterion is met, the bin is ignored.) |
MULTIPLE REINFORCER ALTERNATIVES
• | As of version 12.3, each schedule can be set up with a single reinforcer (as is normal), or a selection of possible reinforcers. The software will pick one at random from the schedule's reinforcer options when the schedule is reinforced. You must specify at least one reinforcer for every schedule that is in use. |
• | Reinforcer editing is as usual (see reinforcers), but there is also an intermediate dialogue box for a given set of reinforcer options, as shown below. The order within the list is functionally unimportant. |

NOTES AND CAVEATS IF YOU ARE USING MORE THAN ONE SCHEDULE PER MANIPULANDUM
• | You can specify an ADDITIONAL concurrent schedule on each "side". These schedules (termed 3 and 4) share a manipulandum with the main schedules (termed 1 and 2), but can be used to deliver additional consequences. For example, you might have two reinforcing schedules, and add an occasional aversive stimulus (e.g. noise, darkness) on top of the main schedule. |
• | IMPORTANT: Response counting. Response counting is conceptually difficult when two schedules share a manipulandum. The behavioural measure of interest is the number of responses, but each response may have to "go" to two schedules -- with a random 50:50 choice of which goes first, to break ties and allocate responses evenly. The response may then go, or not go, to the other sub-schedule, depending on whether the first sub-schedule instituted a timeout. (The same applies to "ticks" of time, though that is not of interest as a behavioural measure.) It's desirable to be able to record the number of responses that each sub-schedule "thought" happened, and so that's what's recorded in the output variables S1_TotalResponses, S2_TotalResponses, S3_TotalResponses, and S4_TotalResponses. But that will usually overcount the total number of responses, because the same physical response might (for example) add one both to S1_TotalResponses and to S3_TotalResponses. Therefore, in this special circumstance, you should use the output variables ConcurrentSchedules_ResultSummary.S1and3_TotalResponses and ConcurrentSchedules_ResultSummary.S2and4_TotalResponses to get the physical number of responses. Of course, these variables also work fine if you are not using >1 schedule per manipulandum. |
• | The ConcurrentSchedules_Events table also records per "physical" response, and indicates (where applicable) which schedule(s) reinforced it. |
• | You can specify separate timeout durations for the two sub-schedules. But if and when a timeout is triggered, it applies to all schedules for that manipulandum. (And, if you tick "Timeouts on L schedules(s) apply...", then also to the schedule(s) on the other manipulandum.) |
• | Changeover delays likewise apply to "left" or "right" collectively. |
• | You should not blend a Jackson schedule with another schedule on the same side. (The Jackson schedule is special because e.g. the left schedule needs to know something about responding on the right schedule, and vice versa. If there is more than one schedule on each manipulandum, this is not guaranteed to work properly. But it is also behaviourally bizarre and not the intended use of >1 schedule on one manipulandum. So avoid it!) |
|