Index - Environment & Distributed Planning
- Beware of Filter Bubbles (February 24, 2012)
- Simulation model to predict success of a sequence of LO visits (November 17, 2011)
- Recommender Algorithms and Datasets (November 17, 2011)
- Visualizations are delightful! Paths through LO repos (October 15, 2011)
- Ruttiness (October 01, 2011)
- My First Data Mining Adventure (September 03, 2011)
- Model-Theoretic planning and Cognitive Tutors? (September 03, 2011)
- Distributed Planning and my simulation (July 23, 2011)
- Snippets of Teaching Strategy, Snippets of Learner Actions (July 16, 2011)
- When prior explanation inhibits exploration and discovery (May 30, 2011)
- Does this count as SoTL? (May 12, 2011)
- Beyond hints (September 02, 2010)
- Christmas time & looking into one's past (December 22, 2007)
- A Living Environment: A popular science book on quantum physics inspires questions about virtual environments (July 25, 2007)
- Living 3D, Memories & Change (May 12, 2007)
- Information Layout in 2,3, and 4 dimensions (January 14, 2007)
February 24, 2012
Beware of Filter Bubbles
My supervisor recently circulated a link to this TED talk by Eli Pariser, "Beware online 'filter bubbles'". Very good talk for someone like me to listen to, seeing as both my academic and industry life work is in personalization and eLearning!
I also wrote on a similar topic in the entry, "Ruttiness". Check out SoloGen's comment about how this is sometimes called exploration-exploitation tradeoff; he gives a good paper reference.
|
Posted by Frozone Permalink on February 24, 2012 12:02 PM
| Comments (0)
|
|
| Tweet | |
November 17, 2011
Simulation model to predict success of a sequence of LO visits
The other day, I figured: "You know, I have to build a simulation model that predicts what the test score of a student will be after they follow a particular sequence of Learning Objects. I can base my results on Ecological Approach data which shows me the outcomes of similar learners who took the same path and went on to the future."
That way, if I have a data set with ACTUAL learner data hopping from learning object to learning object, and ACTUAL scores at the end, then i can run my simulation model so that fake learners take the same paths as the ones in the data set. If my simulation predicts the scores (i.e. if I look at the scores earned by my fake learners) then I can say that my model will make good predictions. Then I can tweak some input parameters to make predictions about what happens in a variety of other circumstances.
I believe I found a paper that kind of does this. A little. It is:
Effective Personalization Based on Association Rule Discovery from Web Usage Data
Bamshad Mobasher, Honghua Dai, Tao Luo, Miki Nakagawa
In Proceedings of the 3rd ACM Workshop on Web Information and Data Management (WIDM01), held in conjunction with the International Conference on Information and Knowledge Management (CIKM 2001). ACM, New York. (At the time of this writing, the paper is available on the first author's web page.)
In this paper, they used web server logs. I found this astoundingly interesting because I had considered using HTTP logs myself. But I gave up because I required an assessment associated with each path. For example: "Student goes to Web page A, B, C, and this interaction left them with a knowledge level at around a grade of B+"
These authors didn't need a grade. I read the paper carefully and I'm not sure if I am interpreting correctly, but, I believe that they kind of cut the user's path in two, and said that the first chunk is their path and the tail end of the chunk is the desired material that they were seeking at the end of the path.
I think. Did I interpret that correctly? I don't know. So, instead of using a grade at the end of the path, these authors used another learning object as a "target". The point of the authors' work is to recommend learning objects. Ideal, specific learning objects maybe. Right? I don't know. The point of my work is to help students follow a good path and I don't care so much about the specific learning objects that they actually visit.
I've never felt this close to anyone else's research before. This is so cool. I don't know what will happen next -- if I will keep going and completely veer in a different direction away from this paper, or, if I will actually build a simulation model that addresses something subtly close to this one.
|
Posted by Frozone Permalink on November 17, 2011 11:45 PM
| Comments (0)
|
|
| Tweet | |
Recommender Algorithms and Datasets
I am reading up on recommender systems and I was tickled to read about how there are known algorithms that are best suited to datasets that have "few items and lots of learners" vs. different algorithms for "lots of items and relatively few learners". COOL!
Title: Evaluating collaborative filtering recommender systems
Source: ACM transactions on information systems [1046-8188] Herlocker yr:2004 vol:22 iss:1 pg:5 -53
Authors: Herlocker, Jonathan L. (Oregon State University); Konstan, Joseph A.; Terveen, Loren G.; Riedl, John T.
PDF: ACM Digital Library
|
Posted by Frozone Permalink on November 17, 2011 11:07 PM
| Comments (0)
|
|
| Tweet | |
October 15, 2011
Visualizations are delightful! Paths through LO repos
Check this out, below. Click to see detail. 'Explanation below the image.
It's pretty crude, but you get the idea: The ring is just a visual dump of the learning objects in my simulation model. I have 100 objects; each has an ID number and each knows the number of times that it's been visited by a learner.
You'll also see 5 green spots; these indicate the learners. Each learner has a path composed of Learning Object IDs.
Each time I run the simulation, each learning object has a different number of visits and each learner has a different path of a different length. The length of the path is basically "the number of learning objects they were able to visit before the simulation cutoff time, given the fact that there is a pause between 0 and 1000 between each learning object visit." The purpose of my work is to find the leverage points and get an overall feel for the phases of the system, any emergent behaviour, etc..
Once I had this visualization, I was able to take the next step and figure out the path similarity metrics that I'm going to need for my path clustering. It also occurs to me that I'm going to need way more that 5 learners if I expect to be able to cluster their paths. I also expect to identify some data density issues.
The similarity metrics I have sketched out so far include:
- percent objects in common. For example, 50% would be if the learners being compared have half of their learning objects in common. (Hmm, how would I calculate this if the learners have different numbers of jumps in their paths?)
- number of subsequences in common
- number of subsequences in common where you allow up to N learning objects to be inserted as interruptions in the path. If a path meets the criteria, it is said to be homologous. (according to yours truly, hehe)
- number of subsequences in common where you re-define a sequence to allow certain learning objects to replace each other according to a certain threshold in a "learning objects likeness matrix".
The image was generated from a screenshot I took while I was using my simulation modelling tool, AnyLogic.
|
Posted by Frozone Permalink on October 15, 2011 03:13 PM
| Comments (0)
|
|
| Tweet | |
October 01, 2011
Ruttiness
I am building a simulation model to study the "paths" that people take as they are learning because I want to ultimately design a computer that can best support a learner by suggesting highly effective paths for people to take (and even influencing the path by interacting with the learner).
I am so early in this process. Currently, I have a system that creates random (empty) learning objects, and I can create any number of students who all hop randomly from object to object. Each learning object accumulates learner model stamps as time goes on.
Next, I have to implement some kind of system that compares learner's paths to each other. Why do I want to compare learner's paths to each other? So I can cluster them. Because some paths will be more like others. Why do I need to cluster them? Because I need to be able to take any learner, call her S, and look at their path so far, and find other "paths" like theirs. Then, I can predict ahead to see what these other students did in their paths in the future, and, use this information to suggest something useful to give to S to work from.
I am faintly bothered by something like the chicken and the egg problem. What will happen to my system once my learners start following recommendations and leaving learner model stamps on all the learning objects, and these stamps are used in the future in order to power future recommendations. If people follow what is recommended to them, and the recommendations are based on people's behaviour, then the system is actually feeding into itself. Won't like, everyone eventually fall into the same rut?
In the future, I need to be able to replace my randomly-generated system with a static (but real) dataset. Can we even start to predict what people will do? Is there a typical different kinds of behaviour that emerge from the nature of your starting set of learning objects?
The ability to replace the random data with the real data is what will allow us to make REAL recommendations.
I want to compare the "ruttiness" of paths from the random data with the real set.
So that is why I am writing this post. I want to take a crack at defining "Ruttiness".
See, in the system, each individual human can be said to have exactly 1 path. Take the earliest timestamp that they have, and sequentially line up the objects they visited until you reach the very last timestamp. This is their path.
If every agent has an identical path (meaning the sequence of objects that they visit is identical, but the timestamps do not have to be identical), we might say that our system has a Ruttiness of 0.
If every agent has an absolutely different path, we might say that our system has a Ruttiness of 100.
If some people have identical paths but most are still different from each other, we might have a Ruttiness of like 85.
Now, this isn't quite good enough. Because we might have 2 people with precisely different paths (i.e. no common sequences) but, it could be that there are 2 learning objects that are very much alike each other. So, we might want to treat them as being equivalent. So this is where we start having a homologous path.
How do I define a homologous path? Well, I have to declare likeness matricies between learning objects. Then, while we are comparing 2 paths, we'd take the analogous learning objects and declare them as the same if:
- they are indeed the same object
- they pass a certain threshold in the learning object likeness matrix.
This is good stuff. But I have to be careful when I am explaining this. Because it is deep enough already that I think I risk losing my audience.
So, I need to declare a likeness matrix for my learning objects. I will thank Chris for his suggestion to use a hashtable of hashtables.
|
Posted by Frozone Permalink on October 01, 2011 11:54 AM
| Comments (2)
|
|
| Tweet | |
September 03, 2011
My First Data Mining Adventure
Whew! I finally figured out how to do a very, very simple clustering of some data. Here is what I did.
1. Download RapidMiner. It is in Java so it runs on anything. Yay!
2. Create a new repo. I put mine on my remote student drive, but I couldn't get RapidMiner to work. So I created a new repo on my local computer's drive. I will have to remember to save it manually on my network drive. But at least it works! I was using either smb:// or afp:// to connect to my student drive, I am not sure which, nor am I sure if rapidMiner likes these protocols.
3. Next, go to the Operators view (i.e., it's a tab. In rapidMiner lingo, "View" means it's a tab.), Utility, Data Generation, Generate Data. Eventually I will change this to pull data from a database (which will be left there by AnyLogic) but this is easy for now. Drag the word "Generate Data" onto the canvas.
4. Look in the Parameters view. Fill in the blanks. I left it default, which gives me 100 random samples, each with 5 attributes.
5. Next, go under Modelling, Clustering and Segmentation, then pick Random Clustering. Drag this onto the canvas. Make sure the Output of the Generate Data box goes into the input of the Random Clustering box on the cavas by dragging the lines around. I still don't have the knack of this. Sometimes it doesn't let me do it. But somehow by clicking the semi circles in just the right way I was able to get "Generate Data" to connect to "Clustering".
6. Push the play button. THen switch to the Results perspective. You will see that there are some tabs "ExampleSet" and "ClusterModel". If you go on "ClusterModel" it lets you look at your 100 samples and look at them in folder view, graph view, etc.. Wooo! They are chunked into 3 clusters! (you can change that number 3 if you go back to the Design view, click on Clustering, then look in the Parameters tab and fill in the box for "number of clusters".
Yay!!!! Next I have to figure out which clustering algorithm I'm going to pick for the output of my simulation data. Maybe I won't need AnyLogic anymore; I'm not sure. Depends how much I want to fiddle with the input parameters. And, further, how this should inform the Planner.
|
Posted by Frozone Permalink on September 03, 2011 05:17 PM
| Comments (0)
|
|
| Tweet | |
Model-Theoretic planning and Cognitive Tutors?
What is the difference between Model-Theoretic Planning and a Cognitive Tutor?
I've recently picked up Model-Theoretic Planning (MTP). (see this entry, Model-Theoretic Planning).
I've known for a while that a Cognitive Tutor is basically a system that has a pre-set idea of the best way to solve certain kinds of problems, and that these systems can watch students as they go ahead and learn how to do the same thing. The Cognitive Tutor will intervene and bring the student back on track if they start to veer from the system's known way of solving the problem.
MTP is when your system has a certain "backbone" of things that must be held true or consistent throughout the plan, and it arranges all the other actions such that the backbone is held.
What is the difference, then? Here's what I figure. I guess in the case of the CT, the backbone is "the way to solve this problem". Whereas MTP is more general and could be applied to anything, for example, the teaching style. "Let the student do anything, let anything happen, but the system must always act in this way". Or, maybe in terms of the student model: "Let anything happen, except that we want the student characteristic X to stay the same." Hmm, I don't like that. Need to re-formulate.
Is MTP relative to the environment? Like, "Let anything happen, but only initiate activities that use the learning objects witch characteristic X". Hmm, I like that!
I really like that! Because with the ecological approach, you can name pretty much ANY characteristic.
So, if we have a purpose-based ecological "backbone" for the MTP, what are the other actions? Well, the other actions are the goals of the system. It's what your planner is doing while holding a certain characteristic true. So, the other actions must surround the feeding of the Learner's self-selected goals.
I had a chat with my supervisor recently about tutoring: When is it important to allow chaos for exploration, vs. when is it important to push the student in a certain direction & challenge them?
I wonder if there is a threshold that can be observed by examining the learner's behaviour and interactions in an e-learning system.
??? How does the system annotate progress toward a goal? We should learn to look at evidence, do pattern matching, make a guess based on the performance of others or known stereotypes of how learning looks.
I am left with this thought: What's the difference between Collaborative Filtering and Model-Theoretic Planning? (In terms of how I should employ them.)
|
Posted by Frozone Permalink on September 03, 2011 12:52 PM
| Comments (0)
|
|
| Tweet | |
July 23, 2011
Distributed Planning and my simulation
I am reading Automated Planning: Theory and Practice by Ghallab, Nau & Traverso. (still, hehe)
I learned about Decidability and Undecidability in Planning. There is a section about complexity theory and discussion about how much AI research goes into producing complete and correct plans; often if the problem is too difficult this cannot be done. But if you use some smart tricks, you can solve things some ways that you couldn't otherwise.
I think that this methodology (i.e. doing a decidability analysis) could offer a mechanism for technical evaluation of my technique. (For my thesis, I am developing a distributed instructional planning tool. Probably. At least, I'm putting together a simulation so I can formulate a hypothesis.)
Also, I shan't forget to continually refer to what is possibly the most successful and /or widely used distributed system out there: DNS
|
Posted by Frozone Permalink on July 23, 2011 01:03 PM
| Comments (0)
|
|
| Tweet | |
July 16, 2011
Snippets of Teaching Strategy, Snippets of Learner Actions
A while ago, I started a collection of Teaching Strategies. (See: A good survey-ish paper for my area and My pedagogical issues)
Today I realized I also require a collection of Learner Actions. What are some of the "atomic" actions a Learner would do while working away at their homework & studies? For example, "Trying to recall a fact", or "Articulating a question". There has gotta be a list of these somewhere (or, more likely, several smatterings of lists each with different intentions.) This entry will serve to house my own contribution of a list-smattering for Learner Actions.
- Trying to recall a fact
- Articulating a question
|
Posted by Frozone Permalink on July 16, 2011 03:54 PM
| Comments (0)
|
|
| Tweet | |
May 30, 2011
When prior explanation inhibits exploration and discovery
I'd like to thank my mom for forwarding this awesome article from The Economist (below). This informs my research about tailoring the environment, and when the system should take control vs. when the user should be asked to explore freely. To put this in the context of a bigger system, sometimes students get bored if they don't have anything to motivate them or any instructions to follow. It looks to me as if there are "phases", i.e. students should be allowed to explore and discover on their own when it's new, but if they want deeper learning then they could subscribe to more structure/motivation.
Summary: In the context of strange toys of unknown function, prior explanation does, indeed, inhibit exploration and discovery.
I put the rest in the Extended Entry box.
The Economist - Educational psychology. Now you know: When should you teach children, and when should you let them explore?
May 24th 2011
IT IS one of the oldest debates in education. Should teachers tell pupils the way things are or encourage them to find out for themselves? Telling children “truths” about the world helps them learn those facts more quickly. Yet the efficient learning of specific facts may lead to the assumption that when the adult has finished teaching, there is nothing further to learn—because if there were, the adult would have said so. A study just published in Cognition by Elizabeth Bonawitz of the University of California, Berkeley, and Patrick Shafto of the University of Louisville, in Kentucky, suggests that is true.
See the full article
http://www.economist.com/realarticleid.cfm?redirect_id=18741484
Visit http://www.economist.com for more global news, views, and analysis from The Economist.
This e-mail was sent to you through a link found on Economist.com. We will not send you any future messages as a result of your being the recipient of this e-mail.
|
Posted by Frozone Permalink on May 30, 2011 08:34 AM
| Comments (0)
|
|
| Tweet | |
May 12, 2011
Does this count as SoTL?
SoTL stands for The Scholarship of Teaching and Learning, which is about developing evidence-based methods to improve teaching, I think. I don't know a lot about it, but I am fortunate to work among many who do a lot of work in SoTL. Also, the University of Saskatchewan is hosting the STLHE 2011 conference this year (Society for Teaching & Learning in Higher Education).
My reason for posting is that I just stumbled upon this article and I wondered, is that SoTL? Learning Painting Styles: Spacing is Advantageous when it Promotes Discriminative Contrast. Published in Applied Cognitive Psychology, the authors performed a study that showed it's better to show art students paintings by various artists interleaved with each other, rather than focusing on a set of one artist's work, then a set of paintings from another artist, and so on. (I think that this assumes that the objective is to help the students distinguish and remember and describe the different paintings.)
Anyway, I thought that this was a very specific, advantageous finding, and could help many art teachers with their course plans. But I don't know if this counts as SoTL.
|
Posted by Frozone Permalink on May 12, 2011 08:33 AM
| Comments (0)
|
|
| Tweet | |
September 02, 2010
Beyond hints
I enjoyed this article: Is helpful software really helpful?, from The Endeavour by John D. Cook.
What is a supportive software system beyond hints, anyway?
|
Posted by Frozone Permalink on September 02, 2010 01:51 PM
| Comments (0)
|
|
| Tweet | |
December 22, 2007
Christmas time & looking into one's past
Christmas time always reminds me of previous Christmas-times.
We make a point of setting aside our busy lives - as painful as that is - (I myself am guilty of feeling, "I don't have time for Christmas, there's so much to do! Ugh!") - and even if it's just for a day or two, we stop to hang out, eat deliciously fattening food :-), and spend time with the people from our past: our families. We keep in our hearts the ones who can only be a part of our past: those who have passed away.
For me, 'tis a season of reflection.
This morning I spent some time in digital nostalgia, poking through some of my old projects. One of them is from my days as a middle-years Comp. Sci. student. I drew pictures of "my House", a product of my imagination, and strung them together with some rudimentary image maps. They now appear in the sidebar of this blog; feel free to have a look. There are about 15 rooms - can you find them all? :-) Go ahead, I'm inviting you in; click the front door.
http://blogs.usask.ca/slb534/House
Heh, heh. 'See if you can find the part where you leap off the deck and then eat an apple.
The sun room with my iMac is also kinda hard to find, but it's cool.
I have a few notes/regrets to publish along with the resurrection of my old house:
1) window.status messages: I really regret that these never became more popular out there on the WWW. As a site designer, I loved the ability to put in supplemental/optional/enriching information that would appear for a user to enrich their experience should they choose to look, while at the same time staying out of the way for the users in a hurry to keep clicking deeper. When I programmed my "house" site, I used a JavaScript "window.status" call to add extra information into the web browser's status bar. I don't know if there is a proper W3-way to do it these days. Anyway, my notes are still programmed in there, but they don't seem to be appearing in any modern browsers. Oh well.
2) On the same note, there are no supporting links to accompany the image maps. Originally, I was relying on the user's cursor to change from an "arrow" to a "hand" as they hovered over the image, and a tool-tip would highlight/hint more on what would happen should the user proceed into that part of the image. Again, at the time I didn't know how to follow the W3 standard - or if there even was one at the time - and I've never gone in to bring the code up-to-date (and I probably won't) so I will just say "Sorry!" in advance here.
3) Link back home... Once upon a time, my house here is what you'd get if you visited the domain www.stephaniebaribeu.net. I stopped paying for the domain name, and it's expired. Not to mention that my name is no longer "Stephanie Baribeau". heh. Consequently, the links back home don't work, so you'll have to use your browser's Back button. Sorry!
4) Looking back at some of my code, I now cringe. But this was the year 2003, I was such a n00b when I wrote all that. lol
|
Posted by Frozone Permalink on December 22, 2007 02:22 PM
| Comments (0)
|
|
| Tweet | |
July 25, 2007
A Living Environment: A popular science book on quantum physics inspires questions about virtual environments
Some six months ago I started reading Programming The Universe: A Quantum Computer Scientist Takes on the Cosmos by Seth Lloyd. I read about a third of it, and lately 'have only just picked it up and started reading again.
The reason why I purchased the book is that I was interested in a scientific perspective on how information - or even raw data - could be packed into a physical thing and then drawn upon in real-time as sprites pass through the evolving environment. What is fascinating to me is the concept that the molecules that make up a physical thing are not only there as matter, but are also serving like the 1s and 0s in a computer processor and that the entire universe is actually crunching numbers for a higher purpose.
In a way, I wanted to see if physical objects in a virtual environment could similarly capture data "within themselves", especially if those physical objects were representations of concepts-to-be-learned in an educational environment.
I'm sort of in an odd position in that I'm struggling to phrase "The Question". I know that I'm looking for something, and sometimes I feel like I'm hot on the trail for an answer, but I haven't yet figured out what to ask!! (Mmmm, I love research!!)
Questions, then: Wouldn't it be cool if you could just lay your hand on an object and then know everything about its history, how it was made, and who used it? This would be an application of data-packed-into-a-thing for queries of a historic nature. What other applications can I think of? Ah:
What if you were trying to understand a concept: how could "smart" objects in an environment help you? For example, maybe you have a large payment you would like to make, but haven't decided if you want to take all the cash out of your account at once, roll the amount into your current mortgage, maybe start a second mortgage, or maybe start a personal line of credit. So many options! And, as the banker explains all of this to you, your eyes glaze over and you struggle to keep up with the lingo. Wouldn't it be lovely if a nice diagram were made available to you and you could move around visual representations of your funds and watch as the interest rates accumulate over time? Maybe I'm just dumber than the average joe, but I need help to understand everyday things more often than not, and I dream of having an environment that would allow me to see and touch abstract concepts so that I am able to anticipate consequences and thereby make better decisions.
This afternoon, I logged into Second Life with the noble purpose of exploring its scripting language so I could build what I have just described in the previous paragraph. Alas, I didn't get very far!
I did come up with more questions, though, where having data "packed in" to a physical object in the environment may apply in a solution:
How do I see who is close to me? Could the environment itself record that kind of data? How about a list of names of the people who were here *recently* but are now gone?
How do I know "who hangs out here"? Like, what if I travel to an area that's totally deserted but there's some neat architecture and some interesting resources lying around: how do I know which groups are affiliated with a particular area? Can I expect anyone to show up soon? How do I know if the people around here are friendly and if their interests are similar to any of mine? How do I know which people are "older" (more experienced in the topic-at-hand) and which ones are "younger" so that I might be in a position to help them?
Re-reading my questions, I'm sure that there are tons of academic papers on the subject. 'Time to roll up my sleeves, methinks! In the meantime, check out my Second Life comic series where I attempt to explore such questions in comic-strip-format, to be added in moments to the right-hand column of this blog, under Other Projects!! ;-)
|
Posted by Frozone Permalink on July 25, 2007 04:06 PM
| Comments (0)
|
|
| Tweet | |
May 12, 2007
Living 3D, Memories & Change
It's harder than I thought, coming back here and sitting in front of my blog after such a long hiatus. So much has changed; A month ago today I had a different job, and I wasn't dealing with the death of a loved one.
Despite all the crazy things that happen, somehow, some of us are still here on this Earth and we've got to figure out just what to do with ourselves: How do we keep going? Why are we here? When will I find time to do everything that I want to do, and why am I so busy, anyway, when all the business of life can be so irrelevant in the grand scheme of things? Is it okay to still value the things I valued before? How can I be available for all the people that rely on me, and does anyone really need me anyway? So many quesions!
Today, I want to talk about 3D and computer games. Is that silly and childish in the "grown up" world, where certainly there are more important concerns?
I've been having a lot of conversations lately with colleagues about teaching and learning in 3D computer environments. As a retired gamer, these conversations strike nostalgic memories for me: remembering the joy of exploring new worlds, hanging out with friends and of accomplishing great feats together in-game. Isn't that the dream of every computer scientist? To turn school into a computer game? (In a deep, dark corner of my soul, that is what motivates me, too!)
Maybe this is '90s mentality, but I also feel guilt for enjoying time spent in-game. Is it okay to have friends that you've never actually met in person? To interact with people through a computer game that you pay some $20/month subscription to participate? Maybe I should have spent those years developing friendships with my flesh-and-bone acquaintances instead. But, looking back now, I wouldn't trade those memories and those in-game friends for anything. It doesn't even matter that we don't keep in touch anymore: at the time, we had great experiences and each grew up in our own ways. Circumstances changed, time passed, and now we are all somewhere else, doing different things.
The point of my blog entry today is to explore the boundary between deep-thought & academia, and the social-level of people interacting with people, and the hope that maybe 3D game-like worlds can help bridge the two. In my gamer experience, the deepest thought and the most intense interaction with subject-material occurred when a person had individual time to mull over subject-material and prepare something that would be put forward to the group, and at that time a less-intensive activity among group members would allow us to interact with the subject-material together and share our own impressions and differing ideas, while each adjusting our own preceptions and understandings.
As I get older, I'm slowly learning that not everybody is like me. (heh, heh!) Personally, I learn most effectively when I've absorbed the material on my own and can kick back and relax later on in a group setting where I watch people "being silly", and not concentrating as much as a group, but still sharing the subject-material with each other and mulling over it in different ways in different angles that weren't possible on an individual basis. My own perception of group-activity is that it's "less serious" and less effective for learning, but still important to help with the overall big-picture understanding of the subject material. Apparently, not everyone perceives learning in the same way that I do... :-) Some people get their "deep learning" from participating interactively. I'm not one of those people, but I certainly would like to come to a better and more loving understanding and respect of that type of learning.
Educational psychology aside: For learning in 3D worlds, there are ways to interact with subject-material both on an individual basis and on a group-basis, though certainly instantiating "subject material" in a 3D world is a huge challenge. Say you're learning math. How do you put that in a 3D world? But that is a problem for another day! Before tackling specific subject-material, I wanted to focus on the abstract infastructure of learning in a 3D environment. I spent some time trying to develop a "master algorithm" of sorts that would facilitate the different types of learning styles and encourage participation and, most importantly, would further each person's understanding of the subject material through their participation. I wanted to find a way that would get people working together, would encourage them to pursure the subject material, and would be highly visual and interactive using the 3D environment.
I noted that clusters of people around a particular piece of subject-material can be like a circle, with a core group of people who area really interested and highly involved in the material at the centre, then on the fringes would be people who have passing interest in the subject but are not intensely involved or motivated. Later on, I learned that other people were calling this circle of people a "learning community", to use present-day lingo. For the sake of the game, I imaged a goal and a set of restrictions:
The Goal: Distribute items of value (physical objects that you can see in 3D) to players/learners participating. The nature of the game is that each person is always seeking a certain kind of item in order to reach their goal: the item being a fact or tidbit of knowledge for an assignment, a technique, a "learning object", whatever.
The Restrictions: Physical distance, "monsters", artificial challenges or obstacles to surmount, puzzles, games, problems, exercies, drills
Next, I outlined different levels of participation. There were 3-5 core people who would have to take some initiative and specifically gather certain items and go out of their way to distribute them to other players in order to jumpstart the network (or "master algorithm", however you think of it).
On the other extreme, on the outside of the network where people have only passing interest and are mostly preoccupied with other things, I wanted a stranger to be able to contribute smething very small in an impersonal manner - very low risk - and receive something small but beneficial to them in return. (The thing that they are contributing could be anything: food, a picture, a though, a snippit of a composition of music that they had created, a few minutes of their time completing an easy activity, etc.)
Gradually, as you become more involved, you spend more effort gathering items to contribute and in turn you receive more in return (material things, experience, coming to better understanding of subject-material, etc.).
The algorithm, if you'll call it that, looks a lot like a bartering netwoork, but distributed at smaller hubs, using focus to bring forward material that is interesting to you. The advantage is the "sorting" of relevant material up from the masses of knowledge out there that would otherwise be impossible to sort though. The algorithm is also designed to foster collaboration -- it's people themselves who power the information-flow though their efforts and their desires.
The whole thing is so abstract and hard-to-reach that I didn't get very far. I tried to implement the thing with a few friends in EverQuest, where we would actually trade weapons and armor and stuff as we each worked on our own quests and gained experience, but it was way to hard to study a computational model when I didn't have the motivation or desire, really, to get my friends to act like puppets for my experiement. Then, when I came back to read my notes I thought that I was talking nonsense and wasn't going anywhere, and maybe everyone would think I was a busy-body lunatic. Oh well. =)
My notes keep going to talk on about how technology has allowed us to transcend space and communicate without restriction, and about how I am interested in how technology is also transcending time, allowing us to transfer knowledge (ex. reading & writing) without actually meeting at the same time, and about how people can leave nuances and shadows of their personality behind like fingerprints to share their knowledge and experience with others without practical restrictions holding them back such as commitments to meetings, conference calls, stress, laziness, etc.. But now I'm getting rambly and I think my blogging is done for the day.
That was actually refreshing. As always, now I shall conclude with a commitment to go do some housework. Bye!
|
Posted by Frozone Permalink on May 12, 2007 12:06 PM
| Comments (0)
|
|
| Tweet | |
January 14, 2007
Information Layout in 2,3, and 4 dimensions
Sometimes I worry that I'm too preoccupied with the magical and the fantastic, and my efforts veer too far away from real science -- like a little girl wearing a princess hat, waving her sparkly magic wand.
Oh well.
I was thinking about information layout, and about how nowdays it's so 2-dimensional. For example, on the 'Web, sites are usually organized into columns and rows; there's no depth. I struggle to find creative navigational techniques to teach my students -- I have taught lessons on making tabs, drop-down menus, 3-column layouts, image maps, etc. -- but all of that is stuck in the second dimension.
In the three-dimensional world, there are some successful navigational schemes out there. In Celestia, you can use your arrow keys and velocity settings to zoom around through the Universe and visit the Sun, the moon, Jupiter, Pluto, Andromeda, or the NGC 3227 galaxy, if you wanted.
My first experience in Celestia mildly frightening: Travelling ten-times light speed and becoming disoriented with the navigational controls, I looked around - "What is Toutatis? Kleopatra?" They were asteroids, and I was speeding by somewhere near Jupiter. Whew! It was really cool when I discovered how to "Warp" between galaxies, and I saw what the Milky Way looked like from Andromeda's perspective.
'Goes to show ya that there is no limit to the amount of "stuff" you can navigate through. You just have to go at high warp speeds to move between large grain-sized nodes, and, gradually slow down your speed if you've reached a galaxy and want to cruise between the smaller stars, slow down again to visit planets, etc.. It's all relative. Celestia's use of the mouse wheel was also very good - it lets you zoom in and out so you can see many galaxies at the same time, or even just the moons orbiting around Uranus.
Another obvious successful 3-dimensional navigational scheme is in World of Warcraft, where you can walk around through villages, terrains, castles, etc. Similarly, if you are interested in executing atomic actions (talking to people, buying stuff, reading a sign, fighting a monster, etc.) you use a "slow" method of navigation: walking. To move great distances, say from city to city, you'd use a faster method: fly on a bat or bird-mammal. Once you reached the next city, you'd dismount, return to "walk" mode, then continue to execute atomic actions. The actions executed at "fly-level", however, do not affect your possibilities at "walk-level", i.e. Stopping in City-B as you travel from City-A to City-C doesn't affect what the Inkeep says to you when you land in City-C. ('Unless you're working on a "quest", but these are rather one-dimensional and are hard-coded.) Actions at large levels should be able to subtly affect the possible actions at smaller levels.
I'm interested in building interfaces in the Educational domain where actions at large-grain levels -would- affect the system's behaviour when you moved back down to smaller-grain actions/concepts. For instance, as you move from subject to subject, the analogies that the computer could make back down at the "walk-level" will change according to your past experiences at the "fly-level". For example, if you think of "cities" as "subjects", then, as you navigate from "Math" to "English" and you learn something about English, then the computer can now draw upon references in that domain (ex. characters from a work of literature) to use in the context of, say, illustrating a concept in an integration problem. The computer could contrive an example involving Sir Lancelot and Lady Gwenevere from that morning's English Literature lesson:
"Sir Lancelot wishes to build a wishing well for Lady Guinevere, and he knows the diameter of the well's opening and he also knows the well's the depth. How would he calculate the volume using a Riemann sum?"
I have to pay attention to the distinction between "content" and "delivery": A pretty 3D interface doesn't necessarily mean that the system is more advanced when it comes to planning lessons and tutoring and so on. However, more dimensions in an interface does provide more flexibility in the manner that lessons, plans and possibilities are accessible to a student.
More interesting, I think, is the multi-dimensionality of information presentation (not "how it looks" but, rather, "what it is; which information") and how different scraps of information can be mixed and matched together. I wonder if such lesson-crossing *would* evenutally require a 3d layout to navigate though. Hum.
How about a 4-dimensional interface? If you could see in 4 dimensions, then, you would be able to see all six sides of this cube at the same time. (Forget for a moment that you are reading this on a computer screen.)

