Strategies for Environmentally Sustainable Products and Services

Strategies for Environmentally Sustainable Products and Services

4th International Conference on Advances in Control and 4th International Conference on 4th International Conference on Advances Advances in in Contro...

1MB Sizes 2 Downloads 127 Views

4th International Conference on Advances in Control and 4th International Conference on 4th International Conference on Advances Advances in in Control Control and and Optimization of Dynamical Systems 4th International Conference on Advances in Control and Optimization of Dynamical Systems Optimization of Dynamical Systems Available February 1-5, 2016. NIT Tiruchirappalli, India online at www.sciencedirect.com Optimization of Dynamical Systems February February 1-5, 1-5, 2016. 2016. NIT NIT Tiruchirappalli, Tiruchirappalli, India India February 1-5, 2016. NIT Tiruchirappalli, India

ScienceDirect

IFAC-PapersOnLine 49-1 (2016) 373–378

Development of Autonomous Humanoid Development of Autonomous Humanoid Development of Autonomous Humanoid Development of Autonomous Humanoid Robot Control for Competitive Robot Control for Competitive Robot Control for Competitive Robot Control forFuzzy Competitive Environment Using Logic and Environment Using Fuzzy Logic and Environment Using Fuzzy Logic and Environment Using Fuzzy Logic and Heuristic Search Heuristic Search Heuristic Heuristic Search Search

∗∗∗ Raj Samant ∗∗ Saurabh Nair ∗∗ ∗∗ Faruk Kazi ∗∗∗ ∗ Saurabh Nair ∗∗ Faruk Kazi ∗∗∗ Raj Samant Raj Samant ∗ Saurabh Nair ∗∗ Faruk Kazi ∗∗∗ Raj Samant Saurabh Nair Faruk Kazi ∗ ∗ Electrical Engineering Department, Indian Institute of Technology, ∗ Electrical Engineering Department, Indian Institute of Technology, Department, Indian ∗ Electrical Engineering Kanpur, India (e-mail: [email protected]). Electrical Engineering Department, Indian Institute Institute of of Technology, Technology, Kanpur, India (e-mail: [email protected]). ∗∗ Kanpur, India (e-mail: [email protected]). Engineering Department, V.J.T.I, Mumbai, India, ∗∗ Electrical Kanpur, India (e-mail: [email protected]). ∗∗ Electrical Engineering Department, V.J.T.I, Mumbai, India, Department, ∗∗ Electrical Engineering (e-mail: [email protected]) Electrical Engineering Department, V.J.T.I, V.J.T.I, Mumbai, Mumbai, India, India, (e-mail: [email protected]) ∗∗∗ (e-mail: [email protected]) Electrical Engineering Department, V.J.T.I, Mumbai, India ∗∗∗ (e-mail: [email protected]) ∗∗∗ Electrical Engineering Department, V.J.T.I, Mumbai, India V.J.T.I, ∗∗∗ Electrical Engineering (e-mail:Department, [email protected]) Electrical Engineering Department, V.J.T.I, Mumbai, Mumbai, India India (e-mail: [email protected]) (e-mail: (e-mail: [email protected]) [email protected])

