Settings - Stimulus Protocol Classification

Mr Kick Home

Protocol HandlingThe Stimulus Protocol classification mode can be seen as an extension of the Stimulus Type mode: In either mode Mr. Kick controls which set of stimulus and/or trigger parameters are applied and classifies sweeps accordingly. Classification may 'act on' a timed event, an analog output pattern or trigger settings - or any combination of these.

The extra features of the Stimulus Protocol classification mode is:

  1. You can define a specific sequence of classes, i.e. you can control the order in which classes are applied. You may also skip some classes while repeating others more often.
  2. You may weight classes differently, i.e. specify that some class(es) should be applied more often than others and perhaps skip some.

Classes may be applied consecutively or at random, set via the Stimulus Select control in the Classification SetUp dialog. To apply an ordered sequence of classes (stimuli) choose Consecutive stimulus selection. For a weighted randomized stimulation choose Random selection mode. Manual selection mode is hardly relevant (but still available) in the Stimulus Protocol classification mode.

Examples

ad 1: For the sake of reproducibility it may be necessary to apply the exact same sequence of stimulation to a population of subjects or to an individual subject before and after some treatment.

ad 2: While investigating the effect of one type of stimulation it may be a good idea occasionally to check no-stimuli conditions. It may be reasonable to check this for every 10 stimuli. To achieve this choose Stim. Protocol with two classes (main or sub) and disable stimulation in one class, enable it in the other. Then define a protocol that repeats the second class ten times while the first class only comes out once. Run the protocol either consecutively or randomly.

Another use could be if you have a 2D classification scheme, but not all combinations of main and sub classes are relevant. Define a protocol including all relevant combinations, leaving out the irrelevant ones.

Protocol Handling

A brief look at the Classification Protocol dialog reveals 4 main sections:

  • The Nmb Classes control (top left)
  • The short manual (left)
  • The protocol itself (center)
  • The buttons (right)

The short manual should give you some idea of how to handle protocols.
We'll dig into details below:

Let's start with the structure of the protocol itself, and how to edit it.


The Protocol

The protocol consists of three columns: The center and right columns contain the main and sub class respectively. The left column specifies the number of times that class should be repeated.

If consecutive stimulus selection mode is in use the order in which stimuli are applied reflects the exact order in which classes are listed in the protocol. If we take a look at the portion of a protocol visible in the above figure classes will be applied as follows: First class 2.6 will be applied once, then 1.5, 4.4, 3.3, 1.2, 2.1, then 0.6 twice, 1.4 once, etc.

You can use the blue slider to scroll through the protocol or jump to any protocol element by typing an index value into the control above the vertical slider bar.

You can exclude any protocol element by setting the repeat factor (left column) to zero.

Grayed out elements at the bottom of the protocol are not part of the protocol. You can add elements to the end of the protocol by typing in values in a grayed out element.

Nmb Classes

You can set the number of classes available in each dimension via the Nmb Classes control - more or less like in the Classification SetUp dialog. The scope of the Nmb Classes control here is extended a little though:

Load and Save

You can save the protocol to file and load it again later. You may also generate a protocol file in another application - the file format is described below.

Especially when loading a protocol there is some interplay with the Nmb Classes control:

  • If Nmb Classes is set to zero before loading, the number of classes will be updated to what is actually needed by the loaded protocol.
  • As the number of classes can be set independently of the loaded protocol it may limit which classes can actually be used. Or you may specify more classes than is really needed by the protocol.

Note: When Stim. Protocol is in use no class will ever be applied if it exceeds the number of classes defined. If a class falls outside the defined range the nearest valid class will be applied instead!

Generate

The easiest way to start on a weighted protocol is to generate a complete list of all classes. This is what the Generate function does. First Mr. Kick will ask if it is OK to overwrite the current contents of the protocol. The number of classes included in the list are set via the Nmb Classes control.

When the list is ready you just have to set the weighting factors in the repeat column. If a specific class should be excluded set repeat to zero.

Clear

Pressing this button will clear the protocol: Mr. Kick will ask you first if you really want to clear all contents of the protocol. If you answer OK the protocol will be gone (It's still possible to Cancel the dialog).

Protocol File Format

The general file format is tab-delimited text. It may be created and edited via any standard text editor or spreadsheet application, e.g. Excel.

MrKick 1 0 ID Version Revision
24 5 8 Length N_Main N_Sub.
2 0 7 Repeat Main Sub
1 3 6
1 4 5
1 1 4
1 2 3
1 3 2
2 0 1
1 4 7
1 2 6
1 1 5
1 4 4
1 3 3
1 1 2
1 2 1
2 0 6
1 1 4
1 4 2
1 3 0
2 0 7
1 2 0 Repeat Main Sub

An example file, Protocol.txt, can be found in the configuration directory, CFG - it looks like this (table right):

The protocol is defined in the first three columns separated by TAB characters (ASCII #9). Any other columns will not be read by Mr. Kick and can be used for comments etc.

Header

The first two lines contain header information.

First line: File identification

The first column must read "MrKick" (or Humaniac) or Mr. Kick will reject the file as invalid. This is to avoid reading files that are not suitable for the purpose.

The second and third column contain version and revision number of the file format. As of today they must read 1 and 0 (zero) respectively. In this way Mr. Kick will be able to distinguish different file formats, that may arise in the future.

Second line: Protocol header

The second line contain three numbers that define the "protocol environment":

The first number define the length of the protocol, i.e. the number of elements in the protocol. Mr. Kick will not load any more elements than specified by this number. On the other hand if less elements are encountered in the file, protocol length will be reduced to the number of elements available in the file. If using Excel to generate the file you may use the sum function to calculate the exact number.

The second and third number represent the number of main and sub classes that will be in use by the protocol. You may leave both numbers at zero and Mr. Kick will determine the minimum numbers required by the protocol.

Protocol Lines

All lines following the second line in the file are regarded protocol lines, each containing three integers. If a line does not start with three numbers it will be skipped, causing no harm.

The three integer numbers represent Repeat, Main and Sub Class - equivalent to the protocol structure described above: The first number controls how many times the class defined by the second and third number will be repeated. The protocol length is the sum of all numbers in the first column, third row (line) and below.

Humaniac

The main part of the protocol file format originates from an ancient piece of software called Humaniac. Mr. Kick can load files made for Humaniac, but it will not recognize any of the command lines (e.g. Stop) that may be in the file.

Top - Menu