Loading ...
Sorry, an error occurred while loading the content.

Re: [aima-talk] What are the best online resources available for AIMA?

Expand Messages
  • Robert Futrelle
    If you have a chance to look at Norvig s book, Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp, it can teach you a lot. It will
    Message 1 of 7 , Apr 5, 2006
    • 0 Attachment
      Re: [aima-talk] What are the best online resources availab
      If you have a chance to look at Norvig's book,  Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp, it can teach you a lot.  It will show you how compactly Lisp can represent and manipulate knowledge-related structures and algorithms.

      C is a poor language for AI because its syntax is so distant from the concepts you are working with.  The essence of AI is concepts and algorithms, not code and efficiency.  When trying to do symbolic computations in C, most people end up unwittingly re-implementing many of the basics of Lisp in order to do the symbolic computations. "Those who don't know Lisp are forced to reinvent it," the saying goes.

      At least Java and some other modern languages took seriously the importance of the lack of pointers and automatic memory management that were in Lisp from the beginning.  Whether or not you use Lisp, you owe it a debt of gratitude.

      BTW: What free AI book is being referred to?

        - Bob Futrelle
      _______________________________________________________________
      > Robert P. Futrelle      | Biological Knowledge Laboratory
         Associate Professor  | College of Computer  and Information
                  >              |     Science MS WVH202
      Office: (617)-373-4239  | Northeastern University
      Fax:    (617)-373-5121  | 360 Huntington Ave.
      futrelle@...    | Boston, MA 02115
               http://www.ccs.neu.edu/home/futrelle
        http://www.bionlp.org   http://www.diagrams.org

                http://biologicalknowledge.com
             mailto:biologicalknowledge@...
      _______________________________________________________________
      >


      Hi,

      > Should I go with Prolog or Scheme?

      I've heard a lot of times that learning a new [computer] language helps you a
      lot using the others better. And that has been indeed my personal experience. I
      program mostly in Java but use often recursive methods I learned from Lisp,
      Scheme and the pseudo-code of AIMA.

      > Do you have any other resouces/slides/etc to recommend?

      There is a free book about AI and lots of high quality Wikipedia pages which
      will soon become the best source IMHO.

      <advertisement>
      I'm programming a library in Java (mainly with the algorithms of AIMA). I'm
      programming applets too. You can see a preview at:
      http://www.artificialidea.com/index.php?page=my_programs
      </advertisement>

      IMHO Scheme, Lisp, Prolog (which I have no idea of) are old programming
      languages. Most projects are done in C, when performance is important, or in
      Java and Python, when performance is not very important. As a language for
      students, Python is really intuitive. I like Groovy too, but I haven't had much
      time yet to play with it.

      --
      Ivan F. Villanueva B.
      artificialidea.com
      <<<                   European Community Patent will bring            >>>
      <<<                     Software patents by the backdoor              >>>
      <<<                      
      http://wiki.ffii.org/ComPatEn                 >>>
      SPONSORED LINKS
      Artificial intelligence software Artificial intelligence in business Artificial intelligence Artificial intelligence introduction


      YAHOO! GROUPS LINKS


    • Farid B
      Hi, ... I was just browsing Russel s page, and LISP was ALL over the place. Prolog was also included but not seemingly as much recommended as LISP. Yet, I
      Message 2 of 7 , Apr 6, 2006
      • 0 Attachment
        Hi,

        > If you have a chance to look at Norvig's book,
        > Paradigms of
        > Artificial Intelligence Programming: Case Studies in
        > Common Lisp, it
        > can teach you a lot. It will show you how compactly
        > Lisp can
        > represent and manipulate knowledge-related
        > structures and algorithms.
        >
        I was just browsing Russel's page, and LISP was ALL
        over the place. Prolog was also included but not
        seemingly as much recommended as LISP.
        Yet, I don't have much idea about LISP, I've heard a
        lot of hackers (in the sense of e.g. Eric Raymond)
        recommend it as a must-learn programming language. I'm
        not a professional programmer, so can I learn it fast?


        > C is a poor language for AI because its syntax is so
        > distant from the
        > concepts you are working with. The essence of AI is
        > concepts and
        > algorithms, not code and efficiency. When trying to
        > do symbolic
        > computations in C, most people end up unwittingly
        > re-implementing
        > many of the basics of Lisp in order to do the
        > symbolic computations.
        > "Those who don't know Lisp are forced to reinvent
        > it," the saying
        > goes.
        >

        Our instructor has not enforced much programming, as
        you mentioned: AI is mostly concerned with concepts
        not coding.
        Therefore it doesn't make much difference for me
        whether to learn Prolog/LISP? Considering the "short
        window of learning opportunity" for learning a new
        language highly effective for my AI, pitting Prolog
        against LISP, which one wins?

        I have the AIMA book, but I need some resource that
        can teach it to me. I'm not getting much from the
        class. Now, considering my case, is learning Scheme
        for aligning myself with the MIT iCampus course on AI
        a bad idea?

        I've got the impression that Scheme is an
        easy-to-learn language. Now, can you guide me what
        path to take?

        One last point:

        I've checked Russel's slides, they're fine. But are
        there ANY better-polished ones out there?

        > BTW: What free AI book is being referred to?
        >

        Is this question addressed to me or Ivan?


        > - Bob Futrelle
        >
        _______________________________________________________________
        > Robert P. Futrelle | Biological Knowledge
        > Laboratory
        > Associate Professor | College of Computer and
        > Information
        > | Science MS WVH202
        > Office: (617)-373-4239 | Northeastern University
        > Fax: (617)-373-5121 | 360 Huntington Ave.
        > futrelle@... | Boston, MA 02115
        > http://www.ccs.neu.edu/home/futrelle
        > http://www.bionlp.org http://www.diagrams.org
        >
        > http://biologicalknowledge.com
        > mailto:biologicalknowledge@...
        >
        _______________________________________________________________
        >
        >
        > >Hi,
        > >
        > >> Should I go with Prolog or Scheme?
        > >
        > >I've heard a lot of times that learning a new
        > [computer] language helps you a
        > >lot using the others better. And that has been
        > indeed my personal
        > >experience. I
        > >program mostly in Java but use often recursive
        > methods I learned from Lisp,
        > >Scheme and the pseudo-code of AIMA.
        > >
        > >> Do you have any other resouces/slides/etc to
        > recommend?
        > >
        > >There is a free book about AI and lots of high
        > quality Wikipedia pages which
        > >will soon become the best source IMHO.
        > >
        > ><advertisement>
        > >I'm programming a library in Java (mainly with the
        > algorithms of AIMA). I'm
        > >programming applets too. You can see a preview at:
        >
        ><http://www.artificialidea.com/index.php?page=my_programs>http://www.artificialidea.com/index.php?page=my_programs
        > ></advertisement>
        > >
        > >IMHO Scheme, Lisp, Prolog (which I have no idea of)
        > are old programming
        > >languages. Most projects are done in C, when
        > performance is important, or in
        > >Java and Python, when performance is not very
        > important. As a language for
        > >students, Python is really intuitive. I like Groovy
        > too, but I
        > >haven't had much
        > >time yet to play with it.
        > >
        > >--
        > >Ivan F. Villanueva B.
        > >artificialidea.com
        > ><<< European Community Patent
        > will bring >>>
        > ><<< Software patents by the
        > backdoor >>>
        > ><<<
        >
        ><http://wiki.ffii.org/ComPatEn>http://wiki.ffii.org/ComPatEn
        >
        > >>>>
        > >
        > >SPONSORED LINKS
        >
        ><http://groups.yahoo.com/gads?t=ms&k=Artificial+intelligence+software&w1=Artificial+intelligence+software&w2=Artificial+intelligence+in+business&w3=Artificial+intelligence&w4=Artificial+intelligence+introduction&c=4&s=150&.sig=Z-KgstNm21fXWEV4ASPvHQ>Artificial
        >
        > >intelligence software
        >
        ><http://groups.yahoo.com/gads?t=ms&k=Artificial+intelligence+in+business&w1=Artificial+intelligence+software&w2=Artificial+intelligence+in+business&w3=Artificial+intelligence&w4=Artificial+intelligence+introduction&c=4&s=150&.sig=477uHvbluHUGZv4M3Wsnag>Artificial
        >
        > >intelligence in business
        >
        ><http://groups.yahoo.com/gads?t=ms&k=Artificial+intelligence&w1=Artificial+intelligence+software&w2=Artificial+intelligence+in+business&w3=Artificial+intelligence&w4=Artificial+intelligence+introduction&c=4&s=150&.sig=LONI6S4JBLJohI0gb7t-Ug>Artificial
        >
        > >intelligence
        >
        ><http://groups.yahoo.com/gads?t=ms&k=Artificial+intelligence+introduction&w1=Artificial+intelligence+software&w2=Artificial+intelligence+in+business&w3=Artificial+intelligence&w4=Artificial+intelligence+introduction&c=4&s=150&.sig=n5dsIRz6BWbukAv5Ru4LcA>Artificial
        >
        > >intelligence introduction
        > >
        > >
        > >YAHOO! GROUPS LINKS
        > >
        > > Visit your group
        >
        >"<http://groups.yahoo.com/group/aima-talk>aima-talk"
        > on the web.
        > >
        > > To unsubscribe from this group, send an email to:
        > >
        >
        ><mailto:aima-talk-unsubscribe@yahoogroups.com?subject=Unsubscribe>aima-talk-unsubscribe@yahoogroups.com
        > >
        > > Your use of Yahoo! Groups is subject to the
        > ><http://docs.yahoo.com/info/terms/>Yahoo! Terms of
        > Service.
        >


        __________________________________________________
        Do You Yahoo!?
        Tired of spam? Yahoo! Mail has the best spam protection around
        http://mail.yahoo.com
      • Paolo Amoroso
        ... If by LISP you mean Common Lisp, i.e. the language the AIMA Lisp code is written in, you may have a look at this book: Practical Common Lisp
        Message 3 of 7 , Apr 6, 2006
        • 0 Attachment
          Farid B <farid_behnia@...> writes:

          > Yet, I don't have much idea about LISP, I've heard a
          > lot of hackers (in the sense of e.g. Eric Raymond)
          > recommend it as a must-learn programming language. I'm
          > not a professional programmer, so can I learn it fast?

          If by "LISP" you mean Common Lisp, i.e. the language the AIMA Lisp
          code is written in, you may have a look at this book:

          Practical Common Lisp
          http://www.gigamonkeys.com/book


          > I've got the impression that Scheme is an
          > easy-to-learn language. Now, can you guide me what
          > path to take?

          If you are interested in Scheme, see:

          Teach Yourself Scheme in Fixnum Days
          http://gd.tuwien.ac.at/languages/scheme/tutorial-dsitaram/t-y-scheme.html

          How to Design Programs
          http://www.htdp.org


          Paolo
          --
          Lisp Propulsion Laboratory log - http://www.paoloamoroso.it/log
        • Ivan F. Villanueva B.
          ... Thanks. I will. ... If you mean GOFAI, I consider the Python sources of AIMA much easier to understand than the lisp sources. For embodied AI, like Robot
          Message 4 of 7 , Apr 6, 2006
          • 0 Attachment
            On Wed, Apr 05, 2006 05:20:29PM -0400, Robert Futrelle wrote:
            > If you have a chance to look at Norvig's book, Paradigms of Artificial
            > Intelligence Programming: Case Studies in Common Lisp, it can teach you a
            > lot. It will show you how compactly Lisp can represent and manipulate
            > knowledge-related structures and algorithms.

            Thanks. I will.

            > C is a poor language for AI because its syntax is so distant from the concepts
            > you are working with.

            If you mean GOFAI, I consider the Python sources of AIMA much easier to
            understand than the lisp sources. For embodied AI, like Robot programming, C is
            the one. The best robot simulations I know, Player/Stage Project and Webots, are
            in C/C++

            > When trying to do symbolic computations in C, most people end
            > up unwittingly re-implementing many of the basics of Lisp

            "Symbolic Computations" is exactly the problem. "Symbolic Computations" are the
            reason why AI has not yet managed to create robots as intelligent as, say, a
            fish. A good book about it is: "Understanding Intelligence" by Pfeifer and
            Scheier.

            > BTW: What free AI book is being referred to?

            http://www.markwatson.com/opencontent/
            and some books in wikibooks.


            I think symbolic algorithms are an interesting field in AI, but not the only one,
            not even the most important one, and I think that fact is the first thing any AI
            student have to heard.

            Coming back to the OP's question, I would say the best languages to learn at
            the moment for AI are python because it is easy; and C/C++ for performance.

            --
            Ivan F. Villanueva B.
            artificialidea.com
            <<< European Community Patent will bring >>>
            <<< Software patents by the backdoor >>>
            <<< http://wiki.ffii.org/ComPatEn >>>
          • Robert Futrelle
            I have to agree that symbolic computation has definite limits. You could even go so far as to consider it a human conceit to try to reduce rich and complex
            Message 5 of 7 , Apr 6, 2006
            • 0 Attachment
              Re: [aima-talk] lisp and free book
              I have to agree that symbolic computation has definite limits.  You could even go so far as to consider it a human conceit to try to reduce rich and complex phenomena to a set of discrete symbols that we create.  Corpus-based NLP, HMMs, situated robotics systems, neural nets, etc., demonstrate the power that's accessible beyond human-designated symbols.  The argument that we have symbols in our heads is a hard one to support, and it's only getting harder.

               -- Bob Futrelle

              _______________________________________________________________
              > Robert P. Futrelle      | Biological Knowledge Laboratory
                 Associate Professor  | College of Computer  and Information
                          >              |     Science MS WVH202
              Office: (617)-373-4239  | Northeastern University
              Fax:    (617)-373-5121  | 360 Huntington Ave.
              futrelle@...    | Boston, MA 02115
                       http://www.ccs.neu.edu/home/futrelle
                http://www.bionlp.org   http://www.diagrams.org

                        http://biologicalknowledge.com
                     mailto:biologicalknowledge@...
              _______________________________________________________________


              On Wed, Apr 05, 2006 05:20:29PM -0400, Robert Futrelle wrote:
              > If you have a chance to look at Norvig's book,  Paradigms of Artificial
              > Intelligence Programming: Case Studies in Common Lisp, it can teach you a
              > lot.  It will show you how compactly Lisp can represent and manipulate
              > knowledge-related structures and algorithms.

              Thanks. I will.

              > C is a poor language for AI because its syntax is so distant from the concepts
              > you are working with.

              If you mean GOFAI, I consider the Python sources of AIMA much easier to
              understand than the lisp sources. For embodied AI, like Robot programming, C is
              the one. The best robot simulations I know, Player/Stage Project and Webots, are
              in C/C++

              > When trying to do symbolic computations in C, most people end
              > up unwittingly re-implementing many of the basics of Lisp

              "Symbolic Computations" is exactly the problem. "Symbolic Computations" are the
              reason why AI has not yet managed to create robots as intelligent as, say, a
              fish. A good book about it is: "Understanding Intelligence" by Pfeifer and
              Scheier.

              > BTW: What free AI book is being referred to?

              http://www.markwatson.com/opencontent/
              and some books in wikibooks.


              I think symbolic algorithms are an interesting field in AI, but not the only one,
              not even the most important one, and I think that fact is the first thing any AI
              student have to heard.

              Coming back to the OP's question, I would say the best languages to learn at
              the moment for AI are python because it is easy; and C/C++ for performance.

              --
              Ivan F. Villanueva B.
              artificialidea.com
              <<<                   European Community Patent will bring            >>>
              <<<                     Software patents by the backdoor              >>>
              <<<                      
              http://wiki.ffii.org/ComPatEn                 >>>

              YAHOO! GROUPS LINKS


            Your message has been successfully submitted and would be delivered to recipients shortly.