Abstract: In this paper, we propose a novel method for interaction between humanoid robots Abstract: In In this paper, paper, we propose propose aa novel novel method method for for interaction between between humanoid humanoid robots robots Abstract: in a competitive based on fuzzy method logic andforitsinteraction implementation onhumanoid an experimental Abstract: In this thisenvironment paper, we we propose a novel interaction between robots in a competitive environment based on fuzzy logic and its implementation on an experimental in a environment fuzzy and implementation on platform which was validatedbased usingon soccer gameplay. proposed methodology employs in a competitive competitive environment fuzzy logic logic and its itsThe implementation on an an experimental experimental platform which was was validatedbased usingonsoccer soccer gameplay. The proposed methodology methodology employs platform which validated using gameplay. The proposed employs vision-based feedback of the humanoid’s workspace. The position of the humanoids and other platform which was validated using soccer gameplay. proposed employs vision-based feedback of the the humanoid’s humanoid’s workspace. The The position of the themethodology humanoids and and other vision-based feedback of workspace. The position of humanoids other objects are expressed in a newly proposed diagonal coordinate system. Hough transform with vision-based feedback in of athe humanoid’s The position of theHough humanoids and other objects are are expressed expressed newly proposedworkspace. diagonal coordinate coordinate system. transform with objects in a newly proposed diagonal system. Hough transform with momentare strategy is used to obtainproposed odometricdiagonal data of humanoids. The proposed motion planning objects expressed in a newly coordinate system. Hough transform with moment strategy is used to obtain odometric data of humanoids. The proposed motion planning moment is odometric data of The proposed algorithmstrategy is a combination of IDA* and linear interpolation which tomotion a majorplanning part of moment is used used to to obtain obtain odometric data of humanoids. humanoids. Theaccounts proposed algorithmstrategy is aa combination combination of IDA* IDA* and linear linear interpolation which accounts tomotion a major majorplanning part of algorithm is of and interpolation which accounts to a part the path estimator. Post the path estimator, the motion execution is achieved by a fuzzy-based algorithm is a combination IDA* and linear which isaccounts a major part of of the path path estimator. estimator. Post the theofpath path estimator, theinterpolation motion execution execution achievedtoby by a fuzzy-based fuzzy-based the Post estimator, the motion is achieved a control the pathsystem. estimator. Post the path estimator, the motion execution is achieved by a fuzzy-based control system. control system. control system. © 2016, IFAC (International Federation of Automatic Control) Hosting by Elsevier Ltd. All rights reserved. Keywords: Humanoid Robot, Fuzzy Logic Controller, Iterative deepening A*(IDA*) search Keywords: Humanoid Robot, Robot, Fuzzy Logic Logic Controller, Iterative Iterative deepening A*(IDA*) A*(IDA*) search Keywords: Keywords: Humanoid Humanoid Robot, Fuzzy Fuzzy Logic Controller, Controller, Iterative deepening deepening A*(IDA*) search search 1. INTRODUCTION design and motion execution of humanoids is the data 1. INTRODUCTION INTRODUCTION design and and motion motion execution of of humanoids is is the data data 1. design acquisition using computer vision and thendata the INTRODUCTION and problem motion execution execution of humanoids humanoids is the the acquisition problem using computer vision and then the In recent years, the1.advancement in the field of automated design acquisition problem using computer vision and then the control design [SHI Lei (2010)]. Decision-making algorithm In recent years, the advancement in the field of automated problem using computer vision andalgorithm then the In recent years, the advancement in the field of automated control design design [SHI Lei Lei (2010)]. Decision-making machines has been evident in numerous industrial and acquisition In recent years, the advancement in the field of automated control [SHI (2010)]. Decision-making algorithm using machine learning and fuzzy logic based approach is machines has has been evident evident in in numerous industrial industrial and and control design [SHI Lei (2010)]. Decision-making algorithm machines using machine machine learning and fuzzy fuzzy logic based based approach approach is research applications. Humanoid robotics industrial has attracted machines has been been evident in numerous numerous and using learning and logic is one of the research subjects [Pouyan Nasrollahi (2013)]. research applications. Humanoid robotics has attracted using machine learning and fuzzy logic based approach is research applications. Humanoid robotics has attracted one of the research subjects [Pouyan Nasrollahi (2013)]. the special interest of intellects all over the world. To study research Humanoid robotics has attracted of the Nasrollahi (2013)]. Fuzzy has been subjects studied to[Pouyan be one of the effective conthe special specialapplications. interest of of intellects all over the world. world. To study one of logic the research research Nasrollahi (2013)]. the interest all Fuzzy logic has been been subjects studied to to[Pouyan be one one of of the effective effective condynamics of a humanoid robot andthe implementation of one the special interest of intellects intellects all over over the world. To To study study Fuzzy logic has studied be the control designs which is smooth as supposed to crisp decision the dynamics of a humanoid robot and implementation of Fuzzy logic has been one of the effective conthe dynamics a humanoid robot and implementation of trol designs designs which is studied smooth to as be supposed to crisp crisp decision various linear,of nonlinear and data driven control strategies the dynamics of a humanoid robot and implementation of trol which is smooth as supposed to decision and designs even PID controllers [Albertos and Antonio (1998)]. various linear, linear, nonlinear nonlinear and and data driven driven control control strategies strategies trol which is smooth as supposed to crisp decision various and even even PID PID controllers [Albertos and Antonio Antonio (1998)]. has remained the epicenter of the research. Dynamics of and various linear,at nonlinear and data data driven control strategies controllers [Albertos and (1998)]. Hybrid fuzzy logic controllers evolving from genetic algohas remained at the epicenter of the research. Dynamics of and even PID controllers [Albertos and Antonio (1998)]. has remained at the epicenter of the research. Dynamics of Hybrid fuzzy logic controllers evolving from genetic algoinverted pendulum problem has been considered a solved has remained at the problem epicenterhas of the research. Dynamics of Hybrid fuzzy logic controllers from genetic rithms for optimal design haveevolving also been worked outalgoSun inverted pendulum been considered a solved solved Hybrid fuzzy logic controllers evolving from genetic algoinverted pendulum problem has been considered a rithms for optimal design have also been worked out Sun problem and effective methods have been developed to inverted pendulum problem has been considered a solved rithms for optimal design have also been worked out Sun and Er (2004). Path planning based on particle swarm problem and effective methods have been developed to rithms optimal design have also been Sun problem and effective methods have been developed to and Er Erfor (2004). Path planning based on worked particleout swarm tackle both internal [Luis Sentis (2010)] and unknown forproblem and effective methods have been developed to and (2004). Path planning based on particle swarm optimization University and Branch has been one tackle both both internal internal [Luis [Luis Sentis Sentis (2010)] (2010)] and unknown unknown forfor- and Er (2004). Path planning based(2013) on particle swarm tackle optimization University and Branch Branch (2013) has been been one eign forces maintain [Sang-Ho tackle both and internal [Luis stable Sentis dynamics (2010)] and and unknownHyon for- optimization University and (2013) has one of the most crucial methods for the implementation. One eign forces and maintain stable dynamics [Sang-Ho Hyon optimization University and Branch (2013) has been one eign forces and maintain stable dynamics [Sang-Ho Hyon of the most crucial methods for the implementation. One and Cheng (2007)]. Having considered dynamics and coneign forces and maintain stable dynamics [Sang-Ho the crucial methods the implementation. One the most best-known based to accessing and Cheng Cheng (2007)]. Having considered dynamics andHyon con- of of crucial heuristic methods for for the methods implementation. One and (2007)]. Having considered dynamics and of the the most best-known heuristic based methods to accessing accessing trol of humanoid with the benchmark and Cheng (2007)]. Having considered inverted dynamicspendulum and concon- of the best-known heuristic based methods to minimal nodes is A* algorithm [Junfeng Yao and Xie trol of humanoid with the benchmark inverted pendulum of the best-known heuristic based methods to accessing trol of humanoid with the benchmark inverted pendulum minimal nodes is A* algorithm [Junfeng Yao and Xie problem, researchers and are inverted now putting efforts minimal trol of humanoid with thehobbyists benchmark pendulum nodes is A* algorithm [Junfeng Yao and Xie (2010)]. During memory limited situations the iterative problem, researchers and hobbyists are now putting efforts minimal nodes is A* algorithm [Junfeng Yao and Xie problem, researchers and hobbyists are now putting efforts (2010)]. During memory limited situations the iterative in applying various methodologies of previous studies in problem, researchers and hobbyists are now putting efforts During memory limited the iterative deepening A*(IDA*) is preferred which gives in applying applying various methodologies methodologies of previous studies in (2010)]. (2010)]. During memory limited situations situations the identical iterative in various of studies in deepening A*(IDA*) is preferred preferred which gives gives identical problems involving competitiveness, challenge, in applying various more methodologies of previous previous studiesand in deepening A*(IDA*) is which identical results but with little penalty on time. IDA* is a preferred problems involving more competitiveness, challenge, and deepening A*(IDA*) is preferred which gives identical problems involving more competitiveness, challenge, and results but but with with little little penalty on on time. IDA* IDA* is is a preferred preferred commercial value. more competitiveness, challenge, and results problems involving solutionbut forwith shortest path plan during football gaming, commercial value. results little penalty penalty on time. time. IDA* is a a preferred commercial value. solution for for shortest shortest path plan plan during football gaming, commercial value. solution path during football gaming, especiallyfor in memory bound structure. Performing inverse The Robo World Cup [H. Kitano and Osawa (1997); Hans- solution shortest path plan during football gaming, especially in memory bound structure. Performing inverse The Robo World Cup [H. Kitano and Osawa (1997); Hansmemory structure. Performing The Robo World Cup [H. Kitano and Osawa (1997); Hanskinematicsin for motionbound planning has been extensivelyinverse studDieter Burkhard (2002)] is a worldwide body whose aim especially especially in memory bound structure. Performing inverse The Robo World Cup [H. Kitano and Osawa (1997); Hanskinematics for motion planning has been extensively studDieter Burkhard (2002)] is a worldwide body whose aim kinematics for motion planning has been extensively studDieter Burkhard (2002)] is a worldwide body whose aim ied and many new optimized solutions have been proposed is ”To Burkhard beat human socceris champions bybody the year 2050”. fornew motion planning has been extensively studDieter (2002)] a worldwide whose aim kinematics ied and many optimized solutions have been proposed is ”To beat human soccer champions by the year 2050”. ied and many new optimized solutions have been proposed is ”To human by year 2050”. [Layale Saab new and optimized Fourquet solutions (2013); Franck Plestan and Soccer is a game notsoccer only champions involving stable and many have been proposed is ”To beat beat human by the thebody yearmotion, 2050”. ied [Layale Saab and and Fourquet Fourquet (2013); (2013); Franck Franck Plestan and Soccer is aa game game notsoccer only champions involving stable stable body motion, [Layale Saab Plestan and Soccer is not only involving body motion, Abba (2003)]. but also many other moves and runtime decision making [Layale Saab and Fourquet (2013); Franck Plestan and Soccer is many a game not moves only involving stable body motion, Abba (2003)]. but also other and runtime decision making (2003)]. but also other moves runtime decision which is many considered for decent A lot Abba (2003)]. but also other crucial moves and and runtimegame-play. decision making making The paper is organized as follows: Section 2 presents the which is many considered crucial for decent decent game-play. A lot lot Abba which is considered crucial for game-play. A The paper is organized organized as as follows: follows: Section Section 22 presents presents the the of research work has been done in the field of humanoid which is considered crucial for decent game-play. A lot The paper is problem formulation andassetup of the system. commuof research work has been done in the field of humanoid The paper is organized follows: Section 2 The presents the of research work has been done in the field of humanoid problem formulation and setup of the system. The commurobotics regarding variety of applications also keeping of research work hasvariety been done in the field also of humanoid formulation and setup The communication model, motion constraints aresystem. explained section robotics regarding of applications keeping problem formulation and setup of of the the Thein robotics variety of also keeping nication model, model, motion constraints aresystem. explained incommusection sports in regarding mind University Branch (2013); and problem robotics regarding variety and of applications applications also Kos keeping nication motion constraints are explained in section 3. Section 4 comprises of the planning of the game-play sports in mind University and Branch (2013); Kos and nication model, motion constraints are explained in section sports in mind University Branch (2013); Kos and 3. Section Section 4 comprises comprises of the the planning planning of the the game-play game-play Babi (2010). Design of theand interaction between humansports in mind University and Branch (2013); Kos and 3. 4 of of of Section the humanoids.The whole algorithmofincluding every Babi (2010). (2010). Design Design of the the interaction interaction between between humanhuman- 3. 4 comprises of the planning the game-play Babi of the the humanoids.The humanoids.The whole algorithm including including every human(2010). and human-robot be studied to of Babi Design of of theinteraction interactioncan between humanwhole algorithm every aspect is covered in here briefly. The geometry of field, data human and human-robot interaction can be studied to of the humanoids.The whole algorithm including every human and human-robot interaction can be studied to aspect is covered in here briefly. The geometry of field, data design a robot-robot game scenario. Coming after model human human-robot can be after studied to aspect design aaand robot-robot game interaction scenario. Coming Coming model aspect is is covered covered in in here here briefly. briefly. The The geometry geometry of of field, field, data data design robot-robot game scenario. after model design a robot-robot game scenario. Coming after model Copyright © 2016, 2016 IFAC 373 Hosting by Elsevier Ltd. All rights reserved. 2405-8963 © IFAC (International Federation of Automatic Control) Copyright © 2016 IFAC 373 Copyright ©under 2016 responsibility IFAC 373Control. Peer review of International Federation of Automatic Copyright © 2016 IFAC 373 10.1016/j.ifacol.2016.03.082

IFAC ACODS 2016 374 February 1-5, 2016. NIT Tiruchirappalli, India Raj Samant et al. / IFAC-PapersOnLine 49-1 (2016) 373–378

Motion

Zigbee sent value

Walk Anti-clockwise turn Clockwise turn Small walk Kick Defend

10-34 50-59 40-49 9 60 61

Table 1. Motion-Zigbee command mapping

Fig. 1. Experimental Setup acquisition and motion planning techniques are covered in sections 5, 6 and 7 respectively. The control algorithm using Fuzzy is covered in brief in section 8, which includes the input-output mapping, member function, and rule evaluation in detail. Section 9 contains the experiments and results. The future scope is covered in section 10 followed by the conclusion. 2. PROBLEM FORMULATION The experiment consisted of 2 humanoids equipped with 2 on-head colour markers and sharp sensors(foot and midsection), a colored ball, an off-board processor, camera and communication medium between off-board processor and humanoids. The structure of the system is inspired from previous work [Kim J (1997)] is shown in Figure 1. The computer vision system consisted of an overhead camera mounted on a truss, capturing entire field. Camera captures at a resolution of 960x720 at ˜ 20 fps. The camera records data such as odometry of the robot, ball, and obstacles. The robot used for experiment was the Bioloid robot. It had 18 degrees of freedom (DOF) which can perform many complex motions as well as actions sufficient for executing a simple football game. The humanoid had an onboard micro-controller that was used to store and execute all motion steps with precision. The objective is to develop a fuzzy logic based whole-body humanoid control strategy with visual feedback for two player soccer game. 3. MOTIONS AND COMMUNICATION Considering the bandwidth, speed optimization and taking advantage of on-board micro-controller chip all motion commands were sent in terms of action number represented in multiples of 10 with the units place representing the degree of the motion to be executed. On receiving motion code the actuators are controlled based on predefined motions programmed into the micro-controller. The motions were designed on Bioloid software Robotis platform. The decisions are then sent to respective humanoids via Zigbee protocol. This decision is then executed by humanoid. The various motions executed by the humanoid and Zigbee values assigned to them are given in Table 1. Each motion was given a base value. Minimum values output of each motion possible are kept as constants like Step, T urn giving values of pixels covered in one step and degrees turned in the smallest turn possible. eg: For a certain distance d, 374

Algorithm 1 Program Flow 1: InitilizeCamera() 2: InitilizeZigBee() 3: InitilizeHumanoidtoHomeP osition() 4: for Termination Criteria do 5: LABEL: Repeat, GetN ewF rame() 6: DataAquasition() 7: DecideStrikerandDef ender() 8: T reajectoryP lanning() 9: while Ball not in Motion do 10: GetN ewF rame() 11: DataAquasition() 12: T reajectoryT racking() 13: if Error Beyond Limit then 14: Goto Repeat 15: end if 16: SendCommands() 17: end while 18: end for Zigbee sent value = 9 + 

d  step

F ull Step = 50 pixels, Small Step = 20 pixels, T urn = 18o T urn = 9o Compliance f or orientation = 2 Small Step = 10 pixels. Compliance f or Distance = 2 4. GAME PLAY AND EXECUTION Humanoids played two different roles of striker and defender according to the position of the ball. The field was divided into two parts by the half line as shown in Figure 2. The humanoid nearest to the ball is assigned as the striker and the other as the defender. The algorithm for both the humanoids run on two threads after initialization, which are almost the similar except the goal points to reach and final motion of kick or defend. The game play was designed to run in an infinite loop where the ball is passed from one quadrant to another. The algorithm is explained in Algorithm 1 Constraints to systems are enlisted below, • No movement or decisions are taken when ball is in motion • Ball once out of field, system halts • Humanoids when out of field system halts • Lighting conditions have to be fixed • Possibly complementary colours have to be used for markers • Humanoids only kick the ball towards goal directly, doesn’t forward

IFAC ACODS 2016 February 1-5, 2016. NIT Tiruchirappalli, India Raj Samant et al. / IFAC-PapersOnLine 49-1 (2016) 373–378

5. DIAGONAL CO-ORDINATE SYSTEM The geometric system we followed was named diagonal coordinate system. This enabled the code to do calculations with the perspective of each robot in mind, irrespective of the side or role, even if the side of each robot is changed. As shown in Figure 2, the left half of the field has a clockwise measurement of angles and anticlockwise measurement for the second half. This makes it convenient to test the co-ordinate system with many common data acquisition functions for any sided humanoid just by using the following transformation, (derived using the camera resolution)      Xr −1 0 960 Xl Yr = 0 −1 720 Yl 1 1 0 0 1

mkj =

375



xk y j

(x,y)∈R

xc = µkj =



(x,y)∈R

k ≥ 0, j ≥ 0

m10 m01 yc = m00 m00

(x − xc )k (y − yc )j

(1) k ≥ 0, j ≥ 0

1 atan2(2µ11 , µ20 − µ02 ) 2 orientation = k1 ∗ Hough Angle + k2 ∗ φ φ=

(2) (3)

where, k1 = sin2 φ, k2 = cos2 φ 7. PATH PLANNING

7.1 Shortest Path Algorithm 6. DATA ACQUISITION Every object has an identity by virtue of a predefined colored sticker as seen in Figure 6. The captured image is first filtered in HSV color co-ordinate system to extract predefined color patches present. Centroid of each filtered blob is calculated using [], see Figure 9. The orientation of humanoid is calculated via Hough transform [Goldenshluger and Zeevi (2004)] applied on the filtered image. Hough transform was chosen for reliability and robustness as compared to many regression techniques pardoning the computation complexity that comes with it. Hough lines provided a good estimation but with certain constraints. The colored sticker was rectangular in shape to average out all the slopes given by Hough transform which led to a single line. Even though this often gave very good results, at particular angles the averaging gave erroneous results. The problem of singularity arises when the humanoid is at 0o or 180o . Averaging of peaks in Hough space gives erroneous results at boundary especially at 0o or 180o , see Figure 3. Principle axis can be computed using moment technique supplementary to the centroid calculation using (2). However moment method is sensitive to the shape of filtered blob and any irregularity creates false readings. Hence, a weighted average technique is adopted to improve the performance of Hough transform using (3). To expand the range of reading from [0,180] to [0,360), a special yellow marker is attached behind every marker to provide information about quadrant of humanoid. Once all data is collected and compiled this data can be used by the processing unit for game play strategy planning.

IDA* search seemed ideal for our situation of memory bound searching. Root node is the humanoids centroid and the goal node is destination (strike point for striker and goal post for a defender). The IDA* heuristic function [Onno Wink (2000)] was the Euclidean distance as angles which are multiples of 18o and line of sight distances between pixels which is not possible using Manhattan (will lead non-usage of diagonal paths) or Chebyshev distance (unnecessary use of diagonal motion between nodes due to equal costs of transitions). The parameters of the algorithm are, Heuristic = Euclidean(N ode, Goal) P athcost = Euclidean(N ode, Daughter) + T urningCost T urningCost = 0.20 ∗

Step 2

i.e. 20 for 50 pixel-distance jump. This is set to zero if there is no slope change since its parent. Cost = P athCost + Heuristic. Minimum cost route is chosen. 7.2 Neighborhood Design for Search Algorithm parameters has to fit humanoids constrains. Minimum turn by the humanoid was limited by its construction to 18o , hence, the daughter nodes of a pixel must be 18o apart. Von Neumann neighborhood gives us 90o turns and Moore neighborhood a 45o . We needed shortest paths which were smooth curves and lines and also with a minimum 18o difference in daughters with their corresponding ancestor node. 50 pixels are crossed in one step by the humanoid and 20 pixels in a small step. So all our neighborhood pixels can be 50 pixels apart from the parent. Thus the nodes of a parent (xp , yp ) are,

Fig. 3. Hough Accumulator Space at 0o orientation

Fig. 2. Diagonal Co-ordinate System 375

IFAC ACODS 2016 376 February 1-5, 2016. NIT Tiruchirappalli, India Raj Samant et al. / IFAC-PapersOnLine 49-1 (2016) 373–378

in Figure 6) and added to the queue, and if there is no change, node is removed. Hence after interpolation we have the set of nodes where the robot has to change directions. These queue of nodes are passed to the fuzzy logic code where the equations of lines between nodes and current bot position and orientation are used as input which will have an effect on the command to the humanoid.

