Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions examples/task_logic.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,11 @@

from aind_behavior_curriculum import Stage, TrainerState

import aind_behavior_dynamic_foraging.task_logic as df_task_logic
from aind_behavior_dynamic_foraging.task_logic import AindDynamicForagingTaskLogic, AindDynamicForagingTaskParameters

task_logic = AindDynamicForagingTaskLogic(
task_parameters=AindDynamicForagingTaskParameters(
rng_seed=42,
reward_size=df_task_logic.RewardSize(right_value_volume=4.0, left_value_volume=4.0),
)
)

Expand Down
89 changes: 72 additions & 17 deletions schema/aind_behavior_dynamic_foraging.json
Original file line number Diff line number Diff line change
Expand Up @@ -199,14 +199,6 @@
"title": "aind_behavior_services package version",
"type": "string"
},
"reward_size": {
"$ref": "#/$defs/RewardSize",
"default": {
"right_value_volume": 3.0,
"left_value_volume": 3.0
},
"description": "Parameters describing reward size."
},
"trial_generator": {
"$ref": "#/$defs/TrialGeneratorSpec",
"default": {
Expand Down Expand Up @@ -440,6 +432,14 @@
"title": "Type",
"type": "string"
},
"reward_size": {
"$ref": "#/$defs/RewardSize",
"default": {
"right": 2.0,
"left": 2.0
},
"description": "Parameters describing reward size."
},
"quiescent_duration": {
"$ref": "#/$defs/Distribution",
"default": {
Expand Down Expand Up @@ -530,7 +530,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"description": "Antibias settings. If set, trial generator will give water and move lickspouts to combat bias.",
"oneOf": [
Expand Down Expand Up @@ -714,6 +715,14 @@
"minimum": 0,
"title": "Lickspout Offset Delta",
"type": "number"
},
"reward_fraction": {
"default": 0.8,
"description": "Fraction of full reward volume delivered for water intervention (0=none, 1=full).",
"maximum": 1,
"minimum": 0,
"title": "Reward Fraction",
"type": "number"
}
},
"title": "BiasInterventionParameters",
Expand Down Expand Up @@ -825,6 +834,14 @@
"title": "Type",
"type": "string"
},
"reward_size": {
"$ref": "#/$defs/RewardSize",
"default": {
"right": 2.0,
"left": 2.0
},
"description": "Parameters describing reward size."
},
"quiescent_duration": {
"$ref": "#/$defs/Distribution",
"default": {
Expand Down Expand Up @@ -915,7 +932,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"description": "Antibias settings. If set, trial generator will give water and move lickspouts to combat bias.",
"oneOf": [
Expand Down Expand Up @@ -1112,6 +1130,14 @@
"title": "Type",
"type": "string"
},
"reward_size": {
"$ref": "#/$defs/RewardSize",
"default": {
"right": 2.0,
"left": 2.0
},
"description": "Parameters describing reward size."
},
"quiescent_duration": {
"$ref": "#/$defs/Distribution",
"default": {
Expand Down Expand Up @@ -1202,7 +1228,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"description": "Antibias settings. If set, trial generator will give water and move lickspouts to combat bias.",
"oneOf": [
Expand Down Expand Up @@ -1326,6 +1353,14 @@
"title": "Type",
"type": "string"
},
"reward_size": {
"$ref": "#/$defs/RewardSize",
"default": {
"right": 2.0,
"left": 2.0
},
"description": "Parameters describing reward size."
},
"quiescent_duration": {
"$ref": "#/$defs/Distribution",
"default": {
Expand Down Expand Up @@ -1412,7 +1447,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"description": "Antibias settings. If set, trial generator will give water and move lickspouts to combat bias.",
"oneOf": [
Expand Down Expand Up @@ -2663,18 +2699,20 @@
},
"RewardSize": {
"properties": {
"right_value_volume": {
"right": {
"exclusiveMinimum": 0,
"title": "Right reward size (uL)",
"type": "number"
},
"left_value_volume": {
"left": {
"exclusiveMinimum": 0,
"title": "Left reward size (uL)",
"type": "number"
}
},
"required": [
"right_value_volume",
"left_value_volume"
"right",
"left"
],
"title": "RewardSize",
"type": "object"
Expand Down Expand Up @@ -3379,6 +3417,14 @@
"Trial": {
"description": "Represents a single trial that can be instantiated by the Bonsai state machine.",
"properties": {
"reward_size": {
"$ref": "#/$defs/RewardSize",
"default": {
"right": 2.0,
"left": 2.0
},
"description": "Parameters describing reward size."
},
"p_reward_left": {
"default": 1.0,
"description": "The probability of reward on the left side if response is made.",
Expand Down Expand Up @@ -3686,6 +3732,14 @@
"title": "Type",
"type": "string"
},
"reward_size": {
"$ref": "#/$defs/RewardSize",
"default": {
"right": 2.0,
"left": 2.0
},
"description": "Parameters describing reward size."
},
"quiescent_duration": {
"$ref": "#/$defs/Distribution",
"default": {
Expand Down Expand Up @@ -3773,7 +3827,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"description": "Antibias settings. If set, trial generator will give water and move lickspouts to combat bias.",
"oneOf": [
Expand Down
73 changes: 42 additions & 31 deletions schema/coupled_baiting.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,15 +12,15 @@
"task_parameters": {
"rng_seed": null,
"aind_behavior_services_pkg_version": "0.13.5",
"reward_size": {
"right_value_volume": 4.0,
"left_value_volume": 4.0
},
"trial_generator": {
"type": "TrialGeneratorComposite",
"generators": [
{
"type": "CoupledWarmupTrialGenerator",
"reward_size": {
"right": 4.0,
"left": 4.0
},
"quiescent_duration": {
"family": "Scalar",
"distribution_parameters": {
Expand Down Expand Up @@ -67,7 +67,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"is_baiting": true,
"reward_probability_parameters": {
Expand All @@ -88,6 +89,10 @@
},
{
"type": "CoupledTrialGenerator",
"reward_size": {
"right": 4.0,
"left": 4.0
},
"quiescent_duration": {
"family": "Scalar",
"distribution_parameters": {
Expand Down Expand Up @@ -138,7 +143,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"is_baiting": true,
"reward_probability_parameters": {
Expand Down Expand Up @@ -187,12 +193,12 @@
"task_parameters": {
"rng_seed": null,
"aind_behavior_services_pkg_version": "0.13.5",
"reward_size": {
"right_value_volume": 2.0,
"left_value_volume": 2.0
},
"trial_generator": {
"type": "CoupledTrialGenerator",
"reward_size": {
"right": 2.0,
"left": 2.0
},
"quiescent_duration": {
"family": "Scalar",
"distribution_parameters": {
Expand Down Expand Up @@ -243,7 +249,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"is_baiting": true,
"reward_probability_parameters": {
Expand Down Expand Up @@ -290,12 +297,12 @@
"task_parameters": {
"rng_seed": null,
"aind_behavior_services_pkg_version": "0.13.5",
"reward_size": {
"right_value_volume": 2.0,
"left_value_volume": 2.0
},
"trial_generator": {
"type": "CoupledTrialGenerator",
"reward_size": {
"right": 2.0,
"left": 2.0
},
"quiescent_duration": {
"family": "Scalar",
"distribution_parameters": {
Expand Down Expand Up @@ -346,7 +353,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"is_baiting": true,
"reward_probability_parameters": {
Expand Down Expand Up @@ -393,12 +401,12 @@
"task_parameters": {
"rng_seed": null,
"aind_behavior_services_pkg_version": "0.13.5",
"reward_size": {
"right_value_volume": 2.0,
"left_value_volume": 2.0
},
"trial_generator": {
"type": "CoupledTrialGenerator",
"reward_size": {
"right": 2.0,
"left": 2.0
},
"quiescent_duration": {
"family": "Scalar",
"distribution_parameters": {
Expand Down Expand Up @@ -449,7 +457,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"is_baiting": true,
"reward_probability_parameters": {
Expand Down Expand Up @@ -496,12 +505,12 @@
"task_parameters": {
"rng_seed": null,
"aind_behavior_services_pkg_version": "0.13.5",
"reward_size": {
"right_value_volume": 2.0,
"left_value_volume": 2.0
},
"trial_generator": {
"type": "CoupledTrialGenerator",
"reward_size": {
"right": 2.0,
"left": 2.0
},
"quiescent_duration": {
"family": "Scalar",
"distribution_parameters": {
Expand Down Expand Up @@ -552,7 +561,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"is_baiting": true,
"reward_probability_parameters": {
Expand Down Expand Up @@ -607,12 +617,12 @@
"task_parameters": {
"rng_seed": null,
"aind_behavior_services_pkg_version": "0.13.5",
"reward_size": {
"right_value_volume": 2.0,
"left_value_volume": 2.0
},
"trial_generator": {
"type": "CoupledTrialGenerator",
"reward_size": {
"right": 2.0,
"left": 2.0
},
"quiescent_duration": {
"family": "Scalar",
"distribution_parameters": {
Expand Down Expand Up @@ -663,7 +673,8 @@
"intervention_interval": 10,
"maximum_water_corrections": 5,
"bias_window_length": 200,
"lickspout_offset_delta": 0.05
"lickspout_offset_delta": 0.05,
"reward_fraction": 0.8
},
"is_baiting": true,
"reward_probability_parameters": {
Expand Down
Loading