Skip to main content
Log in

A closed asynchronous dynamic model of cellular learning automata and its application to peer-to-peer networks

  • Published:
Genetic Programming and Evolvable Machines Aims and scope Submit manuscript

Abstract

Cellular Learning Automata (CLAs) are hybrid models obtained from combination of Cellular Automata (CAs) and Learning Automata (LAs). These models can be either open or closed. In closed CLAs, the states of neighboring cells of each cell called local environment affect on the action selection process of the LA of that cell whereas in open CLAs, each cell, in addition to its local environment has an exclusive environment which is observed by the cell only and the global environment which can be observed by all the cells in CLA. In dynamic models of CLAs, one of their aspects such as structure, local rule or neighborhood radius may change during the evolution of the CLA. CLAs can also be classified as synchronous CLAs or asynchronous CLAs. In a synchronous CLA, all LAs in different cells are activated synchronously whereas in an asynchronous CLA, the LAs in different cells are activated asynchronously. In this paper, a new closed asynchronous dynamic model of CLA whose structure and the number of LAs in each cell may vary with time has been introduced. To show the potential of the proposed model, a landmark clustering algorithm for solving topology mismatch problem in unstructured peer-to-peer networks has been proposed. To evaluate the proposed algorithm, computer simulations have been conducted and then the results are compared with the results obtained for two existing algorithms for solving topology mismatch problem. It has been shown that the proposed algorithm is superior to the existing algorithms with respect to communication delay and average round-trip time between peers within clusters.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22
Fig. 23
Fig. 24

Similar content being viewed by others