Hough Transform Angle

Weights

Experimental results: We ran algorithm run separately on a case where the bot has to walk through the whole arena tackling the other bot given in Figure 6 (the path shown with the green points in Figure 6 as fixed nodes to check upon). The IDA* search and interpolation totally took 0.26ms to calculate the path.

Moment Based Angle

8. MOTION PLANNING AND EXECUTION Next step is to track the trajectory. In every tracking problem, open loop systems are unreliable and in the case of system drifts, error accumulates and produces incorrect end results. The motions of humanoid used were imprecise due to errors in actuator positions and battery level, slip w.r.t ground. Hence, it is mandatory to opt for feedback control methods for timely error correcting before leading to divergence. The feedback loop consists of the vision system, interpolated trajectory is reference input to fuzzy controller and communication system. Work has already been done in a closely related field in ball tracking using fuzzy [SHI Lei (2010)]. Fuzzy logic was primarily chosen over traditional crisp controller for following reasons,

Resultant Orientation

Fig. 4. Orientation computation using weighted average

• Data acquired from vision system is corrupted due to noise and might lead to contradicting decisions from crisp logic. • Fuzzy logic gives same intuitive nature with a more convenient interface. • Flexible, since only rule base change is needed for any modification in future. Fig. 5. IDA* Neighborhood Xn = xp + 50 ∗ cos(18 ∗ n) Yn = yp + 50 ∗ sin(18 ∗ n))

