Adaptive JSXGraph diagrams in STACK collaboration

Adaptive JSXGraph diagrams in STACK collaboration

by Santiago Borio -
Number of replies: 17

Hi,

Me and some colleagues are starting to work on adaptive diagrams in JSXGprah for STACK questions. I understand that this might be relevant to several STACK users and I would be happy to understand what other people are doing with this, what progress might have been made for successful implementation or get new ideas to try to implement.

Currently we are looking specifically at using JSXGraph events and states to test graph sketching skills in a number of ways but second in the list is looking at dynamic geometry apps that work for secondary school style geometry questions, but could also be applied in other contexts - I imagine for example many questions in mechanics were getting the right diagrams is an essential component and a similar approach could work. 

If anyone is interested in sharing ideas or working in collaboration I welcome comments in this thread. I will soon comment myself with some examples.

Thanks!

Santiago (Education Lead - IDEMS International)

Average of ratings: -
In reply to Santiago Borio

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Martin Kraska -
Hi,

I am teaching engineering mechanics and at times use JSXGraph in STACK questions. Nothing elaborate, just parametrized sketches for the question texts and for feedback. I attach a simple example.

Outside STACK, I tried to create some interactive mechanics toys, but this takes a lot of time, because I am not a skilled js programmer.
Thus, even though I made some JSX STACK questions, I still sometimes rely on {@plot()@}, because this can be edited in the standard editor and isn't that complex like JSX.

Something really cool would be automatic grading of free body diagrams.

Of course I would be happy to contribute to and benefit from some collaboration or repository.

Martin
In reply to Martin Kraska

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Santiago Borio -
Hi Martin,

Thanks for the interest. I am hoping to get to something related to automatic grading of free body diagrams and should have a very simple example to start from in the next few days, time permitting. I will check out your question tomorrow morning, thanks for sharing.

The idea of mechanics toys seems interesting, do you have an example of such a toy? Is is like the Rouleaux Solids for example?

I will share updates soon.

Thanks,
In reply to Santiago Borio

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Martin Kraska -
These are the toys I have.  I offer them to the students within my moodle course together with some tasks for making observations (just formative, without feedback or assessment) , Therefore these toys live in text fields, not in STACK questions.

Making them took me nearly two weeks of my last winter holidays, because I have no background in javascript and my workflow is based on an external editor with syntax highlighting (Scite). I copy the code into moodle after editing. It happened too often that I messed up the code by opening and saving the object with the wrong editor setting.
So I hope for some hints on efficient and less frustrating workflows from the experts.

I spent considerable effort in trying to tweak the placement of labels. Yet it is far from really being smart. There is also a glitch in the last example, which I just saw now that I made the screenshots.

My wishlist for similar parametric/interactive toys:

- Shear and bending moment diagrams for various support and loading conditions
- experiments with rope friction (interactively change direction of slip and angle of contact)
- Mohr's circle for stress, stain and inertia tensors
- Elastic line for various support and loading conditions

I implemented an interactive FEA program for straight beams in SMath Studio. You can open it in the cloud version of SMath Studio. Follow the download link for the .sm version.
There is also a download link for a stand-alone executable.
Unfold the region "Instructions" to get some guidance.
The application was primarily a show case of the so called "modeller region" in SMath Studio.
It should be possible to transfer the back-end functions to javascript, yet that would be far beyond my current capabilities and time budget. The model input is entirely derived from the geometric properties of the graphic objects (height of forces, moments, distributed loads scales the value, thickness of the beam scales the stiffness).

Martin Kraska

Attachment 2020-05-13 00_00_53-Moodle ‎- OneNote for Windows 10.png
In reply to Santiago Borio

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Stephan Bach -

Hi,

I would also be interested in such a collaboration/repository. I'm mainly involved in mathematics for bridging courses and engineering studies and I have just started to use interactive JSXGraphs more often in my questions, especially to have a bigger variety of question types and to enable "sketching-like" questions.

Stephan.

In reply to Stephan Bach

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Santiago Borio -
Hi Stephan,

Graph sketching is a particular interest that I have as I am working on calculus related questions and other similar secondary school/first year university questions and there has been some progress but unfortunately not fast enough. I am hoping that within a month or so I will have two approaches for graph sketching questions, including one with hand/mouse sketching! I have a pilot question but unfortunately I'm not the author so I will have to ask for permission before sharing. This paper describes it: https://zenodo.org/record/2582427#.Xrm-rchKjZs (I am working with one of the authors of this paper on this).

Thanks for sharing your question, I will check it out tomorrow morning.

Thanks,

Santiago
In reply to Santiago Borio

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Alfred Wassermann -

Hi all, 
this is a very interesting discussion! I'm the lead developer of JSXGraph and I'm extremely impressed by the graph sketching tool described in https://zenodo.org/record/2582427#.Xrm-rchKjZs. Please, allow me to mention two possible ways in which the applet can be improved (maybe): 

Further, I'm the leader of the European ERASMUS+ project ITEMS (https://itemspro.eu) where incorporation of JSXGraph in STACK and FORMULAS is tested. Please ask our partner Bernat Martinez, who is probably following this forum or can be reached via the ITEMS platform. He has done exciting work regarding automatic grading in his physics course.

Best wishes, Alfred

In reply to Alfred Wassermann

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Santiago Borio -
Hi Alfred,

