International Journal of Engineering Trends and Technology (IJETT) – Volume 26 Number 2- August 2015 Implementation of Soft Computing Algorithm for Path Finding Robot Using Soft Core Processor Prof. Vilas V. Deotare#1, Dheeraj D. Jain*2, Prof. Dinesh V. Padole#3 # Head of Department, Electronics & Telecommunication, SIT, Lonavala, Maharashtra, India * PG students, Electronics & Telecommunication, SIT, Lonavala, Maharashtra, India # Professor, Electronics & Telecommunication, GHRCE, Nagpur Maharashtra, India Abstract— Path finding of robots can be achieved by many algorithms and many optimization techniques applied for different parameters and their architectures, this paper explains how some parameters affect performance of path finding robot and after using hardware software co-design how computational time required can be optimized. After applying optimization technique optimum values can be obtained. The optimization techniques like genetic algorithm (GA) gives optimized values of parameters used in fitness function. The whole application is designed using a soft processor which enhances the performance of those attributes which are not beneficial in hardware as well as software design. The area required for this design is less than that of hardware and which improves the performance. Keywords: Optimization technique, Soft core processors, Path finding robot, Hardware software co-design I. INTRODUCTION Designing efficient autonomous mobile robot controllers is a difficult and time consuming process which requires wasting resource sand efforts. Commonly, the robot navigation is based on continuous interaction between the robot and the environment. Providing the required degree of flexibility and maintaining robustness is one of the relevant challenges when designing models for robot controllers because of the mathematical complexity involved in the necessity of taking into account any possible emerging change in the environment. Robotic their development and its research is important subject in automation industries. Robotics is trending all over the world because of its applications which are there in each and every field. In case of application specific areas the automation is essential one. The main objective of researchers is to optimize area, computational time, accuracy. There are many ways to achieve the above mentioned objectives. These objectives can be using different architectures, algorithms, hardware and software. The hardware used for this application is either a FPGA or a microcontroller. The main disadvantage of using simply hardware to solve problem is it requires more area and another one is cost of hardware is more than that of the software. Some researchers have used just software ISSN: 2231-5381 part to solve the same problem but the ambiguities while using software is its speed is less and computational time is more as compared to hardware though the cost is less and its actual implementation is difficult. Artificial Intelligence is one of the solutions to give optimized path and obtain required results but the complexity increases and in dynamic environment the computational time may increase. So, to achieve the advantages of both hardware and software it’s better to go with hardware software co-design. In the combination of these two, the application parameter can be optimized and will give balanced results. This paper explains how hardware- software co-design can be used for path finding application in static environment and it shows optimized and balanced results. There are many optimization algorithms one can use Multi attribute Decision Making (MADM) when there is single objective and having multiple attributes and multiple alternatives. But Multi objective Decision Making (MODM) techniques are used to achieve multiple objectives from one application. For particular problem already so many MODM techniques have been used along with their improved versions. But in this paper we have used genetic algorithm (GA) optimization algorithm which has shown better results for maximum functions and applications as proved. II. RELATED WORK For the application of path finding mobile robot many researchers have done experiment with different hardware, software and algorithms.The path finding system can be implemented using FPGA along with artificial intelligence and HPOPSO algorithm witch gives better results as compared to previous implementations [1]. In the next paper the 2-D cell architecture has been presented for the Euclidean distance Transform (EDT) and Nearest Neighbour Transform (NNT) for operating at high speed [2]. In this technique the image of arena is captured by camera mounted on top after that the image is converted into binary image and then using EDT and NNT shortest path http://www.ijettjournal.org Page 78 International Journal of Engineering Trends and Technology (IJETT) – Volume 26 Number 2- August 2015 is calculated. Optimization is the field of research where each and every attribute of application can be optimized depending on its limits. The genetic FPGA implementation for path planning of autonomous mobile robot gives optimized results and Genetic algorithm (GA) works perfectly even if an environment is unknown [3]. A Modified Particle Swarm Optimizer (MPSO) algorithm is used to find optimal path for the mobile robot in working environment with obstacles is capable of effectively guiding a robot moving from start position to the goal position in complex environment and find optimum/shortest path without colliding any obstacles in the environment. [4]. However, it takes a lot of time to get the solution and it is not too easy to obtain the optimal path every time. It is also difficult to apply to the complex and big size maps so ACO algorithm are changed to converge into the optimal solution rapidly when a certain number of iterations have been reached [5]. III. B. Description of implementation The whole system behaviour is described here. The Spartan kit is connected to computer through RS-232 serial cable and USB cable which become medium of communication between two devices in which, the code is implemented on hardware using USB cable and further communication is done by RS-232 cable. The baud rate affects the serial communication. Here, in this particular application the baud rate should be in between 2400 to 11500, but we have kept it as 9600 as per our hardware requirements. After setting up an environment all VHDL files are run in Xilinx 8.01i. The path finding algorithm is implemented on hardware and the robot communicates with hardware finds a path according to that after obstacle is detected at simulator side the simulator sends the sensor values and obstacle detected message after which the Pico blaze processor runs an algorithm which sends and solution to further process. IMPLEMENTATION A. FPGA concepts FPGAs are field-programmable logic devices which contains matrix of Configurable Logic Blocks (CLBs) interconnected by an array of routing resources implemented in CMOS technology. CLB features depend on both producers and family devices; however, they are typically small tables with 4,5 or 6-bitinputs, namely Look up Tables(LUTs),D flip-flops and several multiplexers, allowing the truth value table of basic Boolean functions to be implemented in hardware. In order to implement complex circuits, CLBs are connected by a programmable network of connection and switching blocks. The connection block allows logic block inputs and outputs to be assigned to horizontal or vertical tracks. The switching block allows a signal on a track to connect to another track. The connections in the switching and connection blocks are made by programmable points. Commonly, a programmable point consists of a pass transistor controlled by a static random access memory cell(SR)to hold the user defined configuration values depicts a planar switching box topology in which a wire in track number connects only to wires in track number in adjacent channel segments. Modern FPGA devices contain embedded DSP blocks, RAM blocks, dedicated processors and digital clock managers allowing the implementation of more complex designs. Fig.3.1 Program flow of path finding robot ISSN: 2231-5381 http://www.ijettjournal.org Page 79 International Journal of Engineering Trends and Technology (IJETT) – Volume 26 Number 2- August 2015 divided to other parameters. The fitness function is formed according to parameters extracted C. Picoblaze Pico Blaze is the designation of a series of three free soft processor cores from Xilinx for use in their FPGA and CPLD products. Here Pico blaze soft processor is been used as embedded processor to run algorithm. Its architecture and features are shown below: (1) Where, - Speed of robot in vertical direction – Speed of robot while taking turn 2) Parameter dependencies: As these two parameters are dependent on other parameters therefore their dependencies is being calculated and equations are formed (2) (3) –Speed of robot in RPM – Distance value i.e. distance between robot and arena Fig.3.2 Pico blaze processor architecture D. Eyesim simulator: The Eye Bot simulator EyeSim is a multiple mobile robot simulator that allows experimenting with the same unchanged EyeBot programs that run on the real robots. EyeSim includes simulation of the robot's driving actuators (differential steering), as well as all robot sensors, including: On-board vision images) Infra-red sensors Bumpers (synthetic After substituting equation (2) and (3) in equation (1) we get final fitness function. The limits are being drawn after so many iteration and trial and error method. All parameters are converted in equal units like RPM is converted to RPS. Fitness Function becomes, F(x) = 2 * 3600(4) generated Limits, 100 ≤ 0< ≤ 500 ≤1 A 3D scene representation of the environment and all robots in it is being shown, together with a list of active robots. Clicking on a robot from this list will identify the robot in the environment and also open a window to show its control panel (equivalent to the LCD display and buttons on the EyeBot controller) for communicating via the robot's user interface. E.Genetic algorithm and its implementation 1)Parameter extraction and equation formation In this path finding robot application, parameters have been extracted and optimization technique is implemented. The extracted parameters and fitness function of parameters is shown in below equation. The parameters which are beneficial for the performance/speed of robot are multiplied with other parameters and which are non-beneficial are Fig.3.2 GA based flowchart of proposed technique. ISSN: 2231-5381 http://www.ijettjournal.org Page 80 International Journal of Engineering Trends and Technology (IJETT) – Volume 26 Number 2- August 2015 Fig. 4.1 Graph of fitness function Now, here the comparison of fitness value obtained from soft computing algorithm i.e. genetic algorithm is shown in Fig.4.1. This is compared with the value obtained from actual implementation i.e. obtained from hardware and simulation implementation as shown in Table 4.2. Fig.3.3 Validation Environment IV. RESULTS AND DISCUSSION Here the graph of fitness function and number of generations required is shown, whereas for particular application what is fitness function value is shown. Best value of fitness function is shown in graph and for that fitness function what are the parameter values that is also shown in MATLAB optimization toolbox. Some initialization parameters are to be set in toolbox those are shown in Table 4.1 The Fig.4.1 shows the graph where both parameters values are taken on random basis and among that best values are shown. Using hardware After software co- implementing GA design Computational 7.54 millisecond 9.599 millisecond time / Iteration time Table 4.2 Comparison of GA obtained result and actual result Here is comparison of area parameters and computation time for one iteration whereas one iteration is nothing but, time required to take one turn and while taking turn how much time is required to communicate with hardware(Spartan 3E500) kit. It is display on simulator as shown in figure. Sr.No. Parameters Values 1 Population size 20 2 Crossover rate 0.5 3 Mutation rate 0.2 4 Number of 51 for Fig. Here Hardware opposition based PSO implemented with ANN which utilizes more area as compared to this implementation which is shown in Table 6.3(a) whereas time required for software implementation is also shown and compared for this application. iterations Table 4.1 GA parameter values The lower limits and upper limits are shown in previous chapter depending on that the values for parameter x3 and for parameter x4 are calculated which are 490.547 and 0.997 respectively. ISSN: 2231-5381 http://www.ijettjournal.org Page 81 International Journal of Engineering Trends and Technology (IJETT) – Volume 26 Number 2- August 2015 [4] Nadia Adnan Shiltagh, Lana Dalawr Jalal; Optimal Path Planning For Intelligent Mobile Robot Navigation Using Modified Particle Swarm Optimization. IJEAT 2013 Comparisons of area utilized by different implementations LUTs Required Hardware oppositionbased PSO applied to mobile robot controllers [1] Implementation of soft computing algorithm for mobile robot controller using hardware software co-design 43595 (63.1%) 597 (6%) [5] Joon-Woo Lee, Jeong-Jung Kim, Byoung-Suk Choi, Ju-Jang Lee; Improved Ant Colony Optimization Algorithm by Potential Field Concept for Optimal Path Planning, IEEE-RAS International Conference on Humanoid Robots, 2008 [6] Sudha, N, Mohan, A.R., Hardware-Efficient Image-Based Robotic Path Planning in a Dynamic Environment and Its FPGA Implementation. Industrial Electronics IEEE 2011 [7] Dr. R. Venkata Rao, Decision Making in Manufacturing Environment Using Graph Theory and Fuzzy Multiple Attribute Decision Making Methods, Springer 2012 [8] P. Raja* and S. Pugazhenthi, Optimal path planning of mobile robots: A review, International Journal of Physical Sciences Vol. 7(9), pp. 1314 – 1320, February 2012 20499(27.7%) 705(7%) [9] Meshram, U. ; RKNEC, Nagpur, India ; Bande, P. ; Dwaramwar, P.A. ; Harkare, R.R.Robot arm controller using FPGA IEEE 2009 F/F required Time for computation 1.01 millisecond [10] Ms. Shilpa Kale, FPGA-based Controller for a Mobile Robot (IJCSIS) International Journal of Computer Science and Information Security, Vol. 3, No. 1, 2009 7.55 millisecond [11] J. Gonzalez-Gomez, E. AguayoE. Boemo. Locomotion of a Modular Worm-like Robot Using a FPGA-based Embedded Micro Blaze Soft-processor. Springer 2005 Table 4.3 Comparison of area results with previous implementations V. [12] Xuan Zou1, Bin Ge, Peng Sun, Improved Genetic Algorithm for Dynamic Path planning. International Journal of Information and Computer Science May 2012. CONCLUSION Hardware software co-design requires less area and hardware resources than hardware implementations with AI whereas takes less time than other implementations as it is compared in result tables. The comparison with other methods shows that hardware software co-design is middle way to overcome disadvantages of software and hardware implementations separately in this problem. The parameter optimization technique gives optimum values of parameters which show better results for path finding problem those values are shown in results and it gives mathematical justification to obtained results from hardware software co-design. Table shows how computational time can be minimized required for this application and at the same time the area required also minimized which is shown in Table.4.3 VI. REFERENCE [1] Daniel M. Muñoz, Carlos H. Llanos B, Leandrodos S. Coelho C, D ,Mauricio Ayala-Rincon E, F; Hardware Opposition-Based PSO Applied To Mobile Robot Controllers. Elsevier 2013 [2] M. Vijay, Dr. M. Jagadeeswari; An Efficient Architecture For Robotic Path Planning. Ijarcsse 2012 [3] O. Hachour; the Proposed Genetic FPGA Implementation or Path Planning of Autonomous Mobile Robot. International journal of circuits, systems and signal processing 2008 ISSN: 2231-5381 http://www.ijettjournal.org Page 82