Skip to search.

Breaking News Visit Yahoo! News for the latest.

×Close this window

aima-talk · AI: A Modern Approach: Help for the text

The Yahoo! Groups Product Blog

Check it out!

Group Information

? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Real people. Real stories. See how Yahoo! Groups impacts members worldwide.

Messages

Advanced
Messages Help
Messages 858 - 888 of 946   Oldest  |  < Older  |  Newer >  |  Newest
Messages: Show Message Summaries Sort by Date ^  
#858 From: "Peter Norvig" <peter@...>
Date: Wed Apr 22, 2009 4:51 am
Subject: AIMA 3rd edition cover design contest
norvig
Send Email Send Email
 
We're having a contest to design the cover for the 3rd edition.

Open to instructors and students, see the contest rules at
http://media.pearsoncmg.com/ph/esm/ecs_ai/ .  Deadline June 15th.

-Peter Norvig

#859 From: Donnchadh Ó Donnabháin <donnchadh@...>
Date: Wed Apr 22, 2009 9:11 am
Subject: Re: AIMA 3rd edition cover design contest
dodonnabhain
Send Email Send Email
 
That's great. Is there any information available on what to expect in
the 3rd edition or an estimate of when to expect it to be available
for purchase?

   Thanks

     Donnchadh

2009/4/22 Peter Norvig <peter@...>:
>
>
> We're having a contest to design the cover for the 3rd edition.
>
> Open to instructors and students, see the contest rules at
> http://media.pearsoncmg.com/ph/esm/ecs_ai/ . Deadline June 15th.
>
> -Peter Norvig
>

#860 From: <futrelle@...>
Date: Wed Apr 22, 2009 12:57 pm
Subject: Re: AIMA 3rd edition cover design contest
bobfutrelle
Send Email Send Email
 
Light-hearted suggestion:

Instead of God's finger touching Adam, ala Michelangelo, we could have a
human in the clouds touching the finger of a robot agent.


  - Bob Futrelle



On 12:51:03 am 04/22/09 "Peter Norvig" <peter@...> wrote:
>
>
>
>             We're having a contest to design the cover for the 3rd
> edition.
> Open to instructors and students, see the contest rules at
> http://media.pearsoncmg.com/ph/esm/ecs_ai/ .  Deadline June 15th.
> -Peter Norvig
>
>
>
>

#861 From: Bilal Hayat Butt <bilal_hayat_butt@...>
Date: Mon Apr 27, 2009 2:19 pm
Subject: Re: AIMA 3rd edition cover design contest
bilal_hayat_...
Send Email Send Email
 

Whats the point in having it for US residents only?

---------------

2. Eligibility.

Open to legal U.S. residents, that are instructors or students (enrolled at a two- or four-year college).