References

  1. S. Wolfram, A New Kind of Science (Wolfram Media, Champaign, 2002)

    MATH  Google Scholar 

  2. M. Cook, Universality in elementary cellular automata. Complex Syst. 15(1), 1–40 (2004)

    MathSciNet  MATH  Google Scholar 

  3. N. Ganguly, A. Deutsch, A cellular automata model for immune based search algorithm, in 6 th International Conference on Cellular Automata for Research and Industry, Amsterdam, Netherlands (2004), pp. 142–150

  4. J.M. Benito, P. Hernández, Modelling Segragation Through Cellular Automata: A Theoretical Answer (Instituto Valenciano de Investigaciones Económicas, València, 2007)

    Google Scholar 

  5. M. Esnaashari, M.R. Meybodi, Data aggregation in sensor networks using learning automata. Wirel. Netw. 16(3), 687–699 (2010)

    Article  MATH  Google Scholar 

  6. H. Beigy, M.R. Meybodi, A learning automata-based adaptive uniform fractional guard channel algorithm. J. Supercomput. 71(3), 871–893 (2015)

    Article  Google Scholar 

  7. A.M. Saghiri, M.R. Meybodi, A distributed adaptive landmark clustering algorithm based on mOverlay and learning automata for topology mismatch problem in unstructured peer-to-peer networks. Int. J. Commun. Syst. 30(17), 1-22 (2017)

    Google Scholar 

  8. S. Gholami, M.R. Meybodi, A.M. Saghiri, A learning automata-based version of SG-1 protocol for super-peer selection in peer-to-peer networks,” in Proceedings of the 10th International Conference on Computing and Information Technology, Angsana Laguna, Phuket, Thailand (2014), pp. 189–201

  9. M. Ghorbani, A. Saghiri, M. Meybodi, A novel learning based search algorithm for unstructured peer to peer networks. Tech. J. Eng. Appl. Sci. 3(2), 145–149 (2013)

    Google Scholar 

  10. M. Ghorbani, M.R. Meybodi, A.M. Saghiri, A novel self-adaptive search algorithm for unstructured peer-to-peer networks utilizing learning automata, in 3rd Joint Conference of AI & Robotics and 5th RoboCup Iran Open International Symposium, Qazvin, Iran (2013), pp. 1–6

  11. A.M. Saghiri, M.R. Meybodi, A self-adaptive algorithm for topology matching in unstructured peer-to-peer networks. J. Netw. Syst. Manag. 24(2), 393-426 (2016)

    Article  Google Scholar 

  12. H. Beigy, M.R. Meybodi, A mathematical framework for cellular learning automata. Adv. Complex Syst. 3(4), 295–319 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  13. M. Asnaashari, M.R. Meybodi, Irregular cellular learning automata and its application to clustering in sensor networks, in Proceedings of 15th conference on electrical engineering, Tehran, Iran (2007), pp. 21–28

  14. M. Esnaashari, M. Meybodi, A cellular learning automata-based deployment strategy for mobile wireless sensor networks. J. Parallel Distrib. Comput. 71(5), 988–1001 (2011)

    Article  MATH  Google Scholar 

  15. M. Esnaashari, M. Meybodi, Deployment of a mobile wireless sensor network with k-coverage constraint: a cellular learning automata approach. Wirel. Netw. 19(5), 945–968 (2013)

    Article  Google Scholar 

  16. Y. Zhao, W. Jiang, S. Li, Y. Ma, G. Su, X. Lin, A cellular learning automata based algorithm for detecting community structure in complex networks. Neurocomputing 151, 1216–1226 (2015)

    Article  Google Scholar 

  17. R. Rastegar, M.R. Meybodi, A new evolutionary computing model based on cellular learning automata, in IEEE Conference on Cybernetics and Intelligent Systems, vol. 1, Singapore (2004), pp. 433–438

  18. R. Rastegar, M.R. Meybodi, A. Hariri, A new fine-grained evolutionary algorithm based on cellular learning automata. Int. J. Hybrid Intell. Syst. 3(2), 83–98 (2006)

    Article  MATH  Google Scholar 

  19. M. Mozafari, M.E. Shiri, H. Beigy, A cooperative learning method based on cellular learning automata and its application in optimization problems. J. Computat. Sci. 11, 279–288 (2015)

    Article  Google Scholar 

  20. H. Beigy, M.R. Meybodi, Open synchronous cellular learning automata. Adv. Complex Syst. 10(4), 527–556 (2007)

    Article  MathSciNet  MATH  Google Scholar 

  21. H. Beigy, M.R. Meybodi, Asynchronous cellular learning automata. Automatica 44(5), 1350–1357 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  22. H. Beigy, M.R. Meybodi, Cellular learning automata with multiple learning automata in each cell and its applications. IEEE Trans. Syst. Man Cybern. Part B Cybern. 40(1), 54–65 (2010)

    Article  Google Scholar 

  23. M. Esnaashari, M.R. Meybodi, Irregular cellular learning automata. IEEE Trans. Cybern. 99, 1 (2014)

    MATH  Google Scholar 

  24. A.M. Saghiri, M.R. Meybodi, An approach for designing cognitive engines in cognitive peer-to-peer networks. J. Netw. Comput. Appl. 70, 17–40 (2016)

    Article  Google Scholar 

  25. X.Y. Zhang, Q. Zhang, Z. Zhang, G. Song, W. Zhu, A construction of locality-aware overlay network: mOverlay and its performance. IEEE J. Sel. Areas Commun. 22(1), 18–28 (2004)

    Article  Google Scholar 

  26. T. Qiu, E. Chan, M. Ye, G. Chen, B.Y. Zhao, Peer-exchange schemes to handle mismatch in peer-to-peer systems. J. Supercomput. 48(1), 15–42 (2009)

    Article  Google Scholar 

  27. H.-J. Ju, L.-J. Du, Nodes clustering method in large-scale network, in 8th International Conference on Wireless Communications, Networking and Mobile Computing, Shanghai, China (2012), pp. 1–4

  28. Y. Liu, A two-hop solution to solving topology mismatch. IEEE Trans. Parallel Distrib. Syst. 19, 1591–1600 (2008)

    Article  Google Scholar 

  29. H.C. Hsiao, H. Liao, P.S. Yeh, A near-optimal algorithm attacking the topology mismatch problem in unstructured peer-to-peer networks. IEEE Trans. Parallel Distrib. Syst. 21(7), 983–997 (2010)

    Article  Google Scholar 

  30. H.C. Hsiao, H. Liao, C.C. Huang, Resolving the topology mismatch problem in unstructured peer-to-peer networks. IEEE Trans. Parallel Distrib. Syst. 20(11), 1668–1681 (2009)

    Article  Google Scholar 

  31. Y. Li, Z. Yu, An improved genetic algorithm for network nodes clustering, in Proceedings of the Second International Conference on Information Computing and Applications, Qinhuangdao, China (2011), pp. 399–406

  32. Y. Jiang, J. You, X. He, A particle swarm based network hosts clustering algorithm for peer-to-peer networks, in International Conference on Computational Intelligence and Security, vol. 2, Guangzhou, China (2006), pp. 1176–1179

  33. R. Tian, Y. Xiong, Q. Zhang, B. Li, B.Y. Zhao, X. Li, Hybrid overlay structure based on random walks, in Peer-to-Peer Systems IV (Springer, 2005), pp. 152–162

  34. M. Scheidegger, T. Braun, Improved locality-aware grouping in overlay networks, in Kommunikation in Verteilten Systemen, Bern, Switzerland (2007), pp. 27–38

  35. S. Ratnasamy, M. Handley, R. Karp, and S. Shenker, “Topologically-aware overlay construction and server selection,” in The 21st Annual Joint Conference of the IEEE Computer and Communications Societies, vol. 3, New York, USA (2002), pp. 1190–1199

  36. S. Wolf, and P. Merz, “Evolutionary local search for the super-peer selection problem and the p-hub median problem,” in Proceedings of the 4th International Conference on Hybrid Metaheuristics, Berlin, Heidelberg (2007), pp. 1–15

  37. Z. Xu, C. Tang, Z. Zhang, Building topology-aware overlays using global soft-state, in 23rd International Conference on Distributed Computing Systems, Providence, RI, USA (2003), pp. 500–508

  38. K.S. Narendra, M.A.L. Thathachar, Learning Automata: An Introduction (Prentice-Hall, Englewood Cliffs, 1989)

    MATH  Google Scholar 

  39. M. Thathachar, P.S. Sastry, Networks of Learning Automata: Techniques for Online Stochastic Optimization (Kluwer Academic Publishers, Dordrecht, Netherlands, 2004)

    Book  Google Scholar 

  40. M.E. O’kelly, A quadratic integer program for the location of interacting hub facilities. Eur. J. Oper. Res. 32(3), 393–404 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  41. F. Aurenhammer, Voronoi diagrams—a survey of a fundamental geometric data structure. ACM Comput. Surv. (CSUR) 23(3), 345–405 (1991)

    Article  Google Scholar 

  42. B.A. Bash, P.J. Desnoyers, Exact distributed Voronoi cell computation in sensor networks, in Proceedings of the 6th International conference on Information Processing in Sensor Networks, New York, NY, USA (2007), pp. 236–243

  43. W.-P. Chen, J.C. Hou, L. Sha, Dynamic clustering for acoustic target tracking in wireless sensor networks. IEEE Trans. Mob. Comput. 3(3), 258–271 (2004)

    Article  Google Scholar 

  44. M. Sharifzadeh, C Shahabi, Supporting spatial aggregation in sensor network databases, in Proceedings of the 12th Annual ACM International Workshop on Geographic Information Systems, Washington DC, USA (2004), pp. 166–175

  45. Z. Zhou, S.R. Das, H. Gupta, Variable radii connected sensor cover in sensor networks. ACM Trans. Sens. Netw. (TOSN) 5(1), 8 (2009)

    Google Scholar 

  46. I. Baumgart, B. Heep, S. Krause, OverSim: a scalable and flexible overlay framework for simulation and real network applications,” in Peer-to-Peer Computing, Seattle, Washington, USA (2009), pp. 87–88

  47. L. Li, D. Alderson, W. Willinger, J. Doyle, A first-principles approach to understanding the internet’s router-level topology. ACM SIGCOMM Comput. Commun. Rev. 34(4), 3–14 (2004)

    Article  Google Scholar 

  48. P. Mahadevan, D. Krioukov, M. Fomenkov, B. Huffaker, X. Dimitropoulos, A. Vahdat, Lessons from Three Views of the Internet Topology (University of California, San Diego, 2005). (tr-2005-02)

    Google Scholar 

  49. B. Huffaker, D. Plummer, D. Moore, K.C. Claffy, Topology discovery by active probing, in Proceedings of Symposium on Applications and the Internet Workshops, Washington, DC, USA (2002), pp. 90–96

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mohammad Reza Meybodi.

