diff options
| author | Niclas Dobbertin <niclas.dobbertin@mailbox.org> | 2024-07-19 11:32:36 +0200 | 
|---|---|---|
| committer | Niclas Dobbertin <niclas.dobbertin@mailbox.org> | 2024-07-19 11:32:36 +0200 | 
| commit | 3cb857f94b964d7107eda03efc0c6454748a5716 (patch) | |
| tree | b3f04fa05ba95dc08f897aebfa01a5d560a6f844 | |
| parent | b9d067b835f0c74b0d34b4289f5c6917c5544cd8 (diff) | |
fix overall procedure
| -rw-r--r-- | modeling/model_env.py | 16 | ||||
| -rw-r--r-- | modeling/model_init.py | 4 | ||||
| -rw-r--r-- | modeling/prod_vis.py | 347 | ||||
| -rw-r--r-- | modeling/productions_math.py | 2 | 
4 files changed, 358 insertions, 11 deletions
| diff --git a/modeling/model_env.py b/modeling/model_env.py index 6b8b210..7dcad3e 100644 --- a/modeling/model_env.py +++ b/modeling/model_env.py @@ -25,14 +25,14 @@ def generate_procedures(screen):      screen["ProcedureOverall"] = {"text": "proc_overall", "position": (0, 600)} -    screen["Answers"] = {"text": "Answers", "position": (100, 0)} -    screen["Answer1"] = {"text": 1, "position": (100, 100)} -    screen["Answer2"] = {"text": 2, "position": (100, 200)} -    screen["Answer3"] = {"text": 3, "position": (100, 300)} -    screen["Answer4"] = {"text": 4, "position": (100, 400)} -    screen["Answer5"] = {"text": 5, "position": (100, 500)} - -    screen["AnswerOverall"] = {"text": "proc_overall", "position": (100, 600)} +    screen["Answers"] = {"text": "Answers", "position": (100, 100)} +    screen["Answer1"] = {"text": 1, "position": (100, 200)} +    screen["Answer2"] = {"text": 2, "position": (100, 300)} +    screen["Answer3"] = {"text": 3, "position": (100, 400)} +    screen["Answer4"] = {"text": 4, "position": (100, 500)} +    screen["Answer5"] = {"text": 5, "position": (100, 600)} + +    screen["AnswerOverall"] = {"text": "proc_overall", "position": (100, 700)}  def generate_variables(screen):      # Variables diff --git a/modeling/model_init.py b/modeling/model_init.py index 66e74b1..a6ca3ac 100644 --- a/modeling/model_init.py +++ b/modeling/model_init.py @@ -212,8 +212,8 @@ def init():          )      # Add comparison relations to single digit numbers -    for i in range(0, 11): -        for j in range(0, 11): +    for i in range(0, 101): +        for j in range(0, 101):              DM.add(                  actr.makechunk(                      f"greater{i}{j}", diff --git a/modeling/prod_vis.py b/modeling/prod_vis.py index e70a4c7..3360b33 100644 --- a/modeling/prod_vis.py +++ b/modeling/prod_vis.py @@ -1052,6 +1052,7 @@ def procedures(Model):          =g>          isa         math_goal          op          max_arg2_attend +        arg2        ~Answers          arg2_idx    max          vis_counter 1          =visual_location> @@ -1613,4 +1614,350 @@ def procedures(Model):          ~retrieval>          """,      ) + +    vis_max_arg2_answers_step1_attend = Model.productionstring( +        name="vis_max_arg2_answers_step1_attend", +        string=""" +        =g> +        isa         math_goal +        arg2        Answers +        op          max_arg2_attend +        arg2_idx    max +        vis_counter 1 +        =visual_location> +        isa         _visuallocation +        ?visual> +        state       free +        ==> +        =g> +        isa         math_goal +        op          max_arg2_encode_answers +        +visual> +        isa         _visual +        cmd         move_attention +        screen_pos  =visual_location +        """, +    ) +    vis_max_arg2_answers_step1_encode = Model.productionstring( +        name="vis_max_arg2_answers_step1_encode", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_encode_answers +        arg2_idx    max +        vis_counter 1 +        =visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        =visual> +        isa         _visual +        value       =value +        ==> +        =g> +        isa         math_goal +        op          max_arg2_attend_answers +        vis_counter 2 +        arg2        =value +        +visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        screen_y    300 +        """, +    ) + +    vis_max_arg2_answer_step2_attend = Model.productionstring( +        name="vis_max_arg2_answers_step2_attend", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_attend_answers +        arg2_idx    max +        vis_counter 2 +        =visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        screen_y    =screen_y +        ?visual> +        state       free +        ==> +        =g> +        isa         math_goal +        op          max_arg2_check_answers +        +visual> +        isa         _visual +        cmd         move_attention +        screen_pos  =visual_location +        """, +    ) +    vis_max_arg2_answers_step2_check = Model.productionstring( +        name="vis_max_arg2_answers_step2_check", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_check_answers +        arg2        =arg2 +        arg2_idx    max +        vis_counter 2 +        =visual> +        isa         _visual +        value       =value +        ==> +        =g> +        isa         math_goal +        op          max_arg2_encode_answers +        +retrieval> +        isa         math_op +        op          greater +        arg1        =arg2 +        arg2        =value +        """, +    ) +    vis_max_arg2_answers_step2_encode = Model.productionstring( +        name="vis_max_arg2_answers_step2_encode", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_encode_answers +        arg2_idx    max +        vis_counter 2 +        =visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        =retrieval> +        isa         math_op +        op          greater +        result      =result +        ==> +        =g> +        isa         math_goal +        op          max_arg2_attend_answers +        vis_counter 3 +        arg2        =result +        +visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        screen_y    400 +        ~retrieval> +        """, +    ) +    vis_max_arg2_answers_step3_attend = Model.productionstring( +        name="vis_max_arg2_answers_step3_attend", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_attend_answers +        arg2_idx    max +        vis_counter 3 +        =visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        screen_y    =screen_y +        ?visual> +        state       free +        ==> +        =g> +        isa         math_goal +        op          max_arg2_check_answers +        +visual> +        isa         _visual +        cmd         move_attention +        screen_pos  =visual_location +        """, +    ) +    vis_max_arg2_answers_step3_check = Model.productionstring( +        name="vis_max_arg2_answers_step3_check", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_check_answers +        arg2        =arg2 +        arg2_idx    max +        vis_counter 3 +        =visual> +        isa         _visual +        value       =value +        ==> +        =g> +        isa         math_goal +        op          max_arg2_encode_answers +        +retrieval> +        isa         math_op +        op          greater +        arg1        =arg2 +        arg2        =value +        """, +    ) +    vis_max_arg2_answers_step3_encode = Model.productionstring( +        name="vis_max_arg2_answers_step3_encode", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_encode_answers +        arg2_idx    max +        vis_counter 3 +        =visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        =retrieval> +        isa         math_op +        op          greater +        result      =result +        ==> +        =g> +        isa         math_goal +        op          max_arg2_attend_answers +        vis_counter 4 +        arg2        =result +        +visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        screen_y    500 +        ~retrieval> +        """, +    ) +    vis_max_arg2_answers_step4_attend = Model.productionstring( +        name="vis_max_arg2_answers_step4_attend", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_attend_answers +        arg2_idx    max +        vis_counter 4 +        =visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        screen_y    =screen_y +        ?visual> +        state       free +        ==> +        =g> +        isa         math_goal +        op          max_arg2_check_answers +        +visual> +        isa         _visual +        cmd         move_attention +        screen_pos  =visual_location +        """, +    ) +    vis_max_arg2_answers_step4_check = Model.productionstring( +        name="vis_max_arg2_answers_step4_check", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_check_answers +        arg2        =arg2 +        arg2_idx    max +        vis_counter 4 +        =visual> +        isa         _visual +        value       =value +        ==> +        =g> +        isa         math_goal +        op          max_arg2_encode_answers +        +retrieval> +        isa         math_op +        op          greater +        arg1        =arg2 +        arg2        =value +        """, +    ) +    vis_max_arg2_answers_step4_encode = Model.productionstring( +        name="vis_max_arg2_answers_step4_encode", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_encode_answers +        arg2_idx    max +        vis_counter 4 +        =visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        =retrieval> +        isa         math_op +        op          greater +        result      =result +        ==> +        =g> +        isa         math_goal +        op          max_arg2_attend_answers +        vis_counter 5 +        arg2        =result +        +visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        screen_y    600 +        ~retrieval> +        """, +    ) +    vis_max_arg2_answers_step5_attend = Model.productionstring( +        name="vis_max_arg2_answers_step5_attend", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_attend_answers +        arg2_idx    max +        vis_counter 5 +        =visual_location> +        isa         _visuallocation +        screen_x    =screen_x +        screen_y    =screen_y +        ?visual> +        state       free +        ==> +        =g> +        isa         math_goal +        op          max_arg2_check_answers +        +visual> +        isa         _visual +        cmd         move_attention +        screen_pos  =visual_location +        """, +    ) +    vis_max_arg2_answers_step5_check = Model.productionstring( +        name="vis_max_arg2_answers_step5_check", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_check_answers +        arg2        =arg2 +        arg2_idx    max +        vis_counter 5 +        =visual> +        isa         _visual +        value       =value +        ==> +        =g> +        isa         math_goal +        op          max_arg2_encode_answers +        +retrieval> +        isa         math_op +        op          greater +        arg1        =arg2 +        arg2        =value +        """, +    ) +    vis_max_arg2_answers_step5_encode = Model.productionstring( +        name="vis_max_arg2_answers_step5_encode", +        string=""" +        =g> +        isa         math_goal +        op          max_arg2_encode_answers +        arg2_idx    max +        vis_counter 5 +        =retrieval> +        isa         math_op +        op          greater +        result      =result +        ==> +        =g> +        isa         math_goal +        op          done +        arg2        =result +        vis_counter None +        expand_slot None +        ~visual> +        ~retrieval> +        """, +    )      return prods diff --git a/modeling/productions_math.py b/modeling/productions_math.py index 1a756c9..9ab11a9 100644 --- a/modeling/productions_math.py +++ b/modeling/productions_math.py @@ -95,7 +95,7 @@ def start():              # if sim.current_event.action == "NO RULE FOUND":              #     print(goal)              if sim.current_event.action == "KEY PRESSED: SPACE": -                sim._Simulation__env.stimulus["Answer1"]["text"] = "99" +                sim._Simulation__env.stimulus["Answer5"]["text"] = "99"                  i += 1                  print(userinput)                  print("NEW PROC") | 