[3 ! |_ /\ |_

--- On Wed, 4/22/09, Peter Norvig <peter@...> wrote:
From: Peter Norvig <peter@...>
Subject: [aima-talk] AIMA 3rd edition cover design contest
To: aima-talk@yahoogroups.com
Date: Wednesday, April 22, 2009, 9:51 AM

We're having a contest to design the cover for the 3rd edition.

Open to instructors and students, see the contest rules at http://media. pearsoncmg. com/ph/esm/ ecs_ai/ . Deadline June 15th.

-Peter Norvig



#862 From: "Peter Norvig" <peter@...>
Date: Tue Apr 28, 2009 5:59 pm
Subject: Re: AIMA 3rd edition cover design contest
norvig
Send Email Send Email
 
If it were up to me, I would have it open to anyone, regardless of residency,
and regardless of status as a student or teacher.  But Prentice Hall has legal
issues they have to work with, and that's what they decided would be easiest.

-Peter

--- In aima-talk@yahoogroups.com, Bilal Hayat Butt <bilal_hayat_butt@...> wrote:
>
> Whats the point in having it for US residents only?
> ---------------
> 2.  Eligibility.
>
> Open to legal U.S. residents, that are instructors or students (enrolled at a
two- or four-year college).
>
> [3 ! |_ /

#863 From: Nima Talebi <nima.talebi@...>
Date: Wed Apr 29, 2009 1:09 am
Subject: Re: Re: AIMA 3rd edition cover design contest
daashmashty
Send Email Send Email
 
Good think this came up - I had already started :/

That'll teach me to `assume' that I'm eligible =)

Nima

On Wed, Apr 29, 2009 at 3:59 AM, Peter Norvig <peter@...> wrote:


If it were up to me, I would have it open to anyone, regardless of residency, and regardless of status as a student or teacher. But Prentice Hall has legal issues they have to work with, and that's what they decided would be easiest.

-Peter



--- In aima-talk@yahoogroups.com, Bilal Hayat Butt <bilal_hayat_butt@...> wrote:
>
> Whats the point in having it for US residents only?
> ---------------
> 2. Eligibility.
>
> Open to legal U.S. residents, that are instructors or students (enrolled at a two- or four-year college).
>
> [3 ! |_ /




--
Nima Talebiw: http://ai.autonomy.net.au/                    
p: +61-4-0667-7607  m: nima@...

#864 From: James Clemence <jamesvclemence@...>
Date: Sat May 2, 2009 11:25 pm
Subject: Pathing
jamesvclemence@...
Send Email Send Email
 
I've been looking through the python code for the search algorithms. I must acknowledge that I am pretty new to python, so apologies for basic mistakes. Having dragged the various needed classes and subclasses etc. from the original setup, I'm left with:

#!/usr/bin/python

from __future__ import generators

import math
import random
import sys
import time
import bisect
import string
import sets

infinity = 1.0e400

class Problem:
    """The abstract class for a formal problem.  You should subclass this and
    implement the method successor, and possibly __init__, goal_test, and
    path_cost. Then you will create instances of your subclass and solve them
    with the various search functions."""

    def __init__(self, initial, goal=None):
        """The constructor specifies the initial state, and possibly a goal
        state, if there is a unique goal.  Your subclass's constructor can add
        other arguments."""
        self.initial = initial; self.goal = goal

    def successor(self, state):
        """Given a state, return a sequence of (action, state) pairs reachable
        from this state. If there are many successors, consider an iterator
        that yields the successors one at a time, rather than building them
        all at once. Iterators will work fine within the framework."""
        abstract

    def goal_test(self, state):
        """Return True if the state is a goal. The default method compares the
        state to self.goal, as specified in the constructor. Implement this
        method if checking against a single self.goal is not enough."""
        return state == self.goal

    def path_cost(self, c, state1, action, state2):
        """Return the cost of a solution path that arrives at state2 from
        state1 via action, assuming cost c to get up to state1. If the problem
        is such that the path doesn't matter, this function will only look at
        state2.  If the path does matter, it will consider c and maybe state1
        and action. The default method costs 1 for every step in the path."""
        return c + 1

    def value(self):
        """For optimization problems, each state has a value.  Hill-climbing
        and related algorithms try to maximize this value."""
        abstract

class Node:
    """A node in a search tree. Contains a pointer to the parent (the node
    that this is a successor of) and to the actual state for this node. Note
    that if a state is arrived at by two paths, then there are two nodes with
    the same state.  Also includes the action that got us to this state, and
    the total path_cost (also known as g) to reach the node.  Other functions
    may add an f and h value; see best_first_graph_search and astar_search for
    an explanation of how the f and h values are handled. You will not need to
    subclass this class."""

    def __init__(self, state, parent=None, action=None, path_cost=0):
        "Create a search tree Node, derived from a parent by an action."
        update(self, state=state, parent=parent, action=action,
               path_cost=path_cost, depth=0)
        if parent:
            self.depth = parent.depth + 1

    def __repr__(self):
        return "<Node %s>" % (self.state,)

    def path(self):
        "Create a list of nodes from the root to this node."
        x, result = self, [self]
        while x.parent:
            result.append(x.parent)
            x = x.parent
        return result

    def expand(self, problem):
        "Return a list of nodes reachable from this node. [Fig. 3.8]"
        return [Node(next, self, act,
                     problem.path_cost(self.path_cost, self.state, act, next))
                for (act, next) in problem.successor(self.state)]

class Graph:
    """A graph connects nodes (verticies) by edges (links).  Each edge can also
    have a length associated with it.  The constructor call is something like:
        g = Graph({'A': {'B': 1, 'C': 2})
    this makes a graph with 3 nodes, A, B, and C, with an edge of length 1 from
    A to B,  and an edge of length 2 from A to C.  You can also do:
        g = Graph({'A': {'B': 1, 'C': 2}, directed=False)
    This makes an undirected graph, so inverse links are also added. The graph
    stays undirected; if you add more links with g.connect('B', 'C', 3), then
    inverse link is also added.  You can use g.nodes() to get a list of nodes,
    g.get('A') to get a dict of links out of A, and g.get('A', 'B') to get the
    length of the link from A to B.  'Lengths' can actually be any object at
    all, and nodes can be any hashable object."""

    def __init__(self, dict=None, directed=True):
        self.dict = dict or {}
        self.directed = directed
        if not directed: self.make_undirected()

    def make_undirected(self):
        "Make a digraph into an undirected graph by adding symmetric edges."
        for a in self.dict.keys():
            for (b, distance) in self.dict[a].items():
                self.connect1(b, a, distance)

    def connect(self, A, B, distance=1):
        """Add a link from A and B of given distance, and also add the inverse
        link if the graph is undirected."""
        self.connect1(A, B, distance)
        if not self.directed: self.connect1(B, A, distance)

    def connect1(self, A, B, distance):
        "Add a link from A to B of given distance, in one direction only."
        self.dict.setdefault(A,{})[B] = distance

    def get(self, a, b=None):
        """Return a link distance or a dict of {node: distance} entries.
        .get(a,b) returns the distance or None;
        .get(a) returns a dict of {node: distance} entries, possibly {}."""
        links = self.dict.setdefault(a, {})
        if b is None: return links
        else: return links.get(b)

    def nodes(self):
        "Return a list of nodes in the graph."
        return self.dict.keys()

class GraphProblem(Problem):
    "The problem of searching a graph from one node to another."
    def __init__(self, initial, goal, graph):
        Problem.__init__(self, initial, goal)
        self.graph = graph

    def successor(self, A):
        "Return a list of (action, result) pairs."
        return [(B, B) for B in self.graph.get(A).keys()]

    def path_cost(self, cost_so_far, A, action, B):
        return cost_so_far + (self.graph.get(A,B) or infinity)

    def h(self, node):
        "h function is straight-line distance from a node's state to goal."
        locs = getattr(self.graph, 'locations', None)
        if locs:
            return int(distance(locs[node.state], locs[self.goal]))
        else:
            return infinity

class Queue:
    """Queue is an abstract class/interface. There are three types:
        Stack(): A Last In First Out Queue.
        FIFOQueue(): A First In First Out Queue.
        PriorityQueue(lt): Queue where items are sorted by lt, (default <).
    Each type supports the following methods and functions:
        q.append(item)  -- add an item to the queue
        q.extend(items) -- equivalent to: for item in items: q.append(item)
        q.pop()         -- return the top item from the queue
        len(q)          -- number of items in q (also q.__len())
    Note that isinstance(Stack(), Queue) is false, because we implement stacks
    as lists.  If Python ever gets interfaces, Queue will be an interface."""

    def __init__(self):
        abstract

    def extend(self, items):
        for item in items: self.append(item)

class PriorityQueue(Queue):
    """A queue in which the minimum (or maximum) element (as determined by f and
    order) is returned first. If order is min, the item with minimum f(x) is
    returned first; if order is max, then it is the item with maximum f(x)."""
    def __init__(self, order=min, f=lambda x: x):
        update(self, A=[], order=order, f=f)
    def append(self, item):
        bisect.insort(self.A, (self.f(item), item))
    def __len__(self):
        return len(self.A)
    def pop(self):
        if self.order == min:
            return self.A.pop(0)[1]
        else:
            return self.A.pop()[1]

def update(x, **entries):
    """Update a dict; or an object with slots; according to entries.
    >>> update({'a': 1}, a=10, b=20)
    {'a': 10, 'b': 20}
    >>> update(Struct(a=1), a=10, b=20)
    Struct(a=10, b=20)
    """
    if isinstance(x, dict):
        x.update(entries)
    else:
        x.__dict__.update(entries)
    return x



def memoize(fn, slot=None):
    """Memoize fn: make it remember the computed value for any argument list.
    If slot is specified, store result in that slot of first argument.
    If slot is false, store results in a dictionary."""
    if slot:
        def memoized_fn(obj, *args):
            if hasattr(obj, slot):
                return getattr(obj, slot)
            else:
                val = fn(obj, *args)
                setattr(obj, slot, val)
                return val
    else:
        def memoized_fn(*args):
            if not memoized_fn.cache.has_key(
args):
                memoized_fn.cache[args] = fn(*args)
            return memoized_fn.cache[args]
        memoized_fn.cache = {}
    return memoized_fn

def graph_search(problem, fringe):
    """Search through the successors of a problem to find a goal.
    The argument fringe should be an empty queue.
    If two paths reach a state, only use the best one. [Fig. 3.18]"""
    closed = {}
    fringe.append(Node(problem.initial))
    while fringe:
        node = fringe.pop()
        if problem.goal_test(node.state):
            print Node.path
            return node
        if node.state not in closed:
            closed[node.state] = True
            fringe.extend(node.expand(problem))
        print fringe.len()
    return None

def best_first_graph_search(problem, f):
    """Search the nodes with the lowest f scores first.
    You specify the function f(node) that you want to minimize; for example,
    if f is a heuristic estimate to the goal, then we have greedy best
    first search; if f is node.depth then we have depth-first search.
    There is a subtlety: the line "f = memoize(f, 'f')" means that the f
    values will be cached on the nodes as they are computed. So after doing
    a best first search you can examine the f values of the path returned."""
    f = memoize(f, 'f')
    return graph_search(problem, PriorityQueue(min, f))


def astar_search(problem, h=None):
    """A* search is best-first graph search with f(n) = g(n)+h(n).
    You need to specify the h function when you call astar_search.
    Uses the pathmax trick: f(n) = max(f(n), g(n)+h(n))."""
    h = h or problem.h
    def f(n):
        return max(getattr(n, 'f', -infinity), n.path_cost + h(n))
    return best_first_graph_search(problem, f)

g = Graph({'A1': {'A2': 1, 'B1': 1}}, directed=False)
g.connect('A2','A3',1)
issue = GraphProblem('A1','A3',g)
astar_search(issue)

Which appears to work, and exits without any errors. However - 1/ does this solve the path? 2/ How can I get it to output the final path? I've tried with print statements within the code, and have tried adding an 'overall path' variable list, but can't seem to get it functional.

Any help would be much appreciated sorry if I've missed the obvious etc - still pretty new to this lark!

Cheers,

J


#865 From: "edgar.holleis" <edgar@...>
Date: Mon Jul 6, 2009 6:16 pm
Subject: Aima-python, several issues in csp.py
edgar.holleis
Send Email Send Email
 
Hi!

I found several issues with the code in csp.py, version
aima-python.2007.06.15.zip:

1) Forward Checking and Maintain Arc Consistency don't work because of a thinko
in csp.unassign:

def unassign(self, var, assignment):
     """Remove {var: val} from assignment; that is backtrack. (...) """
     if var in assignment:
         # Reset the curr_domain to be the full original domain
         if self.curr_domains:
-->         self.curr_domains[var] = self.domains[var][:]
         del assignment[var]

That cannot work because it discards too much information. The assignments made
in previous recursions can all potentially lead to prunings of the current
node's domain. In the highlighted line, instead of carefully undoing of the
effects a particular assignment, the domain is reset to its initial value,
thereby throwing away knowledge of those earlier prunings.

Both backtrackging_search(usa, fc=True) and backtracking_search(usa, mac=True)
return incorrectly colored maps.

2) The Most Constrained Variable heuristic has it backwards and prefers less
constrained variables over more constrained variables. That's why
backtracking_search(usa, mcv=True) is guaranteed to run for many hours,
exploring the search tree in the most inefficient possible way.

3) The Least Constraining Value heuristic fails to compile on modern python.

