Home Project Folders Resources How Do I? MWForum
Site Map Search Our Team

MWForum Message [Date Index] [Threads] [Authors] [Attachments] [Subscribe]

[Thread Prev] [Thread Next]

Subject: movie recommender
From: mwforum@xxxxxxxxxxxxxxxxxx (Jeff Knope)
Date: Tue, 20 Apr 2004 15:49:42 -0700

Vasant Dhar wrote:

I am trying to build a very simple recommender system for movies in
Microworlds. It will work as follows:

1. System asks user to specify GENRE of interest, i.e. comedy, thriller,
etc.
2. System searches through a table of past movies (HISTORICAL_MOVIES)
corresponding to the specified GENRE. Call this subset SUBSET.
3. System presents user with SUBSET and asks which movies user liked (or it
can ask for a ranking, which is preferable). Let's call this LIKED_SUBSET.
4. System matches attributes of LIKED_SUBSET with a table of CURRENT_MOVIES
to determine SUGGESTED_SUBSET which consists of ranked movies.
5. If user is satisfies, quit, otherwise go to step 1.

This is a pretty simple problem, easily solvable in BASIC. How do I do it in
MW? The way I see it, it involves creating a tables of movies (historical
and current), which should be sets of structured objects whose
attribute-values can be accessed and matched. And the results should be
assigned via some kind of assignment statement to variables etc.


Dear Vasant,

MicroWorlds uses a different data structure paradigm than BASIC. MicroWorlds
is a dialect of the artificial intelligence language LISP, whose name is
derived from exactly this difference. It stands for "LISt Processing." The
fundamental data structure is a list, not a table. Data is evaluated by
recursively examining the elements of a list. 

A list may me a list of lists. This statement is the key to complexity of data
structure in MicroWorlds. 

It takes a little practice to wrap your mind around this difference. It takes
quite a bit of practice to become facile with writing procedures for building
lists, and then writing other procedures for analyzing and comparing them. 

If you're in a hurry, you probably ought to just do it in BASIC. Otherwise,
your project makes a nearly ideal problem for learning list processing.
Perhaps other forum members can point you toward the best materials for
building skills to do this.

Please believe me, these comments are more helpful than they may at first
sound.

Good Luck,
Jeff
Vasant Dhar wrote:
 
I am trying to build a very simple recommender system for movies in
Microworlds. It will work as follows:

1. System asks user to specify GENRE of interest, i.e. comedy, thriller,
etc.
2. System searches through a table of past movies (HISTORICAL_MOVIES)
corresponding to the specified GENRE. Call this subset SUBSET.
3. System presents user with SUBSET and asks which movies user liked (or it
can ask for a ranking, which is preferable). Let's call this LIKED_SUBSET.
4. System matches attributes of LIKED_SUBSET with a table of CURRENT_MOVIES
to determine SUGGESTED_SUBSET which consists of ranked movies.
5. If user is satisfies, quit, otherwise go to step 1.

This is a pretty simple problem, easily solvable in BASIC. How do I do it in
MW? The way I see it, it involves creating a tables of movies (historical
and current), which should be sets of structured objects whose
attribute-values can be accessed and matched. And the results should be
assigned via some kind of assignment statement to variables etc.

Dear Vasant,
 
MicroWorlds uses a different data structure paradigm than BASIC. MicroWorlds is a dialect of the artificial intelligence language LISP, whose name is derived from exactly this difference. It stands for "LISt Processing." The fundamental data structure is a list, not a table. Data is evaluated by recursively examining the elements of a list.
 
A list may me a list of lists. This statement is the key to complexity of data structure in MicroWorlds.
 
It takes a little practice to wrap your mind around this difference. It takes quite a bit of practice to become facile with writing procedures for building lists, and then writing other procedures for analyzing and comparing them.
 
If you're in a hurry, you probably ought to just do it in BASIC. Otherwise, your project makes a nearly ideal problem for learning list processing. Perhaps other forum members can point you toward the best materials for building skills to do this.
 
Please believe me, these comments are more helpful than they may at first sound.
 
Good Luck,
Jeff

  • Previous by thread: building a movie recommending system
  • Next by thread: movie recommender

  • To save an attachment to your computer, PC users should right-click (Mac users, click and hold the mouse button) on the link and then choose 'save target as' from the pop-up menu. A window will then pop up in which you can choose a location for the file.


    © copyright 2001 - 2006