Paralloy : learning y restart en un Sat Solver distribuido
- Autores
- Pérez, Matías Hernando
- Año de publicación
- 2016
- Idioma
- español castellano
- Tipo de recurso
- tesis de grado
- Estado
- versión publicada
- Colaborador/a o director/a de tesis
- Rosner, Nicolás Leandro
Vissani, Ignacio - Descripción
- El problema de satisfactoriedad, también conocido como problema SAT, es uno de los problemas con mayor estudio dentro de las Ciencias de la Computación. En el año 1971, Stephen Cook definió lo que hoy llamamos NP-completitud en términos de este problema, que se convirtió en el primer problema NP-completo. En la actualidad tiene una amplia variedad de aplicaciones prácticas, entre ellas la verificación automática de software y hardware. Dada la importancia de este problema, existe un gran interés en el desarrollo de piezas de software que sean capaces de resolverlo de forma eficiente, los SAT-solver . Paralloy es un SAT-solver que, mediante un esquema de Divide & Conquer, realiza la resolución de forma paralela y distribuida. En este trabajo se analizan los efectos de agregar un esquema de learning y restart distribuido a la herramienta, ya que al realizar la división en sub-problemas independientes la información que estos generan queda aislada, haciéndola visible sólo localmente. Asimismo, los restarts que se generan en cada nodo también tienen un efecto exclusivamente local. Este trabajo intenta romper con este aislamiento de cada una de las resoluciones de los sub-problemas. Luego de evaluar distintas estrategias de distribución de la información entre las unidades de cómputo del sistema (learning), se logró una reducción del 30 % en el tiempo de ejecución total promedio para los problemas considerados. En algunos casos la mejora alcanzada fue de 50× con respecto a la velocidad original de la herramienta. De esta forma se logra expandir el alcance de la herramienta, posibilitando la resolución de un nuevo conjunto de problemas en tiempos tolerables. Si bien la estrategia de restart global implementada no logró reducir el tiempo de ejecución promedio, sí se observó una disminución en el tiempo de ejecución a lo largo de las distintas interaciones de restart. Este fenómeno promisorio amerita ser investigado, y abre un posible camino para un trabajo futuro.
The satisfiability problem, also known as SAT problem, is among the most studied in Computer Science. In 1971, Stephen Cook defined what we currently call NP-completeness in terms of it, making it the first NP-complete problem. There are many practical applications of this problem, including automatic verification of software and hardware. Given the importance of this problem, there is broad interest in developing software tools that are capable of tackling it in a highly efficient way, known as SAT-solvers. Paralloy is a SAT-solver that uses a Divide & Conquer approach in order to parallelise and distribute the solving effort. In this thesis we study the effects of adding learning and global restarts to the tool. The motivation to do this arises from the fact that, when a problem is divided into independent sub-problems, the information learned by the solver is isolated, limiting its usefulness to the local context. In the same way, the restarts performed at each node do not have a global impact. This work aims at breaking this isolation and strengthening the interaction between nodes of the system. After analyzing various strategies for the distribution of information between system nodes, we observed reductions of up to 30 % in the average total execution time for the problems in our benchmark. In some cases the improvement reached a factor of 50x with respect to the original execution time. Thus, the techniques incorporated in this work were able to expand the proving power of the tool, enabling it to solve more complex and time consuming problems. Although the global restart strategy implemented in this work did not achieve a reduction in mean execution time, we did observe decreasing execution times across successive iterations of restart. This promising result deserves further exploration and opens a path for future research.
Fil: Pérez, Matías Hernando. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. - Materia
-
PARALELO
DISTRIBUIDO
SAT SOLVING
PARALLEL
DISTRIBUTED
LEARNING
RESTART
PARALLOY - Nivel de accesibilidad
- acceso abierto
- Condiciones de uso
- https://creativecommons.org/licenses/by-nc-sa/2.5/ar
- Repositorio
- Institución
- Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales
- OAI Identificador
- seminario:seminario_nCOM000675_Perez
Ver los metadatos del registro completo
id |
BDUBAFCEN_132e3ddd3535a31bead8c619a25a93c9 |
---|---|
oai_identifier_str |
seminario:seminario_nCOM000675_Perez |
network_acronym_str |
BDUBAFCEN |
repository_id_str |
1896 |
network_name_str |
Biblioteca Digital (UBA-FCEN) |
spelling |
Paralloy : learning y restart en un Sat Solver distribuidoParalloy : learning and restart for a distributed Sat SolverPérez, Matías HernandoPARALELODISTRIBUIDOSAT SOLVINGPARALLELDISTRIBUTEDLEARNINGRESTARTPARALLOYEl problema de satisfactoriedad, también conocido como problema SAT, es uno de los problemas con mayor estudio dentro de las Ciencias de la Computación. En el año 1971, Stephen Cook definió lo que hoy llamamos NP-completitud en términos de este problema, que se convirtió en el primer problema NP-completo. En la actualidad tiene una amplia variedad de aplicaciones prácticas, entre ellas la verificación automática de software y hardware. Dada la importancia de este problema, existe un gran interés en el desarrollo de piezas de software que sean capaces de resolverlo de forma eficiente, los SAT-solver . Paralloy es un SAT-solver que, mediante un esquema de Divide & Conquer, realiza la resolución de forma paralela y distribuida. En este trabajo se analizan los efectos de agregar un esquema de learning y restart distribuido a la herramienta, ya que al realizar la división en sub-problemas independientes la información que estos generan queda aislada, haciéndola visible sólo localmente. Asimismo, los restarts que se generan en cada nodo también tienen un efecto exclusivamente local. Este trabajo intenta romper con este aislamiento de cada una de las resoluciones de los sub-problemas. Luego de evaluar distintas estrategias de distribución de la información entre las unidades de cómputo del sistema (learning), se logró una reducción del 30 % en el tiempo de ejecución total promedio para los problemas considerados. En algunos casos la mejora alcanzada fue de 50× con respecto a la velocidad original de la herramienta. De esta forma se logra expandir el alcance de la herramienta, posibilitando la resolución de un nuevo conjunto de problemas en tiempos tolerables. Si bien la estrategia de restart global implementada no logró reducir el tiempo de ejecución promedio, sí se observó una disminución en el tiempo de ejecución a lo largo de las distintas interaciones de restart. Este fenómeno promisorio amerita ser investigado, y abre un posible camino para un trabajo futuro.The satisfiability problem, also known as SAT problem, is among the most studied in Computer Science. In 1971, Stephen Cook defined what we currently call NP-completeness in terms of it, making it the first NP-complete problem. There are many practical applications of this problem, including automatic verification of software and hardware. Given the importance of this problem, there is broad interest in developing software tools that are capable of tackling it in a highly efficient way, known as SAT-solvers. Paralloy is a SAT-solver that uses a Divide & Conquer approach in order to parallelise and distribute the solving effort. In this thesis we study the effects of adding learning and global restarts to the tool. The motivation to do this arises from the fact that, when a problem is divided into independent sub-problems, the information learned by the solver is isolated, limiting its usefulness to the local context. In the same way, the restarts performed at each node do not have a global impact. This work aims at breaking this isolation and strengthening the interaction between nodes of the system. After analyzing various strategies for the distribution of information between system nodes, we observed reductions of up to 30 % in the average total execution time for the problems in our benchmark. In some cases the improvement reached a factor of 50x with respect to the original execution time. Thus, the techniques incorporated in this work were able to expand the proving power of the tool, enabling it to solve more complex and time consuming problems. Although the global restart strategy implemented in this work did not achieve a reduction in mean execution time, we did observe decreasing execution times across successive iterations of restart. This promising result deserves further exploration and opens a path for future research.Fil: Pérez, Matías Hernando. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina.Universidad de Buenos Aires. Facultad de Ciencias Exactas y NaturalesRosner, Nicolás LeandroVissani, Ignacio2016info:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_7a1finfo:ar-repo/semantics/tesisDeGradoapplication/pdfhttps://hdl.handle.net/20.500.12110/seminario_nCOM000675_Perezspainfo:eu-repo/semantics/openAccesshttps://creativecommons.org/licenses/by-nc-sa/2.5/arreponame:Biblioteca Digital (UBA-FCEN)instname:Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesinstacron:UBA-FCEN2025-09-29T13:43:33Zseminario:seminario_nCOM000675_PerezInstitucionalhttps://digital.bl.fcen.uba.ar/Universidad públicaNo correspondehttps://digital.bl.fcen.uba.ar/cgi-bin/oaiserver.cgiana@bl.fcen.uba.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:18962025-09-29 13:43:34.065Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturalesfalse |
dc.title.none.fl_str_mv |
Paralloy : learning y restart en un Sat Solver distribuido Paralloy : learning and restart for a distributed Sat Solver |
title |
Paralloy : learning y restart en un Sat Solver distribuido |
spellingShingle |
Paralloy : learning y restart en un Sat Solver distribuido Pérez, Matías Hernando PARALELO DISTRIBUIDO SAT SOLVING PARALLEL DISTRIBUTED LEARNING RESTART PARALLOY |
title_short |
Paralloy : learning y restart en un Sat Solver distribuido |
title_full |
Paralloy : learning y restart en un Sat Solver distribuido |
title_fullStr |
Paralloy : learning y restart en un Sat Solver distribuido |
title_full_unstemmed |
Paralloy : learning y restart en un Sat Solver distribuido |
title_sort |
Paralloy : learning y restart en un Sat Solver distribuido |
dc.creator.none.fl_str_mv |
Pérez, Matías Hernando |
author |
Pérez, Matías Hernando |
author_facet |
Pérez, Matías Hernando |
author_role |
author |
dc.contributor.none.fl_str_mv |
Rosner, Nicolás Leandro Vissani, Ignacio |
dc.subject.none.fl_str_mv |
PARALELO DISTRIBUIDO SAT SOLVING PARALLEL DISTRIBUTED LEARNING RESTART PARALLOY |
topic |
PARALELO DISTRIBUIDO SAT SOLVING PARALLEL DISTRIBUTED LEARNING RESTART PARALLOY |
dc.description.none.fl_txt_mv |
El problema de satisfactoriedad, también conocido como problema SAT, es uno de los problemas con mayor estudio dentro de las Ciencias de la Computación. En el año 1971, Stephen Cook definió lo que hoy llamamos NP-completitud en términos de este problema, que se convirtió en el primer problema NP-completo. En la actualidad tiene una amplia variedad de aplicaciones prácticas, entre ellas la verificación automática de software y hardware. Dada la importancia de este problema, existe un gran interés en el desarrollo de piezas de software que sean capaces de resolverlo de forma eficiente, los SAT-solver . Paralloy es un SAT-solver que, mediante un esquema de Divide & Conquer, realiza la resolución de forma paralela y distribuida. En este trabajo se analizan los efectos de agregar un esquema de learning y restart distribuido a la herramienta, ya que al realizar la división en sub-problemas independientes la información que estos generan queda aislada, haciéndola visible sólo localmente. Asimismo, los restarts que se generan en cada nodo también tienen un efecto exclusivamente local. Este trabajo intenta romper con este aislamiento de cada una de las resoluciones de los sub-problemas. Luego de evaluar distintas estrategias de distribución de la información entre las unidades de cómputo del sistema (learning), se logró una reducción del 30 % en el tiempo de ejecución total promedio para los problemas considerados. En algunos casos la mejora alcanzada fue de 50× con respecto a la velocidad original de la herramienta. De esta forma se logra expandir el alcance de la herramienta, posibilitando la resolución de un nuevo conjunto de problemas en tiempos tolerables. Si bien la estrategia de restart global implementada no logró reducir el tiempo de ejecución promedio, sí se observó una disminución en el tiempo de ejecución a lo largo de las distintas interaciones de restart. Este fenómeno promisorio amerita ser investigado, y abre un posible camino para un trabajo futuro. The satisfiability problem, also known as SAT problem, is among the most studied in Computer Science. In 1971, Stephen Cook defined what we currently call NP-completeness in terms of it, making it the first NP-complete problem. There are many practical applications of this problem, including automatic verification of software and hardware. Given the importance of this problem, there is broad interest in developing software tools that are capable of tackling it in a highly efficient way, known as SAT-solvers. Paralloy is a SAT-solver that uses a Divide & Conquer approach in order to parallelise and distribute the solving effort. In this thesis we study the effects of adding learning and global restarts to the tool. The motivation to do this arises from the fact that, when a problem is divided into independent sub-problems, the information learned by the solver is isolated, limiting its usefulness to the local context. In the same way, the restarts performed at each node do not have a global impact. This work aims at breaking this isolation and strengthening the interaction between nodes of the system. After analyzing various strategies for the distribution of information between system nodes, we observed reductions of up to 30 % in the average total execution time for the problems in our benchmark. In some cases the improvement reached a factor of 50x with respect to the original execution time. Thus, the techniques incorporated in this work were able to expand the proving power of the tool, enabling it to solve more complex and time consuming problems. Although the global restart strategy implemented in this work did not achieve a reduction in mean execution time, we did observe decreasing execution times across successive iterations of restart. This promising result deserves further exploration and opens a path for future research. Fil: Pérez, Matías Hernando. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. |
description |
El problema de satisfactoriedad, también conocido como problema SAT, es uno de los problemas con mayor estudio dentro de las Ciencias de la Computación. En el año 1971, Stephen Cook definió lo que hoy llamamos NP-completitud en términos de este problema, que se convirtió en el primer problema NP-completo. En la actualidad tiene una amplia variedad de aplicaciones prácticas, entre ellas la verificación automática de software y hardware. Dada la importancia de este problema, existe un gran interés en el desarrollo de piezas de software que sean capaces de resolverlo de forma eficiente, los SAT-solver . Paralloy es un SAT-solver que, mediante un esquema de Divide & Conquer, realiza la resolución de forma paralela y distribuida. En este trabajo se analizan los efectos de agregar un esquema de learning y restart distribuido a la herramienta, ya que al realizar la división en sub-problemas independientes la información que estos generan queda aislada, haciéndola visible sólo localmente. Asimismo, los restarts que se generan en cada nodo también tienen un efecto exclusivamente local. Este trabajo intenta romper con este aislamiento de cada una de las resoluciones de los sub-problemas. Luego de evaluar distintas estrategias de distribución de la información entre las unidades de cómputo del sistema (learning), se logró una reducción del 30 % en el tiempo de ejecución total promedio para los problemas considerados. En algunos casos la mejora alcanzada fue de 50× con respecto a la velocidad original de la herramienta. De esta forma se logra expandir el alcance de la herramienta, posibilitando la resolución de un nuevo conjunto de problemas en tiempos tolerables. Si bien la estrategia de restart global implementada no logró reducir el tiempo de ejecución promedio, sí se observó una disminución en el tiempo de ejecución a lo largo de las distintas interaciones de restart. Este fenómeno promisorio amerita ser investigado, y abre un posible camino para un trabajo futuro. |
publishDate |
2016 |
dc.date.none.fl_str_mv |
2016 |
dc.type.none.fl_str_mv |
info:eu-repo/semantics/bachelorThesis info:eu-repo/semantics/publishedVersion http://purl.org/coar/resource_type/c_7a1f info:ar-repo/semantics/tesisDeGrado |
format |
bachelorThesis |
status_str |
publishedVersion |
dc.identifier.none.fl_str_mv |
https://hdl.handle.net/20.500.12110/seminario_nCOM000675_Perez |
url |
https://hdl.handle.net/20.500.12110/seminario_nCOM000675_Perez |
dc.language.none.fl_str_mv |
spa |
language |
spa |
dc.rights.none.fl_str_mv |
info:eu-repo/semantics/openAccess https://creativecommons.org/licenses/by-nc-sa/2.5/ar |
eu_rights_str_mv |
openAccess |
rights_invalid_str_mv |
https://creativecommons.org/licenses/by-nc-sa/2.5/ar |
dc.format.none.fl_str_mv |
application/pdf |
dc.publisher.none.fl_str_mv |
Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales |
publisher.none.fl_str_mv |
Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital (UBA-FCEN) instname:Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales instacron:UBA-FCEN |
reponame_str |
Biblioteca Digital (UBA-FCEN) |
collection |
Biblioteca Digital (UBA-FCEN) |
instname_str |
Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales |
instacron_str |
UBA-FCEN |
institution |
UBA-FCEN |
repository.name.fl_str_mv |
Biblioteca Digital (UBA-FCEN) - Universidad Nacional de Buenos Aires. Facultad de Ciencias Exactas y Naturales |
repository.mail.fl_str_mv |
ana@bl.fcen.uba.ar |
_version_ |
1844618753700003840 |
score |
13.070432 |