I took the liberty of developing and testing a patch for the aforementioned
issues. Furthermore, it contains a formulation of the Sudoku problem using the
csp.py machinery.

Please find it at:
http://code.google.com/p/aima-python/issues/detail?id=11

regards,
Edgar Holleis

#866 From: "matsudayuko69" <matsuda.yuko@...>
Date: Sun Sep 13, 2009 12:11 am
Subject: Implementation Choices
matsudayuko69
Send Email Send Email
 
Simple question: How about Mathemaitca for this purpose?

I've been using Lisp, C, Java and now using Mathematica.

#867 From: "juanfie" <juanf@...>
Date: Tue Sep 15, 2009 4:58 am
Subject: Re: Implementation Choices
juanfie
Send Email Send Email
 
--- In aima-talk@yahoogroups.com, "matsudayuko69" <matsuda.yuko@...> wrote:
>
> Simple question: How about Mathemaitca for this purpose?
>
> I've been using Lisp, C, Java and now using Mathematica.
>

I'd be happy to contribute in developing Mathematica code for AIMA.

Regards,

Juan Flores

#868 From: "armin_04" <armin_04@...>
Date: Sat Nov 21, 2009 9:46 pm
Subject: State space size in the "First incremental formulation" for 8-queens problem
armin_04
Send Email Send Email
 
The number of states for the first incremental formulation is stated to
be 64 . 63 . ... . 57.
As far as it's the "number of sequences", there is no problem, but it is
confused with "state space size" in the next paragraphs, while this
doesn't take into account the the arrangements with less than 8 queens
(1, 2, ..., 7) and also the fact that most of the states are repeated.
So, I'm guessing that the state space size should be:

64/1! + (64 . 63)/2! + ... + (64 . 63 . ... . 57)/8!

#869 From: "zeldich.michael" <zeldich.michael@...>
Date: Thu Apr 1, 2010 7:45 am
Subject: Illusory basis.
zeldich.michael
Send Email Send Email
 
I has try to discuss my objections to the great book Artificial Intelligence, A
Modern Approach,  Second Edition, but did not receive any response from the
authors.

Because of that I am decide to discuss them on that forum.
I will provide the chapter name and page number to make it easy to find out the
original text.
Chapter 1, p1,2 1.1 What is AI?
"A system is rational if it does the "right thing," given what it knows."
  That definition is not definitive. What is a "right thing"? What meaning have
the phrase " given what it knows". It is not sufficient just to name something
for a scientific purposes. The terms: "think", "mind", "thought processes",
"decision-making", "problem solving", "learning", "perceive", "reason", "act",
"mental faculties", "intelligence", "computational intelligence", "rationality",
"intelligent agents" and "behavior" should be scientifically defined before it
will be possible to use them for the scientific purposes.)
" knowledge representation to store what it knows or hears"
There are important assumptions behind that statement. We have to define the
properties of an agent, which is capable to behave itself, interacting with an
environment under control of a control unit. If that control unit is receiving
information from a set of sensors, than it cannot directly derive the
information about the causes in the World leading for occurrence of signals from
the sensors.
That means, control unit cannot process the information about the World and
cannot have any factual knowledge about it.
Best regards, Michael