0 ≤ n < 20

0 ≤ n < 20

The 20 daughter nodes for a parent pixel (center of circle) as shown in the Figure 5. 7.3 Interpolation and Redundancy removal The pixels marked are 50 pixels apart, many of them being from the same line. The number of nodes (red markers in Figure 6) increases with the goal node being farther but sometimes unnecessarily increasing steps needed. To remove redundant nodes we interpolate the nodes by checking a change in direction.With a change detected, the parent node is marked as a transition point (green markers

8.1 Structure of Fuzzy Controller The fuzzy controller used in this work is based on Mamdani Model of fuzzy logic controller [Mamdani (1974)]. Mamdani model does not identify system model explicitly, the controller is designed directly based on fuzzy rule base [Laxmidhar Behera (2009)]. Input - The fuzzy controller has 2 inputs, deviation in orientation and offset distance from planned trajectory. Since these are crisp input and fuzzy system demand fuzzy set, the crisp inputs are fuzzified so that the fuzzy controller can interpret them. Output - There can be three possible motion decisions taken on possible errors, (1) Position correction, in the case of position error. Irrespective of angle error (as angle correction will be natively included in it). (2) Orientation correction, in the case of orientation error only. (3) Re-initialize the path finding process, in case the of error crossing maximum predefined bound. 8.2 Member Function Member function for both input and output sets is defined by a trapezoidal curve for the ease calculation during de-fuzzification. The membership function plot for offset distance is given in Fig.7.

Fig. 6. Trajectory planning output on one trial 376

IFAC ACODS 2016 February 1-5, 2016. NIT Tiruchirappalli, India Raj Samant et al. / IFAC-PapersOnLine 49-1 (2016) 373–378

D

A

ND2 ND1 ZD PD1 PD2

NA4 R NC PC R

A(14) -

NA3 R NC PC R

A(13) -

NA2 R NC PC R

A(12) -

NA1 R NC PC R

ZA

A(11) -

R NC PC R

377

PA1 -

R NC PC R

PA2

A(1) -

R NC PC R

A(2) -

PA3 R NC PC R

A(3) -

PA4 R NC PC R

A(4) -

Table 2. Fuzzy Logic Rule Base. NA = Negative angle error, PA = positive angle error, ND = Negative distance error, PD = Positive Distance Error, NC = Negative Distance Correction, R = Reset, PC = Positive Distance Correction, AC(.) = Angle Correction(Command Offset), Fuzzy membership of NAs, PAs, NDs, PDs is illustrated in Figure 7

Fig. 7. Input Membership Function The rule-base was decided based on logical motions to be performed when a particular input case is encountered. The rule-base used for the experiment is summarized in Table II. 8.3 De-fuzzification Method Centroid method was adopted for defuzzification and gaining crisp output from the controller for further evaluation. Centroid was computed using sampled version of the formula  x g(x) dx Centroid =  g(x) dx

Defuzzification gave a real number output from controller for further evaluation. The number is then converted to integer value and directly added to the base value of the command and sent to the communication module. output is 2 which is added to the base value of 40 and 42 command is sent to the humanoid which corresponds to 2 turns of 18o each which gives overshoot of 6o which is acceptable. Once one node is successfully reached, other fuzzy system is given inputs w.r.t next interpolated node rather than re-initializing whole system. 9. RESULTS The Experiment was performed on two humanoids without human interference. Images in Figure 9 show the progress of one shoot and save part of the game play recorded by the vision system. Figure 9(b) shows proper calculations of orientation and position of both humanoids. Figure 9(c) depicts the path planning using IDA*. Fuzzy logic based controller is seen to be efficiently working but with some amount of chattering in humanoid turning. Image Figure 9(d, e, f) finally shows working of controller and loop

377

Fig. 8. Maximum Error Probability plot termination. The images illustrate the effectiveness of designed algorithm and execution where Red humanoid effectively executes as a defender and Blue humanoid kicks the ball in precise direction after execution of all necessary motions. The game-play was found to be smooth enough to have a real time game feeling. Over all performance of the algorithm was measured over 20 runs containing single and double kicks. The performance of IDA* in trajectory planning was found 95%, the only failure observed in longer paths due to the other bot in the way during calculation. Fuzzy Logic based controller showed 65% of successes and the failures recorded were due to chattering during turning and resetting of the algorithm due to divergence (occurrence of chattering was considered as a failed attempt). On analysis, chattering problem was seen to occur due to lack of precision in the vision system. With stable lighting conditions, the worst case probability of the ball going into the goal can be seen in fig.8) Videos of test run whose snapshots are presented can be found online at Samant (2014b,a).

