Sparse matrix-vector multiplication (shortly spM × V) is one of the most common subroutines in the numerical linear algebra. The parallelization of this task looks easy and straightforward, but it is not optimal in general case. This paper discuss some matrix-processor mappings and their impact on parallel spM × V execution on massively parallel systems. We try to balance the performance and the overhead of the required transformation. We also present algorithms for redistribution. We propose four quality measures and derive lower and upper bound for different mappings. Our spM × V algorithms are scalable for almost all matrices arising from various technical areas.
{"title":"The Study of Impact of Matrix-Processor Mapping on the Parallel Sparse Matrix-Vector Multiplication","authors":"I. Šimeček, D. Langr, Erik Srnec","doi":"10.1109/SYNASC.2013.49","DOIUrl":"https://doi.org/10.1109/SYNASC.2013.49","url":null,"abstract":"Sparse matrix-vector multiplication (shortly spM × V) is one of the most common subroutines in the numerical linear algebra. The parallelization of this task looks easy and straightforward, but it is not optimal in general case. This paper discuss some matrix-processor mappings and their impact on parallel spM × V execution on massively parallel systems. We try to balance the performance and the overhead of the required transformation. We also present algorithms for redistribution. We propose four quality measures and derive lower and upper bound for different mappings. Our spM × V algorithms are scalable for almost all matrices arising from various technical areas.","PeriodicalId":293085,"journal":{"name":"2013 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing","volume":"48 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126914939","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
As modern games become more and more sophisticated graphically, so does the level of artificial intelligence that animates them thus, the larger the game budget, the more work is put into improving the AI. Unfortunately many of these games feature AIs that are standalone and do not communicate with each other, they do not try to negotiate in order to improve their individual standing. The current work focuses on analysing existing game types in order to establish types of negotiation that can be achieved between AI entities. Moreover, an evolutionary approach which focuses on achieving negotiation between these entities and tackles the problem of having multiple negotiation items with discrete values is presented.
{"title":"Evolutionary Approach to Negotiation in Game AI","authors":"Gabriel Iuhasz, V. Munteanu, V. Negru","doi":"10.1109/SYNASC.2013.46","DOIUrl":"https://doi.org/10.1109/SYNASC.2013.46","url":null,"abstract":"As modern games become more and more sophisticated graphically, so does the level of artificial intelligence that animates them thus, the larger the game budget, the more work is put into improving the AI. Unfortunately many of these games feature AIs that are standalone and do not communicate with each other, they do not try to negotiate in order to improve their individual standing. The current work focuses on analysing existing game types in order to establish types of negotiation that can be achieved between AI entities. Moreover, an evolutionary approach which focuses on achieving negotiation between these entities and tackles the problem of having multiple negotiation items with discrete values is presented.","PeriodicalId":293085,"journal":{"name":"2013 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing","volume":"13 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126031775","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The explosive growth of data generation, storage and analysis within the last decade has led to extensive research towards stream mining algorithms. The existing stream clustering literature contains both adaptation of classical methods as well as novel ones trying to address space and time scalability issues arising from dealing with high volume, high velocity information assets. This paper presents MaStream, a novel stream clustering algorithm experiencing constant space complexity and average case sub-linear time complexity. The algorithm makes use of mass estimation as an alternative to density estimation without employing any distance measure making it highly adaptable to both low and high dimensional data streams. Employing an evolving ensemble of h:d-Trees, the algorithm identifies arbitrary shaped clusters while handling both noise and outliers without a priori information such as total number of clusters. Experimental results over a series of both synthetic and real datasets illustrate the algorithm performance.
{"title":"Clustering Data Streams Using Mass Estimation","authors":"Andrei Sorin Sabau","doi":"10.1109/SYNASC.2013.45","DOIUrl":"https://doi.org/10.1109/SYNASC.2013.45","url":null,"abstract":"The explosive growth of data generation, storage and analysis within the last decade has led to extensive research towards stream mining algorithms. The existing stream clustering literature contains both adaptation of classical methods as well as novel ones trying to address space and time scalability issues arising from dealing with high volume, high velocity information assets. This paper presents MaStream, a novel stream clustering algorithm experiencing constant space complexity and average case sub-linear time complexity. The algorithm makes use of mass estimation as an alternative to density estimation without employing any distance measure making it highly adaptable to both low and high dimensional data streams. Employing an evolving ensemble of h:d-Trees, the algorithm identifies arbitrary shaped clusters while handling both noise and outliers without a priori information such as total number of clusters. Experimental results over a series of both synthetic and real datasets illustrate the algorithm performance.","PeriodicalId":293085,"journal":{"name":"2013 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing","volume":"36 23","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120966022","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
When computing with floating-point numbers, programmers choose a certain floating-point precision (like, for instance, float or double) upfront, for each variable. However, whether the chosen precision is appropriate for the computation at hand, and vice versa, is difficult to judge. One way is to increase the precision, and observe whether the result of the computation changes too much, in which case the computation with the original precisions is considered 'unstable'. This effect may be exhibited with certain inputs, and not with others. With a classical testing approach, inputs that show instability can be very difficult to find. Moreover, testing can only show instability, not stability. In this paper, we present an approach, and its implementation, which can formally prove that an increased precision causes only a limited (quantified) change of the result. Alternatively, if the computation is not stable, the method returns inputs that exhibit this. We use methods from program verification, connecting to a novel SMT (sat- isfiability modulo theories) solver for floating-point number constraints. The user augments the program P with asser- tions on the expected stability bound. The system then creates a new program P', a certain kind of merge of P with a higher precision copy of P, computes the weakest precondition of P' w.r.t. these assertions, and feeds the resulting formula to the SMT solver, which then proves stability or alternatively returns data for a test exhibiting unstability, to be used for further analysis. The implemen- tation of the system targets a toy language but supports the IEEE standard in a realistic manner. The paper describes the method and its implementation, reports experiments, and discusses the results.
{"title":"Verifying (In-)Stability in Floating-Point Programs by Increasing Precision, Using SMT Solving","authors":"Gabriele Paganelli, Wolfgang Ahrendt","doi":"10.1109/SYNASC.2013.35","DOIUrl":"https://doi.org/10.1109/SYNASC.2013.35","url":null,"abstract":"When computing with floating-point numbers, programmers choose a certain floating-point precision (like, for instance, float or double) upfront, for each variable. However, whether the chosen precision is appropriate for the computation at hand, and vice versa, is difficult to judge. One way is to increase the precision, and observe whether the result of the computation changes too much, in which case the computation with the original precisions is considered 'unstable'. This effect may be exhibited with certain inputs, and not with others. With a classical testing approach, inputs that show instability can be very difficult to find. Moreover, testing can only show instability, not stability. In this paper, we present an approach, and its implementation, which can formally prove that an increased precision causes only a limited (quantified) change of the result. Alternatively, if the computation is not stable, the method returns inputs that exhibit this. We use methods from program verification, connecting to a novel SMT (sat- isfiability modulo theories) solver for floating-point number constraints. The user augments the program P with asser- tions on the expected stability bound. The system then creates a new program P', a certain kind of merge of P with a higher precision copy of P, computes the weakest precondition of P' w.r.t. these assertions, and feeds the resulting formula to the SMT solver, which then proves stability or alternatively returns data for a test exhibiting unstability, to be used for further analysis. The implemen- tation of the system targets a toy language but supports the IEEE standard in a realistic manner. The paper describes the method and its implementation, reports experiments, and discusses the results.","PeriodicalId":293085,"journal":{"name":"2013 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing","volume":"2012 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121794570","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In this paper, we describe a collaborative framework for reasoning modulo simple properties of non-linear integer arithmetic. This framework relies on the AC(X) combination method and on interval calculus. The first component is used to handle equalities of linear integer arithmetic and associativity and commutativity properties of non-linear multiplication. The interval calculus component is used - in addition to standard linear operations over inequalities - to refine bounds of non-linear terms and to inform the SAT solver about judicious case-splits on bounded intervals. The framework has been implemented in the Alt-Ergo theorem prover. We show its effectiveness on a set of formulas generated from deductive program verification.
{"title":"A Collaborative Framework for Non-Linear Integer Arithmetic Reasoning in Alt-Ergo","authors":"S. Conchon, Mohamed Iguernelala, A. Mebsout","doi":"10.1109/SYNASC.2013.29","DOIUrl":"https://doi.org/10.1109/SYNASC.2013.29","url":null,"abstract":"In this paper, we describe a collaborative framework for reasoning modulo simple properties of non-linear integer arithmetic. This framework relies on the AC(X) combination method and on interval calculus. The first component is used to handle equalities of linear integer arithmetic and associativity and commutativity properties of non-linear multiplication. The interval calculus component is used - in addition to standard linear operations over inequalities - to refine bounds of non-linear terms and to inform the SAT solver about judicious case-splits on bounded intervals. The framework has been implemented in the Alt-Ergo theorem prover. We show its effectiveness on a set of formulas generated from deductive program verification.","PeriodicalId":293085,"journal":{"name":"2013 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133750052","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
I. Drăgan, Konstantin Korovin, L. Kovács, A. Voronkov
This paper describes an implementation and experimental evaluation of a recently introduced bound propagation method for solving systems of linear inequalities over the reals and rationals. The implementation is part of the first-order theorem prover Vampire. The input problems are systems of linear inequalities over reals or rationals. Their satisfiability is checked by assigning values to the variables of the system and propagating the bounds on these variables. To make the method efficient, we use various strategies for representing numbers, selecting variable orderings, choosing variable values and propagating bounds. We evaluate our implementation on a large number of examples and compare it with state-of-the-art SMT solvers.
{"title":"Bound Propagation for Arithmetic Reasoning in Vampire","authors":"I. Drăgan, Konstantin Korovin, L. Kovács, A. Voronkov","doi":"10.1109/SYNASC.2013.30","DOIUrl":"https://doi.org/10.1109/SYNASC.2013.30","url":null,"abstract":"This paper describes an implementation and experimental evaluation of a recently introduced bound propagation method for solving systems of linear inequalities over the reals and rationals. The implementation is part of the first-order theorem prover Vampire. The input problems are systems of linear inequalities over reals or rationals. Their satisfiability is checked by assigning values to the variables of the system and propagating the bounds on these variables. To make the method efficient, we use various strategies for representing numbers, selecting variable orderings, choosing variable values and propagating bounds. We evaluate our implementation on a large number of examples and compare it with state-of-the-art SMT solvers.","PeriodicalId":293085,"journal":{"name":"2013 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115183252","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
If, during a longitudinal flight with constant forward velocity of an unmanned aerial vehicle (UAV), the automatic flight control system (AFCS) fails and the elevator deflection is not in the safe interval, then the flight becomes oscillatory. In this paper, the dependence of the safe interval, the period of oscillations and the ranges of variations of the pitch rate and of the angle of attack on the variation of the forward velocity are investigated numerically, in the context of a fixed value for the elevator deflection and for certain given initial conditions, by using an Scala-based Akka actor system. It is shown numerically that, for increasing values of the forward velocity, the period of oscillations and the crossection of the safe interval are decreasing. The same descending trend can be observed concerning the dependence of the ranges of the angle of attack and pitch rate, when the forward velocity increases.
{"title":"Dependence of the Oscillatory Movements of an Unmanned Aerial Vehicle on the Forward Velocity","authors":"A. Fortis, S. Balint, Teodor-Florin Fortiş","doi":"10.1109/SYNASC.2013.23","DOIUrl":"https://doi.org/10.1109/SYNASC.2013.23","url":null,"abstract":"If, during a longitudinal flight with constant forward velocity of an unmanned aerial vehicle (UAV), the automatic flight control system (AFCS) fails and the elevator deflection is not in the safe interval, then the flight becomes oscillatory. In this paper, the dependence of the safe interval, the period of oscillations and the ranges of variations of the pitch rate and of the angle of attack on the variation of the forward velocity are investigated numerically, in the context of a fixed value for the elevator deflection and for certain given initial conditions, by using an Scala-based Akka actor system. It is shown numerically that, for increasing values of the forward velocity, the period of oscillations and the crossection of the safe interval are decreasing. The same descending trend can be observed concerning the dependence of the ranges of the angle of attack and pitch rate, when the forward velocity increases.","PeriodicalId":293085,"journal":{"name":"2013 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115339724","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Nabil Hossain, Robert W. McGrail, James M. Belk, Francesco Matucci
We present an efficient implementation of the solution to the conjugacy problem in Thompson's group F, a certain infinite group whose elements are piecewise-linear homeomorphisms of the unit interval. This algorithm checks for conjugacy by constructing and comparing directed graphs called strand diagrams. We provide a comprehensive description of our solution algorithm, including the data structure that stores strand diagrams and methods to simplify them. We prove that our algorithm theoretically achieves a linear time bound in the size of the input, and we present a quadratic time working solution.
{"title":"Deciding Conjugacy in Thompson's Group F in Linear Time","authors":"Nabil Hossain, Robert W. McGrail, James M. Belk, Francesco Matucci","doi":"10.1109/SYNASC.2013.19","DOIUrl":"https://doi.org/10.1109/SYNASC.2013.19","url":null,"abstract":"We present an efficient implementation of the solution to the conjugacy problem in Thompson's group F, a certain infinite group whose elements are piecewise-linear homeomorphisms of the unit interval. This algorithm checks for conjugacy by constructing and comparing directed graphs called strand diagrams. We provide a comprehensive description of our solution algorithm, including the data structure that stores strand diagrams and methods to simplify them. We prove that our algorithm theoretically achieves a linear time bound in the size of the input, and we present a quadratic time working solution.","PeriodicalId":293085,"journal":{"name":"2013 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing","volume":"397 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123092732","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Cloud computing is a promising technology for the realization of large, scalable, and on-demand provisioned computing infrastructures. Currently, many enterprises are adopting Clouds to achieve high performance and scalability for their applications while maintaining low costs. Service provisioning in the Cloud is based on a set of predefined nonfunctional properties specified and negotiated by means of Service Level Agreements (SLAs). Cloud workloads are dynamic and change constantly. Thus, in order to reduce steady human interactions, self-manageable Cloud techniques are required to comply with the agreed customers' SLAs. Flexible and reliable management of SLAs is of paramount importance for both, Cloud providers and consumers. On one hand, the prevention of SLA violations avoids penalties that are costly to providers. On the other hand, based on flexible and timely reactions to possible SLA violation threats, user interaction with the system can be minimized enabling Cloud computing to take roots as a flexible and reliable form of on-demand computing. Furthermore, a trade-off has to be found between proactive actions that prevent SLA violations and those that reduce energy consumption, i.e., increase energy efficiency. In this talk we discuss how the application of Cloud computing technologies can support the work of scientists working in the field of high-throughput sequencing, while at the same time optimizing utilization of resource and increasing energy efficiency.
{"title":"Reducing Energy Consumption by Using Clouds","authors":"I. Brandić","doi":"10.1109/SYNASC.2013.80","DOIUrl":"https://doi.org/10.1109/SYNASC.2013.80","url":null,"abstract":"Cloud computing is a promising technology for the realization of large, scalable, and on-demand provisioned computing infrastructures. Currently, many enterprises are adopting Clouds to achieve high performance and scalability for their applications while maintaining low costs. Service provisioning in the Cloud is based on a set of predefined nonfunctional properties specified and negotiated by means of Service Level Agreements (SLAs). Cloud workloads are dynamic and change constantly. Thus, in order to reduce steady human interactions, self-manageable Cloud techniques are required to comply with the agreed customers' SLAs. Flexible and reliable management of SLAs is of paramount importance for both, Cloud providers and consumers. On one hand, the prevention of SLA violations avoids penalties that are costly to providers. On the other hand, based on flexible and timely reactions to possible SLA violation threats, user interaction with the system can be minimized enabling Cloud computing to take roots as a flexible and reliable form of on-demand computing. Furthermore, a trade-off has to be found between proactive actions that prevent SLA violations and those that reduce energy consumption, i.e., increase energy efficiency. In this talk we discuss how the application of Cloud computing technologies can support the work of scientists working in the field of high-throughput sequencing, while at the same time optimizing utilization of resource and increasing energy efficiency.","PeriodicalId":293085,"journal":{"name":"2013 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123199122","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
We present computer-assisted construction of regular polygons by knot paper fold. The construction is completed with an automated proof based on algebraic methods. Given a rectangular origami or a finite tape, both of an adequate length, we can construct the simplest knot by making three folds. The shape of the knot is made to be a regular pentagon if we fasten the tape tightly without destroying the tape. We performed the analysis of the knot fold further formally towards the computer assisted construction and verification. Our study yielded more rigor and in-depth results about the subject.
{"title":"Knot Fold of Regular Polygons: Computer-Assisted Construction and Verification","authors":"T. Ida, Fadoua Ghourabi, Kazuko Takahashi","doi":"10.1109/SYNASC.2013.9","DOIUrl":"https://doi.org/10.1109/SYNASC.2013.9","url":null,"abstract":"We present computer-assisted construction of regular polygons by knot paper fold. The construction is completed with an automated proof based on algebraic methods. Given a rectangular origami or a finite tape, both of an adequate length, we can construct the simplest knot by making three folds. The shape of the knot is made to be a regular pentagon if we fasten the tape tightly without destroying the tape. We performed the analysis of the knot fold further formally towards the computer assisted construction and verification. Our study yielded more rigor and in-depth results about the subject.","PeriodicalId":293085,"journal":{"name":"2013 15th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing","volume":"24 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2013-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123463251","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}