[MWForum]movie recommender
mwforum@lists.mathcats.com
mwforum@lists.mathcats.com
Tue, 20 Apr 2004 20:43:24 -0400 (EDT)
Jeff, I've programmed extensively in Lisp, including my Ph.D thesis. My area of
research is AI!
I gather from your comments that there's no way to define a structured data type
in MW? As in CLOS, for example?
Vasant
On Tue, Apr 20 2004 15:49:00 , Jeff Knope <jknope@asis.com> sent:
>
>
>
>
> Atmail Takeout -->
>
>
>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