U.S. patent application number 13/271328 was filed with the patent office on 2013-04-18 for course skeleton for adaptive learning.
The applicant listed for this patent is Satish Menon, Jayakumar Muthukumarasamy, Partha Saha, Kurtis S. Taylor, James R. Utter. Invention is credited to Satish Menon, Jayakumar Muthukumarasamy, Partha Saha, Kurtis S. Taylor, James R. Utter.
Application Number | 20130095461 13/271328 |
Document ID | / |
Family ID | 48082455 |
Filed Date | 2013-04-18 |
United States Patent
Application |
20130095461 |
Kind Code |
A1 |
Menon; Satish ; et
al. |
April 18, 2013 |
COURSE SKELETON FOR ADAPTIVE LEARNING
Abstract
A method and apparatus for utilizing a course skeleton for
adaptive learning is provided. Based on student profile information
and course goal information, a query is generated to dynamically
determine which learning items should be presented to the student.
The query, which is based on a particular learning goal, may differ
from student to student, and therefore different students may be
presented with different learning items to achieve the same
learning goal. In addition, as new learning items is added to the
learning item repository, the learning items returned by the query
for a particular learning goal may change, even if the query used
for the goal does not.
Inventors: |
Menon; Satish; (Sunnyvale,
CA) ; Muthukumarasamy; Jayakumar; (Dublin, CA)
; Saha; Partha; (Oakland, CA) ; Taylor; Kurtis
S.; (Mesa, AZ) ; Utter; James R.; (Lake
Stevens, WA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Menon; Satish
Muthukumarasamy; Jayakumar
Saha; Partha
Taylor; Kurtis S.
Utter; James R. |
Sunnyvale
Dublin
Oakland
Mesa
Lake Stevens |
CA
CA
CA
AZ
WA |
US
US
US
US
US |
|
|
Family ID: |
48082455 |
Appl. No.: |
13/271328 |
Filed: |
October 12, 2011 |
Current U.S.
Class: |
434/322 |
Current CPC
Class: |
G06Q 50/20 20130101;
G09B 7/00 20130101; G09B 7/02 20130101 |
Class at
Publication: |
434/322 |
International
Class: |
G09B 7/00 20060101
G09B007/00 |
Claims
1.-22. (canceled)
23. A method, comprising analyzing performance, by a student, to
determine (a) a type of learning item that works well for the
student and (b) a learning goal for the student; executing a query
against a learning item repository to identify a learning item
using at least (a) the type of learning item that works well for
the student and (b) the learning goal for the student; identifying
the learning item based on results from the query; presenting the
learning item to the student.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is related to the following applications:
(1) application Ser. No. 13/007,166, filed on Jan. 14, 2011, the
entire contents of which is hereby incorporated by reference as if
fully set forth herein; (2) application Ser. No. 13/007,177, filed
on Jan. 14, 2011, the entire contents of which is hereby
incorporated by reference as if fully set forth herein; (3)
application Ser. No. 13/007,147, filed on Jan. 14, 2011, the entire
contents of which is hereby incorporated by reference as if fully
set forth herein. The applicants hereby rescind any disclaimer of
claim scope in the related applications.
FIELD OF THE INVENTION
[0002] The present invention relates to learning management
systems. In particular, the present invention relates to dynamic
course skeletons for adaptive learning.
BACKGROUND
[0003] Intelligent learning systems are systems that attempt to
assist students in achieving specific learning goals. To date,
these systems have mainly used a computerized teaching approach
that mirrors the approach taken in brick-and-mortar classrooms.
Each student is presented with the same lecture, content, and
assessment, regardless of learning style, intelligence, or
cognitive characteristics.
[0004] Advances in intelligent learning systems have been limited,
and are usually applied to logic-based topics such as mathematics,
where the content that is served to each student is based on a
pre-determined course-specific decision tree that is hard-coded
into the system. If a first student and a second student each fail
the same assessment by missing the same questions, both students
will be presented with the same remedial materials as dictated by
the decision tree.
[0005] Online courses are examples of "containers" that may employ
adaptive learning technology to achieve a specific goal. The
container for each course is designed to include all of the
information required to achieve success within the course. For
example, the content required for achieving the goals of a
particular Mathematics course would be directly associated with the
container of the Mathematics course. The container for each course
also includes the logic that determines which content (in that
finite set of content that is directly associated with the
container) should be delivered to the student. By performing in a
particular way, the student merely traverses down a pre-existing
path through the course's logical hierarchy that is hard-coded into
the course's container.
[0006] Current intelligent learning systems focus on high-level
goals, and each student is directed down the same logical path in
order to determine which content is provided to the student. For
example, an adaptive learning tool may be designed to teach a
student a course on the fundamentals of calculus. The designer of
the tool will assume that the student possesses the foundational
knowledge of mathematics required to begin the course, but since
the tool is unaware of any other attribute of the student, the tool
may provide a certain amount of "review" information as a means of
calibration. All students receive the same information, and
performance on assessments will dictate which learning item is
presented to the student next.
[0007] Current intelligent learning systems "hard-code" these
learning items to the logic used to determine the next step for the
user. For example, a student that completes "Task A" will always be
presented with the video item named "Video.sub.--23.mov" to begin
the next learning section. Students that do not achieve a
predetermined level of success with an assessment or a particular
task will always be presented with the multimedia item
"Remediation.sub.--13.swf" as a means of re-teaching the subject
matter required for that particular task.
[0008] The approaches described in this section are approaches that
could be pursued, but not necessarily approaches that have been
previously conceived or pursued. Therefore, unless otherwise
indicated, it should not be assumed that any of the approaches
described in this section qualify as prior art merely by virtue of
their inclusion in this section.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] The present invention is illustrated by way of example, and
not by way of limitation, in the figures of the accompanying
drawings and in which like reference numerals refer to similar
elements and in which:
[0010] FIG. 1 is a block diagram illustrating a learning management
platform on which an embodiment may be implemented;
[0011] FIG. 2 is a block diagram illustrating a course skeleton
structure that may be used in an embodiment; and
[0012] FIG. 3 illustrates a computer system upon which an
embodiment may be implemented.
DETAILED DESCRIPTION
[0013] In the following description, for the purposes of
explanation, numerous specific details are set forth in order to
provide a thorough understanding of the present invention. It will
be apparent, however, that the present invention may be practiced
without these specific details. In other instances, well-known
structures and devices are shown in block diagram form in order to
avoid unnecessarily obscuring the present invention.
General Overview
[0014] It is common for students to take courses that provide too
much information that the student already knows. On the other hand,
it is also common for a student to complete a course in a sequence,
only to be left behind in the next course in the sequence because
the next course assumes knowledge that was not sufficiently covered
in the earlier course. Students may also be required to take
certain courses to complete a degree program, even if only a small
portion of the skills learned in those courses pertain to the
student's degree program. One way to ensure that students get the
most out of their educational experiences is to personalize those
educational experiences. By using an adaptive learning engine that
employs the techniques described hereafter, students can learn
through updated learning items that best fit their individual
learning needs.
[0015] A "learning item" may be any type of item that can be used
to assist in the achievement of a learning goal. For example, a
learning item may be content, such as text, video, or an audio
podcast. In addition, a learning item may be a learning activity or
application, such as a flashcard app, a cognitive tutor app, etc.
The techniques described herein are not limited to any particular
types of learning items.
[0016] In an embodiment, a course "skeleton" is associated with a
course of instruction. The course skeleton is made up of a
hierarchy of goals, with each goal being associated with goal
metadata that describes the goal and provides information about the
type of content that may be used to achieve the goal. The course
skeleton is used to provide a more dynamic adaptive learning
experience. The nodes of the course skeleton are associated with
metadata about the corresponding goal. A learning item repository
stores learning items and learning item metadata describing the
learning items. Instead of directly mapping these learning items to
the nodes or goals, the goal metadata is used to dynamically
generate a query that can be executed against the learning item
repository in order to retrieve learning items for the student.
[0017] In an embodiment, learner-specific information is also used
to generate the query that determines which content will be
presented to the student. For example, student profile information
that describes the student's interests, academic history, location
information, or type of device the student is using may be used to
generate the query.
Structural Overview
[0018] FIG. 1 is a block diagram illustrating an adaptive learning
engine, according to an embodiment of the invention. Adaptive
learning engine 100 generally represents a set of one or more
computer programs, and associated resources, configured to manage
educational data and information about students, provide learning
items to students, and use information gathered from analyzing
student interaction with the system to increase the effectiveness
of future learning items. Adaptive learning engine 100 facilitates
the delivery of learning items based on student attributes.
Adaptive learning engine 100 includes logic that facilitates
communication between its various components.
[0019] In the illustrated embodiment, adaptive learning engine 100
includes a processor 190, learning analysis logic 130 and
presentation logic 140. Adaptive learning engine 100 may also
include or be coupled with other components such as a learning
space platform, a learning items manager, a learning tools manager,
a data analysis engine, a knowledge base, a personal cognitive DNA
manager, and a skills hierarchy manager (not shown). Each of these
components shall be described in greater detail hereafter.
[0020] Referring to FIG. 1, an input 112 is received by the
adaptive learning engine 100 at an input/output (IO) interface 110.
IO interface 110 may be a network interface such as an
Ethernet-based interface. Input 112 may include requests from
students such as learning item requests. IO logic 120 is coupled to
IO interface 110. IO logic is configured to parse and distribute
incoming data and prepare output 114 for sending via IO interface
110, according to an embodiment. IO logic 120 may implement one or
more communications protocols. IO logic 120 is coupled to
presentation logic 140, in an embodiment. Presentation logic 140
determines the method of delivery of output 114. For example,
output 114 may include a multimedia file, or it may include only a
link to the multimedia file in an embodiment.
Learning Analysis Logic
[0021] Learning analysis logic 130 generally represents a
decision-making unit that interacts with all other components of
adaptive learning engine 100 and uses information gathered from
these components to provide content that is relevant to each
individual student based on information gathered from other
elements of the adaptive learning engine 100, such as a knowledge
base.
[0022] Unlike conventional "adaptive learning" systems, learning
analysis logic 130 does not merely on traverse a predetermined path
that is based only on the student's degree program or class.
Rather, learning analysis logic 130 takes into consideration
attributes of each student, and dynamically generates queries to be
executed against a database or learning item repository. Queries
generated for the purpose of learning item retrieval may be based
on many factors, which are described hereinafter. The queries may
be in any form that takes these attributes into consideration. In
one embodiment, learning item retrieval queries are formed using a
query language such as Structured Query Language (SQL), and include
the desired attributes or arguments as predicates in the query. For
example, an example query may be as follows:
TABLE-US-00001 SELECT * FROM CONTENT WHERE GOAL=`ECO_340_2_5` AND
TYPE=`FLASH_VIDEO`
[0023] While SQL is used in the example above, various other types
of query mechanisms may be used. For example, depending on the
nature of the repository that is used to store the learning items,
learning item retrieval queries may be semantic queries, such as
those that use SPARQL (Simple Protocol and RDF Query Language) and
RDF for representing the data elements and their relationships.
[0024] As students perform activities and take an assessments
associated with recommendations, data associated with each student
is updated to reflect the types of activities that work well for
each student, the strengths and weaknesses of the student, and
other useful education-related attributes of the students. As used
herein, the term "education-related attributes" refers to any
attributes that relate to a student's learning history, goals or
abilities. Education-related attributes may include non-transient
attributes, such as a student's prior classes and grades, and
transient attributes such as a student's current mood. Any
education-related data may be used for generating queries for
content.
[0025] As more data is collected, patterns emerge, and learning
analysis logic 130 can generate queries to retrieve individualized
learning items with a high degree of confidence in the expected
success of each student. For example, it may become clear that a
particular student performs poorly when he tries to learn skills
using only audio content, even though that student has expressed a
preference for audio content. In this case, learning analysis logic
130 may subsequently require content other than audio content to be
delivered to the user, instead of or in addition to audio
content.
The Learning Items Manager
[0026] The learning items manager stores and manages learning
items. Learning items includes any items that may be used to
achieve a goal. Examples of learning items include text, audio
files such as mp3 files, video files such as QuickTime files,
interactive flash movies, or any other type of multimedia
content.
[0027] In an embodiment, learning items manager includes a learning
item repository and a content categorization system for storing and
organizing learning items. The learning item repository stores
content in non-volatile memory, such as a shared hard disk system
or a database system such as database 150. Learning items may be
stored in a database table, such as the learning items table 170.
The learning item categorization system provides content indexing
services, along with an interface for creating and associating
metadata with learning items stored in the learning item
repository.
[0028] Learning items may be associated with metadata that
describes the learning items. This metadata can be compared against
the selection criteria specified in queries generated by learning
analysis logic 130 to return learning items that are appropriate
for helping students to achieve particular goals. For example,
metadata associated with a video may include a title attribute that
includes the text "how to factor polynomials." Other attributes may
include a general category, such as "math" and a content type, such
as "QuickTime video. Metadata may be embedded within the learning
items being described by the metadata, may be in a separate Meta
file such as an XML file that is associated with the learning items
being described, or may be stored in a database with an association
to the learning items being described. In an embodiment, learning
items are "tagged" with metadata describing the learning items,
such as keywords, skills, associated learning objects, the
characteristics of learners (e.g. limited prior knowledge) that may
benefit from the instructional strategies employed by the learning
items (e.g. worked examples), the type of learning items (e.g.
video or text), and statistical information regarding the learning
item usage. For example, the query
TABLE-US-00002 SELECT * FROM CONTENT WHERE GOAL=`ECO_340_2_5` AND
TYPE=`FLASH_VIDEO`
will look for learning items that are tagged with the goal
identifier "ECO.sub.--340.sub.--2.sub.--5" and the type identifier
"FLASH_VIDEO." The learning space platform and learning analysis
logic 130 may be authorized to add, remove, or alter tags
associated with learning items via the learning items manager.
Learning items manager also includes learning item delivery logic
configured to manage requests for learning items that are stored in
the learning item repository. For example, some learning items may
be streamed in order to preserve bandwidth. In some cases, it makes
sense to deliver all required learning items for a particular
course at the same time, such as when the student expects to be
without Internet access for an extended period of time. Thus,
learning items manager may be directed by learning analysis logic
130 to deliver learning items in a particular way, depending on
attributes of the student. In addition, certain content formats may
not be supported by certain devices. For example, learning item
delivery logic may choose or even change the format of the learning
items being delivered if the device requesting the learning items
does not support a particular format, such as the FLASH format.
The Knowledge Base
[0029] The knowledge base may be implemented using database 150.
The knowledge base manages persistent data and persistently stores
snapshots of certain transient data. For example, student
categorization information, student study group information,
cognitive DNA relationship information, and persistent student
profile information may all be stored in the knowledge base.
Although this data is persistently stored, the data may change as
required by other elements of the adaptive learning engine 100. For
example, data analysis engine may provide a report to learning
analysis logic 130 that causes learning analysis logic 130 to
indicate to the knowledge base, based on the report, that student
categorization information for a particular student should be
changed. The knowledge base will then alter the persistent data to
reflect the indicated change. Various mechanisms may be used to
implement the knowledge base. For example, data for the knowledge
base may be stored as triples in a triplestore. Instead of or in
addition to using a triplestore, a relational database management
system may be used to facilitate the storage and retrieval of data.
The knowledge base is communicatively coupled to learning analysis
logic 130, and provides learning analysis logic 130 with student
information to assist in creating an individualized learning
recommendation. All data stored in the knowledge base, such as user
data 180, can be used to form queries that are used to retrieve
individualized learning items for students.
The Personal Cognitive Dna Manager
[0030] The personal cognitive DNA manager manages data associated
with students, and may be implemented using database 150. A
collection of data associated with a student is known as personal
cognitive DNA (PDNA), and may be stored in user data 180. The
portions of a PDNA that are stored at the personal cognitive DNA
manager include transient data, while persistent portions of the
PDNA are be stored in the knowledge base in an embodiment. PDNA
data stored in the personal cognitive DNA manager may also include
references to persistent data stored in the knowledge base. The
personal cognitive DNA manager may include a database management
system, and may manage PDNA for all students. In an embodiment,
instances of the personal cognitive DNA manager may reside on the
client computing devices of students, and may be part of a learning
space platform. In this embodiment, PDNA for users of the client
computing device or the associated learning space platform may be
stored in volatile or non-volatile memory. A combination of these
embodiments may also be used, where a portion of the personal
cognitive DNA manager resides on a client while another portion
resides on one or more servers. In an embodiment, the personal
cognitive DNA manager is communicatively coupled to learning
analysis logic 130, and provides learning analysis logic 130 with
transitory student information to assist in creating an
individualized query for retrieving relevant learning items from
the learning items manager. PDNA and all other user-related
information can be used to generate individualized queries for
retrieving learning items. For example, a user's location, local
time, client device type, or client operating system may be
provided to learning analysis logic 130 to assist in determining
what type of learning items are appropriate for the environment and
device. In an embodiment, the personal cognitive DNA manager and
the knowledge base may be combined.
Learning Goal Metadata
[0031] Learning goal metadata can be associated with a goal, and is
used to describe the corresponding goal and provide information
related to the corresponding goal. A goal generally represents an
ability, skill, or knowledge that a student is meant to acquire.
For example, a skill may represent the ability to perform addition
of single-digit numbers, form a complete sentence using a
particular language, or type a certain number of words-per-minute.
There is no limit to the complexity or simplicity of goals that may
be associated with a course skeleton and described in goal
metadata. As shall be described in greater detail hereafter, goal
metadata may include, by way of example and not by way of
limitation, assessments, remediation data, skills hierarchy data,
and other data describing the goal.
[0032] Content may also be included in goal metadata. In an
embodiment, content that is known to teach or facilitate the
achievement of a particular goal is included in goal metadata. In
contrast to less dynamic adaptive learning systems, the content
that is directly associated with the goal is not necessarily
delivered to students. Instead, this content may simply be
semantically analyzed to determine keywords to use in queries that
are executed against a learning items manager or repository. For
example, a well-known essay describing a particular type of poem
may be associated with the goal of teach about that type of poem.
Rather than present the essay to students that need to learn about
that type of poem, keywords can be extracted from the essay and
used as selection criteria to find other learning items to present
to the student to teach about that type of poem. By separating the
learning items selection process from the course skeleton, updated
learning items can be selected for a user, and course developers
are not required to "hard-code" the latest learning items to each
individual goal.
Course Skeleton
[0033] Recommendations generated by learning analysis logic 130 are
based in part on a course skeleton in an embodiment. FIG. 2 is a
block diagram illustrating a course skeleton structure 200 that may
be used in an embodiment. Course skeleton 200 includes goals
201-210. In an embodiment, data defining a course skeleton is
stored in the course skeleton data table 160 in database 150.
Course skeleton data may be stored in any format that preserves the
hierarchical nature of the course skeleton. For example, a course
skeleton may be stored in a relational database system and/or in
XML format. For an example course skeleton in XML format, see the
code listing submitted concurrently herewith.
[0034] A course skeleton can be created in a variety of ways, and
the techniques described herein are not limited to any particular
way of creating a course skeleton. For example, course skeletons
can be created manually, where Subject Matter Experts (SME) and
Instructional designers (ID) interact using a collaborative online
application. Starting from a set of high level objectives and
required material in a course, SMEs and IDs can engage in Socratic
dialogue, or use a question template to break down the objectives
into finer grained objectives. Alternatively, course skeletons can
be created using an automated process where Natural Language
Processing (NLP) is used to process the required reading material
to discover finer grained objectives. Course skeletons can also be
created using a mixed process, where the SME and ID can use some
parts of the automated process to validate and quality control
their work, or even use it to get suggestions.
[0035] A course skeleton may represent a group of goals for a
portion of a course, an entire course, a field of study, a
certificate program, a degree program, or an individual competency
map that represents the skills acquired by a student, or any other
education related structure. Course skeletons may include goal
metadata that describes a wide variety of goals and various
learning theories, content types, and keywords used to find
learning items to facilitate the achievement of those goals.
[0036] Links between goals in the hierarchy represent the
relationship between those goals. For example, a link between two
learning goals may mean that the subject matter covered in one of
the learning goals requires the achievement of the other goal. A
different link may indicate that one learning goal is a
prerequisite of the other.
[0037] Basic goals need to be attained in order to begin achieving
more advanced goals. According to course skeleton 200 for example,
the goal associated with node 205 must be acquired before
attempting to achieve the goal associated with node 203. In this
way, the course skeleton is hierarchical. However, a
non-hierarchical approach may be used in an embodiment. For
example, a non-hierarchical directed-graph approach may be used in
an embodiment that is based on a different learning model.
The Course Skeleton Manager
[0038] The course skeleton manager manages goal hierarchy
information that describes the relationships between goals. For
example, a student may be required to learn how to add and subtract
before he learns how to multiply and divide. A complete course
skeleton may be made up of interconnected goals that represent all
of the goals required to complete a traditional educational course.
The nodes in the hierarchy correspond to goals and goal metadata.
Since a single node may be considered a prerequisite for many other
nodes, and many nodes may be prerequisites for a single node, the
hierarchy may be multidimensional.
[0039] The course skeleton manager manages the relationships
between nodes that represent learning goals. For example, a
relational database may be used to keep track of the node
dependency information. The course skeleton manager stores goal
metadata data that describes skills, remediation information,
assessment information, hierarchy association information, and
other metadata associated with learning goals. The course skeleton
manager interfaces with learning analysis logic 130 and provides
learning analysis logic 130 with course skeleton data to assist
learning analysis logic 130 in dynamically generating learning item
request queries that are specific to each goal.
Learning Theories, Models, and Strategies
[0040] Learning theories address how people learn by providing a
paradigm through which to view a learning objective. Although
theories are abundant, three well-understood theories are
behaviorism, constructivism, and cognitivism. Behaviorism is a view
that is based on the assumption that people learn based on
stimulation. Positive or negative reinforcement shapes the behavior
of the student. Constructivism is a view that assumes that the
student learns as an experience, and that the learner actually
constructs their own representations of reality. Cognitivism is a
view that assumes that people learn as they mentally process
information in a manner that coincides with their cognitive
architecture, and do not merely react to stimulation.
[0041] Learning models are created based on learning theories, and
are meant to operationalize one or more learning theories.
Different instructional strategies may be used, depending on the
model to be implemented. Instructional strategies might vary
content sequencing, instructional technique (direct, indirect),
type of content presentation (lecture, case study, group
discussion, etc.), level of collaboration (individual, pairs, small
group), amount of practice, type of feedback (peer, instructor) and
so forth. Learning items and tools that facilitate the delivery of
learning items can be used to implement instructional strategies.
Examples of learning items include text, video, audio, and games.
Examples of tools include video players, browser plug-ins, e-book
readers, shared whiteboard systems, and chat systems. Many other
examples of learning items and tools exist.
[0042] The theories and models together have been created to
classify, adapt and guide the process of educating a student,
taking into consideration the characteristics of the student that
are pertinent for learning. To date, learning models have been
implemented in application "silos" where each application
implemented a specific model (e.g. intelligent tutors), catering to
very specific topics that suited the model's flat hierarchy based
algorithms, typically for logical subjects such as mathematics.
These types of applications have limited use in broad-based
education, such as a 4-year degree program or inter-disciplinary
subjects such as Economics, and Marketing.
Personal Cognitive DNA
[0043] In an embodiment, learning models and theories may be
operationalized using each student's PDNA to generate learning item
request queries for students, which are executed against a learning
items manager or repository. As the information associated with a
particular student changes, the queries generated on behalf of that
student will change to reflect the latest understanding of that
student's learning requirements, preferences, and goals.
[0044] Although PDNA is referred to herein as "personal cognitive
DNA," this label does not indicate that PDNA data collection and
usage is limited to embodiments that are based upon cognitive
models. PDNA data includes information about a student's cognitive
strengths and weaknesses (as well as preferences) that are provided
explicitly by the student or inferred by the system as the student
interacts with the system and the outcomes are measured.
[0045] PDNA may be used in any embodiment, independent of any
particular learning model. PDNA data is a collection of data
associated with a student. Transient profile data may be stored in
the personal cognitive DNA manager, while persistent profile data
may be stored in the knowledge base. PDNA data stored in the
personal cognitive DNA manager may include references to persistent
data directly or indirectly associated with the student that is
stored in the knowledge base.
[0046] In order to provide the right experiences to the student, in
addition to the proper tools and models, the system collects and
maintains a dynamically updating rich data layer to support
predictive education models in an embodiment. A rich data layer
generally refers to information that is gathered and linked to
create intelligence that may be used to inform learning analysis
logic 130, which uses this information to generate learning item
request queries. In one embodiment, the rich data layer is
dynamically updating in that the data being collected changes over
time, and data that does not conform to the changes becomes
incorrect. For example, as a student achieves a high degree of
proficiency with a particular skill, data that suggests that the
student needs to become proficient with the skill becomes outdated
and incorrect. Thus, the dynamic data layer must keep up with the
current information available for each student.
[0047] Each student using adaptive learning engine 100 is
associated with PDNA for that student. When a student is new to the
system, the PDNA for that student may contain minimal information,
such as demographic information, a student's declared major,
self-proclaimed learning preferences, and imported transcript data
such as grades and coursework done at other institutions. However,
as the student begins using the adaptive learning engine 100, vast
amounts of data may be collected and analyzed by the data analysis
engine, resulting in new PDNA information that describes how the
student learns, what level the student has achieved in a particular
course, whether the student understands a particular concept or
possesses a particular skill, the pace at which the student learns,
or even the time of day the student is most likely to correctly
answer a question.
[0048] Many of these student attributes change over time, but may
still be considered persistent based on the frequency of change.
For example, a student may initially have low reading comprehension
ability and learn material more efficiently when listening to an
audio recording, but may later learn more efficiently by reading
text-based material. Other student attributes may be more transient
in nature. For example, the PDNA may include data that identifies
the student's current location, what client computing device they
are using (e.g. iPhone, laptop, or netbook), what operating system
they are using, whether or not their web browser supports the Flash
plug-in, or whether the student sets his status as "tired."
[0049] It may be the case that a particular student performs
differently depending on environmental factors, while another
student may be capable of learning regardless of the environment.
For example, one student may be able to study on a commuter train
while another may not. One student may be capable of learning via
an audio program while another requires text information or video.
In addition, certain tasks may be reserved for particular times or
places in order to calibrate the system. For example, the system
may be configured to only offer assessments when a student's
transient PDNA data shows that the time in the student's current
time zone is between certain daylight hours.
[0050] Metrics may be assigned to particular attributes in each
student's PDNA. For example, metrics may describe expected or
historical success with different learning characteristics. These
metrics may help learning analysis logic 130 determine whether the
student is successful when participating in collaborative learning
exercises, or whether the student would benefit more from
self-study. A student may have a metric of "7" for the attribute
"performs well with individual work" and a metric of "2" for the
"performs well with collaborative work" attribute. Higher scores
are not necessarily the only factor used in determining the
learning strategy for the student, however. For example, the
learning track that the student is on may actually require that the
student develop collaboration skills Therefore, the learning
analysis logic 130 may generate queries that request learning items
for the student that will bolster his ability to learn
collaboratively. In other words, the system will provide learning
items that teach the student the underlying skills required to
allow the student to become successful at collaborative work.
[0051] PDNA for a particular student may be analyzed and compared
to PDNA of other students in order to generate more accurate
learning item request queries. This feature is especially useful
when limited information is available about a student, but enough
is known about the student to associate the student with a
particular group of students for which more information is
available. For example, learning analysis logic 130 may analyze the
PDNA information for all students in the system, over time, to
predict various things, including: what method of learning is best
for each student, which track will yield the highest chance of
success for a given student in a particular program, which programs
the student would be successful in, which courses the student may
be expected to struggle with, and even which career would best suit
the student.
DNA Fingerprints
[0052] An analysis of hundreds, thousands, or even larger numbers
PDNA data sets yields statistically valid cognitive DNA
"fingerprints" that may be used for generating learning item
request queries in an embodiment. A DNA fingerprint is based on
aggregate PDNA data. Generally, a DNA fingerprint is made by
selecting a set of PDNA data having one or more PDNA attributes in
common and generating a single profile that is representative of
the entire set.
[0053] For example, a DNA fingerprint may be generated for students
that have recently completed a learning object that teaches the
calculus skill of taking the derivative of a second degree
polynomial. The recency of the completion of the learning object is
determined based on the time that the data was stored, so snapshots
that were taken at checkpoints occurring immediately after students
completed the learning object will qualify for inclusion in the set
of PDNA data considered for use in the creation of the DNA
fingerprint.
[0054] Each attribute in the PDNA data considered in the creation
of the DNA fingerprint may be aggregated, averaged, or otherwise
considered, resulting in a fingerprint of that attribute. For
example, if the average value of the attribute "abstract learning
ability" is "80" in the PDNA data in the set, then the DNA
fingerprint may inherit this value for the same attribute. Any
method of considering or combining PDNA data to generate DNA
fingerprint data may be used. For example, the lowest value, the
median value, or a sum of the values may be used as the fingerprint
value for a particular attribute. Some attributes, especially those
with very little correlation to the common PDNA attribute, may not
be assigned a DNA fingerprint value, or may be assigned a NULL
value, indicating that conclusions about that attribute are
statistically invalid for that set of PDNA. Once each attribute has
been considered for the set, then the resulting values for each
attribute are stored in one or more records as a DNA fingerprint
for that set of PDNA data.
Assessments
[0055] In one embodiment, assessments designed to determine whether
a student has achieved a goal are associated with the corresponding
learning metadata for that goal. A student uses assessments to
demonstrate the skills and knowledge associated with the learning
goal. More than one assessment may be included in the learning
metadata for a particular goal. Learners may be required to
successfully complete all, or a subset, of the assessments in order
to receive an advancement recommendation from learning analysis
logic 130. An advancement recommendation is essentially a
determination that a student is ready to move on to a different
goal because a perquisite goal has been achieved by the
student.
[0056] Performance on specific assessments may be analyzed to
determine the level, amount or type of learning items a student
needs next. For example, a student that performs poorly on an
assessment may require remedial learning items that cover a general
overview of the subject. Learning analysis logic 130 may form a
learning item request query, based on this determination, which
includes the predicate: LEVEL="GENERAL". The execution of this
query against the learning item management system will result in
the delivery of learning items that have been tagged as the
"general" level.
Selecting Learning Items Using Dynamically Generated Queries
[0057] In an embodiment, the learning item repository includes
learning items, such as multimedia, audio, text, and video files.
In addition, the learning item repository includes learning item
metadata that describes the learning items. For example, the
learning item metadata may be stored in a database with a
relational link to the learning items described by the metadata. A
logical hierarchy such as course skeleton 200 is stored in the
course skeleton data table 160 in database 150. The course skeleton
is representative of a course of instruction, and each node in the
hierarchy represents a learning goal. Corresponding goal metadata
that describes each learning goal is associated with each node in
the course skeleton. A first user that is working on a goal
associated with a particular node in the course skeleton makes a
request for learning items to adaptive learning engine 100.
Learning analysis logic 130 generates a query to be executed
against the learning item repository using goal metadata associated
with the learning goal that the student is attempting to achieve. A
learning item or a reference to a learning item from learning items
table 170 is returned, and presentation logic 140 presents the
learning item to the student.
[0058] A second user requests learning items from adaptive learning
engine in an embodiment. The second user is attempting to achieve
the same goal as the first user, and therefore an identical query
is generated for the second user. However, when the query is
executed for the second user, a learning item is returned that is
different than the learning item that was returned for the first
user. In an embodiment, additional learning items is added to the
learning item repository between the execution of the query for the
first user and the execution of the query for the second user. This
additional learning items is determined to be more relevant to the
query, and therefore the updated learning items is delivered to the
second user.
[0059] In an embodiment, profiles such as PDNA profiles are
maintained for users. Queries are generated using arguments (such
as predicates) that are based on education-related attributes that
are associated with the users. For example, a query is generated to
request video learning items that last no longer than 20 minutes
for a user that has a low attention span attribute stored in his
PDNA profile. In an embodiment, learning analysis logic determines
that a first student has a profile that is similar to the profile
of a second student, and therefore generates the same query for
both students. However, other factors may cause the students to
receive different learning items, as discussed above.
[0060] In an embodiment, goal metadata is semantically analyzed to
determine keywords that should be used in a query to request
learning items. In another embodiment, a semantic analysis may be
performed on user generated data such as forum postings in order to
determine topics of interest to the user. One or more keywords
associated with the topics of interest are then used to generate a
learning item request query.
[0061] In an embodiment, one or more arguments used in a query are
identified by the learning items manager as failing to match
learning items in the learning item repository. Learning items
manager generates a report that identifies the failing arguments.
These arguments correspond to attributes that would possibly
further enrich the learning experience of one or more users.
Therefore, learning items having these attributes may be desirable.
The report ranks these attributes from the most to least desirable
in an embodiment. For example, the attributes requested most
frequently or most recently may be listed at the top of the report,
while unpopular attributes are listed at the bottom.
Hardware Overview
[0062] According to one embodiment, the techniques described herein
are implemented by one or more special-purpose computing devices.
The special-purpose computing devices may be hard-wired to perform
the techniques, or may include digital electronic devices such as
one or more application-specific integrated circuits (ASICs) or
field programmable gate arrays (FPGAs) that are persistently
programmed to perform the techniques, or may include one or more
general purpose hardware processors programmed to perform the
techniques pursuant to program instructions in firmware, memory,
other storage, or a combination. Such special-purpose computing
devices may also combine custom hard-wired logic, ASICs, or FPGAs
with custom programming to accomplish the techniques. The
special-purpose computing devices may be desktop computer systems,
portable computer systems, handheld devices, networking devices or
any other device that incorporates hard-wired and/or program logic
to implement the techniques.
[0063] For example, FIG. 3 is a block diagram that illustrates a
computer system 300 upon which an embodiment of the invention may
be implemented. Computer system 300 includes a bus 302 or other
communication mechanism for communicating information, and a
hardware processor 304 coupled with bus 302 for processing
information. Hardware processor 304 may be, for example, a general
purpose microprocessor.
[0064] Computer system 300 also includes a main memory 306, such as
a random access memory (RAM) or other dynamic storage device,
coupled to bus 302 for storing information and instructions to be
executed by processor 304. Main memory 306 also may be used for
storing temporary variables or other intermediate information
during execution of instructions to be executed by processor 304.
Such instructions, when stored in non-transitory storage media
accessible to processor 304, render computer system 300 into a
special-purpose machine that is customized to perform the
operations specified in the instructions.
[0065] Computer system 300 further includes a read only memory
(ROM) 308 or other static storage device coupled to bus 302 for
storing static information and instructions for processor 304. A
storage device 310, such as a magnetic disk or optical disk, is
provided and coupled to bus 302 for storing information and
instructions.
[0066] Computer system 300 may be coupled via bus 302 to a display
312, such as a cathode ray tube (CRT), for displaying information
to a computer user. An input device 314, including alphanumeric and
other keys, is coupled to bus 302 for communicating information and
command selections to processor 304. Another type of user input
device is cursor control 316, such as a mouse, a trackball, or
cursor direction keys for communicating direction information and
command selections to processor 304 and for controlling cursor
movement on display 312. This input device typically has two
degrees of freedom in two axes, a first axis (e.g., x) and a second
axis (e.g., y), that allows the device to specify positions in a
plane.
[0067] Computer system 300 may implement the techniques described
herein using customized hard-wired logic, one or more ASICs or
FPGAs, firmware and/or program logic which in combination with the
computer system causes or programs computer system 300 to be a
special-purpose machine. According to one embodiment, the
techniques herein are performed by computer system 300 in response
to processor 304 executing one or more sequences of one or more
instructions contained in main memory 306. Such instructions may be
read into main memory 306 from another storage medium, such as
storage device 310. Execution of the sequences of instructions
contained in main memory 306 causes processor 304 to perform the
process steps described herein. In alternative embodiments,
hard-wired circuitry may be used in place of or in combination with
software instructions.
[0068] The term "storage media" as used herein refers to any
non-transitory media that store data and/or instructions that cause
a machine to operation in a specific fashion. Such storage media
may comprise non-volatile media and/or volatile media. Non-volatile
media includes, for example, optical or magnetic disks, such as
storage device 310. Volatile media includes dynamic memory, such as
main memory 306. Common forms of storage media include, for
example, a floppy disk, a flexible disk, hard disk, solid state
drive, magnetic tape, or any other magnetic data storage medium, a
CD-ROM, any other optical data storage medium, any physical medium
with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM,
NVRAM, any other memory chip or cartridge.
[0069] Storage media is distinct from but may be used in
conjunction with transmission media. Transmission media
participates in transferring information between storage media. For
example, transmission media includes coaxial cables, copper wire
and fiber optics, including the wires that comprise bus 302.
Transmission media can also take the form of acoustic or light
waves, such as those generated during radio-wave and infra-red data
communications.
[0070] Various forms of media may be involved in carrying one or
more sequences of one or more instructions to processor 304 for
execution. For example, the instructions may initially be carried
on a magnetic disk or solid state drive of a remote computer. The
remote computer can load the instructions into its dynamic memory
and send the instructions over a telephone line using a modem. A
modem local to computer system 300 can receive the data on the
telephone line and use an infra-red transmitter to convert the data
to an infra-red signal. An infra-red detector can receive the data
carried in the infra-red signal and appropriate circuitry can place
the data on bus 302. Bus 302 carries the data to main memory 306,
from which processor 304 retrieves and executes the instructions.
The instructions received by main memory 306 may optionally be
stored on storage device 310 either before or after execution by
processor 304.
[0071] Computer system 300 also includes a communication interface
318 coupled to bus 302. Communication interface 318 provides a
two-way data communication coupling to a network link 320 that is
connected to a local network 322. For example, communication
interface 318 may be an integrated services digital network (ISDN)
card, cable modem, satellite modem, or a modem to provide a data
communication connection to a corresponding type of telephone line.
As another example, communication interface 318 may be a local area
network (LAN) card to provide a data communication connection to a
compatible LAN. Wireless links may also be implemented. In any such
implementation, communication interface 318 sends and receives
electrical, electromagnetic or optical signals that carry digital
data streams representing various types of information.
[0072] Network link 320 typically provides data communication
through one or more networks to other data devices. For example,
network link 320 may provide a connection through local network 322
to a host computer 324 or to data equipment operated by an Internet
Service Provider (ISP) 326. ISP 326 in turn provides data
communication services through the world wide packet data
communication network now commonly referred to as the "Internet"
328. Local network 322 and Internet 328 both use electrical,
electromagnetic or optical signals that carry digital data streams.
The signals through the various networks and the signals on network
link 320 and through communication interface 318, which carry the
digital data to and from computer system 300, are example forms of
transmission media.
[0073] Computer system 300 can send messages and receive data,
including program code, through the network(s), network link 320
and communication interface 318. In the Internet example, a server
330 might transmit a requested code for an application program
through Internet 328, ISP 326, local network 322 and communication
interface 318.
[0074] The received code may be executed by processor 304 as it is
received, and/or stored in storage device 310, or other
non-volatile storage for later execution.
[0075] In the foregoing specification, embodiments of the invention
have been described with reference to numerous specific details
that may vary from implementation to implementation. The
specification and drawings are, accordingly, to be regarded in an
illustrative rather than a restrictive sense. The sole and
exclusive indicator of the scope of the invention, and what is
intended by the applicants to be the scope of the invention, is the
literal and equivalent scope of the set of claims that issue from
this application, in the specific form in which such claims issue,
including any subsequent correction.
* * * * *