Exploration in Algorithm Engineering: Modeling Algorithms

12/03/2020
by   Sabah Al-Fedaghi, et al.
0

According to some algorithmicists, algorithmics traditionally uses algorithm theory, which stems from mathematics. The growing need for innovative algorithms has caused increasing gaps between theory and practice. Originally, this motivated the development of algorithm engineering, which is viewed as experimental techniques related to software engineering. Currently, algorithm engineering is a methodology for algorithmic research that combines theory with implementation and experimentation in order to produce better algorithms with high practical impact. Still, researchers have questioned whether the notion of algorithms can be defined in a fully generable way and discussed what kinds of entities algorithms actually are. They have also struggled to maintain a view that formulates algorithms mathematically (e.g., Turing machines and finite-state machines [FSMs]) while adapting a more applied view. Answering the question of what algorithms have practical applications in software specifications in particular, this paper proposes a diagrammatical definition of an algorithm based on a new modeling machine called a thinging machine (TM). The machine has five actions (e.g., create, process, release, transfer, and receive) that can form a network of machines. The paper explores the application of the definition in Turing machines and FSMs. The results point to the fact that the proposed definition can serve as a middle-ground representation of algorithms, a definition which is between formal specification and the commonly used informal definition (e.g., set of instructions).

READ FULL TEXT

page 4

page 5

page 7

page 11

research
06/08/2016

Theoretical Robopsychology: Samu Has Learned Turing Machines

From the point of view of a programmer, the robopsychology is a synonym ...
research
08/18/2021

What is an Algorithm?: a Modern View

Although algorithm is one of the central subjects, there have been littl...
research
12/12/2019

Thinging as a Way of Modeling in Poiesis: Applications in Software Engineering

From a software design perspective, a clear definition of design can enh...
research
02/08/2020

Means-fit effectivity

Historically, the notion of effective algorithm is closely related to th...
research
10/26/2017

Software Engineering Modeling Applied to English Verb Classification (and Poetry)

In requirements specification, software engineers create a textual descr...
research
07/14/2020

Modeling the Semantics of States and State Machines

A system s behavior is typically specified through models such as state ...
research
06/26/2018

Quantum Random Self-Modifiable Computation

Among the fundamental questions in computer science, at least two have a...

Please sign up or login with your details

Forgot password? Click here to reset