06.03.2013 Views

Artificial Intelligence and Soft Computing: Behavioral ... - Arteimi.info

Artificial Intelligence and Soft Computing: Behavioral ... - Arteimi.info

Artificial Intelligence and Soft Computing: Behavioral ... - Arteimi.info

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

are not suitable for AI applications because they are designed mainly for<br />

sequential, deterministic <strong>and</strong> numeric processing. The architectural features of<br />

AI machines depend largely on the tools <strong>and</strong> techniques used in AI <strong>and</strong> their<br />

applications in real world systems. The issues of designing efficient AI<br />

machines can be broadly classified into the following three levels:<br />

1. Representational level<br />

2. Control <strong>and</strong> Compilation level<br />

3. Execution / Processor level.<br />

The choice of an appropriate technique for knowledge representation <strong>and</strong><br />

its efficient utilization are main concerns of representational level. Control <strong>and</strong><br />

compilation level mainly deals with detection of dependencies <strong>and</strong> parallelism<br />

in the algorithms or programs for the problem <strong>and</strong> scheduling <strong>and</strong><br />

synchronization of the parallel modules in the program. Execution level deals<br />

with maximization of the throughput by special architectures like CAM [8] for<br />

efficient search <strong>and</strong> matching of literals <strong>and</strong> fullest utilization of all the<br />

processors in the system.<br />

22.2 Salient Features of AI Machines<br />

An AI machine, in general, should possess the following characteristics [2]:<br />

a) Symbolic processing: An AI machine should have the potential<br />

capability of h<strong>and</strong>ling symbols in the phase of acquisition of knowledge,<br />

pattern matching <strong>and</strong> execution of relational operation on symbols.<br />

b) Nondeterministic computation: In a deterministic system, the<br />

problem states <strong>and</strong> their sequence of occurrences (or dependence) are known.<br />

In an AI problem, the occurrence of a state at a given time is unpredictable.<br />

For example, in a production system, which rule will be fired at a particular<br />

problem state cannot be predicted before arrival of the state. Such systems are<br />

usually called nondeterministic, <strong>and</strong> require special architecture for efficient<br />

<strong>and</strong> controlled search in an unknown space.<br />

c) Dynamic execution: Because of nondeterministic nature of the AI<br />

computation, the size of data structures cannot be predicted before solving the<br />

problems. Static allocation of memory before execution of programs is, thus,<br />

not feasible for many AI programs. Dynamic allocation, which means creation<br />

of appropriate data structures as <strong>and</strong> when needed <strong>and</strong> returning the<br />

unnecessary data structures after execution of a module of a program, is<br />

preferred in AI programs. Besides dynamic allocation of memory, deadlocked<br />

tasks should also be dynamically allocated to different processors <strong>and</strong><br />

communication topology should also be dynamically altered.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!