Thinking both content-wise and display-wise, would the use of 4 dimensions give us yet more power and flexibility in terms of how we can "navigate around" our education?
I have enough trouble visualizing 4-dimensions in space alone, let alone knowledge-organization. I stared at this four-dimensional "cube" from Wikipedia for about ten minutes and tried to think about the problem from different angles:

Was the fourth-dimension perhaps a way to operate on the very levels of information-clustering (granularity) itself?
Was it the ability to examine the post-requisites before the pre-requisites?
Was it the ability for each type of knowledge, to "peek ahead" and see what it will look like after I have worked through what is currently on my plate? i.e. all the "atomic actions" of exercies and assignments I'm supposed to do? This is reminiscent of possible worlds or parallel universes or "lines of possible destinies" or whatever.
Was it the ability to see everything in reach at once? (i.e. all possible next-steps in all subjects) And move them around?
Or, is the fourth-dimension the ability to pause on a problem, meditate on it, and then be able to draw in all of the relevant references to abstract knowledge for that specific problem that may currently be "scattered" (well, organized) in my current "planet" for this problem. References to items in the coarse-grained subject "English" may be "way over there" because I'm working on the subject "Math" right now, but maybe task-domain-knowledge references from both are required to solve this problem, so I need to be able to reach beyond "here" to grab all those references and apply 'em to my current activity. The references to knowledge are always "here" anyway, just not in my "walk-around" mode-view.
How would you generate visualizations for all of this stuff? It would be cool to draw upon an API for Terragen or something and then build an Earth/trees/forest/planet/universe/buildings/rooms metaphor to help orient abstract knowledge-navigation into something understandable.
Further, I think it's important for learners to be able to create their own "thoughts", kinda like how you can make your own physical objects in as in Linden lab's Second Life. (At the time of this writing, the hyperlink shows a virtual-man using his "thought-powers" to create a guitar before our very eyes. So cool! =) )
Lots of questions, and now my imagination is sore. 'Time to get back to reality, I think, and maybe pull out some more papers.
heh heh heh

