Pre-Proceedings of The 8th Asian Conference on Membrane Computing (ACMC2019) Xiamen University Xiamen, China November 14-17, 2019 Gexiang Zhang Linqiang Pan Xiangrong Liu Editors
The list of authors and some participants as well as their e-mail address are given below, with the aim of facilitating the further communication and interaction: Henry N. Adorna, Algorithms & Complexity Lab Department of Computer Science University of the Philippines Diliman Diliman 1101 Quezon City, Philippines E-mail: [email protected] Celine Anne A. Moredo, Algorithms & Complexity, Dept. of Computer Science, University of the Philippines Diliman Diliman 1101 Quezon City, Philippines. Rodica Ceterchi, University of Bucharest Faculty of Mathematics and Computer Science 14 Academiei St, 010014 Bucharest, Romania Francis George C. Cabarle, Algorithms and Complexity Laboratory Department of Computer Science University of the Philippines Diliman, Quezon City, Philippines; School of Information Science and Technology Xiamen University E-mail:澳[email protected] Wei Cen, School of Electrical and Electronic Engineering, Wuhan Polytechnic University, Wuhan 430023, Hubei, China. Dionne Peter Cailipan, Algorithms & Complexity, Dept. of Computer Science, University of the Philippines Diliman Diliman 1101 Quezon City, Philippines. Yunhui Chen, State Grid Sichuan Electric Power Company, Chengdu 610094, China Ying Chen, State Grid Sichuan Electric Power Company, Chengdu 610094, China Hong Chen, School of Electrical Engeneering, Southwest Jiaotong University, Chengdu, China Matteo Cavaliere, Faculty of Science and Engineering, Manchester Metropolitan University, Manchester, Britain Lovely Joy Casauay, Algorithms & Complexity Dept. of Computer Science, University of the Philippines Diliman Diliman 1101 Quezon City, Philippines. Yingying Duan, School of Electrical and Engineering, Southwest Jiaotong University, Chengdu 610031, China E-mail: [email protected] Jianping Dong, School of Electrical Engineering, Southwest Jiaotong University, Chengdu, 61003, China
Fang Deng, School of Electrical Engineering, Southwest Jiaotong University, Chengdu, 61003 Haocheng Fang, School of Math and Computer, Development Strategy Institute of reserve of food and material, Wuhan Polytechnic University, Wuhan 430023, China Xiantai Gou, School of Electrical Engineering, Southwest Jiaotong University, Chengdu, 61003, China Ivan Cedric H. Macababayao, Algorithms & Complexity Dept. of Computer Science, University of the Philippines Diliman Diliman 1101 Quezon City, Philippines. Zhixin He, School of Math and Computer, Development Strategy Institute of reserve of food and material, Wuhan Polytechnic University, Wuhan 430023, China Qiyao Huang, School of Economics and Management, Wuhan Polytechnic University, Wuhan 430023, Hubei, China Ivan Cedric H. Macababayao, Algorithms & Complexity Dept. of Computer Science, University of the Philippines Diliman Diliman 1101 Quezon City, Philippines. YuLei Huang, School of Electrical Engineering and Electronic Information, Sichuan Province Key Laboratory of Power Electronics Energy-saving Technologies& Equipment, Key Laboratory of Fluid and Power Machinery , Ministry of Education, Xihua University,Chengdu 610039, P. R. China. S James Immanuel, Department of Mathematics, Madras Christian College, Tambaram, Chennai ---600 059, India E-mail:澳
[email protected] Meng Hu, School of Electrical Engineering, Southwest Jiaotong University, Chengdu, 61003 Falin Jiang . School of Math and Computer, Development Strategy Institute of reserve of food and material, Wuhan Polytechnic University, Wuhan 430023, China E-mail: [email protected] Ryan Chester J. Supelana, Algorithms & Complexity, Dept. of Computer Science, University of the Philippines Diliman Diliman 1101 Quezon City, Philippines. S Jayasankar, Department of Mathematics, Ramakrishna Mission Vivekananda College, Chennai --- 600 004, India
E-mail:澳
[email protected] Deting Kong, School of Management Science and Engineering, Shandong Normal University, Jinan,250014, China. Shuo Liu, School of Economics and Management, Wuhan Polytechnic University, Wuhan 430023, Hubei, China. E-mail: [email protected] Xiangrong Liu, School of Math and Computer, Development Strategy Institute of reserve of food and material, Wuhan Polytechnic University, Wuhan 430023, China Qifen Liu, School of Electrical Engineering, Southwest Jiaotong University, Chengdu, 61003 Yezhou Liu, The University of Auckland, Auckland, New Zealand Wanying Liang, School of Math and Computer, Wuhan Polytechnic University, Wuhan 430023, Hubei, China Xiyu Liu, School of Management Science and Engineering, Shandong Normal University, Jinan,250014, China. E-mail: sdxy[email protected] Ren Tristan A. de la Cruz, Algorithms and Complexity Laboratory Department of Computer Science University of the Philippines Diliman, Quezon City, Philippines; E-mail:澳
[email protected] Miguel Ańgel Martínez-del-Amor, Research Group on Natural Computing Department of Computer Science and Articial Intelligence University of Seville E-mail: [email protected] Atulya K Nagar, Department of Mathematics and Computer Science, Liverpool Hope University, Liverpool, United Kingdom E-mail:澳[email protected] Radu Nicolescu, Department of Computer Science, University of Auckland, Private Bag 92019, Auckland, New Zealand. E-mail: r.nicoles[email protected] Yunyun Niu, School of Information Engineering China University of Geosciences in Beijing, Beijing 100083, China E-mail: niuyun[email protected]
Ferrante Neri, COL Laboratory, School of Computer Science, University of Nottingham, Nottingham, United Kingdom Hong Peng, School of Computer and Software Engineering, Xihua University, Chengdu, 610039,Sichuan, China Ignacio Pérez-Hurtado, Research Group on Natural Computing, Dpt. Computer Science and Artificial Intelligence, School of Computer Engineering, Universidad de Sevilla, Seville, Spain Linqiang Pan, School of Articial Intelligence and Automation, Huazhong University of Science and Technology, Wuhan, 430074, China Mario J. Pérez-Jiménez, Research Group on Natural Computing, Dpt. Computer Science and Artificial Intelligence, School of Computer Engineering, Universidad de Sevilla, Seville, Spain Pirthwineel Paul, School of Electrical Engineering, Southwest Jiaotong University, Chengdu, 61003, China Meenakshi Paramasivan, Institut für Informatik, Universität Leipzig, D-04009 Leipzig, Germany E-mail: [email protected] Huaqing Qi, School of Economics and Management, Wuhan Polytechnic University, Wuhan 430023, China E-mail: [email protected] Dunwu Qi, Chengdu Research Base of Giant Panda Breeding, Chengdu, Sichuan, China Haina Rong, School of Electrical Engeneering, Southwest Jiaotong University, Chengdu, 610031, China E-mail: ron[email protected] Zeyi Shang,澳School of Electrical Engeneering, Southwest Jiaotong University, Chengdu, Sichuan, China Laboratoire d’Algorithmique, Complexit´ e et Logique, Universit´ e Paris Est Cr´ eteil, Cr´ eteil, France Bosheng Song, College of Information Science and Engineering, Hunan University, Changsha, China E-mail: [email protected]
Michael Stachowicz, Faculty of Science and Engineering, Manchester Metropolitan University, Manchester, Britain K.G. Subramanian, Department of Mathematics, Madras Christian College, Tambaram, Chennai 600059, India E-mail: [email protected] Jianchi Sun, School of Math and Computer, Wuhan Polytechnic University, Wuhan 430023, Hubei, China E-mail: [email protected] Jing Sun, The University of Auckland, Auckland, New Zealand Hang Shu, School of Math and Computer, Development Strategy Institute of reserve of food and material, Wuhan Polytechnic University, Wuhan 430023, China D G Thomas, Department of Mathematics, Madras Christian College, Tambaram, Chennai ---600 059, India E-mail:澳[email protected] T.Robinson, Department of Mathematics, Madras Christian College, Tambaram, Chennai ---600 059, India E-mail:澳[email protected] Sergey Verlan,澳Laboratoire d’Algorithmique, Complexit´e et Logique, D´epartement Informatique, Universit´e Paris Est E-mail:
[email protected] Luis Valencia-Cabrera,澳Research Group on Natural Computing, Department of Computer Science and Artificial Intelligence, University of Sevilla, Spain E-mail: [email protected] Yuan Wang, School of Management Science and Engineering, Shandong Normal University, Jinan,250014, China. Di Wang, School of Management Science and Engineering, Shandong Normal University, Jinan,250014, China. Jun Wang, School of Electrical Engineering and Electronic Information, Sichuan Province Key Laboratory of Power Electronics Energy-saving Technologies& Equipment, Key Laboratory of Fluid and Power Machinery , Ministry of Education, Xihua University,Chengdu 610039, P. R. China. Tao Wang, School of Electrical Engineering and Electronic Information, Sichuan
Province Key Laboratory of Power Electronics Energy-saving Technologies& Equipment, Key Laboratory of Fluid and Power Machinery , Ministry of Education, Xihua University,Chengdu 610039, P. R. China. Tianbao Wu, State Grid Sichuan Electric Power Company, Chengdu 610094, China Jianhua Xiao, School of Information Engineering China University of Geosciences in Beijing, Beijing 100083, China E-mail:
[email protected] Jie Xue, School of Management Science and Engineering, Shandong Normal University, Jinan,250014, China. Jian Xie, China Grain Wuhan Scientfic Reserch & Design Institute, Co.ltd, Wuhan 430023, China Hua Yang, School of Math and Computer, Development Strategy Institute of reserve of food and material, Wuhan Polytechnic University, Wuhan 430023, China E-mail:Huay[email protected] Zehua Yang, School of Information Engineering China University of Geosciences in Beijing, Beijing 100083, China Zhao Yao, School of Math and Computer, Development Strategy Institute of reserve of food and material, Wuhan Polytechnic University, Wuhan 430023, China Zhibing Yu, School of Electrical Engeneering, Southwest Jiaotong University, Chengdu, 610031, China Xiangxiang Zeng, Department of Computer Science, Xiamen University, Xiamen 361005, Fujian, China Gexiang Zhang, School of Electrical Engineering, Southwest Jiaotong University, Chengdu, 61003, China E-mail: zhgxdy[email protected] Xihai Zhang, School of Electrical Engineering, Southwest Jiaotong University, Chengdu, 61003, China Zhe Zhang, Business School, Shandong Normal University, Jinan, China Luping Zhang, School of Articial Intelligence and Automation, Huazhong University of Science and Technology, Wuhan, 430074, China
Kang Zhou, School of Math and Computer, Development Strategy Institute of reserve of food and material, Wuhan Polytechnic University, Wuhan 430023, China E-mail: [email protected] Jian Zhou, college of Food Science and Engineering, Wuhan Polytechnic University, Wuhan 430023, China
Committees Steering Committee: Henry Adorna (Quezon City, Philippines) Artiom Alhazov (Chisinau, Moldova) Bogdan Aman (Iasi, Romania) Matteo Cavaliere (Manchester, UK) Erzsébet Csuhaj-Varjú (Budapest, Hungary) Giuditta Franco (Verona, Italy) Rudolf Freund (Wien, Austria) Marian Gheorghe (Bradford, UK) – Honorary member Thomas Hinze (Cottbus, Germany) Florentin Ipate (Bucharest, Romania) Shankara N. Krishna (Bombay, India) Alberto Leporati (Milan, Italy) Taishin Y. Nishida (Toyama, Japan) Linqiang Pan (Wuhan, China) – Co-Chair Gheorghe Păun (Bucharest, Romania) – Honorary member Mario J. Pérez-Jiménez (Sevilla, Spain) Agustín Riscos-Núñez (Sevilla, Spain) José M. Sempere (Valencia, Spain) Petr Sosík (Opava, Czech Republic) Kumbakonam Govindarajan Subramanian (Penang, Malaysia) György Vaszil (Debrecen, Hungary) Sergey Verlan (Paris, France) Claudio Zandron (Milan, Italy) Gexiang Zhang (Chengdu, China) – Co-Chair Program Committee: Henry Adorna (Quezon City, Philippines) Cătălin Buiu (Bucharest, Romania)
Automatic Design of Spiking Neural P Systems Based on Genetic Algorithms Jianping Dong, Michael Stachowicz, Gexiang Zhang, Matteo Cavaliere, Haina Rong, and Prithwineel Paul………………………………….….………………..…449 Bi-level multi-objective optimization of loss and waste in the wheat processing Wanying Liang, Hua Yang, and Kang Zhou………………………….…..…468
Part 1 Invited talks 1
Challenges for hardware implementations of P Systems Sergey Verlan University of Paris Paris Est, France Abstract: A P system is a computational model that features a massive parallelism. In order to be able to use this feature in applications it is important to have a truly massively parallel implementation of P systems. At this moment, the only possibility to practically realize this is a digital circuit or FPGA (reconfigurable circuit) implementation. In this talk we explain the challenges raised by such an implementation. As example we discuss recent FPGA implementations of numerical P systems (NPS) that is a variant of P systems allowing to easily model physical processes based on differential equations. NPS allows many applications, the most prominent ones being in the area of robotic control. We will show how to obtain a hardware FPGA implementation of NPS allowing to achieve extreme speeds (~10^8 computational steps per second) and featuring massive parallelism (with more than 5000 parallel computational units). This opens new perspectives for the design of on-chip fast robotic controllers based on P systems. Another important consequence is the ability to use some variants of P systems as a programming language for algorithm description that can be efficiently translated in FPGA hardware by non-specialists. Short bio: Dr. hab. Sergey Verlan is an associated professor at the University of Paris Est Creteil, France. He obtained his PhD in Computer Science in 2004 at the University of Metz, France and his habilitation in 2010 at the University of Paris Est. Dr Verlan’s main research focus is the area of theoretical computer science and natural computing. He has expertise in the area of formal language theory, DNA computing, membrane computing, modeling of biological systems and hardware design. 2
Epistasis in Optimisation Problems Ferrante Neri University of Nottingham, Nottingham Abstract: In biological systems, epistasis is the correlation between pairs of genes. By loosely interpreting this concept, in optimisation epistasis refers to the correlation between the variables with respect to an objective function. A low epistatic problem can be decomposed in multiple simpler problems, each of them with being with a reduced dimensionality with respect to the original problem.This talk presents the topic of correlation among variables and analyses the related topics of separability and rotation invariance. An overview of the literature on techniques to handle epistasis with reference to Differential Evolution is offered. Furthermore, this talk explores the relation between dimensionality and correlation among the variables and demonstrates that experimental conditions are an inherent part of the optimisation problem. Short bio: Ferrante Neri received a Master’s degree and a PhD in Electrical Engineering from the Technical University of Bari, Italy, in 2002 and 2007 respectively. In 2007, he also received a PhD in Scientific Computing and Optimization from University of Jyväskylä, Finland. From the latter institution, he received the DSc degree (Habilitation) in Computational Intelligence in 2010. He was Research Fellow with Academy of Finland in the period 2009-2014. Dr Neri moved to De Montfort University, United Kingdom in 2012, where he was appointed Reader in Computational Intelligence and in 2013, promoted to Full Professor of Computational Intelligence Optimisation. Since 2019 Ferrante Neri moved to the School of Computer Science, University of Nottingham, United Kingdom where he was appointed Associate Professor. Ferrante Neri’s teaching expertise lies in mathematics for computer science, especially linear and abstract algebra. He is HEA Senior Fellow and author of the recently published book “Linear Algebra for Computational Sciences and Engineering”. His research interests include algorithmics, hybrid heuristic-exact optimisation, scalability in optimisation and large scale problems. Dr Neri published over 150 publications in these topics. Dr Neri is an IEEE Senior Member and is Associate Editor and member of the Editorial Board of numerous journals including Information Sciences, Integrated Computer-Aided Engineering, and Memetic Computing. He organised over twenty symposia, special sessions, and workshops in International Conferences. Dr Neri is on the panel of funding bodies in seven countries. He has been in the Programme Committee of over 100 conferences. 3
Some Variants of P Systems Bosheng Song 澳Hunan University, Changsha, China Abstract: Membrane computing is an unconventional computing area that aims to abstract computing ideas (e.g., computing models, data structures, data operations) from the structure and functioning of living cells, as well as from more complex biological entities, like tissues, organs and populations of cells. The computational models that are part of this paradigm are generically called P systems, which are distributed and parallel computing devices. In this talk, inspired by different biological facts, some variants of P systems are introduced; besides, some new results of these P systems and open problems are presented. Short bio: Bosheng Song received the Ph.D. degree in control science and engineering from Huazhong University of Science and Technology, Wuhan, China, in 2015. He spent eighteen months working in the Research Group on Natural Computing, University of Seville, Seville, Spain, from November, 2013 to May, 2015. He was worked as a postdoctoral researcher with the School of Artificial Intelligence and Automation, Huazhong University of Science and Technology, Wuhan, China, from March, 2016 to February, 2019. He is currently an Associate Professor with the College of Information Science and Engineering, Hunan University, Changsha, China. His current research interests include membrane computing and formal language theory. 4
Space Filling Curves: Representations and Generation Rodica Ceterchi 澳8QLYHUVLW\RI%XFKDUHVW Abstract: Space Filling curves have been of interest for mathematicians since the end of the 19th century, when Peano and Hilbert discovered the first examples. More recently, they turned out to be useful tools in Computer Science, with many applications, especially to scientific computing. Their representations as strings (chain-code words) have been introduced, and different generations with formal languages tools have been studied. We present here several results concerned with the generation of finite approximations of space-filling curves in string representation, with parallel rewriting rules, controlled by P systems. We also introduce a novel representation of them as 2D-arrays, their generation with array rewriting rules, and the connections between the string representation and the array representation. Short bio: Prof. Dr. Habil. Rodica Ceterchi is Professor at the Faculty of Mathematics and Computer Science, Department of Computer Science, University of Bucharest, Romania. She obtained her PhD in 1991, and her Habilitation in 1997 from the same University. Her research interests include algebras for many-valued logics, formal models for semantics, unconventional models of computation inspired by nature, membrane computing. She was in 2003 a recipient of the “Grigore C. Moisil” award of the Romanian Academy for her contributions in this area. 5
Bibliometric Analysis of Membrane Computing Gexiang Zhang Chengdu University of Technology Abstract: This talk will discuss the development process of membrane computing and the statistical data with respect to the publications appearing in international journals, conferences and workshops, the researchers in geographical distributions and the funds. The bibliometric analysis results of membrane computing will be reported in detail. Some future suggestions will be provided. Short bio: Gexiang Zhang is currently a full professor of College of Information Science & Technology at Chengdu University of Technology, Chengdu, China. He worked at The University of Sheffield, UK, at the University of Seville, Spain, and at the New York University, USA. His areas contain artificial intelligence (membrane computing, machine learning, etc.), robotics and smart grids. He is the principle investigator of five projects funded by National Natural Science Foundation of China. He has published three books, over 200 refereed book chapters, journal and conference papers, and authored more than 40 Chinese patents. He won 4 best paper awards of international conferences, IMCS Prize and 3 provincial science and technology advancement awards. He supervised 5 PhD students and more than 70 master students. He is the founding President of International Membrane Computing Society (IMCS), IET Fellow, IET Fellow Assessor, IEEE Senior member, and Managing Editor of Journal of Membrane Computing (Springer). He serviced ACMC2013 and ACMC2017 as conference chairs, PC member of tens of international conferences, and also services ACMC as Steering Committee member and co-chair of PC, and hundreds of international journals as a reviewer. 6
Part 2 Regular Papers 7
1pHmiBQM M/ MHvbBb Q7 HQbb M/ rbi2 BM i?2 T`Q+2bbBM; Q7 `T2b22/ QBH 6HBM CBM;1- >m uM;1- EM; w?Qm1- >m[BM; ZB2- M/ CBM w?Qm3 1a+?QQH Q7 Ji? M/ *QKTmi2`- .2p2HQTK2Mi ai`i2;v AMbiBimi2 Q7 `2b2`p2 Q7 7QQ/ M/ Ki2`BH- qm?M SQHvi2+?MB+ lMBp2`bBivqm?M 9jyykj- *?BM 2a+?QQH Q7 1+QMQKB+b M/ JM;2K2Mi- qm?M SQHvi2+?MB+ lMBp2`bBivqm?M 9jyykj- *?BM 3+QHH2;2 Q7 6QQ/ a+B2M+2 M/ 1M;BM22`BM;- qm?M SQHvi2+?MB+ lMBp2`bBivqm?M 9jyykj- *?BM &DBM;NjkR9d8y!;KBHX+QK->mvky!RejX+QK' #bi`+iX AM Q`/2` iQ K22i T2QTH2Ƕb `2[mB`2K2Mib 7Q` pBbBQM M/ ibi2 M/ BM+`2b2 i?2 K`F2i b?`2 Q7 `T2b22/ QBH- `T2b22/ QBH T`Q+2bbBM; 2Mi2`T`Bb2b Q7i2M Qp2`@T`Q+2bb Q` mM/2`@T`Q+2bb `T2b22/- `2bmHiBM; BM Mm@ i`B2Mi HQbb M/ mMM2+2bb`v rbi2X 6`QK i?2 T2`bT2+iBp2 Q7 HQbb M/ rbi2 BM `T2b22/ QBH T`Q+2bbBM;- M 2pHmiBQM K2i?Q/ 7Q` 2pHmiBM; `T2b22/ QBH T`Q+2bbBM; BM/mbi`v Q` 2Mi2`T`Bb2 T`Q+2bbBM; #v /i MHvbBb rb T`Q@ TQb2/X h?2 bT2+B}+ +QMi2Mi Q7 i?2 K2i?Q/ Bb #b2/ QM i?2 T`Q/m+iBQM /i Q7 `T2b22/ QBH Q7 /Bz2`2Mi b+H2b- 2[mBTK2Mib M/ T`Q+2bb2b Q7 p`BQmb 2Mi2`T`Bb2b BM i?2 +QmMi`v- M/ i?2 }iiBM; bBKmHiBQM KQ/2H Q7 HQbb M/ rbi2 BM i?2 T`Q+2bbBM; Q7 `T2b22/ QBH Bb 2bi#HBb?2/- i?2`2#v 2bi#HBb?@ BM; `T2b22/ QBH T`Q+2bbBM; 2pHmiBQM bvbi2Kc "b2/ QM i?2 2pHmiBQM Q7 `T2b22/ QBH T`Q+2bbBM; BM/mbi`v M/ 2Mi2`T`Bb2 T`Q/m+iBQM /i- irQ@H2p2H KmHiB@Q#D2+iBp2 QTiBKBxiBQM KQ/2H rb +QMbi`m+i2/X h?2 bBK@ mHiBQM KQ/2H Q7 T`Q+2bbBM; HQbb M/ rbi2 T`Q/m+2/ #v `T2b22/ QBH T`Q+2bbBM; BM/mbi`v rb BKT`Qp2/- M/ i?2 2pHmiBQM `2bmHi rb }MHHv Q#iBM2/X h?Bb 2pHmiBQM K2i?Q/ 7Q` i?2 7QQ/ BM/mbi`v T`QpB/2b T`+iB@ +H ;mB/M+2 7Q` i?2 `T2b22/ QBH T`Q+2bbBM; T`Q+2bb BM i?2 T`Q+2bbBM; Q7 `T2b22/ QBHX E2vrQ`/b, S`Q+2bbBM; Q7 `T2b22/ QBH- GQbb M/ rbi2- 6BiiBM; bBKm@ HiBQM KQ/2H- hrQ@Hv2` KmHiB@Q#D2+iBp2 QTiBKBxiBQM KQ/2H- 1pHmiBQM K2i?Q/ R AMi`Q/m+iBQM b QM2 Q7 i?2 KQbi QBH@T`Q/m+BM; QBH +`QTb- `T2b22/ THvb M BKTQ`iMi `QH2BM i?2 bmTTHv Q7 2/B#H2 QBH BM *?BMX ++Q`/BM; iQ i?2 BM/mbi`v /i `2H2b2/ #v i?2 +QmMi`v- i?2 `T2b22/ QBH +QMbmKTiBQM Q7 i`/BiBQMH 2/B#H2 QBH BM *?BM Bb eX38e KBHHBQM iQMb- ++QmMiBM; 7Q` k3X8W Q7 i?2 iQiH 2/B#H2 p2;2i#H2 QBHXAiBb *Q``2bTQM/BM; mi?Q`X 8
k GQbb M/ rbi2 BM i?2 T`Q+2bbBM; Q7 `T2b22/ QBH i?2 b2+QM/ H`;2bi +QMbmK2` Q7 QBH BM *?BM- M/ Bi Bb i?2 2/B#H2 QBH K`F2i BM *?BMX Ai ?b TBpQiH TQbBiBQM (RĜj)X h?2 T`Q+2bbBM; Q7 `T2b22/ QBH Bb BM i?2 KB//H2 Q7 i?2 `T2b22/ BM/mbi`v +?BM- r?B+? Bb +QMM2+i2/ rBi? i?2 `T2b22/ T`Q/m+iBQM HBMF mTbi`2K Q7 i?2 `T2b22/ BM/mbi`v +?BM- M/ i?2M +QMM2+i2/ rBi? i?2 `T2b22/ QBH K`F2i +QMbmKTiBQM HBMF /QrMbi`2K Q7 i?2 `T2b22/ BM/mbi`v +?BM(9)X h?2`27Q`2- i?2 `Bb2 M/ 7HH Q7 i?2 `T2b22/ QBH T`Q+2bbBM; BM/mbi`v Bb `2Hi2/ iQ i?2 `Bb2 M/ 7HH Q7 i?2 `T2b22/ BM/mbi`v iQ +2`iBM 2ti2MiX 6Q` HQM; iBK2- +QMbmK2`b ?p2 +?Qb2M i?2 TT2`@ M+2- ibi2 M/ Mmi`BiBQMH pHm2 Q7 `T2b22/ QBH- #mi i i?2 iBK2 Q7 Tm`+?b2- ii2MiBQM ?b #22M 7Q+mb2/ KQ`2 QM i?2 TT2`M+2 M/ ibi2 Q7 `T2b22/ QBHX 6Q` i?Bb `2bQM- BM Q`/2` iQ biBb7v T2QTH2Ƕb pBbmH M/ ibi2 `2[mB`2K2Mib- M/ HbQ iQ BM+`2b2 i?2 K`F2i b?`2 Q7 `T2b22/ QBH- `T2b22/ QBH T`Q+2bbBM; 2Mi2`@ T`Bb2b Q7i2M Qp2`@ Q` mM/2`@T`Q+2bb `T2b22/- `2bmHiBM; BM i?2 H+F mMM2+2bb`vQ7 Mmi`BiBQM M/ rbi2(8- e)X AM 7+i- i?2 2t+2bbBp2 Q` BMbm{+B2Mi T`Q+2bbBM; Q7 `T2b22/ rBHH MQi QMHv `2bmHi BM HQr vB2H/- #mi HbQ H`;2 HQbb Q7 Mmi`B2Mib BM i?2 `T2b22/ QBH(d- 3)X h?2`2@ 7Q`2- T`Q+2bbBM; 2Mi2`T`Bb2b `2 T`iB+mH`Hv +`BiB+H iQ i?2 T`QT2` T`Q+2bbBM; Q7 `T2b22/ QBH- M/ ?Qr iQ FMQr r?2i?2` i?2 T`Q+2bbBM; Q7 `T2b22/ QBH T`Q+2bbBM; BM T`Q+2bbBM; 2Mi2`T`Bb2b Bb KQ/2`i2 T`Q+2bbBM;X h?2`27Q`2- i?Bb TT2` T`QTQb2b M 2pHmiBQM K2i?Q/ 7Q` HQbb M/ rbi2 BM T`Q+2bbBM; Q7 `T2b22/ QBHX 6B`biHv- i?2 2pHmiBQM bvbi2K M/ }iiBM; bBKmHiBQM KQ/2H Q7 `T2b22/ QBH T`Q+2bbBM; HBMF HQbb M/ rbi2 `2 +QMbi`m+i2/(NĜRR)- M/ i?2M #b2/ QM i?2 T`Q/m+iBQM /iQ7 `T2b22/ QBH T`Q+2bbBM; BM/mbi`v M/ 2Mi2`T`Bb2b irQ@Hv2` KmHiB@Q#D2+iBp2 QTiB@ KBxiBQM KQ/2HX h?2 +QK#BMiBQM Q7 i?2 irQ `2bmHib BM i?2 2pHmiBQM `2bmHib M/ QTiBKBxiBQM b+?2K2b Q7 i?2 `T2b22/ QBH T`Q+2bbBM; 2Mi2`T`Bb2b iQ #2 2pHmi2/- r?B+? T`QpB/2b i?2Q`2iB+H #bBb 7Q` i?2 KQ/2`i2 T`Q+2bbBM; Q7 `T2b22/ QBH BM i?2 +QmMi`v(RkĜR9)X k _2Hi2/ +QM+2Tib M/ /2}MBiBQMb kXR "bB+ +QM+2Ti q?2i?2` i?2 T`Q+2bbBM; Q7 `T2b22/ QBH Bb 2t+2bbBp2 Q` BMbm{+B2Mi +M #2 `2@ ~2+i2/ #v i?2 iQiH T`Q/m+iBQM `i2 M/ iQiH HQbb `i2 Q7 T`Q+2bb2/ `T2b22/ QBH BM `T2b22/ QBH T`Q+2bbBM; 2Mi2`T`Bb2bX q?2M i?2 iQiH T`Q/m+iBQM `i2Q7 T`Q+2bbBM; 2Mi2`T`Bb2 Bb Km+? HQr2` i?M i?2 bQ+BH p2`;2- i?2M i?Bb T`Q+2bbBM; 2Mi2`T`Bb2b ?p2 i?2 TQbbB#BHBiv Q7 Qp2`@T`Q+2bbBM;X h?2`2 `2 KMv 7+iQ`b i?i +M z2+i i?2 iQiH T`Q/m+iBQM `i2 M/ iQiH HQbb `i2 Q7 T`Q+2bbBM; 2Mi2`T`Bb2bX h?2b2 BM~m2M+BM; 7+iQ`b `2 KBMHv /BpB/2/ BMiQ `T2b22/ `r Ki2`BHb- T`Q@ +2bbBM; HBMFb- T`Q+2bbBM; 2[mBTK2Mi M/ T`Q+2bbBM; b+H2 M/ Qi?2`bX h?2`27Q`2- i?Bb TT2` BMi2M/b iQ 2bi#HBb? `T2b22/ QBH T`Q+2bbBM; HQbb M/ rbi2 2pH@ miBQM bvbi2K iQ 2tTHQ`2 r?2i?2` i?2 `T2b22/ QBH T`Q+2bbBM; 2Mi2`T`Bb2b ?p2 mM/2`;QM2 KQ/2`i2 T`Q+2bbBM;X h?2 T`Q/m+iBQM `i2 M/ HQbb `i2 Q7 `T2b22/ QBH Bb M BKTQ`iMi 7+iQ` `2@ ~2+iBM; i?2 T`Q/m+iBQM 2{+B2M+v Q7 `T2b22/ QBH T`Q+2bbBM; 2Mi2`T`Bb2bX M/ i?2 9
h?2 T`Q+2bbBM; Q7 `T2b22/ QBH N AM `2+2Mi v2`b- i?2 T`Q+2bbBM; i2+?MQHQ;v Q7 `T2b22/ QBH ?b #22M BKT`Qp2/ M/ i?2 2[mBTK2Mi ?b #22M mT/i2/X h?2 bmT2`pBbBQM Q7 p`BQmb T`Q+2bb2b ?b #22M BM TH+2- #mi KMv T`Q+2bbBM; 2Mi2`T`Bb2b BM i?2 `T2b22/ QBH T`Q+2bbBM; BM/mbi`v ?p2 Qp2`@ Q` mM/2`@T`Q+2bb2/ `T2b22/-G2/ iQ Mmi`B2Mi HQbb M/ mM@ M2+2bb`v rbi2X h?2`27Q`2- Bi Bb m`;2Mi iQ bmKK`Bx2 ?BbiQ`B+H 2tT2`B2M+2X AM i?2 7mim`2- r2 rBHH 7m`i?2` BKT`Qp2 i?2 2pHmiBQM KQ/2H #v +QHH2+iBM; T`Q+2bb@ BM; /i Q7 KQ`2 p`B2iB2b Q7 `T2b22/ QBH T`Q+2bbBM; 2Mi2`T`Bb2b- bm+? b b+H2- `T2b22/ KQ/2H- T`Q+2bbBM; 2[mBTK2Mi- `2;BQM- T`Q+2bbBM; i2+?MQHQ;v- `T2b22/X _2H2pMi BM7Q`KiBQM QM `T2b22/ QBH T`Q+2bbBM; 2Mi2`T`Bb2b rBi? KQ`2 /BK2M@ bBQMb bm+? b Q`B;BM M/ [mHBiv- +QMiBMm2 iQ 2tTM/ M/ QTiBKBx2 i?Bb 2pHmiBQM bvbi2K- iF2 i?2 T`Q;`2bb Q7 b+B2M+2 M/ i2+?MQHQ;v b i?2 /`BpBM; 7Q`+2- M/ T`Q@ KQi2 i?2 M2r H2T Q7 `T2b22/ BM/mbi`v b i?2 ;QH- iQ KBMiBM i?2 b72iv Q7 MiBQMH 2/B#H2 QBH bmTTHvX JF2 M2r +QMi`B#miBQMbX +FMQrH2/;K2MibX h?Bb rQ`F rb bmTTQ`i2/ #v i?2 a+B2M+2 M/ h2+?MQH@ Q;v _2b2`+? S`QD2+i Q7 >m#2B S`QpBM+BH .2T`iK2Mi Q7 1/m+iBQM U:`Mi LQX .kyRNRey9V M/ bm#T`QD2+i Q7 i?2 LiBQMH E2v _2b2`+? M/ .2p2HQTK2Mi S`Q@ ;`K Q7 *?BMU:`Mi LQX kyRdu6.y9yRRyk@yk VX _272`2M+2b RX _?KM L 6- :2MBb C- .B`TM - 2i H JQ/B}+iBQM Q7 /`v ;`BM T`Q+2bbBM; 7Q` `B+2 Mmi`BiBQM T`Q/m+2/X APS *QM72`2M+2 a2`B2b 1`i? M/ 1MpB`QMK2MiH a+B2M+2X kyR3, R8dX kX qm uw?B ssm 6- 2i H, _2b2`+? QM i?2 S`Q+2bb Q7 _T2b22/ _2}MBM; BM *?BMX :`BM a+B2M+2 M/ h2+?MQHQ;vX kyR3- 9jURkV, eR@e9X jX *?2M w- .2M; uw?M; a- >m G- qM; s, _2b2`+? QM i?2 +m``2Mi bBimiBQM M/ +QmMi2`K2bm`2b Q7 HQbb M/ rbi2 BM ;`BM T`Q+2bbBM; BM *?BMX :`BM a+B2M+2 M/ h2+?MQHQ;vX kyR3- 9jUy8V, Ne@NNXX 9X sB2 >- hM h- GmQ Z- uM; G- *?2M :, *m``2Mi aiimb M/ PTTQ`imMBiB2b Q7 _T2 AM/mbi`v .2p2HQTK2MiX*`QT _2b2`+?X kyR3-jkUy8V,9jR@9jeX 8X GBm *- >mM; C- G2M; "- 62M; w- GB C, *m``2Mi biimb- /2p2HQTK2Mi /BH2KK M/ bm;;2biBQMb Q7 `T2b22/ BM/mbi`v BM *?BMX CQm`MH Q7 *?BM ;`B+mHim`H lMBp2`@ bBivXkyRdkkURkV, kyj@kRyX eX :mQ u- uM; uamM C, h?2 aiimb ZmQ M/ *QmMi2`K2bm`2b Q7 i?2 .2p2HQTK2Mi Q7 _T2 AM/mbi`v BM *?BMX ;`B+mHim`H 1+QMQKvX kyReUydV,99@9eX dX Zm q- CBM; u- _2M *, h?Qm;?ib M/ am;;2biBQMb QM i?2 .2p2HQTK2Mi Q7 _T2 S`Q/m+iBQM BM >2MM S`QpBM+2X >2MM ;`B+mHim`2X kyRN URjV, Rj@R9X 3X qM; >- GB u, wQQKHBQMǶb Qp2`HH bQHmiBQM 7Q` #mBH/BM; ;`BM T`Q+2bbBM; BMi2HHB;2Mi 2M;BM22`BM;X ;`B+mHim`H J+?BM2`v ZmHBiv M/ amT2`pBbBQMX kyR3 URyV,9R NX *?2M u, *Qbi JM;2K2Mi S`Q#H2Kb M/ *QmMi2`K2bm`2b Q7 :`BM S`Q+2bbBM; 1Mi2`T`Bb2bX 6BMM+2 M/ ++QmMiBM;- kyR3 UR3V, Rkj@Rk8X RyX J2B s- 62M; ww?2M; u, MHvbBb Q7 i?2 dz/Bz2`2MiBiBQMǴ /2p2HQTK2Mi KQ/2H Q7 `T2b22/ QBH T`Q+2bbBM; BM/mbi`vX *?BM PBHb M/ 6ibkyR8- 9y UyeV, R@eX RRX S2M; aqm q, ZmMiBiiBp2 M/ [mHBiiBp2 MHvbBb Q7 i2 b22/ QBH /mHi2`iBQM #b2/ QM `2;`2bbBQM 2[miBQMX CQm`MH Q7 i?2 *?BM2b2 *2`2Hb M/ PBHb bbQ+BiBQM- kyRN, R@dX 16
Ry GQbb M/ rbi2 BM i?2 T`Q+2bbBM; Q7 `T2b22/ QBH RkX ZBM;L:- ;`B+mHim`H T`Q/m+ib T`Q+2bbBM; +?`+i2`BbiB+b M/ [mHBiv 2pHm@ iBQM- CQm`MH Q7 AMi2;`iBp2 ;`B+mHim`2- oQHmK2 Rd- Abbm2 8- kyR3- S;2b Nd8@NdeX RjX uBM; sm- "BQ w?M;- GBM;tBM w?M;- i2+?MB+H 2{+B2M+v 2pHmiBQM bvbi2K 7Q` p2;2i#H2 T`Q/m+iBQM BM *?BM- AM7Q`KiBQM S`Q+2bbBM; BM ;`B+mHim`2- oQHmK2 8- Abbm2 jkyR3- S;2b j98@j8jX R9X qm?M lMBp2`bBiv Q7 GB;?i AM/mbi`vX .i MHvbBb bvbi2K M/ K2i?Q/ 7Q` ;`BM T`Q+2bbBM; HQbb, *?BM- *LkyR3Ry9y393kXk(S)XkyR3@yN@k8X 17
A Learning Spiking Neural P System and Its Applications to Classification Problems Xihai Zhang, Haina Rong*, Gexiang Zhang, Pirthwineel Paul, Zhibing Yu, and Xiantai Gou School of Electrical Engineering, Southwest Jiaotong University, Chengdu, 61003, China E-mail: [email protected] Abstract. Spiking neural P systems (SN P systems), as an important branch of the third generation neural network models, has been applied in many real-life areas. Exploration of solutions for pattern recognition problems by using the SN P systems is a challenging and ongoing topic. This paper proposes learning SN P systems (LSN P systems) to solve supervised classification problems. This is the first attempt to construct LSN P systems to show great potential for handling real-life classification problems. LSN P systems are designed by using weighted fuzzy SN P systems, a multi-layer network structure with adaptive weights adjustment rule and a selection method of output neurons, and ascending dimension techniques for non-linear classification problems. Experiments conducted on the problems in the University of California, Irvine (UCI) machine learning repository show the feasibility and effectiveness of LSN P systems. Keywords: Spiking neural P systems ·Learning spiking neural P systems ·Supervised learning ·Adaptive weight adjustment rule. 1 Introduction Artificial neural networks, as one of the most important tools in artificial intelligence (AI), have been developed for more than sixty years since the introduction of perceptron linear algorithm[1]. With the development of neural networks, many network models have been proposed to achieve pattern recognition problems, such as the first generation neural networks represented by McCulloch - Pitts neurons [2] and Hopfield Neural Network (HNN) [3], the second generation neural networks represented by Back Propagation Neural Network (BPNN) [4] and Extreme Learning Machine (ELM) [5], the third generation neural networks represented by Spiking Neural Networks (SNNs) [6] and Pulse Coupled Neural Network (PCNN) [7]. It has been widely used in various fields, such as image identification [8], voice recognition [9], autonomous vehicles [10], medical diagnosis [11]. However, the first generation and the second generation neural networks also have some disadvantages. The output of the first generation neural networks must be digital. This weakness limits the application of these networks only to 18
2 X. Zhang et al. boolean functions [12–14]. One of the most outstanding characteristics of the second generation neural networks is that it can process the continuous input and output values, but the second generation neural networks adopt frequency coding which is not suitable in some biological neurons [12–14]. The third generation neural networks represented by SNNs in which the coding schemeisa kindoftime coding. In another word, the information of input data is encoded by generating spikes at different time, which is similar to human neural activity. However, there is only one type of neuron in SNNs, i.e., spiking neurons [6]. In real neurobiology research, not only there exist spiking neurons in our brain but also have other types of neurons, like astrocytes [15], oligodendrocyte [16], etc. Membrane computing models (usually called P systems) are nature-inspired models, proposed by Gh. P˘aun [17]. These models are abstracted fromthe structure and the functioning of the biological cells, organs, and colonies. In the last few decades, many variants of P systems have been introduced, such as cell-like Psystems [17], tissue-like P systems [18], neural-like P systems [19]. These models also have been used to solve problems in theory and applications [20–23]. In recent years, the SN P systems have gained popularity because of its similarities with SNNs. The SN P systems can be regarded as a combination of SNNs and P systems. A great deal of work has been done on the theoretical aspects of SN P systems and plenty of other variants with different biological phenomena, such as SN P systems with astrocytes [24], SN P systems with anti-spikes [25], SN P systems with structural plasticity [26] have been proposed. The real-life applications of SN P systemshavebeeninskeletonizingimages [27], combinatorial optimization [28], fault diagnosis [29, 30], decoder design [31], etc. Also, some researchers have investigated the feasibility of pattern recognition problemsby using the SN P systems in [32, 33]. Although they have explored the models of pattern recognition by using SN P systems in different aspects, these models have some drawbacks such as the structure of the network is not universal and the accuracy of the model also needs someimprovements. In the field of membrane computing, the attempt to extend P systemsto achieve pattern recognition is a challenging and ongoing research topic. However, the papers about SN P systems with learning ability are very rare. The learning ability in SN P systemsisaveryimportant aspect to expand the real-life application. Under these circumstances, this paper proposes a design strategy of neural systems capable of solving pattern recognition problems. The proposed learning model is unlike the models in [32, 33], it archives the pattern recognition problems in an explanatory network structure and can be used to recognize some real-life problems. The learning SN P systems (LSN P systems) are organized in a multi-layer network structure in which the properties of the neurons in Weighted Fuzzy Spiking Neural P Systems (WFSN P systems) and Taylor theoremare considered comprehensively. In order to make the model fit better with the streaming inputs, the Widrow-Hoff learning law is employed to adjust weights during the iterative learning process. Moreover, the Taylor series expansion is used to generate higher-dimensional information and these higher dimensional informations transformnon-linearly separable data into linearly separable, and a 19
A LSN P System and Its Applications to Classification Problems 3 network in the framework of WFSN P systems with Widrow-Hoff learning algorithmhas been introduced for identification of the pattern recognition problem. In this manner, the pattern recognition problemcan be solved perfectly in LSN Psystems. Furthermore, it is the first known attempt to construct a supervised learning algorithmfor solving pattern recognition problems using the WFSN P systems, and the experimental results in the UCI machine learning repository illustrate that the model is powerful and better than BPNNs and SNNs in the performance of classification. In this paper, we not only construct a new supervised learning algorithmfor multilayer networks in the framework of membrane computing but also expand the scope of membrane computing models in solving real-world problems. The remainder of this paper is organized in the following way. Section 2 recalls the WFSN P systems briefly. Section 3 presents the proposed LSN P systems in detail and use several simple cases to illustrate how to achieve the function of learning in the LSN P systems. Experimental results are described in Section 4. Concluding remarks are given in Section 5. 2 WFSN P Systems In this section, we introduce the WFSN P systems and its advantages in construcing the LSN P systems. Definition 1. The WFSN P systems of degree m(≥1) is a construct of the form [34]: Π=(O,Np,N r,syn,IN,OUT) where (1) O={a}is the singleton alphabet and ais called spike. (2) Np={σp1,σ p2, ..., σpm}is proposition neurons set. The fuzzy proposition within the fuzzy knowledge base is associated with each proposition neuron σpi,1 ≤i≤m. Every proposition neuron σpi has the formσpi = (αi,−→ ωi,λ i,ri)where a)αi∈[0,1] is the potential value of pulse in the proposition neuron σpi, αiis the fuzzy truth value of the proposition for each proposition neuron σpi. b)−→ ωi=(ωi1,ω i2, ..., ωisj) is the output weight vector for each proposition neuron σpi,whereeachωij ∈[0,1](1 ≤j≤sj) is the weight fromσpi to σrj and sjis the number of rule neurons in the next layer. c)riis a finite set of firing/spiking rules of the formE/aα→aα;d,where α∈(0,1] and d∈N.Eis the firing condition where E={α≥λi}.It means that if α≥λi, then the firing rules will be used. λi∈[0,1) is calledthethresholdoffiringrule. (3) Nr={σr1,σ r2, ..., σrn}is rule neurons set, the weighted fuzzy production rule in fuzzy knowledge base is associated with each rule neuron σrj,1≤ j≤n. For every rule neuron σrj has the formσrj =(αj,γ j,−→ vj,τ j,rj)where 20
4 X. Zhang et al. a)αj∈[0,1]isthepotentialvalueofpulseintheruleneuronσrj. b)γj∈[0,1] is the certain factor. It represents the strength of belief in the weighted fuzzy production rule with rule neuron σrj. c)−→ vj=(vj1,v j2, ..., vjti) is the output weight vector for each rule neuron σrj,whereeachvji ∈[0,1](1 ≤i≤ti) is the weight fromσrj to σpi and tiis the number of proposition neurons in the next layer. d)rjis a finite set of firing/spiking rules of the formE/aα→aβ;d,where α∈(0,1], β∈(0,1], d∈Nand E={α≥τj}is the firing condition. It means that if α≥τj, then the firing rule can be used, where τj∈[0,1) is called the threshold of firing rule. (4) syn ⊆(Np×Nr)∪(Nr×Np) represents the synaptic connections between proposition neurons and rule neurons. The connection between proposition neurons and proposition neurons(or rule neurons and rule neurons) is not allowed in the WFSN P systems. (5) IN,OUT ⊆Np, i.e., the input neurons and output neurons are all proposition neurons. There are two types of neurons in the WFSN P systems, one is proposition neurons and the other is rule neurons. For different neurons, the output value is totally different. In the following, the rules of two types of neurons are discussed. For proposition neurons, when the firing condition E={α≥λi}is satisfied, then the firing rule E/aα→aα;dcan be applied. There are two situations in the proposition neurons: (1) If the spike arrives in proposition neurons at different time, then the proposition neurons will judge whether the firing condition is satisfied separately. If it is satisfied, then the firing rule will be applied and the output value of potential is α⊗ω,where⊗is multiplication operator of fuzzy truth values and ωis output weight of proposition neuron, otherwise the firing rule will not be used. (2) If the spike arrives at the sametime, then the proposition neurons will use a logical operator to judge whether the firing condition is satisfied. The logical “OR” operator (∨) will be used to estimate the potential values of spikes received fromthe predecessor neurons. For example, as shown in Fig.1(a), if a proposition neuron receives a series of potential values of spikes at the sametime, then the potential value will be αin =x1∨x2∨... ∨xk.Sothe environment will receive the potential αout =(x1∨x2∨... ∨xk)⊗ω. For rule neurons, when firing condition E={α≥τj}is satisfied, then the firing rule E/aα→aβ;dcan be applied. There are also two situations in the rule neurons: (1) If the spikes arrive in rule neuron at different time, then the rule neurons will judge whether the firing condition is satisfied separately. If it is satisfied, then the firing rule will be used and the output value of the potential is (αv)⊗γ, where is division operator of fuzzy truth values, vis output weight of rule neuron and γis certain factor, otherwise the firing rule will not be used. 21
A LSN P System and Its Applications to Classification Problems 5 (2) If the spikes arrive at the sametime, then the rule neurons use logical operator to judge whether the firing condition is satisfied. The addition operator “⊕” is used to calculate the potential values of spikes received fromthe predecessor neurons. For example, as in Fig.1(b) , if a rule neuron receives a series of potential values of spikes at the sametime, then the potential value will be αin =x1⊕x2⊕... ⊕xk. So the environment receives the value βout =((x1⊕x2⊕... ⊕xk)v)⊗γ. · S [ [ [ N \ \ \N (a) proposition neurons · U [ [ [ N \ \ \N (b) rule neurons Fig. 1. Two types of neurons Fromthe above introduction we know that the WFSN P systemsintegrate the advantages of SN P systems and fuzzy logic, i.e., the model not only can process information in a distributed and parallel manner but also can perform operations on real numbers by introducing fuzzy logic [35]. These properties greatly broaden the application of the WFSN P systemsandmake it feasible to solve problems of pattern recognition. One such model has been discussed in [33] where the adjustment of the weights in the network is done by using the Widrow-Hoff learning law. Although the model in [33] only analyzes the method of changing weights and is not used to solve real-life problems. Moreover, its achievements greatly expand the perspective of researchers and provide a feasible principle of weight adjustment. Inspired by the excellent performance of WFSN P systems, this paper proposes a novel network to solve classification problems in the framework of WFSN Psystems. Unlike past studies which only consider the activity of individual neurons [37, 38], this model takes into account the activity of the single neuron in the prefrontal cortex (PFC), which is the higher-order brain structures and has an impact in planning complex cognitive behavior, decision making and moderating social behavior [39]. The experiment in [40] shows that the PFC can mix selectivity in complex cognitive tasks. It means that the neurons in PFC can obtain high-dimensional information by non-linear mixed encoding and the high-dimensional information can help us to make a decision. The LSN P systems are proposed based on the above considerations mentioned above. 22
6 X. Zhang et al. 3 LSN P Systems In this section, we introduce the structure of LSN P systems. The learning process and two examples (OR-problem,XOR-problem) are introduced to explain the working of LSN P systems. 3.1 The structure of LSN P systems The network architecture consists of a feedforward network of proposition neurons and rule neurons with different spiking rules and firing conditions, as shown in Fig.2. The neurons in the network generate a new potential value when the incoming potential crosses the firing condition. Depending on the special style of code found in the brain and the WFSN P systemswithmore biological characteristics, it is reasonable to combine these two points. The learning system based on ΠWFSN P systems is of the following form: Π=(A, σ1 p1, ..., σ1 pk,σ3 p1,σ5 p1,σ2 r1, ..., σ2 rn,σ4 r1, ..., σ4 rn,,syn,IN,OUT) where: (1) A={a}is the singleton alphabet(ais called spike). (2) For each proposition neuron ihave the formσh pi =0,wh ij,λ h i,rh i,whereh is the label of the layers in the network. a) 0 denotes that there is no potential value of pulse in all proposition neurons. b) The weights between the proposition neurons and rule neurons are of the formw1 ij(i=1, ...k, j =1, ..., n)=rand(0,1) and w3 1j(j=1, ..., n)=1. The process of learning is to adjust w1 ij to find a set of weights with the highest fitness. c) The set of rules rh iis firing/spiking rule of formr1 i:E1/aαi→aαi(i= 1,...,k−1), where E1=αi≥λ1 iand λ1 i(i=1, ..., k) = 0. The last neuron is called bias neuron and have the formr1 k:E1/a →a.The function of bias neuron is discussed in the next subsection; r3 1:E3/ao→ ao,whereE3=o≥λ3 1,λ3 1= 0 and o=θ1∨θ2∨... ∨θn. (3) Each rule neuron has the formσk rj =0,1,1,τk j,rk j,wherekis the label of thelayersinthenetwork. a) 0 denotes that there is no potential value of pulse in the rule neurons. b) 1 denotes that the certain factor in the rule neurons. c) The weights between the rule neurons and proposition neurons are always 1. In another word, the weights in rule neurons do not participate in the weight adjustment process. d) The spiking rules of σ2 r1, ..., σ2 rn have the formr2 j(j=1,2...n):E2/aθj→ aθj,whereE2={θj≥τ2 j},τ2 j(j=1,2, ..., n)=0andθj=(w1j⊗α1)⊕ (w2j⊗α2)⊕...⊕(wkj ⊗αk); the neurons σ4 r1,σ4 r2, ..., σ4 rn have the spiking rules r4 1:E4 j/aθj→a;dj,whereE4 j={θj≥τ4 j}and τ4 j(j=1,2, ..., n)= o.Itmeans that only the neurons with the maximumpotential value of pulse in the previous layer of rule neurons will be activated in this layer. 23
A LSN P System and Its Applications to Classification Problems 7 (4) syn ={(σ1 p1,σ2 r1),(σ1 p1,σ2 r2), ..., (σ1 pk,σ2 rn),(σ2 r1,σ3 p1),(σ2 r2,σ3 p1), ..., (σ2 rn,σ3 p1), (σ3 p1,σ4 r1),(σ3 p1,σ4 r2), ..., (σ3 p1,σ4 rn),(σ4 r1,σ5 p1),(σ4 r2,σ5 p1), ..., (σ4 rn,σ5 p1)} (5) IN ={σ1 p1,σ1 p2, ..., σ1 pk},OUT ={σ5 p1}. (DLĺDL(DLĺDL(DLĺDL(DLPĺDLP (DĮĺDĮ(DĮĺDĮ(DĮNĺDĮN (QFRGLQJE\DVFHQGLQJ GLPHQVLRQ (DșQĺDșQ (DșĺDș (DșĺDș Z (DRĺDR Z Q Z Z Z Q Z NQ Z N Z N Z U DĺD (DșĺD (DșQĺDQ Q (DșĺD S ı S ı S ı PS ı S ı S ı SN ı U ı U ı QU ı S ı ı U ı QU ı S ı Fig. 2. The structure of learning model 3.2 The learning process of the LSN P systems In order to process the pattern recognition problemby using the LSN P systems, we assumethat: 24
8 X. Zhang et al. (1) The LSN P systemΠis employed to deal with the learning problem. (2) The operation of normalization of input data has been processed before entering the systemΠ. (3) The parameters of LSN P systems are known, like the weights, thresholds and certainty factor, etc., i.e., the LSN P systems have been initialized. The LSN P systemcontains six layers of neurons, each layer in the system has different function. The first layer is the input layer which consists of the neurons σ0 p1,σ0 p2, ..., σ0 pm. The input data is fed into the systemthrough these neurons. The neurons σ1 p1,σ1 p2, ..., σ1 pk (k>m)compose the second layer. The function of this layer is to acquire higher dimensional information. Fromthe biological phenomenons, several scientists have found that the decision making in our brain is through higher-dimensional information rather than the samedimensional information by sensory organs [40]. The most obvious advantage of higher-dimensional information is that it can transformnon-linearly separable data into linear separable. However, the real encoding schemeisalsonotclear so far [40]. Since all pattern recognition problems can be deemed as a problem of finding a smooth curve that meets the requirement of classification [41] and any smooth curve can be represented by a Taylor series. In this case, the Taylor series can be used to achieve the method of ascending dimension. The Taylor expansion can be described as follows: f(x1, ..., xn)=f(x10, ..., xn0)+(h1 ∂ ∂x1 +... +hn ∂ ∂xn )f(x10, ..., xn0) +... +1 k!(h1 ∂ ∂x1 +... +hn ∂ ∂xn )kf(x10, ..., xn0)+Rk+1 (1) where: (1) −→ x=(x10,...,x n0)isanypointonthecurvef(x1,...,x n); (2) hi=xi−xi0(1 ≤i≤n); (3) Rk+1 =1 (k+1)! (h1∂ ∂x1+...+hn∂ ∂xn)k+1f(x10+θh1,...,x n0+θhn), where θ∈(0,1). In the Equation.1, if the order of expansion is appropriate, then the Rk+1 can be ignored because this termis very close to zero. The constant term f(x10, ..., xn0) can be used by a neuron at the end of input data as a bias of the LSN P systems.Thebiasisveryimportant for learning system. If the bias termdoes not exist in the learning system,thismodel will be useless because it can not approach that curve more accurately. At last, it is not difficult to see that the value of the output is a linear combination of high-dimension data. So for somecomplex problems (linear indivisible), the Taylor series is a powerful tool to solve these problems. The third layer is a hidden layer, the synapses between the second and third layer have weights. The output spikes of last layer are multiplied by the weights and sumthe spikes present in the neurons in third layer. The next layer is a 25
A LSN P System and Its Applications to Classification Problems 15 020 40 60 80 100 Iterations 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0 Accuracy rate (a) Training set 010 20 30 40 50 60 70 1 2 3 prediction real (b) Testing set Fig. 5. The result in IRIS dataset 5 Concluding Remarks This article proposes a model named LSN P systems to deal with pattern recognition problem. In this paper, a feasible way to use P systemstosolvepattern recognition problemis proposed. In order to obtain the effectiveness of this model, the motivation, the description of algorithmand the experimental results are presented in the article. This work is inspired by several machine learning algorithmsandthemodelsofPsystems. Although this work is not the first attempt to construct a learning model by using SN P systemsandits variants, the results are gratifying and competitive when compared with other algorithms. Although moreworkneedstobedoneinordertobecompetitive 32
16 X. Zhang et al. with existing machine learning algorithms. One of the biggest advantages of the proposed model is that it combines the phenomena in biology with somemachine learning algorithmstomake a model having human-level performance in solving problems. Although this work is promising, two areas of this model need further improvement:Oneisforthemulti-classification problem,inthismodel the output pattern can be described as one against all [46]. But when the number of training set increases, the complexity of problems increase rapidly, making the problemof computing speed more prominent. In this condition, whether we can find a way to solve the multi-classification problemefficiently is a very important schemein this model. The second one is the way to regularize the network. As pointed out in [40] that nonlinear mixed selectivity is useful but also fragile. So the problem is to determine the degree of Taylor expansion or to add regularization itemsto the network. 6 Acknowledgment This work was supported by the National Natural Science Foundation of China (61972324, 61672437, 61702428), the Sichuan Science and Technology Program (2018GZ0185, 2018GZ0086), Artificial Intelligence Key Laboratory of Sichuan Province (2019RYJ06) and the postgraduate workstation in the State Grid Sichuan Electric Power Research Institute. References 1. Rosenblatt, F.:The perceptron: a probabilistic model for information storage and organization in the brain. Psychological Review 65(6), 386-408(1958). 2. McCulloch, W. S., Pitts, W.:A logical calculus of the ideas immanent in nervous activity. The Bulletin of Mathematical Biophysics, 5(4), 115-133(1943). 3. Hopfield,J. J.:Neural networks and physical systems with emergent collective computational abilities. Proceedings of the National Academy of Sciences,79(8), 2554- 2558(1982). 4. Rumelhart, D. E., Hinton, G. E., Williams, R. J.:Learning representations by backpropagating errors. Cognitive Modeling, 5(3), 1(1988). 5. Huang, G. B., Zhu, Q. Y., Siew, C. K.:Extreme learning machine: a new learning scheme of feedforward neural networks. Neural networks, 2, 985-990(2004). 6. Ghoshdastidar, S., Adeli, H.:Spiking neural networks. International Journal of Neural Systems, 19(4), 295-308(2009). 7. Johnson, J. L., Padgett, M. L.:PCNN models and applications. IEEE Transactions on Neural Networks, 10(3), 480-498(1999). 8. ElSawy, A., Hazem, E. B., Loey, M.:CNN for handwritten arabic digits recognition based on LeNet-5. In: International Conference on Advanced Intelligent Systems and Informatics pp. 566-575. Springer, Cham(2016). 9. Wu, C.:Discriminant-function-based minimum recognition error rate patternrecognition approach to speech recognition. Proceedings of the IEEE, 88(8), 1201- 1223(2000). 33
A LSN P System and Its Applications to Classification Problems 17 10. Prun, V.:Geometric filtration of classification-based object detectors in realtime road scene recognition systems.In: Eighth International Conference on Machine Vision pp.98750O. Barcelona(2015). 11. Sridar, K., Shanthi, D.:Web based medical diagnosis system using ann-arm for the diabetes mellitus. International Journal of Computers and Distributed Systems, 3(3), 15-20(2013). 12. Bohte, S. M., Kok, J. N.:Applications of spiking neural networks. Information Processing Letters, 6(95), 519-520(2005). 13. Maass, W.:Networks of spiking neurons: the third generation of neural network models. Neural Networks, 10(9), 1659-1671(1997). 14. Siddique, N., McDaid, L., Kasabov, N., Widrow, B.:Special issue: Spiking neural networks introduction, International Journal of Neural Systems. 20(6), v–vii(2010). 15. Ridet, J. L., Privat, A., Malhotra, S. K., Gage, F. H.:Reactive astrocytes: cellular and molecular cues to biological function. Trends in Neurosciences, 20(12), 570- 577(1997). 16. Bradl, M., Lassmann, H.:Oligodendrocytes: Biology and Pathology. Acta Neuropathologica, 119(1), 37-53(2010). 17. P˘aun, Gh.:Computing with membranes, Journal of Computer and System Sciences, 61(01), 108–143(2000). 18. Mart´ın-Vide, C., Pˇaun,Gh., Pazos, J., Rodr´ıguez-Pat´on, A.:Tissue P systems. Theoretical Computer Science, 296(2), 295-326(2003). 19. Ionescu, M., Pˇaun,Gh., Yokomori, T.:Spiking neural P systems. Fundamenta Informaticae, 71(2, 3), 279-308(2006). 20. Orellana-Mart´ın, D., Valencia-Cabrera, L., Riscos-N´unez, A., P´erez-Jim´enez, M. J., P systems with proteins: a new frontier when membrane division disappears. Journal of Membrane Computing, 1(1), 29-39(2019). 21. D´ıaz-Pernil, D., Guti´errez-Naranjo, M.A., Peng, H.:Membrane computing and image processing: a short survey. Journal of Membrane Computing, 1(1), 58-73(2019). 22. Orellana-Mart´ın, D., Valencia-Cabrera, L., Riscos-N´unez, A., P´erez-Jim´enez, M. J.:Minimal cooperation as a way to achieve the efficiency in cell-like membrane systems. Journal of Membrane Computing, 1(2), 29-39(2019). 23. Nash, A., Kalvala, S.:A P system model of swarming and aggregation in a Myxobacterial colony, Journal of Membrane Computing. 1(2), 103-111(2019). 24. Pan, L., Wang, J., Hoogeboom, H. J.:Spiking neural P systems with astrocytes. Neural Computation, 24(3), 805-825(2012). 25. Pan, L., Pˇaun, Gh.:Spiking neural P systems with anti-spikes. International Journal of Computers Communications & Control, 4(3), 273-282(2009). 26. Cabarle, F. G. C., Adorna, H. N., P´erez-Jim´enez, M. J., Song, T.:Spiking neural P systems with structural plasticity. Neural Computing and Applications, 26(8), 1905-1917(2015). 27. D´ıaz-Pernil, D., Pe˜na-Cantillana, F., Guti´errez-Naranjo, M. A.:A parallel algorithm for skeletonizing images by using spiking neural P systems. Neurocomputing, 115, 81-91(2013). 28. Zhang, G., Rong, H., Neri, F., P´erez-Jim´enez, M. J.:An optimization spiking neural P system for approximately solving combinatorial optimization problems. International Journal of Neural Systems, 24(05), 1440006(2014). 29. Wang, T., Zhang, G., Zhao, J., He, Z., Wang, J., P´erez-Jim´enez, M. J.:Fault diagnosis of electric power systems based on fuzzy reasoning spiking neural P systems. IEEE Transactions on Power Systems, 30(3), 1182-1194(2014). 34
18 X. Zhang et al. 30. Wang, T., Zhang, G., P´erez-Jim´enez, M. J., Cheng, J.:Application of weighted fuzzy reasoning spiking neural P systems to fault diagnosis in traction power supply systems of high-speed railways. Journal of Computational and Theoretical Nanoscience, 12(7), 1103-1114(2015). 31. Li, J., Huang, Y., Xu, J.:Decoder Design Based on Spiking Neural P Systems. IEEE Transactions on Nanobioscience, 15(7), 639-644(2016). 32. Song, T., Pan, L., Wu, T., Zheng, P., Wong, M. D., Rodr´ıguez-Pat´on, A.:Spiking neural P systems with learning functions. IEEE Transactions on Nanobioscience, 18(2), 176-190(2019). 33. Wang, J., Peng, H.:Adaptive fuzzy spiking neural P systems for fuzzy inference and learning. International Journal of Computer Mathematics, 90(4), 857-868(2013). 34. Wang, J., Shi, P., Peng, H., P´erez-Jim´enez, M. J., Wang, T.:Weighted fuzzy spiking neural P systems. IEEE Transactions on Fuzzy Systems, 21(2), 209-220(2012). 35. Zhang, G., P´erez-Jim´enez, M. J., Gheorghe,M.:Real-life applications with membrane computing. Springer, Berlin(2017). 36. Abbott, L F.:Lapique’s introduction of the integrate-and-fire model neuron. Brain Research Bulletin, 50(5), 303-304(1999). 37. Gerstner W, Kistler W M.:Spiking neuron models: Single neurons, populations, plasticity. Cambridge University Press, New York(2002). 38. Abbott L F.:Lapique’s introduction of the integrate-and-fire model neuron. Brain Research Bulletin, 50(5), 303-304(1999). 39. Yang, Y., Raine, A.:Prefrontal structural and functional brain imaging findings in antisocial, violent, and psychopathic individuals: a meta-analysis. Psychiatry Research: Neuroimaging, 174(2), 81-88(2009). 40. Rigotti, M., Barak, O., Warden, M. R., Wang, X. J., Daw, N. D., Miller, E. K., Fusi, S.:The importance of mixed selectivity in complex cognitive tasks. Nature, 497(7451), 585(2013). 41. Bishop, C. M.:Pattern recognition and machine learning. Springer, Berlin(2006). 42. Wang, Z. Q., Manry, M. T., Schiano, J. L.:LMS learning algorithms: misconceptions and new results on converence. IEEE Transactions on Neural Networks, 11(1), 47- 56(2000). 43. Bohte, S. M., Kok, J. N., La Poutre, H.:Error-backpropagation in temporally encoded networks of spiking neurons. Neurocomputing, 6, 17-37(2002). 44. Dora, S., Subramanian, K., Suresh, S., Sundararajan, N.:Development of a selfregulating evolving spiking neural network for classification problem. Neurocomputing, 171, 1216-1229(2016). 45. Taherkhani, A., Belatreche, A., Li, Y., Maguire, L. P.:A supervised learning algorithm for learning precise timing of multiple spikes in multilayer spiking neural networks. IEEE Transactions on Neural Networks and Learning Systems, 29(11), 5394-5407(2018). 46. Hsu, C. W., Lin, C. J.:A comparison of methods for multiclass support vector machines. IEEE Transactions on Neural Networks, ,13(2), 415-425(2002). 35
JmHiB@bi;2 bi`iB}2/ bKTHBM; 7Q` MiBQMH ;`BM T`Q+2bbBM; HQbb M/ rbi2 +2Mbmb w?Q uQ1- CBM;`QM; GBm1- EM; w?Qm1- >m[BM; ZB2- 6HBM CBM;1- M/ CBM w?Qm3 1a+?QQH Q7 Ji? M/ *QKTmi2`- .2p2HQTK2Mi ai`i2;v AMbiBimi2 Q7 `2b2`p2 Q7 7QQ/ M/ Ki2`BH- qm?M SQHvi2+?MB+ lMBp2`bBivqm?M 9jyykj- *?BM 2.2p2HQTK2Mi ai`i2;v AMbiBimi2 Q7 `2b2`p2 Q7 7QQ/ M/ Ki2`BH- qm?M SQHvi2+?MB+ lMBp2`bBivqm?M 9jyykj- *?BM 3a+?QQH Q7 6QQ/ a+B2M+2 M/ 1M;BM22`BM;- qm?M SQHvi2+?MB+ lMBp2`bBivqm?M 9jyykj- *?BM &jdReejNje![[X+QK' #bi`+iX AM Q`/2` iQ ++m`i2Hv 2biBKi2 M/ 2pHmi2 i?2 HQbb M/ rbi2 Q7 ;`BM T`Q+2bbBM; HBMFb BM *?BM- Bi Bb M2+2bb`v iQ +QM/m+i BM@ /2Ti? `2b2`+? M/ Q#iBM BM7Q`KiBQM 7`QK 2Mi2`T`Bb2bX >Qr2p2`- i?2`2 `2 M2`Hv Ry-yyy 2Mi2`T`Bb2b BM *?BM- M/ Bi Bb BKTQbbB#H2 iQ +QM/m+i `2b2`+? QM2 #v QM2X h?2`27Q`2- Bi Bb BKT2`iBp2 iQ b2H2+i `2T`2b2MiiBp2 bKTH2b `2bQM#HvX AM Q`/2` iQ +QKTH2i2 i?2 bKTHBM; M/ KF2 i?2 bKTH2 bBx2 KQ`2 `2bQM#H2- QM i?2 #bBb Q7 7mHHv KBMBM; i?2 2tBbiBM; ?BbiQ`B+H biiBbiB+H /i- i?`22@bi;2 bi`iB}2/ bKTHBM; Bb T`QTQb2/ M/ bKTHBM; THM Bb 7Q`KmHi2/X 6B`bi- T`2HBKBM`v bKTHBM; Bb +QM@ /m+i2/ #b2/ QM ?BbiQ`B+H /iX AM i?2 }`bi bi;2- i?2 QmiTmi `iBQ Q7 2+? T`QpBM+2 Bb +H+mHi2/ #b2/ QM ?BbiQ`B+H /iX h?2 MiBQMH ;`BM T`Q+2bbBM; 2Mi2`T`Bb2b `2 /BpB/2/ BMiQ /Bz2`2Mi `2;BQMb UHv2`bV ++Q`/@ BM; iQ i?2 QmiTmi `iBQ Q7 2+? T`QpBM+2X hQ +H+mHi2 i?2 bKTH2 bBx2 Q7 2+? `2;BQMX AM i?2 b2+QM/ bi;2- 2+? `2;BQM Bb 7m`i?2` bi`iB}2/ #v T`QpBM+2X hQ +H+mHi2 i?2 bKTH2 bBx2 Q7 /Bz2`2Mi T`QpBM+2b rBi?BM 2+? Hv2`X AM i?2 i?B`/ bi;2- 2+? T`QpBM+2 Bb 7m`i?2` bi`iB}2/ #v 2Mi2`T`Bb2b Q7 /Bz2`2Mi b+H2bX hQ +H+mHi2 i?2 bKTH2 bBx2 Q7 2Mi2`T`Bb2b Q7 /Bz2`2Mi b+H2b BM 2+? T`QpBM+2X h?2M- #b2/ QM i?2 bKTH2 /i Q7 T`2HBKBM`v bKTHBM;- r2 +H+mHi2 i?2 HQbb `i2 Q7 2+? T`QpBM+2 iQ `2TH+2 i?2 Qmi@ Tmi `iBQ Q7 2+? T`QpBM+2 BM i?2 T`2HBKBM`v bKTHBM;X aQ i?i i?2 bK@ TH2 /Bbi`B#miBQM Q7 i?2 b2+QM/ bKTHBM; Bb /2i2`KBM2/ #v i?2 i?`22@bi;2 bi`iB}2/ bKTHBM; K2i?Q/ ;BMX h?Bb TT2` iF2b `B+2 T`Q+2bbBM; 2Mi2`@ T`Bb2b b M 2tKTH2 iQ MHvx2 M/ /2i2`KBM2 i?2 MmK#2` Q7 2Mi2`T`Bb2b Q7 /Bz2`2Mi b+H2b BM /Bz2`2Mi T`QpBM+2b BM *?BM 7Q` i?2 +2MbmbX E2vrQ`/b, ;`BM T`Q+2bbBM;- HQbb M/ rbi2- bKTH2 bBx2- KmHiB@bi;2 bi`iB}2/ bKTHBM; *Q``2bTQM/BM; mi?Q`X 36
k JmHiB@bi;2 bi`iB}2/ bKTHBM; 7Q` ;`BM T`Q+2bbBM; HQbb M/ rbi2 R AMi`Q/m+iBQM 6QQ/ b2+m`Biv ?b Hrvb #22M KDQ` bi`i2;B+ Bbbm2 i?i z2+ib *?BMǶb 2+Q@ MQKB+ /2p2HQTK2Mi- bQ+BH bi#BHBiv- M/ MiBQMH BM/2T2M/2M+2X AM kyRj- i?2 aii2 *QmM+BHǶb bT2+BH THM- dz6QQ/ a2+m`Biv S`QD2+i *QMbi`m+iBQM SHM UkyRj@ kykyVǴ 2tTHB+BiHv T`QTQb2/ i?2 Qp2`HH bi`i2;B+ THM dziQ `2/m+2 TQbi@T`Q/m+iBQM HQbb2b M/ rbi2 M/ T`QKQi2 bmbiBM#H2 /2p2HQTK2Mi Q7 7QQ/ b2+m`BivǴX h?2`2 `2 KMv ;`BM T`Q+2bbBM; 2Mi2`T`Bb2b BM *?BMX i T`2b2Mi- i?2 T?2MQK2MQMQ7 HQbb M/ rbi2 BM ;`BM T`Q+2bbBM; HBMFb Bb p2`v T`QKBM2MiX >Qr2p2`- *?BM Bb +QmMi`v rBi? 2ti`2K2Hv b+`+2 `2bQm`+2bX h?2 `2HiBQMb?BT #2ir22M ;`BM bmTTHv M/ /2KM/ Bb iB;?i 7Q` HQM; iBK2X h?2`2 Bb ;`2i TQi2MiBH M/ bi`i2;B+ bB;@ MB}+M+2 iQ `2/m+2 i?2 HQbb M/ rbi2 Q7 ;`BM T`Q+2bbBM; HBMFbX h?2`27Q`2- i?2 +2Mbmb Q7 HQbb M/ rbi2 BM i?2 ;`BM T`Q+2bbBM; HBMFb BM *?BM Bb Kii2` i?i M22/b iQ #2 bQHp2/ m`;2MiHvX h?2 bKTHBM; Q7 ;`BM T`Q+2bbBM; 2Mi2`T`Bb2b Bb i?2 }`bi T`Q#H2K iQ #2 7+2/X ;QQ/ bKTHBM; +M KQ`2 ++m`i2Hv bQHp2 b2`B2b Q7 T`+iB+H T`Q#H2Kb BM BMp2biB;iBQM M/ 2pHmiBQM Q7 HQbb2b BM TQbi@T`Q/m+iBQM T`Q+2bbBM; Q7 ;`BM M/ QBH +`QTb bm+? b `B+2- r?2i- +Q`M- bQv#2M- T2Mmi M/ `T2b22/X h?2 +mb2b M/ BM~m2M+BM; 7+iQ`b Q7 i?2 HQbb M/ rbi2 Q7 ;`BM T`Q@ +2bbBM; `2 BMp2biB;i2/ 7`QK i?2 T2`bT2+iBp2b Q7 i2+?MQHQ;v- KM;2K2Mi M/ K`F2iX Ai Bb M2+2bb`v iQ Tmi 7Q`r`/ +QM+`2i2 K2bm`2b M/ +iBQM THMb iQ `2/m+2 i?2 HQbb M/ rbi2 Q7 ;`BM T`Q+2bbBM; HBMFbX h?2`27Q`2- Bi Bb Q7 ;`2i T`+@ iB+H pHm2 iQ +QM/m+i +2Mbmb bKTHBM; QM i?2 T`Q+2bbBM; HBMFb Q7 ;`BM T`Q+2bbBM; 2Mi2`T`Bb2bX KQM; i?2 7`2[m2MiHv mb2/ bKTHBM; Q`;MBxiBQM K2i?Q/b- i?2 bi`iB}2/ bKTHBM; ?b i?2 bKHH2bi bKTHBM; p`BM+2 U2``Q`V- M/ i?2 #2bi bKTHBM; 27@ 72+i Bb rB/2Hv mb2/ BM i?2 bKTHBM; BM72`2M+2 Q7 2+QMQKB+ T?2MQK2M bm+? b `2bQm`+2b- TQTmHiBQM- M/ HBpBM; biM/`/b Q7 `2bB/2Mib(RĜ9)X >Qr2p2`- BM i?2 `2bmHib Q7 i?2 2tBbiBM; `2b2`+? bKTHBM; K2i?Q/b- i?2`2 Bb MQ bKTHBM; 7Q` i?2 MiBQMH ;`BM T`Q+2bbBM; HBMF +2Mbmb /iX h?2`27Q`2- r2 +M H2`M 7`QK i?2 /2bB;M B/2b BKT`Qp2/ #v i?2 i`/BiBQMH bKTHBM; K2i?Q/- M/ /2bB;M TTHB+@ #H2 M/ 2z2+iBp2 bKTHBM; K2i?Q/b #b2/ QM i?2 ?BbiQ`B+H /i Q7 i?2 MiBQMH ;`BMX J2Mr?BH2- r2 T`QTQb2 KmHiB@bi;2 bi`iB}2/ bKTHBM; #b2/ QM bi`iB}2/ bKTHBM; r?B+? ?b BKT`Qp2/ bi`iB}2/ bKTHBM; i?2Q`2iB+HHvX Ai Bb M2r M/ QT2`iBQMH bKTHBM; K2i?Q/ i?i T`QpB/2b KQ`2 2z2+iBp2 bQHmiBQM 7Q` MiBQMH ;`BM T`Q+2bbBM; +2Mbmb bKTHBM;X AM Q`/2` iQ ++m`i2Hv +H+mHi2 M/ 2pHmi2 i?2 bT2+B}+ bBimiBQM Q7 i?2 HQbb M/ rbi2 Q7 ;`BM T`Q+2bbBM; HBMFb BM *?BM- Q#iBM /2iBH2/ M/ ++m`i2 #bB+ /i- bQHp2 T`Q#H2K bm+? b BM+QKTH2i2 M/ BM++m`i2 /i Q7 HQbb M/ rbi2 BM ;`BM T`Q+2bbBM; HBMF M/ i?2 BKTQbbB#BHBiv Q7 HQM;Bim/BMH i`+FBM;- +QKT`B@ bQM M/ KQMBiQ`BM;- r2 M22/ iQ Q#iBM BM7Q`KiBQM i?`Qm;? `2b2`+?X >Qr2p2`- i?2`2 `2 M2`Hv Ryyyy T`Q+2bbBM; 2Mi2`T`Bb2b BM *?BM- bQ Bi Bb T`iB+mH`Hv BKTQ`@ iMi iQ iF2 `2T`2b2MiiBp2 bKTH2b `2bQM#HvX h?2`27Q`2- i?Bb TT2` T`QTQb2b KmHiB@bi;2 bi`iB}2/ bKTHBM; K2i?Q/- r?B+? +M T`QpB/2 b+B2MiB}+ K2i?Q/b M/ i?2Q`B2b 7Q` i?2 bKTHBM; Q7 ;`BM T`Q+2bbBM; HBMFbX i i?2 bK2 iBK2- i?Bb bKTH2 bm`p2v bvbi2K +M HbQ #2 mb2/ 7Q` bm`p2v `2b2`+?- T`Q;`K /2bB;M- 2i+X BM Qi?2` `2Hi2/ }2H/bX aT2+B}+HHv- }`bi Q7 HH- ++Q`/BM; iQ i?2 ?BbiQ`B+H bi@ 37
JmHiB@bi;2 bi`iB}2/ bKTHBM; j iBbiB+H /i Q7 ;`BM- i?2 bKTH2 bBx2 Q7 i?2 T`2HBKBM`v bKTH2 Bb /2i2`KBM2/X "v +H+mHiBM; i?2 QmiTmi `iBQ Q7 p`BQmb ivT2b Q7 ;`BM BM 2+? T`QpBM+2- +@ +Q`/BM; iQ i?2 +?`+i2`BbiB+b Q7 i?2 `2;BQMH /Bbi`B#miBQM Q7 ;`BM T`Q+2bbBM; Q7 2Mi2`T`Bb2b M/ i?2 T`BM+BTH2 Q7 T`QTQ`iBQMH /Bbi`B#miBQM Q7 bi`iB}2/ bKTHBM;- r2 T`QTQb2 M/ /2bB;M i?`22@bi;2 bi`iB}2/ bKTHBM; K2i?Q/ iQ +?B2p2 i?2 bKTH2 /Bbi`B#miBQM Q7 T`2HBKBM`v bKTHBM;X h?2M- #b2/ QM i?2 bKTH2 /i Q7 T`2HBKBM`v bKTHBM;- i?2 bKTH2 bBx2 Q7 i?2 b2+QM/ bKTHBM; Bb /2i2`KBM2/#v i?2 bKTH2 bBx2 /2i2`KBMiBQM K2i?Q/X h?2 T`QpBM+BH HQbb `i2 Q7 2+? T`QpBM+2 Bb +H+mHi2/- M/ i?2 i?`22@bi;2 bi`iB}2/ bKTHBM; K2i?Q/ Bb mb2/ ;BMiQ `2HBx2 i?2 bKTH2 /Bbi`B#miBQM Q7 i?2 b2+QM/ bKTHBM;X h?2 K2i?Q/ bbB;Mb /B7@ 72`2Mi MmK#2`b Q7 bKTH2b iQ /Bz2`2Mi `2;BQMb ++Q`/BM; iQ i?2 /Bz2`2Mi ;`BM QmiTmi `iBQb Q7 i?2 `2;BQMbr?B+? KF2b i?2 bKTHBM; T`Q+2bb b+B2MiB}+ M/ `2bQM#H2- M/ i?2 bKTHBM; /i Bb KQ`2 `2T`2b2MiiBp2X k .i bQm`+2 M/ MHvbBb dzaiiBbiB+H /i Q7 ;`BM M/ QBH T`Q+2bbBM; BM/mbi`vǴ Ukyy3 Ĝ kyRjV (8) Bb i?2 BMi2`MH /i Q7 i?2 *B`+mHiBQM M/ h2+?MQHQ;v .2p2HQTK2Mi .2T`iK2Mi Q7 i?2 aii2 :`BM "m`2mX Ai ?b +``B2/ Qmi i?2 /2iBH2/ biiBbiB+b iQ i?2 ;`BM M/ QBH T`Q+2bbBM; 2Mi2`T`Bb2Ƕb #bB+ BM7Q`KiBQM i?i v2`- 2+? FBM/ Q7 ;`BM M/ QBH T`Q/m+i +imH QmiTmi- i?2 T`Q/m+iBQM +T+Biv M/ bQ QMX AM Q`/2` iQ 2biBKi2 i?2 HQbb M/ rbi2 Q7 MiBQMH ;`BM T`Q+2bbBM; HBMFbr2 b+`22M2/ M/ bQ`i2/ Qmi i?2 /i- M/ bQ`i2/ Qmi i?2 MMmH QmiTmi i#H2- MMmH T`Q+2bbBM; +T+Biv M/ i?2 MmK#2` Q7 T`Q+2bbBM; 2Mi2`T`Bb2b BM i?2 Tbi v2`b Q7 `B+2- r?2ibQv#2Mb- T2Mmib- `T2b22/ M/ Qi?2` ;`BMb- M/ 2bi#HBb?2/ /i#b2X 6Q` bQK2 /i Q7 KBbbBM; v2`b- Bi Bb b2`+?2/ M/ +QHH2+i2/ i?`Qm;? i?2 aii2 :`BM "m`2m (e)- i?2 Q{+BH r2#bBi2 Q7 i?2 ;`BM #m`2mb i HH H2p2Hb- M/ i?2 Q{+BH r2#bBi2 Q7 i?2 LiBQMH "m`2m Q7 aiiBbiB+b (d)X >Qr2p2`- 7Q` i?2 /i i?i Bb MQi `2HHv pBH#H2- i?2 ;`v T`2/B+iBQM KQ/2H Bb mb2/ 7Q` T`2/B+iBQMX S`2HBKBM`v bKTHBM; #b2/ QM ?BbiQ`B+H /i- T`2HBKBM`v bKTH2b iF2M MiBQMrB/2- bKTH2 /Bbi`B#miBQM b?QmH/ +Qp2` 2+? T`QpBM+2 b Km+? b TQbbB#H2- M/ KQ`2 bKTH2b b?QmH/ #2 +QHH2+i2/ BM KDQ` ;`BM T`Q+2bbBM; `2bX 7i2` Q#iBMBM; i?2 bKTH2 /i Q7 i?2 T`2HBKBM`v bKTHBM;- Bi +M #2 mb2/ iQ +H+mHi2 i?2 T`QpBM+BH HQbb `i2 Q7 2+? T`QpBM+2X A7 i?2`2 Bb KBbbBM; /i BM T`QpBM+2- r2 +M +H+mHi2 i?2 p2`;2 HQbb `i2 Q7 H`;2- K2/BmK M/ bKHH@b+H2 2Mi2`T`Bb2b BM *?BM- M/ i?2M mb2 i?2 T`Q+2bbBM; +T+Biv Q7 H`;2- K2/BmK M/ bKHH@b+H2 2Mi2`T`Bb2b BM 2+? T`QpBM+2 b i?2 r2B;?i iQ +H+mHi2 i?2 T`QpBM+BH HQbb `i2 Q7 i?2 T`QpBM+2X h?2 HQbb `i2 Q7 2+? T`QpBM+2 Bb mb2/ iQ `2TH+2 i?2 QmiTmi `iBQ Q7 2+? T`QpBM+2 BM i?2 ?BbiQ`B+H /i Q7 i?2 T`2HBKBM`v bKTHBM;- M/ i?2 bKTH2 /Bbi`B#miBQM Q7 i?2 b2+QM/ bKTHBM; Bb /2i2`KBM2/ #v i?2 i?`22@bi;2 bi`iB}2/ bKTHBM; K2i?Q/ Q7 i?2 T`2HBKBM`v bKTHBM;X 38
9 JmHiB@bi;2 bi`iB}2/ bKTHBM; 7Q` ;`BM T`Q+2bbBM; HQbb M/ rbi2 j aKTH2 bBx2 /2i2`KBMiBQM K2i?Q/ h?2 /2i2`KBMiBQM Q7 bKTH2 bBx2 Bb M BKTQ`iMi HBMF BM bKTHBM; BMp2biB;iBQM- r?B+? Bb /B`2+iHv `2Hi2/ iQ i?2 ++m`+v Q7 bKTHBM; 2biBKiBQM M/ i?2 +Qbi M/ #2M2}i Q7 BMp2biB;iBQMX G2i i?2 `M/QK p`B#H2 ?p2 K2M Q7 μM/ p`BM+2 Q7 σ2X h?2M i?2 nbKTH2b ?p2 K2M Q7 μM/ p`BM+2 Q7 σ2 nX i ;Bp2M +QM}/2M+2 H2p2H 1−α- H2i i?2 K2M Q7 i?2 bKTH2 #2 ¯ X- M/ i?2 2``Q` εBb ;Bp2M #v i?2 7QHHQrBM; 7Q`KmH, ε=¯ X−μX AM KQbi +b2b- σ2Bb mMFMQrMX AM Q`/2` iQ 2HBKBMi2 i?2 BM~m2M+2 Q7 σ2- bQK2 b+?QH`b ?p2 BMi`Q/m+2/ t@/Bbi`B#miBQMX h?2 #Qp2 2tT`2bbBQM Bb t@/Bbi`B#miBQM rBi? /2;`22 Q7 7`22/QK Q7 n−1- r?2`2 SBb i?2 p`BM+2 Q7 i?2 bKTH2 t=¯ X−μ S/√n- i?2M ε=¯ X−μ=tα(n−1) S √nX h?2 7Q`KmH 7Q` Q#iBMBM; nBb, n=t2 α(n−1)S2 ε2X q?2M i?2 bKTH2 bBx2 Bb H`;2 M/ i?2 +QM}/2M+2 H2p2H α<0.05- i?2 7QHHQrBM; 7Q`KmH +M ;2M2`HHv #2 TT`QtBKi2/, n=4S2 ε2X (3ĜRR) AM Q`/2` iQ KF2 i?2 bKTH2b KQ`2 `2T`2b2MiiBp2- r2 b?QmH/ iF2 bKTH2b 7`QK 2+? T`QpBM+2 MiBQMrB/2- M/ +QHH2+i KQ`2 bKTH2b 7`QK KDQ` ;`BM T`Q@ /m+iBQM `2bX AM T`2HBKBM`v bKTHBM;- #b2/ QM i?2 #Qp2 +Qp2`;2 T`BM+BTH2- i?2 MmK#2` Q7 T`2HBKBM`v bKTH2b +QHH2+i2/ Bb b?QrM BM h#H2 RX h#H2 RX aKTH2 bBx2 Q7 T`2HBKBM`v bKTHBM; Q7 p`BQmb p`B2iB2b Q7 ;`BM T`Q+2bbBM; o`B2iv `B+2 r?2i aQv#2M QBH _T2b22/ QBH S2Mmi QBH +Q`M LmK#2` Q7 bKTH2b jy jy ky ky ky ky "b2/ QM i?2 T`2HBKBM`v bKTHBM; `2bmHib- i?2 HQbb `i2 Q7 2+? T`QpBM+2 M/ Bib bKTH2 p`BM+2 Q7 i?2 T`2HBKBM`v bKTHBM; `2 +H+mHi2/X q2 +QMi`QHH2/ i?2 2``Q` i #Qmi RyW M/ bm#biBimi2/ Bi BMiQ i?2 bKTH2 bBx2 +H+mHiBQM 7Q`KmH iQ ;2i i?2 TT`QtBKi2 MmK#2` Q7 i?2 b2+QM/ bKTHBM; Q7 2+? p`B2iv b b?QrM BM h#H2 kX 9 .2bB;M M/ BKTH2K2MiiBQM Q7 i?`22@bi;2 bi`iB}2/ bKTHBM; K2i?Q/ 9XR Pp2`HH /2bB;M Q7 i?`22@bi;2 bi`iB}2/ bKTHBM; K2i?Q/ hFBM; BMiQ ++QmMi i?2 `2;BQMH /Bz2`2M+2b Q7 2+? T`QpBM+2 M/ i?2 /Bz2`2M+2b BM i?2 MmK#2` M/ b+H2 Q7 ;`BM T`Q+2bbBM; 2Mi2`T`Bb2b- b2T`i2 bKTHBM;Bb 39
JmHiB@bi;2 bi`iB}2/ bKTHBM; 8 h#H2 kX aKTH2 bBx2 Q7 i?2 b2+QM/ bKTHBM; Q7 p`BQmb p`B2iB2b Q7 ;`BM T`Q+2bbBM; o`B2iv `B+2 r?2i aQv#2M QBH _T2b22/ QBH S2Mmi QBH +Q`M LmK#2` Q7 bKTH2b R8y Ryy 8y 8y 8y 8y +QM/m+i2/ rBi?BM 2+? T`QpBM+2X "v Q#iBMBM; i?2 bKTH2 bBx2 Q7 2+? T`QpBM+2- i?2 `2bmHib +M #2 T`2/B+i2/ KQ`2 ++m`i2HvX h?2`27Q`2- bi`iB}2/ bKTHBM; Bb /QTi2/- M/ k3 T`QpBM+2b M/ miQMQKQmb `2;BQMb `2T`2b2Mi /Bz2`2Mi bm#;`QmTb M/ H2p2HbX >Qr2p2`- i?Bb Bb MQi 2MQm;?X h?2`2 `2 iQQ KMv H2p2HbX h?2 k3 T`QpBM+2b M/ miQMQKQmb `2;BQMb M22/ iQ #2 7m`i?2` bi`iB}2/X "b2/ QM i?2 T`BM+BTH2 i?i i?2 BMi`@Hv2` p`BM+2 Bb i?2 bKHH2bi M/ i?2 p`BM+2 #2ir22M i?2 Hv2`b Bb i?2 H`;2bi- r2 /BpB/2 i?2 MiBQMH ;`BM T`Q+2bbBM; 2Mi2`T`Bb2b BMiQ /Bz2`2Mi `2;BQMb ++Q`/BM; iQ i?2 QmiTmi `iBQ Q7 2+? T`QpBM+2- M/ i?2M /2i2`@ KBM2 i?2 bKTH2 bBx2 Q7 2+? `2;BQMX 6B`bi- T`2HBKBM`v bKTHBM; Bb +QM/m+i2/ #b2/ QM ?BbiQ`B+H /iX h?2 bKTH2 bBx2 Q7 i?2 T`2HBKBM`v bKTH2 +M #2 /2i2`KBM2/X AM i?2 }`bi bi;2- i?2 MiBQMH ;`BM T`Q+2bbBM; 2Mi2`T`Bb2b `2 /BpB/2/ BMiQ /Bz2`2Mi `2;BQMb UHv2`bV ++Q`/BM; iQ i?2 QmiTmi `iBQ Q7 2+? T`QpBM+2X 6Q` 2tKTH2- i?2 `B+2 Bb /BpB/2/ BMiQ e Hv2`b #v T`QpBM+2- i?i Bb- e `2;BQMbX M/ +H+mHiBM; i?2 bKTH2 bBx2 Q7 2+? `2;BQMX AM i?2 b2+QM/ bi;2- /2i2`KBMBM; i?2 bKTH2 bBx2 Q7 2+? T`QpBM+2 BM i?2 e@Hv2` bKTHBM; `2X AM i?2 i?B`/ bi;2- 2+? T`QpBM+2 Bb 7m`i?2` bi`iB}2/ #v 2Mi2`T`Bb2b Q7 /Bz2`2Mi b+H2bX M/ iQ +H+mHi2 i?2 bKTH2 bBx2 Q7 2Mi2`T`Bb2b Q7 /Bz2`2Mi b+H2b BM 2+? T`QpBM+2X .Bz2`2Mi b+H2b `2 H`;2- K2/BmK M/ bKHH b+H2bX 1Mi2`T`Bb2b rBi? /BHv T`Q/m+iBQM +T+Biv Q7 KQ`2 i?M 9yy iQMb `2 +HH2/ G`;2@bBx2/ 2Mi2`T`Bb2bX 1Mi2`T`Bb2b rBi? /BHv T`Q/m+iBQM +T+Biv Q7 kyy@9yy iQMb `2 +HH2/ J2/BmK@bBx2/ 2Mi2`T`Bb2bX 1Mi2`T`Bb2b rBi? /BHv T`Q/m+iBQM +T+Biv Q7 H2bb i?M kyy iQMb `2 +HH2/ aKHH@bBx2/ 2Mi2`T`Bb2bX S`2HBKBM`v bKTH2b `2 iF2M MiBQMrB/2 i?`Qm;? i?2 #Qp2 i?`22@bi;2 bi`iB}2/ bKTHBM; K2i?Q/X h?2 bKTH2 /Bbi`B#miBQM b?QmH/ +Qp2` 2+? T`QpBM+2 b Km+? b TQbbB#H2- M/ KQ`2 bKTH2b b?QmH/ #2 +QHH2+i2/ BM KDQ` ;`BM T`Q@ +2bbBM; `2bX 7i2` Q#iBMBM; i?2 bKTH2 /i Q7 i?2 T`2HBKBM`v bKTH2b- i?2 bKTH2 +T+Biv Q7 i?2 b2+QM/ bKTH2 Bb /2i2`KBM2/ #v i?2 bKTH2 bBx2 /2i2`@ KBMiBQM K2i?Q/X h?2 HQbb `i2 Q7 2+? T`QpBM+2 +M #2 +H+mHi2/ ++Q`/BM; iQ i?2 bKTH2 /i Q7 i?2 T`2HBKBM`v bKTHBM;X A7 i?2`2 Bb KBbbBM; /i BM T`QpBM+2- r2 +M +H+mHi2 i?2 p2`;2 HQbb `i2 Q7 H`;2- K2/BmK M/ bKHH@b+H2 2Mi2`T`Bb2b BM *?BM- M/ i?2M mb2 i?2 T`Q+2bbBM; +T+Biv Q7 H`;2- K2/BmK M/ bKHH@b+H2 2Mi2`T`Bb2b BM 2+? T`QpBM+2 b i?2 r2B;?i iQ +H+mHi2 i?2 T`QpBM+BH HQbb `i2 Q7 i?2 T`QpBM+2X h?2 HQbb `i2 Q7 2+? T`QpBM+2 Bb mb2/ iQ `2TH+2 i?2 Qmi@ Tmi `iBQ Q7 2+? T`QpBM+2 BM i?2 ?BbiQ`B+H /i Q7 i?2 T`2HBKBM`v bKTHBM;- M/ i?2 bKTH2 /Bbi`B#miBQM Q7 i?2 b2+QM/ bKTHBM; Bb /2i2`KBM2/ #v i?2 i?`22@bi;2 bi`iB}2/ bKTHBM; K2i?Q/ Q7 i?2 T`2HBKBM`v bKTHBM;X 40
e JmHiB@bi;2 bi`iB}2/ bKTHBM; 7Q` ;`BM T`Q+2bbBM; HQbb M/ rbi2 9Xk AKTH2K2MiiBQM Q7 i?`22@bi;2 bi`iB}2/ bKTHBM; K2i?Q/ hQ #mBH/ M 2Mi2`T`Bb2 bKTH2 bBx2 HHQ+iBQM H;Q`Bi?K- i?2 F2v Bb iQ /2i2`KBM2 i?2 r2B;?i 7+iQ` Q7 i?2 +Q``2bTQM/BM; Hv2`b BM 2+? bi;2- bQ b iQ Q#iBM i?2 +Q``2bTQM/BM; HHQ+i2/ bKTH2 bBx2X h?2 i?`22@bi;2 bi`iB}2/ bKTHBM; K2i?Q/ 7Q` T`2HBKBM`v bKTHBM; Bb /2@ bB;M2/ b 7QHHQrb, URV ai`iB7v T`QpBM+2b "b2/ QM i?2 T`BM+BTH2 i?i i?2 BMi`@Hv2` p`BM+2 Bb i?2 bKHH2bi M/ i?2 p`BM+2 #2ir22M i?2 Hv2`b Bb i?2 H`;2bi- /BpB/2 i?2 MiBQMH ;`BM T`Q+2bb@ BM; 2Mi2`T`Bb2b BMiQ /Bz2`2Mi `2;BQMb ++Q`/BM; iQ i?2 QmiTmi `iBQ Q7 2+? T`QpBM+2X h?2 `B+2 QmiTmi `iBQ Q7 2+? T`QpBM+2 Bb +H+mHi2/ b 7QHHQrb, Xt=Qt0 Qt1,(t=1,2,···,31) r?2`2 XtBb i?2 QmiTmi `iBQ Q7 T`QpBM+2 t-Qt0Bb i?2 `B+2 QmiTmi Q7 i?2 T`2pBQmb v2` UFMQrM /iV- M/ Qt1Bb i?2 `B+2 T`Q+2bbBM; +T+Biv Q7 i?2 T`2pBQmb v2` UFMQrM /iVX A7 i?2 QmiTmi `iBQ Q7 i?2 BM/BpB/mH T`QpBM+2b Bb #MQ`KH- Bi Bb HBbi2/ b bBM;H2 Hv2`- mbBM; BMi`@Hv2` `M/QK bKTHBM;X 6Q` 2tKTH2- BM i?2 bKTHBM; Q7 `B+2 T`Q+2bbBM; 2Mi2`T`Bb2b- :mM;/QM; M/ a?MtB `2 b2T`i2Hv HBbi2/ b irQ Hv2`bX AM ;2M2`H- bi`iB}2/ bKTHBM; +QMiBMm2bX UkV lM/2` i?2 +QM/BiBQM i?i i?2 iQiH MmK#2` Q7 T`Q+2bbBM; 2Mi2`@ T`Bb2b nBb +QMbiMi- i?2 bKTH2 bBx2 niQ7 i?2 i@i? Hv2` UiF2 9@Hv2` b M 2tKTH2- i?i Bb- i=1,2,3,4V Bb +H+mHi2/ b 7QHHQrb, ni=n·ωi(β)=n·ϕi+β·φi 1+β(i=1,2,3,4) 15 ≤ni≤35 φi=ΔXi 4 i=1 ΔXi -ΔXi= ni j=1 Xij −¯ Xi2-ϕi=Qi1 4 i=1 Qi1 r?2`2 ωi(β)Bb i?2 bKTH2 bBx2 r2B;?iBM; 7+iQ` Q7 i?2 i@i? Hv2`c ϕiBb i?2 p`BM+2 `iBQ Q7 i?2 QmiTmi `iBQ Q7 i?2 i@i? Hv2`- ΔXiBb i?2 p`BM+2 Q7 i?2 QmiTmi `iBQ Q7 i?2 i@i? Hv2`- M/ Xij Bb i?2 QmiTmi `iBQ Q7 i?2 j@i? T`QpBM+2 Q7 i?2 i@i? Hv2`- ¯ XiBb i?2 K2M Q7 QmiTmi `iBQ Q7 i?2 i@i? Hv2`c φiBb i?2 `iBQ Q7 T`Q+2bbBM; KQmMi Q7 i?2 i@i? Hv2`- Qi1Bb i?2 T`Q+2bbBM; KQmMi Q7 i?2 i@i? Hv2`c βBb i?2 /DmbiK2Mi T`K2i2`- M/ /Dmbib i?2 T`QTQ`iBQMH `2HiBQMb?BT #2ir22M ϕiM/ φibQ i?i i?2 }MH bKTH2 bBx2 /Bbi`B#miBQM i2M/b iQ #2 `2bQM#H2X 6Q` 2tKTH2- r?2M βBb iF2M b R- Bi K2Mb i?i i?2 irQ b?`2 i?2 bK2 T`QTQ`iBQMX UjV h?2 7Q`KmH 7Q` +H+mHiBM; i?2 bKTH2 bBx2 nij Q7 i?2 j@i? T`QpBM+2 Q7 i?2 i@i? Hv2` Bb b 7QHHQrb, 41
Simulating Tissue P systems with promoters 3 We consider at the same level the flexibility of the tools and the fidelity to the rules of the game defined with any new computing model. Thus, the framework can control the use that any P system designer can make of the elements present in a solution given within a specific framework. Thus, the present work extends the functionality provided by P-Lingua framework (specifically, the P-Lingua version - language and library - running inside MeCoSim environment) with all the features required to work with tissue P systems with promoters. These features must include, at least: 1) the specification in P-Lingua language of the ingredients trying to mimic the syntax of the promoters appearing in papers studying their computational completeness and complexity [20]; 2) the semantic restrictions imposed to different variants in terms of the types of rules allowed within the model; 3) the specific simulator following the dynamics described in the definition of the system [20]; and 4) the connection with all the pre-existing generic tools within the framework provided by P-Lingua and MeCoSim. The paper is organized as follows: in Section 2, tissue P systems with promoters are defined; following, in Section 3 the main elements of the framework given by P-Lingua and MeCoSim are recalled; then, the new syntactic ingredients introduced in P-Lingua language to define tissue P systems with promoters is presented in Section 4, along with a brief description of the simulator adapted to work with promoters; finally, the work with tissue P systems in our platform is illustrated in Section 5, with simple examples plus the translation of the solution to SAT in P-Lingua, taken from [20]. 2 Tissue-like P systems with promoters This section introduces the computing model of tissue P systems with promoters, subject of the present paper and the simulator developed. More specifically, the type of devices covered is tissue P systems with promoters and cell division, thus incorporating the division rules to the basic tissue P systems with promoters. Similar variants using cell separation instead are out of the scope of our work. 2.1 Tissue P systems with promoters and cell division In what follows the definition of our devices is recalled, as appeared in [20]. Definition 1. A tissue P system with promoters and cell division, of degree q≥1,isatuple Π=(Γ,E,w 1,...,w q,R,i out), where –Γis an alphabet of objects; –E⊆Γis a set of objects initially located in the environment; –wi,1≤i≤q, are finite multisets over Γ; –Ris a finite set of rules of the following forms: 48
4 Luis Valencia-Cabrera et al. – Communication rules: – Symport rules: (pro |i, u/λ, j)or (pro |i, λ/u, j),where0≤i=j≤ q,pro, u ∈Mf(Γ),|u|>0; – Antiport rules: (pro |i, u/v, j),where0≤i=j≤q,pro, u, v ∈ Mf(Γ),|u|>0,|v|>0; – Division rules: –[a]i→[b]i[c]i,wherei∈{1,...,q},i=iout,a, b, c ∈Γ; –iout ∈{0,1,...,q}. As also detailed in [20], tissue P system with promoters and cell division of degree q≥1 can be viewed as a set of qcells labeled by 1,...,q, providing the nodes of a directed graph; w1,...,w qrepresent the finite multisets of objects initially placed in these qcells; the important alphabet Econtains the set of objects initially located in the environment of the system, which will be available in an arbitrary number of copies; Ris the finite set of rules of the system, including symport/antiport rules operating on pro, u, v ∈Mf(Γ)(i.e., multisets over the working alphabet), plus division rules (defined as usual); and iout is a distinguished region that will hold the output of the system. Thus, a configuration of this kind of system is described by the multisets of objects over Γassociated with all cells in the system, plus the multiset of objects over Γ\Eplaced in the environment at that moment (as the objects from Eare present in the environment in an arbitrarily large number of copies, the specific number of these objects is not relevant along the computation, considering they will be always enough to trigger the proper communication rules with the cells interacting with it). The initial configuration is, not surprisingly, (w1,...,w q;∅). Despite the fact that the applicability and effect produced by the different types of rules is properly described in [20], as it is crucial for the understanding of the semantics of the system, we will include such information in this preliminary section in order to avoid the reader the need of such additional access to the corresponding sources, thus making the reading of this document mostly selfcontained. Therefore, in what follows we keep describing the semantic aspects of the system: –A symport rule (pro |i, u/λ, j)∈Ris applicable to a configuration if region icontains multiset uand the objects of the promoter pro are present in such i. Then, if such a rule is applied, uis sent from region ito j. –An antiport rule (pro |i, u/v, j)∈R iis applicable to a configuration if region icontains multiset u,regionjcontains multiset v,andtheobjectsof the promoter pro are present in i. Thus, when it is applied, the objects of u are sent from ito region j, in exchange of objects of v, which are sent from jto i. –A division rule [ a]i→[b]i[c]iis applicable to a configuration if the cell i contains object a,andiis not the output cell. When such a rule is applied, iis divided into two cells (with the same label): in the first one, ais replaced by object b, and in the second one by object c; the rest of objects present in the original cell are all kept (replicated) in the two new cells. 49
Simulating Tissue P systems with promoters 5 Let us recall that, in a tissue P system with promoters and cell division, the presence of the promoter objects enables the use of the associated rule as many timesaspossible, without any restriction; consequently, a promoter can be used simultaneously by any number of rules associated with this promoter, which is not consumed nor blocked by the rule. Let us note that, if the rule does not require any promoter, the initial part of the rule is omitted, writing the rule as (i, u/λ, j) (resp., (i, u/v, j)) instead of (∅|i, u/λ, j) (resp., (∅|i, u/v, j)). Regarding the dynamics of the system (i.e., the execution strategy), the rules of these systems are applied in a maximally parallel manner: at each step, all cells which can evolve must evolve in a maximally parallel way (no further rule can be added being applicable, at any given instant). The only constraint to this statement is the following: when a cell is divided, the division rule is the only one to be applied involving such cell at that step, so the objects inside that cell not explicitly present in the syntax of the division rule do not evolve by means of communication rules. The concepts of computation following the sequence of configurations, and the halting configuration are the usual ones in membrane systems. Concerning the result of the halting computations, it will be encoded by the number of objects present in the output region in the halting configuration. 3 P-Lingua framework for P systems Along the last two decades, many types and variants of P systems have been defined, providing computing theoretical devices showing interesting properties. However, no physical implementation of such machines exists so far, and the solutions based on such systems are difficult to work with at certain level in a manual way. In this context, having at disposal automatic tools to support the design, debug, analysis and simulation of these novel solutions may result crucial. In this sense, P-Lingua [4, 16] provides a uniform framework for the specification, debugging and simulation of this kind of computing models. Additionally, on top of P-Lingua, MeCoSim [15, 22] provides a user-friendly environment using the previous core to parse and simulate models (for technical users), along with a higher-level interface to handle models and deliver end-user applications based on this framework (for end users, not requiring knowledge about P systems). This section outlines the main elements included in the framework provided by P-Lingua and MeCoSim. 3.1 P-Lingua framework The main components of P–Lingua framework[3] were initially a specification language to define P systems, and a Java [25] library called pLinguaCore,including parsers and simulators for different models within membrane computing. Later on, additional types of P systems have been covered, along with additional 50
6 Luis Valencia-Cabrera et al. features of the language. Along with these main elements, different commandline tools were provided from the beginning. P-Lingua is intended to be a standard language for the definition of P systems through simple text files, easily processed by pLinguaCore directly or using some command-line tool or visual client (as MeCoSim, described in section 3.2). These files can specify P systems of families of them, depending on certain parameters included in the files (so that different values for the parameters instantiate different members of the family). The common syntax shared by many kinds of P systems including membrane structures, initial multisets, some types of rules, etc. decreases the learning curve for P systems designers learning different computing models within membrane computing. Fig. 1 shows a small specification in P–Lingua language, for the definition of a simple P system. In this case, we are showing a tissue P system with promoters, using some new features introduced in this work. However, many elements (as the specification of the model, the definition of functions, the membrane structure or the initial multisets) take advantage of the general features provided by the language. This implies that someone familiar with P-Lingua and transition P systems, for instance, can understand most of the code, without prior experience with tissue P systems with promoters and cell division. r1:(1, a/p, 2) r2:(p|1,b/be,0) r3:(p|1, c/ce, 0) r4:(p|1, bc/λ, 0) 1@model<tpdc> 2def main() 3{ 4@mu = [[]’1 []’2]’0; 5@ms(0) = b,c,e; 6@ms(1) = a,b,c; 7@ms(2) = p; 8[a]’1 <--> [p]’2; 9[p|b]’1 <--> [b,e]’0; 10 [p|c]’1 <--> [c,e]’0; 11 [p|b,c]’1 <--> []’0; 12 } Fig. 1. A simple P system specification in P–Lingua Apart from the language, as mentioned above, P-Lingua framework includes the library pLinguaCore, providing parsers and simulators for the variants of P systems supported by the language, plus other useful tools. A detailed explanation can be found at [3, 4], and further information on a deeper level is given in [16] (this last one in Spanish). 3.2 MeCoSim (Membrane Computing Simulator) MeCoSim provides visual tools to manage membrane computing models using P-Lingua. Thus, for P systems designers explore the models as white boxes to deepen in the study of the P systems themselves, while end users (possibly 51
Simulating Tissue P systems with promoters 7 unrelated to membrane computing) use them as black boxes to focus on the problems, abstracting from the internal details of the P systems actually solving such problems. On the one hand, model designers find in MeCoSim a graphic tool to design, simulate, analyse and verify their models. On the other hand, end users receive MeCoSim-based applications (customized by the designers) adapted to their problems, where they simply enter the input data and check the results. As previously introduced, MeCoSim is built on top of P–Lingua: models are specified in P–Lingua language, processed by their parsers; then, the simulations are performed by executing simulation algorithms provided by pLinguaCore library, or through external simulators connected to MeCoSim. In this visual environment, there exists a general application where any specific singlePsystemwritten in P-Lingua can be processed, from the load and parsing to its simulation). However, if we want to have custom applications where the end user can introduced data to instantiate some member of a family of P systems and/or providing the external input to the system, the designer can configure a custom application through a spreadsheet file with .xls extension, adapting the inputs and outputs to the desired P system family, and indicating the way the input data by the end user will populate the parameters for the final P system to generate with each run of the system. The overall process to customize apps and to use them, enriching the core parsing and simulation functionalities with further debugging and visualization tools, plus other add-ons using MeCoSim extension mechanisms, can be reviewed in detail in [22, 27]. 4 Extensions of P-Lingua language The previous section has outlined the main elements of our general framework provided by P-Lingua and MeCoSim.In the present work, the general tools of this framework are extended to handle tissue P systems with promoters and cell division. This includes genuine features added to the specific language for this kind of systems, including in their syntax some lexicon and grammar elements. Additionally, the existence of new ingredients (promoters) in the rules of these systems implies the need of new simulators capturing the dynamic behavior of these systems, following the description in [20]. In summary, we will take as a reference the existing P–Lingua syntax for P systems introduced in [16, 17], and will introduce the syntactic elements for tissue P systems with promoters and cell division along the following subsections. Then, a brief description of the simulator developed for this variant of P systems is given. 4.1 Model specification Any P–Lingua file defining a tissue P system with cell division can be specified, in general, using tpdc as its model (similar to TPDC[20]): 52
8 Luis Valencia-Cabrera et al. @model<tpdc> This use of tpdc will imply the allowance in (t)issue P systems of the use of (p)romoters (not present nor allowed in pre-existing models as tissue psystems or TSCS), and cell (d)ivision, as well as the usual (c)ommunication rules. Similarly, two additional restricted variants have been defined for this new type of P systems, both available to use instead of tpdc, depending on the type of constraints imposed: @model<tpds> @model<tpda> As one might expect, the suffix smeans that communication rules are restricted to (s)ymport rules only, while the aconstraints the systems to allow (a)ntiport rules only instead. The rest of the file will then define the main elements describing the P system, including the membrane structure containing the different cells, the initial multisets present in each one of them at the beginning of the computation and the set of rules. Let us note that some elements, as Γor the underlying graph connecting the cells, are inferred from the initial multisets and the rules. On the other hand, Eis also inferred from the initial multiset associated with the environment in the P-Lingua file. The membrane structure, initial multisets, sets of rules and output region will be set, as explained in the following subsections. 4.2 Membrane structure and initial multisets Tissue P systems with promoters are based on a graph structure as any other tissue–like P systems. As commonly used in P-Lingua models, in order to specify the initial membrane structure the reserve word @mu is used, defining the corresponding μ, as defined in Section 2. More specifically, if we have qcells, it would be defined as: @mu = [ []’1 []’2 ... []’q]’0; This can be seen for a specific example in Fig. 1: @mu = [ []’1 []’2 ]’0; Regarding the objects in the initial configuration of the system, they can be defined by the reserved word @ms, assigning a certain multiset to the desired membrane. Thus, for the example in Fig. 1, the initial multisets are defined in P-Lingua as: @ms(1) = a,b,c; @ms(2) = p; Similarly, the alphabet of the environment, establishing which objects will be present in the environment in an arbitrarily large number of copies along the computation, is defined with the same syntax, but assigning a set to label 0. @ms(0) = b,c,e; 53
Simulating Tissue P systems with promoters 9 Let us recall that in the rest of regions (in the cells) we may have more than one copy of certain objects, and that P-Lingua expresses this by using operator *, followed by the multiplicity of the object, as in the following example: @ms(1) = a,b*3,c*2; Alternatively, the definition of these initial objects can be included directly in the definition of μpresented above, so that any membrane may include both child membranes and objects inside, as in the following code: @mu =[a*2 [ b]’2 [ ]’3 [ c*5 ]’4 ]’1; Besides the previous separate definitions of cells structure and initial multisets (plus definition of the alphabet of the environment), these elements might be combined to express in a more succinct way the same ideas. Thus, the corresponding lines into the example in Fig. 1 could be rewritten as: @mu =[b,c,e[a,b,c]’1 [ p]’2 ]’0; 4.3 Definition of rules As we recalled in Section 2, Tissue P systems with promoters and cell division introduce a new feature with respect to classical tissue P systems with cell division, in such a way that any symport/antiport rule can be conditioned by the presence of promoters. These elements were not present in P-Lingua so far, so they have been included in the language, and applied to the rules of the new models (tpdc,tpds and tpda). The example shown in Fig. 1 illustrate the use of the new feature: [p|b]’1 <--> [b,e]’0; [p|c]’1 <--> [c,e]’0; [p|b,c]’1 <--> []’0; As we can see in the example, the syntax prom | inside the left hand side of any of the rules is used, to express that the promoter object (pin the example) must be present in order to make the rule applicable. 4.4 Simulation of the new model with P-Lingua and MeCoSim A new simulator has been developed within P-Lingua framework, making use of the general simulator available for tissue P systems, but including the semantic and dynamic aspects derived from the use of promoters in the rules of the new model. Thus, once a P system in P-Lingua language is available in its text file, the simulator will perform a possible computation (let us recall our systems are nondeterministic) from the initial configuration given by the structure and multisets specified, producing the corresponding transitions until a halting configuration is reached. Thus, the simulation algorithm follows the general schema present in most of the simulators included in the platform: 54
10 Luis Valencia-Cabrera et al. 1. Initialization 2. For each computation step, while there are applicable rules: (a) Selection of rules (b) Execution of rules The initialization stage sets initial structures used by the algorithm (technical details are not relevant here). Then, the main loop runs until a halting configuration is reached (i.e., until no applicable rule is present). The selection phase checks for the applicability of the rules for each cell. Then, for every membrane, if there are applicable rules, a maximal set is selected non-deterministically, following the constraints detailed in Section 2. The applicability of a rule is determined by the presence of at least the number of objects of each type present in each interacting region cell (let us recall that, if the environment is one of such regions, the objects of the alphabet of the environment will be present in an arbitrarily large number of copies). Additionally, if promoters are included in the rule, then their presence will also be required in order to make the rule applicable. Finally, as a result of this selection phase, a set of rules have been selected. In this case, let us also recall that, while the multiplicity of each object restricts the choice of rules for our maximal set, in the case of promoters is different: with only one promoter object affecting many rules, all of them would be enabled in with respect to the promoter. In this sense, we say that rules do not compete for the promoters, they imply more a context condition that an object to consume (it is in fact not removed). Then, the execution phase applies the change in the configuration, passing from Ctto Ct+1, removing the objects consumed by the rules selected, and adding the objects produced, with the semantics specified in Section 2. 4.5 Availability of the software tools developed The tools described in the previous sections, concerning the language, parsing and simulation have made publicly available in the current version of MeCoSim, that can be downloaded from [27]. Once downloaded, whenever the software runs, if an Internet connection is active, it checks the presence of new versions of any of the files involved, thus guarantees it always provides the user with the last version of MeCoSim (that includes in its installation pLinguaCore). 4.6 Further technical considerations The tools developed along this work aim to complement P-Lingua framework, in order to provide both P system experts/designers and end users of the P-system based applications with an environment where they can debug their designs, verify solutions to hard problems and run virtual experiments for a variant of P system not previously supported. 55
Simulating Tissue P systems with promoters 11 The main challenges faced during the development are derived from the definition of a sub-language for tissue P systems with promoters integrated in P- Lingua framework, plus the corresponding simulator handling this variant of P system. On the one hand, the extension of the language includes new syntactic and grammatical elements for the parser, based on JavaCC [26], and the proper integration with the rest of P-Lingua language. On the other hand, the definition of the corresponding semantic constraints and the logic of the specific simulor, taking into account the semantic and dynamic aspects defined by tissue P systems with promoters and cell division [20], was developed in Java [25], and following the structure defined for other simulators and semantic decorations. Let us recall that the aim of P-Lingua framework and MeCoSim environment is the precise definition of each variant of P system covered from a functional point of view. Other aspects as the development of the fastest possible solutions for these systems (e.g., with parallel simulators using high performance computing - HPC) would be out of the scope of this work, and could improve the performance of the simulator developed. Those potential alternatives could still make use of the parsing tools developed with P-Lingua, and also be connected with MeCoSim environment acting as a client providing the interface and pre/post-processing tool for a server HPC-based simulator. 5 Case studies In the previous section, the software tools developed for the design and simulation of tissue P systems with promoters and cell division have been described. In this last section, we will illustrate the use of the software, showing the corresponding P-Lingua files specifying the solutions in the input format for the computer tools, and some runs for simple and complex problems. 5.1 Basic example In order to check the proper behavior of the new features included in our framework, we started with a very simple example, as included at the beginning of he paper: 1@model<tpdc> 2def main() 3{ 4@mu = [[]’1 []’2]’0; 5@ms(0) = b,c,e; 6@ms(1) = a,b,c; 7@ms(2) = p; 8[a]’1 <--> [p]’2; 9[p|b]’1 <--> [b,e]’0; 10 [p|c]’1 <--> [c,e]’0; 11 [p|b,c]’1 <--> []’0; 12 } 56
12 Luis Valencia-Cabrera et al. This simple example included both symport and antiport rules, so we made use of tpdc model, and started debugging in MeCoSim, as shown in Fig. 2. Fig. 2. Debugging a simple tissue P system with promoters in MeCoSim If we had used a different model, as tpda or tpds, our environment would inform us about the error, thus disabling the possibility to run it until we correct this aspect, as we can see in Fig. 3. Fig. 3. Informing about semantic errors 57
h?2 hrQ@bi;2 JmHiB@Q#D2+iBp2 PTiBKBxiBQM H;Q`Bi?K j RV +QMbi`m+i M BMBiBH TQTmHiBQM #b2/ QM i?2 MmK#2` Q7 p2?B+H2b r?B+? KF2b i?2 S`2iQ 7`QMi ?p2 Km+? KQ`2 2ti2MbB#BHBivX kV irQ@bi;2 2pQHmiBQM H;Q`Bi?K ha*P #b2/ QM BKT`Qp2/ La:@AA r?B+? Bb mb2/ iQ QTiBKBx2 hP@o_ShqX ha*P ;`2iHv BKT`Qp2b +QKTmi@ iBQMH 2{+B2M+v #v QTiBKBxBM; i`B@Q#D2+iBp2 iQ #B@Q#D2+iBp2 r?BH2 +QMbi`m+iBM; +QKTH2i2 BMBiBH TQTmHiBQMX h?2 `2KBMBM; +?Ti2`b Q7 i?Bb TT2` `2 KBMHv /BpB/2/ BMiQ 7QHHQrBM; b2+@ iBQMb, b2+iBQM k ;Bp2b i?2 Ki?2KiB+H KQ/2H M/ bQK2 #bB+ FMQrH2/;2 #Qmi KmHiB@Q#D2+iBp2 QTiBKBxiBQM T`Q#H2Kbc b2+iBQM j BMi`Q/m+2b T`QTQb2/ ha*P 7`QK +QKTmiiBQMH 7`K2rQ`F- +`Qr/BM; /2;`22- TQTmHiBQM bi`m+im`2- KBM HQQT M/ bQK2 Qi?2` bT2+ibc b2+iBQM 9 /2b+`B#2b i?2 2tT2`BK2MiH `2bmHib #v +QKT`BM; i?2 8e aQHQKQM(k9) #2M+?K`F BMbiM+2b- La:@AA M/ i?2 H;Q@ `Bi?K BM (kj)X KQM; i?2K- r2 mb2 i?`22 BM/2t2b BM+Hm/BM; TT`QtBKiBQM- /Bb@ i`B#miBQM M/ 2ti2MbB#BHBiv Q7 S`2iQ 7`QMi iQ /2KQMbi`i2 i?2 QmiT2`7Q`KM+2 Q7 ha*P BM QTiBKBxBM; hP@o_Shq M/ ha*P HbQ QmiT2`7Q`Kb BM QTiBKBxBM; #B@Q#D2+iBp2 i?`Qm;? 2tT2`BK2MiH +QKT`BbQM rBi? Qi?2` 2t+2HH2Mi #B@Q#D2+iBp2 QTiBKBxiBQM H;Q`Bi?KX k "bB+ h?2Q`v kXR Ji?2KiB+H JQ/2H Q7 hP@o_Shq M={1,2,···,m}-KBb b2i Q7 p2?B+H2bX N={R,2···,n}`2T`2b2Mib n(n≥m) +mbiQK2`b M/ i?2 /BbTi+?BM; +2Mi2` Bb /2MQi2/ b yX 1+? +mbiQK2` BKmbi #2 b2`p2/ #v QMHv QM2 p2?B+H2b BM i?2 iBK2 rBM/Qrb [Tsi,T ei]-r?2`2 Tsi M/ Tei Bb i?2 #2;BMMBM; M/ i?2 2M/ Q7 i?2 +mbiQK2` b2`p2/X A7 i?2 b2`p2/ p2?B+H2 ``Bp2b #27Q`2 Tsi- Bi rBHH rBi 7Q` Tsi iQ b2`p2X "27Q`2 T`2b2MiBM; i?2 Ki?2KiB+H 7Q`KmHiBQM- bQK2 7QHHQrBM; MQiiBQMb `2 /2}M2/, dij Bb i?2 /BbiM+2 #2ir22M ;`BM /2TQi BM/ ;`BM /2TQi D- riBb i?2 /2KM/ 7Q` ;QQ/b BM i?2 ;`BM /2TQi B- WBb i?2 KtBKmK HQ/ +T+Biv Q7 i?2 p2?B+H2- pk(pk⊂N)Bb i?2 ;`BM biQ`;2 TQBMi b2i 7Q` i?2 MmK#2` Q7 p2?B+H2b F- Tik Bb i?2 iBK2 TQBMi r?2M i?2 p2?B+H2 F``Bp2b i i?2 ;`BM /2TQi B tij Bb i`p2H iBK2- EBb +Q2{+B2MiX .2+BbBQM p`B#H2b, xijk =1 0 if vehicle Ftravels fromgrain depot Bto grain depot D otherwise 64
9 ha*P 7Q` hP@o_Shq h?2 Ki?2KiB+H KQ/2H Q7 hP@o_Shq UQTiBKBxiBQM KQ/2H AV Bb b 7QHHQrb, min f1= k∈M j∈N x0jk URV min f2= k∈M i∈N j∈N dijxijk UkV min f3=max k∈M i∈pk j∈pk dijxijk UjV s.t ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ k∈M j∈N xijk =1,∀i∈N i∈N (ri j∈N xijk)≤W, ∀k∈M j∈N x0jk = i∈N xi0k≤1,∀k∈M i∈N xihk = j∈N xhjk,∀h∈N,∀k∈M Tik +tij −K(1 −xijk)≤Tjk,∀i, j ∈N,∀k∈M k∈M i,j∈D xijk ≤|D|−1,∀D⊆N Tei ≥Tik ≥0 U9V AM i?Bb KQ/2H- P#D2+iBp2 URV Bb iQ KBMBKmK MmK#2` Q7 p2?B+H2bX P#D2+iBp2 UkV Bb iQ b?Q`i2bi iQiH /BbiM+2bX P#D2+iBp2 UjV Bb iQ b?Q`i2bi /BbiM+2b i`p2H2/ #v i?2 7`i?2bi p2?B+H2X U9V Bb iQ b?Qr i?2 Ki?2KiB+H KQ/2H Q7 HH +QMbi`BMibX kXk _2Hi2/ *QM+2Tib Q7 JmHiB@Q#D2+iBp2 PTiBKBxiBQM S`Q#H2K h?2 JmHiB@Q#D2+iBp2 PTiBKBxiBQM S`Q#H2K UJPSV Bb 2tT`2bb2/ b 7QHHQrb, miny=f(x)=(f1(x)......fm(x))T gi(x)≤0,i=1,2,...,u hj(x)=0,j =1,2,...,v h?2 #bB+ +QM+2Tib Q7 i?2 JPS bQHmiBQMb `2 /2b+`B#2/ b 7QHHQrb, .2}MBiBQM R G2i Ω={x|∀i(gi(x)≤0) ∧∀j(hj(x)=0)∧x∈Rn}#2 72@ bB#H2 bQHmiBQMb Q7 JPS- V={y=(y1,...,y m)|yi=fi(x)∧x∈Ω}#2 i?2 K@ /BK2MbBQMH i`;2i bT+2X RV 6Q` x1,x 2∈ΩB7 ∀j(fj(x1)≤fj(x2))∧∃k(fk(x1)<f k(x2))-x1/QKBMi2b x2-Bi +M #2 `2+Q`/2/ b x1x2X kV 6Q` ϕ⊂Ω-B7∀x1,x 2(x1,x 2∈ϕ∧¬(x1x2∨x2x1))-ϕBb MQM@ /QKBMi2/ b2iX jV 6Q` x(x∈Ω)-B7∀xx ∈Ω∧¬xx-xBb /2MQi2/ b S`2iQ@ QTiBKH bQHmiBQM- r?BH2 p2`i2t b2i ϕ⊂Ω-x(x∈ϕ)-B7 ∀xx ∈ϕ∧¬xx-x Bb /2MQi2/ b MQM@/QKBMi2/ bQHmiBQM Q7 p2`i2t b2i ϕX 65
h?2 hrQ@bi;2 JmHiB@Q#D2+iBp2 PTiBKBxiBQM H;Q`Bi?K 8 9VPS4x|x∈Ω∧∀xx ∈Ω∧¬xxBb MK2/ b b2i Q7 S`2iQ bQHmiBQMbr?BH2 ϕ⊂Ω-H2i NS(ϕ)=x|x∈ϕ∧∀xx ∈ϕ∧¬xx#2 MQM@/QKBMi2/ bQHmiBQM Q7 p2`i2t b2i ϕX G2i PS3#2 b2i Q7 S`2iQ bQHmiBQMb Q7 QTiBKBxiBQM KQ/2H AX 8VPF4{f(x)|x∈PS}Bb MK2/ b S`2iQ 7`QMi -q?BH2 ϕ⊂Ω- H2i NF (ϕ)= {f(x)|x∈NS(ϕ)}#2 MQM@/QKBMi2/ S`2iQ 7`QMi Q7 p2`i2t b2i ϕX G2i PF3 #2 S`2iQ 7`QMi Q7 QTiBKBxiBQM KQ/2H AX h?2 2bb2M+2 Q7 La:@AA Bb iQ }M/ p2`i2t b2i ϕ- BM Q`/2` iQ H2i i?2 MQM@ /QKBMi2/ 7`QMi NF (ϕ)TT`Q+? iQ S`2iQ 7`QMi PF3BM M QTiBKH rvX KQM; i?2K- r?2i?2` i?2 MQM@/QKBMi2/ 7`QMi NF (ϕ)Bb +`Qr/2/ Bb M BK@ TQ`iMi BM/2t iQ 2pHmi2 b2i Q7 MQM@/QKBMi2/ bQHmiBQMbNS(ϕ)- M/ i?2 H2bb +`Qr/2/ b2i Q7 MQM@/QKBMi2/ bQHmiBQMb NS(ϕ)Bb- i?2 KQ`2 2p2MHv i?2 MQM@ /QKBMi2/ 7`QMi Q7 NF (ϕ)Bb /Bbi`B#mi2/X .2}MBiBQM kU*`Qr/BM; .2;`22V 6Q` bQHmiBQM xiQ7 MQM@/QKBMi2/ b2i ϕ4{x1x2...xn}X RV 6Q` i?2 D@i? Q#D2+iBp2 7mM+iBQM- B7 fj(x1)≤fj(x2)≤... ≤fj(xn)-fj(x1)= fj(xn)=∞- Cj(xi)=[fj(xi+1)−fj(xi−1)] (fmax j(x)−fmin j(x)) ,(2 ≤i≤n@1) U8V kV +`Qr/BM; /2;`22 Q7 xiBb bmK Q7 +`Qr/BM; /2;`22 Q7 HH Q#D2+iBp2 7mM+iBQMbX C(xi)= m j=1 Cj(xi)UeV j h?2 hrQ@ai;2 JmHiB@P#D2+iBp2 PTiBKBxiBQM H;Q`Bi?K "b2/ PM *HbbB}2/ SQTmHiBQM AM i?Bb b2+iBQM- i?2 irQ@bi;2 KmHiB@Q#D2+iBp2 QTiBKBxiBQM H;Q`Bi?K #b2/ QM +HbbB}2/ TQTmHiBQM Uha*PV Bb T`QTQb2/ iQ QTiBKBx2 hP@o_ShqX AM b2+iBQM jXR- La:@AA +QKTmiBM; 7`K2rQ`F Bb BKT`Qp2/X AM b2+iBQM jXk- +`Qr/BM; /2;`22 Bb 2ti2M/2/X a2+iBQM jXj BMi`Q/m+2b i?`22 T`ib b2T`i2Hv, M BKT`Qp2K2Mi Q7 TQTmHiBQM bi`m+im`2 Bb 2tTHBM2/ BM /2iBH i i?2 }`bi T`ic i?2 b2+QM/ T`i /2b+`B#2b ?Qr iQ ;2i M BMBiBH TQTmHiBQMc i?2 i?B`/ T`i BMi`Q/m+2b /Bbi`B#miBQM Q7 }iM2bb pHm2bX jXR *QKTmiBM; 6`K2rQ`F Q7 ha*P La:@AA #bB+ 7`K2rQ`F, 6B`biHv- M BMBiBH T`2Mi TQTmHiBQM Bb `M/QKHv ;2M@ 2`i2/c i?2M bQK2 ;2M2iB+ QT2`iBQMb `2 mb2/ iQ T`Q/m+2 M BMi2`K2/Bi2 ;2M2`@ iBQM TQTmHiBQM- K2`;BM; Bi rBi? T`2Mi TQTmHiBQM- i?2M BMi2`K2/Bi2 ;2M2`iBQM TQTmHiBQM Bb /2H2i2/ i?`Qm;? /QKBMM+2 `2HiBQMb?BT M/ +`Qr/BM; /2;`22 `2HiBQMb?BT iQ Q#iBM i?2 QzbT`BM;X h?Bb #bB+ 7`K2rQ`F +M #2 BKT`Qp2/ BM irQ rvb, 66
e ha*P 7Q` hP@o_Shq RV h?2 [mHBiv Q7 M BMBiBH TQTmHiBQM bi`m+im`2 /B`2+iHv z2+ib +H+mHiBQM ++m`+v M/ 2{+B2M+v Q7 ha*PX h?2`27Q`2- i?2 H;Q`Bi?K Q7 +QMbi`m+iBM; M BMBiBH TQTmHiBQM Bb +`m+BHX kV .QKBMM+2 `2HiBQMb?BT M/ +`Qr/BM; /2;`22 `2HiBQMb?BT ?p2 H`;2 +QK@ TmiiBQMH +QbibX h?2 bBx2 Q7 M BMi2`K2/Bi2 ;2M2`iBQM TQTmHiBQM Bb /Qm#H2/ }`bi- M/ i?2M Bi Bb b?Q`i2M iQ ?H7 i?`Qm;? /QKBMM+2 `2HiBQMb?BT M/ +`Qr/@ BM; /2;`22 `2HiBQMb?BTX h?2`2 Bb `QQK BM i?Bb T`Q+2bb iQ BKT`Qp2 /m2 iQ 2t+2bbBp2 M/ BMpHB/ +H+mHiBQMbX AM pB2r Q7 #Qp2 irQ T`Q#H2Kb- i?2 7`K2rQ`F Q7 La:@AA Bb BKT`Qp2/ b 7QHHQrb, RV :2i M BMBiBH TQTmHiBQMX h?2 QTiBKBxiBQM H;Q`Bi?K Bb /2bB;M2/ iQ ;2i M BMBiBH TQTmHiBQM rBi? KQ`2 `2bQM#H2 bi`m+im`2X kV :`/mHHv QTiBKBxBM; KBM HQQT Q7 BMi2`K2/Bi2 ;2M2`iBQMX AM i?Bb KBM HQQT- r?2M M BMi2`K2/Bi2 ;2M2`iBQM r?B+? bi`ib rBi? T`2Mi TQTmHiBQM T2`@ 7Q`Kb ;2M2iB+ QT2`iBQM- Bi rBHH #2 mT/i2/X PzbT`BM; Bb Q#iBM2/ mMiBH ;2M2iB+ QT2`iBQMb `2 +QKTH2i2/ QM i?2 T`2Mi TQTmHiBQMX h?2 7`K2rQ`F Q7 ha*P Bb b?QrM BM 6B;XRX Initial Population Begin Second Stage Parent Population NO (m,n) Lower Bound and U pper Bound of Vehicle Number Individuals Satisfying U pper and Lower Bounds n d S t ag e P o pulatio n O O NO ( m,n ) L ower B ou n d an d U pper U B oun d o f V e hi c l e N umb er N I n d i v i du al s S atisfyin g U pper and U L B d YES Main Loop Operator Offspring Population Termination Criteria NO Stop YES Mai n L Ope ra Offspring Po T e rmin a Ci YES 6B;X RX i?2 ha*P 7`K2rQ`F 67
h?2 hrQ@bi;2 JmHiB@Q#D2+iBp2 PTiBKBxiBQM H;Q`Bi?K d h?2 7`K2rQ`F Q7 KBM HQQT QT2`iQ` b?Qrb BM i?2 b2+iBQM jX9 };XkX jXk 1ti2MbBQM Q7 *`Qr/BM; .2;`22 .Bb+`2i2 QTiBKBxiBQM T`Q#H2Kb U2bT2+BHHv o_ShqV ?p2 ?B;?2` +QBM+B/2M+2 /2;`22 Q7 Q#D2+iBp2 7mM+iBQM pHm2b KQM; TQTmHiBQM BM/BpB/mHb i?M +QMiBMm@ Qmb QTiBKBxiBQM T`Q#H2KbX q?2M +H+mHiBM; +`Qr/BM; /2;`22 Q7 o_Shq- BiBb BKTQ`iMi iQ T`Q+2bb i?2 +QBM+B/2M+2 /2;`22 Q7 i?Bb Q#D2+iBp2 7mM+iBQM pHm2- M/ 2ti2M/ +`Qr/BM; /2;`22 Q7 /Bb+`2i2 QTiBKBxiBQM T`Q#H2KX L2ti- r2 /Bb+mbb i?2 2ti2MbBQM Q7 +`Qr/BM; /2;`22 Q7 /Bb+`2i2 QTiBKBxiBQM T`Q#H2KX G2i S(xi)#2 bQHmiBQM b2i BM HH JPS r?B+? +QBM+B/2b rBi? bQHmiBQMb BMf(xi) -S(xi)={x|m Λ k=1 fk(xi)=fk(x)}XP#pBQmbHv- i?2`2 Bb xi∈S(xi)- i?2 +`Qr/BM; /2;`22 Q7 bQHmiBQM r?B+? ?b ?B;?2` /2;`22 Q7 TQHvK2`BxiBQM Bb KQ`2 bKHH2`X A7 |S(xi)|4 k- Bi K2Mb i?i i?2`2 Bb bQHmiBQM i?i +QBM+B/2b rBi? xir2 +M b2i C(xi)=(1−2) = −1XA7|S(xi)|4j- Bi K2Mb i?i i?2`2 `2 irQ bQHmiBQMb i?i +QBM+B/2 rBi? xi-r2 +M b2i C(xi)=(1−3) = −2X aQ- r?BH2 |S(xi)|≥2-C(xi)= (1 −|S(xi)|)X .2}MBiBQM jU1ti2M/2/ *`Qr/BM; .2;`22V 6Q` bQHmiBQM xiQ7 MQM@ /QKBMi2/ b2i ϕ4{x1x2...xn}- C(xi)=⎧ ⎨ ⎩ m j=1 Cj(xi) (1 −|S(xi)|) |S(xi)|=1 |S(xi)|≥2 UdV h?2`2 Bb +H+mHiBQM T`Q+2bb Q7 i?2 2ti2M/2/ +`Qr/BM; /2;`22 BM H;Q`Bi?KRX H;Q`Bi?K R, +`Qr/BM; UQV R, 6Q` 2+? q∈Q k, A7 U|S(q)|≥2V j, Cq=1−|S(q)| 9, 1M/ 7Q` 8, 6Q` D iQ 2M/ e, 6Q` 2+? Q#D2+iBp2 K d, bQ`iUQ, mV 3, C1=Cend =∞ N, Ci=Ci+(Q[j+1].m −Q[j−1].m)/(fmax m−fmin m) Ry, 1M/ 7Q` RR, 1M/ 7Q` q?2`2 Q[j].m `2T`2b2Mib K@i? /BK2MbBQM Q#D2+iBp2 7mM+iBQM pHm2 Q7 i?2 bQHmiBQM DX 68
3 ha*P 7Q` hP@o_Shq jXj AKT`Qp2K2Mi M/ +[mBbBiBQM Q7 SQTmHiBQM ai`m+im`2 jXjXR *HbbB}+iBQM SQTmHiBQM ai`m+im`2 +`Bi2`BQM 7Q` 2pHmiBM; QTiBKH@bQHmiBQM b2i Q7 JmHiB@Q#D2+iBp2 BMi2HHB;2Mi QT@ iBKBxiBQM H;Q`Bi?K Udz1pHmiBM; PTiBKH aQHmiBQMb *`Bi2`BQMǴV Bb, RV h?2 MQM@/QKBMi2/ 7`QMi NF (ϕ)Q7 QTiBKH bQHmiBQMb Bb +HQb2 2MQm;? iQ PF3X kV h?2 MQM@/QKBMi2/ 7`QMi NF (ϕ)2ti2MbB#BHBiv Q7 QTiBKH bQHmiBQMb ?b rB/2` `M;2X jV h?2 MQM@/QKBMi2/ 7`QMi NF (ϕ)/Bbi`B#miBQM Q7 QTiBKH bQHmiBQMb Bb KQ`2 mMB7Q`KX PF Q7 /Bb+`2i2 KmHiB@Q#D2+iBp2 QTiBKBxiBQM T`Q#H2K Bb }MBi2 p2`i2t b2i- M/ i?2 MmK#2` Q7 p2?B+H2b Q7 hP@o_Shq Bb M BMi2;2` pHm2 rBi?BM +2`iBM `M;2X h?2`27Q`2- r?2M +H+mHiBM; #Qmi hPo_Shq- r2 }`biHv +HbbB7v BMBiBH TQTmHiBQM ++Q`/BM; iQ i?2 iQiH MmK#2` Q7 p2?B+H2b BM PF3XPF3?b #22M `2+?2/ QM Q#D2+iBp2 f1- K22iBM; +`Bi2`B Q7 i?2 QTiBKH KQ/2H AX G2i iQiH MmK#2` Q7 p2?B+H2b BM PF3#2 BM i?2 `M;2 [m, n]X "B@Q#D2+iBp2 o_Shq BKBM; i i?2 b?Q`i2bi /BbiM+2 M/ i?2 7`i?2bi p2?B+H2 /BbiM+2 Bb +QKTQb2/ #v Q#D2+iBp2 7mM+iBQMb UkV-UjV M/ +QMbi`BMi +QM/BiBQM U9VX h?2 Ki?2KiB+H KQ/2H Q7 #B@Q#D2+iBp2 o_Shq Bb +HH2/ QTiBKBxiBQM KQ/2H AAX h?2Q`2K R G2i PS2#2 b2i Q7 S`2iQ bQHmiBQMb Q7 QTiBKBxiBQM KQ/2H AA i?2M n=Kt f1(x)|x∈R2#2 mTT2` #QmM/ Q7 i?2 MmK#2` Q7 p2?B+H2b BM PF3X S`QQ7,6Q` ∀xx ∈Ω∧f1(x)>n -bBM+2 PS2Bb b2i Q7 S`2iQ bQHmiBQMb Q7 QTiBKBxiBQM KQ/2H AA - ∃xx∈PS2-f2(x)≥f2(x)∧f3(x)≥f3(x)M/ f1(x)>n≥f1(x)Xh?2`27Q`2-xxBb BM b2i PS3- i?i nBb mTT2` #QmM/ Q7 i?2 MmK#2` Q7 p2?B+H2b BM PF3X ++Q`/BM; iQ i?2Q`2K R- BM i?2 hP@o_Shq- Bi Bb 72bB#H2 iQ +[mB`2 iQiH MmK#2` Q7 p2?B+H2b BM PF3i i?2 }`bi iBK2X i?2`27Q`2- r2 mb2 i?2 TQTmHiBQM bi`m+im`2 +HbbB}2/ ++Q`/BM; iQ i?2 MmK#2` Q7 p2?B+H2bX h?2 bT2+B}+ TQTmHiBQM bi`m+im`2 Bb b 7QHHQrb, D=⎛ ⎜ ⎜ ⎝ mx m,1... xm,km m+1xm+1,1... xm+1,km+1 ... ... ... ... nx n,1... xn,kn ⎞ ⎟ ⎟ ⎠ q?2`2 xi,j (m≤i≤n, 1≤j≤ki)Bb i?2 D@i? BM/BpB/mH Q7 +Hbb i-kiBb i?2 MmK#2` Q7 BM/BpB/mHb Q7 +Hbb i- i?2 MmK#2` Q7 TQTmHiBQM Bb N=km+km+1 + ... +knX jXjXk AMBiBH TQTmHiBQM +[mBbBiBQM AM Q`/2` iQ Q#iBM i?2 `2[mB`2/ MmK#2` Q7 p2?B+H2b Q7 HH FBM/b- M B/2 Q7 irQ@ bi;2 Bb mb2/ iQ /2bB;M iQ +[mB`2 i?2 BMBiBH TQTmHiBQM BM Qm` H;Q`Bi?K, AM 69
h?2 hrQ@bi;2 JmHiB@Q#D2+iBp2 PTiBKBxiBQM H;Q`Bi?K N i?2 }`bi bi;2- bBM;H2@Q#D2+iBp2 QTiBKBxiBQM KQ/2H +QMbBbi2/ Q7 i?2 Q#D2+iBp2 7mM+iBQM URV M/ i?2 +QMbi`BMi +QM/BiBQM U9V Bb +H+mHi2/ iQ Q#iBM HQr2` #QmM/ X AM i?2 b2+QM/ bi;2- /Qm#H2@Hv2` KmHiB@Q#D2+iBp2 QTiBKBxiBQM KQ/2H Bb /2bB;M2/- M/ i?Bb KQ/2H Bb +H+mHi2/ iQ Q#iBM M mTT2` #QmM/ nX h?2 /Qm#H2@Hv2` KmHiB@Q#D2+iBp2 QTiBKBxiBQM KQ/2H BM+Hm/2b +QMbi`BMi +QM@ /BiBQM U9V -P1M/ P1X P1M/ P1`2 b?QrM b 7QHHQrb, P1:min F1=(f2,f 3) P2:max F2=f1 AM i?2 KQ/2H- Q#D2+iBp2 P1?b ?B;?2` T`BQ`Biv i?M Q#D2+iBp2 P2X >2M+2- M QTiBKH bQHmiBQM +H+mHi2/ #v i?2 KQ/2H Bb iQ KtBKBx2 Q#D2+iBp2 f1mM/2` i?2 T`2KBb2 i?i Q#D2+iBp2b f2M/ f3`2 #Qi? i?2 bKHH2biX AM Q`/2` iQ +H+mHi2 M BMBiBH TQTmHiBQM- r2 Dmbi M22/ iQ mb2 M BMi2HHB;2Mi QTiBKBxiBQM H;Q`Bi?K iQ bQHp2 bBM;H2@Q#D2+iBp2 QTiBKBxiBQM KQ/2H i }`bic M/ i?2M- #B@Q#D2+iBp2 La:@AA Q7 (f2,f 3)Bb mb2/ iQ bQHp2 i?2 /Qm#H2@Hv2` KmHiB@Q#D2+iBp2 QTiBKBxiBQM KQ/2HX KQM; i?2K- /QKBMM+2 `2HiBQMb?BTQ7 #B@Q#D2+iBp2 (f2,f 3)Bb mb2/ iQ bQHp2 T`Q#H2Kb Q7 7bi MQM@/QKBMi2/ bi`iB}+@ iBQM- M/ Q`/2`BM; T`Q#H2K Bb bQHp2/ ++Q`/BM; iQ i?2 pHm2 Q7 Q#D2+iBp2 f1BM 2+? Hv2`X G2i I#2 M BMBiBH TQTmHiBQM- Q#2 +[mB`2/ BMBiBH TQTmHiBQMX H;Q`Bi?K k, ;2i@BMBi@TQTUIV R, t←0 k, _2T2i j, qt←+`@;2M2`i2UItVfff1+H+mHi2b iQ ;2i M QTiBKH BM/BpB/mH 7Q` 2+? ;2M2`iBQM 9, Q1←qt 8, m←Min(car)ff:2i i?2 KBMBKmK MmK#2` Q7 p2?B+H2b e, t←t+1 d, lMiBH 2M/ ;2M2`iBQM 3, t←0 N, _2T2i Ry, Q2←+`@+`/Bb@;2M2`i2UItVfff2,f 3#B@Q#D2+iBp2 +H+mHi2b iQ ;2i b2i Q7 S`2iQ bQHmiBQMb RR, lMiBH i2`KBMiBQM +QM/BiBQM 7mH}HH2/ Rk, n←Max(Q2)ff :2i i?2 KtBKmK MmK#2` Q7 p2?B+H2b Rj, Q←K2`;2 UQ1-Q2V ff :2i M BMBiBH TQTmHiBQM h?2 H;Q`Bi?K bT2+B}+ T`Q+2bb 7Q` +H+mHiBM; M BMBiBH TQTmHiBQM Bb b?QrM BM H;Q`Bi?K kX aBM+2 i?2`2 `2 QM2 M/ irQ Q#D2+iBp2b BM i?2 }`bi M/ b2+QM/ bi;2b- i?2 TQTmHiBQM bBx2 Q7 H;Q`Bi?K Bb `2/m+2/ #v i H2bi QM2 Q`/2` Q7 K;MBim/2 +QKT`2/ iQ i`B@Q#D2+iBp2X qBi?Qmi +H+mHiBQM Q7 +`Qr/BM; /2;`22- +QKTH2tBiv Q7 i?Bb H;Q`Bi?K Bb 7m`i?2` `2/m+2/X h?2 b2H2+iBQM Q7 iQm`MK2Mi KF2b i?2 /2bB;M Q7 }iM2bb pHm2 KQ`2 bBKTHB}2/X h?2`27Q`2- Qm` H;Q`Bi?K /2bB;M2/ 7Q` +H+mHiBM; BMBiBH TQTmHiBQM THvb `QH2 BM `2/m+BM; i?2 /BK2MbBQM Q7 Q#D2+iBp2 7mM+iBQMbX 70
Ry ha*P 7Q` hP@o_Shq jXjXj .Bbi`B#miBQM Q7 6BiM2bb oHm2b hQ 2Mbm`2 i?i BM/BpB/mHbǶ /Bbi`B#miBQM #2ir22M BMi`@TQTmHiBQM +Hbb M/ BMi2`@ TQTmHiBQM +Hbb `2 M2`Hv mMB7Q`K M/ i?2 TQTmHiBQM TT`Q+?2b iQ PF3/m`@ BM; Bi2`iBp2 T`Q+2bb2bX q2 /2bB;M K2i?Q/ 7Q` bbB;MBM; TQTmHiBQM }iM2bb pH@ m2b- r?B+? QT2`i2b QM 2+? ivT2 Q7 TQTmHiBQM . b 7QHHQrb, RV S2`7Q`K 7bi MQM@/QKBMi2/ bi`iB}+iBQM BM i?2 +Hbb ++Q`/BM; iQ /QKB@ MM+2 `2HiBQMb?BT Q7 #B@Q#D2+iBp2 (f2,f 3)- kV AM 2+? Hv2`- bQ`i BM b+2M/BM; Q`/2` Q7 +`Qr/BM; /2;`22 ++Q`/BM; iQ i?2 +`Qr/BM; /2;`22 `2HiBQMb?BT Q7 #B@Q#D2+iBp2 (f2,f 3)- jV AM i?2 +Hbb- ++Q`/BM; iQ /QKBMM+2 `2HiBQMb?BT M/ +`Qr/BM; /2;`22 `2HiBQMb?BT- r2 MmK#2` TQTmHiBQM . T`Q;`2bbBp2Hv 7`QK ;QQ/ iQ #/ BM Q`/2` iQ ;2i Ji`Bt D∗, .∗=⎛ ⎜ ⎜ ⎝ mk m... 2 m+1km+1 ... 2 ... ... ... ... nk n... 2 1 1 ... 1 ⎞ ⎟ ⎟ ⎠ 9V LQ`KHBx2 rBi?BM i?2 +Hbb pi,j =j ki j=1 j ,(m≤i≤n, 1≤j≤ki) h?2 }iM2bb pHm2 Ki`Bt Q#iBM2/ 7i2` MQ`KHBxiBQM Bb b 7QHHQrb, P=⎛ ⎜ ⎜ ⎝ mp m,1pm,2... m+1pm+1,1pm+1,2... ... ... ... ... np n,1pn,2... pm,j pm+1,j ... pn,j ⎞ ⎟ ⎟ ⎠ h?2 /Bbi`B#miBQM Q7 }iM2bb pHm2b ?b 7QHHQrBM; /pMi;2b +QKT`2/ iQ i`/B@ iBQMH La:@AA, RV aBM+2 i?Bb H;Q`Bi?K mb2b b2H2+iBQM K2i?Q/ Q7 iQm`MK2Mi- Bi QMHv M22/b iQ #2 MQ`KHBx2/ BM 2+? +Hbb- i?mb `2/m+BM; Bib +QKTmiiBQMH +QbibX kV aBM+2 i?2 +H+mHiBQM Q7 /QKBMM+2 `2HiBQMb?BT M/ +`Qr/BM; /2;`22 Bb +``B2/ Qmi mM/2` #B@Q#D2+iBp2- +QKT`2/ rBi? i`B@Q#D2+iBp2- +QKTH2tBiv Q7 i?Bb H;Q`Bi?K Bb 7m`i?2` `2/m+2/ BM Hv2`BM; M/ bQ`iBM;- r?B+? THvb `QH2 BM `2/m+@ BM; i?2 /BK2MbBQM Q7 i?2 Q#D2+iBp2 7mM+iBQMbX jV h?2 /Bbi`B#miBQM Q7 }iM2bb pHm2 2Mbm`2b i?i i?2 MmK#2` Q7 BM/BpB/mHb #2ir22M +Hbb2b Bb mMB7Q`K QM i?2 T`2KBb2 i?i i?2 TQTmHiBQM TT`Q+?2b PF3X jX9 JBM GQQT PT2`iQ` Q7 AMi2`K2/Bi2 :2M2`iBQM h?2 i`/BiBQMH La:@AA TQTmHiBQM T`Q/m+iBQM T`Q+2bb, i }`bi- ;2M2`i2 BM@ i2`K2/Bi2 ;2M2`iBQM i?`Qm;? ;2M2iB+ QT2`iQ`bc b2+QM/Hvr2 K2`;2 i?2K rBi? T`2Mi TQTmHiBQMc }MHHvr2 +M Q#iBM i?2 QzbT`BM; i?`Qm;? +2`iBM FBM/ Q7 /2H2iBQM `mH2X h?2 TQTmHiBQM r?B+? Bb K2`;2/ #v BMi2`K2/Bi2 ;2M2`iBQM M/ 71
h?2 hrQ@bi;2 JmHiB@Q#D2+iBp2 PTiBKBxiBQM H;Q`Bi?K RR T`2Mi M22/b iQ Q#iBM i?2 #bBb Q7 /2H2iBQM #v +H+mHiBM; }iM2bb pHm2X h?2 KBM +QKTmiiBQMH #m`/2M Q7 i?Bb T`i Bb `2+H+mHiBQM Q7 }iM2bb pHm2X h?2`2@ 7Q`2- ?Qr iQ `2/m+2 +H+mHiBQM Q7 }iM2bb pHm2 i i?Bb bi;2 Bb i?2 KQiBpiBQM 7Q` Ǵ KBM HQQT QT2`iQ` Q7 BMi2`K2/Bi2 ;2M2`iBQM UKB//H2@;2M2`iBQM@ mT/i2VǴ T`QTQb2/ BM i?Bb [m2biBQMX h?2 B/2 Q7 i?Bb KBM HQQT Bb, ǴiFBM; T`2Mi b BMi2`K2/Bi2 ;2M2`iBQMc i?2 BM/BpB/mH ;2M2`i2/ #v 2+? ;2M2iB+ QT@ 2`iBQM Bb }`bi BMb2`i2/ BMiQ BMi2`K2/Bi2 ;2M2`iBQM- M/ i?2M i?2 BMi2`K2/Bi2 ;2M2`iBQM Bb mT/i2/ ++Q`/BM; iQ /2H2iBQM `mH2 mMiBH HH ;2M2iB+ QT2`iBQMb `2 +QKTH2i2/c i?2 BMi2`K2/Bi2 ;2M2`iBQM Bb i?2 QzbT`BM; TQTmHiBQMXǴ h?Bb KBM HQQT pQB/b /Qm#H2 +QmMiBM; 2z2+iBp2HvX h?2 BKTH2K2MiiBQM Q7 dz;`/mHHv QTiBKBxBM; i?2 KBM HQQT Q7 BMi2`K2/Bi2 ;2M2`iBQMǴ Bb /2T2M/2Mi QM irQ `mH2b, i?2 BMb2`iBQM `mH2 M/ i?2 /2H2iBQM `mH2- r?B+? `2 /2b+`B#2/ BM /2iBH #2HQrX AMb2`iBQM `mH2U//U[VV, G2i i?2 BM/BpB/mH iQ #2 BMb2`i2/ q#2HQM; iQ i?2 B@i? +Hbbc i`p2`bBM; 2+? BM/BpB/mH BM i?2 B@i? +Hbb BM im`Mc bmK Q7 i?2 MmK#2` Q7 BM/BpB/mHb i?i /QKBMi2 qBb i?2 /QKBMM+2 H2p2H Q7 q- M/ i?2 BM/BpB/mH H2p2H /QKBMi2/ #v qrBHH BM+`2b2 QM2 mMBi- M/ 7Q` i?2 +Hbb r?B+? qBb HQ+i2/`2@``M;BM; #v 7bi MQM@/QKBMiBQM bi`iB}+iBQM M/ `2@bQ`iBM; #v +`Qr/BM; /2;`22X .2H2iBQM `mH2U/2HUQ, fitnminVV, _2+H+mHi2 }iM2bb pHm2 7Q` i?2 B@i? +Hbbc b2H2+i BM/BpB/mHb rBi? i?2 bKHH2bi }iM2bb pHm2 KQM; TQTmHiBQMb iQ /2H2i2X G2i Q#2 M BMBiBH BMi2`K2/Bi2 ;2M2`iBQM i2KTHi2- M/ QT2`iBQMb Q7 ;`/mHHv QTiBKBxBM; i?2 KBM HQQT Q7 i?2 BMi2`K2/Bi2 ;2M2`iBQM b b?QrM BM H;Q`Bi?K jX H;Q`Bi?K j, KB//H2@;2M2`iBQM@mT/i2UQV R, Q∗:UQV ff :2M2iB+ KMBTmHiBQM `2bmHib BM BMi2`K2/Bi2 ;2M2`iBQM iQ #2 BMb2`i2/ k, 6Q` 2+? q∈Q∗ j, nq=0 9, 6Q` 2+? p∈Q 8, B7UpqV e, nq++ffnqBb i?2 /QKBMMi H2p2H Q7 [ d, B7UqpV 3, np++ N, 7bi@MQM@/QKBMi2/@bQ`iUQ[q]V ff LQM@/QKBMi2/ `MFBM; Q7 i?2 +Hbb BM r?B+? [Bb HQ+i2/ Ry, +`Qr/BM; UQ[q]V ff*H+mHi2 i?2 +`Qr/BM; /2;`22 Q7 [ RR, //U[V ffAMb2`i [ Rk, /2HUQ, fitnminV ff .2H2i2 BM/BpB/mHb rBi? i?2 HQr2bi }iM2bb pHm2 AM i?2 KB//H2@;2M2`iBQM@mT/i2- i?2 +`Qr/BM; /2;`22 +H+mHiBQM `mH2 2M@ bm`2b i?i QM2 +Hbb Bb KQ`2 #HM+2/- M/ i?2 }iM2bb pHm2 HHQ+iBQM bi`i@ 2;v 2Mbm`2b KQ`2 #HM+2/ +HbbX Ai +?B2p2b i?Bb Tm`TQb2 Q7 PF3iQ #2 KQ`2 mMB7Q`KX h?2 ~Qr +?`i 7Q` ;`/mHHv QTiBKBxBM; BMi2`K2/Bi2 ;2M2`iBQM Bb b 7QHHQrb, 72
Rk ha*P 7Q` hP@o_Shq Begin Genetic Operator Selection Crossover Mutation Update of Intermediate Population Update Completed YES Stop Ge n Op er Up dat e of I n P op u l Update C NO 6B;X kX i?2 ~Qr +?`i 7Q` ;`/mHHv QTiBKBxBM; KBM HQQT Q7 BMi2`K2/Bi2 ;2M2`iBQM 9 1tT2`BK2MiH _2bmHib M/ MHvbBb AM i?Bb TT2`- r2 p2`B7v 72bB#BHBiv M/ `iBQMHBiv Q7 ha*P i?`Qm;? 2tT2`@ BK2MibX AM i?2 }`bi T`ir2 rBHH BMi`Q/m+2 i2bi BMbiM+2b- T`K2i2` imMBM;- T2`7Q`KM+2 K2i`B+b M/ 2tT2`BK2MiH +QKT`BbQMb BM b2+iBQMb 9XR M/ 9XkXAM i?2 b2+QM/ T`ir2 `2bT2+iBp2Hv +QKT`2 ha*P rBi? Qi?2` H;Q`Bi?Kb M/ i?2 #2bi FMQrM bQHmiBQMb BM b2+iBQMb 9Xj M/ 9XeX AM Q`/2` iQ i2bi T2`7Q`KM+2 Q7 i?2 T`QTQb2/ H;Q`Bi?K- r2 mb2 i2bi b2i Q7 aQHQKQMǶb #2M+?K`Fb 7Q` bBK@ mHiBQM 2tT2`BK2MibX h?2 2tT2`BK2MiH 2MpB`QMK2Mi 7Q` HH 2tT2`BK2MiH i2bib, 2tT2`BK2MiH bQ7ir`2,oakyRjc T`Q;`KKBM; HM;m;2, * HM;m;2c T`Q+2bbQ`, AMi2HU_V*Q`2UhJV B8@8jyy*Sl kXj:>xqBM/QrbRy-e9 #BibX 9XR h2bi *b2 M/ S`K2i2` a2iiBM;b h?Bb TT2` mb2b i?2 r2HH@FMQrM aQHQKQMǶb #2M+?K`F i2bi b2i iQ MHvx2 +QK@ TmiiBQMH T2`7Q`KM+2 Q7 Qm` H;Q`Bi?K- M/ +QKT`2b bQHmiBQMb BM i?2 aQHQKQM i2bi b2i rBi? bQHmiBQMb Q#iBM2/ #v i?Bb H;Q`Bi?K- i?mb `2~2+iBM; i?2 `272`2M+2 bB;MB}+M+2 Q7 Qm` H;Q`Bi?K BM bQHpBM; hP@o_ShqX 73
h?2 hrQ@bi;2 JmHiB@Q#D2+iBp2 PTiBKBxiBQM H;Q`Bi?K RN +H+mHiBQM `2bmHib BM h#H2 eX AM h#H2 e- i?2b2 2B;?i H;Q`Bi?Kb +M bQHp2 #B@ Q#D2+iBp2 (− f1,− f2)QTiBKBxiBQM T`Q#H2K- r?BH2 ha*P +M bQHp2 i`B@Q#D2+iBp2 (− f1,− f2,− f3)QTiBKBxiBQM T`Q#H2KX h?2`27Q`2- r2 +M QMHv +QKT`2 QTiBKH bQHm@ iBQMb Q7 #B@Q#D2+iBp2 (− f1,− f2)BM i`B@Q#D2+iBp2b(− f1,− f2,− f3)rBi? i?Qb2 Q7 i?2 2B;?i H;Q`Bi?KbX h#H2 eX +H+mHiBQM `2bmHib Q7 ha*P M/ Qi?2` H;Q`Bi?Kb H;Q`Bi?K *R *k _R _k _*R _*k >JP1(R9) URy- 3k3Xd9V Uj- 8NyXe33V URkXNRe-RR3dXj8V UjX898-N8RXd9kV URkXjd8-Rj88Xje8V U9Xk8y-Rye3Xk88V JP:(ke) URy- 3k3X93V Uj- 8NyX8jRV URkXeee-RkRkX83V UjXyNy-N8eXdj9V URkXjd8-RjdNX3e8V UjX8yy-RR93XeeRV J*a@A>(kd) URy- 3k3Xj3V Uj- 83NX383V URRXNRe-RkyNX3NV UkXdkd-N8RXeeyV URRX8yy-Rj39XRe9V UjXk8-RRRNXRdjV >a6G(k3) URy- 3k3Xj3V Uj- 83NX383V URRXNRe-RkRyXj9V UkXdkd-N8RXyjyV URRX8yy-Rj39XRe8V UjXk8-RRRNXk3NV AGLa(kN) URy- 3jjXRyV Uj- 8NRXjRjV URkXk8y-RkR3Xk3V UjXkdk-Ne9XRyNV URkXRk8-RjeNX8eeV UjXd8-RRjRXR38V G:(jy) URy- 3k3Xj3V Uj- 8NyXjNjV URjX8yy-RR33X38V U8X898-33eXyk8V URjXk8y-RjeyXNeRV UeX3d8-RyRjXk33V >*P(jR) URy- 3j3Xj3V Uj- e99X3deV URkX8-RkyjXj3V UjXkdk-NReXdj3V URkXRk8-RjejXjeeV UjXd8-RRjkX8N9V *P@h#m(jk) URy- 3kNXyRV Uj- 8NyXdd3V URj- RRy8XNR8V U9XR3R-N8RXjeRV URkXk8-Rj3yX889V U9Xd8-RyN8X399V ha*P URy- 3k3X93V Uj- 8NyX9ddV URj- RR33Xj8V UjXeje-33dXk8yV URkXjd8-Rj88Xje8V UjXd8-RRRdXRRjV q2 FMQr i?i BM Q`/2` iQ +?B2p2 bK2 +H+mHiBQM ++m`+v- i?2 +Q``2bTQM/@ BM; TQTmHiBQM bBx2 M22/b iQ #2 2MH`;2/ iQ TQr2` Q`/2` 7Q` 2+? //BiBQMH /BK2MbBQM Q7 i?2 Q#D2+iBp2 7mM+iBQMX 6Q` 2tKTH2- B7 TQTmHiBQM bBx2 Q7 bBM;H2@ Q#D2+iBp2 Bb 101- i?2M i?2 TQTmHiBQM bBx2 Q7 #B@Q#D2+iBp2 M/ i`B@Q#D2+iBp2 M22/b iQ `2+? 102M/ 103BM Q`/2` iQ +?B2p2 bK2 +H+mHiBQM ++m`+vX h?2 T`2bbm`2 Q7 +QKTmiiBQMH bT+2 M/ iBK2 KF2b i?2 TQTmHiBQM bBx2 Q7 ha*P mM#H2 iQ K22i bm+? `2[mB`2K2MibX h#H2 e `2~2+ib i?2 `2bmHib Q7 i`B@Q#D2+iBp2 ha*P +QKT`2/ rBi? i?2 Qi?2` 2B;?i H;Q`Bi?Kb r?B+? `2 #B@Q#D2+iBp2 BM i?2 #b2M+2 Q7 7B`M2bbX h?2`27Q`2- B7 i?2 `2bmHib Q7 ha*P `2 MQi bB;MB}+MiHv /Bz2`2Mi 7`QK i?2 #2bi `2bmHib Q7 Qi?2` 2B;?i H;Q`Bi?Kb- Bi +M #2 +QM+Hm/2/ i?i ha*P ?b +2`iBM /2;`22 Q7 +QKT2iBiBQMX AM Q`/2` iQ [mMiB7v `2HiBp2 bmT2`BQ`Biv Q7 ha*P M/ Qi?2` H;Q`Bi?Kbr2 +H+mHi2 `2HiBp2 `iBQ Q7 ha*P `2bmHib QM i?2 B@i? /BK2MbBQM Q#D2+iBp2 iQ QTiBKH `2bmHibVi=fCT SNSGA−II i−fmin i fmax i−fmin i -fCTSNSGA−II i`2T`2b2Mib K2M pHm2 Q7 i?2 B@i? Q#D2+iBp2 Q7 ha*P- `2bT2+iBp2Hv `2T`2b2Mi i?2 mTT2` M/ HQr2` #QmM/b Q7 i?2 B@i? /BK2MbBQM Q#D2+iBp2X h?2 bKHH2` Bb- i?2 +HQb2` ha*P `2bmHib `2 iQ i?2 QTiBKH H;Q`Bi?KX 6B;Xj b?Qrb b+ii2` THQi Q7 `2bmHib Q7 MBM2 H;Q`Bi?Kb BM h#H2 eX MHvbBb 7`QK 6B;Xj Bb b 7QHHQrb,RV AM *R- ha*P #bB+HHv +QBM+B/2b rBi? QTiBKH bQHmiBQMb Q7 Qi?2` H;Q`Bi?Kb- M/ (V1,V 2)=(0,0.012)X Ai BM/B+i2b i?i ha*P ?b Q#pBQmb /pMi;2b BM +QKTmiBM; `2bmHib BM b2ib *R M/ *kX kV AM _R- ha*P Bb MQi /QKBMMi BM b+ii2` THQi- M/ (V1,V 2)=(0.684,0.734)c AM _k- ha*P Bb HQ+i2/ QM i?2 HQr2` bB/2 Q7 MBM2 p2`i2t2b 7`QMi BM b+ii2` THQiX Ai BM/B+i2b i?i +H+mHiBQM `2bmHib Q7 ha*P BM b2i _ `2 MQi bmT2`BQ` iQ i?i Q7 b2i *- M/ (V1,V 2)=(0.jkR,0.014)X >Qr2p2`- ha*P Bb ;2M2`HHv #Qp2 K2/BmK H2p2H M/ biBHH ?b +2`iBM /pMi;2bX jV AM _*R- ha*P Bb HQ+i2/ QM i?2 HQr2` bB/2 Q7 MBM2 p2`i2t2b 7`QMi BM b+ii2` THQi- (V1,V 2)=(0.5,0)c BM _*k- 80
ky ha*P 7Q` hP@o_Shq & & 5 5 5& 5& 6B;X jX a+ii2` THQi BM `2bmHib Q7 ha*P M/ Qi?2` H;Q`Bi?Kb ha*P Bb MQi /QKBMMi BM b+ii2` THQi- (V1,V 2)=(0.Rj3,0.d6d)X Ai BM/B+i2b i?i +H+mHiBQM `2bmHib Q7 ha*P BM b2i _* `2 #2ii2` i?M i?Qb2 BM b2i _- #mi MQi b ;QQ/ b i?Qb2 BM b2i *X aBKBH`Hvha*P Bb ;2M2`HHv #Qp2 K2/BmK H2p2H M/ biBHH ?b +2`iBM /pMi;2bX AM bmKK`v- +QKT`2/ rBi? Qi?2` H;Q`Bi?Kbha*P Bb +QKT2iBiBp2X 9Xe *QKT`BbQM M/ MHvbBb Q7 ha*P M/ PTiBKH aQHmiBQMb hQ 2pHmi2 bmT2`BQ`Biv Q7 ha*P +QKTmiBM; T2`7Q`KM+2- r2 +QKT`2 bQHm@ iBQM Q7 NF (ϕ)rBi? i?2 #2bi@FMQrM /iX KQM; i?2KX Bb i?2 /Bz2`2M+2 #2ir22M bQHmiBQM Q7 NF (ϕ)M/ i?2 #2bi /i, dif < 0X BM/B+i2b i?i i?2 +H+mHi2/ NF (ϕ)Q7 ha*P Bb #2ii2` i?M i?2 #2bi /ic dif > 0BM/B+i2b i?i i?2 +H+m@ Hi2/ NF (ϕ)Q7 ha*P Bb MQ #2ii2` i?M i?2 #2bi /ic dif =0BM/B+i2b i?i 81
h?2 hrQ@bi;2 JmHiB@Q#D2+iBp2 PTiBKBxiBQM H;Q`Bi?K kR i?2 +H+mHi2/ NF (ϕ)Q7 ha*P Bb 2[mH iQ i?2 #2bi /iX .i BM i?2b2 i#H2b mb2 i?2 `2T`2b2MiiBQM Q7 (f,f2,f 3)X h#H2 dX +QKT`BbQMb rBi? i?2 #2bi /i AMbiM+2 "2bi EMQrM ha*P /B7 *RyR URy- 3k3XNjd- RkdXkNdV URy- 3k3XNjd-R kdXkNdV Uy- y- yV *Ry8 URy-3k3XNjd- RkdXkNdV URy- 3k3XNjd- RkdXkNdV Uy- y- yV *Ryd URy- 3k3XNjed-RkdXkNdV URy- 3k3XNjd- RkdXkNdV Uy- y- yV *RyN URy- 3k3XNjd- RkdXkNdV URy- 3k3XNjd- RkdXkNdV Uy- y- yV *kyR Uj- 8NRX88e- kj3Xky3V Uj- 8NRX88e- kj3Xky3V Uy- y- yV *ky8 Uj- 833X3de- kj8X8k3V Uj- 8NdXj39- kj3XdyeV Uy- 3X8y3- yXRd3V *ky3 Uj- 833Xjk9- kj8X8k3V Uj- 833X9Nj- kj8X8k3V UyyXReN- yV _RyR URN- Re8yXdNN- RjkX9NyV Uky- ReeNXjky- RR3X9RdV UR- R3X8kR- @R9XydjV _Ryk URd-R93eX38N- Rj9Xk8kV URd- R93eX38N- Rj9Xk8kV Uy- y- yV _Ry8 UR9- RjddXRRy- RkeXjekV UR8- R9kRXkRy- RkeXjekV UR- 99XR- yV _RyN URRRRN9Xdj9- Rk3XkeeV URj- RkjyXRe- RkyXN38V Ukj8X9ke- @dXk3RV _RRk UN- N3kXRjN- RkNXj9RV URy- N8jXejy- RddX9keV UR- @k3X8yN- 9NXNR8V _kyR U9- Rk8kXjdy- 9kdX3e3V U8- RkR9Xkky- 9yNX3ddV UR- @j3XR8y- @RdXNNRV _kyd Uk- 3NyXey3- 98jXkeNV Uj- 3dyXjjy- 9y9XeddV UR- @kyXkd3- @93X8NkV _kRR Uk- 338XdRR- 9eNXk9RV U9- 3kdXe9R- ejyX8djV Uk- @83Xyd- ReRXjjkV _*RyR UR9- ReNeXN9N- R83XyjjV URe- Rd9NXRdy- R83XyjjV Uk- 8kXkkR- yV _*Rye URR- R9k9Xdjj- RedXde8V URj- Rj3dXejy- R9NXde8V Uk- @jdXRyj- @R3V _*Ry3 URy- RRjNX3kR- RjeXkN8V URR- RReRX8k- RkNXdk3V UR- kRXeNN- @eX8edV _*kyR U9- R9yeXN9y- 99dXeejV U9- R9yeXN9y- 99dXeejV Uy- y- yV _*kye Uj- RR9eXjRd- 9deXeRjV U9- RR8jX93- 9ReX3eV UR- dXRej- @8NXd8jV _*kyd Uj- RyeRXR99- 9RNX3kNV U9- RyNkX93- 9ydXNRNV UR- jRXjje- @RRXNRV 6`QK h#H2 dr2 +M b22 i?2 +QKT`BbQM #2ir22M bQHmiBQMb Q7 Qm` H;Q`Bi?K M/ i?2 #2bi FMQrM BM aQHQKQM /i#b2X PM b2i *- `2bmHi Q7 Qm` H;Q`Bi?K Bb #bB+HHv i?2 bK2 b i?i Q7 i?2 #2bi FMQrMX KQM; i?2K- i?2 f2M/ f3 Q#D2+iBp2b +Q``2bTQM/BM; iQ *ky8 /Bz2` RX99W M/ RXj8W 7`QK i?2 #2bi bQHmiBQM- r?BH2 i?2 f1Q#D2+iBp2 +Q``2bTQM/BM; iQ *ky3 /Bz2` QMHv yXReN 7`QK i?2 #2bi bQHmiBQM- r?BH2 i?2 Qi?2` /Bz2`2M+2b `2 HH yX PM b2ib _ M/ _*- i?2 `2bmHib Q7 ha*P b?Qr i?i i?2 f3Q#D2+iBp2 /2+`2b2b #v RkXj8 QM p2`;2 +QKT`2/ rBi? i?2 #2bi bQHmiBQMX KQM; i?2K- i?2 KtBKmK ;T Q7 f2Q#D2+iBp2 +Q``2bTQM/BM; iQ _RyN Bb QMHv kXN8W- i?2 KtBKmK ;T Q7 f1Q#D2+iBp2 Bb k- M/ i?2 `2/m+iBQM Q7 f3Q#D2+iBp2 +Q``2bTQM/BM; iQ _*kye Bb 8NXd8jX Ai +M #2 b22M i?i ha*P ?b Q#pBQmb /pMi;2b BM bQHpBM; hP@o_ShqX 8 *QM+HmbBQM AM i?Bb TT2`- r2 +QMbB/2` hP@o_Shq BKBM; iQ KBMBKBx2 MmK#2` Q7 p2?B@ +H2b- iQiH /BbiM+2 M/ /BbiM+2 i`p2H2/ #v i?2 7`i?2bi p2?B+H2X h?2`27Q`2- r2 T`QTQb2 i?2 irQ@bi;2 KmHiB@Q#D2+iBp2 QTiBKBxiBQM H;Q`Bi?K #b2/ QM +HbbB}2/ 82
kk ha*P 7Q` hP@o_Shq TQTmHiBQM Uha*PV 7Q` bQHpBM; hP@o_ShqX 6B`biHv- i?2 BMBiBH TQTmHiBQM bi`m+im`2 Bb +HbbB}2/- M/ i?2M r2 QTiBKBx2 hP@o_Shq #v mbBM; i?2 B/2 Q7 irQ@bi;2 ?B2``+?v Q7 bBM;H2@Q#D2+iBp2 M/ KmHiB@Q#D2+iBp2X Pm` 7`K2rQ`F Q7 ha*P /BpB/2b i?2 H;Q`Bi?K BMiQ irQ bi;2b, BMBiBH TQTmHiBQM +[mBbBiBQM M/ KmHiB@Q#D2+iBp2 b2`+?X h?2 }`bi bi;2- M BMBiBH TQTmHiBQM rBi? QTiBKH BM@ /BpB/mH /Bbi`B#miBQM bi`m+im`2 Bb Q#iBM2/ #v ;HQ#H b2`+? Q7 bBKTH2 Q#D2+iBp2 M/ #B@Q#D2+iBp2X h?2 b2+QM/ bi;2- r2 mb2 dz;`/mHHv QTiBKBxBM; KBM HQQTQ7 BMi2`K2/Bi2 ;2M2`iBQMǴ Q7 La:@AA iQ T2`7Q`K ;HQ#H QTiBKBxiBQMX AM i?Bb T@ T2`- r2 ?p2 BKT`Qp2/ i?2 QTiBKBxiBQM T`Q+2bb Q7 i?2 Q`B;BMH La:@AA- bm+? b mbBM; 2HBi2 bi`i2;v Q7 T`2Mi ;2M2`iBQM b i2KTHi2 r?BH2 2tTM/BM; +`Qr/@ BM; /2;`22- `2/m+BM; iBK2 +QKTH2tBiv #v bi;2/ /BK2MbBQMHBiv `2/m+iBQMX AM i?Bb H;Q`Bi?K- #Qi? B/2 Q7 TQTmHiBQM +HbbB}+iBQM M/ 2HBi2 bi`i2;v #b2/ QM T@ i2`MBiv i2KTHi2 `2 mb2/ iQ KF2 /Bbi`B#miBQM Q7 PF KQ`2 mMB7Q`KX 6BMHHv- i?`Qm;? +QKT`iBp2 2tT2`BK2Mi Q7 aQHQKQM- Bi Bb 7mHHv b?QrM i?i ha*P ?b #2ii2` 2z2+i i?M i?2 2tBbiBM; H;Q`Bi?Kb BM QTiBKBxiBQM Q7 hP@o_ShqX AM i?2 7mim`2 `2b2`+? rQ`F- r2 rBHH +QMiBMm2 iQ BKT`Qp2 ha*P M/ TTHv Bi iQ Qi?2` }2H/b #2bB/2b ;`BM i`MbTQ`iiBQM- BM Q`/2` iQ 7m`i?2` p2`B7v i?2 T`+iB+#BHBiv Q7 i?Bb H;Q`Bi?KX +FMQrH2/;2K2Mi h?Bb rQ`F Bb T`iBHHv bmTTQ`i2/ #v E2v S`QD2+i Q7 S?BHQbQT?v M/ aQ+BH a+B2M+2 _2b2`+? S`QD2+i Q7 >m#2B S`QpBM+BH .2T`iK2Mi Q7 1/m+iBQM BM kyRNURN.8NV _272`2M+2b RX JXJX aQHQKQM- H;Q`Bi?Kb 7Q` i?2 p2?B+H2 `QmiBM; M/ b+?2/mHBM; T`Q#H2Kb rBi? iBK2 rBM/Qr +QMbi`BMib- PT2`X _2bX j8 UkV URN3dV k89Ĝke8X kX "X 1FbBQ;Hm- X oX om`H- M/ X _2BbKM- dzh?2 p2?B+H2 `QmiBM; T`Q#H2K, itQ@ MQKB+ `2pB2r-Ǵ*QKTmiX AM/X 1M;X- pQHX 8d- MQX 9- TTX R9dkĜR93j-kyyNX jX _X G?vMBJX E?2KF?2K- M/ 6X a2K2i- dz_B+? p2?B+H2 `QmiBM; T`Q#H2Kb,6`QK itQMQKv iQ /2}MBiBQM-Ǵ 1m`X CX PT2`X _2bX- pQHX k9R-MQX R- TTX RĜR9- kyR8X 9X EX .Q`HBM;- CX >2BM`B+?b- :X :X J2bbB2`- M/ aX J;B2`QrbFB- dzo2?B+H2 `QmiBM; T`Q#H2Kb 7Q` /`QM2 /2HBp2`v-Ǵ A111 h`MbX avbiX- JM- *v#2`MX-avbiX- pQHX 9d- MQX R- TTX dyĜ38- CMX kyRdX 8X LX CQx27QrB2x- 6X a2K2i- 1X hH#B- JmHiB@Q#D2+iBp2 p2?B+H2 `QmiBM; T`Q#H2Kb- 1m`X CX PT2`X _2bX R3N UkV Ukyy3V kNjĜjyNX eX CX _X JQMiQv@hQ``2b- CX GX 6`M+Q- aX LX Abx- >X 6X CBKûM2x- M/ LX >2`xQ@ S/BHH- dz HBi2`im`2 `2pB2r QM i?2 p2?B+H2 `QmiBM; T`Q#H2K rBi? KmHiBTH2 /2TQib-Ǵ *QKTmiX AM/X 1M;X- pQHX dN- TTX RR8ĜRkN- CMX kyR8X dX _X "H/++B- X JBM;QxxB- _X _Q#2`iB- _2+2Mi 2t+i H;Q`Bi?Kb 7Q` bQHpBM; i?2 p2?B+H2 `QmiBM; T`Q#H2K mM/2` +T+Biv M/ iBK2 rBM/Qr +QMbi`BMib- 1m`QT2M CQm`MH Q7 PT2`iBQMH _2b2`+? kR3 URV UkyRkV RĜeX 3X LX X 1H@a?2`#2Mv- o2?B+H2 `QmiBM; rBi? iBK2 rBM/Qrb, M Qp2`pB2r Q7 2t+i- ?2m`BbiB+ M/ K2i?2m`BbiB+ K2i?Q/b- CQm`MH Q7 EBM; am/ lMBp2`bBiv Ua+B2M+2V UkkV UkyRyV RkjĜRjRX 83
h?2 hrQ@bi;2 JmHiB@Q#D2+iBp2 PTiBKBxiBQM H;Q`Bi?K kj NX aX *X >QM;- uX "X S`F- ?2m`BbiB+ 7Q` #B@Q#D2+iBp2 p2?B+H2 `QmiBM; rBi? iBK2 rBM/Qr +QMbi`BMib- AMi2`MiBQMH CQm`MH Q7 S`Q/m+iBQM 1+QMQKB+b ek UjV URNNNV k9NĜk83X RyX :X oB`- PX Em`bQp- :2M2iB+ H;Q`Bi?K 7Q` o_S rBi? +QMbi`BMib #b2/QM 72bB#H2 BMb2`iBQM- AM7Q`KiB+ k8 URV UkyR9V R88ĜR39X RRX .XJX SB2``2- JXLX wF`B- S`iBHHv QTiBKBx2/ +v+HB+ b?B7i +`QbbQp2` 7Q` KmHiB@ Q#D2+iBp2 ;2M2iB+ H;Q`Bi?Kb 7Q` i?2 KmHiB@Q#D2+iBp2 p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2@rBM/Qrb- BM, kyR9 A111 avKTQbBmK QM *QKTmiiBQMH AMi2HHB;2M+2 BM JmHiB@ *`Bi2`B .2+BbBQM@JFBM;- J*.J kyR9- P`HM/Q- 6G- la- .2+2K#2` NĜRkkyR9- kyR9- TTX RyeĜRR8X RkX EX .2#- aX ;`rH- X S`iT- 2i H- 7bi 2HBiBbi MQM@/QKBMi2/ bQ`iBM; ;2M2iB+ H;Q`Bi?K 7Q` KmHiB@Q#D2+iBp2 QTiBKBxiBQM, La:@AA(*)ffAMi2`MiBQMH +QM72`2M+2 QM T`HH2H T`Q#H2K bQHpBM; 7`QK Mim`2X aT`BM;2`- "2`HBM- >2B/2H#2`;- kyyy, 39N@ 383X RjX LX a`BMBpb- EX .2#- JmHiB@Q#D2+iBp2 QTiBKBxiBQM mbBM; MQM/QKBMi2/ bQ`iBM; BM ;2M2iB+ H;Q`Bi?Kb(C)X 1pQHmiBQM`v +QKTmiiBQM- RNN9- kUjV, kkR@k93X R9X EX *X hM- uX >X *?2r- GX >X G22- ?v#`B/ KmHiB Q#D2+iBp2 2pQHmiBQM`v H;Q`Bi?K 7Q` bQHpBM; p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2 rBM/Qrb- *QKTmiiBQMH PTiBKBx@ iBQM M/ TTHB+iBQMb j9 URV UkyyeV RR8ĜR8RX R8X JX CX :2B;2`- qX q2M;2`- qX >#2MB+?i- AMi2`+iBp2 miBHBiv KtBKBxiBQM BM KmHiB@ Q#D2+iBp2 p2?B+H2 `QmiBM; T`Q#H2Kb, Ǵ/2+BbBQM KF2` BM i?2 HQQTǴ@TT`Q+?- BM, S`Q+22/BM;b Q7 i?2 A111 avKTQbBmK QM *QKTmiiBQMH AMi2HHB;2M+2 BM JmHiB+`Bi2@ `B .2+BbBQM JFBM;- kyyd- TTX Rd3ĜR39X ReX uX CX :QM;- CX w?M;- PX GBm- PTiBKBxBM; i?2 p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2 rBM/Qrb, /Bb+`2i2 T`iB+H2 br`K QTiBKBxiBQM TT`Q+?- A111 h`Mb+iBQMb QM avbi2Kb- JM- M/ *v#2`M2iB+b @ S`i * 9k UkV UkyRkV k89ĜkedX RdX sBM;vB w?M;- u2 hBM- _M *?2M;- uQ+?m CBMX .2+BbBQM o`B#H2 *Hmbi2`BM;@ "b2/ 1pQHmiBQM`v H;Q`Bi?K 7Q` G`;2@b+H2 JMv@Q#D2+iBp2 PTiBKBxiBQMX A111 h`Mb+iBQMb QM 1pQHmiBQM`v *QKTmiiBQM-kyR3- kkURV, Nd@RRk R3X sX qM;- *X sm- M/ >X a?M;- dzJmHiB@/2TQi p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2 rBM/Qrb M/ KmHiB@ivT2 p2?B+H2 MmK#2` HBKBib M/ Bib ;2M2iB+ H;Q`Bi?K-Ǵ BM S`Q+X 9i? A111 AMiX *QM7X qB`2H2bb *QKKmMX L2irX JQ#BH2 *QKTmiX- kyy3- TTX RĜ8X RNX lX .?`KT`Bv- aX aBvK#HTBiBv- M/ X EmHimM;- dz`iB}+BH BMi2HHB;2M+2 +QKTmiiBQMH i2+?MB[m2b iQ QTiBKBx2 KmHiB Q#D2+iBp2 Q`B2Mi2/ /Bbi`B#miBQM QT2`@ iBQMb-Ǵ BM S`Q+X AMiX *QM7X AM/X 1M;X PT2`X JM;X- kyRyX kyX qM; C- q2M; hw?M; ZX hrQ@ai;2 JmHiBQ#D2+iBp2 1pQHmiBQM`v H;Q`Bi?K 7Q` JmHiBQ#D2+iBp2 JmHiB/2TQi o2?B+H2 _QmiBM; S`Q#H2K qBi? hBK2 qBM/Qrb(C)X A111 i`Mb+iBQMb QM +v#2`M2iB+bkyR3- 9NUdV, k9ed@k9d3X kRX CX _X JQMiQv@hQ``2b- CX GX 6`M+Q- aX LX Abx- >X 6X CBKûM2x- M/ LX >2`xQ@ S/BHH- dz HBi2`im`2 `2pB2r QM i?2 p2?B+H2 `QmiBM; T`Q#H2K rBi? KmHiBTH2 /2TQib-Ǵ *QKTmiX AM/X 1M;X- pQHX dN- TTX RR8ĜRkN- CMX kyR8X kkX w?M; shBM u- CBM uX FM22 TQBMi@/`Bp2M 2pQHmiBQM`v H;Q`Bi?K 7Q` KMv@ Q#D2+iBp2 QTiBKBxiBQM(C)X A111 h`Mb+iBQMb QM 1pQHmiBQM`v *QKTmiiBQM- kyR9- RNUeV, deR@ddeX kjX EQMbiMiBMB/Bb - S2`B+H2Qmb a- *?`HK#Qmb *X /TiBp2 2pQHmiBQM`v H;Q`Bi?K 7Q` KmHiB@Q#D2+iBp2 o_S(C)X AMi2`MiBQMH CQm`MH QM 1M;BM22`BM; AMi2HHB;2Mi avb@ i2Kb- kyR9- kkUjf9VX k9X JX JX aQHQKQM- dzH;Q`Bi?Kb 7Q` i?2 p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2 rBM/Qrb-Ǵ h`MbTQ`iiBQM a+B2M+2- pQHX kN- MQX k- TTX R8eĜRee- RNN8X 84
k9 ha*P 7Q` hP@o_Shq k8X hX@_X G22 M/ CX@>X l2M;- dz bim/v Q7 p2?B+H2 `QmiBM; T`Q#H2Kb rBi? HQ/@ #HM+BM;-Ǵ AMi2`MiBQMH CQm`MH Q7 S?vbB+H .Bbi`B#miBQM GQ;BbiB+b JM;2@ K2Mi- pQHX kN- MQX Ry- TTX e9eĜe8d- RNNNX keX "X PK#mFB- "X _Qbb- 6X >Mb?`- JmHiB@Q#D2+iBp2 ;2M2iB+ H;Q`Bi?Kb 7Q` p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2 rBM/Qrb(C)X TTHB2/ AMi2HHB;2M+2- kyyek9URV, Rd@jyX kdX aX _X "Hb2B`Q- AX GQBb2m- CX _KQM2i- M Mi +QHQMv H;Q`Bi?K ?v#`B/Bx2/ rBi? BMb2`iBQM ?2m`BbiB+b 7Q` i?2 iBK2 /2T2M/2Mi p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2 rBM@ /QrbX *QKTmi2`b PT2`iBQMb _2b2`+?- j3UeV,N89ĜNee- kyRRX k3X CX GmQ- sX GBJX_X *?2M- 2i H- MQp2H ?v#`B/ b?m|2/ 7`Q; H2TBM; H;Q`Bi?K 7Q` p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2 rBM/QrbX AM7Q`KiBQM a+B2M+2b- jRe,keeĜkNkkyR8X kNX GX >QM;X M BKT`Qp2/ HMb H;Q`Bi?K 7Q` `2H@iBK2 p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2 rBM/QrbX *QKTmi2`b PT2`iBQMb _2b2`+?- jNUkV,R8RĜRej- kyRkX jyX wX l`bMB- .X 1bbK- .X *Q`M7Q`i?- M/ _X aiQ+F2`X GQ+HBx2/ ;2M2iB+ H;Q`Bi?K 7Q` p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2 rBM/QrbX TTHB2/ aQ7i *QKTmiBM;- RRU3V,8jd8Ĝ 8jNy- kyRRX jRX >XwX w?M;- ZXqX w?M;- JXGBM;- 2i H- ?v#`B/ Mi +QHQMv QTiBKBxiBQM H@ ;Q`Bi?K 7Q` KmHiB@Q#D2+iBp2 p2?B+H2 `QmiBM; T`Q#H2K rBi? ~2tB#H2 iBK2 rBM/QrbX AM7Q`KiBQM a+B2M+2b-kyRNX jkX "X umwX uM;- "X uQ- ?v#`B/ H;Q`Bi?K 7Q` p2?B+H2 `QmiBM; T`Q#H2K rBi? iBK2 rBM/Qrb(C)X 1tT2`i avbi2Kb rBi? TTHB+iBQMbkyRR- j3URV, 9j8@99RX 85
Theory and Application of Three-dimensional Analysis about Propagation Data Jianchi Sun1,ShuoLiu 1∗, Kang Zhou1,WeiCen 3, Qiyao Huang2, and Wanying Liang1 1School of Math and Computer, Wuhan Polytechnic University, Wuhan 430023, Hubei, China [email protected] 2School of Economics and Management, Wuhan Polytechnic University, Wuhan 430023, Hubei, China 3School of Electrical and Electronic Engineering, Wuhan Polytechnic University, Wuhan 430023, Hubei, China Abstract. Most of the traditional grey systemVerhulst models can only consider the propagation characteristics of time, but it can not consider the influence of spatial and other social factors. In order to solve this problem,amathematical model of three-dimensional about data analysis is proposed in this paper. Firstly, the Verhulst model in grey systemis established in each subspace, and the solution of general Verhulst model is obtained to solve the problemof prediction in timedimension. Secondly, in the spatial dimension, considering the mutual effect among subspaces, the spatial flow factor is added to the original Verhulst model to solve the propagation problem. Finally, in the dimension of social factors, it is necessary to solve problems led by the influence of many social factors on the response. In order to eliminate the natural factors of growth and highlight the changes of social growth factors to the response, this paper proposes a trend vector model. Each index with maximumand minimumsubspace correlation is fitted with the two-dimensional data analysis model by the least square method, and the action factors of social factors are obtained, thus improving the three-dimensional data analysis of the spread data. In this paper, the eight-year drug use in five states of the United States and the seven-year index value of 149 social factors provided by the United States Bureau of Information Statistics are used as examples for simulation experiments. The accuracy of the model calculated by considering the spatial dimension is 10 times higher than that of the traditional grey system. Having taken the influence of social factors into consideration, the correlation of indicators and factors is believed to provide the direction for the government to make the policy to prevent the drug crisis. The modelcanbewidelyusedinthefieldof big data analysis, which is beneficial to the prediction of data and the mining of data information, and provides help for human social life. Keywords: Verhulst model·Multidimensional analysis ·Trend vector · Least square method ·Drug spread. 86
2 F. Author et al. 1 Introduction In recent years, the problemof data dissemination has attracted the attention of social and scientific researchers, especially with the advent of the information age and the rapid development of computer science, the information presents explosive growth. Data analysis has become a hot topic at present. Two main purposes of data analysis are used to predict the future observations as accurately as possible, and the other is to scientifically understand the relationship between features (various information) and responses (research objects) [1].Under the current social background, the problemof data transmission is everywhere. At the beginning of this century, the most serious SARS (severe Acute Respiratory Syndrome) incident broke out in Shun De, Guangdong Province, China, and soon spread to the world. The SARS epidemic was gradually eliminated only in mid-2003. This is an unprecedented global epidemic of infectious diseases, causing social panic and leading to the death of a large area of patients, including medical personnel. It has caused great disaster to the world health and economy. With the continuous progress of medicine, SARS is basically conquered under the current medical conditions, but it is easy to spread such as epidemic cold, AIDS and so on. Infectious diseases have also been lurking around us, and population movements and controls, energy projections, and so on are all related data dissemination problems, especially the recent outbreak of classical swine fever in Africa and the drug crisis faced by countries around the world. This series of problems are closely related to nature and social sciences. The in-depth study of this kind of problemcan be helpful to the development of the world society by making suggestions for the relevant departments and enterprises of the government. At present, the common data analysis methods use mathematical probability statistics, differential equation and other related knowledge to establish mathematical models for analysis. Artificial intelligence and BP neural network [2] are also used to analyze the data in the field of machine learning. The same data source chooses different data analysis methods to obtain data analysis results, which may be completely different. The establishment of related mathematical models such as artificial intelligence requires a large amount of data to be trained, and it is not suitable for the method with fewer samples. The classical prediction data analysis methods include time series [3], grayscale prediction and fitting regression model, and so on. These models and methods play an important role in these models and methods. Important role, to provide guidance for the development of social-related industries [4]. Traditional data analysis models and methods have made remarkable achievements in the field of social science, establishing mathematical models of time series between the power sector and users to predict the unit price of energy for the next day. Provides vital information for producers and consumers [5] [6]. The discrete grey increment model and the new initial grey increment model are established to forecast the population in the future [7]. Especially in recent years, transmission of the virus seriously affects the quality of life of the people, through the establishment of differential equation model and parameter inver- 87
Title Suppressed Due to Excessive Length 3 sion [8] method to predict the trend of the virus, and health sector advice. But traditional data of the analytical model only discusses the impact of timecharacteristics on its response without considering other characteristic factors, such as the spread of SARS virus and the spread of drugs, which are more affected by regional and macro factors. If only time characteristics are taken into account, their propagation characteristics cannot be fully described. Therefore, the traditional data analysis model cannot meet the needs of social science for the ability of multi-angle information mining. The main purpose of this paper is fromthree dimensions, that is, time, region, and so on. The social factors improved the traditional gray-scale prediction and put forward the three-dimensional analysis theory of the dissemination data. Finally, the application of the drug abuse problemrecently faced by the international community as an example was carried out. The accuracy and practicability of the theory are verified. 2 The raising of the Problemof Propagation Data and the fundamental thoughts of the Model The problemof the propagation of data is defined as the response value of each point in time in a certain area under other effects. This problemhas a high degree of abstraction and a wide range of applications. For a non-negative data set Das the data source for the response of the study object, the set describes the short-termresponse values of different places and years, and the regions and years are uniformand adjacent, where dt s∈D, that represents the response value of the sregion (subspace) in year t,t0≤t≤t1,1≤s≤m.For a given set of social factors, L,wherelt sk ∈L, represents the value of the k-type characteristic index of the sregion in the tyear, t0≤t≤t1,1≤s≤m, 1≤k≤K. By establishing mathematical models to describe the diffusion patterns and characteristics between each other. This problemis a typical problemof data prediction and data mining, which gives a large amount of information and abstract problems. It is difficult to break through the regional and social factors by using the traditional prediction model. This paper first carries on the simple timedimension simulation experiment through the traditional grayscale prediction model, through the simulation experiment result obtains the propagation law of the timedimension of a certain area, applies this law to consider the space dimension influence again. Optimize the original timedimension model. In the set of social factors, because there are many social factors given, it is not practical to consider the influence of each factor on its propagation one by one. In this paper, a trend vector model is established to extract the factors. In order to obtain the final three-dimensional data analysis law, the two-dimensional propagation model is further optimized for the social factors which have a great influence on the law of communication. The first step is the gray-scale prediction of the timedimension of the model. In this paper, the Verhulst model in the grey systemis established by using the data in the D set, and the rule of propagation in the timedimension is obtained [9]. 88
4 F. Author et al. The second step, the influence of spatial mobility on the original model. In the study of the response of one subspace and the spatial mobility factor, the average quantity of other subspace responses is calculated, and the spatial mobility factor is obtained by using the least square method into the timedimension model. The third step is the influence of social factors on the two-dimensional analytical model. Since there may be a large number of social factors in the L-set, it is not realistic to take each factor into account, so first of all, it is necessary to streamline the social factors. The trend vector model is established for all the factors in the L-set and the predicted results of the two-dimensional model, and the most representative social two factors are obtained by the correlation analysis, and the factors are substituted into the two-dimensional analysis model. Then the results of three-dimensional data analysis are obtained. Fig. 1. Solution analysis. 3Mathematical Model of three-dimensional data Analysis 3.1 Mathematical Model of timeDimension Analysis When studying abstract systemssuchassocialsystem, economic systemand so on, randominterference (noise) can be often encountered. In this paper, the number generation method is used to mine and find the regularity of the number by processing the data in the sequence to generate a new sequence of numbers. Common methods of generating numbers have cumulative generation [10](AGO). For non-negative sequences, cumulative generation can transformany random irregularity sequence into a non-decreasing, increasing sequence. Assume that the original sequence is listed as X=(x(1),x(2),...,x(n)) (1) where x(k)≥0 , we call it a non-negative sequence. The cumulative generation has r accumulative generation, which is recorded as r-AGO, and its relationship is as follows. x(r)(k)= k i=1 x(r−1)(i)(2) 89
Title Suppressed Due to Excessive Length 11 lationship between the States is contiguous, and the geographical region has a certain role in the impact of drug volume. Ohio, Pennsylvania and Virginia are closely related to each other. They are influenced by diffusion. So it is necessary to consider spatial mobility factors. Fig. 2. Geographical location of five states. According to the model theory of two-dimensional data analysis with spatial mobility factor, the predicted value of the total drug use and timedimension in each state and the average drug use in other states are analyzed. The predicted value of two-dimensional data analysis with geographical factors in each state and the size of geographical factors can be obtained by (10) model and (23) formula calculation. Table 5. Predictive values of drug use in VA on a two-dimensional model with geographic factors. 2010 2011 2012 2013 2014 2015 2016 2017 VA 8685 6749 7831 11675 9037 8810 10195 10448 Prediction 9003 4784 6580 8572 10362 11397 11320 10173 Fromthe calculation results, we can see that the magnitude of spatial mobility factor can be regarded as the sensitivity of drug use and regional mobility in the region. The factors are positive, indicating that regional mobility promotes 96
12 F. Author et al. Table 6. Relevant Calculating Parameters of States on a two-dimensional model with geographical factors. VA OH KY WV PA Geographic factor λ0.0240 0.3944 0.0161 0.0014 0.1294 Relative error ε0.0191 0.0135 0.0284 0.0326 0.0064 drug use, that is, drug use in other states leads to increased use in the region. OH is the most sensitive to regional liquidity, and WV is hardly affected by regional liquidity. OH can devote more energy and financial resources to border control ports to prevent drug invasion. Within the scope of policy control, strict drug inflow and outflow management at county or state borders can reduce drug use in the state. For the WV, space interaction is very small, the border control cannot have to invest a lot. The relative error is significantly lower than that of the timedimension analysis model, and the fitting effect is better. 5.3 Simulation experiment of three-dimensional data Analysis Model with social action factors Accordingtothemodel theory of three-dimensional data analysis, there are 149 social factors in all public years with the factor data source, and each social factor gives four different description forms, in order to facilitate the establishment and normalization of the model. Take the first description formas the description value. According to the trend vector theory, the similarity between each social factor and the original sequence change trend is calculated for each state. The similarity can be used to understand whether the factor promotes or inhibits or does not work. Because the relevant indicators are still considered much, considering the influence of major social factors in each state, this paper selects the social factors with the most positive and negative correlations in each state as the fitting parameters to be incorporated into the two-dimensional data analysis model equation. The main social factors associated with each state are shown in Table 7. Table 7. The correlation of the main social factors of positive and negative correlation in each state. Indicator number Correlation Indicator number Correlation VA 115 0.96 116 -0.83 OH 20 0.91 14 -0.93 KY 69 0.89 105 -0.92 WV 128 0.83 6-0.98 PA 128 0.87 14 -0.90 97
Title Suppressed Due to Excessive Length 13 For VA, the value vector corresponding to the 132th indicator is l132,the corresponding vector of the 6th indicator is l6, and the action factors are respectively p132,p 6,whereF2is the two-dimensional model prediction sequence with the geographical flow factor, F3is the three-dimensional data analysis model prediction sequence. And then F3=F2+p132l132 +p6l6+b(29) We can get [p132,p 6]=[0.0374,−0.1197] b=−1776.3(30) The final three-dimensional data analysis model based on the obtained action factor is ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ x 0= 8685 x(k+1)= ax 0 bx 0+(a−bx 0)eak D1=x(k+1)−x(k) D2=0.024g(k+1) D3=0.0374l132(k+1)−0.1197l6(k+1)−1776.3 F3(k+1)=D1+D2+D3 (31) Similarly, the factors and error parameters of the main social factors in other states are calculated as Table 8 and Table 9. Table 8. The indicator factors of the main social factors related to positive and negative correlation in each state. Indicator number Indicator factor Indicator number Indicator factor Constant VA 132 0.7254 6-0.1934 -1776.3 OH 20 0.0099 14 -0.0274 -6668.7 KY 30.0464 65 -0.0870 -2737.4 WV 59 0.0248 91 -0.2239 -600.4 PA 128 0.0374 15 -0.1197 -5784.2 Table 9. Relative error parameters for each state on the three-dimensional model. VA OH KY WV PA Relative error ε0.2038 0.2138 0.2624 0.1924 0.2535 Through the calculation of the above mathematical model, it is found that the positive correlation index are the positive and negative correlation factors are negative, thus verifying the accuracy of the model. The relative error of the two-dimensional data analysis is better than the timedimension relative error, but the relative error is relatively large after considering the three-dimensional 98
14 F. Author et al. data analysis, mainly because the social environment is considered only when the two kinds of the most valued society are considered. There are still links between factors and social factors, and they all have more or less influence on the amount of drugs used. If only two extreme correlations are considered, the error will be larger. In order to prove that the number of the social factors into the model can affect the error of the three-dimensional analysis model. In the case of social factors with maximumpositive correlation and maximumnegative correlation in the model, the sub-positive correlation factors and the sub-negative correlation factors continue to be considered. In formula (30), the predicted value after fitting is also obtained by the least square method, and the error is obtained by using the error formula, as shown in Table 10. Table 10. Therelativeerrorparameters of each state in the three-dimensional model considering the four factors. VA OH KY WV PA Relative error ε0.0452 0.0540 0.0861 0.1270 0.0567 Compared with Table 9, the relative errors of all states have decreased after considering four factors. Therefore, it can be shown that the number of social factors considered in the model will affect the accuracy of the model. And when the number is large enough, the accuracy is high enough. But the more the number considered, the greater the cost of computing time. And in the real society, the most important social factors and the larger correlation factors are often considered, so that the calculation time is saved, and also provide specific guidance for the correct decision-making of the government, greater investment can be placed on someofthemost critical factors. In order to obtain more possible correlation factors for qualitative analysis, this paper establishes the advantage of the trend vector model, and averages the 149 social factors in all states, setting the positive correlation threshold to 0.6, that is, the average similarity is greater than 0.6 for positive correlation. The public social factor has a negative correlation threshold of -0.65 and an average similarity of less than -0.65 as a negative correlation public social factor. The public social factors of all regions are obtained by threshold classification. The positive and negative similarities of public social factors are shown in Table 11. and Table 12. It can be found that each state is affected by many social factors. It is indeed inaccurate to consider the social factors of the two most valued cases. However, the degree of influence can be qualitatively compared by the size of the factors. Finding certain social factors fromthe size of relevance can also provide suggestions for relevant departments and make targeted strategies for the spread of drugs. 99
Title Suppressed Due to Excessive Length 15 Table 11. Public social factors with positive similarities. Indicator number 59 69 134 VA Similarity 0.798 0.405 0.304 OH Similarity 0.809 0.851 0.759 KY Similarity 0.606 0.702 0.752 WV Similarity 0.802 0.754 0.605 PA Similarity 0.574 0.927 0.682 Table 12. Public social factors with negative similarities. Indicator number 611 91 94 VA Similarity -0.875 -0.511 -0.37 -0.481 OH Similarity -0.877 -0.932 -0.65 -0.652 KY Similarity -0.659 -0.783 -0.66 -0.723 WV Similarity -0.374 -0.606 -0.79 -0.705 PA Similarity -0.749 -0.918 -0.82 -0.814 6 Conclusion In this paper, we propose the theory of three-dimensional analysis of propagation data, and an improved three-dimensional data analyses model based on grayscale prediction is established. The simulation experiment is carried out by using the data of drug spread in the United States. The prediction equation is obtained by least squares method. The general solution and the spatial flow factor of each region, the size of the spatial flow factor can be used as a reference for the mobility of the drug area. Comparing the residuals after two data analysis, the overall error of the two-dimensional analysis model with geographic factors is smaller. In the establishment of a three-dimensional data analysis model with social factors, this paper proposes the concept of trend vector, eliminates the natural increase of the feature response itself, and makes the change of social factors completely correspond to the changes in drug use interfered by social factors. Through the calculation of similarity, the most important social factors and corresponding impact factors affecting the increase or decrease of drug use in social factors are found, and making suggestions for government macro-control. The discussion and establishment of the three-dimensional data analysis model has improved the shortcomings of most of the gray-scale predictions, and the data analysis is reflected by multiple angles. In the later period, we mainly discuss the impact of multiple social factors on the response, so as to improve the prediction precision after considering multiple social factors. References 1. Fan J, Han F, Liu H. Challenges of big data analysis[J]. National science review, 2014, 1(2): 293-314. 100
16 F. Author et al. 2. Yu F, Xu X. A short-termload forecasting model of natural gas based on optimized genetic algorithmand improved BP neural network[J]. Applied Energy, 2014, 134: 102-113. 3. YANG Hai-min, PAN Zhi-song, BAI Wei. Review of Time Series Prediction Methods [J]. Computer Science, 2019, 46(1):21-28. 4. Xue-Qi C , Xiao-Long J , Yuan-Zhuo W , et al. Survey on Big Data Systemand Analytic Technology[J]. Journal of Software, 2014,(9):1889-1908. 5. Nogales F J, Contreras J, Conejo A J, et al. Forecasting next-day electricity prices by timeseriesmodels[J]. IEEE Transactions on power systems, 2002, 17(2): 342- 348. 6. Alvarez F M, Troncoso A, Riquelme J C, et al. Energy time series forecasting based on pattern sequence similarity[J]. IEEE Transactions on Knowledge and Data Engineering, 2011, 23(8): 1230-1243. 7. Ke-Pei M , Lin-Lin G , Xun-Zhen Y . PREDICTION OF CHINA’S POPULATION BASED ON TWO NEW GREY MODELS[J]. Economic Geography, 2007, 27(6): 942-945. 8. Weiguo H , Jinfeng W , Xuhua L . BACK ANALYZING PARAMETERS AND PREDICTING TREND OF SARS TRANSMISSION[J]. Advance in Earth Sciences, 2004, 19(6):925-930. 9. Lin Y H, Chiu CC, Lee P C, et al. Applying fuzzy grey modification model on inflow forecasting[J]. Engineering Applications of Artificial Intelligence, 2012, 25(4): 734- 743. 10. YONG-HUANG LIN, CHIH-CHIANG CHIU, PIN-CHAN LEE,et al. Applying fuzzy grey modification model on inflow forecasting[J]. Engineering Applications of Artificial Intelligence: The International Journal of Intelligent Real-Time Automation,2012,4(4):734-743. 11. ZHANG Chuang, PENG Zhenbing, PENG Wenxiang. Application of optimized grey discrete Verhulst model in settlement prediction of foundation pit[J].Journal of Central South University Science and Technology), 2017, 48(11):3030-3036. 12. Ping-Ping X , Yao-Guo D , Tianxiang Y , et al. The Research on the Modeling Method of Background Value Optimization in Grey Verhulst Model[J]. Chinese Journal of Management Science, 2012, 20(6):154-159. 13. Yonge AN, Xueying B, Qicai W. Railway freight volume forecasting based onunbiased grey Verhulst model[J]. Journal of Railway Science & Engineering, 2016, 13(1):181-186. 14. Wang Z X , Dang Y G , Liu S F . Unbiased Grey Verhulst Model and Its Application[J]. Systems Engineering-Theory & Practice, 2009, 29(10):138-144. 101
A Novel Spiking Neural P Systems for Image Recognition Xiantai Gou, Qifen Liu*, Gexiang Zhang, Meng Hu, Pirthwineel Paul, Fang Deng, Xihai Zhang, and Zhibin Yu School of Electrical Engineering, Southwest Jiaotong University, Chengdu, 61003 email:[email protected] Abstract. Spiking neural P systems (SNPS), a kind of distributed parallel bio-inspired model, has been a research hotspot in the field of membrane computing. SNPS has been widely concerned by scholars due to its powerful computing capacity and brain-like information transmission schema. Nevertheless, there are quite few research results about SNPS with learning ability applied for image recognition. In this research, the routing mechanism in capsule neural network is introduced into SNPS to update the weights between synapses of spiking neurons dynamically. The learning ability of SNPS is realized by the weight update algorithm, which represents the changes in the strength of neuronal synaptic connections. Moreover, this is the first attempt to construct a universal network model of SNPS with learning ability which extracts features though the image convolution. The experimental results demonstrate that the recognition accuracy of the Mixed National Institute of Standards and Technology database, namely MNIST, reaches 95.87% and the recognition accuracy of English letters with noise and rotation reaches 98.06% in SNPS, which verify the feasibility and effectiveness of the model we constructed. Keywords: membrane computing ·spiking neural P systems ·image recognition ·learning ability. 1INTRODUCTION Membrane computing is a systematic framework inspired by cell structure and function to research computational models or algorithms, which was proposed by the academician Gheorghe Pˇaun in 1998 and belongs to the branch of natural computing[1]. The computational model of membrane computing research is called as membrane systems or P systems. The membrane system is a kind of distributed parallel bio-inspired model. The researches have proved that the computational power of most membrane systems is equivalent to the Turing machine [2-5]. Furthermore, the application research of membrane computing involves many fields, including ecosystem modeling [6-8], image processing [9,10], supported by the National Natural Science Foundation of China under Grant No.61972324 and No.61702428, and the Major Science and Technology Projects in Sichuan Province under Grant No. 2018GZDZX0043. 102
2 X. Gou et al. intelligent algorithm [11, 12] and so on. At present, the application of membrane computing in the field of image processing mainly focuses on simple image processing and image analysis, but it has not been applied in image high-level processing [13]. It is still challenging for membrane computing to process image recognition [14], therefore, it is significant to pay more attention on image recognition. The SNPS, proposed by Ionescu et al in 2006, is a type of neurological computational model under the framework of membrane computing [15]. It is derived from the biological characteristics of neurons in the biological nervous system that transmit pulses and exchange information through synapses. The outstanding feature of SNPS is that information is encoded by time and transmitted by the pulses between neurons, which simulates the working mechanism of information interaction in biological neural network better. From the perspective of model characteristics, SNPS belongs to the third generation neural network models [16,17]. The third generation neural network represented by spiking neural network processes information through pulse sequences, which is the research frontier and hotspot in the field of current neural network [18-20]. In the past decade, SNPS has been widely concerned by scholars in the field of membrane computing due to its good mechanism of restoring biological information interaction and high computational parallelism, therefore, abundant research results in both theory and application has been obtained. Inspired by biological characteristics and mathematical computation models in the biological nervous system, many SNPS have emerged, such as SNPS with anti-spikes [21,22], SNPS with astrocyte [23], reversible SNPS [24], SNPS with structural plasticity [25], SNPS with rules on synapses [26-28], fuzzy SNPS [29], and so on. SNPS is applied to the practical application based on huge amounts of theoretical researches, and has achieved many research results, such as skeletonizing images [30], combinatorial optimization [31], fault diagnosis [32-36], etc. Illuminated by learning mechanisms in biological neural networks and artificial neural networks, Guti´errez established a SNPS model with Hebbian learning [37]. However, there are quite few papers about SNPS with learning ability for image recognition. In 2019, A class of specific SNPS with simple Hebbian learning function is constructed to recognize English letters in a template matching manner that calculates the variance of the letter to be recognized and the standard letter output vector, which proved the potential of SNPS in pattern recognition. A high recognition accuracy is achieved in the absence of noise, but the recognition effect is poor in high noise [38]. In addition, the input data is only represented by a 0/1 character matrix of size 5*7 and the model is relatively simple, which is difficult to handle real-life applications. SNPS for image recognition is still an open research problem, which has attracted the attention of a large number of scholars. In particular, there exist many application practices for image recognition and reach a high level of recognition in traditional artificial neural networks, while SNPS in the framework of membrane computing has hardly applied to research on pattern recognition, so it has fatal research significance to apply SNPS to image recognition. Because 103
A Novel Spiking Neural P Systems for Image Recognition 3 there exist few research results about image recognition in SNPS at present, there is no suitable encoding method to encode the image into pulse numbers while retaining the pixel position information, the application of the simple Hebbian learning function is not sufficient to express the changes in the strength of neuronal synaptic connections, and there is no universal neuron connection topology in SNPS. Aiming at the above problems, the time-coded image pixel data is converted into pulse numbers as the input of SNPS and the routing mechanism in capsule neural network [39] is introduced firstly. Then, a general network model of S- NPS with learning ability is constructed. In order to verify the feasibility and effectiveness of the model, it is used to deal with the classical handwritten digit recognition and the English letters recognition with noise and rotation in this research. 2 SNPS WITH LEARNING ABILITY Learning function is extremely important for pattern recognition in artificial neural networks. Therefore, it is the key to construct SNPS with learning ability for image recognition. 2.1 SYSTEM DEFINITION The SNPS with learning ability of degree m (m≥1) is a construct of the form: Π=(A, {σ1,···,σ m},syn,f pre,f learn ,in, out ) (1) where: (1) A={a}is an alphabet with single symbol, which denotes a pulse. (2) {σ1,···,σ m}represents the neuron collection in SNPS. σi=(ni,R i),1≤ i≤mis a certain neuron in the system, where ni≥0 is the pulse numbers contained in the neuron σiat the beginning of the computation, and Rirepresents a finite set of all the rules in the neuron σi.There are two forms of rules, including the firing rule and the forgetting rule in SNPS. Firing rule is shaped like E/ac→a;d, where E is a regular expression on the character a, c≥1andd≥0 are integers. The forgetting rule is shaped like as→λ.as/∈L(E)(s≥1) is required for any firing rule E/ac→a;d,where L(E) is the regular language defined by E. Each neuron can contain one or more rules, but the firing rule and the forgetting rule cannot be triggered at the same time in a neuron. In a plurality of rules, a selection mechanism can be applied to trigger one of the rules to achieve an optimal level of system output. (3) Syn ⊆{1,2,···,m}×{1,2,···,m}is a directed graph of synaptic connections between neurons, with (i, i)/∈syn for each 1 ≤i≤m. (4) In, out ∈{1,2,···,m}represent the input and output neurons of system Π, respectively. 104
4 X. Gou et al. (5) Fpre is the data preprocessing function of the system. In this paper, the data preprocessing function of SNPS for image recognition contains convolution and pooling operations, which could extract image features. Different preprocessing functions can be adopted towards different applications. (6) Flearn is a systematic learning function that characterizes the strength of neuronal synaptic connections by synaptic weights updating in training. The learning function adopted in this research is shown in Section 2.2. Fig. 1. An example of SNPS constitution. 2.2 LEARNING FUNCTION In the SNPS with learning ability designed in this research, the routing mechanism, which core idea is the error back propagation algorithm, is used to update the weight of neuronal synaptic connections dynamically to imitate the information layered communication between the visual perception and comprehension neurons in the human brain [39]. Assume that the input of the nth layer neuron σiis ui, and the input of the n+1th layer neuron σjis vjin the SNPS. The routing mechanism updates the synaptic weights dynamically as follows [39]: (1) Initializing the logarithmic prior probability bij = 0 of all neurons between σiin the nth layer and σjin the n+1th; (2) Calculating the coupling coefficient ciof the neuron σiin nth layer; ci=exp (bij) kexp (bik)(2) 105
A Novel Spiking Neural P Systems for Image Recognition 11 4.2 SNPSNET FOR ENGLISH LETTER RECOGNITION In this paper, 26 classes of English letters are selected which are synthesized by different fonts of the computer in the chars 74k EnglishFnt dataset, including combinations of italic, bold and ordinary characters. Since there are only 1016 images of each type of English alphabet in the original dataset, the quantity of input data as the SNPSNst is too small. The image enhancement is used to expand the number of each class of English letter images to 5000 in this research. And the image enhancement methods adopted in this paper include rotating 30◦,60 ◦and adding 10, 15, 20, 25 noises respectively, which is closer to practical applications. The training set and the test set are divided according to 12:1, the training set is 120,000 pictures, and the test set is 10,000 pictures. The 35 English letter images selected randomly are shown in Figure 8. Fig. 8. Schematic diagram of English letter. First, the image pixel data is encoded into the pulse numbers through the data preprocessing method in Section 3.1, and saved to a file in mat format. For each English letter image, 28*28 pixels, the original pixel data is encoded into the pulse trigger time after the time-to-first spike coding. Next, the time-encoded data of each row in the mat are sorted and the pulse numbers are accumulated during a given time interval. In other words, the element of the rth row and the cth column towards every two-dimensional vector in the mat file indicates pulse numbers, which are triggered at time t ∈(c−1,c),(c >0) in the rth row of the original pixel matrix. Then, the encoded data is fed in SNPSNet model in Section 3.2 for training, and the rule selected for each spiking neuron in SNPS is a→a , with no delay. One pulse is consumed in spiking neurons that satisfy the firing rule at any moment and ωij ×1 pulses are delivered to neurons with synaptic connections in the next layer (ωij is derived from the learning function shown in Section 2.2). The size of input image is 28*28 in this model; the batch size is 60; the RMSProp is selected as the optimizer, which could be able to adjust the learning rate automatically [45]. Thus, the learning rate is no longer need to 112
12 X. Gou et al. perform any attenuation operations once the initial learning rate is given. The initial learning rate is 0.0005 in this experiment. There are the accuracy and loss rate of 50 epochs shown in figure below. Fig. 9. Recognition accuracy graph for English letter in training. Fig. 10. Training loss graph for English letter. After 50 epochs training, the recognition accuracy reached 98.06% for the English letter based on the chars 74k dataset in SNPSNet under the learning rate and batch size according to the above parameters. In order to perform an experiment about the influence of noise on the recognition effect, the Gaussian white noise with signal-to-noise ratio (namely SNR) of 20db, 15db, 10db and 5db is added to the English alphabet test set respectively. The comparison between different noise and the original test set is shown in Figure 12. As shown in the figure, there are 35 images selected randomly from 113
A Novel Spiking Neural P Systems for Image Recognition 13 Fig. 11. Recognition accuracy graph for English letter in test. the original test set and test set with noise which SNR is 20db, 15db, 10db and 5db respectively from top to bottom. And the recognition accuracies obtained are shown in Table 2. Fig. 12. Schematic diagram of different noise and original image. Table 2. Experimental results for different noise recognition SNR of Test set ∞20db 15db 10db 5db accuracy 98.06% 98.00% 96.93% 94.80% 86.17% It is obvious that the test set with the SNR above 20db has little effect on the recognition accuracy towards English alphabet from the experimental 114
14 X. Gou et al. results. When the SNR of the test set is above 10db, the model can achieve high recognition accuracy. And it is proved that SNPSNet possesses a sort of anti-noise ability. 5 CONCLUSION AND PROSPECT In this research, a novel universal model named SNPSNet is constructed to deal with the image recognition problem. This work is inspired by the routing mechanism in capsule neural network and the theoretical study of SNPS. The time-coded image pixel data is converted into pulse numbers as the input of SNPSNet model while retaining the position information. Besides, the routing mechanism is introduced to update the weights dynamically between the synapses of the neurons in SNPS. The experimental results show that the recognition accuracy for MNIST is 95.87% and the recognition accuracy of English letters after image enhancement reaches 98.06% in SNPSNet, which verify the feasibility and effectiveness of the model. For convolutional and BP neural networks with the same recognition accuracy, the time and space complexity of SNPSNet is reduced to a certain degree. Furthermore, the comparison experiments of the test set under different degrees of noise for English letters recognition prove that SNPSNet possesses a sort of anti-noise ability. The accuracy of SNPSNet is 94.80% and 86.17% when test set SNR is 10db and 5db respectively. Under the same experimental conditions, we did another test where the recognition accuracy is 94.56%, 76.81% respectively in the traditional convolutional neural network. From the experimental results it is obvious that when the SNR of test set is small, SNPSNet has better anti-noise performance in contrast with that of traditional convolutional neural network. Although it does not reach the current highest recognition level in neural networks, this work is the first attempt to construct a novel SNPS for image recognition in the field of membrane computing which extracts features though the image convolution and applied to MNIST and English letters recognition, which provides some reflections and references for the pattern recognition problem of membrane system. The most prominent feature of SNPS is that different rules can be triggered in the same neuron at different time, and it could deal with different types of objects flexibly, such as texts, images, and voices. For further research, more rules could be adopted to the spiking neurons in SNPS, and corresponding delays could be set for the rules. In addition, a learning mechanism of rules could be introduced to select the disparate rules which achieve an optimal level in each neuron to attain better recognition accuracy and to make the SNPS system more universal. References 1. Pˇaun G.: Computing with Membranes.Journal of Computer & System Sciences 61(1), 108-143 (2000) 115
A Novel Spiking Neural P Systems for Image Recognition 15 2. Freund R , Gheorghe Pˇaun, Mario J. P´erez-Jim´enez.: Tissue P systems with channel states. Theoretical Computer Science 330(1), 101–116 (2005) 3. Zhang X , Liu Y , Luo B , et al.: Computational power of tissue P systems for generating control languages. Information Sciences 278, 285–297 (2014) 4. Freund R , Rogozhin Y , Verlan S .: Generating and accepting P systems with minimal left and right insertion and deletion. Natural Computing (2014) 5. Krishna S N, Gheorghe M, Ipate F, et al.: Further results on generalised communicating P systems. Theoretical Computer Science 701, 146-160 (2017) 6. Besozzi D , Cazzaniga P , Pescini D , et al.: Modelling metapopulations with stochastic membrane systems. Biosystems 91(3), 499–514 (2008) 7. Colomer, Ma˙angels, Margalida A , Valencia, Lu´ıs, et al.: Application of a computational model for complex fluvial ecosystems: The population dynamics of zebra mussel Dreissena polymorpha as a case study. Ecological Complexity 20, 116–126 (2014) 8. Garc´ıa-Quismondo, Manuel, Levin M , Lobo D.: Modeling regenerative processes with membrane computing. Information Sciences 381, 229–249 (2017) 9. Christinal H A , Daniel D´ıaz-Pernil, Real P.: Region-based segmentation of 2D and 3D images with tissue-like P systems. Pattern Recognition Letters 32(16), 2206– 2212 (2011) 10. D´ıaz-Pernil, Daniel, Berciano A , PenA-Cantillana F , et al.: Segmenting images with gradient-based edge detection using Membrane Computing. Pattern Recognition Letters 34(8), 846–855 (2013) 11. Zhang X , Li J , Zhang L.: A multi-objective membrane algorithm guided by the skin membrane. Natural Computing 15(4), 597–610 (2016) 12. Li Z , Zhang L , Su Y , et al.: A skin membrane-driven membrane algorithm for many-objective optimization. Neural Computing and Applications (2016) 13. Yuan J, Zhang G ,Guo D, et al.: Review of the application of membrane calculation in the field of image processing. Journal of Anhui University(Natural Science) 42(03), 29–36 (2018) 14. M. Gheorghe, G. Pˇaun, M. J. Perez-Jimenez, and G. Rozenberg.: Spiking neural P systems, research frontiers of membrane computing: Open problems and research topics. International Journal of Foundations of Computer Science 24(05), 547–623 (2013) 15. Ionescu M, Pˇaun G ,Yokomori T.: Spiking Neural P Systems. Fundamenta Informaticae 71(2, 3), 279–308 (2006) 16. Maass W, Bishop C M. : Pulsed Neural Networks. Cambridge, MA: MIT Press, Location (2001) 17. Ghosh-Dastidar S , Adeli H: Spiking Neural Networks. International Journal of Neural Systems 19(04), 295–308 (2009) 18. Maass, Wolfgang: Lower Bounds for the Computational Power of Networks of Spiking Neurons. Neural Computation 8(1), 1–40 (1996) 19. Maass W.: Networks of Spiking Neurons: The Third Generation of Neural Network Models. Neural Networks 10(9), 1659–1671 (1997) 20. Zhang G , Rong H , Neri F , et al.: An Optimization Spiking Neural P System for Approximately Solving Combinatorial Optimization Problems. International Journal of Neural Systems 24(05), 1440006 (2014) 21. Pan L, Pˇaun G.: Spiking neural P systems with anti-spikes. International Journal of Computers Communications & Control 4(3), 273-282 (2009) 22. Song T, Pan L, Wang J, et al.: Normal forms of spiking neural P systems with anti-spikes. IEEE Transactions on NanoBioscience 11(4), 352-359 (2012) 116
16 X. Gou et al. 23. Pan L, Wang J, Hoogeboom H J.: Spiking neural P systems with astrocytes. Neural Computation 24(3), 805-825 (2012) 24. Song T, Shi X, Xu J.: Reversible spiking neural P systems. Frontiers of Computer Science 7(3), 350-358 (2013) 25. Cabarle F G C, Adorna H N, Perez-Jimenez M J, et al.: Spiking neural P systems with structural plasticity. Neural Computing and Applications 26(8), 1905-1917 (2015) 26. Song T, Pan L, Pˇaun G.: Spiking neural P systems with rules on synapses. Theoretical Computer Science 529, 82-95 (2014) 27. Song T, Pan L.: Spiking neural P systems with rules on synapses working in maximum spikes consumption strategy. IEEE Transactions on NanoBioscience 14(1), 38-44 (2015) 28. Song T, Pan L.: Spiking neural P systems with rules on synapses working in maximum spiking strategy. IEEE Transactions on NanoBioscience 14(4), 465-477 (2015) 29. Wang J , Shi P , Peng H , et al.: Weighted Fuzzy Spiking Neural P Systems. IEEE Transactions on Fuzzy Systems 21(2), 209–220 (2013) 30. D´ıaz-Pernil, Daniel, PenA-Cantillana F , Gutirrez-Naranjo, Miguel A.: A parallel algorithm for skeletonizing images by using spiking neural P systems. Neurocomputing 115, 81–91 (2013) 31. Zhang G , Rong H , Neri F , et al.: An optimization spiking neural p system for approximately solving combinatorial optimization problems. International Journal of Neural Systems 24(05), 1440006 (2014) 32. Peng H , Wang J , P´erez-Jim´enez, Mario J, et al.: Fuzzy reasoning spiking neural P system for fault diagnosis. Information Sciences 235(Complete), 106–116 (2013) 33. Zhao J B , Wang T , Zhang G , et al.: Fault Diagnosis of Electric Power Systems Based on Fuzzy Reasoning Spiking Neural P Systems. IEEE Transactions on Power Systems 30(3), 1182–1194 (2014) 34. Xiong G, Shi D, Zhu L, et al.: A new approach to fault diagnosis of power systems using fuzzy reasoning spiking neural P systems. Mathematical Problems in Engineering 2013, 1-13 (2013) 35. Wang T, Zhang G, Rong H, et al.: Application of fuzzy reasoning spiking neural P systems to fault diagnosis. International Journal of Computers Communications & Control 9(6), 786-799 (2014) 36. Yahya Y, Qian A, Yahya A. Power transformer fault diagnosis using fuzzy reasoning spiking neural P systems. Journal of Intelligent Learning Systems and Applications.: Tissue P systems with channel states. Theoretical Computer Science 8(04), 77-91 (2016) 37. Guti´errez-Naranjo M A, P´erez-Jim´enez M J.: A spiking neural P system based model for Hebbian learning. in: Proceedings of the 9th Workshop on Membrane Computing 189-207 (2008) 38. Song T , Pan L , Wu T , et al.: Spiking Neural P Systems with Learning Functions. IEEE Transactions on NanoBioscience 1(1),(2019) 39. Sabour S , Frosst N , Hinton G E.: Dynamic Routing Between Capsules. Neural Information Processing Systems 3856–3866 (2017) 40. Optican L M, Richmond B J.: Temporal encoding of two-dimensional patterns by single units in primate inferior temporal cortex. III. Information theoretic analysis. Journal of Neurophysiology 57(1), 162 (1987) 41. Tovee M J , Rolls E T , Treves A , et al.: Information encoding and the responses of single neurons in the primate temporal visual cortex. Journal of Neurophysiology 70(2), 640–654 (1993) 117
A Novel Spiking Neural P Systems for Image Recognition 17 42. Kjaer T W , Hertz J A , Richmond B J.: Decoding cortical neuronal signals: Network models, information estimation and spatial tuning. Journal of Computational Neuroscience 1-2(1), 109–139 (1994) 43. Maass W.: Computing with spiking neurons. Pulsed neural networks, Location (1999) 44. Bialek W, Rieke F, De R R V S, et al.: Reading a neural code. Science 252(5014), 1854–1857 (1991) 45. Tieleman T, Hinton G.: Lecture 6.5-rmsprop: Divide the gradient by a running average of its recent magnitude. COURSERA: Neural networks for machine learning 4(2), 26–3 (2012) 118
Reliability Evaluation of Distribution Network Based on Fuzzy Spiking Neural P System with Self-Synapse YuLei Huang1,2,TaoWang 1,2, and Jun Wang1,2Hong Peng3 1School of Electrical Engineering and Electronic Information, Xihua University, Chengdu 610039, China 2Key Laboratory of Fluid and Power Machinery, Ministry of Education, Xihua University, Chengdu 610039, PR China 3School of Computer and Software Engineering, Xihua University, Chengdu 610039, PR China Abstract. This paper proposes a fuzzy spiking neural P system with self-synapse (in short, FSNPSSs) which applied to the reliability assessment of distribution network. This method maps the operation or fault state of the distribution network component and the load to the excited or resting state of the neuron, and converts the electrical relationship between the component and the load and the system into a synaptic connection relationship. Then, the probability of occurrence of the state is transmitted in the form of a pulse value, and the reliability index of the distribution network is accumulated. Finally, the successful application of membrane system in reliability assessment of distribution network is realized. Keywords: spiking neural P system, self-synapse, reliability assessment, distribution network 1 Introduction The reliability of the distribution network of power system is directly related to the electricity consumption experience of the majority of users. It is of great practical significance to evaluate the reliability of the distribution network. The mainly methods for the reliability assessment of distribution network include the Monte Carlo method [1] and the analytical method [2]. These two methods can be used to calculate the reliability index of the system. However, these two methods cannot be used to calculate the failure probability of the component in the system failure, and cannot identify the weak link of the system. For this reason, many scholars have proposed Bayesian networks and other reasoning models to calculate the degree of influence of various components in the power grid on the system [3][4]. But there are certain difficulties in calculating the index of the system failure frequency when using a Bayesian network for non-sequential simulation of reliability. The membrane computing, also known as P system, is a distributed parallel computing system derived from the structure and function of biological cells, first proposed by Pˇaun in [5]. Spiking neural P system (in short, SNPs) is an important branches of the P system, which realize the information transfer and processing by simulating the transmission process of electrical impulses [6][7]. The neurons and the synapses are the basic composed of components SNPs. In SNPs, a neuron and a synapse represent a node and a connection among nodes(neurons), respectively. The synapses in original SNPs is static which limits its extension of function. So, in recent years, some studies focused on synapse modification and proposed a few new models through adding the learning 119
2 functions [8][9], considering the plasticity or timeliness of synapse [10][11], introducing the division and budding of neuron to the SNPs [12] and so on. Under the guidance of the basic ideas of SNPs, many scholars have proposed fuzzy spiking neural P system (in short, FSNPs) by changing the transfer medium of the pulse in SNPs [13][14]. FSNPs is ability to process fuzzy information with dynamically and efficiently, and it has been successfully applied in the field of power system fault diagnosis [15][16][17][18]. At present, in general FSNPs and their extension systems, it is believed that the synapse connection can only from one neuron to another neuron and not to itself. Biological studies have shown that neuronal synapses can be directed not only from one neuron to another, but also from neuronal axons to their own dendrites or soma. These synapses are also called self-synapses [19][20], and the existence of self-synapse is of great significance to the normal physiological activities of living things. In addition, currently FSNPs is mainly used in the field of fault diagnosis of power systems, and there is still a lack of research data for the application of FSNPs in other fields of power systems.In addition, the introduce of self-synapse can improve the programming experience to convenient to observe the change of pulse value with time. In this paper, a FSNPs with self-synapses(in short, FSNPSSs) is proposed. The FSNPSSs can accumulate the pulse value, and this feature is applied to calculate the reliability index of the distribution network. This method has the following two improvements to the FSNPs: (1) A new type of synapse(self-synapse) is added to the FSNPs. The FSNPSSs break through the limitations that the spiking of the neurons cannot be passed on to itself in FSNPs. As a result of, FSNPSSs realizing the accumulation of pulse values. (2) The forgetting rule is used for terminating system operations. In this paper, the RBTS-BUS2 system is used as an example to verify the feasibility of the algorithm. The self-synaptic neurons accumulate the probability of failure at each load point, and finally realize the calculation of the system reliability index. In the meantime, the analysis of the influence degree of components on the system can be simultaneously completed and provide an important data for improving the reliability of the distribution network. 2 Problem Description Fig. 1 is a widely studied distribution network system(RBTS-BUS2-F1) which mainly includes 7 loads (LP1∼LP7), three segment switches (D1∼D3), 11 lines (L1∼L11), 7 transformers and a alternate supply(A) [21]. When the distribution network is in normal operation, all components are in normal working condition, and the segmentation switch is closed, and the load point is powered by the main power supply. When the line or transformer located on the load branch fails, due to the isolation of the fuse, only the load branch where the faulty component is located is power failure. And the power outage time is the component failure time, and other loads are not affected. For example, line L5 or transformer T5 failure will cause to load LP3 or load LP5 failure, respectively. If the fault occurs on the main feeder, all load points will be power failure. Then, the failure time of the load branch power which is in series with the faulty component is fault time of the component. However, the segment switch directly connected to the fault point will be disconnected, which is located at the front and rear ends of the load point. The load branch can be restored by the main power supply and the backup power supply respectively, and the failure time of the power is the switching operation time. For example, if line L7 is failure, then loads LP1∼LP7 will be outage of power. The different state combinations of all components correspond to a certain probability of occurrence. Moreover, the probability of outage of each load point can be obtained by accumulating 120
3 A B1 L1 L4 D1 L2 LP1 L5 LP3 R3 T3T1 R1 L10 D2 D3 L3 LP2 R2 T2 L6 LP4 R4 T4 L9 LP6 R6 T6 L8 LP5 R5 T5 L7 L11 LP7 R7 T7 F1 Fig. 1. RBTS-BUS2-F1 feeder system the probability of failure of the load point under different operating states. Finally, the system reliability index can be calculated based on the corresponding data. 3 The fuzzy spiking neural P system We briefly review the basic definition of the fuzzy spiking neural P system (FSNPs) [13]. Definition 1: An FSNPs (with degree m≥1) is a construct =(A,σ 1,σ 2,...,σ m,syn,I,O)(1) Here: (1) A={a}is a singleton alphabet ( a is called spike); (2) σ1,σ 2,...,σ m,are m neurons, of the form σi=(θi,c i,r i),i=1,2,···,m,where: (a) θiis a real number in [0, 1] representing the potential value of spikes(also called pulse value) contained in neuron σi; (b) ciis a real number in [0, 1] representing the truth value associated with neuron σi; (c) riis a firing rule corresponding to neuron σi, of the form E/aθ→aβ,whereEis a regular expression,θand βare real numbers in [0, 1]; (3) syn ⊆{1,2,···,m}×{1,2,···,m}is the connection among neurons (synaptic directed graph), for all (i, j)∈syn, i ≤m, j ≤m, i =j; (4) Iand Oare the input neuron set and the output neuron set, respectively. The basic operation process of the FSNPs is as follow: firstly, the input neurons obtain input pulses from the environment. Then, if the neuron satisfies the firing condition, it sends pulses to all postsynaptic neurons which are connected to itself. Moreover the output neurons will output the final result. Since this system does not have a memory function, the neurons cannot accumulate the pulse values. 4 A fuzzy spiking neural P system with self-synapse In this paper, we need to accumulate the pulse values obtained in each time. So, a fuzzy spiking neural P system with self-synapse system(FSNPSSs) is proposed. 121
10 (2) According to the relationship between components and loads, load and feeder in fault transmission. The network model based on FSNPSSs is established. (3) The table of input pulse vectors sequence is calculated according to the probability obtained in (1). The impulse sequence of input neurons in (2) is in detail described in case analysis. (4) Running the FSNPSSs according to the reasoning algorithm in Section 4.3. (5) Determining whether the termination operation condition is satisfied. If it is satisfied, go to (6), and if not, return to (4). (6) Obtaining the failure probability of each load point and feeder, and calculate all the reliability indicators in combination with the output unit’s corresponding state change of the input units. The calculation process is shown in Fig. 6. 6 Case analysis B1 L5 LP3 R3 T3 L6 R4 T4 L9 LP6 R6 T6 L8 LP5 R5 T5 L11 LP7 R7 T7 F1 R9 L1 L2 LP1 T1 R1 L3 LP2 R2 T2 L4 D1 L10 D2 D3 L7 L16 L18 D5 L24 D6 D7 L21 LP4 L12 L14 D4 L13 LP8 R8 LP9 L15 B2 L19 LP11 T9 R11 L20 LP12 R12 T10 L17 LP10 T8 R10 L25 LP15 T13 R15 L29 D8 L34 D9 D10 L32 L22 LP13 T11 R13 L23 LP14 R14 T12 L27 LP16 T14 R16 L28 LP17 R17 T15 L30 LP18 T16 R18 L31 LP19 R19 T17 L35 LP21 T19 R21 L36 LP22 R22 T20 L33 LP20 R20 T18 A1 A2 B3 F3 B4 F4 F2 L26 Fig. 7. The RBTS-BUS2 system In this paper, RBTS-BUS2 is used as the test system. The system structure and parameters, such as line length, failure rate and repair time, are presented in Ref. [21] There are four feeders 128
11 (F1∼F4) in the system. The structure of BUS2 is shown in Fig. 7. Taking the feeder F1 as an example, the rationality of this method is illustrated. The calculation process of other feeders and the whole bus are similar to the F1. According to the discussion in Sections 1 to 5, the failure probability of each node in F1 is calculated and its FSNPSS network is established as shown in Fig. 8. σ3 σ4 σ5 σ6 σ7 σ8 σ9 σ10 σ11 σ12 σ13 1 L 41 LD 72 LD 10 3 LD 731 LDA σ1 σ2 111 LDA σ18 σ19 σ20 σ21 σ22 σ23 σ24 1 LP 2 LP 3 LP 4 LP 5 LP 6 LP 7 LP σ25 1 F σ33 σ14 σ15 σ16 21 LT 32 LT 53 LT 4 L 64 LT 85 LT 7 L 96 LT 11 7 LT σ17 10 L σ26 or σ27 or σ28 or σ29 or σ30 or σ31 or σ32 or and ω1 ω2 ω3 ω4 ω5 ω6 ω7 421 LDA Fig. 8. FRSNPSS network model corresponding to BUS2-F1 Here: (1) The input neuron is σ1∼σ17, corresponding to the component node, and the output neuron is σ18 ∼σ25, corresponding to the load points and the feeder. Among them, σ18 ∼σ24 neurons are the neurons with self-synapse. (2) According to the electrical principle, the relationship among the input nodes and the load nodes are mapped to the neuron σ26 ∼σ32 in the graph. For example, synapses from the input neurons σ1,σ 2,σ 5,σ 10 and σ15 to the neuron σ26 means that for nodes L2T1, L1, 129
12 L4D1, L7D2 and L10D3, as long as there is one fault, the load point LP1(σ18) will be cut off, so these neurons(σ1,σ 2,σ 5,σ 10 and σ15) are connected by or regular neuron(σ26). Theirs synaptic weights are all 1 (Not shown in the Fig. 8). (3) Each load acts on the feeder through different influence factors, which are mapped to neuron σ33 in the graph. For these synapses from neurons σ18 ∼σ24 to neuron σ33 means that for load points LP1∼LP7 whose fault influence on feeder F1(σ25) by a certain weight value(ω1∼ω7) respectively, so these neurons(σ18 ∼σ24) are connected by and regular neuron(σ33). And the formula of synaptic weight is: ωi=Ni/ n i=1 Ni(14) Where, Ni is the number of users of ith load point and nis the number of load points. (4) The last input of the input neuron is a pulse with a pulse value of 1. The purpose is to stimulate the forgetting rule in the neurons with self-synapse, so that the output is zero, and the system is prevented from running unrestricted. The threshold of the forgetting rule within the neurons with self-synapse is λs=1. (5) The input neuron pulse sequence is shown in Table 1. Table 1. Input neuron status sequence tσ1σ2σ3σ4σ5σ6σ7σ8··· σ17 θ 0 00000000··· 0θ0 1 00000000··· 1θ1 2 00000000··· 0θ2 . . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. . . 2n−111111111··· 1θ2n −1 2n11111111··· 1θ2n Where, 1 and the 0 represents the excitation or rest of the neuron, indicating that the element is in the fault/disconnection state or in the normal/closed state, respectively. (a) The formula for calculating the pulse value is as follows: θt,i =⎧ ⎪ ⎪ ⎨ ⎪ ⎪ ⎩ St,i n i=1 Pt,i if t ≤2n−1 1if t =2 n 0if t > 2n (15) Here: Pt,i =PifS t,i =0 1−PifS t,i =1 (16) Pis the normal working probability of the corresponding element of the neuron. St,i is the state of the component iat time t.nis the number of all elements. 1 and 0 represents the state of fault/action or the state of normal/non-action, respectively. 130
13 6.1 The reliability index of the system In this paper, the simulation operation is performed on matlab2010b, and the reasoning algorithm is programmed according to the Section 4. According to the output result, the reliability index of the system can be calculated, including ASUI (system average unavailability index) ASAI (system average availability index), SAIDI (system average interruption duration index), EENS (expected energy not supplied), SAIFI (system average interruption frequency index). Table 2 shows the comparison of FSNPSS results with those in Ref.[21]. (The ASUI can be derived directly from the final output of the system. The ASAI and SAIDI can be derived from ASUI. The SAIFI can be calculated according to the change of load point failure rate with component state, and EENS can be calculated from the energy shortage at each load point.These indexes are calculated by formulas provided in [22]) Table 2. The results calculated from the FSNPSS model and Ref.[21] ASAI SAIFI EENS ASUI SAIDI FSNPSS Ref.[21] FSNPSS Ref.[21] FSNPSS Ref.[21] FSNPSS Ref.[21] FSNPSS Ref.[21] F1 0.999912 0.999912 0.247 0.248 13171 13172 0.000088 0.000088 3.61 3.62 F2 0.999940 0.999940 0.139 0.140 1122 1122 0.000060 0.000060 0.52 0.52 F3 0.999586 0.999586 0.230 0.250 11203 11203 0.000412 0.000412 3.60 3.61 F4 0.999588 0.999588 0.248 0.247 12248 12248 0.000412 0.000412 3.60 3.61 BUS2 0.999588 0.999588 0.241 0.248 37743 37746 0.000412 0.000412 3.62 3.61 It can be seen from the data in the table that the results obtained by the FSNPSSs method and the Ref.[16] are consistent, and the correctness of the method is verified. 6.2 The failure probability of component during system failure Fig. 9. Possible failure rate of components at each load point or system failure of F1 131
14 In FSNPSSs, the output pulse varies with different input pulse. By comparing the relationship between input pulse and output pulse, the probability of simultaneous failure of load point and component is counted. Then the probabilities of possible failure of each component can be calculated according to the Bayesian conditional probability formula, and the influence of components on load and feeder reliability can be analyzed by fault probability. Fig. 9 shows the possible failure rate of each component in each load point or system failure in F1. From the Fig. 9, we can see that when the feeder F1 is failure, the failure rates of components L3, L5, L8 and L11 are higher relative to the others components. So, in order to reduce the failure rate of feeder F1, it is necessary to give priority to improving the reliability parameters of components L3, L5, L8 and L11. 7 Conclusion (1)This method proposed in this paper achieves the accumulation of pulse values by introducing self-synapses into the FSNPs. Combined with the fault information transmission principle of distribution network, the system reliability index is accumulated. A reliability assessment method of distribution network based on FSNPSSs is proposed. (2) The method has the characteristics that the graphical interface structure is simple and clear, and the states of the load point and the feeder line in the component failure can be obtained in parallel. In addition, since the FSNPSSs can obtain the output state of the corresponding system under different input states. The calculation of reliability index and component impact analysis on system can be performed simultaneously. (3) Because this method converts the transmission relationship of fault information into the process of neuron excitation on the synapse, it has strong applicability. When the component connection mode is changing, such as absence of the fuse or the isolating switch etc. The system reliability also can be calculated by changing the synaptic connection mode or inputting pulse sequence. (4) Compared with the original FSNPs, the complexity of FSNPSSs programming has not increased much, but its operation efficiency and function have been greatly improved. So it can obtain a better programming experience. (5) Compared with the traditional methods and Bayesian network, the method proposed by this paper can not only calculating all reliability indexes but also synchronous obtaining the importance of components in the system. Acknowledgment This work was supported by a grant from Sichuan Provincial Department of Science and Technology (No. 2019122). References 1. Heydt, G.T., Graf, T.J.: Distribution system reliability evaluation using enhanced samples in a monte carlo approach. IEEE Transactions on Power Systems 25(4), 2006–2008 (2010) 2. Hou, K., Jia, H., Xu, X., Liu, Z., Jiang, Y.: A continuous time markov chain based sequential analytical approach for composite power system reliability assessment. IEEE Transactions on Power Systems 31(1), 738–748 (2015) 3. Yu, D.C., Nguyen, T.C., Haddawy, P.: Bayesian network model for reliability assessment of power systems. IEEE Transactions on Power Systems 14(2), 426–432 (1999) 132
15 4. Zhu, Y., Huo, L., Zhang, L., Yan, W.: Bayesian network based time-sequence simulation for power system reliability assessment. In: Mexican International Conference on Artificial Intelligence (2008) 5. Pˇaun, G.: Computing with membranes. Journal of Computer System Sciences 61(1), 108–143 (2000) 6. Ionescu, M., Yokomori, T.: Spiking Neural P Systems (2006) 7. Pˇaun, G., Rozenberg, G., Salomaa, A.: The Oxford Handbook of Membrane Computing (2010) 8. Song, T., Pan, L., Wu, T., Zheng, P., Wong, M.D., Rodr´ıguez-Pat´on, A.: Spiking neural p systems with learning functions. IEEE transactions on nanobioscience 18(2), 176–190 (2019) 9. Gutirrez-Naranjo, M.A., Prez-Jimnez, M.J.: Hebbian learning from spiking neural p systems view. In: Membrane Computing - 9th International Workshop, WMC 2008, Edinburgh, UK, July 28-31, 2008, Revised Selected and Invited Papers (2008) 10. Cabarle, F.G.C., Adorna, H.N., P´erez-Jim´enez, M.J., Song, T.: Spiking neural p systems with structural plasticity. Neural Computing and Applications 26(8), 1905–1917 (2015) 11. Fgc, C., Adorna, H.N., Jiang, M., Zeng, X.: Spiking neural p systems with scheduled synapses PP(99), 1–1 (2017) 12. Pan, L., P˘aun, G., P´erez-Jim´enez, M.J.: Spiking neural p systems with neuron division and budding. Science China Information Sciences 54(8), 1596 (2011) 13. Hong, P., Wang, J., Prez-Jimnez, M.J., Hao, W., Jie, S., Tao, W.: Fuzzy reasoning spiking neural P system for fault diagnosis. Information Sciences 235(6), 106–116 (2013) 14. Wang, J., Shi, P., Peng, H., Prez-Jimnez, M.J., Wang, T.: Weighted fuzzy spiking neural P systems. IEEE Transactions on Fuzzy Systems 21(2), 209–220 (2013) 15. Min, T.U., Wang, J., Hong, P., Peng, S.: Application of adaptive fuzzy spiking neural P systems in fault diagnosis of power systems. Chinese Journal of Electronics 23(1), 87–92 (2014) 16. Zhao, J.B., Tao, W., Zhang, G., He, Z., PErez-JimEnez, M.J.: Fault diagnosis of electric power systems based on fuzzy reasoning spiking neural P systems. IEEE Transactions on Power Systems 30(3), 1182– 1194 (2015) 17. Wang, J., Hong, P., Min, T.U., Mario, P.J.J., Peng, S.: A fault diagnosis method of power systems based on an improved adaptive fuzzy spiking neural P systems and PSO algorithms. Chinese Journal of Electronics 25(2), 320–327 (2016) 18. Xiong, G., Shi, D., Lin, Z., Duan, X.: A new approach to fault diagnosis of power systems using fuzzy reasoning spiking neural P systems. Mathematical Problems in Engineering 2013(1), 211–244 (2013) 19. Yin, L., Zheng, R., Ke, W., He, Q., Zhang, Y., Li, J., Wang, B., Mi, Z., Long, Y.s., Rasch, M.J., et al.: Autapses enhance bursting and coincidence detection in neocortical pyramidal cells. Nature communications 9(1), 4890 (2018) 20. Bekkers, J.M.: Synaptic transmission: excitatory autapses find a function? Current Biology 19(7), R296– R298 (2009) 21. Allan, R.N., Billinton, R., Sjarief, I., Goel, L., So, K.S.: A reliability test system for educational purposes–basic distribution system data and results. IEEE Transactions on Power Systems 6(2), 813– 820 (1991) 22. Li, W.: Risk assessment of power systems : models, methods, and applications 36(2), 179–180 (2014) 133
Parallel Contextual Array Insertion Deletion P Systems and Siromoney Matrix Grammars S. Jayasankar(A)D. Gnanaraj Thomas(B) S. James Immanuel(B)Meenakshi Paramasivan(C) T. Robinson(D)Atulya K. Nagar(E) (A)Department of Mathematics, Ramakrishna Mission Vivekananda College, Mylapore, Chennai - 600004, India [email protected] (B)Department of Science and Humanities (Mathematics Division), Saveetha School of Engineering, Chennai - 602105, India [email protected] ,
[email protected] (C)Institut f¨ur Informatik, Universit¨at Leipzig, D-04009 Leipzig, Germany meena [email protected] (D)Department of Mathematics, Madras Christian College, Tambaram, Chennai - 600059, India [email protected] (E)Department of Mathematics and Computer Science, Liverpool Hope University, Liverpool, United Kingdom [email protected] Abstract A variant of P systems named as parallel contextual array insertion deletion P system was introduced and some of its properties were studied in [14]. The family of array languages generated by this variant PCAIDPS includes families of array languages like recognizable picture languages (REC) and context-sensitive matrix languages (CSML). In this paper we show that another interesting family L(CF :RIR)of Siromoney matrix languages [12] is included in the family of array languages generated by PCAIDPS with two membranes. 1. Introduction A P system or a membrane system introduced by Gh. Paun [10] evolves in parallel. A computation starts from an initial configuration of a system, defined by a membrane structure with objects and evolution rules in each membrane and terminates when no further rule can be applied. Various types of P systems have been introduced in the literature and their properties, 134
2S. Jayasankar, D.G. Thomas, S. James Immanuel et. al., computing power, normal forms and basic decision problems have been studied [10, 11]. In [9] the contextual way of handling string objects in P systems has been considered and the contextual P systems are found to be more powerful. In [1], a P system model, called contextual array P system with array objects and array contextual rules has been introduced. An interesting model of array P systems using contextual array grammars [5] with an application of Kolam patterns has been considered in [4]. In [6], another P system model namely, external and internal parallel contextual array P systems have been defined and examined. A new variant of P system model called parallel contextual array insertion deletion P system (PCAIDPS) has been studied in [14] based on array insertion and deletion operations and parallel contextual array insertion deletion grammar [15]. It is proved that the family of languages generated by PCAIDPS includes families of array languages like recognizable picture languages (REC) [2, 3] and context-sensitive matrix languages CSML [12]. For an application of insertion and deletion operations in natural computing, we refer to [7] and in P systems, we refer to [8]. Insertion Deletion System has the generative power equal to the class of recursive enumerable string languages [16]. The primary motivation for studying PCAIDPS is not only to develop the 2D counterpart of Insertion Deletion System available for one dimensional string languages but also to find the status of L(PCAIDPS) among the families of 2D languages available in the literature. As far as our knowledge goes, there is no definite hierarchy for the families of 2D languages like Chomsky hierarchy for the classes of string languages. Hence, we are motivated to show that PCAIDPS has more generative power than any other class of 2D grammars generating languages having intersection with REC and CSML. One such family is L(CF :RIR)of Subramanian et al [13] who have considered the Siromoney matrix grammar (SMG) [12] and examined the notion of attaching indices to nonterminals in the vertical derivations. The system (CF:RIR)SMG has greater generative power compared to context free matrix languages CFML [12] with interesting applications in the studies of tilings, polyominoes, noisy patterns and parquet deformations. In this paper we prove L(PCAIDPS2) includes L(CF :RIR) [13]. 2. Preliminaries In this section, we recall some notions of parallel contextual array insertion deletion P systems and give an example. For further details of the P system we can refer to [14]. Let Vbe a finite alphabet, V∗, the set of words over Vincluding the empty word λ.V+= V∗−{λ}.Forw∈V∗and a∈V,|w|adenotes the number of occurrences of ain w.An array consists of finitely many symbols from Vthat are arranged as rows and columns in some particular order and is written in the form, A=⎡ ⎢ ⎣ a11 ··· a1n . . ..... . . am1···amn ⎤ ⎥ ⎦or in short A=[aij]m×n, for all aij ∈V,i=1,2,...,mand j=1,2,...,n. The set of all arrays over Vis denoted by V∗∗ which also includes the empty array Λ (zero rows and zero columns). V++ =V∗∗ −{Λ}. The column 135
Parallel Contextual Array Insertion Deletion P Systems and Siromoney Matrix Grammars 3 concatenation of A=⎡ ⎢ ⎣ a11 ··· a1p . . ..... . . am1···amp ⎤ ⎥ ⎦and B=⎡ ⎢ ⎣ b11 ···b1q . . ..... . . bn1···bnq ⎤ ⎥ ⎦, defined only when m=n,isgiven by A || B=⎡ ⎢ ⎣ a11 ··· a1pb11 ···b1q . . ..... . .. . ..... . . am1···amp bn1···bnq ⎤ ⎥ ⎦.As1×n-dimensional arrays can be easily interpreted as wordsoflengthn(and vice versa), we will then write their column catenation by juxtaposition (as usual). Similarly, the row concatenation of Aand B, defined only when p=q,isgivenby A =B= ⎡ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ a11 ··· a1p . . ..... . . am1···amp b11 ··· b1q . . ..... . . bn1··· bnq ⎤ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ . The empty array acts as the identity for column and row catenation of arrays of arbitrary dimensions. Definition 2.1 Let Vbe a finite alphabet. A column array context over Vis of the form, c= [u1 u2]∈V∗∗,u1,u 2are of size 1×p,p≥1. A row array context over Vis of the form, r=[ u1u2]∈V∗∗,u1,u 2are of size p×1,p≥1. Definition 2.2 The parallel column contextual insertion (deletion) operation is defined as follows: Let Vbe an alphabet, Cbe a finite subset of V∗∗ whose elements are the column array contexts and ϕi c(ϕd c):V∗∗ ×V∗∗ →2Cbe a choice mapping. We define ϕi c(ϕd c):V∗∗ ×V∗∗ → 2V∗∗ such that, for arrays A=a1j··· a1(k−1) . . ..... . . amj ··· am(k−1) ,B =a1k··· a1(l−1) . . ..... . . amk ··· am(l−1) ,j<k<l,a ij ∈ V,B=a1(k−p)··· a1(l−1) . . ..... . . am(k−p)··· am(l−1) ,Ic∈ϕi c(A, B)(ϕd c(A, B)),I c(Dc)=u1 u2 . . . um,if ci=[ui ui+1 ]∈ ϕi caij ··· ai(k−1) a(i+1)j··· a(i+1)(k−1) ,aik ··· ai(l−1) a(i+1)k··· a(i+1)(l−1) ϕd caij ··· ai(k−1) a(i+1)j··· a(i+1)(k−1) ,aik ··· ai(l−1) a(i+1)k··· a(i+1)(l−1) ,ci∈C, 1≤ i≤m−1, not all need to be distinct. Given an array X=[aij]m×n,a ij ∈VX=X1 || A || B || X2(X=X1 || A || Dc || B || X2), X1=a11 ··· a1(j−1) . . ..... . . am1··· am(j−1) ,A=a1j··· a1(k−1) . . ..... . . amj ··· am(k−1) ,B =a1k··· a1(l−1) . . ..... . . amk ··· am(l−1) ,X 2=a1l··· a1n . . ..... . . aml ··· amn ,1≤j≤ k<l≤n+1(or) 1≤j<k≤l≤n+1, we write X⇒coli(cold)Yif Y=X1 || A || Ic || B || X2 (Y=X1 || A || B || X2), such that Ic∈ϕi c(A, B)(Dc∈ϕd c(A, B)). Ic(Dc)is called as the inserted (deleted) column context. We say that Y is obtained from X by parallel column contextual insertion (deletion) operation. The following 4 special cases for X=X1 || A || B || X2 are also considered, 1. For j=1we have X1=Λ. 2. For j=k, we have A=Λ.Ifj=k=1, then X1=Λand A=Λ. 136
4S. Jayasankar, D.G. Thomas, S. James Immanuel et. al., 3. For k=l(For k+p=l), we have B=Λ. 4. For l=n+1, we have X2=Λ.Ifk=l=n+1(If (k+p)=l=n+1), then B=Λ and X2=Λ. The case j=k=lis not considered for parallel column contextual insertion (deletion) operation. Similarly, we can define parallel row contextual insertion (deletion) operation by inserting (deleting) row context Ir(Dr) in between two sub-arrays A and B with the help of row operation =and set of row array contexts R. We have X⇒rowi(rowd)Yif X=X1 =A =B =X2 (X1 =A =Dr =B =X2)andY=X1 =A =Ir =B =X2(X1 =A =B =X2). Definition 2.3 A parallel contextual array insertion deletion P system with h membranes (PCAIDPSh)is a construct, =(V,T,μ,C,R,(M1,I 1,D 1),...,(Mh,I h,D h),ϕ i c,ϕ i r,ϕ d c,ϕ d r,i 0) where, −Vis the finite nonempty set of symbols called alphabet; −T⊆Vis the output alphabet; −μis the membrane structure with h membranes or regions; −Cis the finite subset of V∗∗ called set of column array contexts; −Ris the finite subset of V∗∗ called set of row array contexts; −Miis the finite set of arrays over Vcalled as axioms associated with the region μiof μ; −ϕi c:V∗∗ ×V∗∗ →2Cis the choice mapping performing parallel column contextual insertion operations; −ϕi r:V∗∗ ×V∗∗ →2Ris the choice mapping performing parallel row contextual insertion operations; −ϕd c:V∗∗ ×V∗∗ →2Cis the choice mapping performing parallel column contextual deletion operations; −ϕd r:V∗∗ ×V∗∗ →2Ris the choice mapping performing parallel row contextual deletion operations; −Ii=∅(or) ϕi c(Ai,B i)=[ ui ui+1 ]i=1,2,...,m−1,α where 137
Formal Approach to cP System Verification 9 4.1 Translating cP systems to CSP# In CSP#, most of cP system terms need to be modeled into processes. Multisets and sets in cP systems could be modelled as array structures in CSP#. The rewriting can be modelled as expression in events and processes. cP states can be modelled as global variables. cP terms can be modelled as global variables including constants, containers and integers. Promoters could be modelled as conditions. The set of mapping guidelines is shown in Table 2. cP component cP notation CSP# Expression Example grounded term t(10)marco #define t 10; variable term a(X)variable var a; multiset, set a(1,1,2,3)array var a = [1,1,2,3]; cP state S1global variable var state = 1; promoter |x(X)y(X)condition if(x == y)... rewriting →1 x(YZ)|y(Y)z(Z)statement x=y+z; Table 2: Mapping guidelines for transforming cP systems into CSP# Following the guidelines, we can translate cP rules in Fig. 2 to CSP# (Fig. 5). In the translation, we use fixed-size array to model cP multisets, an alternative is to use C# lists in the CSP#, which have variable-length and are more flexible than fixed-size arrays. Rule (5) does not need to be translated, because CSP# uses events to simulate cP systems, after an event was performed, its process would automatically move to execute the next event, the previous path terms would not exist in the system anymore. If we need to simulate the cP system without the consuming rule, we can achieve it by generating path term processes in each computation round. The system output is the solution subset of the problem or [-1,-1,-1,-1]. On transforming cP systems to CSP#, integer arrays are used to represent multisets m(M),u(U)and n(N), integer variables are used to model singleton sets s(S)and the cP state. Both state change and rewriting are translated to statements inside of events. One challenge here is to model the nested cP multisets p(P), there is no suitable data structure in CSP# can achieve it. In this case, we implicitly model it by using a group of arrays and variables together. Compare to rule (4), the translations of rule (1), (2) and (3) are quite straight forward. In the second line of the rule (4) translation, the system creates processes by using CSP# notation []i:0..(N−1)@rule4..., which is a syntax sugar of P(1)[]P(2)...[]P(N−1),where[] isthechoiceoperator.Thetranslation means either P(1)or P(2)... or P(N−1)may execute, which simulates the nondeterministical generation of path terms in the cP system. 240
10 Y. Liu et al. Fig. 5 mapping cP subset sum solution to CSP# 4.2 Translating cP systems to B Compare to CSP#, B language has a rich set of built-in set and sequence operators, which could be used to model cP sub-cells. Our mapping guidelines for translating cP systems to B is shown in Table 3. cP component cP notation B expression Example grounded term t(10)constant CONSTANT t variable term a(X)variable VARIABLES a multiset a(1,1,2,3)sequence a := [1,1,2,3]; set a(1,2,3,4)sequence a:={1,2,3,4}; cP state S1global variable state := 1; promoter |x(X)y(X)predicate PREx=yTHEN rewriting →1 x(YZ)|y(Y)z(Z)statement x:=y+z; Table 3: Mapping guidelines for transforming cP systems into B When modelling cP sets in B, we use set operators. For example, we have two sets a(X)and b(Y)and we want to add them together to get a new set c(XY),we should use the set union operator c:=a\/binstead of the summation operator c:=a+b. Similarly, to compute the difference of cP sets a(XY)and b(Y),we could translate the cP rule to c:=a−b,where−is the set difference operator. Since sets in B cannot contain duplicate elements, cP terms including a(1,12,12) and a(b(1)b(1)c(12)d(13)) need to be translated to sequences in B. Following the guidelines, we can translate cP rules in Fig. 2 to B (Fig. 6). Similar to CSP#, the consuming rule can be handled by ProB automatically. In 241
Formal Approach to cP System Verification 11 the translation example, if no solution could be found, the system simply output an [−1]to the environment. Fig. 6 Mapping cP subset sum solution to B In the translation, B uses sets and sequences to simulate cP multisets and use constants and integer variables to model cP singleton sets. cP outputs are modelled by operation outputs, promoters and inhibitors are translated to predicates. The rewriting and state change are transformed into operation statements. Rule (4), the path generation rule, is different from other rules – to model the non-deterministic generation of path terms, a parameter xis used. ProB will check all possible xvalues satisfying x∈n(N), which simulates the max-parallel mode of cP systems. 4.3 Limitations of simulating cP systems using CSP# and B To completely simulate cP systems in model checkers is difficult. As a membrane computing model, all available cP rules can be appiled at same time (in the same cP step), which can create an exponential state-space in a small number of steps. Model checkers work in a different way, they explore the state-space state by state to check system properties. To deal with the memory explosion issue, some model checkers including PAT3 can generate their workspace on the fly, dynamically check the system properties. Some operations in cP systems are hard to be simulated in CSP# and B. For example, in the destructive summation rule: S1x(X)y(Y)→ 1S2z(Z), except translating the main rewriting logic x+y=zto CSP#, we also need to simulate the consumption of xand y. After this rule being applied, xand ywill not exist in the system anymore. To release the memory of xand yis an option, which currently cannot be achieved in CSP# and B. Another challenging of translating cP systems into programming languages is: multiple copies of term a(X)can exist in a cP system, while in programming languages including CSP# and B, the identifier “a”, which is used to represent 242
12 Y. Liu et al. this term, only can have one value at a time. To declare multiple variables with the same identifier is also not supported. There is no built-in variable-length array in CSP#, when modelling a cP system, we need to allocate a size for each multiset manually or use external C# lists, which will make the automatic translation from cP systems to PAT3 languages more complex. As mentioned, CSP# does not support generic containers, only integer arrays or integers can be used in modelling cP terms – when modelling nested multisets, we need to create multiple integer arrays and variables to store information and put them together to represent the nested multiset, to track the relationship among these variables could be challenging, which will also make the translation hard to read and easy to make mistakes. When using B sequences to model cP multiset terms, adding two multisets together can be achieved by iteratively using the sequence functions “front(s)” and “tail(s)”, but to compute the difference of two sequences (cP multisets) is complex and inefficient in B. To improve the efficiency on modelling cP multisets in B, a support library with a number of functions need to be implemented. Although there are some challenges on simulating cP systems in formal languages, most of system properties can be verified by model checkers. Without generating the full state-space at once, model checkers still can check all system states and try to find counterexamples for given specifications. 5 Evaluation In this section, we explain our cP system solution in detail by using an example and introduce our formal verification results. 5.1 Simulation and translation of the cP solution Suppose we need to solve a subset sum problem where S={1,2,3,4}and T=10, recall the ruleset in Fig. 2, the cP systems starts in S0, with a target number t(10)and elements in set S–m(m(1)m(2)m(3)m(4)). By applying rule (1) once, we could get a path term p(u(λ)n(m(1)m(2)m(3)m(4)) s(λ)) and the system state would be changed to S1. In the next step, the path term p(u(λ)n(m(1)m(2)m(3)m(4)) s(λ)) is available, and the system state is S1. Rule(2) and (3) cannot be used, because their promoters do not exist in the system. The system will run rule (4) – using p(u(λ)n(m(1)m(2)m(3)m(4)) s(λ)) to create new path terms in a maximum parallel manner without changing the system state. After applying rule (4), in the same step, rule (5) will clean all path terms in the system except new generated ones. The cP system will keep checking and computing the rules step by step, until a final state – S2or S3is reached. A manual simulation can be seen in Fig. 7. We mark unavailable terms using grey colour in the table. As mentioned in Section 3, some path variables may have multiple copies. 243
Formal Approach to cP System Verification 13 Fig. 7 A step by step manual simulation of the subset sum cP solution One solution subset was found in step 6, which is {1,2,3,4}. If multiple solutions exist, the system state will be changed to S2right after the first solution is found, then the cP system will stop, since none of the rules has a lhs with state S2. If there is no solution satisfy the problem, for instance T=11 and S={1,2,3,4}, the system will terminate in state S3with empty output (Fig. 8). Fig. 8 A snapshot of the final state – solution not found By performing the table simulation, we can observe that in our solution, the worst-case running steps is n+2, when x∈Sx=Tor A,A⊆S,x∈Ax=T.To verify this, we modelled the cP system in CSP# and B following the mapping rules defined in Section 4 and checked its features by using PAT3 and ProB. 244
14 Y. Liu et al. 5.2 Model checking result from PAT3 and B To check the effectiveness of the cP solution, we chose a medium size problem, where S={1,2,4,55,56,57,119}, and checked the cP rules with different Tvalues (Fig. 9). Both model checkers verified that our cP system can find solutions to the subset sum problem. On choosing different heuristics to traverse the state-space, sometimes different solution subsets could be found by the model checkers. Fig. 9 Verification of the cP solution when n = 7 The feature checking of the cP system is shown in Fig. 10. Features including deadlockfree (safety, weak-liveness), terminating (safety), divergencefree (safety), invariant violation (safety), reachability (liveness) and LTL properties (liveness) are verified. Some of the property checking results depend on Sand T. For instance, state S2only can be reached when the answer to the subset sum problem is “yes”, meanwhile, S3could not be reached. From the results we can find that the general running time of PAT3 is less than ProB, especially when the problem size is large. Deadlock-freeness and divergence-freeness checking are often slower than checking other properties, since more states and transitions need to be checked. The subset sum problem is NP-complete, the state-space grows significantly with the increase of the problem size. ProB’s state-space contains 18743 states when n=7 and 13492904 states when n=10. When checking deadlocks in ProB, “pseudo deadlocks” need to be distinguished from deadlocks. Any state which has no outgoing edge is a sink, ProB would treat a sink as a deadlock. In the cP solution, after applied rule (2) or rule (3), the system’s cP state would be changed to S2or S3,whichmaycause sinks. Since no rule can be used in S2or S3,ProBwouldtreatthemasdeadlock states. In our experiments, sinks in cP systems are not counted as deadlocks. Checking the cP solution with a large-size problem is time consuming. To check all features, when n=10, the running time of PAT3 is around 2300sand ProB is more that 3000s. It is still acceptable, but it is better to make some changes in the cP rules to speed up the model checking. In this example, we could add duplicate path terms removing rules to the solution following Fig. 4 – although it is probably unnecessary in a theoretical cP system, it could be very helpful in practice. We re-modelled the system using C# set in PAT3 and set 245
Formal Approach to cP System Verification 15 Fig. 10 Model checking results – cP solution without removing duplicate terms in ProB to remove duplicate path terms. By doing so, the state-space of n=7 decreased to 132 and n=10 decreased to 1028 in ProB. The checking results are shown in Fig. 11, which we obtained same property checking results of the system with less running time. 246
16 Y. Liu et al. Fig. 11 Model checking results – cP solution with rules to remove duplicate terms 5.3 Discussion We showed that it is possible to verify a cP system’s features effectively by using model checking. In addition to feature checking, model checking also can help finding design errors in cP rules. Considering the rules in Fig. 12 which has a critical error, after adding an element m(Y)from the unused term n(m(Y)Z)to the used term u(Xm(Y)), the system does not remove m(Y)from unused term n(m(Y)Z), which means one element in Scan be used multiple times when constructing a subset. By model this ruleset in the model checkers with the problem that S={1,2,3,4}and T=16, both PAT3 and ProB can easily find a solution subset {4,4,4,4}, which violates the definition of the subset sum problem. S0→1S1p(u(λ)n(M)s(λ)) | m(M)(1) S1→1S2o(X)|p(u(X)s(T)) t(T)(2) S1→1S3|p(n(λ)) (3) S1→+S1p(u(Xm(Y)) n(m(Y)Z)s(SY )) | p(u(X)n(m(Y)Z)s(S)) (4) S1p()→ +S1(5) Fig. 12: cP ruleset with a design error 247
Formal Approach to cP System Verification 17 PAT3 with CSP# does not have an actual state-space, since it is event-based. To visualize the simulation, PAT3 can display an event transition diagram. Compare to PAT3, ProB can show its state-space after checking a system model. In a cP system, if its state-space can be controlled well by designing cP rules or choosing a suitable problem size, ProB is a great option to perform model checking, since its visualization tool is especially useful in finding algorithm errors of the cP rules. If the problem size is large or the communication of cP top-cells is involved, PAT3 could be a better choice, since its performance is better and CSP# is designed for modelling distributed, concurrent systems. For verifying async cP systems, we would also recommend PAT3, which supports real-time system modelling. Finally, to design and develop a cP system verifier, PAT3 and ProB can be combined in a back-end, a user interface can be implemented on top of it, which accepts cP system models as inputs. Some example cP verification results of PAT3 and ProB can be found in the appendix. 6 Conclusion Since cP systems become increasingly important on solving computational hard problems and distribute problems, it is meaningful to formally verify cP systems. In this study, we solved the subset sum problem in cP systems and verified the solution by using model checking tools PAT3 and ProB. Our cP solution only contains one top-cell with five rules, which can solve the problem in at most n+2 steps. We checked safety and liveness properties of the system, illustrated how to find out design errors in cP systems by using model checking. By verified different cP rulesets to the same problem, we demonstrated it is possible to improve model checking efficiency with additional cP rules. This work will have a significant impact on formal verification of cP systems and can assist the practice use of cP solutions. As the first formal verification work in cP systems, we proposed two mapping guidelines to transform cP systems to verification problems in CSP# and B. Our future cP system formal verification work includes three main directions: 1) to formally verify multi-cell cP systems which solve sync/async distributed computational hard problems; 2) to implement cP systems in theorem provers and to prove cP theorem and lemmas; 3) to design a formal programming language for cP systems, which supports automatically translation from cP language to different verification languages, thus all the cP models can be checked automatically. References 1. G. P˘aun, “Computing with membranes,” Journal of Computer and System Sciences, vol. 61, no. 1, pp. 108 – 143, 2000. 2. A. P˘aun, “On P systems with active membranes,” in Unconventional Models of Computation, UMC2K, pp. 187–201, Springer, 2001. 248
18 Y. Liu et al. 3. C. Mart´ın-Vide, G. P˘aun, J. Pazos, and A. Rodr´ıguez-Pat´on, “Tissue P systems,” Theoretical Computer Science, vol. 296, no. 2, pp. 295–326, 2003. 4. M. Ionescu, G. P˘aun, and T. Yokomori, “Spiking neural P systems,” Fundamenta informaticae, vol. 71, no. 2, 3, pp. 279–308, 2006. 5. M. Gheorgue, F. Ipate, C. Dragomir, L. Mierla, L. Valencia Cabrera, M. Garc´ıa Quismondo, and M. d. J. P´erez Jim´enez, “Kernel P systems-version 1,” Proceedings of the Eleventh Brainstorming Week on Membrane Computing, 97-124. Sevilla, ETS de Ingenier´ıa Inform´atica, 4-8 de Febrero, 2013,, 2013. 6. R. Nicolescu, F. Ipate, and H. Wu, “Programming P systems with complex objects,” in International Conference on Membrane Computing, pp. 280–300, Springer, 2013. 7. G. P˘aun, “Introduction to membrane computing,” in Applications of Membrane Computing, pp. 1–42, Springer, 2006. 8. J. Aguado, T. Balanescu, T. Cowling, M. Gheorghe, M. Holcombe, and F. Ipate, “P systems with replicated rewriting and stream X-machines (Eilenberg machines),” Fundamenta Informaticae, vol. 49, no. 1-3, pp. 17–33, 2002. 9. Z. Dang, O. H. Ibarra, C. Li, and G. Xie, “On the decidability of model-checking for P systems,” Journal of Automata, Languages and Combinatorics, vol. 11, no. 3, pp. 279–298, 2006. 10. F. Ipate, R. Lefticaru, and C. Tudose, “Formal verification of P systems using Spin,” International Journal of Foundations of Computer Science, vol. 22, no. 01, pp. 133–142, 2011. 11. R. Lefticaru, C. Tudose, and F. Ipate, “Towards automated verification of P systems using Spin,” International Journal of Natural Computing Research (IJNCR), vol. 2, no. 3, pp. 1–12, 2011. 12. M.Gheorghe,F.Ipate,R.Lefticaru,M.J.P´erez-Jim´enez, A. T¸urcanu, L. Valencia Cabrera, M. Garc´ıa-Quismondo, and L. Mierl˘a, “3-col problem modelling using simple kernel P systems,” International Journal of Computer Mathematics, vol. 90, no. 4, pp. 816–830, 2013. 13. M. Gheorghe, R. Ceterchi, F. Ipate, S. Konur, and R. Lefticaru, “Kernel P systems: from modelling to verification and testing,” Theoretical Computer Science, vol. 724, pp. 45–60, 2018. 14. F. Ipate, M. Gheorghe, and R. Lefticaru, “Test generation from P systems using model checking,” The Journal of Logic and Algebraic Programming, vol. 79, no. 6, pp. 350–362, 2010. 15. M. Gheorghe, S. Konur, and F. Ipate, “Kernel P systems and stochastic P systems for modelling and formal verification of genetic logic gates,” in Advances in Unconventional Computing, pp. 661–675, Springer, 2017. 16. F. Ipate and A. Turcanu, “Modeling, verification and testing of P systems using Rodin and ProB,” Proceedings of the Ninth Brainstorming Week on Membrane Computing, 209-219. Sevilla, ETS de Ingenier´ıa Inform´atica, 31 de enero-4 de febrero, 2011, 2011. 17. B. Aman and G. Ciobanu, “Modelling and verification of weighted spiking neural systems,” Theoretical Computer Science, vol. 623, pp. 92–102, 2016. 18. M. A. Mart´ınez-del Amor, I. P´erez-Hurtado, M. J. P´erez-Jim´enez, A. Riscos-N´u˜nez, and F. Sancho-Caparrini, “A simulation algorithm for multienvironment probabilistic P systems: A formal verification,” International Journal of Foundations of Computer Science, vol. 22, no. 01, pp. 107–118, 2011. 19. B. Aman and G. Ciobanu, “Verification of membrane systems with delays via Petri nets with delays,” Theoretical Computer Science, vol. 598, pp. 87–101, 2015. 249
Formal Approach to cP System Verification 25 A.5 An example of ProB model checking result Here is an example of ProB model checking result, when n=10 and the answer to the subset sum problem is “no”. Compare to PAT3, less build-in features can be checked in ProB, but LTL/CTL features could be used to describe custom features. 256
Notes on Improved Normal Forms of Spiking Neural P Systems and Variants Ivan Cedric H. Macababayao1, Francis George C. Cabarle1,2,RenTristanA. de la Cruz1, Henry N. Adorna1, Xiangxiang Zeng3 1Algorithms & Complexity Dept. of Computer Science, University of the Philippines Diliman Diliman 1101 Quezon City, Philippines. 2Shenzhen Research Institute of Xiamen University Xiamen University, Shenzhen 518000, Guangdong, China. 3School of Information Science and Engineering Hunan university 410082, Changsha, China. Abstract. Spiking Neural P Systems (SNP) are membrane computing systems that abstracts the function and communications between biological neurons. One variant of SNP, called Spiking Neural P Systems with Structural Plasticity (SNPSP) add the concept of dynamic synapses, that is, dynamic connections between the neurons. For both SNP and SNPSP, synapses (or edges) are used for sending and receiving spikes between neurons, while rules govern the sending of these spikes, and in the case of SNPSP, the creation and/or deletion of synapses. This paper investigates on normal forms for SNP and SNPSP, by adding and modifying restrictions set in both systems. In particular, this paper (1) fixes a programming bug in a previous SNP normal form, (2) reduces the types of regular expressions in both SNP and SNPSP normal forms, and (3) reduces the number of rules per neuron in the SNPSP normal form. Key words: Membrane computing, Spiking neural P systems, Structural plasticity 1 Introduction Membrane computing is a branch of natural computing that is inspired by the massive parallelism of living cells [11,1]. The general goal of membrane computing is to design computing models that abstract concepts from biology – from cells or groups of cells, to more complex organs like the brain. These computing models are called P systems, and have three main types, namely: (1) cell-like P systems, (2) tissue-like P systems, and (3) neural-like P systems. Cell-like P systems take advantage of the hierarchical structure of biological cells, tissue-like P systems take advantage of the way cells communicate and connect to each other (usually represented as nodes in graphs), while neural P systems take advantage corresponding author [email protected] 257
2 I.C.H. Macababayao et al of the structure and functions of brain cells. This paper will focus on a specific kind of neural P system, which is the Spiking Neural P System, and its variant Spiking Neural P Systems with Structural Plasticity. Spiking Neural P Systems (SNP for short) were first introduced in [6]. SNP abstract neurons. Specifically, SNP imitate the communication process between neurons, in which instructions or information are being derived by sending and receiving spikes between each other through the use of synapses.Thispaper will also work with a variant of SNP, which is the Spiking Neural P System with Structural Plasticity (SNPSP, for short), first introduced in [4], which introduces synapse creation and deletion as opposed to static synapses. SNPSP work in almost the same way as SNP, with one notable difference: SNPSP allow synaptogenesis and synapse deletion, which means that neurons are able to create and/or delete synapses by themselves. This added feature opens up a lot of possibilities – most of which are still unexplored. Other variants of SNP with (implied) dynamism for synapses or edges between neurons exist, e.g. the generalised eSNP systems in [2], SNP that can create new neurons in [9], and more recently adding schedules in synapses in [3]. Works on SNPSP, along with [3], are focused in computations that explicitly involve dynamism with synapses. Both SNP and SNPSP systems have been shown to be Turing complete. In addition, there is an active line of research that involves proving that SNP are still complete even with additional restrictions that seek to simplify the system. These are called normal forms. Results with regards to SNP normal forms include [5], [13], and [8]. Examples of restrictions in SNP are not using delays and/or forgetting rules, reducing the number of rules per neuron, and many others. Normal forms are also being investigated with respect to SNPSP, with largely the same goal. Examples of SNPSP normal forms can be found in [12], [7]. This work improves on results presented in [8], as well as answer an open problem formulated there. Specifically, this work investigates on whether the number of regular expressions in an SNP normal form be reduced from three, while keeping the other restrictions in the original normal form (e.g. each neuron can have a maximum of two rules). Note that in [8] the authors state that they believe it is not the case that there is a universal SNP, without forgetting rules and delays, that uses less than three regular expressions. This work also improves on the results in [7] by adding more restrictions and making some of its restrictions even stricter. In particular, we try to limit the SNPSP to only one rule per neuron, and also restrict the number of regular expressions that can be used. This is done without violating the prior restrictions introduced in [7]. The approach to these open problems will be by simulating register machines using SNP and SNPSP systems that follow the restrictions stated above. In particular, we provide modules of SNPSP configurations to simulate the ADD, SUB, and HALT instructions of register machines. In sections 2 we briefly introduce the concepts of SNP and its variant SNPSP. In section 3 we show updates and improvements on the normal forms for both 258
Notes on Improved Normal Forms of SN P Systems and Variants 3 SNP and SNPSP. This section shows the main results in this paper. In section 4 we give the final remarks. 2 SNP and SNPSP 2.1 SNP Spiking neural P systems (SNP) [6] have the following construct: Π=(O,σ1, ..., σm,syn,in,out) where: 1. O={a}is the singleton alphabet, and ais called the spike 2. σ1, ..., σmare neurons of the form σi=(ni,R i)with1≤i≤m,where (a) niindicates the initial number of spikes in σi (b) Riis the finite set of rules of σi, having the form: E/ac→a,whereEis a regular expression over O,c≥1 3. syn ⊆{1, .., m}×{1, .., m}with (i, i)∈ syn for 1 ≤i≤m, is the set of synapses between neurons 4. in, out ∈{1, .., m}indicate the input and output neurons 2.2 SNPSP An SNPSP is a P system with the following construct [4]: Π=(O,σ1, ..., σm,syn,in,out) where: 1. O={a}is the singleton alphabet, and ais called the spike 2. σ1, ..., σmare neurons of the form σi=(ni,R i)with1≤i≤m,where (a) niindicates the initial number of spikes in σi (b) Riis the finite set of rules of σi, and each rule can have either of the following forms: i. Spiking Rule: E/ac→a,whereEis a regular expression over O, c≥1 ii. Plasticity Rule: E/ac→α(β,K,Nj), where Eis a regular expression over O,c≥1, α∈{+,−,±,∓},β∈{a, λ},K≥0, Nj⊆{1, ..., m} 3. syn ⊆{1, .., m}×{1, .., m}with (i, i)∈ syn for 1 ≤i≤m, is the set of synapses between neurons 4. in, out ∈{1, .., m}indicate the input and output neurons For any neuron σi, we denote the set of neurons which has σias their presynaptic neuron as pres(i), so that pres(i)={σj|(i, j)∈syn}. Similarly, we denote the set of neurons which has σias their postsynaptic neuron as pos(i), so that pos(i)={σj|(j, i)∈syn}. 259
4 I.C.H. Macababayao et al Spiking Rules, having the form E/ac→a, are applied as follows: If the neuron σicontains kspikes and ak∈L(E)andk≥c, then the rule E/ac→a is applied. This means that the neuron σifires,consumingcspikes from σisuch that only k−cspikes remain, while also emitting (sending) cspikes to all of σi’s presynaptic neurons. For cases where the rule is E/ac→aand E=ac,then the rules is usually simplified to the form ac→a(For example, a2/a2→ais simplified to a2→a). On the other hand, Plasticity Rules, of the form E/ac→α(β,K,Nj)are applied as follows: If the neuron σicontains kspikes and ak∈L(E)andk≥c, then the rule E/ac→α(β,K,Nj) is applied. The set Njis a collection of neurons that σican either connect to or disconnect from, depending on the configuration of the rule. Like spiking rules, plasticity rules will also consume cspikes such that only k−cspikes remain. At the same time, one of the following cases will apply, depending on the values of α: 1. α=+:neuronσicreates synapses to at most Kneurons from Nj.If|Nj− pres(i)|≤K, deterministically create a synapse to all available neurons in Nj−pres(i). If |Nj−pres(i)|>K, then nondeterministically select K neurons from Nj−pres(i) and create synapses to these selected neurons. 2. α=−:neuronσideletes synapses from at most Kneurons from Nj.If |pres(i)|≤K, deterministically delete synapses from all available neurons in pres(i). If |pres(i)|>K, then nondeterministically select Kneurons from pres(i) and delete the synapses from these selected neurons. 3. α=±:attimet,neuronσifirst attempts to create synapses to at most K neurons from Nj, following the procedure for when α= +. Then, at time t+1,neuronσideletes Ksynapses. 4. α=∓:attimet,neuronσifirst attempts to delete synapses from at most Kneurons from Nj, following the procedure for when α=−. Then, at time t+1,neuronσicreates Ksynapses. Note that for α∈{±,∓}, only the priority between creation or deletion is changed, but the application is similar to α∈{+,−}. Hence, synapses that were created (or deleted) at time twill not necessarily be deleted (or created) at time t+1. The result of a computation is denoted to be the difference between the first two firings of the neuron σout. This difference, t2−t1,issaidtobethenumber that is computed by Π. The set of all numbers computed by Πusing this method is denoted as N2(Π). Whenever a neuron creates a synapse (when α∈{+,±,∓}), an embedded spike is always sent to the receiver of the synapse. This embedded spike is sent at the time the synapse is created. Thus, when a plasticity rule with α∈{+,±,∓} is applied, a destination neuron receives one spike at the step when a synapse is created. Both SNP and SNPSP are largely similar in syntax and function. Notable differences are: (1) SNPSP has the capability to create and delete synapses, and (2) SNPSP does not allow the use of delays and forgetting rules. 260
Notes on Improved Normal Forms of SN P Systems and Variants 5 3 Updates on Normal Forms of SNP and SNPSP An improved normal form for SNP was given in [8], which restricted the SNP to a maximum of two rules per neuron and used at most three regular expressions a(aa)∗,a(aaa)∗,anda2∪a. An improved normal form for SNPSP was given in [7]. This normal form contained the following restrictions: (1) only a∈{±}is used for all plasticity rules, (2) only plasticity rules are used, (3) there are no synapses both in the initial and final configuration of the SNPSP. This normal form used a maximum of three rules per neuron. In this section we do two things. First we update the improved SNP normal form from [8] to fix an interference issue in its SUB module. Next we further improve the SNPSP normal form from [7], by adding the following additional restrictions: (1) all neurons will only have one rule each, and (2) it only uses three types of regular expressions. We construct SNP and SNPSP systems that simulate a register machine. A register machine is a construct M=(m, I, l0,l h,R), where mis the number of registers, Iis the set of instruction labels, l0is the start label, lhis the halt label, and Ris the set of instructions, where every label in Ionly labels one instruction in R. The instructions are ADD,SUB,andHALT,where: 1. li:(ADD(r),l j,l k): the value in register ris increased by 1, then nondeterministically go to either instruction ljor lk 2. li:(SUB(r),l j,l k): if the value in register ris nonzero, then subtract 1 from rand go to instruction lj, otherwise do not modify the value in rthen go to instruction lk 3. lh:HALT: the halt instruction It is possible for ADD and SUB modules to modify the value of the same register. It is also possible for two or more ADD’s or two or more SUB’s to modify the value of a single register. However, note that the neuron 1 was never involved in any SUB module [6]. Hence the register associated with the HALT module will not contain the rule of neuron rfrom the SUB module. 3.1 SNP Improved Normal Form from [8] The results in [8] showed that there exists a normal form for SNP where: 1. there is a maximum of two rules per neuron, and 2. the system only uses at most three kinds of regular expressions in its rules. We will be using these results later in showing a similar normal form for SNPSP. There is, however, an interference issue in the SUB module from [8]. In particular, we look at the case when at least two SUB modules are operating at some point (not necessarily at the same time) on the same register r. Looking at Figure 6 (see appendix) will show the following. Suppose that there are at least two SUB modules that are connected to the neuron r, and that the neuron r 261
6 I.C.H. Macababayao et al initially contains more than two spikes (and hence, the subtraction will succeed). Then assume that the neuron lireceives a single spike at time t. Notice that at time t+ 2, not only will the neuron rsend a spike to the neuron li3belonging to the current SUB module being simulated, but it will also send spikes to all other neurons li3belonging to the other SUB modules that are not being simulated at the moment. This means that at time t+ 5, at least one module will fire ”spontaneously” due to the stray spike. Fig. 1. Theorem 1; SNP: Edited Module SUB simulating li:(SUB(r),l j,l k) We provide a minor fix to this issue. The new SUB module is seen in Figure 1. Notice that: (1) no new regular expressions were added, and that (2) all the neurons introduced contains only a single rule. Thus the restrictions of the normal form from [8] are not violated. Moreover, the regular expression a(aaa)∗from the original configuration is no longer used in this system. And, since this regular expression is also not used in the ADD and FIN (HALT) modules presented in [8] (see Figures 5 and 7 in the appendix for the ADD and FIN(HALT) from [8]), the number of regular expressions used is effectively reduced to 2. These regular expressions are a∪a2and a(aa)∗. 262
Notes on Improved Normal Forms of SN P Systems and Variants 7 Let us denote by N2SNP(rulee k) the families of all sets N2(Π) computed by SNP systems, where each neuron in the system has at most krules, and all rules have at most edistinct regular expressions [8]. Theorem 1. N2SNP(rule2 2)=NRE. Proof. The edited SUB module (Figure 1) runs as follows. Assume that the register ris connected to at least two SUB modules, and that the register r contains more than two spikes. Further assume that the neuron lireceives a single spike at time t.Thenattimet+ 1, the neuron liwill send a spike to the neuron r, as well as to another neuron li1. Following the trail of spikes up until li3will show that the ”correct” li7will receive three spikes (thereby allowing it to fire in the next step), while the li7’s of other SUB modules will only receive two spikes (preventing them from firing in the next step). Also notice that number of spikes in the li7’s of other SUB modules are not offset, since it will stay an even number. In the same way, the neuron li6will also not fire since it will receive exactly two spikes (one from i5and another from li7, both at the same time). Thus only ljwill fire as the next instruction. In the event that the SUB fails (i.e. the neuron rdoes not contain any spikes to subtract from), then the following will happen: At time t+1theneuronli will send a spike to both neurons rand li1. At this point, rwill only have a single spike, and thus will not have enough spikes to consume to be able to fire. The neuron li1will fire as usual. Following the spike from li1, notice that it will ”go through” neurons li2,li5,andli6until finally arriving at lk,fromwhichthe next module starts. Notice also that the neuron li6also sends spikes to li8and li9, which will in turn send one spike each to r. This will cause rto fire and ”flush out” the spikes it received in this SUB module (recall that it originally had none). The spikes from rfired in this way will eventually be swallowed by li7, which will not fire in the next step due to having an even number of spikes. The modules ADD and HALT which are part of the proof remain unchanged from [8], and are shown in the Appendix, Figures 5 and 7. #$ 3.2 An improvement to the SNPSP normal form The improved normal form for SNPSP from [7] used the following restrictions: 1. a∈{±}for all plasticity rules. 2. The set of synapses is empty in the initial configuration and final configuration of the system 3. Spiking rules will not be used in any of the neurons 4. Each neuron can have at most three rules The system shown in [7] used five regular expressions, namely: a,a2,a3, a(a2)+,anda3(a2)+. Thus the SNPSP normal form from [7] showed that: Theorem 2. N2SNPSP({±},rule 5 3, syninit∅, synhalt∅, pplas)=NRE. We aim to further improve this normal form, borrowing techniques used in [8]. We add the following restrictions: 263
8 I.C.H. Macababayao et al 1. Each neuron can have only one rule 2. Only two types of regular expressions can be used in the system Note that the first restriction stated is actually an improvement of an already existing three-rule restriction. Theorem 3. N2SNPSP({±},rule 2 1,syninit ∅, synhalt∅, pplas)=NRE. Proof. To prove Theorem 3, we only need to prove that NRE ⊆N2SNPSP({±}, rule3 1,syninit∅, synhalt∅,pplas), since the other direction of the inclusion is already shown in [10]. Thus, we construct an SNPSP system Πthat simulates a given register machine Mand Πsatisfies the conditions of the theorem. For each register rin M, there is an associated neuron in Π, which is denoted by σr.Thisneuronσrcontains 2nspikes, where nis the value stored in register r. Simulating an instruction li:(OP(r):lj,l k)inMmeans that its equivalent in Π,σlihas one spike and is activated to perform OP ∈{ADD,SUB}and that afterwards it sends one spike to either σljor σlkto begin simulating the next instruction. When Mexecutes lh, which is the HALT instruction, then Πterminates the computation of M.ForΠ, this means that σout fires twice, with the time step difference between the two firings corresponds to the number stored in register 1 in M. Module ADD simulating li:(ADD(r),l j,l k) is shown in Figure 2. Fig. 2. Theorem 3; SNPSP: Module ADD simulating li:(ADD(r),l j,l k) Module ADD works as follows. Assume that at time t,σlihas one spike and no other neuron in the module has any spike, except for the neuron σr which represents the register r.Thenattimet,neuronliapplies its only rule a∪a2→(a, 2,{l1 i,l2 i}), which creates synapses to neurons l1 iand l2 i(and therefore 264
Notes on Improved Normal Forms of SN P Systems and Variants 9 also sends one embedded spike each). At time t+1, neuron lideletes its synapses to l1 iand l2 i.Atthesametime,neuronsl1 iand l2 i, both having one spike, apply their rules. These rules will create synapses to neurons rand l3 i, thus sending two embedded spikes to neurons rand l3 i. At this point, σrnow has 2n+2 spikes. At time t+2,neuronsl1 iand l2 idelete their synapses from rand l3 i.At thesametime,theneuronl3 i, now having 2 spikes, will apply its rule. This will cause neuron l3 ito create a synapse to either ljor lk, with the choice being done nondeterministically. This ends the simulation of module ADD, and at time t+3, either σljor σlkwill begin its instruction. Module SUB simulating li:(SUB(r),l j,l k) is shown in Figure 3. Fig. 3. Theorem 3; SNPSP: Module SUB simulating li:(SUB(r),l j,l k) First, notice that the structure of Figure 3 is very similar to that of Figure 1. They run in the same fashion. The only big differences are that instead of the synapses in Figure 1, the SNPSP version uses plasticity rules in their place, and that the SNPSP version has less neurons to work with. Secondly, note that following the example from [8] and also for the sake of brevity, the regular expression a∪a2is abbreviated to just ain this module. Inspecting Figure 3 will show that all neurons with this type of rule will only ever receive one spike at a time. This abbreviation also applies in the HALT module. Module SUB works as follows. This module will start to work when a single spike is received by the neuron li.Iflireceives the spike at time t,thenatt+1 265
2 L. Casauay et al “Life is computation. Every single living cell reads information from a memory, rewrites it, receives data input (information about the state of its environment), processes the data and acts according to the results of all this computation. Globally, the zillions of cells populating the biosphere certainly perform more computation steps per unit of time than all man made computers put together.” [11] In this study, three branches of natural computing are considered. The first one is neural computing, which is inspired by the way the human brain computes. Neural computing has shown a lot of advances in recent years, specifically with the use of artificial neural networks (ANNs) in the field of artificial intelligence (AI). The application of ANNs has been successful in a wide array of modern-day applications including, but not limited to, the fields of medicine, transportation, robotics, and music. The second relevant branch of natural computing was introduced by Gheorghe P˘aun in [21], and he called this membrane computing. The new computing device P˘aun designed, called Psystem, is based on the notion of a membrane structure. Although membrane computing is a relatively new field of study, it is, nonetheless, very interesting because of its Turing-completeness and inherent parallelism. Within 6 years of its introduction, membrane computing had known applications in computer security, NP-complete optimization problems (and other computationally hard problems), computer graphics, biology, and linguistics as seen in [3]. The last branch we will discuss is evolutionary computing, a research area inspired by the process of natural evolution based on Darwinian principles. The general idea behind evolutionary computing is that given an environment filled with a population of candidate solutions, the quality of these solutions (i.e. how well they can solve the problem) determines the rate in which they will survive within the environment and be kept for constructing further candidate solutions [6]. Combining some of the different branches of natural computing has become a common approach in literature for solving problems. A particularly interesting and popular research direction is the application of evolutionary computing algorithms to neural computing and membrane computing, which resulted in neuroevolution (NE), membrane-inspired evolutionary algorithms (MIEA), and automated design of membrane computing models (ADMCM) [8] [28]. In this study, we investigate the application of one of the main paradigms of evolutionary computing called genetic algorithm (GA) on a recently developed computing model called spiking neural P system, an interplay between the concepts of spiking neural networks and P systems. Ideas from this study were first given in a presentation during BWMC2018 in https://www.gcn.us.es/files/ bwmc2018-evolsnp-present.pdf. 272
A Framework for Evolving SN P Systems 3 2 Preliminaries 2.1 Spiking Neural P Systems In this section, we discuss a relatively new kind of P system called Spiking Neural Psystems,a.k.a. SN P systems, introduced in [15]. Before the introduction of SN P systems, neural-like P systems were introduced in [18]. This kind of P system was inspired by neurobiology and incorporated ideas such as: the replication of impulses in the case of multiple synapses, linking neurons to several neighboring neurons, the state of a neuron, among others. The fact that most neural impulses are almost identical, however, was not incorporated. This is the part where Ionescu et al. [15] took inspiration from spiking neural networks (SNNs), a.k.a. the third generation of neural networks. a→a σ2 a→a σ1 a→a a2→λ a3→a σ5 a→λ a2→a a3→a σ3 a→λ a2→a a3→a σ4 Fig. 1: An example of an SN P system. It simulates the binary addition function. σ1and σ2 are the input neurons, while σ5is the output neuron. See table 1 for a sample run. Ionescu et al. [15] took the fundamental characteristic of SNNs, which is the use of pulse encoding, and described their framework as such: “...in this framework, time is (also) a data support; it is not (only) a computing resource as in usual complexity theory, but a way to encode information”. This means that instead of having the information encoded in a sequence of different symbols, it is encoded in the sequence of moments in which a spike occurs, represented by a unique symbol. Table 1: A sample run of the SN P system presented in figure 1. This system simulates the binary addition function: arepresents 1 and λrepresents 0. The input spike trains in1and in2corre- spond to what is received by the input neurons σ1and σ2, respectively. In this example, in1= 111 and in2= 101, thus the output spike train must be out = 1100. time in1in2σ1σ2σ3σ4σ5out 0aaa aλa ----- λ 1aa aλ a a - - - λλ 2a a a λ a2a2a2λλλ 3 - - a a a2a2a2λλλλ 4 - - - - a3a3a3λλ λλλ 5 - - - - a a a aλλ λλλ 6 - - - - - - - aaλλ λλλ In the same paper, Ionescu et al. showed that SN P systems are Turingcomplete both in accepting and generative mode. In accepting mode (spikes can be received from the environment), deterministic SN P systems are sufficient, while in generative mode (spikes cannot be received from the environment), SN P systems of only one neuron behaving nondeterministically are sufficient. Additionally, non-deterministic systems have been demonstrated to solve NP-complete problems, such as SUBSET SUM and 3SAT, in constant time [17]. This display of computational power makes SN P systems one of the most intriguing and promising types of membrane systems. 273
4 L. Casauay et al Refer to [22] for the formal definition of SN P systems in a general form and in the extended (i.e. the rules are able to produce more than one spike) computing (i.e. the system is able to take an input and provide an output) version. 2.2 Genetic Algorithms Genetic algorithm (GA) was introduced by John Holland in his book called Adaptation and Natural Systems [14]. His work became one of the major foundations of later studies and applications of what we now know as evolutionary computing. Although optimization was not the main focus of Holland’s work on adaptive systems, the work of his graduate students in [5] and [9] explored the application of GA in this area of study, and later served as a strong basis and motivation for future work. To present day, the use of GAs for optimization continues to be popular and is frequently successful in real applications [23]. Define the fitness function; Select GA parameters Generate initial population Decode chromosomes Calculate the fitness of each chromosome Selection Crossover Mutation Check convergence Done Fig. 2: Canonical genetic algorithm flowchart. This is a slightly modified version of the binary genetic algorithm flowchart in [13], wherein we replaced “cost”, “select mates”, and “mating” with “fitness”, “selection, and “crossover”, respectively. In figure 2, we see the process of how a canonical (i.e. binary) genetic algorithm works. We start with designing the GA by defining the fitness function that will guide the selection operator later, as well as selecting the GA parameters. The evolution starts by generating the initial population of binary strings [27], also known as genotypes [14] or chromosomes [24]. For our purposes, we will use the latter terminology. Next,wedecodethechromosomes. In canonical GA where the chromosomes are binary strings and the fitness function, in most cases, computes with continuous (i.e. real-valued) inputs, the chromosomes must be decoded into continuous values for calculating their fitness1[13]. 1Although the terms evaluation and fitness can be used interchangeably in literature, there is still a slight distinction between them as explained in [27]. Evaluation functions compute the output for each chromosome independently from other chromosomes, whereas fitness functions compute the output for each chromosome with respect to the other chromosomes in the current population. This is important to note since an evaluation function is used in this study to implement the design of the genetic algorithm function, which will be discussed in section 5. Moreover, the term “precision” shall be used to denote the output of an evaluation function in succeeding parts of this paper, while we will continue to use the term “fitness” for the output of a fitness function. 274
A Framework for Evolving SN P Systems 5 A fitness function may be a mathematical function, an experiment, or a game. The goal is to find the chromosome representing an appropriate solution in the population to get a desired output from the fitness function. The fitness of a chromosome is calculated by getting the distance between the desired and the actual output value of the fitness function—the smaller this distance is, the fitter the chromosome [13]. Below are some of the ways a fitness function can be defined [27]: 1. In canonical GA, fitness is equal to fi/¯ fwhere fiis the fitness of chromosome iand ¯ fis the average fitness of all the chromosomes in the current population; 2. In [1] and [26], they calculated the fitness based on the rank of a chromosome in the current population, and; 3. In [10], they employed tournament selection as a sampling method. Once the fitness is calculated, the intermediate population is formed through selection. The probability that a chromosome will be copied and placed in the intermediate population is proportional to its fitness. One of the ways selection canbedoneisbyusingremainder stochastic sampling, wherein a chromosome of fitness fi/¯ f=1.48 places 1 copy in the intermediate population and has a 0.48 chance to place a second copy, and a chromosome of fitness fi/¯ f=0.17 will havea0.17chancetoplaceacopy[27]. After the selection, crossover and mutation operators are applied to form the next population. During the execution of the GA, a generation starts from the current population up to when the next population is formed. Crossover is applied to random pairs of chromosomes, which are also referred to as parents. Crossover is regarded as the main feature of GA that distinguishes it from other evolutionary algorithms, as it uses the concept of genetic recombination wherein child chromosomes are formed using a combination of their parents’ traits, represented by segments of bits [20] [23]. These child chromosomes are then placed in the next population. Mutation is done canonically by randomly flipping the bits of a chromosome, thus introducing new genetic material into the population to get out of the local minimum. After fitness calculation, selection, crossover, and mutation are done, we repeat the process of evolution until a predefined condition for convergence is met or the maximum number of generations is reached. 3 Chromosome Representation As mentioned in section 2.2, evolution in genetic algorithms starts by generating an initial population of chromosomes. We use chromosomes to represent a solution, i.e. an SN P system, within a population. An SN P system Πcan be encoded into a chromosome, formally defined below. See [22] for the formal definition of SN P systems which is used throughout this section. 275
6 L. Casauay et al Definition 1 (Chromosome) A chromosome is a construct of the form chrom =(num nrns, spikes, rules, input nrns, output nrns, syn matrix, presicion, fitness, active nrns, connected nrns, connected to input nrns, connected to output nrns), where: 1. num nrns =m+1,wherem is the degree, i.e. number of neurons, of Π. The environment is counted as a neuron in a chromosome, hence we refer to nrnm+1 as the environment neuron; 2. spikes ={n 1,...,n m+1},wheren i≥ 0is the number of initial spikes contained in σi,whereσiis a neuron in Π; 3. rules ={R 1,...,R m+1},whereR iis a finite set of rules contained in σiof the same form as Ri: 4. input nrns ={index1,...,index |in|}, where indexj=iand nrniis an input neuron, i∈in; 5. output nrns ={m+1},where nrnm+1 is the environment neuron; 6. syn matrix ={syn row1,..., syn rowm+1},wheresyn rowi= {syn col1,...,syn colm+1}and syn colj∈{0,1}.syn matrix[i][j]= 0and syn matrix[i][j]=1signify the absence and presence of a synapse from nrnito neuron j, respectively; 7. precision =p,where0≤p≤1; 8. fitness =f,where0≤f≤1; 9. active nrns ={index1,...,index k} with k≥0,whereindexj=iand nrniis an active neuron; 10. connected nrns ={index1,..., indexk},withk≥0,whereindexj=i and nrniis a connected neuron; 11. connected to input nrns ={index1, ...,index k},withk≥0,where indexj=iand there is a path from at least one of the input neurons to nrni; 12. connected to output nrns = {index1,...,index k},withk≥0, where indexj=iand there is a path from nrnito the environment neuron; The concept of active and connected neurons is discussed in section 5.5. Below is the formal definition of the SN P system that simulates the binary addition function in figure 1. Again, this based on the definition from [22]: Πbin add =(O, σ1,σ 2,σ 3,σ 4,σ 5, syn, in, out), where: 1. O={a} 2. σ1=(0,{a→a}) σ2=(0,{a→a}) σ3=(0,{a→λ, a2→a, a3→a}) σ4=(0,{a→λ, a2→a, a3→a}) σ5=(0,{a→a, a2→λ, a3→a}) 3. {(1,3),(1,4),(1,5),(2,3),(2,4), (2,5),(3,4),(4,3),(4,5)} 4. in ={1,2} out ={5} A chromosome is implemented as a Python object with each set implemented as a list. Πbin add can be encoded into a chromosome chrombin add with the following attribute values: 1. num nrns =6 2. spikes =[0,0,0,0,0,0] 3. rules =[ [a→a], [a→a], [a→λ, a2→a, a3→a], [a→λ, a2→a, a3→a], [a→a, a2→λ, a3→a], [] ] 276
A Framework for Evolving SN P Systems 7 4. input nrns =[1,2] 5. output nrns =[6] 6. syn matrix =[ [0,0,1,1,1,0], [0,0,1,1,1,0], [0,0,0,1,0,0], [0,0,1,0,1,0], [0,0,0,0,0,1], [0,0,0,0,0,0], ] 7. precision =1 8. fitness =1 9. active nrns =[1,2,3,4,5,6] 10. connected nrns =[1,2,3,4,5,6] 11. connected to input nrns =[1,2,3,4,5,6] 12. connected to output nrns =[1,2,3,4,5,6] The precision of this SN P system is 100% according to the experiments conducted. Fitness is computed by dividing the precision of a chromosome by the average precision in the population, thus its fitness is also 100% given that it’s the only chromosome in a population. 4 Genetic Algorithm Framework Πinit iter =0 chrominit Genetic Algorithm Function chromfinal chrominit =chromfinal iter =iter +1 chromfinal = chrominit? chromfinal .precision ≥ precision threshold? iter =ρ? Πfinal Legends: Encode SN P Systems from P-Lingua format to chromosomes Transform chromfinal before assigning to chrominit Encode chromosomes to P-Lingua format No Yes No No Yes Yes Fig. 3: Genetic algorithm framework. ρis the maximum number of inner loops performed within an outer loop. This is a parameter set by the user. All chromosomes are implemented as Python objects that have a precision attribute, see section 3. The precision threshold is a parameter set by the user which halts the genetic algorithm framework when it is reached. In this section, we discuss the main output of this study: a genetic algorithm framework that transforms an initial SN P system Πinit, designed to approximate a function f(w,x,y,. ..)=z, into a smaller or more precise system Πfinal that also approximates the output zgiven the same input/s a, b, c, . . .. Figure 3 provides a visual representation of the GA framework. As denoted by the red square, we begin by encoding the initial SN P system that we want to 277
8 L. Casauay et al evolve, called Πinit,fromitsP-Lingua23 format into a chromosome chrominit that can be processed by the framework. After encoding Πinit,thevariableiter is set to zero and chrominit is inputted to the Genetic Algorithm Function.As can be seen in the figure, the GA framework contains two loops: an outer and an inner loop. The outer loop checks whether the chromfinal outputted by the GA function is the same as chrominit or not. If it is not, chromfinal is transformed before being set as chrominit for the next loop. Note that if chromfinal is not the same as chrominit,itissuretobeabetterSNPSystembecauseofhowtheGA function’s Selection operator is implemented. This is discussed in section 5.2. We use outer loops in our implementation of the GA framework for a number of reasons. First, they reduce the supervision needed during execution as evolution continues as long as a better solution, i.e. SN P System, is achieved. They automate the need for a user to execute the framework again using a previous output as input. Second, they act as checkpoints that provide a clear insight on the state of an experiment by giving the user an ability to compare the chromfinal’s of each outer loop. With this, it is possible to see what is removed or added in an SN P System that made it better from its previous form, and by how much it has improved. Last, and most importantly, they allow the transformation of chromfinal’s before setting them as the new chrominit’s to achieve better results in future evolutions. This transformation is denoted by the purple square. In our case, we can delete either inactive or disconnected neurons from the chromfinal’s to prevent them from being reconnected back later on. See sections 5.5, 5.6, and 6.2 for more information. The inner loop is dependent on whether the variable iter has reached its maximum value ρ. The constant ρis a parameter set before executing the framework and signifies the maximum number of evolutions the framework can make within one outer loop. The inner loop is an important and necessary part of the framework as it addresses one of the key characteristics of genetic algorithms. GA is a heuristic that depends on the quality of its initial population of solutions. The probability of converging to a better final solution increases as the quality of the initial population increases. As such, if the GA function has failed to produce a chromfinal better than the current chrominit to start a new outer loop, and chromfinal has not yet reached the precision threshold set by the user, iter is incremented by 1 and the GA function is called once again to pseudo-randomly generate another initial population. Once the framework has reached the maximum number of evolutions ρin one outer loop, the GA framework halts. The current chrominit is encoded into P-Lingua format, as denoted by the blue square. It is then outputted as Πfinal. 2http://www.p-lingua.org/wiki/index.php/Main_Page/ 3P-Lingua is a programming language which aims to be a standard in defining P systems. We use its current latest version: version 4.0. Figure 7 shows the P-Lingua format used for the SN P system in figure 1. 278
A Framework for Evolving SN P Systems 9 5 Genetic Algorithm Function Now that we are done discussing the overall design of the genetic algorithm framework, in this section, we will talk about the design and implementation of the major components of the genetic algorithm function used by the framework. Let us look at figure 4 for the visual representation of the genetic algorithm function. Repeated for many iterations Mutation Simulator Evaluation Function Selection Crossover chrominit chromf inal S S ai Fig. 4: Design of the genetic algorithm function. aiis from S={(a1,b 1), (a2,b 2),...,(ak,b k)},wherek≥1is thenumberoffitnesscases,aiis a set of input spike trains {αi,1,...α i,j}, j=|in|,andbiis the ideal output spike trainwithrespecttoai.Scontains ai and b i, wherein the latter is the set of actual output spike trains. See figure 5 for the SN P System Simulator, denoted by the green square. After receiving chrominit as input, the initial population of chromosomes, chrom pop0={chrom0,1,chrom 0,2,..., chrom0,r}, is formed with the mutations of chrominit. Once the initial population is generated, chrom pop0is sent to the SN P system simulator, along with aifrom S={(a1,b 1),(a2,b 2),...,(ak,b k)},where k≥1 is the number of fitness cases, aiis a set of input spike trains {αi,1,...α i,j}, j=|in|,andbiis the ideal output spike train with respect to ai. The algorithms presented in [2] guided the simulator’s implementation. In figure 5, we see that the SN P simulator first translates each of the chromosomes in chrom pop0into their corresponding P-lingua formats. The SN P systems are simulated in this format to produce S={S 1,S 2,...,S r}, where r=|chrom pop0|,S u={(a1,b 1), (a2,b 2),...,(ak,b k)},andb i,u is the actual output spike train of the mutated chromosome chrom0,u. After the simulation, Sand Sare both sent to the evaluation function to compute the precision of all chrom0,u’s. This is done by comparing the value of each actual output spike train b i,u with its corresponding ideal output spike train bi. Simulate SN P systems Encode chromosomes to P-lingua format chrom popg chrom popg ai S Fig. 5: SN P system simulator. The simulator translates the chromosomes to their P- lingua format, and outputs the same set of chromosomes that were inputted. b i’s which will form the Soutput are generated with the aiinput. chrom popgis the population of chromosomes at generation g. The set containing the precision of each chromosome prec0 is sent to the selection operator, along with chrom pop0. The parent chromosomes are selected for the crossover operator. Chromosomes resulting from the crossover undergo mutation, forming the new population chrom pop1. The cycle of evolution continues until a predefined halting condition is met and the fittest chromosome chromfinal is selected. 279
10 L. Casauay et al 5.1 Mutation In all succeeding generations after the first, each chromosome in the population has a chance to be mutated according to the mutation rate parameter, which is set before the execution of the GA framework. Once a chromosome is tagged for mutation, the function pseudo-randomly chooses between the following methods of mutation4,i.e. all three have equal chances of getting chosen: 1. disc nrn(): This method is used for pseudo-randomly choosing any neuron within a chromosome to be disconnected, aside from input neurons, the environment neuron5, or already disconnected neurons. The chosen neuron is disconnected by first creating synapses from all pre-synaptic neurons of its in-going synapses to all post-synaptic neurons of its outgoing synapses, and then deleting all of its in- and outgoing synapses. 2. del syn(): This method is used for pseudo-randomly choosing a synapse to delete within a chromosome. 3. add syn(): This method is used for pseudo-randomly choosing a synapse to be added, with the condition that the environment neuron cannot be used as a pre-synaptic nor post-synaptic neuron. Note that the environment neuron cannot supply spikes to any other neuron. Previously disconnected neurons may be reconnected using this method. 5.2 Selection In our implementation, the selection operator not only selects the chromosomes that will be placed in the next generations, but also checks for convergence at the end of every generation. The following details its implementation: 1. Check for convergence every generation. At the start of evolution, chrominit is set as chrombest. Evolution is immediately halted at generation gif the population contains a chromosome chromithat fulfills one of the following conditions: (a) chromiis more precise than chrominit,or; (b) chromiis as precise as chrominit and has fewer neurons than chrominit. If such a chromidoes exist, the GA function outputs it as chromfinal. Otherwise, a chromosome chromjis set as the new chrombest if it is as precise as the current chrombest and has fewer neurons or synapses. Upon reaching the maximum number of generations, the GA function outputs chrombest as chromfinal. Note that the GA function only outputs either a better chromosome than chrominit or chrominit itself. 4Pseudo-random selections of one element within a defined set are done using the method randint of a Python library called random 5The environment is counted as a neuron in the chromosome definition of an SN P system. See section 3. 280
A Framework for Evolving SN P Systems 11 2. Select chromosomes for the next generation. If the GA function did not converge nor reach the maximum number of generations, the Selection operator will then rank the population according to their fitness and get a number of highest ranking chromosomes, as in [4]. The amount of chromosomes selected are dependent on the selection rate parameter set by the user. The fitness of a chromosome is calculated by dividing its precision with the average precision in the population. The precision of a chromosome is outputted by the evaluation function. 5.3 Crossover The crossover operator is inspired by the one used in [19]. Crossover is done by pseudo-randomly selecting two chromosomes, chrom1 and chrom2in the population as parents and a neuron nrnicontained by both chromosomes. If the set of post-synaptic neurons connected to the outgoing synapses of chrom1and chrom2are different, these sets are swapped. This is implemented by interchanging the ith row of the corresponding synapse matrices of the chosen pair of chromosomes. If the current population size is less than what is set as parameter6,all of the chromosomes are automatically added to the next population. A pair chromosomes are then pseudo-randomly selected as parents and crossed-over to produce two new chromosomes. This is done until the next population is full. Otherwise, if the current population size is equal to what is required, each chosen pair of chromosome in the population has a chance to be crossed-over depending on the crossover rate parameter. Chromosomes that were not selected for crossover, i.e. not parents, are added to the next population as is. Those that were successfully crossed-over are discarded, and the resulting chromosomes are placed in the next population, instead. In other words, successful parents are never carried over to the next population. 5.4 Evaluation Function The evaluation function used to compute precision of each chromosome is implemented by finding the longest common substring (LCS) between the ideal and actual output spike trains. This is the chosen method to eliminate error in computation that is caused by the unnecessary padding in actual output spike trains. For example, if the ideal output spike train is “101100” and the actual output spike train is “1110110000”, using LCS for the evaluation function gives us a precision of 100% because the latter contains all of 6 characters of the ideal spike train: “1110110000”. Directly comparing the two binary strings would only give us a precision of 1/6=16.67% as their second characters do not match 6This happens when the selection rate is less than 100%, since the Selection operator would only be placing the highest-ranking chromosomes from the last population to the current one. 281
18 L. Casauay et al The results from tables 5 and 6 show that all variants of the GA function were able to significantly improve the average precision and size of the topology for each input Πinit. The summarized results in table 7 show that variant 3 yielded the highest average precision of 89.39876%, with an average of 6.65714 neurons and 11.88571 synapses. It is a close second to variant 2 in terms of topology size, having only a difference of 0.17143 and 0.45714 in average neurons and synapses, respectively. Furthermore, only variant 3 was able to evolve Πinit from the original v1 category of the binary subtraction function to get a 100% precision in its fifth run. Figure 11 provides a visual representation for this SN P system. Given the above information, as well as the fact that variant 3 significantly produced more precise SN P systems compared to variant 2 with a difference of 4.71486% in average precision, the former is considered to produce the best results. Variant 3 allows self-loops during evolution along with variant 4, and these variants produced higher average precision values compared to variant 1 and variants 2, respectively. The former variants were also able to achieve 100% precision for the original category of the binary addition function. In other words they increased the precision with average of 24.86163%, while the latter variants only increased the precision with an average of 0.00526%. These results support the hypothesis that allowing self-loops during evolution can improve precision by allowing the addition of duplicate neurons that may be used to escape a local maximum of the system. Considering that variants 1 and 3 of the GA function are set to delete inactive neurons, the results show that this configuration yielded higher average precision values compared to variants 2 and 4, respectively. This doesn’t support the hypothesis that deleting disconnected neurons instead would result to a higher average precision, as it would prevent the GA framework from deleting possibly important neurons that are inactive but still connected in the Πinit used in the current outer loop. This finding is subject to future experimentation since it is not part of the scope and limitations of this study. The results are inconclusive as to how allowing self-loops during evolution, deleting inactive neurons, or deleting disconnected neurons affect the average size of the resulting topologies. 7 Final Remarks The use of genetic algorithms is an effective way to transform an initial spiking neural P system (SN P system), Πinit. Evolving the topology of Πinit does not only lessen the number of its neurons and synapses, but also helps it achieve a higher precision. The results also show that allowing self-loops helped in evolving the SN P systems, as it acts as a way to add duplicate neurons that might be used by the system to escape one of its local maximum for precision. The algorithm introduced in section 5.7 transformed the SN P systems back to a valid format 288
A Framework for Evolving SN P Systems 19 successfully, i.e. without self-loops, after incurring self-loops during evolution. It was also shown that deleting inactive neurons yielded higher average precision values over deleting disconnected neurons. Out of the four variants of the GA function design, variant 3, which was configured to allow self-loops during evolution and delete inactive neurons, produced the overall best results. The results are inconclusive as to how allowing self-loops during evolution, deleting inactive neurons, or deleting disconnected neurons affect the average size of the resulting topologies. The experiments done in this study were mainly focused on the design of the GA framework and comparing the effects of using different validations. The following are some recommendations for future studies that may be done using the genetic algorithm framework introduced in section 4. 1. Investigate the use of different values for parameters such as the mutation, selection, and crossover rates; 2. Try other ways of implementing the selection operator. Here are a couple of recommended approaches: 1. the Roulette Wheel approach used in [7] and [16], and; 2. remainder stochastic sampling mentioned in section 2.2 [27]; 3. Try other ways of implementing the mutation operator. Weights could be applied such that each of the mutation methods have different chances of being chosen. More mutation operators could also be incorporated, such as one that adds neurons; 4. Try other ways of implementing the crossover operator. An n-point crossover could be applied like 5-point crossover implemented in [7]. It can also be implemented by forming a child chromosome that contains either the intersection or union of the sets of neurons and synapses from its parents [25]; 5. Create a derived GA framework from the one introduced here which does not require an initial SN P System Πinit to produce its initial population; 6. Include the rules in evolving SN P Systems, not just the topology; 7. Test the use of other viable algorithms for the evaluation function; 8. Figure out if and why the GA framework is getting trapped at a local maximum. This can be replicated by running one of its variants and using the binary subtraction function’s Πinit in the original v2 category as input. Use the same fitness cases, as well as the parameter values enumerated in section 6.3; 9. Improve the GA framework by adding the functionality to evaluate Πinit before inputting it to the GA function for evolution. As mentioned in section 5.4, the optimisation of the GA framework by using ageneralized suffix tree to find the longest common substring is left for future work. The study on the correlation between the amount of self-loops within an SN P system and its precision is left for future work, as well. Acknowledgements I.C.H. Macababayao, R.T.A. de la Cruz, F.G.C. Cabarle, and H.N. Adorna acknowledge support by grants from the DOST-ERDT project. F.G.C. Cabarle ac- 289
20 L. Casauay et al knowledges support from the Dean Ruben A. Garcia PCA AY2018–2019, an RLC AY2018–2019 grant, and Project No. 191904 ORG (2019–2020) of the OVCRD in UP Diliman. H.N. Adorna is supported by the Semirara Mining Corp Professorial Chair for Computer Science, and RLC grant from UPD OVCRD. M.A. Mart´ınez-del-Amor acknowledges the support of the research project TIN2017- 89842-P (MABICAP), co-financed by Ministerio de Econom´ıa, Industria y Competitividad (MINECO) of Spain, through the Agencia Estatal de Investigaci´on (AEI),andbyFondo Europeo de Desarrollo Regional (FEDER) of the European Union. The work was supported by the National Natural Science Foundation of China (Grant Nos. 61472333, 61772441, 61472335, 61672033, 61425002, 61872309, 61771331), Project of marine economic innovation and development in Xiamen (No. 16PFW034SF02), Natural Science Foundation of the Higher Education Institutions of Fujian Province (No. JZ160400), Natural Science Foundation of Fujian Province(No. 2017J01099), Basic Research Program of Science and Technology of Shenzhen (JCYJ20180306172637807). 290
Bibliography [1] Baker, J.E.: Adaptive selection methods for genetic algorithms. In: Proceedings of an International Conference on Genetic Algorithms and Their Applications. pp. 101–111. Hillsdale, New Jersey (1985) [2] Carandang, J., Villaflores, J.M.B., Cabarle, F.G.C., Adorna, H.N., Martinez-del Amor, M.A.: Cusnp: Spiking neural p systems simulators in cuda. Romanian Journal of Information Science and Technology 20(1), 57– 70 (2017) [3] Ciobanu, G., P˘aun, G., P´erez-Jim´enez, M.J.: Applications of Membrane Computing, vol. 17. Springer (2006) [4] David, O.E., Greental, I.: Genetic algorithms for evolving deep neural networks. In: Proceedings of the Companion Publication of the 2014 Annual Conference on Genetic and Evolutionary Computation. pp. 1451–1452. ACM (2014) [5] De Jong, K.A.: Analysis of the behavior of a class of genetic adaptive systems. dept. Computer and Communication Sciences, University of Michigan, Ann Arbor (1975) [6] Eiben, A.E., Smith, J.E.: Introduction to Evolutionary Computing, vol. 53. Springer (2003) [7] Eskandari, E., Ahmadi, A., Gomar, S., Ahmadi, M., Saif, M.: Evolving spiking neural networks of artificial creatures using genetic algorithm. In: Neural Networks (IJCNN), 2016 International Joint Conference on. pp. 411– 418. IEEE (2016) [8] Floreano, D., D¨urr, P., Mattiussi, C.: Neuroevolution: From architectures to learning. Evolutionary Intelligence 1(1), 47–62 (2008) [9] Goldberg, D.E.: Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley (1989) [10] Goldberg, D.E.: A note on boltzmann tournament selection for genetic algorithms and population-oriented simulated annealing. Complex Systems 4(4), 445–460 (1990) [11] Groß, M.: Molecular computation. In: Gramß, T., Bornholdt, S., Groß, M., Mitchell, M., Pellizzari, T. (eds.) Non–Standard Computation. Wiley–VCH, Weinheim (1998) [12] Gusfield, D.: Algorithms on Strings, Trees and Sequences: Computer Science and Computational biology. Cambridge University Press (1997) [13] Haupt, R.L., Haupt, S.E.: Practical Genetic Algorithms, vol. 2. Wiley New York (1998) [14] Holland, J.: Adaptation in Natural and Artificial Systems: An Introductory Analysis with Application to Biology. University of Michigan Press (1975) [15] Ionescu, M., P˘aun, G., Yokomori, T.: Spiking neural p systems. Fundamenta Informaticae 71(2, 3), 279–308 (2006) 291
22 L. Casauay et al [16] Khan, Q.S.U., Li, J., Zhao, S.: Training deep autoencoder via vlc-genetic algorithm. In: International Conference on Neural Information Processing. pp. 13–22. Springer (2017) [17] Leporati, A., Zandron, C., Ferretti, C., Mauri, G.: On the computational power of spiking neural p systems. Proceedings of the Fifth Brainstorming Week on Membrane Computing, 227-245. Sevilla, ETS de Ingenier´ıa Inform´atica, 29 de Enero-2 de Febrero, 2007 (2007) [18] Martin-Vide, C., Pazos, J., P˘aun, G., Rodr´ıguez-Pat´on, A.: A new class of symbolic abstract neural nets: Tissue p systems. In: International Computing and Combinatorics Conference. pp. 290–299. Springer (2002) [19] Miller, G.F., Todd, P.M., Hegde, S.U.: Designing neural networks using genetic algorithms. In: ICGA. vol. 89, pp. 379–384 (1989) [20] Mitchell, M.: An Introduction to Genetic Algorithms. MIT Press (1999) [21] P˘aun, G.: Computing with membranes. Journal of Computer and System Sciences 61(1), 108–143 (2000) [22] P˘aun, G.: Spiking neural p systems. a tutorial. Bulletin of the European Association for Theoretical Computer Science (2007) [23] Reeves, C.: Genetic algorithms. In: Handbook of Metaheuristics, pp. 55–82. Springer (2003) [24] Schaffer, J.D.: Some effects of selection procedures on hyperplane sampling by genetic algorithms. Genetic Algorithms and Simulated Annealing pp. 89–103 (1987) [25] Stanley, K.O., Miikkulainen, R.: Evolving neural networks through augmenting topologies. Evolutionary Computation 10(2), 99–127 (2002) [26] Whitely, D.: The genitor algorithm and selective pressure proceedings of the 3rd international conference on genetic algorithms (1989) [27] Whitley, D.: A genetic algorithm tutorial. Statistics and Computing 4(2), 65–85 (1994) [28] Zhang, G., Gheorghe, M., Pan, L., P´erez-Jim´enez, M.J.: Evolutionary membrane computing: A comprehensive survey and new results. Information Sciences 279, 528–551 (2014) Appendix A P-Lingua File Example 292
A Framework for Evolving SN P Systems 23 1: @mu =in1,in2,1,aux1,aux2,out 2: @marcs =(in1,1) 3: @marcs += (in1,aux1) 4: @marcs += (in1,aux2) 5: @marcs += (in2,1) 6: @marcs += (in2,aux1) 7: @marcs += (in2,aux2) 8: @marcs += (aux1,aux2) 9: @marcs += (aux2,aux1) 10: @marcs += (aux2,1) 11: @marcs += (1,out) 12: @min =in1,in2 13: @mout =out 14: [a→a]in1 15: [a→a]in2 16: [a→a]1 17: [a∗2→#]1 18: [a∗3→a]1 19: [a→#]aux1 20: [a∗2→a]aux1 21: [a∗3→a]aux1 22: [a→#]aux2 23: [a∗2→a]aux2 24: [a∗3→a]aux2 bin-add baseline.pli Fig. 7: P-Lingua format used for the SN P system in figure 1. The GA framework only parses the neuron, spike, synapse, and rule declarations in a P-Lingua file and ignores the rest of the lines. Appendix B Evaluation Function Algorithm Algorithm 1 Evaluation function using LCS 1: function GetLCSLength(actual sptr, ideal sptr) 2: LCS ←empty string 3: while len(actual sptr)>len(LCS)do 4: suffix ←actual sptr 5: if len(LCS)>0then 6: prefix ←suffix[0 : len(LCS)] 7: suffix ←suffix[len(LCS): len(suffix)] 8: else 9: prefix ←suffix[0 : 1] 10: suffix ←suffix[1 : len(suffix)] 11: while prefix in ideal sptr and len(suffix)=0do 12: prefix.append(suffix[0]) 13: suffix ←suffix[1 : len(suffix)] 14: if prefix not in ideal sptr then 15: prefix ←prefix[0 : len(prefix)−1] 16: if len(prefix)>len(LCS)then 17: LCS ←prefix 18: actual sptr ←actual sptr[1 : len(actual sptr)] 19: return len(LCS) 20: function GetPrecision(actual sptr, ideal sptr) 21: LCSLength ←GetLCSLength(actual sptr, ideal sptr) 22: precision ←LCSLength/len(ideal sptr) 23: return precision Appendix C Initial SN P Systems 293
24 L. Casauay et al (a) Πinit for the binary addition function: baseline category. (b) Πinit for the binary subtraction function: baseline category. (c) Initial SN P System Πinit for the binary addition function: original category. Fig. 8: Initial SN P systems Πinit’s under the baseline category and the binary addition Πinit under the original category. 294
A Framework for Evolving SN P Systems 25 (a) Πinit for the binary subtraction function: original, version 1 category. (b) Πinit for the binary subtraction function: original, version 2 category. Fig. 9: Two (2) versions of initial SN P systems Πinit’s for binary subtraction under the original category. 295
26 L. Casauay et al (a) Initial SN P System Πinit for the binary addition function: adversarial category. (b) Initial SN P System Πinit for the binary subtraction function: adversarial category. Fig. 10: Initial SN P systems Πinit’s under the adversarial category. 296
A Framework for Evolving SN P Systems 27 Appendix D Final SN P System Example Fig. 11: Final SN P System Πfinal outputted in the fifth run of the GA framework using variant 3 of the GA function. The Πinit for the binary subtraction function in the original v1 category was supplied as input. This has a precision of 100%. Appendix E Experiment Results in Tabular Form Table 5: Binary Addition Results Variant 1 Variant 2 Variant 3 Variant 4 Baseline Ave. Precision 100% 100% 100% 100% Ave. Number of Neurons 5 5 5 5 Ave. Number of Synapses 10 10 10 10 Ave. Number of Outer Loops 1 1 2 2 Ave. Number of Inner Loops 1 1 1 1 Ave. Number of Generations 75 75 38 38 Ave. Runtime (s) 127.3124 133.79615 51.58424 50.17064 Original Ave. Precision 75.13837% 75.1489% 100% 100% Ave. Number of Neurons 5.4 5.4 5 5 Ave. Number of Synapses 9.8 9.6 10 10 Ave. Number of Outer Loops 4.8 5.4 5.6 5.6 Ave. Number of Inner Loops 3.91 3.453333 1.17714 1.19714 Ave. Number of Generations 34.11065 28.31717 25.98381 25.02762 Ave. Runtime (s) 182.77748 260.15345 119.30703 115.56649 Adversarial Ave. Precision 100% 100% 100% 100% Ave. Number of Neurons 5.4 5 5 5 Ave. Number of Synapses 11.6 10 10 10 Ave. Number of Outer Loops 4 4 5 4.4 Ave. Number of Inner Loops 1 1 1 1 Ave. Number of Generations 34.73667 26.71 20.48 20.07 Ave. Runtime (s) 171.00478 139.75218 84.54192 77.45007 297
6C.Moredoetal. Start Create Population X Determine fitness of each individual in the population Good enough individual? End Select parents from the population Breed parents to form offspring Randomly undergo mutation X Yes No Fig. 2: General flowchart of a Genetic Algorithm idea of performance, let there be an input and output pair (x, y). When an RSSNP accepts xand exactly produces y, then it has produced an expected output so it has good performance. If the output is not exactly y, then the RSSNP has a lower performance for each bit that is incorrect. Although RSSNP systems and ANNs are similar as both were inspired by the human brain, no formal study has been conducted to evolve RSSNP systems in a similar fashion to that of neural networks. A possible first step to evolve RSSNP systems is by reducing the resources (neurons and the initial number of spikes in the system, rules and their parameters, synapses). An RSSNP system with fewer resources would most likely result in faster execution time since fewer steps will have to be taken before the system halts. Smaller RSSNP systems also consume less memory space which is another advantage. It might also be possible to find a desired RSSNP system that outputs the expected bitstrings within a larger RSSNP system. In this study, we want to answer the question: 304
A Framework for Evolving RSSNP Systems 7 –How do we reduce a given RSSNP Πinit to an RSSNP with fewer resources Π init,but still consistently produces an expected output? 4 Objectives of the Study The goal of the study is to design a genetic algorithm framework for reducing the number of rules and synapses of a given RSSNP system. More specifically, the main goal is to create a framework wherein given: 1. a finite set of input-output spike train pairs S={(a1,b 1),(a2,b 2),...,(an,b n)} where each set of input spike train ai={αi1,α i2,...,α ij}for j=|in|and αik,b i∈{0,1}+for 1 ≤k≤j, 2. an RSSNP system Πinit =(O,σ1,...,σ m,syn,in,out)thatproducesan output spike train that matches with biwhen fed with aiwith an error rate of . We can obtain Πfinal =(O,σ 1,...,σ m,syn ,in ,out ) with the following characteristics: 1. produces an output spike train that matches with biwhen fed with aiwith an error rate of where ≤. 2. |syn|≤|syn| 3. The total number of rules in Πfinal is less than or equal to the total number of rules in Πinit 4. The maximum number of spikes consumed in any rule in Πfinal is at most the maximum number of spikes consumed in any rule in Πinit 5 Scope and Limitations of the Study The scope of the study will be limited to a specific type of P System called Spiking Neural P Systems with Rules on Synapses, also known as RSSNP, wherein the following restrictions would be used: 1. Deterministic Systems. A synapse in the system should not contain any two rules R1=(E1,c 1,p 1,d 1)andR2=(E2,c 2,p 2,d 2) such that L(E1)∩ L(E2)=∅and R1=R2. It should also not contain any synapses S1= ((i1,j 1),R (i1,j1))withruleR3=(E3,c 3,p 3,d 3)andS2= ((i2,j 2),R (i2,j2)) with rule R3=(E4,c 5,p 5,d 6)wherei1=i2,j1=j2,L(E3)∩L(E4)=∅, and c3=c4. 2. Equal Spike Consumption. The RSSNP we will be dealing with will consume equal amounts of spike when handling rules enabled on different synapses coming from the same neuron. Given E1/ac1→ap1;d1on synapse (i, j)andE2/ac2→ap2;d2on synapse (i, k), assuming σicontains nspikes, where an∈L(E1)∩(E2),p 1≤c1≤n,p2≤c2≤n,d1,d 2≥0, we will only handle cases in which c1=c2. 305
8C.Moredoetal. 3. Constant Neurons. The number of neurons in the system is constant such that no neuron is added or removed in the system while it is undergoing evolution. 4. Synchronous mode. The system operates under a global timer which marks the time for all neurons and synapses. 5. Regular Expression. The regular expression to be used when expressing a rule on a synapse should only be in the form of ai(aj)∗where i≥0, j≥0 and i+j≥0. Rules of other forms will not be accepted. 6. No delays. The rules on the synapses in the system should not contain any delays. Given rules of the form E/ac→ap;din the system, all rules should have d=0. 6 Related Work 6.1 Evolving Neural Networks [6] compares the results of using evolutionary programming to evolve neural networks against using the back-propagation algorithm. In the experiments with evolutionary programming, the networks had a fixed number of neurons and the edges connecting the neurons remained constant, but only evolved the weights of the network. His experiments included evolving multilayer perceptrons to solve the XOR problem and the Gasoline Blending problem. Evolutionary programming ”solved” the XOR problem and Gasoline Blending problem before the 40th and 100th generation respectively, as compared to 240 and 400 to 500 generations (epochs) for back-propagation. [10] suggests that it is possible to apply the genetic algorithm to evolve neural networks. One possible strategy was to apply a genetic algorithm to a fixed network and only evolving the weights as done by [11]. They represented an individual in the population as a vector containing the weights of the network when reading off from left to right and top to bottom. The fitness of an individual was determined by using its chromosomes (or properties) as the weights of the network and taking the sum of the squares of the errors after running the network on a specific training set. The crossover operation was done by selecting incoming links from parents randomly and copying those weights to the offspring. Another way to apply a genetic algorithm to evolve neural networks is done in [9]. A network was encoded as an adjacency matrix and offspring were created by selecting a random row index and swapping the corresponding rows between two parent matrices. This method for genetic algorithm allowed for neural networks with low error rate but its problems in performance are apparent in larger and more complex networks. [8] proposes another method for applying a genetic algorithm to a neural network that does not greatly affect performance for larger networks. The paper uses grammatical encoding wherein a set of rules, called a grammar, is used to generate a network. 306
A Framework for Evolving RSSNP Systems 9 6.2 Matrix Representation of RSSNP Systems [2] presents a matrix representation of SNP systems in order to simulate these systems on graphics processing units (or GPU, for short) and further improved their work in [3] by implementing a computation simulation algorithm for SNP systems on GPUs. [4] proposes an algorithm for simulating RSSNP systems. Their work includes an extension of the matrix representation mentioned previously as well as pseudocodes for simulating the RSSNP continuously during consecutive time steps. The algorithm is also able to handle non-determinism which will be useful for future research on the topic of this study. 7 Algorithm Initial RSSNP Genetic Algorithm Set of input-output pairs (Initial) Population Calculate Fitness Parent Selection Crossover/ Mutation Derived RSSNP Good enough? Not yet Fig. 3: Overview of the Genetic Algorithm Framework The main framework will take an RSSNP system and a set of input-output spike train pairs as input. The genetic algorithm framework will then create an initial population of RSSNP systems that have resources less than or equal to the input RSSNP system as described in Section 7.1. The fitness of each RSSNP system in the population will be calculated by comparing the generated output of each system with the given input-output spike train pairs using the 307
10 C. Moredo et al. methods in Section 7.2. A low error means high fitness. RSSNP systems will then be selected using methods described in Section 7.3 to reproduce. Selected RSSNP systems will be bread to create offspring which will replace the previous generation as stated in Section 7.4. Each offspring will then be mutated with a chance as described in Section 7.5. An overview of the framework is illustrated in Figure 3. 7.1 Initializing Population Given an initial RSSNP Πinit ={O,σ1,σ 2,...,σ m,syn,in,out}and population size popsize, we create popsize individuals by randomizing the resources of Πinit except rules connected to an input neuron or the output neuron. We can do this by applying the mutation function, which consists of the following operations, to Πinit: 1. Delete rule. For every rule in the system, there is a probability that it will be deleted. 2. Change connected synapses. For every synapse in the system, there is a probability that its source or destination neuron will change. 3. Change the regular expression. For every rule in the system, there is a probability that its regular expression will change. 4. Decrease consumed spikes. For every rule in the system, there is a probability that its consumed spikes will decrease. 5. Decrease produced spikes. For every rule in the system, there is a probability that its produced spikes will decrease. 6. Decrease initial number of spikes. For every neuron in the same, there is a probability that its initial number of spikes will decrease. During this step only, each of the aforementioned operations has a 50% chance of being applied to a rule. In other words, the mutation rate is set to 50%. For example, using the RSSNP shown in Figure 4, we can derive the following RSSNPs displayed in Figure 6. In Figure 5a, method (1) is applied and rule a2(a2)∗/a2→aon synapse (6,5) is deleted, while in Figure 5b, due to 2, the rule a3→λ, which used to be on synapse (4,6), is now on synapse (4,7) because the synapse outgoing from σ4to σ6is now going outgoing from σ4to σ6. Applying 3, the regular expression of the rule a2(a2)∗/a2→aon synapse (6,5) in Figure 5c changed from a2(a2)∗to a2(a)∗. Figures 5d and 6a show the same rule a2→a2 on synapse (5,4) being altered by methods (4) and (5), respectively. Method (6) is shown to be applied in Figure 6b where the initial number of spikes in σ3is 0. Given Πinit has rrules, the time complexity of this step is O(r·popsize). The time it takes to mutate Πinit is O(r) because applying each mutation method in 7.1 to a rule only takes O(1), and it is repeated rtimes. Πinit is mutated popsize times to populate the population. 308
A Framework for Evolving RSSNP Systems 11 1 2 3 4 5 6 7 8 - - - - - ? 6 @@@@ @R AAAAU ? a→a a→a a→a a2→λ a→a a→a a→a a2→a2 a3→λ a→a a→a a2→a2 a→a a→a a2(a2)∗/a2→a a→a a→a a2→λ a3 a2 Fig. 4: RSSNP that does not compute anything 7.2 Calculating Fitness Once the population P={Π 1,Π 2,...,Π popsize}is created and given a finite set of input-output spike train pairs S= {(a1,b 1),(a2,b 2),...,(an,b n)}where each ai={αi1,α i2, ...,α ij}for j=|in|and αik,b i∈{0,1}+for 1 ≤k≤j, we feed each aito every individual Π jand produce an output spike train b i, that is, we perform Π j(ai)=b ifor every Π jin P.Once|b i|=3·|bi|1, we stop the computation of Π j(ai). Then, we evaluate each generated output spike train b iproduced by Π j. To do this, we compare b iwith biusing a string matching method fand the score of b iis the ratio of the output of fover the length of bior scorei=f(bi,b i) |bi|. If the computation of Π j(ai) was halted or in other words, b i≥3·|bi|,then scoreiis further halved. For this study, the following methods are selected as f: 1. Longest Common Substring. Returns the length of the longest spike train from b ithat is a sub string of bi. Using this method has the advantage of determining if the RSSNP is able to output the expected bits consecutively. If such RSSNP is found (can consecutively output all of the expected bits), then it will receive 100% fitness rating. Though, this method will generally give a lower fitness than Method (2) due to the problem having more constraints. 2. Longest Common Subsequence. Returns the length of the longest subsequence common to b iand bi. Using this method allows us to see if the RSSNP can produce the expected bits in order, even if not consecutively. 1It is to be noted that the upper bound 3 ·|bi|is used for the system to be given enough time to (1) process the input spike train and (2) release the output spike train. 309
[Document text truncated for crawler view.]