Advertisement

Linux Based AI?

Started by May 29, 2003 08:39 PM
15 comments, last by firefly2442 21 years, 5 months ago
quote: Original post by Popolon
- Find a single thing that can be executed by a machine and that is NOT algorithmic.
- Why intelligence cannot be algorithmic. i.e. define intelligence.


These 2 points have nothing to do with my post:
1) I never said that AI would not be using algorithmy
2) I just said that the algorithms you were speaking about are just that : algos. There is no AI in that, no imagination, no cognition. That''s just applying a hard coded sorting algo to the disk access requests for example.
As far as I know (and I''m an artificial intelligence Ph.D. student) there is NO AI ALGORITHM involving imagination, and about cognition. That''s just a phylosophical question: it depends on what you consider a cognitive approach.

For me, there is no such a thing called "intelligence". Search algorithms were considered AI in the 70s, why not considering them now AI? Now they say that if there is no "cognitive approach" there is no intelligence! I''m not complaining, this is normal. That''s what we call the "mobile frontier" definition of AI: something is considered AI until someone founds an algorithm that can solve it. Then, it''s just an algorithm and it is not considered AI anymore...

about OS''s, those algorithms were AI algorithms one day. Now, you don''t consider AI anymore. OK. But what you consider AI today, will not be considered AI in 20 years, be sure. Now we talk about intelligent agents, in some years that will be the standard programing paradigm, and all the applications will be organized as multiagent systems. Then they won''t be AI anymore.

However, answering the original question. If I have to imagine an OS using "today''s" AI techniques, it will be like this:
You can design an OS from an agent perspective. It will be very unefficient, but for sure that will be the most stable OS in the world and that will be extremely flexible and have some sort of "intelligence". You can have several agents:
- Disk manager agent
- Memory manager agent
- etc. (a manager for each piece of hardware you have)
- A "librarian" agent that keeps track of all the agents in the system.
- An interface agent that tries to satisfy the user needs, planning how to interact with the rest of agents in the system. To add a new driver is just to add a new agent in the system (no installation processes, no restarts after install).
- Planification agents for complex tasks: optimizers, tasks schedulers, etc. that will give counsels to the interface agent.
- You could even talk with your interface agent, asking him questions like: "Do you remember where did I save that document that I was editing yesterday?". As the interface agent can keep trace of your actions, will be able to answer that question, ans similar questions...

You can have as many interface agents as users, so that the users are not limited to 1. Your OS can be executing distributed among a network or just executing on your machine, and will be inherently parallel.

Well, that''s my idea of it.
Advertisement
Well a quite common definition of ai is "something" that would be able to speak with a human. Which implies some (even if little) cognition. That''s the very basic requirement for ai in my opinion. Granted, that''s what I am thinking today, and that limit between intelligent/not ai is very mobile and it depends on the who and the when of the speaking.

Using some dmap like architecture, you can crate a model of memory able to understand some idea (or at least to simulate understanding) - granted, still quite basic ideas (I also made some research in AI at school). Imagination is still another story...

About Popolon''s definition of an ai os : that sounds like some IBM Unix to me =)
Then main differentce about Unix and my definition is that Unix uses Processes, and that I used Agents. An agent is much more than a simple process: an agent is a complete AI entity, with its own knowledge base and a reasoning engine, with its own goals, desires and intentions. Not just a "disk manager", but an intelligent disk manager with which you can speak and ask it questions!
"Well a quite common definition of ai is "something" that would be able to speak with a human."

How bad a definition is that? My cats are intelligent, but they don''t talk to me. (apart from dinner time that is )

But the photo booth I just used for some passport pictures did speak with me...

So a photo booth is more intelligent than my cat... mmm...




My Website: ai-junkie.com My Book: AI Techniques for Game Programming

My personal definition of intelligence (subject to change at any point but the best one I''ve thought of yet) is the ability to create or adapt a plan (algorithm) to fit a new need (that the agent has encountered).

Thus antivirus software which itself was able to adapt it''s programming to kill new viruses is intelligent. Whereas antivirus software that downloads new codes is not intelligent. However in the latter cause the system as a whole (software, auto downloader, and people creating the new virus definitions) is an intelligent system.

Returning to the topic: an OS is primarily (in my eyes) the equivalent of a kernal. It loads drivers and basically provides a HAL (hardware abstraction layer).

I think everything else on top of this (GUI, command line, antivirus software) is extra software.

So to me the notion of an intelligent OS would be one that was able to automatically interface correctly with hardware and provide it''s functionality transparently.

I don''t think that this is possible though in reality - in an automatic and independent manner (ie could you connect your modem to the internet starting from sending bits to the serial port - and without knowing AT command beforehand?)

It would be nice for the system to learn itself and create it''s own drivers I guess, but at the end of the day I want an OS that is fast, efficient and secure. That''s why I use Win3.1

cf
Advertisement
MIT''s Technology Review magazine last year carried an article about "immobots" - immobile robots and computers embedded in a variety of machines which monitor, analyze, remedy and proffer suggestions to help improve the reliability and fault tolerance of a variety of devices, from complex industrial printers (each part communicates to the center what it can do and how long it takes, so the center can schedule job flow for optimum efficiency) to automobiles (on-board systems can help mechanics in analyzing and repairing "inexplicable" failures, as well as silently assist in and improve the driving experience) to city water reservoirs (monitors the levels of various chemical and biological activity, taking corrective action to repair imbalances and notifying municipal engineers when action needs to be taken in response to invisible/unnoticeable - to the human eye/mind - situations; prototype under way in Rio de Janeiro, Brasil).

(Wow, that was a long sentence!)

The above projects may not be romantic interpretations of embedding intelligence in our machines (they won''t dialog with us, for example), but they do accomplish the primary goal: making us more effective by relieving us of "housekeeping" duties. An immobot-based OS, for example, could monitor application and service activity and recognize departures from the norm, examine the nature of the abnormal behavior and perhaps quarantine the offending application/service, and notify the system users for further action. In such a situation it wouldn''t matter what kind of virus was written, because the OS would monitor the result of infection rather than the fact of infection, so a Klez clone could infect you but not email any of your contacts or touch any of your files, and so on.

This topic is closed to new replies.

Advertisement