#870 From: Bob Futrelle <bob.futrelle@...>
Date: Thu Apr 1, 2010 12:54 pm
Subject: Re: Illusory basis.
bobfutrelle
Send Email Send Email
 
No one has ever been able to give "definitions" of words and concepts such as "think", "mind", "perceive", etc.  Thousands of books, and millions of papers have been written over the ages attempting to understand what these concepts might mean.  And they "mean" different things to different people in different specialties, and in different ages.

To think that you could list a dictionary-style definition of these and then proceed is a mistake.  As for "intelligent agents", the entire 1132 page AIMA book is an attempt to try to describe the concept with hundreds of thousands of words and many figures.

As for the "right thing", one way to understand more about that concept would be to read Russell's 1991 book, "Do the right thing".

In the hard sciences, the definition of "gene" has turned out to be extraordinarily complex - Nobel prizes has been awarded for people who make progress on our understanding of "gene" - no simple definition exists.  In quantum mechanics, the  definition of "momentum" is confounded by the uncertainty principle.

Your request for "definitions" should not lead to many answers or discussions, because people know that that is not the way to proceed.  In your spare time, you might as well attempt to create brief and concise definitions for "love", "nation", "government", and of course, "universe".

 - Bob Futrelle

On Thu, Apr 1, 2010 at 3:45 AM, zeldich.michael <zeldich.michael@...> wrote:
 

I has try to discuss my objections to the great book Artificial Intelligence, A Modern Approach, Second Edition, but did not receive any response from the authors.

Because of that I am decide to discuss them on that forum.
I will provide the chapter name and page number to make it easy to find out the original text.
Chapter 1, p1,2 1.1 What is AI?
"A system is rational if it does the "right thing," given what it knows."
That definition is not definitive. What is a "right thing"? What meaning have the phrase " given what it knows". It is not sufficient just to name something for a scientific purposes. The terms: "think", "mind", "thought processes", "decision-making", "problem solving", "learning", "perceive", "reason", "act", "mental faculties", "intelligence", "computational intelligence", "rationality", "intelligent agents" and "behavior" should be scientifically defined before it will be possible to use them for the scientific purposes.)
" knowledge representation to store what it knows or hears"
There are important assumptions behind that statement. We have to define the properties of an agent, which is capable to behave itself, interacting with an environment under control of a control unit. If that control unit is receiving information from a set of sensors, than it cannot directly derive the information about the causes in the World leading for occurrence of signals from the sensors.
That means, control unit cannot process the information about the World and cannot have any factual knowledge about it.
Best regards, Michael



#871 From: "Michael" <zeldich.michael@...>
Date: Thu Apr 1, 2010 2:24 pm
Subject: No one has ever been able to give "definitions"
zeldich.michael
Send Email Send Email
 
Dear Bob, it easy to give the definitions to these terms.
Is there are no facts to support acceptance of any so called mental functions,
than we have to accept that introducing them was a mistake and try to find a
different way to explain why we behave as we do.

Behavior is everything what happen with a system due to its own inner reasons.

#872 From: "mhassanali@..." <mhassanali@...>
Date: Fri Mar 12, 2010 7:17 am
Subject: Re: looking for soloutions
mhassanali...
Send Email Send Email
 
--- In aima-talk@yahoogroups.com, "daashmashty" <nima.talebi@...> wrote:
>
> --- In aima-talk@yahoogroups.com, "sprgr77" <sprgr77@> wrote:
> >
> > Iam interested in AI .I need guidelines to solve the exercises in the
> > book"Artificial intelligence A modern approach".
> >
>
> ...and your question would be... ?
>




if u find out the solutions plz guide me so that i can download too.
Thank you.

#873 From: "patrickmclaren@..." <patrickmclaren@...>
Date: Tue Apr 13, 2010 10:03 am
Subject: Video Lectures
patrickmclar...
Send Email Send Email
 
