programming paradigm
Recently Published Documents


TOTAL DOCUMENTS

312
(FIVE YEARS 65)

H-INDEX

17
(FIVE YEARS 2)

2021 ◽  
Vol 12 (5-2021) ◽  
pp. 161-165
Author(s):  
Alexander A. Zuenko ◽  
◽  
Yurii A. Oleynik ◽  
Roman A. Makedonov ◽  
◽  
...  

The work is aimed at solving the three-dimensional problem of finding the open-pit working edge positions by the periods of mining, taking into account the a priori specified productivity for the mineral and overburden. The proposed method uses a block model of a pit, where for each block its coordinates, the content of minerals in it, and the conditional initial value of the block are known. Also, a discounting function is set - a change in the total value of a block, depending on the period of its mining. The task is to find the distribution of blocks over mining periods that maximizes the total value of the blocks. Combinatorial search acceleration is achieved by representing a number of technological constraints in the form of global constraints.


2021 ◽  
Vol 2 ◽  
pp. 63-67
Author(s):  
Leonid Kruglov ◽  
Yury Brodsky

The problem of complex multi-component system processing arises in many fields of science and engineering. A system can be described in terms of its components, behavior, and interaction. This work proposes a new declarative Turing complete “model-oriented” programming paradigm based on the concept of “model-component” - a complex structure with well-defined characteristics and behavior, and no external methods. The set of model-components is closed under the union operation of model-components into “model-complex”. The proposed approach allows the program to describe the complex system and behavior of its components in a declarative way, possesses a higher level of encapsulation than the object-oriented paradigm, involves a reduced amount of imperative programming, and is naturally focused on parallel computations.


2021 ◽  
Vol 21 (5) ◽  
pp. 575-592
Author(s):  
VIKTOR BESIN ◽  
MARKUS HECHER ◽  
STEFAN WOLTRAN

AbstractExtending the popular answer set programming paradigm by introspective reasoning capacities has received increasing interest within the last years. Particular attention is given to the formalism of epistemic logic programs (ELPs) where standard rules are equipped with modal operators which allow to express conditions on literals for being known or possible, that is, contained in all or some answer sets, respectively. ELPs thus deliver multiple collections of answer sets, known as world views. Employing ELPs for reasoning problems so far has mainly been restricted to standard decision problems (complexity analysis) and enumeration (development of systems) of world views. In this paper, we take a next step and contribute to epistemic logic programming in two ways: First, we establish quantitative reasoning for ELPs, where the acceptance of a certain set of literals depends on the number (proportion) of world views that are compatible with the set. Second, we present a novel system that is capable of efficiently solving the underlying counting problems required to answer such quantitative reasoning problems. Our system exploits the graph-based measure treewidth and works by iteratively finding and refining (graph) abstractions of an ELP program. On top of these abstractions, we apply dynamic programming that is combined with utilizing existing search-based solvers like (e)clingo for hard combinatorial subproblems that appear during solving. It turns out that our approach is competitive with existing systems that were introduced recently.


2021 ◽  
Author(s):  
Jiashu Wang ◽  
Xun Deng ◽  
Kai-Ting Amy Wang ◽  
ZiChun Ye
Keyword(s):  

2021 ◽  
Author(s):  
Tanmaya Mahapatra ◽  
Syeeda Nilofer Banoo

Abstract Machine Learning (ML) has gained prominence and has tremendous applications in fields like medicine, biology, geography and astrophysics, to name a few. Arguably, in such areas it is used by domain experts, who are not necessarily skilled-programmers. Thus, it presents a steep learning curve for such domain experts in programming ML applications. To overcome this and foster widespread adoption of ML techniques, we propose to equip them with domain-specific graphical tools. Such tools, based on the principles of flow-based programming paradigm, would support the graphical composition of ML applications at a higher level of abstraction and auto-generation of target code. Accordingly, (i) we have modelled ML algorithms as composable components; (ii) described an approach to parse a flow created by connecting several such composable components and use an API-based code generation technique to generate the ML application. To demonstrate the feasibility of our conceptual approach, we have modelled the APIs of Apache Spark ML as composable components and validated it in three use-cases. The use-cases are designed to capture the ease of program specification at a higher abstraction level, easy parametrisation of ML APIs, auto-generation of the ML application and auto-validation of the generated model for better prediction accuracy.


