David, Tanel --

[David]

So my question at the bottom is how we could handle this
kind of exception? Because we know that life is full of
exceptions. Some birds don't fly, same mammals lay eggs
(Platypus is only one of them and to have a special class just
for this pour guy...), and who knows and one can never be sure
.

[Tanel replying to David]

People have researched these kinds of things for decades.

Read some intro about "nonmonotonic logic", and then
continue with "default logic", which is a fairly clean
subfield of the former. Another approach is to use
bayesian or fuzzy reasoning, but I'd suggest to check
the default logic stuff first. There are, of course, several
different approaches I did not mention.

Actually, there's are a rather straightforward, pragmatic solution to these kinds of questions.

The basic idea is, don't try to hard code everything you need about the real world in a fixed system of logic.  (Most OWL folks seem to assume you have to do this.)

Instead, tie some lightweight natural language processing to logical rules, so that people can see what the predicates are supposed to mean in the real world.

Thus, you can have predicates "mammal other than platypus" , "bird other than penguin", "majority of birds" and so on...

Underneath the logical rules, have an inference method that supports a highly declarative assignment of meaning, and allows nonmonotonic negation-as-failure.

Once you have an English meaning attached to predicates, many of the problems like those David describes simply fall away.

This is argued more fully in the "e-Government Presentation" at www.reengineeringllc.com .

At the same site, you can find an implemented system that actually does what is described above.  You are cordially invited to run the examples provided, and also to write and run your own examples.  You can use a browser to do this -- no need to download or install anything.

HTH,   -- Adrian



At 05:09 PM 9/24/04 +0300, you wrote:

david.celjuska@bt.com wrote:

So my qestion at the bottom is how we could handly this
kind of exceptions? Because we know that life is full of
exceptions. Some birds don't fly, same mammals lay eggs
(Platypus is only one of them and to have a special class just
for this pour guy...), and who knows and one can never be sure.
 
People have researched these kinds of things for decades.

Read some intro about "nonmonotonic logic", and then
continue with "default logic", which is a fairly clean
subfield of the former. Another approach is to use
bayesian or fuzzy reasoning, but I'd suggest to check
the default logic stuff first. There are, of course, several
different approaches I did not mention.

When looking through the material, keep in mind
that the problem you posed is a one of the fundamental,
hard problems of AI. No really good solutions have
appered so far. IMHO it is unlikely that any
simple and/or universal solutions could ever
appear.  This does not mean that nothing can be done:
just that all solutions are going to be complex,
partial and domain-specific.

Regards,
            Tanel Tammet