Mobile communications devices have become an inseparable part of the daily life for many people. We carry cellular phones, PDAs, and other devices with us throughout our daily routine. Unfortunately, these devices generally behave in very fixed ways, and do not adapt themselves to the dynamic lives of their users. Any personal customization entails rigorous manual effort from the device user.
Wouldnt it be nice if your cell phone knew that you are at home, and automatically diverted any work-related phone-calls to voicemail?
How about having your phone automatically disclose your present location to close family
and friends but not to strangers? Wouldnt it be even more useful if it said that you
are at work or at a meeting rather than give global coordinates?
How about if our devices would realize automatically that we have left for vacation and
suggest that we activate an away message? (I always forget to do that...) The ultimate
vision of this work is to create self-conscious and intelligent mobile devices that
understand the world in a similar way to their human users by utilizing terms and
context from the human realm. This would enable the devices to better serve their users
and improve the interaction with them. These devices should be able to bootstrap their
knowledge on their own with minimal user intervention. They would do it as a personal
assistant learns the preferences of his boss, or as a child learns to familiarize
himself with the world, learning to recognize familiar places and people, and later
giving them names. By achieving this vision, the work would also be able to contribute
to the understanding of human intelligence, by suggesting possible mechanisms that might
also be found in biological systems.
In order to advance towards this vision, I set a
more modest sub-goal for the class project. I would like to create a system, or at least
a proof of concept, that is able to learn meaning and symbols related to a mobile users
life without explicit instruction. In a similar way to Larsons work on Intrinsic
Representation or Coens cross-sensory clustering, I would like to have the system build
descriptions up from low-level perceptual information, gathered through a mobile
devices network (and possibly other) sensors. I would also want to discover
regularities in that information, will match regularities of context and relationships
in the mobile device users life. This architecture should also be able to support
un-learning of knowledge, as the users life may be dynamic and contexts might change
over time.
A complete research project (or so Ill try)
Steps
Develop an application that periodically performs scans of nearby WiFi access points, Bluetooth devices, and possibly mobile cell tower data.
Collect raw scan data from one or two users over the period of a week or so.
Define relevant data representations
Perform unsupervised analysis of the data and attempt to find regularities and clusters
Hopefully: Add a stage of supervised learning where the user will give symbols to describe some of the regularities.
Perform validation tests using new data
Tentative step: add more types of sensor probes
Tentative step: explore ideas of dealing with deviation from routine (e.g. going on vacation, or to a conference) and unlearning (e.g. switching jobs)
Contributions
Propose using ungrounded learning and intrinsic representation concepts to for learning patterns in a mobile-device users life
suggest appropriate representations that are appropriate for the learning task at hand.
Demonstrate a proof of concept for ungrounded learning in the real world
Design and implement a framework for connecting network devices to different AI algorithms (feeding data from the real world, plugging in different AI systems, and returning control input back to the consumer device)
Apply unsupervised multi-modal learning ideas to a new problem domain
Jeremy Chang
Spike Delay Learning in Multi-Neuron Systems
The goal of this project is to demonstrate that a single neuron is capable of fast learning of complex patterns by combining spike delays with feedback.
A Reimplementation of David H. Staelin's model-A cognon
Steps
Reimplement the single neuron simulation algorithm
Train neuron with lists of 3 and 6 letter words
Extend model to employ multiple cognons with excitatory and inhibitory synapses
Train a two neuron system with 3 and 6 letter words
Contributions
I implemented and extended D.H. Staelin's cognon model with support for multiple neurons.
I confirmed the findings of Staelin's single neuron training.
I demonstrated that learning with spike delays in multiple neurons with inhibitory and excitatory synapses has non-linear relation to neuron population size.
Telmo L Correa
Borchard representation integration
Integrate Borchard's representation into Rao's visuospatial system.
As time allows, one of:
Good: A research proposal
Very Good: A reimplementation
Steps
Get acquainted with Rao's system (from UAP).
Identify and locate, if any, an implementation of Borchard's representation.
Study the interface between the system and possible knowledge representation.
Interface both systems.
Observe results, draw inferences.
Contributions
Study and/or implementation of another approach towards Rao's goal.
New design ideas to Rao's system suggested by the process.
Study and/or implementation of Borchard's representation.
Neil Dowgun
Mobilizer: Performing Complex Maneuvers on Command
The goal of this project is to create a system that, if given control of some
entities in a simulated 3-D space, can efficiently move those entities to satisfy
any spatial relation on command.
Research Project
Steps
Define the basic building blocks of the language needed to describe spatial relationships (i.e. relationships like "X higher than Y")
Create a system that can combine the basic symbols into higher level relations
Teach the system more higher level relationships through supervised learning
Create a planner that runs searches in 3-D space
Contributions
I expect to define the basic language of Spatial Relationships
I expect to provide a tool for anyone to define whatever Spatial Relationships they would like
I expect to create a system that will find the quickest way to move entities to satisfy a set of spatial relationships on command
Kristen Felch and Jodyann Coley
The Effect of Articulation on Memory
If I want to prove that speech helps us to build more long-lasting memories, then I need to show that discussion of a written work increases a subject's ability to later recall that work.
I am going to perform a small research experiment to obtain data on the effect of speech on memory.
Steps
In the first stage, subjects will be asked to read a short story of my choosing. The control group of subjects will not be required to answer any questions. One test group will be asked questions in written form, and the second group will have a discussion with me about the work.
A week later, I will call back the subjects and ask them questions about the reading. Questions will vary in terms of difficulty in order to determine how much each subject actually remembers.
I will be able to draw conclusions from this data as to whether the subjects that
spoke about the work have increased ability to remember details of the story.
Contributions
My main contribution will be the data that is collected, in what I hope will be a methodical and reliable manner.
I will also draw the conclusion that speech does (not) increase the subject's ability to remember a story. Another possibility is that my data seems to indicate a trend, but a much larger experiment needs to be run.
Jonathan Goldberg
6.034 Pset - Arch and Lattice Learning
The goal of the project is to provide 6.034 students with hands on experience while they learn the concepts of Arch and Lattice Learning.
It is a re-implementation, while contributing to 6.034 curriculum.
Steps
Design a framework for the pset. Goal and a story that the students will have to follow
Implement Arch Learning in Python
Implement Lattice Learning in Python
Provide unit tests that provide enough information and test cases to simulate a scaled down learning process
Contributions
Develop a hands on modal to learn arch and lattice learning
Opportunity for me to think, revaluate and may even to point a new research directions for lattice learning
Volkan Gurel
Comparison of the Threads derived from ConceptNet and WordNet
I believe Thread Memory gives us a strong tool to make sense out of
simple statements that we already know. ConceptNet and WordNet provide
us with these simple statements, and it would be a great test for both
the practicality of Thread Memory and the usefulness of ConceptNet and
WordNet to implement code that extracts the threads from both
databases and compare them.
A reimplementation
Steps
Explore ConceptNet and WordNet to get a general idea of their
structure
Write code to derive threads from both databases
Find interesting threads from each, compare
See what the results reveal about Thread Memory and about the databases
Contributions
I expect to confirm the validity of Thread Memory
I also expect to deduce statements from ConceptNet and WordNet
that are not there to begin with
I hope to reveal shortcomings and problems with both of the
databases, allowing them to improve
Jong-Moon Kim
The Emphathetic Web
We all think differenty. Some of us process information visually, others
verbally, some holistically and others analytically. These differences are
known as cognitive styles. The web is a information medium where we process
new ideas. Why should the web be a static entity providing the same experience
for every person? The vision is having the Internet be able to understand our
personality and our motivations. The Emphathetic Web is named such that it
expresses the notion that the web knows you personally and will react in a
particular manner you will enjoy the most. It is with that connection that we
will be more productive and happier.
Complete Research Project
Steps
Development of inference engine which can take in the priors and
observations from surveys to generate the posterior probability of serving up a
particular morph of the content.
Demonstration of morphing on cognitive styles in limited scope, such as
digital advertisement in a controlled study.
Expand to real-world experiement with realistic conditions, facilitating a
large number of participants.
Utilize previous results and take a more general approach. Using the
mobile platform, develop a system for inferring purpose and motivation of user.
Combine with system for cognitive styles to obtain the full engine.
Either the creation of a licensing company or facilitate incorporation of
this system by large internet properties through consulting.
Contributions
Demonstrated that an effort to leverage trust-based marketing approaches in
the context of understanding leads to higher effectiveness.
A demonstrated increase in participation with active learning and morphing
performed.
A more positive experience experienced by users measured through
qualitative description.
Gleb Kuznetsov
Furthering the E-Wall Project: Creating a Framework for Connecting Visual and Internal Representations of Knowledge
In order to make progress toward a stronger human-computer synergy, it is necessary to understand how our external, visual representations of knowledge map to the internal representations inside our minds.
A Complete Research Project.
Steps
Research the E-Wall Project as thus far developed by Paul Keel et al
Code up a simplified version of the program that allows creation and positioning of cards
Add a semantic look-up component using Google to seek inherent relations
Conduct experiment with subjects tagging and placing cards with pre-determined image bank
Compare semantic look-up results with subjects' positioning and tagging behavior
Describe how further experiments can be carried out using this framework
Contributions
Establish a framework for developing understanding about how people organize information
Show how visual positioning of information can be used to understand how knowlege is internalized, and how visual positioning can be used to help learn and recall information, as well as stimulate creativity.
Provide base for further research, including use of intermediate features and development of semantic agents in the E-Wall environmentxs
Harold Capen Low
Story Understanding through Plot Units
If we are to construct machines capable of story understanding, we must first understand
the fundamental building blocks of a storys plot. I envision following up on Wendy
Lehnerts work in Plot Units and Narrative Summarization (1981) by building a
structure for the recognition, formation, and understanding of plot units. Lehnert
outlines a full vocabulary for primitive plot units, atomic structures of plot that can
be assembled into more complex pieces. These compound plot elements are the building
blocks with which we construct plotlines in our stories. I will develop a tool for
Prof. Patrick Winstons Gauntlet system that is capable of reading in a story as input,
constructing plot units representing its input, and subsequently answering questions
concerning the story.
"Best"
Steps
Determine and construct a requisite "common sense" knowledge needed to fully understand certain actions in simple English. For example, if someone is "murdered", then humans can infer that the person is now dead, they have been killed BY someone, and this is presumably viewed as a negative action by the victim.
Using this "common sense" knowledge base, I will then write a program to construct a representation of mental states and interconnections representing a parsed story.
I will then develop a program that can determine if a parsed story contains certain plot elements represented by different Plot Unit structures. For example, the program will be able to tell that both Hamlet and MacBeth contain a Revenge (indeed, many), and that Dante's Inferno does not.
I will then give the program the capacity to understand and answer specific questions about stories it has heard, including what actions took place, who was involved, and what their motivations were.
Contributions
Constructed a representation for the emotional/mental states for a storys characters.
Developed a vocabulary of words or actions that indicate the existence or causation of positive, negative, and mental states.
Written a program that reads a simplified storys plotline, discerns both the basic and complex Plot Units contained in the plotline, and answers questions concerning these Plot Units to reflect the programs understanding of the story.
Angelique Moscicki
Intermediate Complexity in Chemical Diagram Recognition
The goal of this project is to create a system that recognizes chemical diagrams
as part of a search-by-picture engine for chemists.
A part of an ongoing research project.
Steps
Implement low level vectorization of the diagrams - done
Apply heuristics in the form of "drafting facts" - knowledge about how
diagrams are drawn - to construct an intermediate complexity representation out
of the vectors.
Implement a high level recognizer that uses chemical knowledge in the form
of a belief propagation network. Then, use this to correct the low level
recognition / intermediate representation by "focusing in" on likely errors.
Contributions
Argue that intermediate complexity representations are useful for chemical
diagram recognition.
Argue that such representations should be flexible enough for high level
interpretation to correct errors in the low level recognition.
Implement a program that actually does this, hopefully with a good
recognition rate for chemical diagrams.
Yaniv Ophir (Junno)
Programmable Space
The goal of this project is to understand how architects organize spaces
into a floor plan (aka architectural programming). Specifically, I am
interested in exposing the main considerations involved in the decision
making process that constitutes an architectural floor plan.
A study/ experiment with (human) architects and report.
Steps
Explain what architectural programming is.
Articulate the problems of architectural programming.
Present and critique past approaches.
Design one or more experiment(s).
Conduct experiment in a local architecture firm.
Collect and analyze data.
Report on findings.
Contributions
The expected contributions are:
Explain what architectural programming is and why it is important.
Propose a model of architectural programming.
Build a prototype based on the proposed representation to programmatically organize a set of spaces (optional).
James Ostrowski
Grounding of Symbols by Cross-Feature Clustering
If we are to represent how the brain grounds symbols, we should represent descriptions of symbols relevant to a class as combinations of the intermediate complexity features of that class. Complete Research Project
Steps
Implement a SOM framework in Java that can do Hebbian association between clusters in different SOMs
Locate a database of face images that are tagged as happy or angry
Implement a function that can extract the features of maximum mutual information that Ullman identified from a facial image
Use the SOM framework to generate descriptions of "happy" and "angry" in an unsupervised manner without using symbolic tags.
Give the systems a few images tagged with "happy" or "angry" so system can assign names for the descriptions.
Test if the system learned the symbols "happy" and "angry" by asking it to classify novel happy and angry faces.
Contributions
Tested whether symbols relevant to a class can be described by variation in the features with the most mutual information about that class.
Tested whether an arbitrary feature can be converted into a SOM vector by correlating it against a basis of members of the class the feature is extracted from.
Described an unsupervised cross-feature clustering algorithm. The algorithm takes as input images marked with features of intermediate complexity, and outputs descriptions of symbols pertinent to the class the images belong to.
Used the cross-feature clustering algorithm to make an unsupervised system that can classify faces as happy or angry
Kendra Pugh
A Medical Expert System Authored by a Medical Expert
If I want to understand the challenges faced by those attempting to implement a useful medical expert system, and discover if an expert system implemented by an expert in the subject would be significantly different from an expert system written by a non-expert, I should implement one myself.
Research Project (though heavily influenced by ATTENDING, etc.)
Steps
I researched and learned the difficulties in implementing useful medical expert systems.
I selected a medical provider field in which I would consider myself an expert. I have been an EMT-Basic for 3 years.
I found problem domain experts willing to evaluate and supplement my system.
I will write an expert system for consultation/critique of EMT-Basics. I will use the JESS rule engine to write a web-based applet with GUI resembling a standard trip report form.
I will have problem domain experts critique and contribute new knowledge the system.
Contributions
Created an EMT-Basic expert system.
Elucidated differences in expert system implementation by problem domain expert vs. non-expert.
Explored implications for the future of medical expert systems.
Brandon Pung
Sequence Seeking for Motion: An Application of Counter Streams
The goal of my project is to take the ideas formulated by Ullman in his paper on Counter Streams and create a system for identifying and classifying motion events.
A complete research project (could also be considered a modified and extended reimplementation)
Steps
Step 1: Generate a collection of movie clips in which a stick figure is performing different acts of motion with a ball (such as drop, give, toss upwards, juggle). These clips will populate the library of representations.
Step 2: Create the software system that will search using counter streams for a sequence of transformations that will form a link between an input clip and a stored representation from the library. The counter streams will be branching at transformations such as speed and color from the top, and scaling and translations from the bottom. This will be the bulk of the work.
Step 3: Make the software system capable of randomly generating an act of motion from variables such as motion type (drop, give, toss, juggle), ball color, motion speed, and scale. These randomly generated clips will be used as the input clips to the system.
Step 4: Test on randomly generated inputs and analyze results.
Contributions
The expected contributions are as follows...
Design and implement a software system that will search using counter streams for a sequence of transformations that will form a link between the input motion clip and a stored representation from the library.
Test and analyze the effectiveness of the system for classifying motion-based events.
Steffen Reichert
The Aesthetics Machine
If we want to be able to design machines with aesthetic understanding, we have to understand how aesthetics can be reduced to logic components or relations.
A research proposal.
Steps
Concentrating only to 2D layout design.
Declaring a basic set of design segments and aesthetic rules.
Creating styles by relating aesthetic rules.
Propose system that can detect and classify segments.
System can compare design segments to identify aesthetic rules.
By comparing the relations of rules it can define the best matching style of a design and give suggestions of improvements.
New styles can be defined by reconfiguring or breaking rules.
Showing relevance for 2D and 3D design systems.
Contributions
Framing problem of reducing design to computational components.
Proposing program that can identify styles, suggests improvements of a design and can be able to create new reasonable styles.
Rachel Shearer
Culture and the Computational Model of Human Intelligence
If we want to construct a model of intelligence, we need to examine how cultural background affects our understanding of human learning and development. Investigating variations in language and reasoning across cultures may help us to improve our representations and, ultimately, our conception of intelligent systems.
A Simulated Topic Exam/Research Proposal (maybe)
Steps
Explore a collection of proposed models for intelligence
Describe the inferences they make about development and learning
Examine a variety of cultures that suggest interesting or little-explored linguistic/visual/social properties: the Piraha, the speakers of Tzeltal, etc.
Articulate whether existing models can account for these properties. If so, discuss the features of the models that make this possible. If not, propose additions that improve the model
Contributions
An articulation of implicit inferences in models of intelligence
A demonstration of strengths of these models in the face of challenges, or a suggestion for improvements to the models
Hamidou Soumare
Zonal Representation for Economic modeling
To create a representation that facilitates reasoning about and
solving business problems
A research proposal
Steps
Introduce Consulting prep book "Case in Point"
Discuss general algorithm for solving business cases presented in
"Case in Point"
Discuss generic tree structure of a business problem
Develop Zonal Representation as surrogate for dynamic nature of a
business problem
Demonstrate how Zonal Representation can be used to provide
efficient solution to business problems
Compare Zonal Representation to Decision Rational Language method
of problem solving
Contributions
Discussion of the major steps required to solve a business problem
Creation of a representation that models the dynamic nature of
business decision making
Illustration of the power of Zonal representation via examples
Skylar Tibbits
Macro Coded Assembly
If we are going to understand the organization of the world around us in search of architectural implications, we can first look towards self-organizing systems that grow from simple objects to complex structures as an indication of design and assembly possibilities.
OR
If we can identify that every major technological development has lead directly to architectural re-conceptualization, then we can propose the natural evolution of architecture to following new advancements with self-assembly and programmable matter.
"A complete Research Topic"
Steps
Define current problem of assembly and static configuration
Define algorithm to "grow" spatial output and then deconstruct into single strand
Demonstrate possibilities for re-configuration
Demonstrate working prototype of coded assembly at full scale
Contributions
Will provide a means for automated construction
Will provide a means for self re-configurable space and adaptation on demand
Will provide an algorithm for generating growth of space through chains and decoding angle sequences
Aditya Undurti
Recognition of Moods by Perceiving Actions
The goal is to build a system that learns that humans can have many different mental states (called "moods") and learn and infer these states by observing patterns in their actions
Best
Steps
Pick which actions the system will observe, and what the mode(s) of perception will be
Research for a good clustering/pattern recognition algorithm, or invent one
Implement as C++/Matlab code
Contributions
I will extract patterns in a human's behavior that are relevant to determining mood
I will build a working system that will use these patterns to determine that humans can have moods, and learn how many moods a human can have
Olga Wichrowska
Sentence Parsing with Word Sense Disambiguation
Current state-of-the-art natural language parsers rely on statistical information about sentence structures. These parsers cannot achieve human-level performance, however, because they lack both semantic and common-sense knowledge. They may never be able to correctly parse ambiguous sentences such as "I saw the man with the telescope" without information about the discourse context and the meaning of the words themselves. If machines are to understand language in the way humans do, they must combine both syntactic and word-sense information when parsing text.
A research proposal, possibly turning into a complete research project
Steps
Step 1: Collect PP attachment errors from the Bikel/Collins parser on section 22 of the Penn Treebank
Step 2: Compare key words in misplaced PPs and their parent phrases to senses in WordNet
Step 3: Explore the effectiveness of different knowledge-based and corpus-based methods on improving PP attachment of these sentences
Step 4: (Possible) test using the best method(s) on whole corpus
Contributions
Identify the words causing the most PP attachment errors in the Bikel/Collins parser
Test effectiveness of WSF methods on parsing tasks in the Bikel/Collins parser
Propose an improvement to current parsing methods using WSD techniques