diff --git a/FinalBRDs/detectorAdaptivityDemo1.brd b/FinalBRDs/detectorAdaptivityDemo1.brd new file mode 100644 index 0000000..0eca110 --- /dev/null +++ b/FinalBRDs/detectorAdaptivityDemo1.brd @@ -0,0 +1,2032 @@ + + + + + + SendNoteProperty + + StartProblem + 1416 + + + + NotePropertySet + + InterfaceAction + ECFFA8E5FEDBDD17 + + firstNumGiven + + + UpdateTextArea + + + 1 + + + + + NotePropertySet + + InterfaceAction + 3F45C5A9DBEF00AC + + firstDenGiven + + + UpdateTextArea + + + 4 + + + + + NotePropertySet + + InterfaceAction + BA263816C75B0445 + + secNumGiven + + + UpdateTextArea + + + 1 + + + + + NotePropertySet + + InterfaceAction + 6AB90811187A2DE9 + + secDenGiven + + + UpdateTextArea + + + 6 + + + + + SendNoteProperty + + StartStateEnd + + + + + 1416 + 1 + + 402 + 47 + + + + state1 + 2 + + 398 + 157 + + + + state2 + 3 + + 322 + 152 + + + + state3 + 4 + + 474 + 152 + + + + state4 + 5 + + 633 + 115 + + + + state5 + 6 + + 584 + 143 + + + + state6 + 7 + + 398 + 267 + + + + state7 + 8 + + 398 + 377 + + + + state8 + 9 + + 398 + 487 + + + + state9 + 10 + + 398 + 597 + + + + state10 + 11 + + 394 + 707 + + + + state11 + 12 + + 394 + 817 + + + + state12 + 13 + + 394 + 927 + + + + Done + 14 + + 401 + 1037 + + + + state14 + 15 + + 318 + 262 + + + + state15 + 16 + + 318 + 372 + + + + state16 + 17 + + 318 + 482 + + + + state17 + 18 + + 318 + 592 + + + + state18 + 19 + + 318 + 702 + + + + state19 + 20 + + 318 + 812 + + + + state20 + 21 + + 318 + 922 + + + + Done_2 + 22 + + 317 + 1032 + + + + state22 + 23 + + 47 + 69 + + + + state23 + 24 + + 45 + 121 + + + + state24 + 25 + + 56 + 169 + + + + state25 + 26 + + 100 + 292 + + + + state26 + 27 + + 76 + 217 + + + + state27 + 28 + + 565 + 102 + + + + state28 + 29 + + 127 + 350 + + + + + + + + 1 + + NotePropertySet + + InterfaceAction + + firstDenConv + + + UpdateTextArea + + + 12 + + + + No, this is not correct. + + What could you do with the fractions so that they have the same denominator? + Choose a denominator both denominators go into. + Enter '12', the least common denominator + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + firstDenConv + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 12 + + + Student + + + No-Applicable + + determine-lcd fraction-addition + -1 + + 1 + 2 + 0 + + + + + + + 2 + + NotePropertySet + + InterfaceAction + + firstDenConv + + + UpdateTextArea + + + 24 + + + + No, this is not correct. + Good job! + What is the least common multiple of 4 and 6? + What is 4 x 6? + Please enter '24' in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + firstDenConv + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 24 + + + Student + + + No-Applicable + + multiply-denominators fraction-addition + -1 + + 1 + 3 + 0 + + + + + + + 3 + + NotePropertySet + + InterfaceAction + + firstDenConv + + + UpdateTextArea + + + 10 + + + + Instead of trying to add the denominators, choose a denominator both denominators go into. + + Please enter '10' in the highlighted field. + + Buggy Action + Correct Action + Never Checked + + + + ExactMatcher + firstDenConv + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 10 + + + Student + + + No-Applicable + + unnamed + -1 + + 1 + 4 + 0 + + + + + + + 4 + + NotePropertySet + + InterfaceAction + + secDenConv + + + UpdateTextArea + + + 10 + + + + Instead of trying to add the denominators, choose a denominator both denominators go into. + + Please enter '10' in the highlighted field. + + Buggy Action + Correct Action + Never Checked + + + + ExactMatcher + secDenConv + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 10 + + + Student + + + No-Applicable + + unnamed + -1 + + 1 + 5 + 0 + + + + + + + 5 + + NotePropertySet + + InterfaceAction + + ansNum1 + + + UpdateTextArea + + + 2 + + + + You can't add the numerators until you've converted the fractions. + + Please enter '2' in the highlighted field. + + Buggy Action + Correct Action + Never Checked + + + + ExactMatcher + ansNum1 + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 2 + + + Student + + + No-Applicable + + unnamed + -1 + + 1 + 6 + 0 + + + + + + + 6 + + NotePropertySet + + InterfaceAction + + secDenConv + + + UpdateTextArea + + + 12 + + + + No, this is not correct. + + What could you do with the fractions so that they have the same denominator? + Choose a denominator both denominators go into. + Enter '12', the least common denominator between both fractions, in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + secDenConv + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 12 + + + Student + + + No-Applicable + + determine-lcd fraction-addition + -1 + + 2 + 7 + 0 + + + + + + + 7 + + NotePropertySet + + InterfaceAction + + ansDen1 + + + UpdateTextArea + + + 12 + + + + No, this is not correct. + + Once you've found the least common denominator, you can put in the highlighted field. + Find a common denominator for both fractions. Choose a denominator both denominators go into. + Please enter the least common denominator, '12', in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + ansDen1 + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 12 + + + Student + + + No-Applicable + + copy-answer-denominator fraction-addition + -1 + + 7 + 8 + 0 + + + + + + + 8 + + NotePropertySet + + InterfaceAction + + firstNumConv + + + UpdateTextArea + + + 3 + + + + No, this is not correct. + + Divide the fraction's denominator into the common denominator. + Multiply the numerator with the number you got. + Multiply 1 and 3. Put this numerator, 3, in the highlighted cell. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + firstNumConv + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 3 + + + Student + + + No-Applicable + + convert-numerator fraction-addition + -1 + + 8 + 9 + 0 + + + + + + + 9 + + NotePropertySet + + InterfaceAction + + secNumConv + + + UpdateTextArea + + + 2 + + + + No, this is not correct. + + Divide the fraction's denominator into the common denominator. + Multiply the numerator with the number you got. + Multiply 1 and 2. Put this numerator, 2, in the highlighted cell. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + secNumConv + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 2 + + + Student + + + No-Applicable + + convert-numerator fraction-addition + -1 + + 9 + 10 + 0 + + + + + + + 10 + + NotePropertySet + + InterfaceAction + + ansNum1 + + + UpdateTextArea + + + 5 + + + + No, this is not correct. + + When fractions have the same denominator they can be added. + Go ahead and add the numerator; the denominator stays the same. + Please enter '5' in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + ansNum1 + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 5 + + + Student + + + No-Applicable + + add-numerators fraction-addition + -1 + + 10 + 11 + 0 + + + + + + + 11 + + NotePropertySet + + InterfaceAction + + ansNumFinal1 + + + UpdateTextArea + + + 5 + + + + No, this is not correct. + + Please enter '5' in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + ansNumFinal1 + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 5 + + + Student + + + No-Applicable + + reduce-numerator fraction-addition + -1 + + 11 + 12 + 0 + + + + + + + 12 + + NotePropertySet + + InterfaceAction + + ansDenFinal1 + + + UpdateTextArea + + + 12 + + + + No, this is not correct. + + Please enter '12' in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + ansDenFinal1 + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 12 + + + Student + + + No-Applicable + + reduce-denominator fraction-addition + -1 + + 12 + 13 + 0 + + + + + + + 13 + + NotePropertySet + + InterfaceAction + + done + + + ButtonPressed + + + -1 + + + + No, this is not correct. + + You're done with the problem; your answer is in its simplest form. + Click the highlighted 'Done' button to finish. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + done + + + + + ExactMatcher + ButtonPressed + + + + + ExactMatcher + -1 + + + Student + + + No-Applicable + + unnamed + -1 + + 13 + 14 + 0 + + + + + + + 14 + + NotePropertySet + + InterfaceAction + + secDenConv + + + UpdateTextArea + + + 24 + + + + No, this is not correct. + + What is the a common multiple of 4 and 6? + What is 4 x 6? + Please enter '24' in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + secDenConv + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 24 + + + Student + + + No-Applicable + + multiply-denominators fraction-addition + -1 + + 3 + 15 + 0 + + + + + + + 15 + + NotePropertySet + + InterfaceAction + + secNumConv + + + UpdateTextArea + + + 4 + + + + No, this is not correct. + + Divide each denominator into the common denominator. Then multiply the number you got with the numerator. + 6 goes in to 24 4 times; so multiply 1 and 4. + Enter '4', the converted numerator, in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + secNumConv + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 4 + + + Student + + + No-Applicable + + convert-numerator fraction-addition + -1 + + 15 + 16 + 0 + + + + + + + 16 + + NotePropertySet + + InterfaceAction + + firstNumConv + + + UpdateTextArea + + + 6 + + + + No, this is not correct. + + Divide the denominator into the common denominator. Then multiply the number you got with the numerator. + 4 goes in to 24 6 times; so multiply 1 and 6. + Enter '6', the converted numerator, in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + firstNumConv + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 6 + + + Student + + + No-Applicable + + convert-numerator fraction-addition + -1 + + 16 + 17 + 0 + + + + + + + 17 + + NotePropertySet + + InterfaceAction + + ansNum1 + + + UpdateTextArea + + + 10 + + + + No, this is not correct. + + If you've already converted the fractions, you can add the converted numerators and put the sum over the common denominator. + The converted numerators are 6 and 4. What is 6 + 4? + Enter '10' in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + ansNum1 + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 10 + + + Student + + + No-Applicable + + add-numerators fraction-addition + -1 + + 17 + 18 + 0 + + + + + + + 18 + + NotePropertySet + + InterfaceAction + + ansDen1 + + + UpdateTextArea + + + 24 + + + + No, this is not correct. + + When you've converted fractions to have an identical denominator, you use that same denominator in the answer. + Just carry the denominator, 24, down to the highlighted field. + Please enter '24' in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + ansDen1 + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 24 + + + Student + + + No-Applicable + + copy-answer-denominator fraction-addition + -1 + + 18 + 19 + 0 + + + + + + + 19 + + NotePropertySet + + InterfaceAction + + ansDenFinal1 + + + UpdateTextArea + + + 12 + + + + No, this is not correct. + + You need to simplify your fraction. + 2 goes into both the numerator and denominator. How many times can 2 go into 24? + Please enter '12' in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + ansDenFinal1 + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 12 + + + Student + + + No-Applicable + + reduce-denominator fraction-addition + -1 + + 19 + 20 + 0 + + + + + + + 20 + + NotePropertySet + + InterfaceAction + + ansNumFinal1 + + + UpdateTextArea + + + 5 + + + + No, this is not correct. + + You need to simplify your fraction. + 2 goes into both the numerator and denominator. How many times can 2 go into 10? + Please enter '5' in the highlighted field. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + ansNumFinal1 + + + + + ExactMatcher + UpdateTextArea + + + + + ExactMatcher + 5 + + + Student + + + No-Applicable + + reduce-numerator fraction-addition + -1 + + 20 + 21 + 0 + + + + + + + 21 + + NotePropertySet + + InterfaceAction + + done + + + ButtonPressed + + + -1 + + + + No, this is not correct. + + You're all done with the problem! + Click the Done button. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + done + + + + + ExactMatcher + ButtonPressed + + + + + ExactMatcher + -1 + + + Student + + + No-Applicable + + unnamed + -1 + + 21 + 22 + 0 + + + + + + + 30 + + SendNoteProperty + + CorrectAction + + No_Selection + + + No_Action + + + No_Value + + 66079e13-da1e-4bd9-0090-d9a12f4eaf74 + + + ← Hey, try asking for a hint! You've made a lot of errors on this step. + + Please provide your answer 'No_Value' in the highlighted element. + + Buggy Action + Correct Action + Never Checked + + + + AnyMatcher + + + + + AnyMatcher + + + + + ExpressionMatcher + greaterThan(current_attempt_count,2) + boolean + + + Student + + + No-Applicable + + unnamed + -1 + + 1 + 23 + 0 + + + + + + + 33 + + SendNoteProperty + + CorrectAction + + No_Selection + + + No_Action + + + + + 7af3c7db-b968-edc9-f468-80be7d449329 + + + Nice job giving this step a try! If you'd like a hint, you can try clicking the button on the left. + + Please provide your answer 'No_Value' in the highlighted element. + + Buggy Action + Correct Action + Never Checked + + + + AnyMatcher + + + + + AnyMatcher + + + + + ExpressionMatcher + equals(help_model_try_if_low,"preferred") + boolean + + + Student + + + No-Applicable + + unnamed + -1 + + 1 + 24 + 0 + + + + + + + 35 + + SendNoteProperty + + CorrectAction + + No_Selection + + + No_Action + + + No_Value + + 7af3c7db-b968-edc9-f468-80be7d449329 + + + Please take your time to work through the problem. + + Please provide your answer 'No_Value' in the highlighted element. + + Buggy Action + Correct Action + Never Checked + + + + AnyMatcher + + + + + AnyMatcher + + + + + ExpressionMatcher + equals(help_model_try_if_low,"not acceptable/not deliberate") + boolean + + + Student + + + No-Applicable + + unnamed + -1 + + 1 + 25 + 0 + + + + + + + 73 + + SendNoteProperty + + CorrectAction + + No_Selection + + + No_Action + + + No_Value + + 16fc98f5-0840-bce6-5cdf-5324dd12edc6 + + + Please take it easy with those hints, there... + + Please provide your answer 'No_Value' in the highlighted element. + + Buggy Action + Correct Action + Never Checked + + + + AnyMatcher + + + + + AnyMatcher + + + + + ExpressionMatcher + equals(help_model_try_if_low,"not acceptable/hint abuse") + boolean + + + Student + + + No-Applicable + + unnamed + -1 + + 1 + 26 + 0 + + + + + + + 75 + + SendNoteProperty + + CorrectAction + + No_Selection + + + No_Action + + + No_Value + + 16fc98f5-0840-bce6-5cdf-5324dd12edc6 + + + Try asking for a hint! + + Please provide your answer 'No_Value' in the highlighted element. + + Buggy Action + Correct Action + Never Checked + + + + AnyMatcher + + + + + AnyMatcher + + + + + ExpressionMatcher + equals(help_model_try_if_low,"not acceptable/hint avoidance") + boolean + + + Student + + + No-Applicable + + unnamed + -1 + + 1 + 27 + 0 + + + + + + + 80 + + SendNoteProperty + + CorrectAction + + No_Selection + + + No_Action + + + No_Value + + 71007e45-ed56-2e2d-0cf3-2818f8b23db1 + + + No, this is not correct. + + Please provide your answer 'No_Value' in the highlighted element. + + Correct Action + Correct Action + Never Checked + + + + ExactMatcher + No_Selection + + + + + ExactMatcher + No_Action + + + + + ExactMatcher + No_Value + + + Student + + + No-Applicable + + unnamed + -1 + + 1 + 28 + 0 + + + + + + + 82 + + SendNoteProperty + + CorrectAction + + No_Selection + + + No_Action + + + No_Value + + 71007e45-ed56-2e2d-0cf3-2818f8b23db1 + + + Please ask your teacher for help! + + Please provide your answer 'No_Value' in the highlighted element. + + Buggy Action + Correct Action + Never Checked + + + + AnyMatcher + + + + + AnyMatcher + + + + + ExpressionMatcher + equals(help_model_try_if_low,"ask teacher for help/try step") + boolean + + + Student + + + No-Applicable + + unnamed + -1 + + 1 + 29 + 0 + + + copy-answer-denominator + fraction-addition + + + reduce-denominator + fraction-addition + + + determine-lcd + fraction-addition + What could you do with the fractions so that they have the same denominator? +PS You have been idle for %(stagnation)% seconds... + Choose a denominator both denominators go into. + Enter '12', the least common denominator between both fractions, in the highlighted field. + + + convert-numerator + fraction-addition + + + reduce-numerator + fraction-addition + + + add-numerators + fraction-addition + + + multiply-denominators + fraction-addition + + + + diff --git a/HTML/Assets/mail-worker_updateVarTable.js b/HTML/Assets/mail-worker_updateVarTable.js new file mode 100644 index 0000000..0e9c0b0 --- /dev/null +++ b/HTML/Assets/mail-worker_updateVarTable.js @@ -0,0 +1,107 @@ +var process_transactions_url = null; +var process_detectors_url = null; +var authenticity_token = ""; +var txAssembler = null; +var detectors = []; + +var trans_Q = []; +var detector_Q = []; + +//called when data is received from txAssembler +function receive_transaction( e ){ + //e is the data of the transaction from mailer from transaction assembler + console.log("receiving transaction in mail-worker:", e, e.data); + trans_Q.push(e.data); + for( var i = 0; i < detectors.length; i++ ){ + detectors[i].postMessage(e.data); + } +} + +//called when data is received from the detectors +function receive_detector_results( e ){ + var data = e.data; + console.log("receiving detector results in mail-worker"); + if (data != undefined) + { + detector_Q.push(data); + } +} + + +//Connect mailer to txAssembler and Detectors +self.onmessage = function ( e ) { + console.log("mail-worker self.onmessage:", e, e.data, e.data.commmand, e.ports); + switch( e.data.command ) + { + case "process_transactions_url": + process_transactions_url = e.data.process_transactions_url; + process_detectors_url = e.data.process_detectors_url; + authenticity_token = e.data.authenticity_token; + break; + case "connectTransactionAssembler": + txAssembler = e.ports[0]; + txAssembler.onmessage = receive_transaction; + break; + case "connectDetector": + var t = e.ports[0]; + t.onmessage = receive_detector_results; + detectors.push(t); + } +} + + + + +/** Send all of the data to the server when in this interval */ +setInterval(function() +{ + /* Send Transactions in queue */ + if (trans_Q.length != 0) + { + console.log("sending trans to server from mail-worker"); + + var trans = {"authenticity_token": authenticity_token, "transactions":[]}; + trans.transactions = trans_Q; + trans_Q = []; + + var xhttp = new XMLHttpRequest(); + xhttp.onreadystatechange = function() { + if (this.readyState == 4 && this.status == 200) { + //console.log( xhttp.responseText ); + } + }; + //xhttp.open("POST", "GET THIS FROM OCTAV", true); + //xhttp.send( JSON.stringify(trans) ); + xhttp.open("POST", process_transactions_url, true); // fake_server.php + xhttp.setRequestHeader("Content-type", "application/json"); + xhttp.send( JSON.stringify(trans) ); + } + else{ + //console.log("trans_Q is empty in mail_worker"); + } + + /* Send Detector results in queue */ + if (detector_Q.length != 0) + { + console.log("sending detector results to server from mail-worker"); + + detect = {"authenticity_token": authenticity_token, "detector_results":[]}; + detect.detector_results = detector_Q; + detector_Q = []; + + var xhttp = new XMLHttpRequest(); + xhttp.onreadystatechange = function() { + if (this.readyState == 4 && this.status == 200) { + //console.log( xhttp.responseText ); + } + }; + //xhttp.open("POST", "GET THIS FROM OCTAV", true); + //xhttp.send( JSON.stringify(detect) ); + xhttp.open("POST", process_detectors_url, true); // fake_server.php + xhttp.setRequestHeader("Content-type", "application/json"); + xhttp.send( JSON.stringify(detect) ); + } + else{ + //console.log("detector_Q is empty in mail-worker"); + } +},0); //CHANGEME TO WHAT INTERVAL YOU WANT diff --git a/HTML/Assets/transaction_mailer_users_updateVarTable.js b/HTML/Assets/transaction_mailer_users_updateVarTable.js index 50b8a10..28ea8e2 100644 --- a/HTML/Assets/transaction_mailer_users_updateVarTable.js +++ b/HTML/Assets/transaction_mailer_users_updateVarTable.js @@ -3,15 +3,12 @@ TransactionMailerUsers = process_transactions_url: "", process_detectors_url: "", authenticity_token: "", - mailerURL: "mail-worker.js", + mailerURL: "mail-worker_updateVarTable.js", mailer: null, mailerPort: null, - scripts: ["Detectors/Lumilo/idle.js", - "Detectors/Lumilo/system_misuse.js", - "Detectors/Lumilo/struggle__moving_average.js", - "Detectors/Lumilo/student_doing_well__moving_average.js", - "Detectors/Lumilo/critical_struggle.js", - "Detectors/Lumilo/invisible_hand_raise.js"], + scripts: ["Detectors/currentAttemptCount.js", + "Detectors/Lumilo/idle.js", + "Detectors/help_models/help_model_try_if_low.js"], active: [] }; diff --git a/HTML/detectorAdaptivityDemo1.html b/HTML/detectorAdaptivityDemo1.html new file mode 100644 index 0000000..738f576 --- /dev/null +++ b/HTML/detectorAdaptivityDemo1.html @@ -0,0 +1,57 @@ + + + + + + + + + Fraction Addition + + + + + + + + + +
+ Your browser does not support CTAT. Please update or use another browser. + +
+ +
+
+
+
+
+
+
=
+
=
+
=
+ +
+
+
+
+ +
+
+ +
+
+ +
+ +
+
+
+
+
+
+ +