09.09.2014 Views

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

13th International Conference on Membrane Computing - MTA Sztaki

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.

On efficient algorithms for SAT<br />

2 Solving SAT by <strong>Membrane</strong> <strong>Computing</strong><br />

In this secti<strong>on</strong> we recall a very important class of unc<strong>on</strong>venti<strong>on</strong>al computing<br />

techniques and analyse the proposed soluti<strong>on</strong>s to SAT in that frameworks.<br />

Over the last decade, molecular computing has been a very active field of<br />

research. The great promise of performing computati<strong>on</strong>s at a molecular level<br />

is that the small size of the computati<strong>on</strong>al units potentially allows for massive<br />

parallelism in the computati<strong>on</strong>s. Thus, computati<strong>on</strong>s that seem to be intractable<br />

in sequential modes of computati<strong>on</strong> can be performed (at least in theory) in<br />

polynomial or even linear time.<br />

In this secti<strong>on</strong> we are dealing with <strong>Membrane</strong> <strong>Computing</strong>. It is a branch of<br />

biocomputing, and developing very rapidly. New algorithmic ways are used to<br />

solve hard (intractable) problems. This field was born by the paper [31]. An<br />

early textbook presenting several variati<strong>on</strong>s of these systems is [33]. There are<br />

various ways for trading space for time, i.e., by parallelism exp<strong>on</strong>ential space<br />

can be obtained in linear time, for instance, by active membranes. The SAT<br />

is solved by various models in effective ways. In the next subsecti<strong>on</strong>s we recall<br />

some of these methods (dealing <strong>on</strong>ly with some aspects that are important<br />

for our point of view, without further details due to the page limit; for further<br />

details we recommend to check the literature at the P-system home page<br />

at http://psystems.disco.unimib.it/ and http://ppage.psystems.eu; we<br />

assume that the reader is familiar with the various c<strong>on</strong>cepts of these systems or<br />

she/he can look for them in the cited literature). Since SAT is <strong>on</strong>e of the most<br />

known and most important NP-complete problems there are several attempts<br />

by older and newer methods.<br />

We use the terms uniform and semi-uniform by the definiti<strong>on</strong> of [35, 36]: in<br />

semi-uniform algorithm a specific membrane system is created for a given instance<br />

of the problem, while uniform algorithm can solve all instances having<br />

same parameters (e.g., number of clauses, number of variables). We use the parameters:<br />

m clauses and k variables of the solvable CNF formula. Note that in<br />

[22] it is pointed out that at problems c<strong>on</strong>nected to complexity classes P, NP<br />

and P-SPACE the choice of uniformity or semi-uniformity leads to the characterizati<strong>on</strong>s<br />

of the same complexity classes.<br />

2.1 <strong>Membrane</strong> Creati<strong>on</strong><br />

Using membrane creati<strong>on</strong> <strong>on</strong>e can use an exp<strong>on</strong>ential growth (exp<strong>on</strong>ential space<br />

can easily been obtained) during the computati<strong>on</strong>.<br />

We briefly describe how membrane creating can be used to solve SAT in linear<br />

time. First we have an initial membrane with <strong>on</strong>ly <strong>on</strong>e object. Applying the <strong>on</strong>ly<br />

applicable rule for this object we introduce two new objects corresp<strong>on</strong>ding to<br />

the possible values of the first variable, and a technical object to c<strong>on</strong>tinue the<br />

process. Then the new objects of the logical variable create new membranes (and<br />

copy some symbols to the new membranes). Now for each new membrane two<br />

new objects are introduced corresp<strong>on</strong>ding to the next variable, these new objects<br />

create new <strong>on</strong>es again, etc. Finally the membrane structure forms a complete<br />

327

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

Saved successfully!

Ooh no, something went wrong!