Appendices

Appendix 1

The detailed descriptions of the phases of the proposed algorithm are given in this section. Before we present the proposed algorithm in more details, we need to define the followings.

  1. 1.

    Eleven types of messages (Hello, Alive, ClusteringRequest, ClusteringReply, SetRole, WarmUpCell, ReadyCell, AutomatonActivatonRequest, AutomatonActivatonReply, ReinforcementSignal, and NewConfig) are used in the proposed algorithm.

  2. 2.

    Meeting point (MP) is a global cache in the network which provides an entry point to the overlay for the new peers.

  3. 3.

    Each peer uses function M-Activate that is shown in Fig. 25 to activate the cell of its corresponding cluster. Since in the proposed algorithm, the learning automata of the cells are distributed among peers of the network, and the design of function Activate of CADCLA-VL that is shown in Fig. 3 is not appropriate for peer-to-peer networks, we designated the function M-Activate that is a customized version of function Activate. The descriptions of the function M-Activate are given in the next paragraph.

    Fig. 25
    figure 25

    Pseudo code of the procedure which a peer executes for using the cell of its corresponding cluster

In this function, peer i sends a WarmUpCell messages to the landmark peers of the neighboring clusters of its corresponding cluster. This message activates the cells of the neighboring clusters to compute their restructuring signals. After sending the WarmUpCell messages, peer i waits for gathering ReadyCell messages. Peer i saves the information of ReadyCell messages and calls automata trigger function to find the value of automata trigger signal. If the value of automata trigger signal is true, peer i activates its learning automaton to select an action and sends AutomatonActivationRequest messages to other peers of its corresponding cluster to activate all learning automata of its corresponding cluster to collectively select their actions. After sending AutomatonActivationRequest messages, peer i waits to gather AutomatonActivationReply messages. These messages provide required information for executing the local rule. Peer i uses gathered information and executes the local rule for finding the reinforcement signal of learning automata. The reinforcement signal is used to collectively update all learning automata of the peers of the cluster of peer i . Finally, peer i find the configuration of peers of its cluster using the structure updating rule and send NewConfig messages to all peers of its corresponding cluster to activate them to change their connections according to the result of structure updating rule. Figure 25 shows the pseudo code of the M-Activate function.