Many thanks for your interest! We discussed polynomial regression as a possible way forward for this question and I think that it would work brilliantly. Other types of regression would also work very well for sketching other graphs as well (exponential, logarithmic, etc) but maybe not so well for less-standard curves, so having an alternative would be great. We also are thinking of drawing a 'sausage'-like curve around the teacher answer and checking whether the student answer (or a polynomial regression) would fit inside it for enough intervals. We are still in development stage though and creating the relevant STACK functions though so progress for this might not happen as quickly as I would like due to time constraints. 

With regards to sketchometry, I found it very nice and see how this could help but in the little time I spent exploring it I haven't been able to find how to get the code to bring back to a jsfiddle from a construction I built. Is this possible at all or is it wishful thinking?

I will take the opportunity to pose you a related question here if you don't mind (I haven't yet checked the JSXGraph google group about this, sorry if it has been discussed there). I got stuck with a JSFiddle recently as I needed to load js maths functions that are not loaded by default. Is it possible to load extra functions from other js libraries?

Best wishes,

Santiago
In reply to Santiago Borio

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Alfred Wassermann -
Hi Santiago,
you are right, sketchometry constructions are not easily exportable to jsfiddle. But I wanted to mention that a possibility is to create a spline curve out of the student's sketch and analyze the sketch. Another way to go might be to remove points of the curve, but leave its characteristic shape, see RamerDouglasPeucker or Visvalingam in https://jsxgraph.org/docs/symbols/JXG.Math.Numerics.html .

Can I use math functions from other libraries? Yes, of course. The only obstacle could be that the loading might be asynchronous and the function is not available when used in JSXGraph.

Best wishes,
Alfred
In reply to Alfred Wassermann

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Stephan Bach -

Hi,
other than in the article on Zenodo I was also thinking of (and started to work on) using polynomial splines to draw the graph. This is more different from classical paper-pencil-sketching but it has some advantages too, e.g. it can nicely be done by using a mouse. And it might make analyzing the graphs easier too.
Stephan.

In reply to Stephan Bach

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Bernat Martinez -
Hi,
some examples of using JSXGraph in STACK questions can be seen at ITEMS project site (create an account or use gmail account)
STACK+JSXGraph

Most are Maths examples created by Aalto University partner, construction code is shown in the questions.
We have tried to create some Physics examples, e.g. drawing vectors (XML file attached)

In reply to Bernat Martinez

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Martin Kraska -
Hi,
Thank you for the link to the examples. I played around a bit with the question you attached and it helped a lot to get started with graphical input for moodle quizzes.

I tried to parametrize a bit, but soon found out that many parameter combinations won't work. Testing them manually is no fun. I think that one could write an automatic version generator, which tests if all the required points are on grid points. Yet that would only be justified as a contribution to some public repository.

What is the state of the ITEMS project? How can I access the question bank? I found that in some areas I can access the source, in some I can't.

Martin
Attachment 2020-05-17 18_35_09-Vorschau Frage JSX Input 2.png
In reply to Martin Kraska

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Bernat Martinez -
Hi Martin,
ITEMS project is now in its second year, it will finish next year. 
Most work on STACK+JSXGraph has been done on Maths, and will be shared through Abaccus.
As regards Physics most activities are for High School level and have been developed on FORMULAS+JSXGraph. 
They are being tested at schools in Spanish, our intention is to make  source available  free before the end of the project once they are revised and translated to English.
Please let me know which areas are you interested in accessing the source. I will try to give you access

Bernat
In reply to Bernat Martinez

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Martin Kraska -

Bernat,

Thanks for the information. Unfortunately, I don't have access to ABACUS. My university (Technische Hochschule Brandenburg) isn't listed in the login form. Perhaps we aren't member of eduGAIN.
As to the ITEMS project, I'd like to have a look at the questions in STACK and JSXGraph. This seems to be quite close to what I am trying to do.

Martin

In reply to Martin Kraska

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Bernat Martinez -
Martin, now you may have a look at the question's code in STACK and JSXGraph.
They are also attached
In reply to Bernat Martinez

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Martin Kraska -
Bernat, thanks a lot for the question sources. That will definitely be helpful. I confirm successful access via ITEMS moodle and also had no problem importing the questions.

Martin
In reply to Santiago Borio

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Santiago Borio -
Hi all,

I am sorry for my absence from the forum and lack of updates from my side. I have been unwell for over 2 weeks with covid-like symptoms (tested negative but there seems to be false negatives going on). I am starting to feel better and slowly catching up with work. I might be absent for a short while still. Once I am fully recovered my suggestion would be that I could draft some additions to the STACK documentation and collate some examples for the demo site as a starting point. We can then see what everyone else might find useful.

All the best,

Santiago
In reply to Santiago Borio

Re: Adaptive JSXGraph diagrams in STACK collaboration

by Martin Kraska -
Santiago, my best wishes for your recovery. Too bad having gone through covid without official proof of immunity sad

I am still in the hope of finding a better workflow for editing questions. Until now I just use the moodle interface and build the questions using endless sequences of saving and previewing, sometimes trying out something in wxMaxima. Currently I spend approximately one to two days per week with stacking.
I have read something about a Maxima sandbox outside Moodle and there seems to be some type of Maxima command line inside moodle. Yet I didn't really get started with this.
It seems to me, that with a good non-invasive html editor, offline editing of the xml source might be best for productivity.
So I am really looking forward to hear how the fulltime stackers handle their workflow.

Martin