2021 ◽  
Vol 11 (13) ◽  
pp. 5843
Author(s):  
Pedro Sánchez ◽  
Diego Alonso

There are no doubts that quantum programming and, in general, quantum computing, is one of the most promising areas within computer science and one of the areas where most expectations are being placed in recent years. Although the days when reliable and affordable quantum computers will be available is still a long way off, the explosion of programming languages for quantum programming has grown exponentially in recent years. The software engineering community has been quick to react to the need to adopt and adapt well-known tools and methods for software development, and for the design of new ones tailored to this new programming paradigm. However, many key aspects for its success depend on the establishment of an appropriate conceptual framework for the conception and design of quantum programs. This article discusses the concept of module, key in the software engineering discipline, and establishes initial criteria for determining the cohesion and coupling levels of a module in the field of quantum programming as a first step towards a sound quantum software engineering. As detailed in the article, the conceptual differences between classical and quantum computing are so pronounced that the translation of classical concepts to the new programming approach is not straightforward.


Author(s):  
Vladimir Janjic ◽  
Christopher Brown ◽  
Adam D. Barwell

AbstractParallel patterns are a high-level programming paradigm that enables non-experts in parallelism to develop structured parallel programs that are maintainable, adaptive, and portable whilst achieving good performance on a variety of parallel systems. However, there still exists a large base of legacy-parallel code developed using ad-hoc methods and incorporating low-level parallel/concurrency libraries such as pthreads without any parallel patterns in the fundamental design. This code would benefit from being restructured and rewritten into pattern-based code. However, the process of rewriting the code is laborious and error-prone, due to typical concurrency and pthreading code being closely intertwined throughout the business logic of the program. In this paper, we present a new software restoration methodology, to transform legacy-parallel programs implemented using pthreads into structured farm and pipeline patterned equivalents. We demonstrate our restoration technique on a number of benchmarks, allowing the introduction of patterned farm and pipeline parallelism in the resulting code; we record improvements in cyclomatic complexity and speedups on a number of representative benchmarks.


2021 ◽  
Vol 11 (2) ◽  
pp. 25
Author(s):  
Evelina Forno ◽  
Alessandro Salvato ◽  
Enrico Macii ◽  
Gianvito Urgese

SpiNNaker is a neuromorphic hardware platform, especially designed for the simulation of Spiking Neural Networks (SNNs). To this end, the platform features massively parallel computation and an efficient communication infrastructure based on the transmission of small packets. The effectiveness of SpiNNaker in the parallel execution of the PageRank (PR) algorithm has been tested by the realization of a custom SNN implementation. In this work, we propose a PageRank implementation fully realized with the MPI programming paradigm ported to the SpiNNaker platform. We compare the scalability of the proposed program with the equivalent SNN implementation, and we leverage the characteristics of the PageRank algorithm to benchmark our implementation of MPI on SpiNNaker when faced with massive communication requirements. Experimental results show that the algorithm exhibits favorable scaling for a mid-sized execution context, while highlighting that the performance of MPI-PageRank on SpiNNaker is bounded by memory size and speed limitations on the current version of the hardware.


Author(s):  
Yury I. Brodsky ◽  
Leonid V. Kruglov

The paper offers a new programming paradigm, which implements CAD methods in programming, The level of encapsulation in model-oriented programming is higher than in the object-oriented approach. The key features of the MO-programming are declarative style (no imperative programs), and focusing on the distributed and high-performance calculations. The method proposed is based on the structural theory of multi-component complex systems, and is applicable for a rather wide class of tasks including the elaboration of simulation models of such systems.


Sign in / Sign up

Export Citation Format

Share Document