10. FUTURE SCOPE The approach used in this work was focused on single agent and no group play technique for multi-agent [JongHwan Kimand (2012)] framework was implemented. Application of Bidirectional A* search to reduce the number of nodes accessed during path planning. Intelligent controllers based on neural networks can be implemented on processing unit to compensate for non-linearity and randomness in the system.

IFAC ACODS 2016 378 February 1-5, 2016. NIT Tiruchirappalli, India Raj Samant et al. / IFAC-PapersOnLine 49-1 (2016) 373–378

(a) Original Frame

(b) Data Acquisition Results

(c) Trajectory planning results

(d) Resultant Motion 1

(e) Resultant Motion 2

(f) Resultant Motion 3

Fig. 9. Taped video images of one successful trial of kick and defend. 11. CONCLUSION Humanoid soccer has become wide spread attraction for robotics community in recent years and will continue for years to come. In this paper, we proposed an approach based on artificial intelligence and fuzzy controller based system. The design and implementation aspects were presented briefly on whole body control of humanoids in a competitive game playing environment. Experimental results validate the proposed control strategy. The system is modular and can be easily expanded to a multi-agent system. ACKNOWLEDGMENT The authors would like to acknowledge the support of TEQIP-II (Sub component 1.2.1) through Center of Excellence (CoE) in Complex & Nonlinear Dynamical Systems (CNDS), VJTI, Mumbai. REFERENCES Albertos, P. and Antonio (1998). Fuzzy logic controllers: Advantages and drawbacks. IEEE, transactions on control system technology. Franck Plestan, Jessy W. Grizzle, E.R.W. and Abba, G. (2003). Stable walking of a 7-dof biped robot. IEEE Transactions on robotics and automation. Goldenshluger, A. and Zeevi, A. (2004). The hough transform estimator. Institute of Mathematical Statistics,Haifa University and Columbia University. H. Kitano, M. Asada, Y.K.I.N. and Osawa, E. (1997). Robocup: The robot world cup initiative. Robocup: The robot world cup initiative. Hans-Dieter Burkhard, Dominique Duhaut, M.F.P.L.R.M.R.R. (2002). The road to robocup 2050,robotics & automation magazine. IEEE,Volume:9. Jong-Hwan Kimand, P.V. (2012). Multi-agent systems a survey from the robot-soccer perspective,robot intelligence technology and applications. Department of electrical engineering , Korea Advanced Institute Of Science And Technology. Junfeng Yao, C.L. and Xie, X. (2010). Path planning for virtual human motion using improved a* algorithm. School of Software, Xiamen University. Kim J, S.H. (1997). A cooperative multi-agent system and its real time application to robot soccer. IEEE International Conference on Robotics and Automation. 378