Now we describe the algorithm that a peer i executes. The pseudo code of this algorithm is given in Fig. 26. This algorithm has three phases which are described in the rest of this section.

Fig. 26
figure 26figure 26

Pseudo code of the proposed algorithm

Construction phase: During the Construction phase performed by peer i , the peer tries to find an appropriate cluster. In the Construction phase, peer i uses the Meeting point to find clusters of the network. Peer i randomly selects one of the clusters of the network, sends Hello message to the landmark peer of the selected cluster and the landmark peers of clusters adjacent to the selected clusters. Finally, peer i connects to the landmark peer of the selected cluster, sets its role to Ordinary, and goes to the Organization phase. If peer i is unable to find any cluster, it sets its role to Landmark, registers its identifier into the Meeting point as new landmark peer, and goes to Maintenance phase.

Organization phase: During the Organization phase performed by peer i , peer i and the peers that they have the same cluster as the cluster of peer i try to find an appropriate landmark peer for their cluster using the CADCLA-VL. In the Organization phase, peer i activates the cell of its corresponding cluster by executing function M-Activate(). Then peer i sends ClusteringRequest messages to all peers of its corresponding cluster to inform them that their landmark peer is not valid. After sending the ClusteringRequest message, peer i waits for a certain threshold THRESHOLD and gathers ClusteringReply messages which consist of information about learning automata of other peers of the cluster. peer i selects one of peers (including peer i ) which the probability of selection of change the role to landmark peer action of its learning automaton is maximum. Finally, peer i sets its role and sends SetRole messages containing the selected landmark peer to the peers of its corresponding cluster. Note that, if the selected landmark peer is peer i , peer i sets its role to Landmark and sets its role to Ordinary, otherwise. At the end of Organization phase, peer i goes to the Maintenance phase.