There are a lot of schools that use AIMA in courses.
(http://aima.cs.berkeley.edu/adoptions.html)

Just wondering if anyone has links to a video lecture series that follow the
book?

#874 From: "bagheri_abbass" <a.bagheri@...>
Date: Sat Apr 24, 2010 11:10 am
Subject: Frontier and Hashtable
bagheri_abbass
Send Email Send Email
 

Hello All!

In Aima 3/e we have these two sentences in the book (chapter 3)

1- "expand the chosen node adding the resuting node to the frontier

only if not in the frontier or explored set"

2-"The explored set can be implemented with a hash table to allow efficient checking for repeated states"

Now, my question is: what about the frontier? we must check the frontier for repeated states, but this set is a queue, not a hashtable!! can we chech the frontier for repeated states efficiently? how?

I think this is a natural question that might be arise for every reader!

Thanks a lot


#875 From: "mikaelsundberg@..." <mikaelsundberg@...>
Date: Sat May 15, 2010 8:36 am
Subject: Re: Video Lectures
mikaelsundbe...
Send Email Send Email
 
Hi.

Check out this link:
http://www.youtube.com/user/nptelhrd#g/c/E051420C2068DCB2

Its a university in India.

The course is based on aima and an other bock as well. Cant remember the title
of the other bock but the professor will let you know in the video course.

Best regards
Mikael Sundberg


--- In aima-talk@yahoogroups.com, "patrickmclaren@..." <patrickmclaren@...>
wrote:
>
> There are a lot of schools that use AIMA in courses.
(http://aima.cs.berkeley.edu/adoptions.html)
>
> Just wondering if anyone has links to a video lecture series that follow the
book?
>

#876 From: lando <lando2@...>
Date: Sat May 15, 2010 2:11 pm
Subject: Re: Re: Video Lectures
landogroups
Send Email Send Email
 
Thanks for the link.  Great Resource.

On Sat, May 15, 2010 at 4:36 AM, mikaelsundberg@... <mikaelsundberg@...> wrote:
 



Hi.

Check out this link:
http://www.youtube.com/user/nptelhrd#g/c/E051420C2068DCB2

Its a university in India.

The course is based on aima and an other bock as well. Cant remember the title of the other bock but the professor will let you know in the video course.

Best regards
Mikael Sundberg

--- In aima-talk@yahoogroups.com, "patrickmclaren@..." <patrickmclaren@...> wrote:
>
> There are a lot of schools that use AIMA in courses. (http://aima.cs.berkeley.edu/adoptions.html)
>
> Just wondering if anyone has links to a video lecture series that follow the book?
>



#877 From: "hamid" <return0_ir@...>
Date: Sun Aug 1, 2010 6:47 pm
Subject: why uniform?
return0_ir
Send Email Send Email
 
Hello
In uniform cost search, 'uniform' referred to what?
thanks

#878 From: Mohammad Assarian <assarianmo@...>
Date: Wed Aug 11, 2010 7:58 am
Subject: why
assarianmo
Send Email Send Email
 
This search expand the least cost node so the costs of nodes will increase step by step and this means uniform


#879 From: "Paul" <paul.reiners@...>
Date: Fri Sep 10, 2010 3:04 pm
Subject: Choosing real numbers with certain characteristics (CSP or local search?)
paulreiners
Send Email Send Email
 

I have a set (or pool) of n real numbers. I also have a set of m functions,

f_1, f_2, ..., f_m.

Each of these functions takes a list of numbers as its argument. I also have a set of m ranges,

[l_1, u_1], [l_2, u_2], ..., [l_m, u_m].

I want to repeatedly choose a subset {r_1, r_2, ..., r_k} of k elements (from the pool of n numbers) such that

l_i <= f_i({r_1, r_2, ..., r_k}) <= u_i for 1 <= i <= m.

Note that the functions are smooth. Changing one element in {r_1, r_2, ..., r_k} will not change

f_i({r_1, r_2, ..., r_k})

by much.  average and variance are two f_i that are commonly used.

These are the m constraints that I need to satisfy.

Moreover I want to do this so that the set of subsets I choose is uniformly distributed over the set of all subsets of size k that satisfy these m constraints. Not only that, but I want to do this in an efficient manner. How quickly it runs will depend on the density of solutions within the space of all possible solutions (if this is 0.0, then the algorithm can run forever). (Assume that f_i (for any i) can be computed in a constant amount of time.)

Note that n is large enough that I cannot brute-force the problem. That is, I cannot just iterate through all k-element subsets and find which ones satisfy the m constraints.

Is there a good way to do this?

I'm starting to think this is not a true CSP.  This is because partial assignments can violate a constraint while an extension of such a partial assignment might be consistent.  For example, if f is the average function.  Then f of some set of numbers from the pool might not fall within the range, while, if you add more numbers from the pool, it will.  Is it true that this not a CSP problem and not amenable to CSP solutions?

I'm starting to think this is best solved by local search.    I've implemented hill climbing and simulated annealing, but, so far, just repeatedly guessing solutions until you find one that is satisfactory is working faster than either hill climbing or simulated annealing.

Bringing this around to the book, are the techniques described in Section 4.1 the best techniques to try using for this problem or should I be trying some techniques given elsewhere in the book?


#880 From: "Paul" <paul.reiners@...>
Date: Tue Sep 14, 2010 4:41 pm
Subject: Question about temperature and probability in simulated annealing algorithm
paulreiners
Send Email Send Email
 
Section 4.1.2 says
The probability [also] decreases as the "temperature" T goes down: "bad" moves are more likely to be allowed at the start when T is high, and they become more unlikely as T decreases.
However, the probability of making a "bad" move is given by the following formula in Figure 4.5:
e ^ (delta-E / T)
The value of this formula increases, not decreases, as T decreases.

Is this an error in the book or am I misreading this?


#881 From: "Paul" <paul.reiners@...>
Date: Tue Sep 14, 2010 6:19 pm
Subject: Question about temperature and probability in simulated annealing algorithm
paulreiners
Send Email Send Email
 
I take back my earlier question.  I just realized that dE is negative.

#883 From: "stuart_hirshfield" <shirshfi@...>
Date: Thu Oct 21, 2010 5:14 pm
Subject: Slides for 3rd Edition
stuart_hirsh...
Send Email Send Email
 
Are these available yet?  Please advise.

#884 From: "en9apr" <en9apr@...>
Date: Wed Dec 29, 2010 6:38 pm
Subject: AIMA files for JAVA
en9apr
Send Email Send Email
 
Hi,

I am using eclipse with the JAVA code downloaded from:

http://code.google.com/p/aima-java/downloads/list

I created a new project in eclipse, loaded the file "build.xml" and then ran ant
build.

I got the following message:

BUILD FAILED
C:\Users\Owner\Documents\Downloads\aima-java-1.4.0-OSM-Redesign\aima-core\build.\
xml:43: Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK.
It is currently set to "C:\Program Files\Java\jre6"

Does anyone know what I should do?

Thanks,

Andrew

#885 From: "naraic_oreilly" <naraic_oreilly@...>
Date: Thu Dec 30, 2010 5:41 pm
Subject: Re: AIMA files for JAVA
naraic_oreilly
Send Email Send Email
 
Hi Andrew,

It appears your JAVA_HOME is pointing to a Java Runtime Environment (JRE) and
not a Java Development Kit (JDK), which is required to compile Java source
files. You can download the latest JDK from:

http://www.oracle.com/technetwork/java/javase/downloads/index.html

However, as you are using Eclipse the AIMA-Java download includes default
eclipse projects that you can import into your own workspace. You can do this in
the following manner:

1. Select 'File->Import...'

2. Select 'General' then 'Existing Projects into Eclipse'.

3. Hit the 'Next >' button.

4. Populate the 'Select root directory:' with the location of the project you
want to import, for e.g:

C:\Temp\AIMA\aima-core

Note: The projects need to be imported in the following order - aima-core,
aima-gui, and aimax-osm (you do not require the aima-all project as that is used
for creating releases).

5. Hit the 'Finish' button.

6. You may have to clean and rebuild the project in order to remove any warnings
etc... you may get on the initial import.

For this to work as with using Ant ensure Eclipse is pointing to a JDK as well.
On windows you can check this by opening the menu 'Window->Preferences' and
selected 'Java' followed by 'Installed JREs' and ensure a 1.6 JDK is registered
and selected.

I hope this helps.

Best

Ciaran




--- In aima-talk@yahoogroups.com, "en9apr" <en9apr@...> wrote:
>
> Hi,
>
> I am using eclipse with the JAVA code downloaded from:
>
> http://code.google.com/p/aima-java/downloads/list
>
> I created a new project in eclipse, loaded the file "build.xml" and then ran
ant build.
>
> I got the following message:
>
> BUILD FAILED
>
C:\Users\Owner\Documents\Downloads\aima-java-1.4.0-OSM-Redesign\aima-core\build.\
xml:43: Unable to find a javac compiler;
> com.sun.tools.javac.Main is not on the classpath.
> Perhaps JAVA_HOME does not point to the JDK.
> It is currently set to "C:\Program Files\Java\jre6"
>
> Does anyone know what I should do?
>
> Thanks,
>
> Andrew
>

#886 From: en9apr@...
Date: Fri Dec 31, 2010 2:53 pm
Subject: Re: AIMA files for JAVA
en9apr
Send Email Send Email
 
Hi Ciaran,

Thanks for your advice. I did what you said, installed and selected JDK 1.6 and
imported all three projects. I then cleaned all the projects and tried to build
each project. aima-gui and aimax-osm were successfully built, but aima-core did
not build successfully. The message I got was as follows:

------

Buildfile: D:\AI\AIMA\aima-core\build.xml
aima-core.clean:
    [delete] Deleting directory D:\AI\AIMA\aima-core\build
aima-core.makedirs:
     [mkdir] Created dir: D:\AI\AIMA\aima-core\build
     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\bin
     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\bin\main
     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\bin\test
     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\doc
     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\doc\javadoc
     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\release
aima-core.compile-all:
     [javac] Compiling 350 source files to D:\AI\AIMA\aima-core\build\bin\main
     [javac] Note: Some input files use unchecked or unsafe operations.
     [javac] Note: Recompile with -Xlint:unchecked for details.
     [javac] Compiling 120 source files to D:\AI\AIMA\aima-core\build\bin\test
     [javac] Note: Some input files use unchecked or unsafe operations.
     [javac] Note: Recompile with -Xlint:unchecked for details.
aima-core.release:
       [jar] Building jar: D:\AI\AIMA\aima-core\build\release\aima-core.jar
aima-core.makedocs:
   [javadoc] Generating Javadoc
   [javadoc] Javadoc execution

BUILD FAILED
D:\AI\AIMA\aima-core\build.xml:69: Javadoc failed: java.io.IOException: Cannot
run program "javadoc.exe": CreateProcess error=2, The system cannot find the
file specified

Total time: 5 seconds

------

Sorry to bother you again,

P.S. How do I run each program, say ReflexVacuumAgent.java in eclipse?

Thanks,

Andrew

--- In aima-talk@yahoogroups.com, "naraic_oreilly" <naraic_oreilly@...> wrote:
>
>
>
>
>
>
> Hi Andrew,
>
> It appears your JAVA_HOME is pointing to a Java Runtime Environment (JRE) and
not a Java Development Kit (JDK), which is required to compile Java source
files. You can download the latest JDK from:
>
> http://www.oracle.com/technetwork/java/javase/downloads/index.html
>
> However, as you are using Eclipse the AIMA-Java download includes default
eclipse projects that you can import into your own workspace. You can do this in
the following manner:
>
> 1. Select 'File->Import...'
>
> 2. Select 'General' then 'Existing Projects into Eclipse'.
>
> 3. Hit the 'Next >' button.
>
> 4. Populate the 'Select root directory:' with the location of the project you
want to import, for e.g:
>
> C:\Temp\AIMA\aima-core
>
> Note: The projects need to be imported in the following order - aima-core,
aima-gui, and aimax-osm (you do not require the aima-all project as that is used
for creating releases).
>
> 5. Hit the 'Finish' button.
>
> 6. You may have to clean and rebuild the project in order to remove any
warnings etc... you may get on the initial import.
>
> For this to work as with using Ant ensure Eclipse is pointing to a JDK as
well. On windows you can check this by opening the menu 'Window->Preferences'
and selected 'Java' followed by 'Installed JREs' and ensure a 1.6 JDK is
registered and selected.
>
> I hope this helps.
>
> Best
>
> Ciaran
>
>
>
>
> --- In aima-talk@yahoogroups.com, "en9apr" <en9apr@> wrote:
> >
> > Hi,
> >
> > I am using eclipse with the JAVA code downloaded from:
> >
> > http://code.google.com/p/aima-java/downloads/list
> >
> > I created a new project in eclipse, loaded the file "build.xml" and then ran
ant build.
> >
> > I got the following message:
> >
> > BUILD FAILED
> >
C:\Users\Owner\Documents\Downloads\aima-java-1.4.0-OSM-Redesign\aima-core\build.\
xml:43: Unable to find a javac compiler;
> > com.sun.tools.javac.Main is not on the classpath.
> > Perhaps JAVA_HOME does not point to the JDK.
> > It is currently set to "C:\Program Files\Java\jre6"
> >
> > Does anyone know what I should do?
> >
> > Thanks,
> >
> > Andrew
> >
>

#887 From: "naraic_oreilly" <naraic_oreilly@...>
Date: Fri Dec 31, 2010 8:53 pm
Subject: Re: AIMA files for JAVA
naraic_oreilly
Send Email Send Email
 
Hi Andrew,

To resolve the problem you are seeing I would ensure that your Windows PATH
environment variable contains the directory where your JDK's bin is, e.g.:

C:\Program Files\Java\jdk1.6.0\bin

this is where the javadoc.exe resides and is what appears to be whatr ant is
complaining about.

However, related to this, if you've already setup the projects in Eclipse you
don't have to use the ant build files (these are provided for people not using
Eclipse and by the project's developers for creating releases). In fact, the
java classes generated by calling ant are put in a different location than the
Eclipse project does and uses, so you can skip using Ant I think.

As regards running programs, you've a couple of options here. Firstly, run any
of 600+ unit tests. You can run them all from within eclipse by running this
consolidated unit test:

aima.test.core.unit.AllAIMAUnitTestSuite

which you'll find under the src/test/java folder. Have a look here for more
details on JUnit: http://www.junit.org/

For programs, you'll need to look in the aima-gui project, which has GUIs and
command line demos that you can run, e.g.:

aima.gui.demo.search.EightPuzzleDemo

just ensure the .java you open has a:

public static void main(String[] args) {

method in it in order to be able to run it as an application from within
Eclipse. These can also all be from from our Java Web Start applications, which
you can get to from the main project website.

Note, ReflexVacuumAgent, is not a program (no main()) or a unit test, so you'll
need to identify a unit test that uses it or a demo program that does. This is
easily done in Eclipse after you've compiled all the projects by:

1. Open the .java file containing the class of interest in the Eclipse editor.

2. Double click on the name of the class so its marked as selected.

3. Right click and bring up the context sensitive menu.

4. Select 'References->Workspace'

For ReflexCacuumAgent you should see that its used in the

ReflexVacuumAgentTest

I hope this helps, Happy New Year,

Best

Ciaran

P.S. I'm going to enter an issue on the project website to set yp some wiki
pages with instructions on how to setup your workspace to use the AIMA-Java
projects.

--- In aima-talk@yahoogroups.com, en9apr@... wrote:
>
> Hi Ciaran,
>
> Thanks for your advice. I did what you said, installed and selected JDK 1.6
and imported all three projects. I then cleaned all the projects and tried to
build each project. aima-gui and aimax-osm were successfully built, but
aima-core did not build successfully. The message I got was as follows:
>
> ------
>
> Buildfile: D:\AI\AIMA\aima-core\build.xml
> aima-core.clean:
>    [delete] Deleting directory D:\AI\AIMA\aima-core\build
> aima-core.makedirs:
>     [mkdir] Created dir: D:\AI\AIMA\aima-core\build
>     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\bin
>     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\bin\main
>     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\bin\test
>     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\doc
>     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\doc\javadoc
>     [mkdir] Created dir: D:\AI\AIMA\aima-core\build\release
> aima-core.compile-all:
>     [javac] Compiling 350 source files to D:\AI\AIMA\aima-core\build\bin\main
>     [javac] Note: Some input files use unchecked or unsafe operations.
>     [javac] Note: Recompile with -Xlint:unchecked for details.
>     [javac] Compiling 120 source files to D:\AI\AIMA\aima-core\build\bin\test
>     [javac] Note: Some input files use unchecked or unsafe operations.
>     [javac] Note: Recompile with -Xlint:unchecked for details.
> aima-core.release:
>       [jar] Building jar: D:\AI\AIMA\aima-core\build\release\aima-core.jar
> aima-core.makedocs:
>   [javadoc] Generating Javadoc
>   [javadoc] Javadoc execution
>
> BUILD FAILED
> D:\AI\AIMA\aima-core\build.xml:69: Javadoc failed: java.io.IOException: Cannot
run program "javadoc.exe": CreateProcess error=2, The system cannot find the
file specified
>
> Total time: 5 seconds
>
> ------
>
> Sorry to bother you again,
>
> P.S. How do I run each program, say ReflexVacuumAgent.java in eclipse?
>
> Thanks,
>
> Andrew
>
> --- In aima-talk@yahoogroups.com, "naraic_oreilly" <naraic_oreilly@> wrote:
> >
> >
> >
> >
> >
> >
> > Hi Andrew,
> >
> > It appears your JAVA_HOME is pointing to a Java Runtime Environment (JRE)
and not a Java Development Kit (JDK), which is required to compile Java source
files. You can download the latest JDK from:
> >
> > http://www.oracle.com/technetwork/java/javase/downloads/index.html
> >
> > However, as you are using Eclipse the AIMA-Java download includes default
eclipse projects that you can import into your own workspace. You can do this in
the following manner:
> >
> > 1. Select 'File->Import...'
> >
> > 2. Select 'General' then 'Existing Projects into Eclipse'.
> >
> > 3. Hit the 'Next >' button.
> >
> > 4. Populate the 'Select root directory:' with the location of the project
you want to import, for e.g:
> >
> > C:\Temp\AIMA\aima-core
> >
> > Note: The projects need to be imported in the following order - aima-core,
aima-gui, and aimax-osm (you do not require the aima-all project as that is used
for creating releases).
> >
> > 5. Hit the 'Finish' button.
> >
> > 6. You may have to clean and rebuild the project in order to remove any
warnings etc... you may get on the initial import.
> >
> > For this to work as with using Ant ensure Eclipse is pointing to a JDK as
well. On windows you can check this by opening the menu 'Window->Preferences'
and selected 'Java' followed by 'Installed JREs' and ensure a 1.6 JDK is
registered and selected.
> >
> > I hope this helps.
> >
> > Best
> >
> > Ciaran
> >
> >
> >
> >
> > --- In aima-talk@yahoogroups.com, "en9apr" <en9apr@> wrote:
> > >
> > > Hi,
> > >
> > > I am using eclipse with the JAVA code downloaded from:
> > >
> > > http://code.google.com/p/aima-java/downloads/list
> > >
> > > I created a new project in eclipse, loaded the file "build.xml" and then
ran ant build.
> > >
> > > I got the following message:
> > >
> > > BUILD FAILED
> > >
C:\Users\Owner\Documents\Downloads\aima-java-1.4.0-OSM-Redesign\aima-core\build.\
xml:43: Unable to find a javac compiler;
> > > com.sun.tools.javac.Main is not on the classpath.
> > > Perhaps JAVA_HOME does not point to the JDK.
> > > It is currently set to "C:\Program Files\Java\jre6"
> > >
> > > Does anyone know what I should do?
> > >
> > > Thanks,
> > >
> > > Andrew
> > >
> >
>

#888 From: Bob Futrelle <bob.futrelle@...>
Date: Sat Jan 1, 2011 2:06 am
Subject: Re: Re: AIMA files for JAVA
bobfutrelle
Send Email Send Email
 
Ciaran's comment about setting up a Wiki is an important one.  Information such as he sent in his note below should be as available  to as many as possible, and not confined to the people in the aima-talk group.

 - Bob Futrelle


On Fri, Dec 31, 2010 at 3:53 PM, naraic_oreilly <naraic_oreilly@...> wrote:
 

Hi Andrew,

To resolve the problem you are seeing I would ensure that your Windows PATH environment variable contains the directory where your JDK's bin is, e.g.:

C:\Program Files\Java\jdk1.6.0\bin

this is where the javadoc.exe resides and is what appears to be whatr ant is complaining about.

However, related to this, if you've already setup the projects in Eclipse you don't have to use the ant build files (these are provided for people not using Eclipse and by the project's developers for creating releases). In fact, the java classes generated by calling ant are put in a different location than the Eclipse project does and uses, so you can skip using Ant I think.

As regards running programs, you've a couple of options here. Firstly, run any of 600+ unit tests. You can run them all from within eclipse by running this consolidated unit test:

aima.test.core.unit.AllAIMAUnitTestSuite

which you'll find under the src/test/java folder. Have a look here for more details on JUnit: http://www.junit.org/

For programs, you'll need to look in the aima-gui project, which has GUIs and command line demos that you can run, e.g.:

aima.gui.demo.search.EightPuzzleDemo

just ensure the .java you open has a:

public static void main(String[] args) {

method in it in order to be able to run it as an application from within Eclipse. These can also all be from from our Java Web Start applications, which you can get to from the main project website.

Note, ReflexVacuumAgent, is not a program (no main()) or a unit test, so you'll need to identify a unit test that uses it or a demo program that does. This is easily done in Eclipse after you've compiled all the projects by:

1. Open the .java file containing the class of interest in the Eclipse editor.

2. Double click on the name of the class so its marked as selected.

3. Right click and bring up the context sensitive menu.

4. Select 'References->Workspace'

For ReflexCacuumAgent you should see that its used in the

ReflexVacuumAgentTest

I hope this helps, Happy New Year,

Best

Ciaran

P.S. I'm going to enter an issue on the project website to set yp some wiki pages with instructions on how to setup your workspace to use the AIMA-Java projects.



--- In aima-talk@yahoogroups.com, en9apr@... wrote:
>
> Hi Ciaran,
>
> Thanks for your advice. I did what you said, installed and selected JDK 1.6 and imported all three projects. I then cleaned all the projects and tried to build each project. aima-gui and aimax-osm were successfully built, but aima-core did not build successfully. The message I got was as follows:
>
> ------
>
> Buildfile: D:\AI\AIMA\aima-core\build.xml
> aima-core.clean:
> [delete] Deleting directory D:\AI\AIMA\aima-core\build
> aima-core.makedirs:
> [mkdir] Created dir: D:\AI\AIMA\aima-core\build
> [mkdir] Created dir: D:\AI\AIMA\aima-core\build\bin
> [mkdir] Created dir: D:\AI\AIMA\aima-core\build\bin\main
> [mkdir] Created dir: D:\AI\AIMA\aima-core\build\bin\test
> [mkdir] Created dir: D:\AI\AIMA\aima-core\build\doc
> [mkdir] Created dir: D:\AI\AIMA\aima-core\build\doc\javadoc
> [mkdir] Created dir: D:\AI\AIMA\aima-core\build\release
> aima-core.compile-all:
> [javac] Compiling 350 source files to D:\AI\AIMA\aima-core\build\bin\main
> [javac] Note: Some input files use unchecked or unsafe operations.
> [javac] Note: Recompile with -Xlint:unchecked for details.
> [javac] Compiling 120 source files to D:\AI\AIMA\aima-core\build\bin\test
> [javac] Note: Some input files use unchecked or unsafe operations.
> [javac] Note: Recompile with -Xlint:unchecked for details.
> aima-core.release:
> [jar] Building jar: D:\AI\AIMA\aima-core\build\release\aima-core.jar
> aima-core.makedocs:
> [javadoc] Generating Javadoc
> [javadoc] Javadoc execution
>
> BUILD FAILED
> D:\AI\AIMA\aima-core\build.xml:69: Javadoc failed: java.io.IOException: Cannot run program "javadoc.exe": CreateProcess error=2, The system cannot find the file specified
>
> Total time: 5 seconds
>
> ------
>
> Sorry to bother you again,
>
> P.S. How do I run each program, say ReflexVacuumAgent.java in eclipse?
>
> Thanks,
>
> Andrew
>
> --- In aima-talk@yahoogroups.com, "naraic_oreilly" <naraic_oreilly@> wrote:
> >
> >
> >
> >
> >
> >
> > Hi Andrew,
> >
> > It appears your JAVA_HOME is pointing to a Java Runtime Environment (JRE) and not a Java Development Kit (JDK), which is required to compile Java source files. You can download the latest JDK from:
> >
> > http://www.oracle.com/technetwork/java/javase/downloads/index.html
> >
> > However, as you are using Eclipse the AIMA-Java download includes default eclipse projects that you can import into your own workspace. You can do this in the following manner:
> >
> > 1. Select 'File->Import...'
> >
> > 2. Select 'General' then 'Existing Projects into Eclipse'.
> >
> > 3. Hit the 'Next >' button.
> >
> > 4. Populate the 'Select root directory:' with the location of the project you want to import, for e.g:
> >
> > C:\Temp\AIMA\aima-core
> >
> > Note: The projects need to be imported in the following order - aima-core, aima-gui, and aimax-osm (you do not require the aima-all project as that is used for creating releases).
> >
> > 5. Hit the 'Finish' button.
> >
> > 6. You may have to clean and rebuild the project in order to remove any warnings etc... you may get on the initial import.
> >
> > For this to work as with using Ant ensure Eclipse is pointing to a JDK as well. On windows you can check this by opening the menu 'Window->Preferences' and selected 'Java' followed by 'Installed JREs' and ensure a 1.6 JDK is registered and selected.
> >
> > I hope this helps.
> >
> > Best
> >
> > Ciaran
> >
> >
> >
> >
> > --- In aima-talk@yahoogroups.com, "en9apr" <en9apr@> wrote:
> > >
> > > Hi,
> > >
> > > I am using eclipse with the JAVA code downloaded from:
> > >
> > > http://code.google.com/p/aima-java/downloads/list
> > >
> > > I created a new project in eclipse, loaded the file "build.xml" and then ran ant build.
> > >
> > > I got the following message:
> > >
> > > BUILD FAILED
> > > C:\Users\Owner\Documents\Downloads\aima-java-1.4.0-OSM-Redesign\aima-core\build.xml:43: Unable to find a javac compiler;
> > > com.sun.tools.javac.Main is not on the classpath.
> > > Perhaps JAVA_HOME does not point to the JDK.
> > > It is currently set to "C:\Program Files\Java\jre6"
> > >
> > > Does anyone know what I should do?
> > >
> > > Thanks,
> > >
> > > Andrew
> > >
> >
>



Messages 858 - 888 of 946   Oldest  |  < Older  |  Newer >  |  Newest
Add to My Yahoo!      XML What's This?

Copyright © 2010 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines NEW - Help