Kos, A. and Babi, J. (2010). Programming and control of humanoid robot football playing tasks. 19th International Workshop on Robotics in Alpe-Adria-Danube Region, Budapest-Hungary RAAD. Laxmidhar Behera, I.K. (2009). Intelligent systems and control: Principles & applications. Oxford University Press. Layale Saab, Oscar E. Ramos, F..K.N.M.P.S. and Fourquet, J.Y. (2013). Dynamic whole-body motion generation under rigid contacts and other unilateral constraints. IEEE Transactions on robotics, VOL. 29. Luis Sentis, J.P. (2010). Compliant control of multicontact and center-of-mass behaviors in humanoid robots. IEEE Transactions on Robotics, Vol. 26. Mamdani, E. (1974). Application of fuzzy algorithms for control of a dynamic plant. Proc.IEEE,121:1585-1588. Onno Wink, Wiro J. Niessen, M.A.V. (2000). Minimum cost path determination using a simple heuristic function. Image Sciences Institute (ISI)*, University Medical Center Utrecht, Netherlands. Pouyan Nasrollahi, Shahram Jafari, M.J.A.N. (2013). Decision making of humanoid soccer robots using rule based expert systems. 5th Conference on Information and Knowledge Technology (IKT). Samant, R. (2014a). Video of successful kick-defend-kick sequence of robot action in one trial. URL https:// youtu.be/h-E4vcFpe5Q. Samant, R. (2014b). Video of successful trial run. URL https://youtu.be/r_HvV0-uJxo. Sang-Ho Hyon, J.G.H. and Cheng, G. (2007). Fullbody compliant humanhumanoid interaction: Balancing in the presence of unknown external forces. IEEE Transactions on Robotics, VOL. 23, NO. 5. SHI Lei, WANG Qiang, W.l. (2010). An improved psobased path planning algorithm for humanoid soccer playing robots. Research on Humanoid Robot Soccer System Based on Fuzzy Logic. Sun, Y.L. and Er, M.J. (2004). Hybrid fuzzy control of robotics systems. IEEE Transactions on fuzzy systems. University, I.A. and Branch, Q. (2013). An improved pso-based path planning algorithm for humanoid soccer playing robots. Joint Conference of AI and Robotics and 5th RoboCup Iran Open International Symposium (RIOS).