Index - Methodology

January 07, 2012

Funnies with Timestamps

This is my second funny experience with a simulation environment. (Here's the first one, previous entry called Simulation funnies).

I am working with the Ecological Approach, which means that each time a Learner uses a Learning Object, a "stamp" of the current Learner Model is saved on the Learning Object.

In my simulation model, I have Learners randomly visiting learning objects and leaving stamps as they go.

At one point, I have to query to do a search for a particular Learner Model Stamp. For a primary key, I had (LearnerID, LearningObjectID, timestamp). Because a student would never visit the same learning object two times in the exact same millisecond. Right? Wrong. My hotshot computer is so fast and I have a small enough number of learners and learning objects that I did actually have duplicates, so, my "primary key" was not unique after all.

That's the funny part. hahaha, get it?

Anyway, to fix it, I decided just to insert a deliberate pause after each visit to guarantee the unique timestamp. This will slow down my simulation, obviously, but this is OK because I was already getting WAY more interaction than necessary for my model.

Posted by Frozone Permalink on January 07, 2012 03:09 PM | Comments (0)
categorized under Methodology




November 26, 2011

Building your simulation model: Identify your independent and dependent variables

I just went through my simulation model and I made a long list of all my variables. Examples:

- number of learning objects (LOs)
- number of categories of LOs
- percentages of the LO population in each category
- number of learners

etc.

Then I went through and I labelled each variable as "Independent" or "Dependent". An independent variable is one where I consider it to be a "lever" that I can adjust in my simulation model. There are most likely starting values that are most realistic or most likely to happen in the real world... like a degree of "typical" or "atypical" but there is usually necessarily some variation. These are the variables where I might want to perform "parameterization" where I try to discover the best starting values for these. Other variables might need "calibration" to real usage data, where I run a simulation a zillion times and have some sort of penalty function to try and match whatever inputs to my simulation that best fit the sample data. Then I would use the result of the calibration as input to run the simulation model AGAIN, only the next time instead of running it against a real live dataset, I would set the input parameters to be whatever I want and then use the output as a way of making a very well-informed prediction.

Whew! So that's independent variables. I found that MOST of my variables are independent variables. Right now I have 12 of those.

A dependent variable is something that I am trying to measure. I have 2 of these. One of my dependent varibales is a formula. The inputs are "learning object graph & learner attributes" and "path taken by learners" and the output is the "assessment / learning outcome". If I have a whole swack of data, I can use machine learning to discover this formula. This formula is my dependent variable. My thesis statement is a claim about this variable, I think.

So.... yeah. I just wanted to note that it was really illuminating for me to say aloud that the vast majority of my variables are Independent. I have an extremely high degree of uncertainty and complexity. I need to run some thorough sensitivity analyses just to understand my baseline.

This helps me solidify the kind of research I'm doing. How does this relate to other fields? Is the characterization of my work usual or unusual?

Posted by Frozone Permalink on November 26, 2011 03:06 PM | Comments (0)
categorized under Methodology




January 24, 2011

Generative Social Science

A while ago, I questioned the hullabaloo around the computation of Nash Equilibria. (see previous blog entry). I have just found someone else who asked a similar question: Dr. Joshua Epstein, in his 2006 book, Generative Social Science. This book is one of the recommended readings for the class I am taking this term (CMPT 858: Topics in Modeling and Operations Research).

Hopefully, it will be okay for me to share an excerpt from this copyrighted book for the purpose of highlighting the question around Nash Equilibria:

...game theory and mathematical economics (the twin pillars of contemporary social science) are overwhelmingly concerned with equilibria, Nash equilibrium being the most important example. Indeed, in these quarters, "explaining an observed social pattern" is basically understood to mean "demonstrating that it is the Nash equilibrium ... of some game". However, these are mere demonstrations of existence. Per se, they do not demonstrate that the configurations of interest -the patterns allegedly explained - are attainable at all... (from the Introduction, page xii)

The author presents their generative methodology as a more appropriate and more powerful tool to tackle the problem. I am really, really looking forward to reading the rest of this book!

Posted by Frozone Permalink on January 24, 2011 06:55 AM | Comments (0)
categorized under Methodology




January 12, 2011

Thesis topic

Well, folks: it's all starting to come together into a coherent project idea. I have my thesis topic!

I am going to build an eLearning system that can automatically incorporate new materials into the course.

Imagine you're learning something new, and that you have gathered a set of web pages that help you learn about the topic. My system will explore the ability to take a new web page (and, for it to be useful, the new web page would have something to do with the topic at hand, but this is not a requirement) and, given the starting set, it will be able to incorporate any new page in a meaningful way. Like, it will know whether the new page should be presented to a learner before pageA but after pageB, or perhaps as an alternative to pageC. My system will have built-in pedagogical structures like "is-example-of" or "is-generalization-of" to support the types of relationships between pages (and they wouldn't necessarily have to be pages; they could be youTube videos or a real-world instruction like "go take a walk to the monument in the park and think about topicX and come back with your thoughts".

The core data of my system will be in the theme of the work of my advisor, Dr. Gord McCalla, as in [McCalla 2004: The Ecological Approach to the Design of E-Learning Environments: Purpose-based Capture and Use of Information About Learners] .

For methodology, it is too early for me to know if I will be doing human subject studies or just run a simulation instead. I am leaning toward the latter, but have some work to do to convince myself that a simulation can still be meaningful (rather than just amplifying my own hypotheses!)

I have a thorn in my side about the value of Instructional Design. My thesis work will be making a lot of ID "unneccessary". However, I truly believe there is something to be said for ID. So, I have to figure out what that is, and what necessary pieces need to be built in. Right now, I'm thinking that the main point of a "course" is that it's an easy way to communicate to other people the nature of a set of learning experiences. Therefore, my system will have to have some kind of "learning objectives" built in, and having this will heal the ID-thorn in my side!

I am truly enjoying old posts on my blog like this one, from about 5 years ago. (Have I really been research blogging that long? LOL!) Re-reading that, today I know that I truly, truly have a different perspective and will be able to tackle these sorts of questions with sharper teeth.

Posted by Frozone Permalink on January 12, 2011 09:35 PM | Comments (0)
categorized under Methodology




March 20, 2010

Research Methodology #2

I have mused on this topic before.

I was just reading "What the Best College Teachers Do" by Ken Burns. I admired how they constructed their research methodology.

I am still not sure where my own work fits, quantitatively- and qualitatively-speaking.

Posted by Frozone Permalink on March 20, 2010 02:12 PM | Comments (0)
categorized under Methodology




November 01, 2009

Research methods

I want to do a study about instructional planning. It's hard to know where to start because I can't pinpoint what, exactly, it is about instructional planning that I want to create, to measure, to experiment with, to optimize... Nor do I know very much about conducting proper scientific studies. Well, that's not exactly true. I know quite a lot about science from general interest reading across the disciplines (cognitive science, psychology, sociology, medicine, optimizing algorithms...). I just want to note that I've never actually conducted a study myself.

I thought that this page was useful, from Birkbeck University of London. From this, I could kind of list or sketch out different types of research methodologies. (Simulations, case studies, empirical studies, proofs...).

I'm struggling a lot because I don't have an advisor with whom I can talk about these things. Sure, I have my friends who have done grad studies before, and I can surf around and read the blog entries of other students, or read "How To Be a Successful Grad Student" type articles written by professors, but it's not the same as having a real person or persons who know your work, whose job it is to talk to you about your work, and can share their wisdom with you. I am craving mentorship.

I think I'm going in the right direction... I mean, I'm working on my application for grad school by dusting off the ol' resume, planning to approach some professors for reference letters.... It just seems so FAR AWAY right now to me. I want to do research, but I feel like I have to jump through a million hoops before I can actually get down to business. The barriers seem very high to me. Perhaps I'm just feeling sorry for myself! Part of the problem is that I have very little (okay, zero) computer time at home, and I just have to get better at using my lunch hours and coffee breaks at work to get this stuff done.

Anyway, getting back on topic: Research methods. In the area of planning, your planning algorithm is successful if your agent reaches its goal while performing the fewest number of steps. This measure (the number of steps taken by the agent) isn't the right measure for my area. For instance, if an instructional planner is guiding a student through a guided exploration of some course material, throwing in some games or exercises here and there, it doesn't matter so much how many "steps" it takes for the student to "understand". I've talked about this and have put my thumb on this before: Utility, in my problem, is meaningfulness of the user's experience. (See related entries: My friend, the utility function, and This dichotomy)

So, is this an empirical study? Or am I doing qualitative research? Probably some of both.

I guess I really do need to define my problem better before I can design a study around it!

Posted by Frozone Permalink on November 01, 2009 01:57 PM | Comments (1)
categorized under Methodology




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
  1. Representing meta-data (fuel) & the different kinds of "hooks" that intelligent systems can use (how fuel is injected into the motor of the engine)
    1. Motivation: Semantic net / Rationalizable to a machine
      1. Semantic network
      2. Genetic graph
      3. Prerequisite AND/OR graph
      4. Constraint Satisfaction Problems
      5. Bayesian networks / causal graphs
    2. Technology & Philosophy: RDF, modus ponens,
      1. Predicates, Logic & situation calculus
        1. When in doubt, do some math
    3. What kinds of data? - What kinds of meta-data would an AIEd system possibly need, and how is it represented?
      1. task domain knowledge
      2. "is-prerequisite-to"-type knowledge
        1. Jackpot! A pedagogical ontology
      3. interactions with learning objects & other learners - (location, composition is-a/part-of, sequencing by restricting navigation, personalization, ontologies for LO context)
        1. Types of 'Ecological' data
      4. lesson plans, curriculum plans, practicing sessions (What is stored, what is generated on the fly? What is remembered?)
        1. Agent memory
    4. 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?
      1. Database of object-agent interactions
      2. 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.
    5. Links to the ontologies
      1. referring to a concept/relationship - ex. AgentOwl?
        1. Using Vocabularies in JENA
        2. Referring to a concept/relationship in an ontology
        3. Improved: Referring to a concept/relationship in an ontology
        4. Using OWL to reference constraints in tutoring systems
    6. Generation of this data
      1. Rationalization: For use by other AIEd systems
      2. What is generated - discuss items under part I.C.
      3. 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)
        1. Thinking about the system's RDF output
      4. Technical notes of HOW it's generated: JENA, issues of implementation demo, my Hermione & Ron agent examples, lol
      5. Usage of this generated data - see part IV. A.
  2. Given the engine, who uses it?
    1. Students / Learners / "Me"
      1. instructional planning, student model, pre-requisites, tutoring, coaching, collaboration,constructivism
    2. Teachers / Educators / "Me"
      1. putting together lessons
      2. 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
      3. compose examples, design explanations, pull together diagrams, learning objects, etc. Haystack Relo?
    3. Administration / Governement / Structure / Crowd Control
      1. as restrictions/obstacles/sand pit to the robot in agent environment
      2. 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
      3. government, marks, certificates, requirements, funding, curriclum, attendance, delinquent, non-attending, motivation
      4. school''s images, goals, strengths, payroll, HR, security, accounts, permissions, privacy
      5. registration, failed courses
  3. User Environment -- How does this engine work? What does the user see on the screen?
    1. 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.)
    2. 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.
      1. 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.
      2. "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
        1. Educating myself about Education
  4. Evolution of this engine
    1. target some key implementation hooks discussed in part I - design an experiment/demo
      1. scrape a page - (Note, scraping can only give objective data, not in-context dat)
      2. LO repository - related to browsing the task domain?
      3. a learners "To Do" list - where does it come from? Assignments, courses.
      4. sample group scenario
      5. sample teacher lesson planning
      6. sample data "left behind"
      7. sample use of that data
    2. Data mining (for what? lol )
      1. discovery / generation of ontologies - when do you need to hunt for them, and when do you have to have a solidly-known & predictable ontology?
        1. Ontological Engineering: taking a first bite
    3. I/O - where it happens, which languages, protocols, which agents perform i/o and when, precepts, actuators
      1. Role Assignments
        1. Levels of authorization in web applications
      2. My Environment Adapts to me
        1. Displaying feedback from the server on JSP pages (Software engineering considerations)
        2. Sketching out a design (Content planning vs. Delivery planning)
      3. agent negotiations / social structures / ummm... Web 2.0 ?
        1. Towards student modelling
        2. Anatomy of an agent
    4. garbage collection of meta data
      1. Artificial Intelligence & Evolution
        1. Memory Culling: Necessary part of intelligence? (artificial or human)
        2. Applications for the Genetic/Evolutionary algorithm
      2. open learning environments
  5. Agents, pets, grouping, Community modelling
    1. Protocols - finding groups, cyber dollars, state diagrams (?)
    2. "Community Studies" - graphs & communication hubs, types of communities (free-for-all, hierarchy of authority, etc.)
    3. implications of joining a community - what do you share, which parts of your student model are relevant
    4. Walls & sand traps -- deliberate restrictions as problem-solving for learning
    5. 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.
  6. 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.)
    1. Semantics - what there is to talk about in Education
      1. ex. Merril's First Principles of Instruction, linking educational terms to AI terms
        1. Educating myself about education
    2. Pedagogical skills for tutors -- supporting human *and* artifical tutors
      1. Modelling teaching strategies
      2. What is teaching?
      3. Decision theory for teaching strategies
      4. My pedagogical issues
      5. Ontological comparisons as spatial relationships
    3. Student modelling - what the machine needs to know about the student, pedagogically-speaking, about learning history/preferences
    4. Roles - Simulated students, Coaches, Tutors, Teachers,