Maintenance phase: In this phase, if the role of peer i is Landmark, peer i sends Alive messages to all the peers of its corresponding cluster. Alive message contains information about new peers of the cluster of peer i . Peer i waits for a certain duration THRESHOLD to receive one of the ClusteringRequest, Hello, Alive, SetRole, WarmUpCell, AutomatonActivationRequest, and NewConfig messages.

Peer i , upon receiving a ClusteringRequest message from a peer j , saves the information of ClusteringRequest message. Then, peer i produces a ClusteringReply message containing the action probability of selecting the “change the role to landmark peer” action of its learning automaton. After sending the ClusteringReply message to peer j , peer i restarts the Maintenance phase.

Peer i , upon receiving a Hello message or an Alive message from a peer j , saves information of peer j , connects to peer j , and restarts the Maintenance phase.

Peer i , upon receiving a SetRole message from a peer j resided in its corresponding cluster, sets the identifier of its cluster to the identifier of the new landmark peer reported by the SetRole message. If peer i has been selected as a new landmark peer, then peer i sets its role to Landmark, otherwise peer i sets its role to Ordinary and sends a Hello message to the new landmark peer. Finally, peer i restarts the Maintenance phase.

Peer i , upon receiving a WarmUpCell message from a peer j which peer j belongs to neighboring clusters of the cluster of peer i , computes the restructuring signal using the restructuring function and sends a ReadyCell message to the peer j . The ReadyCell message contains the computed restructuring signal. Finally, peer i restarts the Maintenance phase.

Peer i , upon receiving an AutomatonActivatonRequest message from a peer j , activates its learning automaton and sends AutomatonActivatonReply message to peer j . This message contains the action selected by the learning automaton of peer i , information about delays between peer i and other peers of the cluster of peer i , and information about delays between peer i and the landmark peers of the clusters adjacent to cluster of peer i . Then, peer i waits until receives a ReinforcementSignal message from peer j . After receiving the ReinforcementSignal message, peer i updates its learning automaton using reinforcement signal reported by the ReinforcementSignal message and restarts the Maintenance phase.

Peer i , upon receiving a NewConfig message from a peer j , changes its connections to its neighbors using information reported by the NewConfig message. Then, peer i restarts the Maintenance phase.

If peer i does not receive any message during the specified period of THRESHOLD or the connections of the peer i are changed, peer i checks its role. If the role of peer i is Ordinary, peer i goes to the organization phase, and restarts the Maintenance phase otherwise.

Appendix 2

Acronyms

Definition

CA

Cellular Automaton

CMO

Control Message Overhead

CLA

Cellular Learning Automaton

CADCLA

Closed Asynchronous Dynamic Cellular Learning Automaton

CADCLA-VL

A Closed Asynchronous Dynamic Cellular Learning Automaton with multiple learning automata in each cell

DCLA

Dynamic Cellular Learning Automaton

DICLA

Dynamic Irregular Cellular Learning Automaton

HDICLA

Heterogeneous Dynamic Irregular Cellular Learning Automaton

hOverlay

A version of the proposed algorithm in which the learning automata of CADCLA-VL are deactivated

kOverlay(p)

A version of the proposed algorithm which its CADCLA-VL is tuned with an algorithm described as follows. Upon activating a cell of CADCLA-VL the information about each peer of its corresponding cluster will be used with probability p

LA

Learning Automata

lOverlay

An extension of the mOverlay algorithm

MRT

Mean Round-trip Time

M-Activate

A function that executes the cell activation process of the CLA in distributed manner

MP

MP is a global cache in the network which provides an entry point to the overlay for the new peers

mOverlay

A well-known landmark clustering algorithm

nOverlay

A version of the proposed algorithm in which CADCLA-VL is replaced with a pure-chance CADCLA-VL

OADCLA

Open Asynchronous Dynamic Cellular Learning Automaton

PE

Potential Energy

SCLA

Static Cellular Learning Automaton

TCD

Total Communication Delay

xOverlay

The proposed CLA based algorithm

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Saghiri, A.M., Meybodi, M.R. A closed asynchronous dynamic model of cellular learning automata and its application to peer-to-peer networks. Genet Program Evolvable Mach 18, 313–349 (2017). https://doi.org/10.1007/s10710-017-9299-7

Download citation

  • Received:

  • Revised:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10710-017-9299-7

Keywords

Navigation