Stochastic stimulation scheduling
A stimulation scheduling system includes a control signal generator and a controller, which can form a control loop configured to generate sets of consistent pulse schedules with a controlled degree of difficulty. The control signal generator can generate a set of consistent pulse schedules using a set of corresponding stimulation parameter distributions and provide a detection parameter based on the generation of the set of consistent pulse schedules to a controller. The controller can estimate a difficulty state based on the detection parameter and update the stimulation parameter distributions based on the estimated difficulty state. The controller can model the difficulty of generating sets of consistent pulse schedules using a difficulty distribution. The difficulty state can be a parameter of the difficulty distribution. The controller can balance the difficulty of generating sets of consistent pulse schedules against the fidelity of the generated sets of pulse schedules.
1 . A stimulation scheduling system, comprising:
a stimulator configured to provide stimulation according to a stimulator control signal on a set of stimulation channels;
a control signal generator configured to:
generate a set of consistent pulse schedules according to a set of corresponding stimulation parameter distributions, the stimulation parameter distributions having stimulation parameter expected values and stimulation parameter spreads;
provide a stimulator control signal to a stimulator, the stimulator control signal based on the set of consistent pulse schedules; and
provide at least one detection parameter based on the generation of the set of consistent pulse schedules to a controller; and
wherein the controller is configured to:
estimate a difficulty state based on the at least one detection parameter; and
update the stimulation parameter distributions based on the estimated difficulty state.
2 . The stimulation scheduling system of claim 1 , wherein:
updating the stimulation parameter distributions comprises updating the stimulation parameter spreads.
3 . The stimulation scheduling system of claim 2 , wherein:
the updates to the stimulation parameter spreads depend upon:
the estimated difficulty state; and
the stimulation parameter expected values.
4 . The stimulation scheduling system of claim 1 , wherein:
the controller is further configured to:
determine an update condition is satisfied; and
in response to the determination, update the stimulation parameter expected values.
5 . The stimulation scheduling system of claim 1 , wherein:
the at least one detection parameter comprises a number of attempts required to generate the consistent pulse schedules.
6 . The stimulation scheduling system of claim 1 , wherein:
the estimated difficulty state comprises a parameter specifying an exponential or geometric distribution.
7 . The stimulation scheduling system of claim 1 , wherein:
the control signal generator and the controller form a control loop configured to maintain a specified degree of difficulty in generating sets of consistent pulse schedules.
8 . The stimulation scheduling system of claim 1 , wherein:
the stimulation parameter distributions comprise inter-pulse interval distributions or pulse phase duration distributions.
9 . The stimulation scheduling system of claim 1 , wherein:
the stimulation parameter distributions comprise pulse phase duration distributions; and
generating the set of consistent pulse schedules comprises:
sampling the pulse phase duration distributions to obtain pulse phase duration values; and
generating pulse phase amplitudes corresponding to the pulse phase duration values.
10 . A stimulation scheduling system, comprising:
an implantable pulse generator configured to target, using a control signal generator and a controller, a degree of difficulty in generating consistent pulse schedules for a set of stimulation channels by updating stimulation parameter distributions for the stimulation channels, wherein the stimulation parameter distributions have stimulation parameter expected values and stimulation parameter spreads and are used to generate the consistent pulse schedules and to provide stimulation on the set of stimulation channels according to the consistent pulse schedules.
11 . The stimulation scheduling system of claim 10 , wherein:
the implantable pulse generator is further configured to target a fidelity of the generated pulse schedules to specified stimulation parameters.
12 . A stimulation scheduling method, comprising:
sampling a stimulation parameter distribution, the stimulation parameter distribution having a stimulation parameter expected value and a stimulation parameter spread, for a first stimulation channel to obtain a stimulation parameter value;
generating a first pulse schedule for the first stimulation channel using the stimulation parameter value;
comparing the first pulse schedule to a second pulse schedule for a second stimulation channel; and
based on a consistency result of the comparison, providing a stimulator control signal to a stimulator, the stimulator control signal based on the first pulse schedule and the stimulator configured to provide stimulation according to the stimulator control signal on the first stimulation channel.
13 . The stimulation scheduling method of claim 12 , the method further comprising:
updating the stimulation parameter distribution based on a number of attempts required to generate the first pulse schedule.
14 . The stimulation scheduling method of claim 13 , wherein:
updating the stimulation parameter distribution comprises updating the stimulation parameter spread.
15 . The stimulation scheduling method of claim 13 , wherein:
updating the stimulation parameter distribution based on the number of attempts required to generate the first pulse schedule comprises:
estimating a difficulty distribution parameter using the number of attempts required to generate the first pulse schedule; and
updating the stimulation parameter distribution using the estimated difficulty distribution parameter.
16 . The stimulation scheduling method of claim 13 , wherein:
updating the stimulation parameter distribution based on the number of attempts required to generate the first pulse schedule comprises:
determining the number of attempts exceeds a threshold value; and
in response to the determination, increasing the stimulation parameter expected value or the stimulation parameter spread of the stimulation parameter distribution.
17 . The stimulation scheduling method of claim 13 , wherein:
updating the stimulation parameter distribution based on the number of attempts required to generate the first pulse schedule comprises:
estimating a difficulty distribution parameter; and
generating a control signal based on the difficulty distribution parameter.
18 . The stimulation scheduling method of claim 17 , wherein:
updating the stimulation parameter distribution based on the number of attempts required to generate the first pulse schedule further comprises:
weighting the control signal based on at least one specified stimulation parameter of the stimulation channel.
19 . The stimulation scheduling method of claim 12 , the method further comprising:
updating the stimulation parameter distribution using the first and second pulse schedules and specified inter-pulse intervals for the first and second stimulation channels.
20 . The stimulation scheduling method of claim 19 , wherein:
updating the stimulation parameter distribution using the first and second pulse schedules and the specified inter-pulse intervals comprises:
determining a jitter matrix based on respective differences between the first and second pulse schedules and the specified inter-pulse intervals for the first and second stimulation channels; and
determining a pulse schedule fidelity using the jitter matrix.
21 . The stimulation scheduling method of claim 12 , wherein:
the stimulation parameter value comprises an inter-pulse interval or a pulse phase duration.
22 . The stimulation scheduling method of claim 12 , wherein:
the stimulation parameter value comprises a pulse phase duration; and
generating the first pulse schedule using the stimulation parameter value comprises generating a pulse amplitude corresponding to the pulse phase duration.