Máster en Investigación e Innovación en Tecnologías de la Información y las Comunicaciones (i2- TIC).This work proposes a natural computer programming (for CA and NEPs) environment platform using Blockly. The platform is a web-based tool that provides simulators for two well-known natural computing systems: Cellular Automata (CA) and Network of Evolutionary Processors (NEPs). CA programming blocks presented in this work provide the ability to design and implement several types of CA including Elementary cellular automata, 2D cellular automata, and nD cellular automata. The tool also provides a graphical representation of CA’s grid through projection for any CA that has 3 or more dimensions. A NEPs Blockly programming environment is presented in this work. It provides the ability to design and simulate NEPs. Blocks are used as flexible user interface to enter NEPs specifications. The blocks automatically generate a standard XML configurations code which can be sent to the server side of the simulator for implementation. The tool also provides a graphical representation for the static topology of the system.
Both CA and NEPs Blockly programming environments have been tested in several rather academic examples. The work presents an online simulation platform for natural computing algorithm using visual programing tool, namely Blockly. The proposed platform provides software engineering tools for setting up algorithms and also ease of use especially for teaching of these algorithm. The software engineering tools has been implemented on the NEPs as there is much more software tools already presented for cellular automata. The software designed for NEPs are a set of blocks to implement several types of connections between nodes. These blocks reduce time and complexity in setting up NEPs with fully connected nodes, for instance. In the other hand, cellular automata algorithm has been chosen to test the ease of the process of teaching and learning natural computing algorithms as they are much better-known model. The test has been conducted with students, teachers and researchers. Results of the experiment showed that the CA Blockly simulator outperforms traditional manual methods of implementing CA. It also showed that the proposed environment has desired features such as ease of use and decreases learning time. The NEPs part of the system has been tested against several applications. It showed that it provides a flexible designing tool for NEPs. It outperforms traditional XML coding methods in terms of ease of use and designing time. In addition we have designed specific high level constructs that automatize in some way the specific of complex NEPs’ topologies by hand. They could be considered as embryonic software engineering tools to program NEPs.
Our tool is considered a generic platform for web-based implementation. It has desired features and wide range of properties that could attract the scientific community to adapt and develop in the future