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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

22.5.4 An Algorithm for Automated Reasoning<br />

We shall use the following notations in the algorithm for automated reasoning.<br />

Current-bindings (c-b) denote the set of instantiation of all the variables<br />

associated with the transitions.<br />

Used-bindings (u-b) denote the set of union of the current-bindings up to the<br />

last transition firing.<br />

Properly signed token means positive tokens for input places <strong>and</strong> negative<br />

tokens for output places.<br />

The maximum value of the variable no-of-firing in the algorithm is set to<br />

number of transitions. This is because of the fact that number of transition<br />

denotes the largest possible reasoning path <strong>and</strong> the algorithm cannot generate<br />

new bindings after this many iterations.<br />

Procedure Automated Reasoning<br />

Begin<br />

For each transition do<br />

Par Begin<br />

used-bindings:= Null;<br />

Flag:= true; // transition not firable.//<br />

Repeat<br />

If at least all minus one number of the input <strong>and</strong><br />

output places possess properly signed tokens<br />

Then do<br />

Begin<br />

determine the set: current-bindings of all the<br />

variables associated with the transition;<br />

If (a non-null binding is available for all the variables) AND<br />

(current-bindings is not a subset of used-bindings)<br />

Then do Begin<br />

Fire the transition <strong>and</strong> send tokens to the input<br />

<strong>and</strong> the output places using the set current-bindings<br />

<strong>and</strong> following the arc functions with a presumed opposite sign;<br />

Update used-bindings by taking union with current-bindings;<br />

Flag:= false; //record of transition firing//<br />

Increment no-of-firing by 1;<br />

End

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

Saved successfully!

Ooh no, something went wrong!