Pretty picture from jandingo.com.
|
Posted by Frozone Permalink on January 14, 2007 10:50 PM
| Comments (0)
|
|
| Tweet | |
Index to Steph's Notes
Feb. 24th 2007 - Weee! This new part of my website is not an entry, but rather a permanent fixture whose purpose is to "Look Down on All Those Notes With Some Grand Vision of Organization". Wish me luck. LOL- Representing meta-data (fuel) & the different kinds of "hooks" that intelligent systems can use (how fuel is injected into the motor of the engine)
- Motivation: Semantic net / Rationalizable to a machine
- Semantic network
- Genetic graph
- Prerequisite AND/OR graph
- Constraint Satisfaction Problems
- Bayesian networks / causal graphs
- Technology & Philosophy: RDF, modus ponens,
- Predicates, Logic & situation calculus
- What kinds of data? - What kinds of meta-data would an AIEd system possibly need, and how is it represented?
- task domain knowledge
- "is-prerequisite-to"-type knowledge
- interactions with learning objects & other learners - (location, composition is-a/part-of, sequencing by restricting navigation, personalization, ontologies for LO context)
- lesson plans, curriculum plans, practicing sessions (What is stored, what is generated on the fly? What is remembered?)
- How to organize it - When is it stored in a database? Meta-data? Agent memory banks? Protocols? Repositories? XML files? Home-servers? WSDL services? Frameworks? Portable banks? P2P access?
- Database of object-agent interactions
- Concept of "Home" on a P2P network -- maybe the bulk of a learning object's usage data is on its home server and can be queried using WSDL or something ? Similar homes for each student's usage history, etc. Baggage problem.
- Links to the ontologies
- referring to a concept/relationship - ex. AgentOwl?
- Generation of this data
- Rationalization: For use by other AIEd systems
- What is generated - discuss items under part I.C.
- When it's generated - describe procedural model, which parts of the engine generate what (isa-part-of data, XML feeds, web services, meta data bout groups and collaboration, protocols, examples Friend of A Friend FOAF project)
- Technical notes of HOW it's generated: JENA, issues of implementation demo, my Hermione & Ron agent examples, lol
- Usage of this generated data - see part IV. A.
- Given the engine, who uses it?
- Students / Learners / "Me"
- instructional planning, student model, pre-requisites, tutoring, coaching, collaboration,constructivism
- Teachers / Educators / "Me"
- putting together lessons
- be able to browse through task domain knowledge in an objective / encyclopaedia format, then be able to pick-and-choose what you need for your students
- compose examples, design explanations, pull together diagrams, learning objects, etc. Haystack Relo?
- Administration / Governement / Structure / Crowd Control
- as restrictions/obstacles/sand pit to the robot in agent environment
- can't just have a swarm of students and teachers out there -- need structure of courses, curriculum, objectives, requirements (at least, we do in this day and age!) - Report cards, evaluation, feedback
- government, marks, certificates, requirements, funding, curriclum, attendance, delinquent, non-attending, motivation
- school''s images, goals, strengths, payroll, HR, security, accounts, permissions, privacy
- registration, failed courses
- User Environment -- How does this engine work? What does the user see on the screen?
- Introduction - Given a background in educational psychology, how does the system present itself -- what does the user see, and were does this data come from? Links to thoughts from part I.)
- Task Domain Browsing - Suppose you're you're just idly browsing through the "raw" content. How would it look when it's not wrapped around a learning-context or lesson or tutorial or anything. 'Cross between browsing a raw task domain ontology and browsing a learning object repository.
- Cleaning up the data -- Visualizing the data for humans to pick through the task domain and work on it. Suppose the "Subject Expert" discovers an advancement in science and needs to update the "world's" domain knowledge. (I used the "Subject Expert" terminology from Ontologies to Support Learning Design Context - Thanks Chris) How would they make corrections to ontologies and learning objects, or at least point the users of "old" objects towards adopting the newer ones.
- "Modes" - Learning & Lessons / Checklist - Homework, Assignments, Courses being taken / Collaborative mode / Teaching mode / Calendar- email -adminisrative mode -- See also the different kinds of scenarios in the ActiveMath system
- Evolution of this engine
- target some key implementation hooks discussed in part I - design an experiment/demo
- scrape a page - (Note, scraping can only give objective data, not in-context dat)
- LO repository - related to browsing the task domain?
- a learners "To Do" list - where does it come from? Assignments, courses.
- sample group scenario
- sample teacher lesson planning
- sample data "left behind"
- sample use of that data
- Data mining (for what? lol )
- discovery / generation of ontologies - when do you need to hunt for them, and when do you have to have a solidly-known & predictable ontology?
- I/O - where it happens, which languages, protocols, which agents perform i/o and when, precepts, actuators
- Role Assignments
- My Environment Adapts to me
- Displaying feedback from the server on JSP pages (Software engineering considerations)
- Sketching out a design (Content planning vs. Delivery planning)
- agent negotiations / social structures / ummm... Web 2.0 ?
- garbage collection of meta data
- Artificial Intelligence & Evolution
- Memory Culling: Necessary part of intelligence? (artificial or human)
- Applications for the Genetic/Evolutionary algorithm
- open learning environments
- Agents, pets, grouping, Community modelling
- Protocols - finding groups, cyber dollars, state diagrams (?)
- "Community Studies" - graphs & communication hubs, types of communities (free-for-all, hierarchy of authority, etc.)
- implications of joining a community - what do you share, which parts of your student model are relevant
- Walls & sand traps -- deliberate restrictions as problem-solving for learning
- Communication channels - individual-to-individual, individual-to-community, chat channels, agent-only "administrative" communications, ex. requests for related learning objects in a particular community, etc.
- Educational/Pedagogical focus (this part probably shouldn't be its own section but rather incorporated into the whole picture, but it's separate for me right now because I'm still only just starting to learn about it.)
- Semantics - what there is to talk about in Education
- ex. Merril's First Principles of Instruction, linking educational terms to AI terms
- Pedagogical skills for tutors -- supporting human *and* artifical tutors
- Student modelling - what the machine needs to know about the student, pedagogically-speaking, about learning history/preferences
- Roles - Simulated students, Coaches, Tutors, Teachers,
Syndicate this site (XML)

