RO128328A2 - Identification of the parts of the sum for np-complete problems of subset-sum type by using a digital device - Google Patents

Identification of the parts of the sum for np-complete problems of subset-sum type by using a digital device Download PDF

Info

Publication number
RO128328A2
RO128328A2 ROA201100987A RO201100987A RO128328A2 RO 128328 A2 RO128328 A2 RO 128328A2 RO A201100987 A ROA201100987 A RO A201100987A RO 201100987 A RO201100987 A RO 201100987A RO 128328 A2 RO128328 A2 RO 128328A2
Authority
RO
Romania
Prior art keywords
sum
module
subset
type
electronic device
Prior art date
Application number
ROA201100987A
Other languages
Romanian (ro)
Other versions
RO128328B1 (en
Inventor
Attila Bartha
Dumitru Dumitrescu
Marcel Cremene
Original Assignee
Universitatea "Babeş-Bolyai" Din Cluj-Napoca
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Universitatea "Babeş-Bolyai" Din Cluj-Napoca filed Critical Universitatea "Babeş-Bolyai" Din Cluj-Napoca
Priority to ROA201100987A priority Critical patent/RO128328B1/en
Publication of RO128328A2 publication Critical patent/RO128328A2/en
Publication of RO128328B1 publication Critical patent/RO128328B1/en

Links

Abstract

The invention relates to an electronic device which allows the identification of the parts of the sum for NP complete problems of subset-sum type within the computational complexity theory field, with applications in the cryptography and optimization. According to the invention, the device comprises a cascade module (), a module () for computing the partial sum, a module () for checking the status of the circuit, a module () for generating and synchronizing the clock signal and a module () for storing the status.

Description

Invenția se referă la un dispozitiv electronic ce permite identificarea părților sumei pentru probleme NP complete de tip „subset-sum”. Dispozitivul propus identifică o soluție reprezentată sub forma unui subset de valori.The invention relates to an electronic device that allows the identification of parts of the sum for complete NP problems of the "subset-sum" type. The proposed device identifies a solution represented as a subset of values.

în informatică, problema „subset-sum” este o problemă clasică importantă în domeniul teoriei complexității computaționale cu aplicații în criptografie și optimizare. Aceasta problema se definește astfel: dându-se o mulțime de numere întregi pozitive și un număr sum. se cere să se verifice dacă există o submulțime nevidă a acestei mulțimi astfel încât suma elementelor acesteia să fie egală cu numărul sum.In computer science, the "subset-sum" problem is an important classical problem in the field of computational complexity theory with applications in cryptography and optimization. This problem is defined as: giving a lot of positive integers and a sum number. it is required to check if there is an unseen subset of this set such that the sum of its elements equals the sum number.

Problema „subset-sum” este NP-completă (nerezolvabilă în timp polinomial determinist). Multe probleme NP-complete de optimizare combinatorială pot fi reduse la această problemă. Existența unui procedeu rapid de rezolvare a problemei poate fi utilizată, de exemplu, în decriptarea mesajelor care folosesc scheme criptografice de acest tip. Procedeul propus poate fi generalizat și utilizat în rezolvarea unor probleme dificile (NP-complete) de optimizare combinatorială și de criptografie. Probleme practice de optimizare la care mai poate fi aplicata invenția sunt și cele de tip „bin packing”. Astfel, dispozitivul propus are aplicabilitate în soluționarea problemelor de alocare eficientă de resurse cum ar fi: decuparea materialelor cu pierderi minime, împachetarea optimă a unor obiecte într-un container, alocarea optimă a timpilor de execuție a unor procese, utilizarea optimă a spațiilor de transport sau depozitare și alte probleme similare.The "subset-sum" problem is NP-complete (unresolvable in deterministic polynomial time). Many NP-complete combinatorial optimization problems can be reduced to this problem. The existence of a quick problem-solving process can be used, for example, in decrypting messages using cryptographic schemes of this type. The proposed process can be generalized and used in solving some difficult (NP-complete) problems of combinatorial optimization and cryptography. Practical optimization problems to which the invention can be applied are also those of the bin packing type. Thus, the proposed device has applicability in solving the problems of efficient allocation of resources such as: cutting of materials with minimum losses, optimal packaging of objects in a container, optimal allocation of execution times of processes, optimal use of transport spaces or storage and other similar issues.

în scopul rezolvării problemei „subset-sum” nu este cunoscut nici un dispozitiv fizic, dedicat. în acest scop se cunosc numai modele și algoritmi implementabili software, pe un computer.For the purpose of solving the "subset-sum" problem, no dedicated physical device is known. For this purpose, only software implementable models and algorithms are known on a computer.

Problema tehnică pe care o rezolvă invenția este realizarea unui dispozitiv electronic care să ofere o soluție eficientă pentru problema NP-completa „subset-sum”, ceea ce înseamnă să aibă atât un timp de calcul redus cât și o complexitate și de asemenea costuri de implementare reduse.The technical problem solved by the invention is the creation of an electronic device that offers an efficient solution for the NP-complete "subset-sum" problem, which means having both a reduced computation time and a complexity and also implementation costs. reduced.

Dispozitivul electronic care rezolva problema NP completă „subset-sum” se bazează pe un model original, numit sistem cascadă. Acest model este descris în cererea de brevet cu titlul: „Procedeu pentru rezolvarea problemei NP complete subset-sum”. Sistemul cascadă are o structura liniară și este format prin înlănțuirea mai multor noduri care procesează semnale binare. Implementarea hardware a acestui dispozitiv este descrisă în cererea de brevet cu titlul „Dispozitiv electronic pentru rezolvarea problemei NP-complete „subset-sum”.The electronic device that solves the complete NP problem "subset-sum" is based on an original model, called a cascade system. This model is described in the patent application with the title: "Process for solving the NP complete subset-sum problem". The cascade system has a linear structure and is formed by the chain of several nodes that process binary signals. The hardware implementation of this device is described in the patent application entitled "Electronic device for solving the NP-complete" subset-sum problem.

în plus față de propunerea de brevet anterioară cu titlul „Dispozitiv electronic pentru rezolvarea problemei NP-complete „subset-sum””, în această cere de brevet se propune modalitatea de identificare a părților sumei în problema „subset-sum”.In addition to the previous patent proposal with the title "Electronic device for solving the NP-complete problem" subset-sum ", in this patent application it is proposed how to identify parts of the sum in the problem" subset-sum ".

Se dă în continuare un exemplu de realizare a invenției, în legătură cu figura 1, care reprezintă dispozitivul electronic ce permite identificarea părților sumei pentru probleme NP complete de tip „subset-sum”. Dispozitivul electronic (fig. 1) este descris prin schema sa electrică și este compus din următoarele elemente care au fost grupate pe module pentru o înțelegere mai facilă:The following is an example of embodiment of the invention, in connection with Figure 1, which represents the electronic device that allows the identification of parts of the sum for complete NP problems of the "subset-sum" type. The electronic device (fig. 1) is described by its electrical scheme and is composed of the following elements that have been grouped on modules for easier understanding:

Modulul de calcul al sumei parțiale, (1), primește ca semnale de intrare:The module for calculating the partial sum, (1), receives as input signals:

Valorile, în format binar, ale elementelor mulțimii, sub forma unor constante numerice. în cazul exemolificat acestea fiind: 2.3.5.7 si-ϋ-..The values, in binary format, of the elements of the set, in the form of numerical constants. in the exemolified case these are: 2.3.5.7 and-ϋ-.

oa

^-2 0 1 1 - 0 0 9 8 7 -3 ο -09- 2011^ -2 0 1 1 - 0 0 9 8 7 - 3 ο -09- 2011

o Semnalele binare reprezentând selecția elementelor sumei, câte o valoare binară 0/1 pentru fiecare element al mulțimii. Aceste semnale provin de la modulul de memorare a stării (22), mai precis de la ieșirile bistabililor tip D (24) și sunt semnalizate vizual cu ajutorul LED-urilor (26).o Binary signals representing the selection of the sum elements, a binary value 0/1 for each element of the set. These signals come from the state memory module (22), more precisely from the outputs of the D-type bistable (24) and are visually signaled by the LEDs (26).

Ieșirea modului de calcul al sumei parțiale (1) corespunde ieșirii componentei de diferență (3) și este egală cu diferența dintre valoarea sum și valoarea sumei parțiale la un moment dat. Valoarea sumei parțiale este calculată utilizând componentele de adunare cascadate (2) care primesc la intrări valoarea elementului mulțimii dacă elementul este selecționat sau valoarea 0 altfel. Decizia se realizează utilizând componentele de tip buffer comandat (4).The output of the calculation of the partial amount (1) corresponds to the output of the difference component (3) and is equal to the difference between the sum value and the value of the partial amount at a given time. The value of the partial sum is calculated using the cascading assembly components (2) that receive at the inputs the value of the element of the set if the element is selected or the value 0 otherwise. The decision is made using the components of the ordered buffer type (4).

Modulul de verificare a stării circuitului (7) are rolul de a verifica dacă s-a găsit o soluție și/sau dacă s-a terminat calculul. Acest modul primește la intrarea sa ieșirea modulului de calcul al sumei parțiale (1) calculată așa cum s-a explicat anterior precum și ieșirea numărătorului binar (6). La ieșire, modulul de verificare a stării circuitului (7) furnizează două semnale binare care se afișează folosind două LED-uri: calcul terminat (13) care indică finalizarea calcului și suma necalculabilă (12) care, dacă este în starea 1 logic, indică faptul că nu s-a găsit nici o soluție. Pentru aceasta, modulul de verificare a stării circuitului (7) utilizează blocurile comparatoare (8), bistabilul de tip D (9), două porți logice de tip SI (11) și o poartă inversoare (10). Modulul mai primește și semnalul de reset care provine de la butonul de mașter reset (26), semnal care se aplică pe intrarea de reset a bistabilului tip D (9).The module for checking the state of the circuit (7) has the role of checking whether a solution has been found and / or if the calculation has been completed. This module receives at its input the output of the calculation of the partial sum (1) calculated as explained above as well as the output of the binary counter (6). At the output, the circuit status check module (7) provides two binary signals that are displayed using two LEDs: finished calculation (13) indicating the completion of the calculation and the non-calculable sum (12) which, if in logic state 1, indicates the fact that no solution was found. For this, the circuit status check module (7) uses the comparator blocks (8), the D-type bistable (9), two SI logic gates (11) and an inverting gate (10). The module also receives the reset signal from the reset master button (26), a signal that is applied to the reset input of the D-type bistable (9).

Modulul de generare și sincronizare a tactului (14) primește la intrare un semnal binar care este dat de rezultatul operației de SAU logic între semnalele de calcul terminat (13) respectiv suma necalculabilă (12) precum. Același modul mai primește și semnalul de reset care provine de la butonul de mașter reset (26), semnal care se aplică pe intrarea de rest a bistabilului tip D (16). Modulul de generare și sincronizare a tactului (14) mai conține și o poartă logică SI cu trei intrări (18) respectiv un inversor (17).The module for generating and synchronizing the tact (14) receives at the input a binary signal that is given by the result of the logical OR operation between the completed calculation signals (13) respectively the non-calculable amount (12) as well. The same mode also receives the reset signal from the reset master button (26), a signal that is applied to the rest input of the D-type bistable (16). The module for generating and synchronizing the tact (14) also contains a logic gate SI with three inputs (18) respectively an inverter (17).

Modulul cascadă (21) implementează componentele specifice sistemului cascadă descris în cererea de brevet cu titlul „Procedeu pentru rezolvarea problemei NP complete subset-sum”. Explicații privind implementarea acestuia pentru problema verificării „sub-set sum” se găsesc în cererea de brevet cu titlul „Dispozitiv electronic pentru rezolvarea problemei NP-complete „subset-sum””. Acest modul primește ca intrări:The cascade module (21) implements the specific components of the cascade system described in the patent application with the title "Procedure for solving the NP complete subset-sum problem". Explanations regarding its implementation for the problem of "sub-set sum" verification can be found in the patent application entitled "Electronic device for solving the NP-complete" subset-sum problem ". This module receives as inputs:

o Semnalul de tact, care provine de la ieșirea modulului de generare și sincronizare a tactului (14), o Semnalul de la ieșirea numărătorului binar (6), o Un semnal de reset care este obținut la ieșirea porții logice SAU (20), poartă ce realizează o operație SAU logic între semnalul de mașter rest (27) și un al doilea semnal ce provine de la modulul de verificare a stării circuitului (7). Acest semnal de reset se aplică atât numărătorului binar (6) cât și regiștrilor de deplasare (19).o The tactile signal, which comes from the output of the generation and synchronization of the tact (14), o The signal from the output of the binary counter (6), o A reset signal that is obtained at the output of the logic portion OR (20), carries which performs a logical OR operation between the remaining master signal (27) and a second signal that comes from the circuit status check module (7). This reset signal applies to both the binary counter (6) and the shift registers (19).

o Pentru fiecare registru de deplasare este prevăzută o intrare cu rol de validare a propagării semnalului, care provine de la modulul de memorare a stării (22), mai precis de la ieșirile porților logice SI (23).o For each displacement register, an input with validation role of signal propagation is provided, which comes from the state memory module (22), more precisely from the SI logic gate outputs (23).

Ieșirile modulului cascadă reprezintă ieșirile regiștrilor de deplasare (19) care sunt utilizare de către modulul de memorare a stării (22). deplasare (22) corespund elementelor mulțimii date, având exact a$â£^Bf£WTnemorie cât este valoarea fiecărui element al mulțimii esențială în ^-2 0 1 1 - 0 0 987- 3 0 -05- 20Π funcționarea circuitului este ca elementele sumei să fie ordonate crescător, de la stângă la dreapta.The cascade module outputs represent the outputs of the shift registers (19) that are used by the state memory module (22). displacement (22) corresponds to the elements of the given set, having exactly $ â £ ^ Bf £ WTememory of the value of each element of the essential set in ^ -2 0 1 1 - 0 0 987-3 3 0-05-20- the circuit operation is like the elements the amount to be ordered in ascending order, from left to right.

Modulul de memorare a stării (22) are rolul de a memora soluția corectă dacă aceasta este găsită. Modulul este format din bistabili de tip D (24), (25) respectiv porți logice de tip SI și SAU cu două intrări, conform schemei din figura 1. Modulul primește semnalul de mașter reset (27) care este aplicat intrărilor de reset ai bistabililor D (24) și (25). De asemenea, mai primește semnalul numit „READY” de la modulul de verificare a stării circuitului (7). Ieșirile modului de memorare a stării (22) reprezintă semnalele binare afișate cu ajutorul LED-urilor (26), care reprezintă tocmai soluția problemei „subset-sum” sub forma selecției elementelor mulțimii care adunate dau valoarea sum, în cazul în care cel puțin o soluție există.The state memory module (22) has the role of storing the correct solution if it is found. The module consists of D-type bistables (24), (25) respectively SI and OR logic gates with two inputs, according to the diagram in figure 1. The module receives the reset master signal (27) which is applied to the bistable reset inputs. D (24) and (25). It also receives the signal called "READY" from the circuit status module (7). The outputs of the state memory mode (22) represent the binary signals displayed with the help of the LEDs (26), which is precisely the solution of the "subset-sum" problem in the form of the selection of the elements of the assembly that give the sum value, if at least one solution exists.

La apăsarea butonului de mașter reset (27) se repomește calculul care are ca rezultat afișarea la nivelul LED-urilor (26) a soluției problemei dacă cel puțin o soluție există. Dacă nu este găsită nici o soluție atunci execuția se termină prin aprinderea LED-ului pentru suma necalculabilă (12).Pressing the reset master button (27) restores the calculation that results in the LED display (26) displaying the solution of the problem if at least one solution exists. If no solution is found then the execution ends with the LED ignition for the non-calculable amount (12).

Prin utilizarea dispozitivului electronic propus pentru găsirea unei soluții la problema NP complete „subset-sum” se obțin următoarele avantaje:By using the proposed electronic device to find a solution to the complete NP problem "subset-sum" the following advantages are obtained:

implementare hardware facilă și cu costuri relativ reduse, spre deosebire de majoritatea algoritmilor existenți, care au fost concepuți pentru implementări software, viteza de lucru ridicată datorita complexității în timp care este liniară în raport cu valoarea sum, costuri de realizare reduse datorită complexității spațiaJ^^SÎ^rĂii raport cu suma elementelor mulțimii date. 'Weasy and relatively low cost hardware implementation, unlike most of the existing algorithms, which have been designed for software implementations, high working speed due to complexity while being linear with respect to sum value, reduced realization costs due to space complexityJ ^^ LOAD the sum of the elements of the given set. 'W

Claims (1)

REVENDICĂRI Dispozitiv electronic pentru identificarea părților sumei pentru probleme NP complete de tip „subset-sum” caracterizat prin aceea că implementează un model original propus de autorii invenției, numit „sistem cascadă”, implementat sub forma modulului cascadă (21), având în plus o serie de adăugiri care să permită și identificarea părților sumei verificate. Aceste adăugiri sunt: modulul de calcul al sumei parțiale (1), modulul de verificare a stării circuitului (7) și modulul de memorare a stării (22).An electronic device for identifying parts of the sum for complete NP problems of the "subset-sum" type, characterized in that it implements an original model proposed by the authors of the invention, called a "cascade system", implemented in the form of the cascade module (21), having in addition a series of additions that also allow the parts of the verified amount to be identified. These additions are: the module for calculating the partial amount (1), the module for checking the state of the circuit (7) and the module for storing the state (22). Dispozitiv electronic, conform revendicării 1, caracterizat prin aceea că modulele sistemului cascadă sunt implementate cu ajutorul unor regiștri de deplasare (19) a unor porți logice de tip SAU și a unor porți de tip SI (23), acestea din urmă permițând decuplarea modulelor sistemului cascadă și identificarea părților sumei.An electronic device according to claim 1, characterized in that the modules of the cascade system are implemented by means of displacement registers (19) of logical OR-type gates and SI-type gates (23), the latter allowing the system modules to be switched off. cascade and identifying parts of the sum. Dispozitiv electronic, conform revendicării 1 si 2, caracterizatjLrin.aceea că modulul de calcul al sumei parțiale (1), modulul de verificare a stării circui^j^^x|j respectiv modulul de memorare a stării (22) sunt implementate conform schemei elq^^^?din figura 1.An electronic device according to claims 1 and 2, characterized in that the module for calculating the partial sum (1), the circuit state control module ^ j ^^ x | j respectively the state memory module (22) are implemented according to the diagram elq ^^^? from figure 1.
ROA201100987A 2011-09-30 2011-09-30 Electronic device for solving np-complete problems of subset-sum type and identifying the parts of the sum RO128328B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
ROA201100987A RO128328B1 (en) 2011-09-30 2011-09-30 Electronic device for solving np-complete problems of subset-sum type and identifying the parts of the sum

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
ROA201100987A RO128328B1 (en) 2011-09-30 2011-09-30 Electronic device for solving np-complete problems of subset-sum type and identifying the parts of the sum

Publications (2)

Publication Number Publication Date
RO128328A2 true RO128328A2 (en) 2013-04-30
RO128328B1 RO128328B1 (en) 2018-11-29

Family

ID=48170279

Family Applications (1)

Application Number Title Priority Date Filing Date
ROA201100987A RO128328B1 (en) 2011-09-30 2011-09-30 Electronic device for solving np-complete problems of subset-sum type and identifying the parts of the sum

Country Status (1)

Country Link
RO (1) RO128328B1 (en)

Also Published As

Publication number Publication date
RO128328B1 (en) 2018-11-29

Similar Documents

Publication Publication Date Title
Gaj et al. Fair and comprehensive methodology for comparing hardware performance of fourteen round two SHA-3 candidates using FPGAs
Yuan et al. The ${\schmi g} $-Good-Neighbor Conditional Diagnosability of ${\schmi k} $-Ary ${\schmi n} $-Cubes under the PMC Model and MM Model
Ansari et al. High-performance architecture of elliptic curve scalar multiplication
Angluin et al. Self-stabilizing population protocols
Rowley et al. Fault-tolerant ring embedding in de Bruijn networks
de Groote et al. Max-plus algebraic throughput analysis of synchronous dataflow graphs
JP6113091B2 (en) Hash value generator
CN104765589A (en) Grid parallel preprocessing method based on MPI
CN103793199A (en) Rapid RSA cryptography coprocessor capable of supporting dual domains
CN109344268A (en) Method, electronic equipment and the computer readable storage medium of graphic data base write-in
CN104238995A (en) Non-linear feedback shift register
Järvinen et al. A generalization of addition chains and fast inversions in binary fields
US9203415B2 (en) Modulated clock synchronizer
CN104506316A (en) Point multiplication operation method based on SM2 base points
CN104572012A (en) Polynomial-based GF [2(227)] high-speed modular multiplier based on AOP (all one polynomial)
RO128328A2 (en) Identification of the parts of the sum for np-complete problems of subset-sum type by using a digital device
RU2010133016A (en) DEBUGGING COMPLEX
Kobayashi et al. Towards a low-power accelerator of many FPGAs for stencil computations
US9389835B2 (en) Finite field inverter
CN103023659B (en) ECC (elliptic curve cryptosystem) encryption hardware device with expandable parameter bit width
Boode et al. On a directed tree problem motivated by a newly introduced graph product
CN115276952A (en) Private data processing method and device
CN103034698B (en) Date storage method and device
Awano et al. Asic coprocessor for 254-bit prime-field pairing based on general purpose arithmetic unit on quadratic extension field
CN103020203B (en) Method and device for processing data