Lecture Notes in Computer Science Commenced Publication in 1973 Founding and Former Series Editors: Gerhard Goos, Juris Hartmanis, and Jan van Leeuwen
Editorial Board David Hutchison Lancaster University, UK Takeo Kanade Carnegie Mellon University, Pittsburgh, PA, USA Josef Kittler University of Surrey, Guildford, UK Jon M. Kleinberg Cornell University, Ithaca, NY, USA Alfred Kobsa University of California, Irvine, CA, USA Friedemann Mattern ETH Zurich, Switzerland John C. Mitchell Stanford University, CA, USA Moni Naor Weizmann Institute of Science, Rehovot, Israel Oscar Nierstrasz University of Bern, Switzerland C. Pandu Rangan Indian Institute of Technology, Madras, India Bernhard Steffen TU Dortmund University, Germany Madhu Sudan Microsoft Research, Cambridge, MA, USA Demetri Terzopoulos University of California, Los Angeles, CA, USA Doug Tygar University of California, Berkeley, CA, USA Gerhard Weikum Max Planck Institute for Informatics, Saarbruecken, Germany
6728
Ying Tan Yuhui Shi Yi Chai Guoyin Wang (Eds.)
Advances in Swarm Intelligence Second International Conference, ICSI 2011 Chongqing, China, June 12-15, 2011 Proceedings, Part I
13
Volume Editors Ying Tan Peking University Key Laboratory of Machine Perception (MOE) Department of Machine Intelligence Beijing, 100871, China E-mail:
[email protected] Yuhui Shi Xi’an Jiaotong-Liverpool University Department of Electrical and Electronic Engineering Suzhou, 215123, China E-mail:
[email protected] Yi Chai Chongqing University Automation College Chongqing 400030, China E-mail:
[email protected] Guoyin Wang Chongqing University of Posts and Telecommunications College of Computer Science and Technology Chongqing, 400065, China E-mail:
[email protected] ISSN 0302-9743 e-ISSN 1611-3349 ISBN 978-3-642-21514-8 e-ISBN 978-3-642-21515-5 DOI 10.1007/978-3-642-21515-5 Springer Heidelberg Dordrecht London New York Library of Congress Control Number: 2011928465 CR Subject Classification (1998): F.1, H.3, I.2, H.4, H.2.8, I.4-5 LNCS Sublibrary: SL 1 – Theoretical Computer Science and General Issues
© Springer-Verlag Berlin Heidelberg 2011 This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting, reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965, in its current version, and permission for use must always be obtained from Springer. Violations are liable to prosecution under the German Copyright Law. The use of general descriptive names, registered names, trademarks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use. Typesetting: Camera-ready by author, data conversion by Scientific Publishing Services, Chennai, India Printed on acid-free paper Springer is part of Springer Science+Business Media (www.springer.com)
Preface
This book and its companion volume, LNCS vols. 6728 and 6729, constitute the proceedings of the Second International Conference on Swarm Intelligence (ICSI 2011) held during June 12–15, 2011 in Chongqing, well known as the Mountain City, the southwestern commercial capital of China. ICSI 2011 was the second gathering in the world for researchers working on all aspects of swarm intelligence, following the successful and fruitful Beijing ICSI event in 2010, which provided a high-level international academic forum for the participants to disseminate their new research findings and discuss emerging areas of research. It also created a stimulating environment for the participants to interact and exchange information on future challenges and opportunities in the field of swarm intelligence research. ICSI 2011 received 298 submissions from about 602 authors in 38 countries and regions (Algeria, American Samoa, Argentina, Australia, Austria, Belize, Bhutan, Brazil, Canada, Chile, China, Germany, Hong Kong, Hungary, India, Islamic Republic of Iran, Japan, Republic of Korea, Kuwait, Macau, Madagascar, Malaysia, Mexico, New Zealand, Pakistan, Romania, Saudi Arabia, Singapore, South Africa, Spain, Sweden, Chinese Taiwan, Thailand, Tunisia, Ukraine, UK, USA, Vietnam) across six continents (Asia, Europe, North America, South America, Africa, and Oceania). Each submission was reviewed by at least 2 reviewers, and on average 2.8 reviewers. Based on rigorous reviews by the Program Committee members and reviewers, 143 high-quality papers were selected for publication in the proceedings with an acceptance rate of 47.9%. The papers are organized in 23 cohesive sections covering all major topics of swarm intelligence research and development. In addition to the contributed papers, the ICSI 2011 technical program included four plenary speeches by Russell C. Eberhart (Indiana University Purdue University Indianapolis (IUPUI), USA), K. C. Tan (National University of Singapore, Singapore, the Editor-in-Chief of IEEE Computational Intelligence Magazine (CIM)), Juan Luis Fernandez Martnez (University of Oviedo, Spain), Fernando Buarque (University of Pernambuco, Brazil). Besides the regular oral sessions, ICSI 2011 had two special sessions on ‘Data Fusion and Swarm Intelligence’ and ‘Fish School Search Foundations and Application’ as well as several poster sessions focusing on wide areas. As organizers of ICSI 2011, we would like to express sincere thanks to Chongqing University, Peking University, Chongqing University of Posts and Telecommunications, and Xi’an Jiaotong-Liverpool University for their sponsorship, to the IEEE Computational Intelligence Society, World Federation on Soft Computing, International Neural Network Society, and Chinese Association for Artificial Intelligence for their technical co-sponsorship. We appreciate the Natural Science Foundation of China for its financial and logistic supports.
VI
Preface
We would also like to thank the members of the Advisory Committee for their guidance, the members of the International Program Committee and additional reviewers for reviewing the papers, and members of the Publications Committee for checking the accepted papers in a short period of time. Particularly, we are grateful to the proceedings publisher Springer for publishing the proceedings in the prestigious series of Lecture Notes in Computer Science. Moreover, we wish to express our heartfelt appreciation to the plenary speakers, session chairs, and student helpers. There are still many more colleagues, associates, friends, and supporters who helped us in immeasurable ways; we express our sincere gratitude to them all. Last but not the least, we would like to thank all the speakers and authors and participants for their great contributions that made ICSI 2011 successful and all the hard work worthwhile. June 2011
Ying Tan Yuhui Shi Yi Chai Guoyin Wang
Organization
General Chairs Russell C. Eberhart Dan Yang Ying Tan
Indiana University - Purdue University, USA Chongqing University, China Peking University, China
Advisory Committee Chairs Xingui He Qidi Wu Gary G. Yen
Peking University, China Tongji University, China Oklahoma State University, USA
Program Committee Chairs Yuhui Shi Guoyin Wang
Xi’an Jiaotong-Liverpool University, China Chongqing University of Posts and Telecommunications, China
Technical Committee Chairs Yi Chai Andries Engelbrecht Nikola Kasabov Kay Chen Tan Peng-yeng Yin Martin Middendorf
Chongqing University, China University of Pretoria, South Africa Auckland University of Technology, New Zealand National University of Singapore, Singapore National Chi Nan University, Taiwan, China University of Leipzig, Germany
Plenary Sessions Chairs Xiaohui Cui James Tin-Yau Kwok
Oak Ridge National Laboratory, USA The Hong Kong University of Science and Technology, China
Special Sessions Chairs Majid Ahmadi Hongwei Mo Yi Zhang
University of Windsor, Canada Harbin Engineering University, China Sichuan University, China
VIII
Organization
Publications Chairs Rajkumar Roy Radu-Emil Precup Yue Sun
Cranfield University, UK Politehnica University of Timisoara, Romania Chongqing University, China
Publicity Chairs Xiaodong Li Haibo He Lei Wang Weiren Shi Jin Wang
RMIT Unversity, Australia University of Rhode Island Kingston, USA Tongji University, China Chongqing University, China Chongqing University of Posts and Telecommunications, China
Finance Chairs Chao Deng Andreas Janecek
Peking University, China University of Vienna, Austria
Local Arrangements Chairs Dihua Sun Qun Liu
Chongqing University, China Chongqing University of Posts and Telecommunications, China
Program Committee Members Payman Arabshahi Carmelo Bastos Christian Blum Leandro Leandro dos Santos Coelho
University of Washington, USA University of Pernambuco, Brazil Universitat Politecnica de Catalunya, Spain
Pontif´ıcia Universidade Cat´ olica do Parana, Brazil Carlos Coello Coello CINVESTAV-IPN, Mexico Oscar Cordon European Centre for Soft Computing, Spain Jose Alfredo Ferreira Costa UFRN Universidade Federal do Rio Grande do Norte, Brazil Iain Couzin Princeton University, USA Xiaohui Cui Oak Ridge National Laboratory, USA Swagatam Das Jadavpur University, India Prithviraj Dasgupta University of Nebraska, USA Kusum Deep Indian Institute of Technology Roorkee, India Mingcong Deng Okayama University, Japan Haibin Duan Beijing University of Aeronautics and Astronautics, China
Organization
Mark Embrechts Andries Engelbrecht Wai-Keung Fung Beatriz Aurora Garro Licon Dunwei Gong Ping Guo Walter Gutjahr Qing-Long Han Haibo He Lu Hongtao Mo Hongwei Zeng-Guang Hou Huosheng Hu Guang-Bin Huang Yuancheng Huang Hisao Ishibuchi Andreas Janecek Zhen Ji Changan Jiang Licheng Jiao Colin Johnson Farrukh Aslam Khan Arun Khosla Franziska Kl¨ ugl James Kwok Xiaodong Li Yangmin Li Fernando Buarque De Lima Neto Guoping Liu Ju Liu Qun Liu Wenlian Lu Juan Luis Fernandez Martinez Wenjian Luo Jinwen Ma Bernd Meyer
IX
RPI, USA University of Pretoria, South Africa University of Manitoba, Canada CIC-IPN, Mexico China University of Mining and Technology, China Beijing Normal University, China University of Vienna, Austria Central Queensland University, Australia University of Rhode Island, USA Shanghai Jiao Tong University, China Harbin Engineering University, China Institute of Automation, Chinese Academy of Sciences, China University of Essex, UK Nanyang Technological University, Singapore Wuhan University, China Osaka Prefecture University, Japan University of Vienna, Austria Shenzhen University, China Kagawa University, Japan Xidian University, China University of Kent, UK FAST-National University of Computer and Emerging Sciences, Pakistan National Institute of Tech. Jalandhar, India ¨ Orebro University, Sweden Hong Kong University of Science and Technology, China RMIT University, Australia University of Macau, China Polytechnic School of Pernambuco, Brazil University of Glamorgan, UK Shandong University, China Chongqing University of Posts and Communications, China Fudan University, China University of Oviedo, Spain University of Science and Technology of China, China Peking University, China Monash University, Australia
X
Organization
Martin Middendorf Mahamed G. H. Omran Jeng-Shyang Pan Pan Shaoning Pang Bijaya Ketan Panigrahi Thomas Potok Radu-Emil Precup Guenter Rudolph Gerald Schaefer Yuhui Shi Michael Small Jim Smith Ponnuthurai Suganthan Norikazu Takahashi Kay-Chen Tan Ying Tan Ke Tang Peter Tino Christos Tjortjis Frans Van Den Bergh Ba-Ngu Vo Bing Wang Guoyin Wang Hongbo Wang Jiahai Wang Jin Wang Lei Wang Ling Wang Lipo Wang Benlian Xu Pingkun Yan Yingjie Yang Hoengpeng Yin Peng-Yeng Yin Dingli Yu Jie Zhang Jun Zhang Lifeng Zhang Qieshi Zhang Qingfu Zhang
University of Leipzig, Germany Gulf University for Science and Technology, Kuwait National Kaohsiung University of Applied Sciences, Taiwan, China Auckland University of Technology, New Zealand IIT Delhi, India ORNL, USA Politehnica University of Timisoara, Romania TU Dortmund University, Germany Loughborough University, UK Xi’an Jiaotong-Liverpool University, China Hong Kong Polytechnic University, China University of the West of England, UK Nanyang Technological University, Singapore Kyushu University, Japan National University of Singapore, Singapore Peking University, China University of Science and Technology of China, China University of Birmingham, UK The University of Manchester, UK CSIR, South Africa The University of Western Australia, Australia University of Hull, UK Chongqing University of Posts and Telecommunications, China Yanshan University, China Sun Yat-sen University, China Chongqing University of Posts and Telecommunications, China Tongji University, China Tsinghua University, China Nanyang Technological University, Singapore Changshu Institute of Technology, China Philips Research North America, USA De Montfort University, UK Chongqing University, China National Chi Nan University, Taiwan, China Liverpool John Moores University, UK Newcastle University, UK Waseda University, Japan Renmin University of China, China Waseda University, Japan University of Essex, UK
Organization
Dongbin Zhao Zhi-Hua Zhou
Institute of Automation, Chinese Academy of Science, China Nanjing University, China
Additional Reviewers Bi, Chongke Cheng, Chi Tai Damas, Sergio Ding, Ke Dong, Yongsheng Duong, Tung Fang, Chonglun Guo, Jun Henmi, Tomohiro Hu, Zhaohui Huang, Sheng-Jun Kalra, Gaurav Lam, Franklin Lau, Meng Cheng Leung, Carson K. Lu, Qiang Nakamura, Yukinori Osunleke, Ajiboye
Qing, Li Quirin, Arnaud Saleem, Muhammad Samad, Rosdiyana Sambo, Francesco Singh, Satvir Sun, Fuming Sun, Yang Tang, Yong Tong, Can V´ azquez, Roberto A. Wang, Hongyan Wang, Lin Yanou, Akira Zhang, Dawei Zhang, X.M. Zhang, Yong Zhu, Yanqiao
XI
Table of Contents – Part I
Theoretical Analysis of Swarm Intelligence Algorithms Particle Swarm Optimization: A Powerful Family of Stochastic Optimizers. Analysis, Design and Application to Inverse Modelling . . . . . Juan Luis Fern´ andez-Mart´ınez, Esperanza Garc´ıa-Gonzalo, Saras Saraswathi, Robert Jernigan, and Andrzej Kloczkowski
1
Building Computational Models of Swarms from Simulated Positional Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Graciano Dieck Kattas and Michael Small
9
Robustness and Stagnation of a Swarm in a Cooperative Object Recognition Task . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . David King and Philip Breedon
19
Enforced Mutation to Enhancing the Capability of Particle Swarm Optimization Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PenChen Chou and JenLian Chen
28
Normalized Population Diversity in Particle Swarm Optimization . . . . . . Shi Cheng and Yuhui Shi
38
Particle Swarm Optimization with Disagreements . . . . . . . . . . . . . . . . . . . . Andrei Lihu and S ¸ tefan Holban
46
PSOslope: A Stand-Alone Windows Application for Graphical Analysis of Slope Stability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Walter Chen and Powen Chen
56
A Review of the Application of Swarm Intelligence Algorithms to 2D Cutting and Packing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Yanxin Xu, Gen Ke Yang, Jie Bai, and Changchun Pan
64
Particle Swarm Optimization Inertia Weight Adaption in Particle Swarm Optimization Algorithm . . . . Zheng Zhou and Yuhui Shi Nonlinear Inertia Weight Variation for Dynamic Adaptation in Particle Swarm Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Wudai Liao, Junyan Wang, and Jiangfeng Wang
71
80
XIV
Table of Contents – Part I
An Adaptive Tribe-Particle Swarm Optimization . . . . . . . . . . . . . . . . . . . . . Yong Duan Song, Lu Zhang, and Peng Han
86
A Novel Hybrid Binary PSO Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Muhammd Ilyas Menhas, MinRui Fei, Ling Wang, and Xiping Fu
93
PSO Algorithm with Chaos and Gene Density Mutation for Solving Nonlinear Zero-One Integer Programming Problems . . . . . . . . . . . . . . . . . . Yuelin Gao, Fanfan Lei, Huirong Li, and Jimin Li A New Binary PSO with Velocity Control . . . . . . . . . . . . . . . . . . . . . . . . . . . Laura Lanzarini, Javier L´ opez, Juan Andr´es Maulini, and Armando De Giusti
101
111
Adaptive Particle Swarm Optimization Algorithm for Dynamic Environments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Iman Rezazadeh, Mohammad Reza Meybodi, and Ahmad Naebi
120
An Improved Particle Swarm Optimization with an Adaptive Updating Mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jie Qi and Yongsheng Ding
130
Mortal Particles: Particle Swarm Optimization with Life Span . . . . . . . . . Yong-wei Zhang, Lei Wang, and Qi-di Wu
138
Applications of PSO Algorithms PSO Based Pseudo Dynamic Method for Automated Test Case Generation Using Interpreter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Surender Singh Dahiya, Jitender Kumar Chhabra, and Shakti Kumar Reactive Power Optimization Based on Particle Swarm Optimization Algorithm in 10kV Distribution Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chao Wang, Gang Yao, Xin Wang, Yihui Zheng, Lidan Zhou, Qingshan Xu, and Xinyuan Liang
147
157
Clustering-Based Particle Swarm Optimization for Electrical Impedance Imaging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gang Hu, Min-you Chen, Wei He, and Jin-qian Zhai
165
A PSO- Based Robust Optimization Approach for Supply Chain Collaboration with Demand Uncertain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Yutian Jia, Xingquan Zuo, and Jianping Wu
172
A Multi-valued Discrete Particle Swarm Optimization for the Evacuation Vehicle Routing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Marina Yusoff, Junaidah Ariffin, and Azlinah Mohamed
182
Table of Contents – Part I
A NichePSO Algorithm Based Method for Process Window Selection . . . Wenqi Li, Yiming Qiu, Lei Wang, and Qidi Wu
XV
194
Efficient WiFi-Based Indoor Localization Using Particle Swarm Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Girma S. Tewolde and Jaerock Kwon
203
Using PSO Algorithm for Simple LSB Substitution Based Steganography Scheme in DCT Transformation Domain . . . . . . . . . . . . . . Feno Heriniaina Rabevohitra and Jun Sang
212
Numerical Integration Method Based on Particle Swarm Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Leila Djerou, Naceur Khelil, and Mohamed Batouche
221
Identification of VSD System Parameters with Particle Swarm Optimization Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Yiming Qiu, Wenqi Li, Dongsheng Yang, Lei Wang, and Qidi Wu
227
PSO-Based Emergency Evacuation Simulation . . . . . . . . . . . . . . . . . . . . . . . Jialiang Kou, Shengwu Xiong, Hongbing Liu, Xinlu Zong, Shuzhen Wan, Yi Liu, Hui Li, and Pengfei Duan
234
Training Spiking Neurons by Means of Particle Swarm Optimization . . . Roberto A. V´ azquez and Beatriz A. Garro
242
Ant Colony Optimization Algorithms Clustering Aggregation for Improving Ant Based Clustering . . . . . . . . . . . Akil Elkamel, Mariem Gzara, and Hanˆene Ben-Abdallah Multi-cellular-ant Algorithm for Large Scale Capacity Vehicle Route Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jie Li, Yi Chai, Penghua Li, and Hongpeng Yin Ant Colony Optimization for Global White Matter Fiber Tracking . . . . . Yuanjing Feng and Zhejin Wang
250
260 267
Bee Colony Algorithms An Efficient Bee Behavior-Based Multi-function Routing Algorithm for Network-on-Chip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Junhui Wang, Huaxi Gu, Yintang Yang, and Zhi Deng
277
Artificial Bee Colony Based Mapping for Application Specific Network-on-Chip Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Zhi Deng, Huaxi Gu, Haizhou Feng, and Baojian Shu
285
XVI
Table of Contents – Part I
Using Artificial Bee Colony to Solve Stochastic Resource Constrained Project Scheduling Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Amin Tahooneh and Koorush Ziarati
293
Novel Swarm-Based Optimization Algorithms Brain Storm Optimization Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Yuhui Shi
303
Human Group Optimizer with Local Search . . . . . . . . . . . . . . . . . . . . . . . . . Chaohua Dai, Weirong Chen, Lili Ran, Yi Zhang, and Yu Du
310
Average-Inertia Weighted Cat Swarm Optimization . . . . . . . . . . . . . . . . . . Maysam Orouskhani, Mohammad Mansouri, and Mohammad Teshnehlab
321
Standby Redundancy Optimization with Type-2 Fuzzy Lifetimes . . . . . . . Yanju Chen and Ying Liu
329
Oriented Search Algorithm for Function Optimization . . . . . . . . . . . . . . . . Xuexia Zhang and Weirong Chen
338
Evolution of Cooperation under Social Norms in Non-Structured Populations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Qi Xiaowei, Ren Guang, Yue Gin, and Zhang Aiping Collaborative Optimization under a Control Framework for ATSP . . . . . . Jie Bai, Jun Zhu, Gen-Ke Yang, and Chang-Chun Pan Bio-Inspired Dynamic Composition and Reconfiguration of Service-Oriented Internetware Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Huan Zhou, Zili Zhang, Yuheng Wu, and Tao Qian A Novel Search Interval Forecasting Optimization Algorithm . . . . . . . . . . Yang Lou, Junli Li, Yuhui Shi, and Linpeng Jin
347 355
364 374
Artificial Immune System A Danger Theory Inspired Learning Model and Its Application to Spam Detection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Yuanchun Zhu and Ying Tan
382
Research of Hybrid Biogeography Based Optimization and Clonal Selection Algorithm for Numerical Optimization . . . . . . . . . . . . . . . . . . . . . Zheng Qu and Hongwei Mo
390
The Hybrid Algorithm of Biogeography Based Optimization and Clone Selection for Sensors Selection of Aircraft . . . . . . . . . . . . . . . . . . . . . . . . . . . Lifang Xu, Shouda Jiang, and Hongwei Mo
400
Table of Contents – Part I
A Modified Artificial Immune Network for Feature Extracting . . . . . . . . . Hong Ge and XueMing Yan
XVII
408
Differential Evolution Novel Binary Encoding Differential Evolution Algorithm . . . . . . . . . . . . . . Changshou Deng, Bingyan Zhao, Yanling Yang, Hu Peng, and Qiming Wei
416
Adaptive Learning Differential Evolution for Numeric Optimization . . . . Yi Liu, Shengwu Xiong, Hui Li, and Shuzhen Wan
424
Differential Evolution with Improved Mutation Strategy . . . . . . . . . . . . . . Shuzhen Wan, Shengwu Xiong, Jialiang Kou, and Yi Liu
431
Gaussian Particle Swarm Optimization with Differential Evolution Mutation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chunqiu Wan, Jun Wang, Geng Yang, and Xing Zhang
439
Neural Networks Evolving Neural Networks: A Comparison between Differential Evolution and Particle Swarm Optimization . . . . . . . . . . . . . . . . . . . . . . . . . Beatriz A. Garro, Humberto Sossa, and Roberto A. V´ azquez
447
Identification of Hindmarsh-Rose Neuron Networks Using GEO metaheuristic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Lihe Wang, Genke Yang, and Lam Fat Yeung
455
Delay-Dependent Stability Criterion for Neural Networks of Neutral-Type with Interval Time-Varying Delays and Nonlinear Perturbations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Guoquan Liu, Simon X. Yang, and Wei Fu Application of Generalized Chebyshev Neural Network in Air Quality Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fengjun Li
464
472
Financial Time Series Forecast Using Neural Network Ensembles . . . . . . . Anupam Tarsauliya, Rahul Kala, Ritu Tiwari, and Anupam Shukla
480
Selection of Software Reliability Model Based on BP Neural Network . . . Yingbo Wu and Xu Wang
489
Genetic Algorithms Atavistic Strategy for Genetic Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dongmei Lin, Xiaodong Li, and Dong Wang
497
XVIII
Table of Contents – Part I
An Improved Co-evolution Genetic Algorithm for Combinatorial Optimization Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Nan Li and Yi Luo
506
Recursive Structure Element Decomposition Using Migration Fitness Scaling Genetic Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Yudong Zhang and Lenan Wu
514
A Shadow Price Guided Genetic Algorithm for Energy Aware Task Scheduling on Cloud Computers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gang Shen and Yan-Qing Zhang
522
A Solution to Bipartite Drawing Problem Using Genetic Algorithm . . . . Salabat Khan, Mohsin Bilal, Muhammad Sharif, and Farrukh Aslam Khan
530
Evolutionary Computation Evaluation of Two-Stage Ensemble Evolutionary Algorithm for Numerical Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Yu Wang, Bin Li, Kaibo Zhang, and Zhen He
539
A Novel Genetic Programming Algorithm For Designing Morphological Image Analysis Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jun Wang and Ying Tan
549
Fuzzy Methods Optimizing Single-Source Capacitated FLP in Fuzzy Decision Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Liwei Zhang, Yankui Liu, and Xiaoqing Wang
559
New Results on a Fuzzy Granular Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . Xu-Qing Tang and Kun Zhang
568
Fuzzy Integral Based Data Fusion for Protein Function Prediction . . . . . Yinan Lu, Yan Zhao, Xiaoni Liu, and Yong Quan
578
Hybrid Algorithms Gene Clustering Using Particle Swarm Optimizer Based Memetic Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Zhen Ji, Wenmin Liu, and Zexuan Zhu Hybrid Particle Swarm Optimization with Biased Mutation Applied to Load Flow Computation in Electrical Power Systems . . . . . . . . . . . . . . . . . Camila Paes Salomon, Maurilio Pereira Coutinho, Germano Lambert-Torres, and Cl´ audio Ferreira
587
595
Table of Contents – Part I
Simulation of Routing in Nano-Manipulation for Creating Pattern with Atomic Force Microscopy Using Hybrid GA and PSO-AS Algorithms . . . Ahmad Naebi, Moharam Habibnejad Korayem, Farhoud Hoseinpour, Sureswaran Ramadass, and Mojtaba Hoseinzadeh Neural Fuzzy Forecasting of the China Yuan to US Dollar Exchange Rate—A Swarm Intelligence Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chunshien Li, Chuan Wei Lin, and Hongming Huang
XIX
606
616
A Hybrid Model for Credit Evaluation Problem . . . . . . . . . . . . . . . . . . . . . . Hui Fu and Xiaoyong Liu
626
Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
635
Table of Contents – Part II
Multi-Objective Optimization Algorithms Multi-Objective Optimization for Dynamic Single-Machine Scheduling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Li Nie, Liang Gao, Peigen Li, and Xiaojuan Wang
1
Research of Pareto-Based Multi-Objective Optimization for Multi-vehicle Assignment Problem Based on MOPSO . . . . . . . . . . . . . . . . . Ai Di-Ming, Zhang Zhe, Zhang Rui, and Pan Feng
10
Correlative Particle Swarm Optimization for Multi-objective Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Yuanxia Shen, Guoyin Wang, and Qun Liu
17
A PSO-Based Hybrid Multi-Objective Algorithm for Multi-Objective Optimization Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Xianpeng Wang and Lixin Tang
26
The Properties of Birandom Multiobjective Programming Problems . . . . Yongguo Zhang, Yayi Xu, Mingfa Zheng, and Liu Ningning
34
A Modified Multi-objective Binary Particle Swarm Optimization Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ling Wang, Wei Ye, Xiping Fu, and Muhammad Ilyas Menhas
41
Improved Multiobjective Particle Swarm Optimization for Environmental/Economic Dispatch Problem in Power System . . . . . . . . . Yali Wu, Liqing Xu, and Jingqian Xue
49
A New Multi-Objective Particle Swarm Optimization Algorithm for Strategic Planning of Equipment Maintenance . . . . . . . . . . . . . . . . . . . . . . . Haifeng Ling, Yujun Zheng, Ziqiu Zhang, and Xianzhong Zhou
57
Multiobjective Optimization for Nurse Scheduling . . . . . . . . . . . . . . . . . . . . Peng-Yeng Yin, Chih-Chiang Chao, and Ya-Tzu Chiang
66
A Multi-objective Binary Harmony Search Algorithm . . . . . . . . . . . . . . . . . Ling Wang, Yunfei Mao, Qun Niu, and Minrui Fei
74
Multi-robot, Swarm-robot, and Multi-agent Systems A Self-organized Approach to Collaborative Handling of Multi-robot Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Tian-yun Huang, Xue-bo Chen, Wang-bao Xu, and Wei Wang
82
XXII
Table of Contents – Part II
An Enhanced Formation of Multi-robot Based on A* Algorithm for Data Relay Transmission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Zhiguang Xu, Kyung-Sik Choi, Yoon-Gu Kim, Jinung An, and Suk-Gyu Lee WPAN Communication Distance Expansion Method Based on Multi-robot Cooperation Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Yoon-Gu Kim, Jinung An, Kyoung-Dong Kim, Zhi-Guang Xu, and Suk-Gyu Lee
91
99
Relative State Modeling Based Distributed Receding Horizon Formation Control of Multiple Robot Systems . . . . . . . . . . . . . . . . . . . . . . . Wang Zheng, He Yuqing, and Han Jianda
108
Simulation and Experiments of the Simultaneous Self-assembly for Modular Swarm Robots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hongxing Wei, Yizhou Huang, Haiyuan Li, and Jindong Tan
118
Impulsive Consensus in Networks of Multi-agent Systems with Any Communication Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Quanjun Wu, Li Xu, Hua Zhang, and Jin Zhou
128
Data Mining Methods FDClust: A New Bio-inspired Divisive Clustering Algorithm . . . . . . . . . . . Besma Khereddine and Mariem Gzara
136
Mining Class Association Rules from Dynamic Class Coupling Data to Measure Class Reusability Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Anshu Parashar and Jitender Kumar Chhabra
146
An Algorithm of Constraint Frequent Neighboring Class Sets Mining Based on Separating Support Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gang Fang, Jiang Xiong, Hong Ying, and Yong-jian Zhao
157
A Multi-period Stochastic Production Planning and Sourcing Problem with Discrete Demand Distribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Weili Chen, Yankui Liu, and Xiaoli Wu
164
Exploration of Rough Sets Analysis in Real-World Examination Timetabling Problem Instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . J. Joshua Thomas, Ahamad Tajudin Khader, Bahari Belaton, and Amy Leow Community Detection in Sample Networks Generated from Gaussian Mixture Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ling Zhao, Tingzhan Liu, and Jian Liu
173
183
Table of Contents – Part II
XXIII
Efficient Reduction of the Number of Associations Rules Using Fuzzy Clustering on the Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Amel Grissa Touzi, Aicha Thabet, and Minyar Sassi
191
A Localization Algorithm in Wireless Sensor Networks Based on PSO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Hui Li, Shengwu Xiong, Yi Liu, Jialiang Kou, and Pengfei Duan
200
Game Theoretic Approach in Routing Protocol for Cooperative Wireless Sensor Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Qun Liu, Xingping Xian, and Tao Wu
207
Machine Learning Methods A New Collaborative Filtering Recommendation Approach Based On Naive Bayesian Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Kebin Wang and Ying Tan
218
Statistical Approach for Calculating the Energy Consumption by Cell Phones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Shanchen Pang and Zhonglei Yu
228
Comparison of Ensemble Classifiers in Extracting Synonymous Chinese Transliteration Pairs from Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chien-Hsing Chen and Chung-Chian Hsu
236
Combining Classifiers by Particle Swarms with Local Search . . . . . . . . . . . Liying Yang
244
An Expert System Based on Analytical Hierarchy Process for Diabetes Risk Assessment (DIABRA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Mohammad Reza Amin-Naseri and Najmeh Neshat
252
Practice of Crowd Evacuating Process Model with Cellular Automata Based on Safety Training . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Shi Xi Tang and Ke Ming Tang
260
Feature Selection Algorithms Feature Selectionfor Unlabeled Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Chien-Hsing Chen Feature Selection Algorithm Based on Least Squares Support Vector Machine and Particle Swarm Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . Song Chuyi, Jiang Jingqing, Wu Chunguo, and Liang Yanchun Unsupervised Local and Global Weighting for Feature Selection . . . . . . . . Nadia Mesghouni, Khaled Ghedira, and Moncef Temani
269
275 283
XXIV
Table of Contents – Part II
Graph-Based Feature Recognition of Line-Like Topographic Map Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rudolf Szendrei, Istv´ an Elek, and M´ aty´ as M´ arton
291
Automatic Recognition of Topographic Map Symbols Based on Their Textures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Rudolf Szendrei, Istv´ an Elek, and Istv´ an Fekete
299
Using Population Based Algorithms for Initializing Nonnegative Matrix Factorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Andreas Janecek and Ying Tan
307
A Kind of Object Level Measuring Method Based on Image Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Xiaoying Wang and Yingge Chen
317
Pattern Recognition Methods Fast Human Detection Using a Cascade of United Hogs . . . . . . . . . . . . . . . Wenhui Li, Yifeng Lin, and Bo Fu The Analysis of Parameters t and k of LPP on Several Famous Face Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sujing Wang, Na Zhang, Mingfang Sun, and Chunguang Zhou
327
333
Local Block Representation for Face Recognition . . . . . . . . . . . . . . . . . . . . . Liyuan Jia, Li Huang, and Lei Li
340
Feature Level Fusion of Fingerprint and Finger Vein Biometrics . . . . . . . . Kunming Lin, Fengling Han, Yongming Yang, and Zulong Zhang
348
A Research of Reduction Algorithm for Support Vector Machine . . . . . . . Susu Liu and Limin Sun
356
Fast Support Vector Regression Based on Cut . . . . . . . . . . . . . . . . . . . . . . . Wenyong Zhou, Yan Xiong, Chang-an Wu, and Hongbing Liu
363
Intelligent Control Using Genetic Algorithm for Parameter Tuning on ILC Controller Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Alireza rezaee and Mohammad jafarpour jalali
371
Controller Design for a Heat Exchanger in Waste Heat Utilizing Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jianhua Zhang, Wenfang Zhang, Ying Li, and Guolian Hou
379
Table of Contents – Part II
XXV
Test Research on Radiated Susceptibility of Automobile Electronic Control System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Shenghui Yang, Xiangkai Liu, Xiaoyun Yang, and Yu Xiao
387
Forgeability Attack of Two DLP-Base Proxy Blind Signature Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jianhong Zhang, Fenhong Guo, Zhibin Sun, and Jilin Wang
395
Other Optimization Algorithms and Applications Key Cutting Algorithm and Its Variants for Unconstrained Optimization Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Uthen Leeton and Thanatchai Kulworawanichpong
403
Transmitter-Receiver Collaborative-Relay Beamforming by Simulated Annealing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Dong Zheng, Ju Liu, Lei Chen, Yuxi Liu, and Weidong Guo
411
Calculation of Quantities of Spare Parts and the Estimation of Availability in the Repaired as Old Models . . . . . . . . . . . . . . . . . . . . . . . . . . Zhe Yin, Feng Lin, Yun-fei Guo, and Mao-sheng Lai
419
The Design of the Algorithm of Creating Sudoku Puzzle . . . . . . . . . . . . . . Jixian Meng and Xinzhong Lu Research and Validation of the Smart Power Two-Way Interactive System Based on Unified Communication Technology . . . . . . . . . . . . . . . . . Jianming Liu, Jiye Wang, Ning Li, and Zhenmin Chen
427
434
A Micro Wireless Video Transmission System . . . . . . . . . . . . . . . . . . . . . . . . Yong-ming Yang, Xue-jun Chen, Wei He, and Yu-xing Mao
441
Inclusion Principle for Dynamic Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Xin-yu Ouyang and Xue-bo Chen
449
Lie Triple Derivations for the Parabolic Subalgebras of gl(n, R) . . . . . . . . Jing Zhao, Hailing Li, and Lijing Fang
457
Non-contact Icing Detection on Helicopter and Experiments Research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jie Zhang, Lingyan Li, Wei Chen, and Hong Zhang
465
Research on Decision-Making Simulation of “Gambler’s Fallacy” and “Hot Hand” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jianbiao Li, Chaoyang Li, Sai Xu, and Xue Ren
474
An Integration Process Model of Enterprise Information System Families Based on System of Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Yingbo Wu, Xu Wang, and Yun Lin
479
XXVI
Table of Contents – Part II
Special Session on Data Fusion and Swarm Intelligence A Linear Multisensor PHD Filter Using the Measurement Dimension Extension Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Weifeng Liu and Chenglin Wen
486
An Improved Particle Swarm Optimization for Uncertain Information Fusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Peiyi Zhu, Benlian Xu, and Baoguo Xu
494
Three-Primary-Color Pheromone for Track Initiation . . . . . . . . . . . . . . . . . Benlian Xu, Qinglan Chen, and Jihong Zhu Visual Tracking of Multiple Targets by Multi-Bernoulli Filtering of Background Subtracted Image Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reza Hoseinnezhad, Ba-Ngu Vo, and Truong Nguyen Vu
502
509
Mobile Robotics in a Random Finite Set Framework . . . . . . . . . . . . . . . . . . John Mullane, Ba-Ngu Vo, Martin Adams, and Ba-Tuong Vo
519
IMM Algorithm for a 3D High Maneuvering Target Tracking . . . . . . . . . . Dong-liang Peng and Yu Gu
529
A New Method Based on Ant Colony Optimization for the Probability Hypothesis Density Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Jihong Zhu, Benlian Xu, Fei Wang, and Qiquan Wang
537
Special Session on Fish School Search - Foundations and Application A Hybrid Algorithm Based on Fish School Search and Particle Swarm Optimization for Dynamic Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . George M. Cavalcanti-J´ unior, Carmelo J.A. Bastos-Filho, Fernando B. Lima-Neto, and Rodrigo M.C.S. Castro Feeding the Fish – Weight Update Strategies for the Fish School Search Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Andreas Janecek and Ying Tan Density as the Segregation Mechanism in Fish School Search for Multimodal Optimization Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Salom˜ ao Sampaio Madeiro, Fernando Buarque de Lima-Neto, Carmelo Jos´e Albanez Bastos-Filho, and Elliackin Messias do Nascimento Figueiredo
543
553
563
Mining Coherent Biclusters with Fish School Search . . . . . . . . . . . . . . . . . . Lara Menezes and Andr´e L.V. Coelho
573
Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
583
Particle Swarm Optimization: A Powerful Family of Stochastic Optimizers. Analysis, Design and Application to Inverse Modelling Juan Luis Fernández-Martínez1 , Esperanza García-Gonzalo1, Saras Saraswathi2, Robert Jernigan2 , and Andrzej Kloczkowski3 2
1 Dept. of Mathematics, Oviedo University, Spain Dept. of Biochemistry, Biophysics & Molecular Biology, Iowa State University, USA 3 Battelle Center for Mathematical Medicine, Ohio State University, USA
Abstract. Inverse problems are ill-posed: the error function has its minimum in a flat elongated valley or surrounded by many local minima. Local optimization methods give unpredictable results if no prior information is available. Traditionally this has generated mistrust for the use of inverse methods. Stochastic approaches to inverse problems consists in shift attention to the probability of existence of certain kinds of models (called equivalent) instead of “looking for the true model”. Also, inverse problems are ill-conditioned and often the observed data are noisy. Global optimization methods have become a good alternative to sample the model space efficiently. These methods are very robust since they solve the inverse problem as a sampling problem, but they are hampered by dimensionality issues and high computational costs needed to solve the forward problem (predictions). In this paper we show how our research over the last three years on particle swarm optimizers can be used to solve and evaluate inverse problems efficiently. Although PSO is a stochastic algorithm, it can be physically interpreted as a stochastic damped mass-spring system. This analogy allowed us to introduce the PSO continuous model, to deduce a whole family of PSO algorithms, and to provide some results of its convergence based on the stochastic stability of the particle trajectories. This makes PSO a particularly interesting algorithm, different from other global algorithms which are purely heuristic. We include the results of an application of our PSO algorithm to the prediction of phosphorylation sites in proteins, an important mechanism for regulation of biological function. Our PSO optimization methods have enabled us to predict phosphorylation sites with higher accuracy and with better generalization, than other reports on similar studies in literature. Our preliminary studies on 984 protein sequences show that our algorithm can predict phosphorylation sites with a training accuracy of 92.5% and a testing accuracy 91.4%, when combined with a neural network based algorithm called Extreme Learning Machine. Keywords: Particle Swarm Analysis, Inverse Problems.
Optimization,
Stochastic
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 1–8, 2011. c Springer-Verlag Berlin Heidelberg 2011
Stability
2
1
J.L. Fernández-Martínez et al.
Global Optimization Methods and Sampling
Most inverse problems can be written in discrete form as d = F (m) where d ∈ Rs is the observed data, m ∈ Rn is the vector containing the model parameters, and F : Rn → Rs is the physical model, that typically involves the solution of a set of partial differential equations, integral equations or algebraic systems. Given a particular observed data set d, the inverse problem is then solved as an optimization problem, that is, finding the model that minimizes the data prediction error expressed as a certain norm d − F (m)p . The above optimization problem turns out to be ill-posed for three reasons: (a) the forward model F is a simplification of reality (hypothesis and numerical approximations included); (b) data are noisy and only partially sample the domain of interest; and (c) most applications of inverse modeling do not include sufficient prior knowledge to constrain the inversion. These three points cause an inverse problem to be quite different from any other kind of optimization problem since both physics and data are involved on the cost function. In addition, the prediction error landscape usually corresponds to functions having the global minimum located in a very flat and elongated valley or surrounded by many local minima, such as the Rosenbrock and Griewank functions. The type of the numerical difficulty found depends mainly on the forward functional F, that is, the problem physics. The effect of data noise is to increase the presence of local minima and/or the size of the valley topography. Combinations of both pathologies can also occur in real problems. Local optimization methods are not able to discriminate among the multiple choices consistent with the end criteria and may land quite unpredictably at any point in that area. These pathologies are treated through regularization techniques and the use of “good” prior information and/or initial guesses. Global optimization methods, such as genetic algorithms, simulated annealing, particle swarm, differential evolution, etc., are especially interesting because instead of solving the inverse problem as an optimization problem, they are able to sample the region of the model space containing the models that fit the observed data within a given tolerance, that is, they are able to provide information about the posterior distribution of the inverse model parameters. To perform this task they do not need in principle any prior model parameters to stabilize the inversion and are able to avoid the strong dependence of the solution upon noisy data. Particle swarm optimization and its variants are interesting global methods since although they have not been designed to perform importance sampling, they are nonetheless able to provide a proxy for the distribution of the model parameters [5,7,8]. Also, PSO has its main advantage in being a very fast sampler and shows a good balance between exploration and convergence depending on the tuning of the PSO parameters.
2
Generalized PSO (GPSO) and PSO Family
The particle swarm algorithm [10] applied to optimization problems is very simple: individuals, or particles, are represented by vectors whose length is the
PSO: Application to Inverse Modelling
3
number of degrees of freedom of the optimization problem. First, a population of particles is initialized with random positions (x0i ) and velocities (vi0 ). An objective function is used to compute the objective value for each particle. As time advances, the position and velocity of each particle is updated taking into account its objective function value and the objective function values of its neighbors. At time-step k + 1, the algorithm updates positions xk+1 and velocities i k+1 vi of the individuals as follows: vik+1 = ωvik + φ1 (gk − xki ) + φ2 (lki − xki ), xk+1 = xki + vik+1 , i with φ1 = r1 ag , φ2 = r2 al , r1 , r2 ∈ U (0, 1) ω, al , ag ∈ R, lki
where is the i−th particle’s best position, gk the global best position within the whole swarm, φ1 , φ2 are the random global and local accelerations, and ω is a real constant called inertia weight. Finally, r1 and r2 are random numbers uniformly distributed in (0, 1) to weight the global and local acceleration constants, ag and al . PSO can be seen as the particular case for Δt = 1 of the generalized PSO (GPSO) algorithm [2]: v(t + Δt) = (1 − (1 − ω) Δt) v (t) + φ1 Δt (g (t) − x (t)) + φ2 Δt (l (t) − x (t)) , x(t + Δt) = x(t) + v(t + Δt)Δt. This algorithm can be written only in terms of position using three points (t+Δt, t and t − Δt) difference equation: x(t + Δt) + Ax(t) + Bx(t − Δt) = (φ1 g(t) + φ2 l(t))Δt2 with
A = Δt(1 − w)Δt − 2 + Δt2 φ
(1)
B = 1 − (1 − w)Δt
This model was derived using a mechanical analogy: a damped mass-spring system with unit mass, damping factor, 1 − ω, and total stiffness constant, φ = φ1 + φ2 , the so-called PSO continuous model: ⎧ ⎨ x (t) + (1 − ω) x (t) + φx(t) = φ1 g (t − t0 ) + φ2 l (t − t0 ) , t ∈ R, x(0) = x0 , ⎩ x (0) = v0 . In this case x(t) stands for the coordinate trajectory of any particle in the swarm. The interaction with other particles in the swarm take place through the local and global attractors, l (t) , g (t). In this model, mean particle trajectories oscillate around the point: o (t) =
ag g (t − t0 ) + al l (t − t0 ) . ag + al
and the attractors might be delayed a time t0 with respect to the particle trajectories [3].
4
J.L. Fernández-Martínez et al.
Beginning with the mechanical analogy and the PSO continuous model, a family of PSO members having different properties with regard to their exploitation/exploration balance are derived. We can have progressive, centered and regressive discretizations for both acceleration and velocity. The result can be a three point difference equation as in PSO (1), CC-PSO, CP-PSO , RR-PSO and PP-PSO [4]; or a four point difference equation as in RC-PSO, RP-PSO, PR-PSO and PC-PSO [4]. The consistency of the different PSO family members has been related to the stability of their first and second order trajectories [3,6]. The type of mean trajectories depends on the character of the eigenvalues of the first order difference equation. Basically there are four kinds of trajectories: damped oscillatory in the complex eigenvalue region, symmetrically and asymmetrically zigzagging in the regions of negative real eigenvalues and nearlymonotonous decreasing character in the region of positive real eigenvalues. Maximum exploration in reached in the complex region. The second order trajectories show a similar kind of behavior. The second order spectral radius controls the rate of attenuation of the second order moments of the particle trajectories (variance and temporal covariance between x(t) and x(t + Δt)) . These results have been confirmed by numerical experiments with different benchmark functions in several dimensions. For GPSO, CC-PSO and CP-PSO the best parameter sets (ω, ag , al ) are located on the first order complex region, close to the upper border of the second order stability region where the attraction from the particle oscillation center is lost, i.e. the variance becomes unbounded; and around the intersection to the median lines of the first stability regions where the temporal covariance between trajectories is close to zero. For PP-PSO, the good parameter sets are in the complex region close to the limit of second order stability and near φ = 0. The good parameters sets are concentrated around the line defined by for RR-PSO the equation φ = 3 ω − 32 , mainly for inertia values greater than two. This line is located in a zone of medium attenuation and high frequency of trajectories.
3
Selection of the PSO Version
PSO can be viewed not as a unique algorithm, but as a set of algorithms that can be used for exploitation (looking for a unique global minimum) and/or exploration (sampling the misfit region in the model space) purposes. The design of the PSO version (explorative or exploitative) depends mainly on two factors: 1. The first factor is the (ω, al , ag ) point that has been selected. The greatest explorative behavior is achieved when (ω, al , ag ) is close to or even below the second-order upper limit stability. Also, for same total mean acceleration φ = (ag +al )/2, choosing al > ag causes the algorithm to be more explorative. 2. The second factor is the t parameter, which is a numerical constriction factor to achieve stability. It is possible to show analytically that the first and second order stability regions increase their sizes and tendtowards the stability region of the PSO continuous model, ω < 1, φ > 0 , when t goes to zero. In this case the exploration is increased around the global best
PSO: Application to Inverse Modelling
5
solution. Conversely, when t is greater than one, the first and second order stability regions shrink in size and the exploration is increased over the whole search space. This feature may help to avoid entrapment in local minima. Particle swarm optimization and its variants are able to approximate the posterior distribution of the model parameters faster than Markov Chain Monte Carlo methods. To correctly perform this task a good balance between exploration and exploitation is needed, and the CP-PSO version seems to be a good option [5]. Conversely when only a good model (the candidate for a global minimum) is needed and no uncertainty analysis is performed, the RR-PSO and GPSO versions have better convergence rates to locate such a solution. Also, for example the RC-GPSO version has worse convergence for some functions but shows the best results for the Rastrigin function, thus it can be an interesting option to try instead of PSO in case of multimodal error landscapes. These facts can be taken into account to select the most appropriate PSO version when facing real problems.
4
How to Input Prior Information
It is well established in optimization theory that different norms and penalties defined in the cost function lead to different kinds of solutions with different regularity. For instance, the l1 -norm allows searching for sparse and “blocky” solutions. Conversely, soft solutions can be found using the l2 -norm, introducing as a penalty for some regularity requirements in the model. In the PSO case, soft solutions are found in a simple way by smoothing the global best, providing to the algorithm an attractor with the prescribed smoothness [7]. Reference models can be input very easily into the PSO algorithms in at least three different ways. One way is as a particle that is introduced occasionally into the swarm. If the reference model is compatible with the data, the reference model might influence the oscillation center. A second way is through the misfit functional, including a regularization term: c (m) = w1 d − F (m) + w2 m − (mref )p , where w1 and w2 are real weights. Finally, the model can be introduced as an attractor into the force team: v(t + t) = (1 − (1 − ω) Δt) v (t) + φ1 t (g (t) − x (t)) +φ2 t (l (t) − x (t)) + φ3 t (mref − x (t)) , x (t + t) = x (t) + t v (t + t) . φ3 t (mref − x (t)) might also replace the global best attractor φ1t (g (t) − x (t)) and the end of the algorithm execution. In all cases, the reference model mref has the same dimensions as the other particles in the swarm.
6
5
J.L. Fernández-Martínez et al.
Phosphorylation Site Prediction Using PSO
Phosphorylation is a post-translational modification added to proteins to control and regulate their activities. It is an important mechanism for regulation of biological functions. Phosphorylated sites are known to be present often in intrinsically disordered regions of proteins that lack unique tertiary structures, and thus have less information available about the structures of the phosphorylated sites. It is not always possible to detect these sites experimentally. It will be useful to have computational methods to efficiently predict these sites. It is an important challenge to predict phosphorylation sites in protein sequences obtained from high-throughput sequencing of genomes. Phosphorylation sites may aid in the determination of the functions of a protein or even differentiating mechanisms of protein functions in healthy and diseased states. Our PSO algorithm is combined with neural networks to model and predict experimentally determined phosphorylation sites in protein sequences. 5.1
Methods and Data Generation
A neural network-based Extreme Learning Machine (ELM) is used for for predicting phosphorylation sites. The parameters of the ELM are tuned by our PSO algorithm. Extreme Learning Machine: ELM is a modified version of Single Layer Feedforward Network (SLFN) where the input weights are chosen randomly and the output weights are calculated analytically. Activation functions such as sigmoidal and Gaussian functions can be used for the hidden neuron layer, while a linear activation function is used for the output neurons. ELM is a fast and simple algorithm compared to traditional Neural Networks and is capable of finding the best results using smaller resources. If the parameters of SLFN (input weights and the bias of the hidden layer) are randomly chosen, SLFNs become a linear system in which the output weights can be determined analytically through a Moore-Penrose generalized pseudo-inverse operation of the hidden layer output matrices. This improved algorithm is called the Extreme Learning Machine. A comprehensive overview of ELM was given by Huang et al., in [9,11]. The parameters of ELM are optimized using our PSO algorithm. Data generation for phosphorylation prediction: 13604 sequences were obtained from the Phospho. ELM database [1], where experimental phosphorylation data found in the literature has been stored for public use. In these sequences, a single residue is marked as a phosphorylated residue while all others are unphosphorylated. If there are multiple phosphorylation sites, then they are given as two separate sequences. The phosphorylated sites are usually one of three residues, namely, serine, threonine or tyrosine, but for our preliminary study we are considering only two classes where a residue is either phosphorylated or not, i.e., we do not consider the actual type of residue that is phosphorylated. The sequences in the data are coded using a twenty digit binary code with the letter of interest being a 1 and the remaining letters denoted as a zero. A sliding
PSO: Application to Inverse Modelling
7
window of 9 residues are used to represent the data. This data is then used for determining whether a residue is phosphorylated or not. Since only one residue in each sequence is marked as phosphorylated, there were 13604 residues with positive class for phosphorylation but many more residues which were in the negative class for unphosphorylated residues. To maintain a balance, the same number of residues were selected from each group for the classification using ELM and PSO. 5.2
Results and Discussion
1968 residues are used for each classification of which 984 residues are phosphorylated and 984 are not phosphorylated. Similarly, the test set also has 985 residues in each class. Our PSO optimization methods have enabled us to predict phosphorylation sites with a training accuracy of 92.5%, a testing accuracy 91.4% and Mathews correlation coefficient of 0.84. In the testing results, the sensitivity for class-1 (non-phosphorylated) is 85.6% and specificity is 99.5% , with accuracy of 99.6%. For class-2 (phosphorylated) residues, sensitivity is 85.6% and specificity is 85.6% , but the accuracy was lower at 83.3%. So, the results for the negative class are higher than the results for the positive class (phosphorylated), although there were the same numbers of each class in our trials.
6
Conclusions
Particle swarm optimization (PSO) is an evolutionary computational technique used for optimization motivated by the social behavior of individuals in large groups in nature. Different approaches have been used to understand how this algorithm works and trying to improve its convergence properties for different kind of problems. These approaches go from heuristic to mathematical analysis, passing through numerical experimentation. Although the scientific community has been able to solve a wide variety of engineering problems, the tuning of the PSO parameters has still remained one of its major drawbacks. By avoiding heuristics, it can be proved that PSO can be physically interpreted as a particular discretization of a stochastic damped mass-spring system. Knowledge of this analogy has been crucial in deriving the PSO continuous model and to deduce a family of PSO members having different properties with regard to their exploitation/exploration balance. Their convergence is related to their first and second order stability regions. Numerical experiments with different benchmark functions have shown that better performing points are close to the upper limit of second order stability. In the context of inverse problems, we address the question of how to select the appropriate PSO version: the CP-PSO is intrinsically the most exploratory version and should be selected when we want to perform sampling of the posterior distribution of the inverse model parameters. Conversely, RR-PSO, CC-PSO and GPSO provide faster convergence . Four point algorithms seem also to be very promising. Finally we show the application of PSO to optimize the parameters of a neural network (ELM) to classify phosphorylated and non-phosphorylated data with quite high accuracy. We believe that our algorithm will have many applications in biological studies.
8
J.L. Fernández-Martínez et al.
References 1. Dinkel, H., Chica, C., Via, A., Gould, C.M., Jensen, L.J., Gibson, T.J., Diella, F.: Phospho.ELM: a database of phosphorylation sites-update 2011. Nucleic Acids Res. 39, DZ61–DZ67 (2011) 2. Fernández-Martínez, J.L., García-Gonzalo, E.: The generalized PSO: a new door to PSO evolution. J. of Artif. Evol. and Appl. 2008, Article ID 861275, 15 (2008) 3. Fernández-Martínez, J.L., García-Gonzalo, E.: The PSO family: deduction, stochastic analysis and comparison. Swarm Int. 3, 245–273 (2009) 4. Fernández-Martínez, J.L., García-Gonzalo, E.: Two algorithms of the extended PSO family. In: International Conference on Evolutionary Computation, ICEC 2010, Valencia, Spain, pp. 237–242 (October 2010) 5. Fernández-Martínez, J.L., García-Gonzalo, E., Fernández-Álvarez, J.P., Kuzma, H.A., Menéndez-Pérez, C.O.: PSO: A powerful algorithm to solve geophysical inverse problems. Applications to a 1D-Dc resistivity case. J. of Appl. Geophys. 71(1), 13–25 (2010) 6. Fernández-Martínez, J.L., García-Gonzalo, E., Fernández-Álvarez, J.: Theoretical analysis of particle swarm trajectories through a mechanical analogy. Int. J. of Comp. Int. Res. 4, 93–104 (2008) 7. Fernández-Martínez, J.L., García-Gonzalo, E., Naudet, V.: Particle swarm optimization applied to the solving and appraisal of the streaming potential inverse problem. Geophys. 75(4), WA3–WA15 (2010) 8. Fernández-Martínez, J.L., Mukerji, T., García-Gonzalo, E., Suman, A.: Reservoir characterization and inversion uncertainty via a family of particle swarm optimizers. SEG Technical Program Expanded Abstracts 29(1), 2334–2339 (2010) 9. Huang, G.B., Zhu, Q.Y., Siew, C.K.: Extreme learning machine: Theory and applications. Neurocomputing 70, 489–501 (2006) 10. Kennedy, J., Eberhart, R.: Particle swarm optimization. In: Proceedings IEEE International Conference on Neural Networks, Perth, WA, Australia, vol. 4, pp. 1942–1948 (1995) 11. Saraswathi, S., Suresh, S., Sundararajan, N.: ICGA-PSO-ELM approach for accurate multiclass cancer classification resulting in reduced gene sets in which genes encoding secreted proteins are highly represented. IEEE/ACM Trans. on Comp. Biol. and Bioinforma. 8, 452–463 (2011)
Building Computational Models of Swarms from Simulated Positional Data Graciano Dieck Kattas and Michael Small Department of Electronic and Information Engineering The Hong Kong Polytechnic University
[email protected],
[email protected]
Abstract. A computational method that automatically builds dynamical models of swarming systems from positional data is introduced. As an initial test for the approach, the classical Vicsek model is used to make samples for the computer algorithm and retrieve a model. Time dependent separation measures are introduced in order to characterize the dynamics of a system and then compare the behaviors of the source and retrieved model. Cases of low and high density interactions are considered to verify the generality of the models. The results show the retrieved models are capable of emulating the collective behavior well, especially when the interaction structure resembles the one of the source model. Keywords: mathematical modeling, swarming, computer simulations, system identification.
1
Introduction
A new area of scientific research emerging is the study of the collective behavior exhibited by a group of interacting individuals, referred as swarming when applied to animal movement. The ability to obtain accurate positional data of birds from GPS and cameras has opened the door to more advanced analyses of bird flocking [1, 2]. Most approaches of mathematically modeling collective behavior using dynamical systems have involved building a model using physical laws to generate data that resembles the phenomena in question. The opposite approach is to use positional time series data from measurements to build a model that fits it as best as possible, especially using computers to automate the process. This methodology, sometimes referred as system identification, is extensively used in other areas, especially control theory and econometrics. Due to the complexity observed in collective behavior, we suggest taking this automated approach, and take advantage of computing power to automatically build nonlinear dynamical models based on the real system. In this paper, we shall consider the basic task of building models from simulated noisy data, which can be considered an initial step towards the automated modeling of real collective systems from experimental data. Mathematical models, in particular dynamical models, have been used by biologists, physicists, and mathematicians, to illustrate animal movement or Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 9–18, 2011. c Springer-Verlag Berlin Heidelberg 2011
10
G. Dieck Kattas and M. Small
interaction. Early efforts involved models with physical laws and diffusion equations [5]. Discrete time generic models of collective systems, can be used to simulate swarming with complex behavior using simple mathematical rules [3, 4]. The automatic modeling of dynamical systems has been applied in many fields. Some new techniques use data from real systems to identify nonlinear ODE models [7, 8, 9], while others focus on inferring the natural laws of physical systems [6]. Other approaches have considered generic discrete-time nonlinear models to characterize chaotic dynamics [10, 11, 12].
2
Target System: The Vicsek Model
The Vicsek model [3], is probably the simplest nonlinear model capable of exhibiting several behaviors common to swarming. The model consists of a discrete time system composed initially of several particles in a square of linear size L, each with 2D positions that are updated according to: xi (t + 1) = xi (t) + vi (t)
(1)
The velocities consist of a constant magnitude v and its direction defined by an angle θ: cos(θi (t + 1)) vi (t + 1) = v (2) sin(θi (t + 1)) The directions of the particles are updated by averaging the components of their nearest neighbors: θi (t + 1) = arctan
sin(θi (t))r + Δθ cos(θi (t))r
(3)
In equation 3, .r denotes average of all particles within a fixed radius r of particle i (including itself) and Δθ is a uniformly distributed random number in the interval [−η/2, η/2], symbolizing the noise of the system. The original model uses periodic boundary conditions but in order to have more realistic data, for our simulations the boundaries of the square cell were removed so that the full data can be continuous. From the different initial conditions shown in [3], we are interested in the cases of high and low density (with low noise) since they show behaviors analogous to swarming, in small and large groups respectively.
3
Radial Basis Models
It is important to clarify that any effective nonlinear modeling method such as [7, 8, 9] could be used to fit the Vicsek data to a dynamical model. We selected the discrete-time radial basis approach originally presented in [10, 11, 12] as the tool to build our models due to its proven capability of modeling a wide variety of nonlinear and chaotic behavior.
Building Computational Models of Swarms from Simulated Positional Data
3.1
11
General Form
From an input scalar time series y(t), the method essentially consists in building the best model of the form: y(t + 1) = f (z(t)) + (t)
(4)
where z(t) = [y(t), y(t− 1), ..., y(t− d)] is the embedding of the system and (t) is the model prediction error. The former can be easily interpreted as the past values from the time series data y(t) that the model will consider for calculating the prediction for t+1. The samples used for optimization of the model are built from time series y(t) using the embedding z(t). The function form essentially consists of a linear term equivalent to commonly used autoregressive models (AR), and a nonlinear term consisting of a sum of nonlinear radial basis functions. Both the structure of the function and the algorithm that builds and optimizes the model, are described in detail in [10, 11]. All this optimization is done by minimizing the Minimum Description Length (MDL) [13] to prevent overfitting of the data. 3.2
Modeling and Embedding for Swarming
For the particular case of swarm modeling, we want to use the same model for each particle just like in the Vicsek model. Since we are working with positions in 2D space, the position of a particle depends on two components, which means we require two different functions for a single model. Therefore the single model that all particles follow can be defined as: f1 (z(t)) f[z(t)] = (5) f2 (z(t)) To simplify the model, instead of trying to predict the absolute position xi at t + 1, we can substitute equation 4 by predicting the relative change in position Δxi (t + 1) = xi (t + 1) − xi (t). Δxi (t + 1) = f[zi (t)] + ei (t)
(6)
where e(t) is an array with the model prediction errors for each coordinate. The embedding z(t) of a particle i should consider enough information from the nearest neighbors, since they have a direct influence in its motion. To define our embedding zi (t), we can consider the average change in position Δxi (t) of i and its neighbors, since it gives enough information about the magnitude and direction of velocity vi (t), which actually is enough to model the Vicsek data (see equations 1-3). Using an embedding which considers neighbor data instead of values of past time intervals (as in equation 4) does not affect the computer algorithm, since what it does is fit output samples to their respective instances of the embedding vector (inputs to the function). With all this in mind, the embedding is different for each particle, since each has different nearest neighbors:
12
G. Dieck Kattas and M. Small
zi (t) = Δxi (t)M,i
(7)
Of importance here, is that the neighborhood of the average in equation 8 (M ) has been modified from the one in equation 3 (r ). This topological average denotes averaging over particle i and a fixed number of M nearest neighbors. This significant difference in the collective interaction has been studied recently [2], and it will be considered for our models in order to provide a scenario where the structure of the source system is unknown, and it is hypothesized to use topological interaction. Practically speaking, this is not a far fetched assumption, since from several simulations of the low and high density cases (with low noise) of the Vicsek model, we have verified that the steady state number of neighbors of particles is loosely constant, especially for the low density case.
4
Measuring Swarms
When considering models for swarming, it is useful to have a measure that can characterize and illustrate the dynamical system behavior. Traditional approaches [5] have used velocity correlation functions to calculate the variance of each individual from the centroid of the population, which should be constant for a steady state swarm. In order to have a generic measure to characterize the model data, we define the average separation of individuals from the mean position of the whole population (N ) at a time interval t as: δg (t) =
N 1 xi (t) − x(t)N N
(8)
i=1
It could also important to measure the average separation in local neighborhoods instead of the whole population. This could be particularly useful in cases where swarming occurs in small groups. A slight modification to equation 9 gives us the average separation of individuals from the centroid of their local neighborhood of neighbors: δl (t) =
N 1 xi (t) − xi (t)M,i N
(9)
i=1
For some cases, a qualitative comparison between the δ’s of source and model data could be more significant than a quantitative verification (e.g. shape of curves against absolute error) for emulation of collective behavior. They can also be used to observe transient and steady state properties of the system, in a way that is reminiscent of analyses commonly done in control theory.
5
Methodology
The process followed to generate a model will now be described. A single simulation of the low density with low noise case of the Vicsek model (L = 25, η = 0.1,
Building Computational Models of Swarms from Simulated Positional Data
13
see [3]) is used to generate the input data x(t), which is a time series matrix containing the positions of both coordinates for each particle at each time interval. The method follows: Do for each positional coordinate j (2 in total): (j)
1. Build samples for the function fj using as output Δxi (t + 1) with embeddings (equation 8) from all particles i 2. Run the modeling algorithm 3. Set the retrieved model as fj Due to the randomness involved in the radial basis functions used to build the model [10, 11], it is perhaps appropriate to run the algorithm several times to retrieve several models and keep the best one. To discriminate between these retrieved models, we decided to give preference to the global behavior for this model selection, and thus we average δg over K simulations each with T time intervals: δ g = δg (t)K,T . Using this measure, the model with least absolute (data)
error |δ g
6
(model)
− δg
| is selected as the best model.
Results
After obtaining the best model following the procedure from the previous section, a set of ten simulations of both the Vicsek and the retrieved model using low density initial conditions, were used to average and calculate the δg (t) and δl (t) statistics. The number of nearest neighbors (M ) considered in the retrieved model structure and for calculating δl (t) was selected by averaging a rough steady state number of neighbors from Vicsek simulations, and found to be M ≈ 4. After that, the whole verification process was repeated for ten high density with low noise simulations (L = 5, η = 0.1, see [3]) and M = 30. This verification of using high density data for a model built from low density data was considered as extrapolation to check the generality of the model. 6.1
Case 1: Regular Vicsek Model
Figure 1(a) shows that the global separation is followed very well by the model, with a sharp increase that symbolizes movement away from the centroid. The local separation measure in figure 1(b) illustrates a convergence of individuals which later settles into a steady state. For the simulations of the source Vicsek model, a pseudo-steady state is observed with the slight increase coming at t > 250. In Figure 2, we can see snapshots of a simulation of both the source and the retrieved model. It shows that in the Vicsek simulation there are a few stranded particles moving away in groups of less than five, and this is why its δl measure in figure 1(b), which considers neighborhoods of five, has the slight increase at t = 250 but no such effect on the retrieved model. This can be reasoned with the fact that in the Vicsek model, the radius nearest neighbor interaction causes far away particles
14
G. Dieck Kattas and M. Small
Fig. 1. Global (a) and local (b) separation measures for the low density case of the Vicsek model
Fig. 2. Simulation snapshots of the Vicsek model and the retrieved model, for a low density case with the same initial conditions
to stay isolated, at a contrast with the structure of the retrieved model. Nevertheless, the global behavior of several groups of particles moving away in random directions, is clearly emulated by the model. When testing the extrapolating simulations of high density initial conditions, Figure 3(a) shows how the global separation has a notable deviation. As can be observed in figure 3(b), again the local interactions settle into a steady state, with a very slight increase in the Vicsek model caused by the noise, while the retrieved model is stable. Figure 4 shows a simulation where the global deviation can be seen: the source data divides into two major swarms with a few stranded particles in the middle, while the model performs a globally stable unified movement of the whole population. This has to do with the fact that the steady state neighbors of the Vicsek model in the high density case is less constant, which can be reasoned from the fact that a higher concentration of particles within a noisy environment obviously cause more variation within a radius of interaction.
Building Computational Models of Swarms from Simulated Positional Data
15
Fig. 3. Global (a) and local (b) separation measures for the high density case of the Vicsek model
Fig. 4. Simulation snapshots of the Vicsek model and the retrieved model, for a high density case with the same initial conditions
6.2
Case 2: Modified Vicsek Model
The previous subsection showed how even with a difference in model structure, the global behavior of the low density data can be emulated adequately by the retrieved model. Nevertheless, the high density case proved to be more difficult due to the higher variation of interaction in the radius neighborhood of the Vicsek model. In this subsection, the Vicsek model will be slightly modified to consider a fixed number of neighbors in order to have equal interaction type between source and retrieved model. In formal terms, equation 3 is modified to: θi (t + 1) = arctan
sin(θi (t))M,i + Δθ cos(θi (t))M,i
(10)
where .M denotes average over the M neighbors (and itself) as explained before. The same procedure as in the previous subsection is followed to first retrieve the best model from data of the modified model and later perform simulations. In order to maintain similar global behavior to the original model, the values for
16
G. Dieck Kattas and M. Small
Fig. 5. Global (a) and local (b) separation measures for the low density case of the modified Vicsek model
M in the modified model were set to 4 and 30 for the low and high density cases respectively, which causes the interaction structure to be equal with the retrieved model. For the low density simulations, Figure 5 shows how the behavior is followed qualitatively both globally and locally, just with a slight deviation. The alignment noise in the source model likely causes the separation from the data to be slightly higher than in the purely deterministic retrieved model, since this provokes small variations in the steady state orientation of the particles. Figure 6 shows how a simulation of low density initial conditions of the retrieved model follows qualitatively the behavior of the same initial conditions on the modifed Vicsek model. The behavior of the simulations are comparable with the ones obtained for the regular Vicsek model (small groups moving away), which confirms that for low densities the number of nearest neighbors within the radius of a particle is roughly constant. The advantage of modeling this modified model can be observed with the high density data in Figure 7. The global behavior is followed much better now,
Fig. 6. Simulation snapshots of the modified Vicsek model and the retrieved model, for a low density case with the same initial conditions
Building Computational Models of Swarms from Simulated Positional Data
17
Fig. 7. Global (a) and local (b) separation measures for the high density case of the modified Vicsek model
and both local interactions qualitatively arrive at a steady state with a very low deviation. Figure 8 shows an example of how the separation of a population into two swarms is emulated very well qualitatively in a simulation.
Fig. 8. Simulation snapshots of the modified Vicsek model and the retrieved model, for a high density case with the same initial conditions
7
Conclusions
The results show that automated mathematical modeling from time series data using radial basis functions can produce discrete time models capable of emulating to a certain extent the collective behavior of the classical Vicsek model. The introduced global and local separation measures over time, δg (t) and δl (t), were observed to be a very adequate representation of the behavior of the systems. From the results, we can state that for qualitative generalization of a swarming model built from data, the structure of the collective interaction in the model should resemble as much as possible the actual interaction followed in the data. This should be taken into account when taking the next step of working with real systems, in the sense that an adequate interactivity structure will be essential to retrieve good models.
18
G. Dieck Kattas and M. Small
Acknowledgements GDK is currently supported by the Hong Kong PHD Fellowship Scheme (HKPFS) from the Research Grants Council (RGC) of Hong Kong.
References [1] Nagy, M., Akos, Z., Biro, D., Vicsek, T.: Hierarchical group dynamics in pigeon flocks. Nature 464, 890–893 [2] Ballerini, M., Cabibbo, N., Candelier, R., Cavagna, A., Cisbani, E., Giardina, I., Lecomte, V., Orlandi, A., Parisi, G., Procaccini, A., Viale, M., Zdravkovic, V.: Interaction ruling animal collective behavior depends on topological rather than metric distance: Evidence from a field study. Proc. Natl. Acad. Sci. USA 105(4), 1232–1237 (2008) [3] Vicsek, T., Czirok, A., Ben-Jacob, E., Cohen, I., Shochet, O.: Novel type of phase transition in a system of self-driven particles. Phys. Rev. Lett. 75, 1226 (1995) [4] Reynolds, C.: Flocks, Herds, and Schools: A Distributed Behavioral Model. In: Stone, M.C. (ed.) Proceedings of the 14th Annual Conference on Computer Graphics and Interactive Techniques (SIGGRAPH 1987), pp. 25–34. ACM, New York (1987) [5] Okubo, A., Levin, S.: Diffusion and Ecological Problems, 2nd edn., ch. 7. Springer, Heidelberg (2000) [6] Schmidt, M., Lipson, H.: Distilling Free-Form Natural Laws from Experimental Data. Science 324(5923), 81 (2009) [7] Bongard, J., Lipson, H.: Automated reverse engineering of nonlinear dynamical systems. Proc. Natl. Acad. Sci. USA 104(24), 9943–9948 (2007) [8] Gennemark, P., Wedelin, D.: Efficient algorithms for ordinary differential equation model identification of biological systems. IET Syst. Biol. 1(2), 120–129 (2007) [9] Dieck Kattas, G., Gennemark, P., Wedelin, D.: Structural identification of GMA models: algorithm and model comparison. In: Proceedings of the 8th International Conference on Computational Methods in Systems Biology, pp. 107–113. ACM, New York (2010) [10] Judd, K., Mees, A.: On selecting models for nonlinear time series. Physica D 82, 426–444 (1995) [11] Small, M., Judd, K.: Comparisons of new nonlinear modeling techniques with applications to infant respiration. Physica D 117, 283–298 (1998) [12] Small, M., Tse, C.K.: Minimum description length neural networks for time series prediction. Physical Review E 66, 066701 (2002) [13] Rissanen, J.: Stochastic Complexity in Statistical Inquiry. World Scientific, Singapore (1989)
Robustness and Stagnation of a Swarm in a Cooperative Object Recognition Task David King and Philip Breedon The College of Architecture Design and the Built Environment, Nottingham Trent University, NG1 4BU {David.King,Philip.Breedon}@ntu.ac.uk
Abstract. Swarm intelligent, cooperative object recognition forms part of cooperative construction research. A simulation model was designed and utilised to assess the suitability of a swarm of agents to identify and collect different objects, termed the Simplified Hexagonal Model. An agent in this system cannot assess different object types alone. Key to the efficiency of the system is avoiding stagnation whilst maintaining robustness. This paper examines the energy efficiency of the system when the probability of an agent moving away from an object it is trying to identify is varied. The probability of an agent moving away from an unidentified object per time-step was varied from 1:12 to 1:400. Both low and high probabilities increased the energy required to complete the task. This was more pronounced when using fewer agents. The reduced chance that the required number of agents were surrounding the same objects at the same time caused the increase. Keywords: Swarm intelligence, cooperative object recognition, stagnation.
1 Introduction Due to their robustness and scalability using multiple simple robotic agents for construction is a widely accepted concept [1,2,3,4,5]. The behaviours used are often inspired by those in social insect nest building [6,7,8]. Research in autonomous cooperative construction frequently involves the use of homogeneous blocks. These blocks can be attached to each other in any order to complete the construction. It is suggest in [3] that these blocks could represent prefabricated pods, containing living quarters, research areas or kitchens. More often the blocks are considered the most basic construction component. Blocks that alternate in colour but are otherwise identical are used to form walls in [2]. There are also smart blocks which act as other agents and hold information about the overall structure [5]. Perhaps another way to construct would be to use component pieces. These would take less space to transport than prefabricated pods but are more task specific than simple blocks. In this situation the component pieces would need identifying, matching and moving together. These tasks could all be completed through swarm intelligent control. This paper forms part of the research that focuses on the identification of different object shapes. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 19–27, 2011. © Springer-Verlag Berlin Heidelberg 2011
20
D. King and P. Breedon
In [9][10] and [11] each robot or agent in the swarm could individually assess and identify any object that required moving cooperatively. What if an individual agent cannot identify the object alone, due to similarities in different components? There would then be a need for cooperative sensing, where agents share partial knowledge of the components. A cooperative sensing task is discussed in [12]. This scenario used agents with different sensing capabilities deviating from the homogeneous swarm robot model, something that is important in keeping the system robust where failures may occur. In [13] given the position of the homogeneous agents and their mounted cameras they are able to construct a spatial section and assess the object type. The authors’ research aims to understand how agents, with limited sensing capabilities and no long term memory are capable of identifying different types of objects that an individual cannot assess alone. To do this the agents react to their local surroundings by changing their state behaviour and display colours. This paper focuses specifically on the issue of avoiding stagnation when a swarm is identifying different objects where only a certain type is required to be collected to complete the task. Although this is an over simplification of real world cooperative construction tasks the model will provide useful data and control strategies that will aid the development of cooperative object recognition for cooperative construction in the future.
2 Simplified Hexagonal Model The simplified hexagonal model (SHM) was developed in Processing [14] an open source graphical programming platform. It was constructed from a two-dimensional hexagonal grid. Each active hexagonal cell can contain, part of a larger object, an hBot agent, a boundary region or nothing. The SHM provides a quick and simple method of testing early ideas in swarm intelligence control. Information, data and control techniques gained from the model can then be transferred to more complex simulations and hardware platforms. Agents used in the SHM are hBots, hexagonal robots. An hBot occupies one cell on the hexagonal grid and when not in contact with an object performs a random walk. Each hBot has a limited sensor range. It is aware of the condition of each of its six surrounding cells and the twelve that surround those. The hBots behave based on their state which is determined by their surrounding conditions. In the simulation they communicate their current state by changing display colour, as it is clearer to observe. Objects are approximations of triangles or hexagons built from bound neighbouring cells. Objects can be moved if enough hBots are pushing or pulling it. The orientation and the position of the hBots around the objects do not affect their ability to move it. All the hBots that are trying to move the object move with it as a group. However, any hBots that are in the way and have not identified the object stop its and the other hBots’ movement. An hBot in contact with an object will have a number of edges touching it. In figure 1 the numbers of edge contacts for each surrounding cell are shown for both triangular objects and hexagonal objects. Table 1 shows the different patterns of edge contact that three neighbouring cells make for both objects.
Robustness and Stagnation of a Swarm in a Cooperative Object Recognition Task
21
Fig. 1. Objects with surrounding cells showing number of sides in contact with object Table 1. Patterns of sides in contact with objects with three hBots in contact with each other Triangle: 3 hBot combinations Left Centre Right 1 (1) 2 1 (2) 1 1 (2) 2 2 (1) 1 2 (2) 2
Hexagon: 3 hBot combinations Left Centre Right 1 (2) 1 1 (2) 2 2 (1) 2 2 (2) 2
The patterns that only occur when three hBot agents surround a triangle or hexagon but not the other in table 1 are as follows: • Patterns 1(1)2 and 2(1)1 only occur with a triangular object. • Pattern 2(1)2 only occurs with a hexagonal object. With this information it was possible to produce a system where groups of hBots can identify an object as hexagonal or triangular, when there are three adjacent hBots at a corner of a shape. Table 2 explains how the hBots current state, behaviours and display colours change based on their current state and surrounding parameters. Table 2. The state, sensed condition and behaviours that control the hBot State 0 1 2 3
4
Sensed Condition Searching for object or in contact with the edge of arena or collection zone. In contact with object on one side only. In contact with object on two sides. (a) In state 1 with two neighbouring hBots, one in state 1 the other state 2. (b) In (state 1 or state 2) and in contact with a state 3 hBot. (a) In state 1 with two neighbouring hBots, both in state 2. (b) In (state 1 or state 2) and in contact with a state 4 hBot.
Behaviour (per time-step) Perform random walk avoiding collisions A probability to perform random walk avoiding collisions. Attempt to push or pull object one cell towards goal. Goal for valid objects is the collection zone. Goal for invalid objects is outside the search area.
Colour Grey Green Blue Red
Purple
22
D. King and P. Breedon
An example of a group assessing a triangular object, the assessment of a hexagonal object is very similar, can be seen in figure 2 which shows: a)
Three hBots in contact with object in states 1 for single side contact and state 2 for dual object side contact, three hBots in state 0 are approaching object. b) A group of three hBots form at a corner of the triangle with states 1(1)2. c) The centre hBot of the first group of three changes to state 3 (state 3 condition a), the second group of three hBots is in contact with the object. d) The two outer hBots change to state 3 (state 3 condition b), the second group remain in states 1(2)2 as this is common to both objects types.
Fig. 2. Example of hBots using state behaviour to identify a triangular object. hBots in state 3 are aware they are in contact with a triangular object.
The overall program, figure 3, has three essential parts, the hBots, the objects and the arena. The arena maintains a record of what is happening in each of its cells, a hBot in a certain state, part of an object or nothing at all, then displays the information on the screen. The hBots each sense their surroundings based on the data retained in the cells around them, then use this data to select their state behaviour and display Display/Arena
hBots
Update colour of arena cells
hBots sense surroundings
Update colour of arena cells
Objects
hBots update state based on surroundings Count hBots trying to move object
Display cells
Objects outside of arena are deleted hBots in contact with a moved object also move
Objects with enough hBots pushing are moved
hBots sense surroundings hBots move as allowed
Fig. 3. The flow of the main program, broken down into the three main component parts, the updating and displaying the cells of the arena, the hBots sensing state and movement control and the objects movement and deletion
Robustness and Stagnation of a Swarm in a Cooperative Object Recognition Task
23
colour, which affects how they can move. Finally the objects react when enough hBots of the correct state are trying to move them and nothing is in their path and move accordingly. Any objects pushed out of the arena or into the collection zone are deleted. The decision tree, figure 4, expands on the section regarding how the hBots select their current state based on their sensed surroundings.
Fig. 4. A decision tree explaining how the current states of the hBots are determined based on their sensed surroundings
3 Results An arena was constructed in a hexagonal arrangement measuring 41 cells diagonally from corner to corner. The hexagonal collection zone was placed in the exact centre measuring 11 cells diagonally from corner to corner. In figure 5 three valid 7 cell hexagon objects and three invalid 6 cell triangles are shown spaced evenly at equal distances away from the collection zone. The hBots need to collect the three valid objects from the arena to complete the task. Any invalid objects are possibly removed from the arena by the agents if they are identified.
24
D. King and P. Breedon
Fig. 5. Screen grab of SHM Arena at time-step 0
In order to reduce the chance of stagnation in the system any hBots that are in contact with an object but have not identified it (states 1 or 2) have a probabilistic chance each time-step to move away from the object. If this were not the case there could be situations where the hBots are spread amongst the objects without the required three in a row to identify the object. This variable is considered to be the ‘stickiness’ of the agent. For each time-step every hBot in states 1 or 2 has a 1 in ‘stickiness’ chance of moving. The probability of the hBot moving away decreases with larger values of the variable. This paper measured the affect on the energy cost of different populations of hBots when their ‘stickiness’ was varied from 12 to 400. The total energy cost is found by multiplying the number of hBots by the number of time-steps as in equation 1. This provides a more accurate evaluation of the systems efficiency than measuring time-steps alone. In the SHM the energy supply is currently modelled as infinite as it provides valuable information on the overall efficiency of the system as variables are adjusted rather than a fully realistic simulation of robotic agents in the field. time-steps × number of hBots = energy cost .
(1)
The simulations for each value of ‘stickiness’ were run with a varying hBot populations. For each number of hBots, from 10-30 at increments of 5, the experiment was run 50 times. To complete the task, three of the hexagonal objects needed to be moved by the hBots to the collection zone. The unwanted triangular objects, once identified, could be moved out of the search arena to avoid re-assessment. It required four hBots working together to move an object. This emphasised the difference in the two tasks, identifying and movement. The amount of time-steps it took to complete the tasks was recorded and the energy cost calculated.
Robustness and Stagnation of a Swarm in a Cooperative Object Recognition Task
25
Varying Probability of Moving Aw ay from an Unidentified Object 700000
600000
1:12
Energy Cost to Complete Collection Task (no of agents x time-steps)
1:25 1:50 500000
1:100 1:200 1:400
400000
300000
200000
100000
0 5
10
15
20
25
30
35
Number of hBot Agents
Fig. 6. The total energy cost to complete the task decreases as the hBot population increases
As in previous experiments [15] increasing the agent population in an arena of this size decreases the amount of energy used by the agents. The results presented in figure 6 show for all values of ‘stickiness’ there is an initial rapid decrease in the amount of energy consumed which starts to level off as the population is increased. There is a more pronounced affect when the values are at the extremities. The low probability of movement 1:12 and the high probabilities 1:200 and 1:400 have the highest energy costs. The energy cost for 1:50 and 1:100 are almost exactly the same. Overall as the number of hBot agents increases the energy cost for completing the task tend towards similar values across the board. The variation in energy cost against the increasing stickiness is more clearly visible in figure 7. For every number of hBots used in the simulation the same pattern is seen. Similar to a ‘tick’ shape, the energy cost starts high when there is a 1:12 probability of moving, drops rapidly. This drop ranges from approximately 30-50% depending on the number of hBots. Between probabilities 1:50 and 1:100 the energy cost remains approximately level, variations between 1-15%. There is then a steady increase in energy consumed to complete the task from the 1:50 probability to 1:400. The variation in the energy consumed decreases as the number of hBots increases. This is because with a limited number of objects to find and identify the hBots are more likely to cluster together in the required groups of three to identify an object.
26
D. King and P. Breedon
Varying number of hBot Agents used to Collect 3 Valid Objects (Removing Invalid Objects) 700000
Energy Cost to Complete Collection Task (no of agents x time-steps)
600000
500000
10 hBots 15 hBots 20 hBots
400000
25 hBots 30 hBots 300000
200000
100000
0 0
50
100
150
200
250
300
350
400
450
1 in X Chance of Moving Aw ay From Unidentified Object Per Time-Step
Fig. 7. The energy cost drops suddenly and rises gradually as the probability of moving away from an unidentified object per time-step decreases from 1:12 to 1:400
In one simulation (15 hBots, stickiness of 200) the task was not completed due to complete stagnation. One of the hexagonal items was collected on the 5767th timestep leaving two hexagonal and three triangular objects. The 15 hBots spread evenly and identified the five remaining objects. As the experiment requires four hBots pushing/pulling an object to move it, the task stagnated.
4 Conclusion The ability for multiple agents to identify different objects cooperatively is an important aspect of autonomous cooperative construction. The aim of this paper was to gain an understanding of this issue, specifically where a single agent could not identify different object shapes alone. The SHM has proven to be a valuable tool for gathering a large amount of data quickly to aid in the planning for future research. It is clear that this model could not only be used for other cooperative identification research, but for other types of early swarm intelligence and swarm robotic research. The focus of this paper was the balance between robustness and stagnation. A variable was set in the system which gave each agent a given probability to remain next to an object that it was attempting to identify. Increasing the ‘stickiness’ value reduces the probability of it moving away. For low values of this variable there were high energy costs. This represents a less robust system with a low probability of total or
Robustness and Stagnation of a Swarm in a Cooperative Object Recognition Task
27
temporary stagnation. However, increasing the variable too high also required a high energy cost as temporary stagnation was far more common. The situation where true stagnation occurred would not have necessarily been avoided by a different ‘stickiness’ value. In this specific case there were five objects in the system and three hBots on each object which had, as a group, identified the objects. In these experiments it required four hBots who are all aware of the object type in order to move it. This could be avoided by adding a second variable for the situations where agents have identified an object. Giving them a chance to move away and perhaps help another group move an object as required. Further research using the SHM is needed to understand the limitations and capabilities of simplistic agents to cooperate to identify objects. The research will provide insight of the relevant strategies required for implementation with physical robots.
References 1. Brooks, R.A., Maes, P., Mataric, M.J., et al.: Lunar Base Construction Robots. In: IEEE International Workshop on Intelligent Robots and Systems, vol. 1, pp. 389–392 (1990) 2. Wawerla, J., Sukhatme, G.S., Mataric, M.J.: Collective Construction with Multiple Robots. In: Proceedings of 2002 IEEE/RSJ International Conference on Intelligent Robots and Systems, vol. 3, pp. 2696–2701 (2002) 3. Werfel, J., Bar-Yam, Y., Nagpal, R.: Building Patterned Structures with Robot Swarms. In: Su, D., Zhang, Q., Zhu, S. (eds.) 19th International Joint Conference on Artificial Intelligence, IJCAI 2005, pp. 1495–1502 (2005) 4. Werfel, J.: Robot Search in 3D Swarm Construction. In: 1st. International Conference on Self-Adaptive and Self-Organizing Systems, pp. 363–366 (2007) 5. Werfel, J., Nagpal, R.: Three-Dimensional Construction with Mobile Robots and Modular Blocks. Int. J. Robot. Res. 27(3-4), 463–479 (2008) 6. Franks, N.R., Deneeubourg, J.L.: Self-Organizing Nest Construction in Ants: Individual Worker Behaviour and the Nest’s Dynamics. Anim. Behav. 54, 779–796 (1997) 7. Theraulaz, G., Bonabeau, E.: Modelling the Collective Building of Complex Architectures in Social Insects with Lattice Swarms. J. Theor. Biol. 177, 381–400 (1995) 8. Mason, Z.: Programming with Stigmergy: Using Swarms for Construction. In: Standish, R.K., Bedau, M.A., Abbas, H.A. (eds.) Artifical Life VIII, pp. 371–374. MIT Press, Cambridge (2002) 9. Kube, C.R., Zhang, H.: Collective Robotics: From Social Insects to Robots. Adapt. Behav. 2(2), 189–219 (1993) 10. Kube, C.R., Bonabeau, E.: Cooperative Transport by Ants and Robots. Robot. Auton. Sys. 30, 85–101 (2000) 11. Zhang, D., Xie, G., Yu, J., et al.: Adaptive Task Assignment for Multiple Mobile Robots via Swarm Intelligence Approach. Robot. and Auton. Sys. 55, 572–588 (2007) 12. Payton, D., Estkowski, R., Howard, M.: Compound Behaviours in Pheromone Robotics. Robot. Auton. Sys. 44, 229–240 (2003) 13. Oswald, N., Levi, P.: Cooperative Vision in Multi-Agent Architecture. In: Del Bimbo, A. (ed.) ICIAP 1997. LNCS, vol. 1310, pp. 709–716. Springer, Heidelberg (1997) 14. Processing, http://processing.org/ 15. King, D., Breedon, P.: Towards Cooperative Robotic Swarm Recognition: Object Classification and Validation. In: 3rd International Conference on Advanced Design Manufacture. Key Eng. Mat, vol. 450, pp. 320–324. Trans Tech Publications (2010)
Enforced Mutation to Enhancing the Capability of Particle Swarm Optimization Algorithms PenChen Chou and JenLian Chen Electrical Engineering Department., DaYeh University, 168, College Road, 41000 ChungHwa County, Taiwan
[email protected],
[email protected]
Abstract. Particle Swarm Optimization (PSO), proposed by Professor Kennedy and Eberhart in 1995, attracts many attentions to solve for a lot of optimization problems nowadays. Due to its simplicity of setting-parameters and computational efficiency, it becomes one of the most popular algorithms in optimizations. However, the discrepancy of PSO is the low dimensionality of the problem can be solved. Once the optimized function becomes complicated, the efficiency gained in PSO degradates rapidly. More complex algorithms on PSO required. Therefore, different algorithms will be applied to different problems with difficulties. Three different algorithms are suggested to solve different problems accordinately. In summary, proposed PSO algorithms apply well to problems with different difficulties in the final simulations. Keywords: Optimization, Optimization Optimization, Genetic Algorithm, Mutation.
Benchmark,
Particle
Swarm
1 Introduction Since 1955, Professor Kennedy and Eberhart introduced the bright new optimization algorithm called Particle Swarm Optimization (PSO); optimization algorithms are more advanced and efficient than that before [1-7, 9]. Take an example, Genetic Algorithm (GA) is another optimization one based on evolution principle with high computational burden [8]. Adjustments on parameters of PSO are under studying by many researchers all around the world. As mentioned in [9], many improved PSOs have been promoted to enhance the capability of original PSO, but fail to find the optimal solution when the dimensionality of the problem is high. In [9], arithmetic mutation borrowed from GA with low mutation rate can improve the problems with many variables. The algorithm is therefore called Improved PSO (IPSO) later. Furthermore, with enforced onevariable mutation besides GA mutation, the dimensionality can increase from 200 to 2000 for easy problems. As for the tough problem, the dimension of variables can modify from 16 to 28 with good success rate [9, 10]. This is the contribution of this paper. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 28–37, 2011. © Springer-Verlag Berlin Heidelberg 2011
Enforced Mutation to Enhancing the Capability of PSO Algorithms
29
2 PSO Introduction The formulas recommended by [1] are listed in equation (1) and (2). V k
1
ω V k
c
φ
P gbest
c P k
1
φ
randxx P k
P pbest
P k
P k V k
. 1 .
(1) (2)
Where V stands for velocity, P stands for particle/position, pbest is the best parameter in the i-th generation, and gbest is the best solution variable array from beginning to the present generation so far. φ1 andφ2 are two uniform random numbers. i is the generation number. In [9, 10], the best settings of parameters in PSO with GA mutation rate of 0.0035 are In the original PSO, c1=c2=2, ω=1, randxx=1, but in the modified PSO, parameters are changed. Simulation results for benchmark problems with modified PSO can be found in [3, 4, 9, 10].
3 Enforced Mutation in PSO (EMPSO) Algorithm From the original PSO viewpoint, the adjusting number of parameters is quite few (e.g. c1, c2, ω, randxx). It is okay to most problems with low dimensions. In [9], GA mutation of rate 0.0035 is appended behind the original PSO algorithm. This is IPSO in [9, 10]. It is shown that the dimension for those problems can be increased further. When the dimension is going higher and higher, IPSO also showed the incapability to find the true optimum in the search. A momentum is still needed to let PSO solutions jumping out to the final global optimum from local optimum. This momentum goes to the idea that after GA mutation process, an enforced mutation mechanism is included in certain specified time interval in the whole generations. Without this enforced mutation, at the end of generation run, the best solution maybe is the global one as desired or trapped in the local optimum. The idea for creating EMPSO is that part of particles (solutions) are replaced by the global optimum sets and one variable in every set are forced to modify to a new allowable value by single mutation. Therefore, in the algorithm executing process, randomly select one variable to do the other single arithmetic mutation where other variables are adhered to the global optimal record so far (gbest). The modified generalized algorithm (EMPSO) has steps in sequences and explained as (1) Perform the regular PSO update process as usual. Proper parameter settings in PSO for each sample problem are shown later. Equations are the same as Equation (1) and (2). (2) GA mutation with rate of 0.0035 for sample problems with index of difficulty of 1 or 2 (defined later), but rate is increasing with running generation from 0.0035 to 0.01 for problems with index of difficulty of 3. As the rate of 0.0035, if there are 200 particles (population) in each update step, 3.5% of 200 or 7 particles (in average) are selected for mutation. 7 particles are
30
P.C. Chou and J.L. Chen
randomly picked up in the process. If the dimension of each particle is 200, then 7 variables out of 200 ones are under mutation process. Mutation is a kind of arithmetic mutation, that is, randomly selected a legal value between upper bound and lower bound of each selected variable to replace the original value. This is a true GA mutation usually used in GA process. (3) After completing the step (2), the gbest may locate at the true optimal values, while other time the gbest solution is trapped in the local optimal locus. There are no any progresses in the solution search to the final. In order to overcome the trapping problem, enforced mutation is executed 3 times in the proper located intervals. In the whole generations, 3 short intervals are arranged to do the enforced mutation as shown in Fig. 5. In Fig. 5, only two enforced mutation processes are executed and shown accordingly because after completing the second enforced mutation, the true optimal solution is already found shortly later and the next generation process is stopped. Population of one-variable enforced mutation is one tenth of total population (called EM_population). gbest is copied to each randomly selected particle in EM_population. One variable is randomly selected again for each randomly selected particle. This variable is forced to obtain a new legal value in the selected bounds (All other variable values are not changed as gbest assigned). The main function of one variable mutation is to gain the ability of particles trapped in the local optimal region to jump out of the trapped region. Without this mechanism, one can not use high dimension of variables for each sample problems. In summary, in EMPSO, the first step is to apply eq.(1) and (2) to update particle and velocity. Parameters are set on the condition of index of difficulty. GA mutation is executed with low mutation rate such as 0.0035 or from 0.0035 to 0.01. This is the second step. In the last step, enforced one-variable mutation is inserted in the generation interval (3 times in the generation run). It is shown that in the following tables that with this enforced mutation used, the dimension of variables of each sample problems can be increased mildly.
4 Sample Examples In this section four benchmark optimization problems are tested under proposed EMPSO algorithm with enforced mutation mechanism included. Three difficulty indices (1, 2, and 3) are used to classify these four problems with small number (such as 1) to represent a relatively easy problem, while larger number (such as 3) to represent tougher one. 4.1 Example 1: Sphere Function with Difficulty Index of 1
f
1
=
n
∑ x i =1
2 i
.
(3)
where − 100 < x < 100 , i = 1, 2 ,...., n , n is the dimensionality or number of vai riables to be optimized. The objective is to find the minimum of f1 function and the
Enforced Mutation to Enhancing the Capability of PSO Algorithms
31
related variable locations. Fig.1 shows the surface plot of the sphere function in 2 variables. There is a unique minimum point in the figure with location [0, 0]. Population size is 600. Parameters for PSO and enhanced mechanism (EMPSO) for this simple problem are (Algorithm #1) (1). c1=c2=1.9, ω=0.763, randxx=-10-4. (2). GA mutation rate is set to 0.0035. (3). One-variable enforced mutation is used.
Fig. 1. Surface plot of the sphere function in n=2 variables Table 1. Optimization results of sphere function Number of variables (dimension) 2 10 25 50 200 500 1000 2000
Success rate 50/50 50/50 50/50 50/50 50/50 50/50 50/50 50/50
Generations to complete (average) 13 28 36 41 46 48 49 51
Mutate rate 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035
From Table 1, the EMPSO shows its great capability to find the optimal solution with so few generations for the high dimension sphere functions with full success rates. In [9], the largest dimension is restricted to 200.
32
P.C. Chou and J.L. Chen
4.2 Example 2: Rastrigin Function with n Variables and Difficulty Index of 1
f 2 = 10 n +
∑
n i =1
2 ( x i − 10 cos( 2 π x i )) .
(4)
Where − 100 < x < 100 , i = 1, 2 ,...., n , n is the dimensionality or number of vai riables to be optimized. The objective is to find the minimum of f2 function and the related variable locations. Fig. 2 shows the surface plot of the function in 2 variables. There is a unique minimum point with value of zero in the figure with location (0, 0). Population size is 600. Parameters for PSO and enhanced mechanism (EMPSO) are
Fig. 2. Surface plot of the Rastrigin function in n=2 variables Table 2. Optimization results of Rastrigin function Number of variables (dimension) 2 5 10 15 20 25 30 35 40 50 200 500 1000 2000
Success rate 50/ 50 50/ 50 49/ 50 47/ 50 45/ 50 45/ 50 46/ 50 47/ 50 48/ 50 47/ 50 50/ 50 50/ 50 48/ 50 50/ 50
Generations to complete (average) 18 60 238 41 228 50 130 78 50 51 56 58 59 60
Mutate rate 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035
Enforced Mutation to Enhancing the Capability of PSO Algorithms
33
(Algorithm #1) (1). c1=c2=1.9, ω=0.763, randxx=-10-4. (2). GA mutation rate is 0.0035. (3). One-variable enforced mutation is used. From Table 2, the EMPSO shows its good capability to find the optimal solution with so less generations for the high dimension Rastrigin functions with high success rates. From Fig. 2 there are a lot of local peaks and valleys for this Rastrigin function, this problem is a little bit difficult than sphere function. However, EMPSO can solve the problem as well with few failures. In [9], the largest dimension is restricted to 200. 4.3 Example 3: Rosenbrock Function with n Variables and Difficulty Index of 2
f 3 = ∑i =1 (100( xi +1 − xi ) 2 + (1 − xi ) 2 ). n −1
2
(5)
Where − 100 < x i < 100 , i = 1, 2 ,...., n , n is the dimensionality or number of variables to be optimized. The objective is to find the minimum of f3 function and the related variable locations. Fig. 3 shows the surface plot of the function in 2 variables.
Fig. 3. Surface plot of the Rosenbrock function in n=2 variables
There is a unique minimum point with value of zero in the figure with location (1, 1). Population size is 600. Parameters for PSO and enhanced mechanism (EMPSO) are (Algorithm #2) (1). c1=c2=1.9, ω=1, randxx=0.5 from the beginning. (2). After one third of total generations, reset the parameters to new values such as ω=0.5, randxx=0.99999. (3). GA mutation rate is always fixed to 0.0035. (4). One-variable enforced mutation is used.
34
P.C. Chou and J.L. Chen
From Table 3, the EMPSO shows its great capability to find the optimal solution with many generations for the high dimension Rosenbrock functions with almost full success rates. Because of the tight relation among all variables and sticked to 1, this problem will cost a lot of time as well as generations to finish finding the optimal solution. Dimension is up to 200 with many generations, so over 200, the generation number is expected exponentially increasing. Therefore, there still is progress to be studied in the future for dimension over 200. At present, the dimension is increased from 100 [9] to 200. Table 3. Optimization results of Rosenbrock function Number of variables (dimension) 2 10 25 50 100 200
Success rate 50/50 50/50 48/50 50/50 50/50 50/50
Generations to complete (average) 47 7749 16879 24641 46217 73333
Mutate rate 0.0035 0.0035 0.0035 0.0035 0.0035 0.0035
4.4 Example 4: Schafer Function with n Variables. Eq. (6) Shows n=2, (x, y) Only. The Difficulty Index is 3.
A1 = (sin( x 2 + y 2 )) 2 − 0.5 A2 = (1 + 0.001( x 2 + y 2 )) 2 A1 . f 4 = 0 .5 − A2
(6)
Where − 100 < x < 100 , i = 1, 2 ,...., n , n is the dimensionality or number of vai riables to be optimized. The objective is to find the maximum of f4 function and the related variable locations. Fig. 4 shows the surface plot of the function in 2 variables. There is a unique maximum point with value of one in the figure with location (0, 0). Population size is 600. Parameters for PSO and enhanced mechanism (EMPSO) are (Algorithm #3) (1). c1 is decreasing with generations from 2 to 1.5, c2=3.8-c1, ω=0.763, randxx=0.99999. (2). GA mutation rate is increasing from 0.0035 to 0.01 with generation count. (3). One-variable enforced mutation is used.
Enforced Mutation to Enhancing the Capability of PSO Algorithms
35
Fig. 4. Surface plot of the Schaffer function in n=2 variables
GREEN-mean, BLUE-local min., RED-global min. PI=1;Iter=121524;ToTal=50 -0.2
Cost
-0.4 -0.6 -0.8 -1 0
2
4
6 8 Generation
10
12
14 4
x 10
GREEN-local min., RED-global min. PI=1;Iter=121524;ToTal=50
Cost
-0.98
-1 -1.02 0
2
4
6 8 Generation
10
12
14 4
x 10
Fig. 5. One simulation result for Example 4.4
From Table 4, the EMPSO shows its great capability to find the optimal solution with many generations for the high dimension Schaffer functions with almost full success rates. From Fig. 4, if the algorithm is not efficient, then gebst is absorbed in the local traps region. It is relatively difficult to jump out of those traps in general. For
36
P.C. Chou and J.L. Chen
example, IMPSO, IPSO are used to overcome the trapping problem in low dimensionality problems. Furthermore the capability of jumping out of traps is increased by incorporating the one-variable enfored mutation mechanism and high GA mutation rate into EMPSO. Fig. 5 shows that after one-variable mutation’s disturbance (blue regions in the lower part), global minimum (gbest) can move down gradually further. It takes minimization to do the whole performances in the PSO algorithm, so -1 is the true minimum or +1 is the true maximum in Fig. 5. Nearby information provided by the local maximum as shown in Fig. 4 is wrong, therefore, further modifications on particle/velocity is really difficult if original PSO algorithm (see eq.(1), (2)) is used. Therefore this Schaffer function has an index of difficulty of 3. The dimension in [9] is limited to 16 only, but 28 used in EMPSO. Table 4. Optimization results of finding solutions of Schaffer functions Number of variables (dimension) 2 4 6 8 10 12 14 16 18 20 22 24 26 28
Success rate 50/50 50/50 50/50 50/50 50/50 50/50 49/50 50/50 50/50 50/50 48/50 46/50 36/50 41/50
Generations to complete (average) 56 128 1745 11427 30528 49195 92415 116328 138385 168559 200465 189222 209565 269290
Mutate rate 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01 0.0035 to 0.01
Calling oneVar times 3 3 3 3 3 3 3 3 3 3 3 3 3 3
5 Conclusions In this paper, an improved PSO with enforced mutation (EMPSO) has been proposed for handling four different problems with different difficulty indices. From the discussions above, one can find that the easy problems such as Sphere and Rastrigin functions with n-dimension can be easily overcome by adjusting PSO parameters in one step. For the intermediate difficulty of problems such as Rosenbrock, two steps of parameter setting are required in the PSO besides GA mutation. Lastly to the toughest problem such as Schaffer, the success to reach the final global optimum is relied highly on the enforced mutation mechanism when dimensionality of parameters is high. It is apparent from Fig. 5 that after the disturbing of one-variable enforced mutation, the final optimal solution can be reached by jumping out of the trap developed by local optimal locus.
Enforced Mutation to Enhancing the Capability of PSO Algorithms
37
The conclusion is that with optimization problems with different difficulty indices, firstly, the proposed EMPSO incorporates enforced mutation mechanism to the classical or standard PSO besides formal GA mutation; secondly, different settings of control parameters are required to set according to the relevant index of difficulty of the problem. The chances to find global solutions are increasing using this EMPSO algorithm to different problems. The dimension can be traced as high as 2000 in the first and the second examples. For the most difficult problem, the dimension is improved further from 16 to 28. With EMPSO, the possibility to find a global optimum is increased although the success rate is not 100% as shown in Table 4. Acknowledgments. A financial support of DaYeh University for this study is highly acknowledged.
References 1. Kennedy, J., Eberhart, R.: Particle Swarm Optimization. In: Proceedings of the IEEE International Joint Conference on Neural Networks, pp. 1942–1948 (1995) 2. Engelbrecht, A.: Computational Intelligence, 2nd edn. John Wiley & Sons, West Sussex (2007) 3. Shi, Y., Eberhart, R.: A Modified Particle Swarm Optimizer. In: The 1998 IEEE International Conference on Evolutionary Computation Proceedings, IEEE World Congress on Computational Intelligence, pp. 69–73 (1998) 4. Cai, X., Cui Z., Zeng, J., Tan, Y.: Individual Parameter Selection Strategy for Particle Swarm Optimization, Particle Swarm Optimization. Tech Education and Publishing (2009) 5. Vesterstrom, J., Thomsen, R.: A Comparative Study of Differential Evolution, Particle Swarm Optimization, and Evolutionary Algorithms on Numerical Benchmark Problems. In: Proc. IEEE Congress Evolutionary Computation, Portland, OR, June 20-23, pp. 1980– 1987 (2004) 6. Wagih, M., Elkamchouchi, H.: Application of Particle Swarm Algorithm in Smart Antenna Array Systems, Particle Swarm Optimization. Tech Education and Publishing (2009) 7. Amin, A., Hegazy, O.: Swarm Intelligence Applications in Electric Machines, Particle Swarm Optimization. Tech Education and Publishing (2009) 8. Chou, P.: Principles and Applications of Genetic Algorithms. ChiamHwa Book Company, Taipei (2006) (in Chinese) 9. Chou, P.: Improved Particle Swarm Optimization with Mutation. In: MSI 2009 IASTED International Conference, Beijing, China (2009) 10. Chou, P.: A Proposal for Improved Particle Swarm Intelligence. In: IEEE 3CA International Conference 2010, Tainan, Taiwan (2010)
Normalized Population Diversity in Particle Swarm Optimization Shi Cheng1,2 and Yuhui Shi2 1
Dept. of Electrical Engineering and Electronics, University of Liverpool, Liverpool, UK
[email protected] 2 Dept. of Electrical & Electronic Engineering, Xi’an Jiaotong-Liverpool University, Suzhou, China
[email protected]
Abstract. Particle swarm optimization (PSO) algorithm can be viewed as a series of iterative matrix computation and its population diversity can be considered as an observation of the distribution of matrix elements. In this paper, PSO algorithm is first represented in the matrix format, then the PSO normalized population diversities are defined and discussed based on matrix analysis. Based on the analysis of the relationship between pairs of vectors in PSO solution matrix, different population diversities are defined for separable and non-separable problems, respectively. Experiments on benchmark functions are conducted and simulation results illustrate the effectiveness and usefulness of the proposed normalized population diversities. Keywords: Particle swarm optimization, diversity, normalized population diversity, matrix analysis, vector norm, matrix norm, matrix iterative computation.
1
Introduction
Particle Swarm Optimization (PSO), which was introduced by Russ Eberhart and James Kennedy in 1995 [1,2], is a population-based evolutionary computation technique. It models the social behaviors observed in flocking birds. Each particle, which represents a potential solution, flies through the solution (search) space with a velocity that is dynamically adjusted according to its own and its companion’s historical behaviors. The particles have a tendency to fly toward better search areas over the course of a search process [3]. Diversity has been defined to measure the search process of an evolutionary algorithm. Generally, it is not to measure whether the algorithm find a “good enough” solution or not, but to measure the distribution of individuals in the
The authors’ work was supported by National Natural Science Foundation of China under grant No. 60975080, and Suzhou Science and Technology Project under Grant No. SYJG0919.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 38–45, 2011. c Springer-Verlag Berlin Heidelberg 2011
Normalized Population Diversity in Particle Swarm Optimization
39
population (current solutions). Shi and Eberhart introduced three different definitions on population diversity to measure the PSO search process [4]. Olorunda and Engelbrecht utilized swarm diversity to measure the state of exploration or exploitation during particles searching [5]. Because different problems have different dynamic ranges, the dynamic ranges of these defined diversities generally will be different. As a consequence, the diversity observation on one problem will be different from that on another problem. Therefore it is necessary to have normalized diversity definitions. In this paper, the basic PSO algorithm, fundamental concepts of matrix computation, and the importance of diversity are reviewed in Section 2. In Section 3, definitions of position diversity, velocity diversity, and cognitive diversity are given for separable problem and non-separable problem, respectively. In Section 4, experiments on measuring population diversity are tested on benchmark functions and simulation results are discussed to illustrate the effectiveness and usefulness of the proposed normalized diversity definitions. Finally, conclusions are given in Section 5 together with some remarks and future research directions.
2 2.1
Preliminaries Particle Swarm Optimization
The original PSO algorithm is simple in concept and easy in implementation. The basic equations are usually given as follow [6]: vij = wvij + c1 rand()(pij − xij ) + c2 Rand()(pnj − xij ) xij = xij + vij
(1) (2)
where xij represents a particle, i represents the number of particle which is from 1 to m, and j is for dimension from 1 to n. The equations above can also be written in matrix form as follow: V = wV + c1 RAnd()(P − X) + c2 RAND()(N − X) X= X+V where RAnd() and RAND() are different for each matrix element, and ⎤ ⎤ ⎡ ⎤ ⎡ ⎡ ⎤ ⎡ x11 x12 · · · x1n v1 v11 v12 · · · v1n x1 ⎢ v2 ⎥ ⎢ v21 v22 · · · v2n ⎥ ⎢ x2 ⎥ ⎢ x21 x22 · · · x2n ⎥ ⎥ ⎥ ⎢ ⎥ ⎢ ⎢ ⎥ ⎢ V=⎢ . ⎥=⎢ . X=⎢ . ⎥=⎢ . ⎥ . .. ⎥ . . . ⎦ ⎦ ⎣ ⎣ ⎣ .. ⎦ ⎣ .. xij . . . vij . ⎦ xm xm1 xm2 · · · xmn vm vm1 vm2 · · · vmn ⎡ ∗ ⎤ ⎡ p∗ p∗ · · · p∗ ⎤ ⎡ ⎤ ⎡p p ··· p ⎤ 11 12 1n 11 12 1n p1 p1 p∗21 p∗22 · · · p∗2n ⎥ p p · · · p ⎢ p∗ ⎥ ⎢ ⎢ p2 ⎥ ⎢ 21 22 2n ⎥ ⎥ ⎥ ⎢ ⎢ 2⎥ ⎥ N=⎢ P=⎢ .. .. ⎥ . .. ⎥ ⎣ · · ·⎦ = ⎢ ⎣· · ·⎦ = ⎢ ∗ ⎦ ⎣ .. ⎣ . pij . ⎦ pij . ∗ ∗ ∗ pm p m pm1 pm2 · · · pmn pm1 pm2 · · · p∗mn
(3) (4)
40
S. Cheng and Y. Shi
The above four matrix are termed as position matrix X, velocity matrix V, cognitive (personal best) matrix P, and social (neighboring best) matrix N, which is a simplified personal matrix with only one particle’s best position which is either the global best position in global star structure or a particle’s personal best in this neighborhood in other structures, e.g., local ring. Shi and Eberhart gave three definitions on population diversity, which are position diversity, velocity diversity and cognitive diversity [7]. According to the PSO matrix representation, diversity is a measurement of variance of different elements in each dimension or in whole matrix. Position diversity is used to measure the distribution of particles’ current positions, that is, it concerns elements in matrix X. Velocity diversity is used to measure the distribution of swarm’s current velocity, that is, it concerns elements in matrix V. Cognitive diversity measures the distribution of best positions for each particles find so far, that is, it concerns elements in matrix P. Which diversity definition to be utilized to measure the diversity of swarm is determined by the property of particle swarm algorithms and the problems to be solved. Each vector xi , where xi = [xi1 , · · · , xin ] in position matrix X, is a solution of problem. An optimization problem can be a separable problem or a non-separable problem. For a separable problem, it is independent to evaluate the contribution of each xij to the fitness value of xi ; while for non-separable problem, it is not independent. Therefore, for separable problems, it is preferred to use dimensionwise diversity measurement, while for non-separable problems it is preferred to use element-wise diversity measurement. This conclusion can be observed in Figure 1, which shows simulation results of different PSO population diversities for one separable problem (Fig. a) and one non-separable problem (Fig. b). The dimension-wise diversity measurement is better for separable function as shown in Fig. a, on the contrary, element-wise measurement is better for non-separable function as shown in Fig. b.
4
2
10
10
2
1
10
10
0
0
10
10
−2
−1
10
10
−4
dimension−wise L
10
−6
element−wise dimension−wise L2
10
10
1
10
−8
dimension−wise L
−3
element−wise dimension−wise L2
1
−4
10
10
−10
10
−2
−5
0
10
1
10
2
10
(a)
10
3
4
10
10
10
0
1
10
10
2
3
10
4
10
(b)
Fig. 1. Different definition of PSO population diversity. Global star structure: (a) Separable Ackley’s function: f3 position, (b) Non-separable generalized Rosenbrock’s function: f4 position.
Normalized Population Diversity in Particle Swarm Optimization
2.2
41
Vector Norm and Matrix Norm
A vector norm is a map function f : Rn → R. All norms on Rn are equivalent, i.e., if · α and · β are norms on Rn , there exist positive constants, c1 and c2 such that c1 xα ≤ xβ · · · ≤ c2 xα , Vector norm have the property that: x1 ≥ x2 · · · ≥ x∞
(5)
Also, a matrix norm is a map function f : Rm×n → R. The matrix norm have n m the properties that: A1 = max1≤j≤n |aij |, and A∞ = max |aij |. i=1
1≤i≤m j=1
By applying matrix norms in PSO, the meaning of matrix norm is as follows: for each dimension, calculating the sum of absolute position value for every particle, the maximum is the matrix norm L1 for position matrix; for every particle, finding the sum of absolute position value in each dimension, the maximum is the matrix norm L∞ for position matrix. The distinction between matrix L1 norm and matrix L∞ norm is the perspectives taken on the position matrix. Matrix L1 norm measures the largest value on dimension, while matrix L∞ norm measures the largest value on particles. Considered the property whether vectors are dependent on each other or not, vector norms are preferred to be applied to normalize population diversity for separable problems and matrix L∞ norms are preferred to be used for non-separable problems.
3
Normalized Population Diversity
Vector norms are applied to normalize population diversity on separable problem, while matrix norms are applied to non-separable problem for the property that each dimension is not independent in non-separable problems. The matrix elements (position, velocity, personal best position) are normalized at first, and the definitions of PSO population diversities based on vector L1 norm, which introduced by Cheng and Shi [8], are given as follow: 3.1
Position Diversity
Position diversity measures distribution of particles’ current position. The swarm is going to diverge into wider search space or converge in a small area can be obtained from this measurement. Position diversity concerns the elements in position matrix. Separable Problem. For separable problem, each vector in position matrix are independent. Vector norms are preferred to normalize the position, and three methods are as follow. These normalizations are based on the vector L1 norm, or n L∞ norm, or maximum value of position: xnor = x /x = x / ij 1 ij ij j=1 |xij |,or nor nor xij = xij /x∞ = xij / max |xij |,or xij = xij /Xmax. Considered the inequality (5), normalized position based on other vector norms is always larger than position based on L1 norm and smaller than position based on L∞ norm.
42
S. Cheng and Y. Shi
Normalized diversities for separable problems are calculated as follow: mposition m n p 1 1 1 nor p nor p ¯ nor = m x ¯nor j |, and D = n i=1 xij , and D = m i=1 |xij − x j=1 Dj . p p p p where D = [D1 , · · · , Dn ] are the diversities on each dimension, and D is the normalized position diversity for particles. Non-separable Problem. For non-separable problem, a vector in position matrix is relative to other vector or vectors. This connection should be considered in diversity measurement. Three methods are preferred to normalize the position of each particle max |xij | in matrix X, matrix L∞ norm for X, or the maximum value of position. Normalized position is as follows: xnor = xij / max |xij |, or ij n nor nor xij = xij /X∞ = xij / max1≤i≤m j=1 |xij |, or xij = xij /Xmax . After normalized the position, normalized position non-separable mdiversity n for 1 p problems is calculated as follows: x ¯nor = m×n xnor = ij , and D i=1 j=1 m n 1 nor nor p |x − x ¯ |. where D is the normalized position diversity ij i=1 j=1 m×n for particles at this running step. 3.2
Velocity Diversity
Velocity diversity, which gives the tendency information of particles, measures the distribution of particles’ current velocity. In other words, velocity diversity measures the “activity” information of particles. Based on the measurement of velocity diversity, particle’s tendency of expansion or convergence could be obtained. Separable Problem. Vector in velocity matrix is independent for separable problem. Vector norm L1 , or L∞ , or maximum is applied to n value of velocity nor nor normalize velocity: vij = vij /v1 = vij / j=1 |vij |, or vij = vij /v∞ = nor vij / max |vij |, or vij = vij /Vmax . Normalized velocity for separable problems are calculated as follow: m nor diversities m n 1 1 1 v nor nor v v ¯ nor = m v v , and D = |v − v ¯ |, and D = j i=1 ij i=1 ij j=1 Dj . m n v v v v where D = [D1 , · · · , Dn ] are the diversities on each dimension, and D is the normalized velocity diversity for particles. Non-separable Problem. For non-separable problem, vectors is not independent in velocity matrix. Three operators: max |vij | in velocity matrix, or matrix L∞ norm of V, or maximum value of velocity is applied to normalize the velocnor nor ity. vij = vij / max |vij |, or vij = vij /V∞ = vij / max1≤i≤m nj=1 |vij |, or nor vij = vij /Vmax . Normalized velocity for non-separable problems is calculated as folmdiversity n m n 1 1 nor v nor lows: v¯nor = m×n v , and D = − v¯nor |. i=1 j=1 ij i=1 j=1 |vij m×n v where D is the normalized velocity diversity for particles at this running step. 3.3
Cognitive Diversity
Cognitive diversity represents the target distribution of all particles found currently. The measurement of cognitive diversity is as same as position diversity except using each particle’s current personal best position instead of current position. Therefore, the analysis for position diversity is also effective for cognitive diversity.
Normalized Population Diversity in Particle Swarm Optimization
43
Separable Problem. The normalized cognitive positions are as follow: pnor ij = nor pij /p1 = pij / nj=1 |pij |, or pnor = p /p = p / max |p |, or p = ij ∞ ij ij ij ij pij /Xmax . Normalized cognitive diversities for separable problems are calculated n as folm m 1 1 1 nor c nor nor c v ¯ nor = m low: p v , and D = |v −¯ v |, and D = j i=1 ij i=1 ij j=1 Dj . m n c c c c where D = [D1 , · · · , Dn ] are the diversities on each dimension, and D is the normalized cognitive diversity for particles. Non-separable Problem. Like the definition of position diversity, the normalized personal best positions are as follow: pnor = pij / maxi,j |pij |, or pnor = ij ij n nor pij /P∞ = pij / max1≤i≤m j=1 |pij |, or pij = pij /Xmax Normalized cognitive for non-separable problems as m diversity n m nis calculated 1 1 nor c nor follows: p¯nor = m×n ¯nor |. i=1 j=1 pij , and D = m×n i=1 j=1 |pij − p where D c is the normalized cognitive diversity for particles at this iterative step.
4
Experimental Studies
The experiments have been conducted to test more than 10 benchmark functions; some of them are given in the Table 1. All functions are tested for 50 times, and random shift of the location of optimum is utilized in dimensions each time. For the reason of generalization, whether each benchmark function is either a unimodal or a multimodal function as well as a separable or a non-separable function is known. Figure 2 gives a diversity measurement for separable problems, which (a) is velocity diversity of unimodal function f1 and (b) is position diversity of multimodal function f3 . Fig. a and b showed that diversity based on L1 norm nearly have the same curve as diversity based on the maximum value of the position matrix. Figure 3 gives a diversity measurement for non-separable problems, which (a) is velocity diversity of unimodal function f2 and (b) is position diversity of 0.7
0.4
0.6
0.35 0.3
0.5
vector L norm
0.4
velocity maximum vector L∞ norm
vector L norm
1
1
0.25
position maximum vector L∞ norm
0.2 0.3 0.15 0.2
0.1
0.1
0 0 10
0.05
1
10
2
10
(a)
10
3
4
10
0 0 10
1
10
10
2
3
10
4
10
(b)
Fig. 2. Normalized PSO population diversity for separable problem. Local ring structure: (a) unimodal function f1 velocity diversity; Global star structure: (b) multimodal function f3 position diversity.
44
S. Cheng and Y. Shi
10
10
0
0
10
−1
max x
−1
ij
10
10
position maximum matrix L ∞ norm
−2
−2
10 10
−3
max v
ij
10
velocity maximum matrix L ∞ norm
−4
10
0
1
10
−3
2
10
10
3
4
10
10
10
0
1
10
(a)
10
2
3
10
4
10
(b)
Fig. 3. Normalized PSO population diversity for non-separable problem. Local ring structure: (a) unimodal function f2 velocity diversity; Global star structure: (b) multimodal function f4 position diversity. Table 1. Representative functions used in our experimental study, where n is the dimension of the function, z = (x − o), oi is an randomly generated number in each function’s search space S, global optimum x∗ = o, fmin is the minimum value of the function, and S ⊆ Rn Function name Test function Quadric Noise f1 (x) = n izi4 + random[0, 1) i=1 n Schwefel’s p1.2 f2 (x) = i=1 ( ik=1 zk )2 √ 1 n 2 −0.2 n z i=1 i f3 (x) = −20e Ackley 1 n cos(2πzi ) i=1 n −e + 20 + e n Generalized f4 (x) = i=1 [100(zi+1 − zi2 )2 + (zi − 1)2 ] Rosenbrock
n S fmin n 100 [−1.28, 1.28] bias[4] 100 [−100, 100]n bias[2] 100
[−32, 32]n
bias[9]
100
[−10, 10]n
bias[5]
multimodal function f4 . Fig.a and b showed that diversity based on max xij nearly have the same curve as diversity based on the maximum value of the position matrix. As Figures shown, this definition of normalized diversity measurement gives some useful information during particles search process. Position diversity and Velocity diversity always have a continuous vibrate, this proved that particles “fly” from one side of optimum to another side on each dimension continually.
5
Conclusion
This paper proposed an analysis of population diversity based on the category of separable and non-separable problems. If vectors are not independent in position matrix; diversity observation should consider the correlation among dependent vectors. Considered the property whether vectors are dependent on each other or not, vector norms are preferred to normalize population diversity for separable problems and matrix L∞ norm is preferred to be used for non-separable problems.
Normalized Population Diversity in Particle Swarm Optimization
45
Particles on the state of “expansion” or “converge” can be determined by this diversity measurement. After obtained this information, performance of optimization algorithm can be improved by adjusting population diversity dynamically during PSO search process. Particles with different topology structure also have different vector dependence in position or velocity matrix. Seeking the influence of topology structure and vector partial dependence analysis is the research need to be explored further. The idea of normalized population diversity measuring can also be applied to other evolutionary algorithms, e.g., genetic algorithm, differential evolution for evolutionary algorithms have the same concepts of current population solutions and search step. The performance of evolutionary algorithms can be improved on this measurement of population diversity. Dynamically adjusting the population diversity controls the algorithm’s ability of exploration or exploitation, hence, algorithm has large possibility to reach optimum.
References 1. Eberhart, R., Kennedy, J.: A new optimizer using particle swarm theory. In: Processings of the Sixth International Symposium on Micro Machine and Human Science, pp. 39–43 (1995) 2. Kennedy, J., Eberhart, R.: Particle swarm optimization. In: Processings of IEEE International Conference on Neural Networks (ICNN), pp. 1942–1948 (1995) 3. Eberhart, R., Shi, Y.: Computational Intelligence: Concepts to Implementations, 1st edn. Morgan Kaufmann Publisher, San Francisco (2007) 4. Shi, Y., Eberhart, R.C.: Population diversity of particle swarms. In: Proceedings of the 2008 Congress on Evolutionary Computation, pp. 1063–1067 (2008) 5. Olorunda, O., Engelbrecht, A.P.: Measuring exploration/exploitation in particle swarms using swarm diversity. In: Proceedings of the 2008 Congress on Evolutionary Computation, pp. 1128–1134 (2008) 6. Eberhart, R., Shi, Y.: Particle swarm optimization: Developments, applications and resources. In: Proceedings of the 2001 Congress on Evolutionary Computation, pp. 81–86 (2001) 7. Shi, Y., Eberhart, R.: Monitoring of particle swarm optimization. Frontiers of Computer Science 3(1), 31–37 (2009) 8. Cheng, S., Shi, Y.: Diversity control in particle swarm optimization. In: Proceedings of IEEE Swarm Intelligence Symposium 2011, Paris, France (April 2011)
Particle Swarm Optimization with Disagreements Andrei Lihu and S ¸ tefan Holban Department of Computer Science, Politehnica University of Timi¸soara, Bd. Vasile Pˆ arvan, 300223 Timi¸soara, Romania
[email protected],
[email protected]
Abstract. This paper introduces an enhancement to the particle swarm optimization algorithms that models a characteristic of social groups: the disagreements between individuals. After a short introduction, we describe the new concept theoretically and define a special type of particle swarm optimization with disagreements: the 6σ-PSOD. Based on it, we conduct some tests proving that it can perform better, having strengthened neighborhood focus using partial disagreements and enhanced exploration capabilities through extreme disagreements. Keywords: disagreements, partial, extreme, 6σ-PSOD, particle swarm optimization, standard deviation.
1
Introduction
The particle swarm optimization (PSO) is a population based optimization algorithm, initially described by Eberhart and Kennedy in [1]. It implements the social mind metaphor, simulating the social behavior of different groups from the animal kingdom, such as birds or fish. One of the main advantages of PSO over other optimization techniques is the ability to operate without the need of gradient information. It successfully solves nonlinear and multi-objective problems from various fields of human activity and at the time of this writing, it is a top competitor among optimization algorithms. Briefly, PSO is better described as a swarm of particles flying iteratively through the hyperspace of solutions until a termination condition is met. Every particle has a velocity and a position, knows his neighborhood’s best position and its personal one; it can check whether a better position is found by using a fitness function. Each iteration, a particle updates its velocity and position based on its own experience — the cognitive component of the algorithm’s updating principle, and based on its neighborhood experience — the social component. Important improvements to the original algorithm consist in ameliorating convergence and increasing diversity inside the swarm, as stated in [2]. While improving convergence gets the job done by discovering faster the solution, increasing the diversity helps not getting trapped into local minima. Finding a way that can accommodate both of these objectives is hard, because they are somehow opposite, therefore compromises must be made. We approached this Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 46–55, 2011. c Springer-Verlag Berlin Heidelberg 2011
Particle Swarm Optimization with Disagreements
47
problem by completing the social background of PSO with a new behavior: the disagreements. We thought that a particle in PSO can oppose its group’s way by having a modified opinion, therefore a particle can follow mildly or extremely different paths from the regular one, with a given probability. After testing and comparing our results with popular PSO variants (using a comprehensive evolutionary framework — Java EvA2 [3]), we concluded that our new approach has good results. It improves convergence by having a better focus inside the neighborhood through partial disagreements, and increases the diversity when extreme disagreements are generated, making it suitable for solving plateau and/or multi-modal functions.
2
Standard Particle Swarm Optimization
Following Berg’s notation in [2], PSO can be described as follows: let n be the dimension of the solution hyperspace H n , let s be the number of particles from the swarm, and let i be the index of a particle, such that i ∈ 1 . . . s. Each particle i has the following variables: xi — the current position, vi — the current velocity, yi — the current best position, yˆ — neighborhood’s best. We consider the function f to be minimized. The PSO consists of three phases: initialization, iterations, termination. Initially, the particles’ positions are set uniformly in the search space. Then, best positions are updated using (3) and (4). In the iterations’ phase, both velocities and positions are updated using (1) and (2): vij (t + 1) = wvij (t) + c1 r1j (t)[yij (t) − xij (t)] + c2 r2j (t)[ˆ yj (t) − xij (t)] ,
(1)
where c1 is the personal coefficient, c2 is the social coefficient, c1 , c2 ∈ (0, 2]. r1 and r2 are random vectors, such that: r1 , r2 ∼ U (0, 1). The first term of (1) is the previous velocity influenced by an inertial weight w. The second term is the personal component that makes the particle move toward its best personal position so far, and the third term makes the particle to turn to neighborhood’s best position found so far: xi (t + 1) = xi (t) + vi (t + 1) . At each iteration, yi and yˆ are updated using the formulae: yi (t) if f (xi (t + 1)) ≥ f (yi (t)) yi (t + 1) = . xi (t + 1) if f (xi (t + 1)) < f (yi (t)) yˆ(t) ∈ {y0 (t), y1 (t), . . . , ys (t)|f (ˆ y (t))} = min {f (y0 (t)), f (y1 (t)), . . . , f (ys (t))} .
(2)
(3)
(4)
Termination occurs when a given criterion is met (a number of fitness calls or iterations, stagnation, etc.).
48
A. Lihu and S ¸ . Holban
3
Preliminary Studies
In the original PSO updating principle (1), the inertial weight w did not exist. Shi and Eberhart introduced w in [4] and it was one of the first improvements towards a good convergence of PSO. The issue that it tried to solve was the ”swarm explosion” phenomenon and the lack of convergence. Another classical improvement towards increasing convergence was the introduction of the constriction coefficient by Clerc and Kennedy in [5]. They showed that the particles have an oscillatory movement and they elaborated a constriction-based PSO with the standard configuration: χ = 0.729 and c1 = c2 = 2.05. We can also mention here Bergh’s guaranteed convergence PSO (GCPSO) as in [2]. The other main direction in enhancements consisted in improving diversity, to not get trapped in local minima, thus avoiding premature convergence. In this regard, first came the introduction of the local neighborhoods — the lbest variant of PSO with topologies. Recent approaches include a dissipative version of PSO as in [6]. One of the variants that try to solve both the problem of convergence and that of diversity is Chen and Li’s PSO in [7], [8] and [9] with guaranteed convergence and controllable random exploration velocity (PSO-CREV). The idea presented in this paper has the same aim.
4
Disagreements
Disagreements are a social phenomenon that leads to diversity and heightened awareness of current problems. Therefore, they can be applied in any social algorithm like PSO to increase the diversity of solutions and to strengthen the search focus in local neighborhood, resulting in better convergence. Replacing the first term in (1) with a generic Cv (t), denoting the velocity component, the second term in (3) with Cc (t, xi , yi ) denoting the cognitive component, the third term with Cs (t, xi , yˆ) and making the substitution in (2) where we also change the position component with a generic one, Cx , we obtain the generalized updating equation: xi (t + 1) = Cx (t, xi ) + Cv (t) + Cc (t, xi , yi ) + Cs (t, xi , yˆ) + ζ , Cc (t, xi , yi ) → yi , Cs (t, xi , yˆ) → yˆ .
(5)
Cc (t, xi , yi ) → yi should be read as ”the result of Cc tends to yi ” and Cs (t, xi , yˆ) → yˆ should be read as ”the result of Cs tends to yˆ”. ζ is usually 0 and can accommodate any other more elaborate variant of PSO that may consist of other components too. A disagreement is defined as a function that takes values in the hyperspace of the results of the social component Cs , which is H n . One can define the disagreements as the family of D functions for which the following property holds true: FD = {D : H n → H n |D(z) = z} , ∀z ∈ H n . (6)
Particle Swarm Optimization with Disagreements
49
Let Pall be the set of all types of PSO that contain the social component Cs in the updating principle, Pall = {P SO|P SO has Cs in its updating principle} ,
(7)
and let Δv be a subset from all possible subsets, Δall : Δv ⊂ {∅D , FD } , Δv ∈ Δall ,
(8)
where ∅D is a no-op (no disagreement). We define the ”disagreement injector” on any social PSO as: ΨPSO : {Pall , Δall , ρall } → Pall , ΨP SO (Pi , Δv , ρ) = PiD , Pi , PiD ∈ Pall ,
(9)
where Pi is one of the many PSO variants with social component, and PiD is the resulting particle swarm optimization with disagreements. ρ is a decision function called ”disagreement selector” that takes a set of disagreements (Δv ) as argument at iteration t (from all iterations tall ) for a particle i and decides which disagreement is invoked: ρ : {Δall × tall × s} → Δall , ρ(Δv , t, i) = Di , Di ∈ Δv .
(10)
After we apply the injection operator ΨPSO , the updating principle of the newly obtained PSO, now called PSOD (particle swarm optimization with disagreements) is transformed from (5) to: xi (t + 1) = Cx (t, xi ) + Cv (t) + Cc (t, xi , yi ) + Di (Cs (t, xi , yˆ)) + ζ , y) . Cc (t, xi , yi ) → yi , Cs (t, xi , yˆ) → Di (ˆ
(11)
In this way we introduced the concept of disagreements as a special operator that can be applied to any social PSO without modifying the internals of the algorithm. The social component can vary in implementation from algorithm to algorithm, but the injection operator can be applied in any case. Disagreement operators should not be confused with mutation of any kind. A disagreement operator can affect only the social component of the PSO and, as described above, it has a more elaborate structure and function. In the following section we will define a practical approach to disagreements in PSO: a PSO disagreement operator called ”the 6σ-PSOD operator”.
5
6σ-PSOD Operator
The 6σ-PSOD operator, Ψ6σ−PSOD , is defined in terms of (9) as: Ψ6σ−PSOD (Pi ) = ΨP SO (Pi , Δ6σ , ρ6σ ) .
(12)
In this case, the subset of disagreements (the Δv that contains the disagreements, D6σi ) is defined as: Δ6σ = {∅D , D6σa , D6σb } .
(13)
50
A. Lihu and S¸. Holban
The first type of disagreement employed here is D6σa , which is a partial disagreement because it is a function that multiplies member-wise (a Hadamard product) the social component Cs by a vector r, which has its components uniformly distributed in the interval [−1, +1]. D6σa (z) = rp ⊗ z, rp ∼ U (−1, +1), z ∈ H n , p ∈ 1 . . . |r| .
(14)
The second type of disagreement is the extreme disagreement D6σb , which multiplies member-wise the social component by a vector r containing random uniformly distributed values in the intervals [−2, −1] and [+1, +2]: D6σb (z) = re ⊗ z, re = rp + sgn(rp ), rp ∼ U (−1, +1), z ∈ H n , p ∈ 1 . . . |r| .
(15)
A rudimentary visualization of these concepts can be seen in Fig. 1:
2
1.5
1
0.5 partial disagreements 0
−0.5
−1 extreme disagreements −1.5
−2 −2
−1.5
−1
−0.5
0
0.5
1
1.5
2
Fig. 1. Distribution of disagreement types in concentric circles. Two areas are shown here: for partial disagreements — rp values fall inside the the inner circle, while for extreme disagreements — re values fall inbetween the inner and the outer circle. 2 At each iteration t, for each particle i, we generate θ(t, i) ∼ N (μ6σ , σ6σ ) and 2 θ1 (t, i) ∼ N (μ6σ , σ1 ), σ6σ ≥ σ1 . We define the following Gaussian regions for θ:
1. The first region accounts for approx. 68.2 % of the bell curve (first 2 σs) and it is defined as: R1,2σ = (μ6σ − σ6σ ) ∪ (μ6σ + σ6σ ) . (16) 2. The second region accounts for approx. 27.2 % of the bell curve (next 2 σs) and it is defined as: R3,4σ = (μ6σ − 2 σ6σ , μ6σ − σ6σ ] ∪ [μ6σ + σ6σ , μ6σ + 2 σ6σ ) .
(17)
Particle Swarm Optimization with Disagreements
51
3. The third region accounts for approx. 4.6 % of the bell curve (next 2 σs and the rest of what remains under the graphic of the Gaussian function) and it is defined as: R5,6σ = (−∞, μ6σ − 2 σ6σ ] ∪ [ μ6σ + 2 σ6σ ), +∞) .
(18)
Based on (13), (14), (15) and the above defined Gaussian regions, the selector function is defined as: ⎧ ⎨ ∅D if θ1 (t, i) ∈ R1,2σ (19) ρ6σ (Δ6σ , t, i) = D6σa if θ1 (t, i) ∈ R3,4σ . ⎩ D6σb if θ1 (t, i) ∈ R5,6σ The updating principle from (11) is transformed into: xi (t + 1) = Cx (t, xi ) + Cv (t) + Cc (t, xi , yi ) + D6σi (Cs (t, xi , yˆ)) + ζ , Cc (t, xi , yi ) → yi , Cs (t, xi , yˆ) → D6σi (ˆ y) . (20)
6
Experimental Setup
In order to test the effect of the 6σ-PSOD operator on the PSO performance, we have chosen a standard PSO with constriction as in [5], called SPSO, with the following configuration: χ = 0.729 and c1 = c2 = 2.05. The second chosen algorithm was Pedersen’s PSO-VG from [10], a social-only inertial PSO lacking the cognitive component, with the following configuration: w = 0.729 and c2 = 1.494. We transformed these two algorithms into their disagreement-enabled counterparts: Ψ6σ−PSOD (SP SO) = SP SOD6σ and Ψ6σ−PSOD (P SO − V G) = P SO − V GD6σ , with σ6σ = 1, σ1 = 0.7 and μ6σ = 0. Both algorithms used the grid topology. For each, we measured the mean fitness value and its standard deviation across 25 runs, for 25 and 50 particles in swarm, on 4 popular benchmark problems. We repeated this for a hyperspace of 10 and 30 dimensions. Algorithms terminated after 50 000 fitness evaluations. The test problems we used were: Generalized Rosenbrock (F2 ), Shifted Rastringin (F14 ), Shifted Schwefel (F21 ) and Griewank (F5 ). 1. We started with Generalized Rosenbrock to see how PSODs behave on plateau functions: F2 (X) =
n−1
(100(xi+1 − x2i )2 + (1 − xi )2 ), X ∈ IRn .
(21)
i=1
2. Then, we used Shifted Rastringin to check for behavior of convergence: F14 (X) =
n i=1
(zi2 − 10 cos(2πzi ) + 10), X ∈ [−5, +5]n, Z = X − o . (22)
52
A. Lihu and S¸. Holban
3. With Shifted Schwefel we tested for robustness: ⎛ ⎞2 n i ⎝ F21 (X) = zj ⎠ , X ∈ [−100, +100]n, Z = X − o . i=1
(23)
j=1
4. Finally, with Griewank we checked if the new behavior helps escaping local minima: n n x2i xi F5 (X) = − cos √ + 1, X ∈ [−600, 600]n . (24) 4000 i i=1 i=1 Java EvA2 ([3]) was used to test the algorithms and implement the above described PSODs, because we considered it the most advanced tool for evolutionary research at the moment. The 6σ-PSOD operator corresponds to the ’SixSigma’ variant of the PSODs we have developed in our modified Java EvA2 library. Sources are currently available at https://github.com/andrei-lihu/Eva2-AL.
7
Results
Tables 1–4 show the results of our experiments: Table 1. Benchmark results for n = 10 dimensions (F2 and F14 )
Algorithm SPSO SPSOD6σ PSO-VG PSO − VGD6σ
F2 F14 s Mean Std. dev. Mean Std. dev. 25 1.394 1.838 8.789 5.310 50 4.142 13.959 4.815 2.543 25 1.020 1.560 8.198 5.311 50 1.150 0.776 5.651 3.053 25 0.326 1.081 26.317 14.601 50 0.488 1.299 17.838 14.685 25 0.638 1.461 24.035 13.630 50 0.168 0.780 14.685 8.316
The convergence graph from Fig. 2 shows how the 6σ-PSOD operator improves convergence by having a stronger neighborhood focus and how escapes local minima in a highly multi-modal and disturbed environment. Fig. 3 illustrates how PSODs tackle plateau functions better than their PSOD counterparts. The possibility to extremely disagree helps them make the switch to better fitness values, as it can be noticed in the median part of the graphic. All results show without any doubt that there is either a marginal improvement or a major one. Through partial disagreements the exploitation is increased and through extreme disagreements exploration gets a new twist. This proves empirically that adding disagreements can do no harm to any PSO, yet it can only improve it.
Particle Swarm Optimization with Disagreements Table 2. Benchmark results for n = 10 dimensions (F21 and F5 )
Algorithm SPSO SPSOD6σ PSO-VG PSO − VGD6σ
s 25 50 25 50 25 50 25 50
5.654 3.858 6.462 2.348 2.322 3.811 1.777 2.894
F21 Mean Std. dev. −29 x 10 9.823 x 10− 29 −22 x 10 8.718 x 10−22 x 10−29 9.634 x 10−29 x 10−22 4.057 x 10−22 x 10−28 2.019 x 10−28 x 10−29 7.854 x 10−29 x 10−28 1.696 x 10−28 x 10−29 1.211 x 10−29
8.475 4.025 8.784 2.929 2.542 5.756 1.733 1.104
F5 Mean Std. dev. −42 x 10 1.758 x 10−41 −22 x 10 1.043 x 10−21 x 10−41 2.070 x 10−40 x 10−22 7.038 x 10−22 x 10−73 1.248 x 10−72 x 10−29 1.662 x 10−28 x 10−73 7.563 x 10−73 x 10−28 2.775 x 10−28
Table 3. Benchmark results for n = 30 dimensions (F2 and F14 )
Algorithm SPSO SPSOD6σ PSO-VG PSO − VGD6σ
s 25 50 25 50 25 50 25 50
F2 Mean Std. dev. 34.883 26.412 48.664 35.162 35.597 47.031 42.036 29.311 39.156 25.735 46.586 38.982 36.424 25.265 43.097 27.72
F14 Mean Std. dev. 78.644 19.384 61.737 13.837 76.053 21.463 58.556 17.989 146.764 51.717 101.563 22.511 146.289 36.213 100.086 23.657
Table 4. Benchmark results for n = 30 dimensions (F21 and F5 )
Algorithm SPSO SPSOD6σ PSO-VG PSO − VGD6σ
s 25 50 25 50 25 50 25 50
F21 Mean Std. dev. 1012.220 3371.174 426.382 1166.260 291.037 1102.573 369.314 902.364 6391.002 5902.578 6090.143 6295.384 5774.600 5308.191 3820.831 4855.517
F5 Mean Std. dev. 258.254 697.851 125.508 436.200 174.206 581.953 121.468 418.583 2052.589 2171.947 2838.752 2483.361 2029.044 1656.979 1891.053 2478.797
53
54
A. Lihu and S ¸ . Holban
Fig. 2. Convergence graph for F21 (30 dimensions; s = 25). Comparing in pairs, it is obvious that PSOD variants have better convergence than their original PSO counterparts.
Fig. 3. Multi-run convergence graph for F2 (10 dimensions; s = 50). In the median part of the graph PSODs make a good turn toward a better convergence and a better final solution.
8
Conclusion
We introduced a new metaphor in PSO that models disagreements between social groups, and starting from it we implemented and tested a disagreement operator that is based on the normal distribution: the 6σ-PSOD operator. Our tests have shown that Particle Swarm Optimization with Disagreements, under the considered form of the 6σ-PSOD operator, is a beneficial enhancement
Particle Swarm Optimization with Disagreements
55
to any PSO because it can improve results when solving multi-modal and/or difficult plateau functions. This paper only introduces the new idea with preliminary results. Further work is required to develop, analyze and test new PSOD operators. Acknowledgments. This work was developed in the frame of PNII-IDEI-PCEID923-2009 CNCSIS – UEFISCSU grant and was partially supported by the strategic grant POSDRU 6/1.5/S/13-2008 of the Ministry of Labor, Family and Social Protection, Romania, co-financed by the European Social Fund – Investing in People.
References 1. Kennedy, J., Eberhart, R.C.: Particle Swarm Optimization. In: Proceedings of IEEE International Conference on Neural Networks, pp. 1942–1948 (1995) 2. Bergh, F.: An Analysis of Particle Swarm Optimizers (PhD thesis). University of Pretoria, Pretoria (2001) 3. EvA2 Project Homepage, http://www.ra.cs.uni-tuebingen.de/software/EvA2 (accessed in January 2011) 4. Shi, Y., Eberhart, R.: A Modified Particle Swarm Optimizer. In: IEEE International Conference of Evolutionary Computation (1998) 5. Clerc, M., Kennedy, J.: The particle swarm - explosion, stability, and convergence in a multidimensional complex space. IEEE Transactions on Evolutionary Computation 6, 58–73 (2002) 6. Xie, X.-F., Zhang, W.-J., Yang, Z.-L.: Dissipative particle swarm optimization. In: Proceedings of the Congress of Evolutionary Computation, Honolulu, HI, USA, pp. 1456–1461 (2002) 7. Chen, X., Li, Y.: A Modified PSO Structure Resulting in High Exploration Ability With Convergence Guaranteed. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics 37(5), 1271–1289 (2007) 8. Chen, X., Li, Y.: Enhance Computational Efficiency of Neural Network Predictive Control Using PSO with Controllable Random Exploration Velocity. In: Liu, D., Fei, S., Hou, Z.-G., Zhang, H., Sun, C. (eds.) ISNN 2007. LNCS, vol. 4491, pp. 813–823. Springer, Heidelberg (2007) 9. Chen, X., Li, Y.: On Convergence and Parameters Selection of an Improved Particle Swarm Optimization. International Journal of Control, Automation, and Systems 6(4), 559–570 (2008) 10. Pedersen, M.E.H., Chipperfield, A.J.: Simplifying particle swarm optimization. Applied Soft Computing 10, 618–628 (2010)
PSOslope: A Stand-Alone Windows Application for Graphical Analysis of Slope Stability Walter Chen1 and Powen Chen2 1
Dept. of Civil Engineering, National Taipei University of Technology, Taipei, Taiwan
[email protected] 2 Dept. of Civil Engineering/Institute of Information and Logistics Management, National Taipei University of Technology, Taipei, Taiwan
[email protected]
Abstract. Landslide is an increasing problem and a cause for concern in densely populated areas. In addition to field studies and laboratory experiments, engineers also embrace computer technology to find better solutions and to achieve better landslide analysis. Traditionally, the main analysis framework is the limit equilibrium analysis, in which the state of limit equilibrium in the target slope is assumed to be reached along the entire sliding surface at the same time of failure. However, the assumption of circular sliding surfaces would prevent the search of non-circular sliding surfaces with lower factors of safety. To address this problem, particle swarm optimization (PSO) is implemented in this study using a computer program written in C# to automatically discover the optimal results in the target function. The results show that the PSO-based approach offers many interesting outcomes. Keywords: Slope stability, sliding surfaces, landslides.
1 Introduction Landslide is a naturally occurring disaster that occurs in all part of the world. In remote locations, landslide is a part of natural geological process causing little or no damage to human beings. However, when landslide takes place in populated areas, it can affect neighborhoods, communities, and cities causing large casualties and damage to infrastructures. With the world’s rapid population growth and the current optimistic economic development trend, people are migrating to cities in search of a better life. Landslide is therefore an increasing problem and a cause for concern in densely populated areas near mountains such as the Taipei basin in Taiwan, where the Taipei city is located. EM-DAT, the international disaster database was created by the WHO Collaborating Centre for Research on the Epidemiology of Disasters (CRED) and the Belgian Government in 1988 tracking major disasters in the world from 1900 to present [1]. There are 12 disaster types and more than 30 sub-types in the database, and landslides are classified under the “mass movement dry” or the “mass movement wet” categories. As an example of the seriousness of the landslide problem, Table 1 shows the Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 56–63, 2011. © Springer-Verlag Berlin Heidelberg 2011
PSOslope: A Stand-Alone Windows Application for Graphical Analysis
57
top 10 most important mass movement wet disasters for the period 1900 to 2011 sorted by the numbers of persons killed at the country level. It is worth noting that two of the top 10 most deadly landslides happened in the last five years and both of them took place in Asia. Table 1. Top 10 most deadly landslide disasters (mass movement wet) from 1900 to 2011. Landslide disasters classified under the category of mass movement dry are not included in this table. Country Soviet Union, Landslide Peru, Landslide Honduras, Landslide Italy, Landslide China P Rep, Landslide Philippines, Landslide India, Landslide Colombia, Landslide Peru, Landslide China P Rep, Landslide
Date 1949 12/1941 20/09/1973 9/10/1963 7/08/2010 17/02/2006 1/10/1968 27/09/1987 18/03/1971 23/03/1934
No Killed 12000 5000 2800 1917 1765 1126 1000 640 600 500
Created on: Jan-2-2011. - Data version: v12.07 Source: "EM-DAT: The OFDA/CRED International Disaster Database www.em-dat.net - Université Catholique de Louvain - Brussels - Belgium"
2 Slope Stability Analysis In order to combat the threat of landslides in landside-prone areas, efforts are being made to understand the mechanism of earth movement and more recently the role plants play in preventing shallow landslides and surface erosions [2]. In addition to field studies and laboratory experiments, engineers also embrace computer technology to find better solutions and to achieve better landslide analysis. Traditionally, the main analysis framework is the limit equilibrium analysis, in which the state of limit equilibrium in the target slope is assumed to be reached along the entire sliding surface at the same time of failure. More often than not, the sliding surface is further assumed to be circular for homogeneous and isotropic soils. Given the sliding boundary and the soil properties, both the driving forces (from gravity) and the resistance forces (from soil cohesion and friction) can be calculated, and the factor of safety (FS) of the given slope is defined as: FS =
Resistance Force Driving Force
(1)
The FS is the de facto criteria used in assessing the stability of a slope. To remain stable, the FS of a slope has to be greater than one and is normally in the range of 1.1-1.5 to account for the uncertainty in the analysis and the rise of groundwater table or the possible additional earthquake force. To complete the analysis, the only thing left is to randomly or systematically select many circular arcs that pass through the slope and to locate the one with the lowest factor of safety (FS). The resulting sliding
58
W. Chen and P. Chen
surface of the lowest FS is the critical sliding surface and is considered to be the location where the failure takes place. However, the assumption of circular sliding surfaces would prevent the search of non-circular sliding surfaces with even lower FS. To address this problem, particle swarm optimization (PSO), an artificial intelligence technique for automatically discovering the optimal result in the target function, is implemented in this study using a computer program written in C# as discussed in the following sections.
3 PSO Formulation and Application Development Particle Swarm Optimization (PSO) is an artificial intelligence method used to simulate the social behaviors of a group of animals such as birds and fishes and was proposed by Eberhart and Kennedy [3-4]. The basic idea is to consider a group of birds (agents or particles as referred to in this study) searching for the food (target or the minimum value of the optimization function as referred to in this study) in a 2-D space. Each bird (particle) remembers the closest point to the food (minimum value of the optimization function) that it has experienced before (called pbest) as well as the closest point to the food that any bird has experienced before (called gbest). Because the agents in the group exchange information continuously in order to achieve the common goal, the wisdom of crowds soon leads the group to converge on the target using the simple equation below: v = v + 2 * r1 * (pbest - x) + 2 * r2 * (gbest – x)
(2)
where v and x are the velocity and the position of the individual agent respectively, and r1 and r2 are random numbers. In this study, PSO is used to solve the optimization problem in 2-D slopes. The goal is to determine the location of the sliding surface (arc or line segments) that has the lowest value of FS. To implement a solution using computer programs, a Windows stand-alone application is developed using Microsoft Visual C# in this study as shown in Figure 1, and the application is named PSOslope. When PSOslope is executed, a graphical user interface (GUI) will appear which can be roughly divided into two parts: the upper part shows the X and Y coordinates and a graphical representation of the slope profile, whereas the lower part provides input boxes to control the various parameters of the application. The input boxes can be further divided into five groups based on their intended functions. The first group from the left controls the definition of the slope profile. Four points (with X and Y coordinates) are allowed to define a given slope from left to right. Each time a different number is entered to the input boxes, the slope profile in the upper part of the window will be refreshed and redrawn immediately. The second group of input boxes provides the initial values of the PSO search algorithm. For slope stability analysis, it simply defines the initial sliding surface using a circular arc, and all of the particles are located along this arc. The circular arc is a part of a circle whose center lies above the slope. The numbers to be filled into the input boxes are the X and Y coordinates of the center and the radius of the circle. If the user finds the circular sliding surface to be too restrictive, there is also a check box in this group to enable the random selection of the initial sliding surface when it is checked.
PSOslope: A Stand-Alone Windows Application for Graphical Analysis
59
Fig. 1. PSOslope is a stand-alone program for slope stability analysis using the PSO technique. Launching the program will display a GUI window with five groups of input boxes on the lower part of the window to control the parameters of the application: slope profile, initial trial, soil properties, swarms, and PSO algorithm. The drawing on the upper part of the window represents the slope and will be refreshed and redrawn continuously during the program’s execution.
The third group of input boxes presented to the user is the soil properties group. The soil that forms the slope is considered to be homogeneous and its shear strength parameters (cohesion and friction angle) and unit weight are entered here. Note that the metric units are used in this program. Using the ordinary method of slices, the final equation of the FS of the slope can be derived [5] from equation (1) and becomes equation (3):
FS =
∑ [ci li + Wi cos α i tan φ ] ∑ Wi sin α i
(3)
where c = cohesion, ϕ = friction angle, l = the length of the slice base, α = the angle of the slice base, and W = the soil weight of the slice. The fourth group of input boxes is used to specify parameters related to swarms or particles. The start and end boxes denote the left-most and the right-most positions,
60
W. Chen and P. Chen
respectively. Within this range, the slope is divided into some number of equal-width slices. The number is controlled by the input box labeled “slices.” The user can also specify the number of lines (i.e., the number of agents) and the number of iterations used in searching of the optimal solution (i.e., the minimum value of FS). Finally, the last group of input boxes is used to specify the initial velocity, the momentum, and the coefficients of pbest and gbest used in the PSO equations. Pressing the start button will initiate the computation, and the screen will be refreshed and redrawn continuously. The user will notice many colored lines (representing the sliding surfaces) moving up and down in the slope until the optimal solution is found or the maximum number of iterations is reached. This interactive display of the searching process gives the user a very good visual cue and impression of the underlying activities of computation, which also sets this program apart from other programs.
4 Verification Assessment The PSOslope program is checked to ensure the computational implementation is correct, and it can be applied to the analysis of real slopes. A spreadsheet program (Figure 2) is written to verify the computational results of PSOslope. The correctness of the spreadsheet program is in turn verified by a textbook example. The necessary two-step process is due to the fact that the PSOslope program only seeks out the critical sliding surface. It does not compute the FS of a pre-defined sliding plane. Therefore, the correctness of the PSOslope program to perform slope stability analysis and to compute the FS has to be checked indirectly. In this study, the authors wrote a spreadsheet program using equation (3) to compute the FS of the example 17-5 in reference [5], and found the results to be identical. Then, the PSOslope program was used to analyze a different slope. After the minimum FS was found by PSOslope, the coordinates of the critical sliding surface were outputted to a text file, and the text file was imported into the previous spreadsheet program to compute the corresponding FS. Both the PSOslope and the spreadsheet produced the same results.
Fig. 2. A spreadsheet program is written to verify the computational results of PSOslope. The correctness of the spreadsheet program is in turn verified by a textbook example.
PSOslope: A Stand-Alone Windows Application for Graphical Analysis
61
5 Computational Findings and Discussion After the computational implementation of PSOslope was verified, it was then possible to explore the answers obtained by the program. For comparison purposes, the target slope (Figure 1) was first analyzed by the STABL program developed by Purdue University to obtain a reference FS of 1.957. Recall from previous sections that the PSO algorithm no longer restricts the sliding surfaces to be circular. As a result, PSOslope was able to converge to solutions with unexpected shapes as shown in Figures 3, 4, and 5 (FS = 1.680 to 1.871) in addition to the usual circular shape as shown in Figure 1. In fact, because of the complexity of the object function (equation 3), there seems to be many local minimum solutions that can be discovered by the PSO algorithm, and Figures 3, 4, and 5 are not isolated cases. Rather, each of them represents a group of solutions with similar shapes. What's more, sometimes the entire minimal FS searching process could fall apart under unfavorable conditions (unlucky random numbers) as illustrated in Figure 6, and the computation simply failed to converge to a stationary value and produced a large negative FS. As the slope under consideration is sloping to the left, the solutions with negative FS values are easy to be ruled out because they would represent the calculated stability values if the slope were sliding (or pushed) to the right. In contrast, the solutions characterized by Figures 3, 4, and 5 seem possible at first glance. Does it imply that every slope like this one may contain many possible local optimal solutions that haven’t been carefully examined? Are these solutions not “kinematically admissible” as suggested by some researchers [6]? What if the sliding surfaces in Figures 3, 4, and 5 are further smoothed to remove the sharp corners (points) where derivatives do not exist? To answer these questions and to determine whether a slope movement is kinematically admissible seems to require more investigations of the different types of sliding surfaces. Since there is yet to be a rigorous proof of the “kinematically admissible” assertion, it is probably better to avoid drawing any conclusions based on intuition alone and defer judgment until more study results become available.
Fig. 3. Possible type of sliding surface #1
Fig. 4. Possible type of sliding surface #2
62
W. Chen and P. Chen
Fig. 5. Possible type of sliding surface #3
Fig. 6. Computation fails to converge to a stationary value
6 Summary and Conclusions Around the world and in Taiwan, there are so many landslide disasters occurring every year that the thorough understanding of the landslide mechanism is considered as one of the most actively researched upon subjects in geotechnical engineering. With so many researches and case studies, the ability to integrate the research findings and explore novel options may be the most critical determinant of what can be achieved working together in this particular research field. In this paper, the authors investigated the possibility of using PSO to better determine the location of sliding surfaces. A computational solution based on the PSO algorithm under the analysis framework of limit equilibrium was implemented using C#, and a stand-alone Windows application (PSOslope) was developed for the graphical analysis of slope stability (calculation of FS). In addition, a spreadsheet program was written and a textbook example was used to verify this study’s computational results. The authors further compared the answers obtained by PSOslope with those obtained by Purdue University’s STABL program. The results indicated that the PSO-based approach offered many surprising outcomes and interesting issues to be further studied. For example, of particular significance in the light of this study are the choice of parameters and the sensitivity of results in the PSO model. It is believed that the interactive display of PSOslope will provide users immediate feedback on their analysis (not available in the past), and therefore will become a valuable tool in the future analysis of slope stability problems. Acknowledgments. This study was partially supported by grant numbers NSC 992218-E-027-008, NSC 98-2221-E-027-095, and NSC 97-2221-E-027-091 from the National Science Council of Taiwan (ROC).
PSOslope: A Stand-Alone Windows Application for Graphical Analysis
63
References 1. EM-DAT, The International Disaster Database, http://www.emdat.be/ 2. Chen, W.W., Lin, J.-T., Lin, J.-H., Shen, Z.-P.: Development of the Vegetated Slope Stability Analysis System. J. of Software Engineering Studies 4(1), 16–25 (2009) 3. Kennedy, J., Eberhart, R.: Particle swarm optimization. In: Proc. IEEE International Conf. on Neural Networks, pp. 1942–1948. IEEE Service Center, Los Alamitos (1995) 4. Eberhart, R., Kennedy, J.: A new optimizer using particle swarm theory. In: Proc. Sixth Symposium on Micro Machine and Human Science, pp. 39–43. IEEE Service Center, Los Alamitos (1995) 5. Salgado, R.: The Engineering of Foundation. McGraw Hill, Boston (2008) 6. Cheng, Y.M., Li, L., Chi, S., Wei, W.B.: Particle Swarm Optimization Algorithm for the Location of the Critical Non-circular Failure Surface in Two-dimensional Slope Stability Analysis. Computers and Geotechnics 34, 92–103 (2007)
A Review of the Application of Swarm Intelligence Algorithms to 2D Cutting and Packing Problem Yanxin Xu, Gen Ke Yang, Jie Bai, and Changchun Pan Department of Automation, Shanghai JiaoTong University and Key Laboratory of System Control and Information Processing, Ministry of Education of China, 800 DongChuan Rd, MinHang District, Shanghai, China, {iamxuyanxin,gkyang,baijie,pan_cc}@sjtu.edu.cn
Abstract. Cutting and packing (C & P) problem is to allocate a set of items to larger rectangular standardized units by minimizing the waste. Bin packing, strip packing and cutting stock problem is well-known classical C & P problem. An overview is provided of several meta-heuristics algorithms of swarm intelligence from the literature for the 2D C & P problem. The objective of this paper is to present and categorize the solution approaches in the literature for 2D regular and irregular C & P problem. The focus is hereby on the analysis of the methods and application of swarm intelligence algorithms. Keywords: cutting and packing problem, swarm intelligence, ACO, PSO.
1 Introduction Cutting and packing (C & P) problems are optimization problems concerned with finding a good arrangement of multiple items in larger containing regions. There are many classic cutting and packing problems, including the cutting stock problem, the bin packing problem, the strip packing problem etc. This type of problem arises in a wide variety of industries, such as garment manufacturing, sheet metal cutting, furniture making and shoe manufacturing. Figure 1 provides an example of a layout from the garment manufacturing industry. High material utilization is of particular interest to mass production industries since small improvements of the layout can result in large saving of material and considerably reduce production cost. The objective of the packing process is to maximize the utilization of material. The manual generation of layouts is costly in terms of man-power hence methods for the automation of packing are being sought. In this paper, we focus our attention on meta-heuristic methods to solve the 2D C & P problem. Particular emphasis is put on solutions involving swarm intelligence, which is increasingly be utilized in combinational optimization problems. In the last two decades, the computational researchers have been increasingly interested to the natural sciences, and especially biology, as source of modeling paradigms. Many research areas are massively influenced by the behavior of various biological entities and phenomena. It gave birth to most of population-based Meta-heuristics such as Ant Colony Optimization (ACO), Particle Swarm Optimization (PSO) etc. They modeled Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 64–70, 2011. © Springer-Verlag Berlin Heidelberg 2011
A Review of the Application of Swarm Intelligence Algorithms
65
the insect social behaviors such as ant, fish, bird, bee etc. They could be regarded as belonging to the category of intelligent optimization tools used to solve a computational and complex problem in different areas [1].
Fig. 1. An example layout from garment manufacturing
The 2D C & P problem has been shown to be NP-hard and is therefore intrinsically difficult to solve (Garey and Johnson 1979 [2]). Therefore, many solution methods have been proposed for the problem, but so far an algorithm that would yield the optimum solution might not exist; thus, general methods are intended to find an acceptable approximate solution in short time. Many approaches have been proposed in the literature. A recent survey of the regular shapes packing problems were given by Lodi, Martello, and Monaci (2002) [3], the more complete revision has been presented in Hopper 2000 [4]. However in the last ten years the interest in this subject has increased, especially in swarm intelligence aspect, as well as the number of papers presenting new approaches and improvements to existing strategies. We review here the most recent results in this research area. This paper is organized as follows: in the next section, we give an introduction of the 2D C & P problem. In section three, we review the methods based on metaheuristics, especially the swarm intelligence on 2D C & P problem. Section four is related to discussion about analysis and comparatives on the introduced methods. Finally, section five presents the conclusion and future trends in this research area.
2 Two-Dimensional Cutting and Packing Problem C & P problem include cutting and packing problem respectively. In the case of packing problems the large objects are defined as empty and need to be filled with small items. Cutting problems are characterized by large objects that need to be cut up into small items. Dyckhoff (1990) [5] emphasizes the strong relationship between cutting and packing problems. In this sense cutting stock problems can be translated into packing problem. Therefore, we focus on packing problem in the following sections. C & P problem can be classified according to different characteristics of objects, such as the shape, the number, and their orientation. Dyckhoff proposed a useful classification of C & P problems, which was revised recently by W¨ascher et al [6]. Their classification partitioned the problems by dimensionality, objective of the assignment,
66
Y. Xu et al.
large objects and small items. The new typology provides a useful progression towards a consistent nomenclature for cutting and packing problems [7]. Concerning the geometry of objects and items, two types of problems can be distinguished: regular (rectangles, circles) and irregular (asymmetries and concavities) C & P problem. Furthermore, two main types of packing problem, strip packing and bin packing, can be distinguished depending on the type of large object. In the paper and textile industry the raw material is available in the form of rolls. Hence the packing process aims at reducing the height of the layout. Bin packing refers to packing of multiple bins and can be found where the stock material is available in the form of sheets. The objective usually is to find the set of bins to accommodate all parts of the order list under minimization of the total material used. The model of the 2D rectangular strip packing problem can be formulated as follows:
Minimize H Subject to xi wi d W , i I ,
(1)
yi hi d H , i I ,
(2)
xi wi d x j , or , x j w j d xi , or ,
(3)
yi hi d y j , or , y j h j d yi , i, j I , i z j ,
(4)
xi , yi t 0, i I .
(5)
Where, H is the Height of the strip, which is minimized, W is a fixed width of the strip. Each object i has dimensions hi (height) and wi (width), i=1,……n. The Cartesian coordinates of (xi,yi) is the location of the bottom left corner. A feasible solution must fulfill the following constraints: the object must be within the rectangular area, and must not overlap with any other object [8]. The solution method of C & P problem can be classified into complete and approximation approaches. The complete approaches include mathematical programming, such as linear programming, dynamic programming, column generation and branch and bound etc. The approximation approaches are mainly heuristics, which are some heuristic packing rules, and meta-heuristics such as ACO and PSO etc. Since search space of C & P problem is increasingly larger and larger, in order to search for their global optimal solutions, complete approaches take too much computational time to solve the problem. Various meta-heuristic algorithms, especially swarm intelligence algorithms, have been adopted as optimization tools to find good solutions fast. In recent years, it has become evident that the skilled combination of a meta-heuristic with other optimization techniques, a so called hybrid meta-heuristic, can provide a more efficient behavior and a higher flexibility when dealing with real-world and large-scale problems [9]. Some of the hybrid meta-heuristics approach will be introduced in the following section.
A Review of the Application of Swarm Intelligence Algorithms
67
3 Applications of Swarm Intelligence Algorithms in 2D Cutting and Packing Problem The 2D C & P problem is NP hard due to the combinatorial explosion encountered as the problem size increases. As a result, published solution approaches focus on heuristic and meta-heuristics methodologies. Meta-heuristics are general frameworks for heuristics in solving combinatorial optimization problems. Although there are many different solution approaches presented in the literature, there appear to be two key strategies for representing and searching the solution space. The first approach is to represent the solution as an ordered list of pieces and apply a placement rule to construct the solution. The second approach represents the solution as a physical layout on the stock sheet and moves pieces within the layout [10]. This paper focuses on the former strategy. The former strategy is dependent on two critical characteristics of the algorithm; the placement rule and the placement order of the pieces. It’s proved that better solutions are obtained by performing local search over the permutation and repeatedly constructing solutions. The majority of these literature meta-heuristics concentrates on hybrid algorithms, where a meta-heuristics is combined with a heuristic placement routine. The sequence of the item to be packed is usually constructed as a sequence chromosome, which is decoded via a packing heuristic for generating a packing plan to be evaluated against the objective function to obtain the quality of the solution. The main meta-heuristics utilized in the first approach are EA, TS, SA, ACO, and PSO etc. The applications of these meta-heuristics are introduced respectively as followed. 3.1 Applications of Ant Colony Algorithms ACO is one of the most recent techniques for approximate optimization. The development of these algorithms was inspired by the observation of ant colonies. The inspiration for ACO is the ants’ foraging behavior, and in particular, how ants can find shortest paths between food sources and their nest. The key to this ability lies in the fact that ants leave a pheromone trail behind while walking. The pheromone trails will guide other ants to the food source. This characteristic of real ant colonies is exploited in ACO algorithms in order to solve, for example, discrete optimization problems [11]. It is widely applied in integer linear programming, continuous optimization problem and clustering problem etc. Ducatelle and Levine 2002 [12] adopted ACO to solve bin packing and employed artificial ants to build solutions stochastically, with heuristic information obtained by First Fit Decreasing (FFD) and an artificial pheromone trail, which is encoded by the favorability of having two items in the same bin. This approach may get steady performance and a good solution even not finding the optimum. However, its computing time is longer than others. As a result, Levine and Ducatelle 2004 [13] improve the performance by combing ACO and an iterated local search approach, since a local search algorithm can greatly improve the performance of an ACO approach. The hybrid approach they proposed to the bin packing is quite generic, and could be capable of being adapted to solve similar grouping problems.
68
Y. Xu et al.
Thiruvady[14] employed a hybrid approach by combining ACO and Bottom-LeftFill (BLF) to solve rectangular strip packing problem. The ordering and orientations of items are generated by ACO and the items are allocated one by one with BLF heuristic according to the ordering and orientations given by ACO. They compared and analyzed four combinations between ordering and orientation. The results showed that packing items with learning ordering and orientations obtained by ACO outperformed the other combinations. Yi-Chun Xu. et.al [15] proposes a constructive heuristic to pack weighted items in a circular container. They use an ant-based algorithm and optimize the packing order with the base of this heuristic. In their ant algorithm, encode of pheromone matrix considers the favorability of choosing an item and the product of the size and the weight of the next packed item. By doing so, large and heavy items have higher priority and this is beneficial for the packing performance. They also compared two versions of the ant-based algorithm, AS and Min-Max AS, with existing approaches, such as the genetic algorithm, and the hybrid PSO. However, since their research only focus on the regular objects (circle and rectangle), it’s a problem for them whether their approach can obtain good performance for irregular shaped objects. 3.2 Applications of Particle Swarm Optimization PSO is firstly introduced by Kennedy and Eberhart in 1995, which was originated from the simulation of behavior of bird flocks. In PSO a number of simple entities— the particles—are placed in the search space of some problem or function, and each evaluates the objective function at its current location. Each particle then determines its movement through the search space by combining some aspect of the history of its own current and best locations with those of one or more members of the swarm, with some random perturbations. The next iteration takes place after all particles have been moved. Eventually the swarm as a whole, like a flock of birds collectively foraging for food, is likely to move close to an optimum of the fitness function [16]. It is widely applied in continuous optimization, combinational optimization problem and clustering problem etc. The applications of PSO are considerably less in 2D C & P problem. D. S. Liu et al 2006 [17] presented a two-objective mathematical model with multiple constraints for two dimensional bin packing problem and solve the problem with a hybrid multiobjective PSO algorithm. They choose BLF heuristics as the decoding heuristic since it has the ability to fill in the gaps in the partial layout. They created variable length data structure and specialized mutation operator to make hybrid multi-objective PSO algorithm as a robust search optimization algorithm. Liu et al 2008 [18] made some improvements on the basis of Liu et al 2006 and proposed a multi-objective model and a PSO-based algorithm which incorporates EA concepts such as the use of mutation operator as a source of diversity. With the use of hybrid approach combining evolutionary PSO and BLF heuristic, they solve bin packing problem effectively and efficiently. The performance shows their method outperforms the one in Liu et al 2006 and is also applicable to single-objective bin packing problem.
A Review of the Application of Swarm Intelligence Algorithms
69
4 Discussion Since a couple of researches have adopted meta-heuristic algorithms such as EA, GA, SA, TS and ANN to solve C & P problems, swarm intelligence algorithms are relatively less utilized to this field. However, swarm intelligence algorithms are beginning to attract more and more interest of researchers for their characteristics. The goal of swarm intelligence is the design of intelligent multi-agent systems by taking inspiration from the collective behavior of social insects such as ants, termites, bees, wasps, and other animal societies such as flocks of birds or fish schools. ACO has been applied in almost all kinds of C & P problems including strip packing, bin packing and irregular packing problems. The principle of ACO is positive feedback mechanism and ant colony can be regarded as a reinforcement learning system. Its character of positive feedback and synergy bring ACO good performance in distributed system. PSO is only applied in bin packing problem so far. Although PSO is still lack of rigorous mathematical foundation in mathematical analysis, especially in convergence analysis, the characteristics of fast convergence and parallel computing make PSO widely applied in engineering applications. Although ACO and PSO get relatively less attention for their date births, they are still widely applied in many respects of optimization problems for their advantages introduced above. However ACO and PSO also have some shortcomings in some respects. Almost all the articles introduce above make a comparison between ACO or PSO and EA, EP or GA, the other meta-heuristics. From the results of comparisons, we can find that swarm intelligence and other meta-heuristics have their own advantages respectively. Swarm intelligence algorithms outperform other meta-heuristics such as EA, GA, EP etc in some cases and vice versa. They may also get similar performance in some cases. It’s easy to understand that the use of any algorithm has its conditions and background. Therefore, it’s a trend to combine different algorithm to give full play to their advantage and make up the deficiency. Thus the hybrid algorithm, such as hybrid algorithm with ACO and GA, is able to get better performance than any single algorithm, which get proof from the articles introduced above.
5 Conclusion This paper presents an overview of the recent advances of swarm intelligence algorithms in solving the two-dimensional cutting and packing problem. Some articles about C & P problems which adopted ACO and PSO are introduced in this paper. The preliminary discussion about swarm intelligence and other meta-heuristics algorithms is also proposed. It is not the aim of this review to try and cover all the various elements discussed in the literature relevant to cutting and packing problem. The aim of this review is to concentrate on the elements in the literature that are relevant to swarm intelligence algorithms. We are interested in Meta-heuristics, including swarm intelligence methods. In order to increase the e1ectiveness of the meta-heuristics approaches, especially those based on swarm intelligence we can then conclude for our further researches will both
70
Y. Xu et al.
focus on designing and utilizing more swarm intelligence meta-heuristics and improve the performance of existed ones to solve cutting and packing problems. Acknowledgments. The work of this paper was supported by National Natural Science Foundation of China, No.61074150, and No.60574063.
References 1. Bitam, S., Batouche, M., Talbi, E.g.: A survey on bee colony algorithms. In: The 24th IEEE Parallel & Distributed Processing Symposium Workshops (IPDPSW), Georgia, pp. 19–23 (2010) 2. Garey, M., Johnson, D.: Computers and Intractability: A Guide to the Theory of NPCompleteness. W. H. Freeman and Company, New York (1979) 3. Lodi, A., Martello, S., Monaci, M.: Two-dimensional packing problems: A survey. European Journal of Operational Research 141, 241–252 (2002) 4. Hopper, E., Turton, B.C.H.: A review of the application of meta-heuristic algorithms to 2D strip packing problems. Artificial Intelligence Review 16, 257–300 (2000) 5. Dyckhoff, H.: A typology of cutting and packing problems. European Journal of Operational Research 44, 45–159 (1990) 6. Wäscher, G., Haußner, H., Schumann, H.: An improved typology of cutting and packing problems. Eur. J. Oper. Res. 183, 1109–1130 (2007) 7. Bennell, J.A., Oliveira, J.F.: A tutorial in irregular shape packing problems. Journal of the Operational Research Society 60, 93–105 (2009) 8. Riff, M., Bonnaire, X., Neveu, B.: A revision of recent approaches for two-dimensional strippacking problems. Engineering Applications of Artificial Intelligence 22, 823–827 (2009) 9. Hopper, E., Turton, B.C.H.: An empirical investigation on meta-heuristic and heuristic algorithms for a 2d packing problem. European Journal of Operational Research 128, 34–57 (2001) 10. Bennell, J.A., Song, X.: A beam search implementation for the irregular shape packing problem. J. Heuristics 16, 167–188 (2008) 11. Blum, C.: Ant colony optimization: Introduction and recent trends. Phys. Life Reviews 2, 353 (2005) 12. Ducatelle, F., Levine, J.: Ant Colony Optimization for Bin Packing and Cutting Stock Problems. In: UK Workshop on Computational Intelligence, Edinburgh (2001) 13. Levine, J., Ducatelle, F.: Ant colony optimization and local search for bin packing and cutting stock problems. J. Oper. Res. Soc. 55, 705 (2004) 14. Thiruvady, D.R., Meyer, B., Ernst, A.T.: Strip packing with hybrid ACO Placement order is learnable. In: IEEE Congress on Evolutionary Computation, Hong Kong, pp. 1207–1213 (2008) 15. Xu, Y.C., Dong, F.M., Liu, Y., Xiao, R.B.: Ant Colony Algorithm for the Weighted Item Layout Optimization Problem. eprint arXiv:1001.4099 (2010) 16. Poli, R., Kennedy, J., Blackwell, T.: Particle swarm optimization: an overview. Swarm Intelligence Journal 1(1), 33–57 (2007) 17. Liu, D.S., Tan, K.C., Goh, C.K., Ho, W.K.: On solving multi-objective bin packing problems using particle swarm optimization. In: IEEE Congress on Evolutionary Computation, Vancouver, pp. 7448–7455 (2006) 18. Liu, D., Tan, K., Huang, S., Goh, C., Ho, W.: On solving multi-objective bin packing problems using evolutionary particle swarm optimization. European Journal of Operational Research 190, 357–382 (2008)
Inertia Weight Adaption in Particle Swarm Optimization Algorithm* Zheng Zhou1 and Yuhui Shi2 1 Dept. of Computer Scienceand Software Engineering, Xi’an Jiaotong-Liverpool University, Suzhou 215123, China
[email protected] 2 Dept. of Electrical and Electronic Engineering, Xi’an Jiaotong-Liverpool University, Suzhou 215123, China
Abstract. In Particle Swarm Optimization (PSO), setting the inertia weight w is one of the most important topics. The inertia weight was introduced into PSO to balance between its global and local search abilities. In this paper, first, we propose a method to adaptively adjust the inertia weight based on particle’s velocity information. Second, we utilize both position and velocity information to adaptively adjust the inertia weight. The proposed methods are then tested on benchmark functions. The simulation results illustrate the effectiveness and efficiency of the proposed algorithm by comparing it with other existing PSOs. Keywords: PSO, inertia weight, velocity information, adaption.
1 Introduction Particle Swarm Optimization (PSO) was first introduced by Kennedy and Eberhart in 1995[1][2]. PSO uses a simple mechanism that simulates swarm behavior in birds flocking to search for globally optimal solution. PSO has been rapidly developed in recent years due to its simplicity in concept and easiness in implementation. In PSO, a population of particles represents a group of candidate solutions to the problem to be solved. Each particle is associated with two vectors, the position , where D means , ,…, and the velocity vector , ,…, tor that the solution space is a D-dimensional space. The basic equations are usually given as follows: [1] [2]:
vid = w * vid + c1 * r1d * ( pBest id − x id ) + c 2 * r2 d * ( gBest id − x id ) xid = xid + vid
(1) (2)
In equation (1), w is known as inertia weight [3]; c1, c2 are acceleration coefficients; r1d and r2d are two random values in the range[0, 1]. *
This work is supported by National Natural Science Foundation of China under Grant No.60975080, and Suzhou Science and Technology Project under Grant No. SYJG0919.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 71–79, 2011. © Springer-Verlag Berlin Heidelberg 2011
72
Z. Zhou and Y. Shi
The inertia weight w was first introduced to linearly decrease [3] over generations as shown in equation (3).
w = wmax − ( wmax − wmin )
gen GENERATION
(3)
where gen is the current generation number and GENERATION is the maximum number of generations. The range of inertia weight w is [0.4, 0.9] which can adjust the local and global search ability [3] [4]. Another improvement is the introduction of constriction factor to PSO by M. Clerc [5]. The constriction factor replaces the equation (1) with equation (4) and (5).
vid = K [ w * vid + c1 * r1d * ( pBestid − xid ) + c2 * r2d * ( gBestid − xid )] K=
2 2 − ϕ − ϕ 2 − 4ϕ
, whereϕ = c1 + c 2 , ϕ > 4
(4) (5)
Where K is set to 0.729 and c1,c2are both 2.05. Adaptive PSO (APSO) was proposed by Z. Zhan and J. Zhang in 2009 [6]. In APSO, the inertia weight, acceleration coefficients is controlled automatically. Furthermore, an elitist learning strategy (ELS) is applied in convergence state to avoid being stuck into local optimal. The APSO utilized only the particles’ position information. As we knew, PSO is different from other evolutionary algorithms in that each individual (particle) is also associated with a velocity in addition to the position. Therefore, it is natural to believe that an adaptive PSO, which utilize both position and velocity information, maybe can improve PSO’ performance further. In this paper, first, we will introduce a method which borrows the idea in APSO except that the inertia weight will be adaptively adjusted based on velocity information instead of position information in APSO. The purpose of doing so is to verify whether velocity information alone can also be utilized to improve PSO’s performance. Then we will utilize both position and velocity information to adaptively adjust PSO’s inertia weight. The remaining paper is organized as follows, methods to adaptively control the inertia weight will be proposed in Section 2. In Section3, the PSO proposed will be tested and compared with other representative PSOs. Finally, conclusions are summarized in Section 4.
2 Adaptive Control of Inertia Weight 2.1 Methods in APSO As we borrowed the idea from APSO, we first present the process of APSO as follows [6]: Step 1: Initialize the particles’ position and velocity as in traditional PSOs. Step 2: For each particle i, calculate the mean distance to all the other particles by the equation (6) as below:
Inertia Weight Adaption in Particle Swarm Optimization Algorithm
N D 1 ( xik − x jk ) 2 ∑ ∑ N − 1 j =1, j ≠ i k =1 Where N is the number of particles and D is the number of dimension.
di =
73
(6)
Step 3: Set the global best particle’s mean distance to all the other particles as dg. Compare all di’s, find the maximum and minimum distances dmax and dmin. Then determine an “evolutionary factor” f as:
f =
d g − d min d max − d min
(7)
Step 4: Classify the value of f into four sets which represent the states of exploration, exploitation, convergence and jumping out. Step 5: Adjust the inertia weight by the equation (8), and adjust acceleration Coefficients in different state by the rules in table1.
w( f ) =
1 ∈ [0.4,0,9] 1 + 1.5e −2.6 f
(8)
Step 6: In the Convergence state, ELS approach is applied. Table 1. Strategies for control c1 and c2 State Exploration Exploitation Convergence Jumping-out
C1 Increase Increase slightly Increase slightly Decrease
C2 Decrease Decrease slightly Increase slightly Increase
The APSO is proved to enhance the performance of PSO in convergence speed and global optimality [6]. In APSO, the inertia weight is adjusted based on the position information. In the following section, a velocity-based adaptive inertia weight will be introduced to verify the usefulness of velocity information. 2.2 Adaption of Inertia Weight Based on Velocity The new method uses velocity information instead of the position information used in APSO. The mean velocity difference between each particle and all other particles can be calculated as in equation (9) which is similar to equation (6) in APSO.
di =
N 1 ∑ N − 1 j =1, j ≠i
D
∑ (v
ik
− v jk ) 2
(9)
k =1
Where N is the population size and D is the number of dimension. Then define a velocity-based evolutionary factor and inertia weight adaption by the equation (7) (8) used in APSO. For convenience, they are given as follows:
74
Z. Zhou and Y. Shi
f =
w( f ) =
d g − d min d max − d min
(10)
1 ∈ [0.4,0,9] 1 + 1.5e −2.6 f
In this paper, the w is kept in the range [0.4, 0.9] during the PSO process. 2.3 Adaptive Inertia Weight Based on Both Position and Velocity Information As mentioned above, we expect that by using both position and velocity information to adjust the inertia weight can make the PSO perform better. A method implements this goal is described as follows: Firstly, denote the position-based evolution factor in equation (8) and the velocitybased evolution factor in equation (10) as fp and fv, respectively. Then define a new hybrid evolutionary factor by set two weights wp and wv to fp and fv as in the following equation (11): f = wp* fp+ wv* fv
(11)
Adjust the inertia weight by the same equation as (8) as below:
w( f ) =
1 ∈ [0.4,0,9] 1 + 1.5e −2.6 f
The wp and wv can be set with different values. In our test, the wp and wv are both set to be 0.5, which means that the position and velocity information have the same influence on the inertia weight.
3 Experiments and Comparison 3.1 Benchmark Functions and Variants of PSOs Six benchmark functions are used for the test, which are listed in Table2. These functions are widely used to test the evolutionary functions [7]. Among these functions, f1, f2, f3 are unimodal functions and f4, f5, f6 are multimodal functions. For comparison, variants of PSOs are used in this paper. The GPSO is the one with linearly decreasing inertia weight from 0.9 to 0.4 proposed in [3]. The CFPSO is a PSO with constriction factor = 0.729 proposed in [5]. The APSO is proposed by Z. Zhan which was reviewed in Section 2 [6]. The last two PSOs are the adaptive inertia weight based on velocity information alone and based on both position & velocity information introduced in this paper, referred to as AIPSO (Adaptive velocity Inertia weight PSO) and AHPSO (Adaptive hybrid Inertia Weight PSO) respectively. For fairness of the test, the PSOs are with the population size of 20, dimensions of 30 and the same number of 2 10 FEs is used for the test functions. In order to reduce statistical errors, each function will be tested for 30 times under each PSO algorithm, and the mean results will be used for the purpose of comparisons.
Inertia Weight Adaption in Particle Swarm Optimization Algorithm
75
Table 2.Test Functions used in this paper Test functions ଶ ݂ଵ ሺݔሻ ൌ σ ୀଵ ݔ ݂ଶ ሺݔሻ ൌ σୀଵ ȁݔ ȁ ς ୀଵ ȁݔ ȁ ଶ ݂ଷ ሺݔሻ ൌ σ ୀଵሺσୀଵ ݔ ሻ ିଵ ݂ସ ሺݔሻ ൌ σୀଵ ሾͳͲͲ൫ݔାଵ െ ݔଶ ൯ ሺݔ െ ͳሻଶ ሿ ݂ହ ሺݔሻ ൌ σ ୀଵ െݔ ሺඥݔ ሻ
݂ ሺݔሻ
ଵ
σ ݔଶ െ ൌ ସ ୀଵ െ ς ୀଵ
൫ݔ Τξ݅൯
Search Space [-100,100]D [-10,10]D
fmin 0 0
Acceptance 0.01 0.01
Function name Sphere Schwefel’s P2.22 Quadric Rosenbrock
[-100,100]D [-10.10]D
0 0
100 100
[-500,500]D
-12569.5
-10000
Schwefel
[-600,600]D
0
0.01
Griewank
ͳ
3.2 Comparison and Discussion The solutions obtained by each PSO for different test functions are listed in Table 3.The boldface indicates the best results among the algorithms. The experiment results show that among GPSO, CFPSO, APSO and AIPSO, AIPSO can obtain the best solution on unimodal function f1,f2,f3, but on multimodal functions f4, f5, f6, AIPSO does not perform the best. Table 3. Search result comparison for variants PSOs Function f1 Mean f2 Mean f3 Mean f4 Mean f5 Mean f6 Mean
GPSO 1.20e-53 7.93e-34 4.13e-2 34.61 -9719.71 1.56e-2
CFPSO 4.47e-140 7.15e-30 3.85e-10 . -7038.52 5.81e-2
APSO 1.45e-150 5.13e-84 1.61e-10 3.49 -12596.5 1.66e-2
AIPSO 1.16e-159 7.07e-89 4.45e-11 11.64 -7326.27 1.56e-2
AHPSO 2.67e-159 2.19e-86 9.67e-11 9.14 -7348.93 1.21e-2
The results on uninodal functions indicate that the method proposed in this paper can improve the performance of PSO. In particular, the AIPSO perform best on unimodal functions f1,f2,f3, and the standard deviation of the solutions is the lowest while AHPSO outperforms the APSO but lose to AIPSO by a small difference. For multimodal functions, the AHPSO can obtain the best solution on f6but both AHPSO and AIPSO drop into local optimal on f4 and f5. For the comparison of the algorithms’ search speed, Table 4 lists the mean number of FEs (function evaluations) to obtain an acceptable solution. The CPU runtime is utilized to measure the computational process, because the PSOs used in this paper are different and some of them have extra calculations to increase the runtime. It can be seen that AHPSO cost the least runtime onunimodal functionsf1, f2and AHPSO is the fastest. On multimodal functionsf4,f5,f6, APSO cost the least CPU runtime and AHPSO ranked second on f4andf6. It should be noticed that the AIPSO and AHPSO did not reach the acceptable solution on f5and fall into local optimal.
76
Z. Zhou and Y. Shi Table 4. Number of FEs and mean run time needed to reach acceptable solution
Function f1 Mean FEs time(sec) f2 Mean FEs time(sec) f3 Mean FEs time(sec) f4 Mean FEs time(sec) f5 Mean FEs time(sec) f6 Mean FEs time(sec)
GPSO 106191 0.97 103225 1.02 135797 2.02 101533 0.91 90548 1.81 116235 1.39
CFPSO 199998 0.12 199981 0.22 199909 2.32 199995 0.99 ----11432 0.23
APSO 7099 0.11 7925 0.17 21164 0.98 5334 0.09 5159 0.12 7568 0.16
AIPSO 7063 0.11 7921 0.13 22172 0.99 8150 0.11 ----8081 0.17
AHPSO 6937 0.09 7343 0.11 22061 0.99 5360 0.09 ----7938 0.13
The comparison of FEs is much more interesting than CPU runtime. For instance, test on f1 tell us that the mean number of FEs of 106191, 199998, 7099, 7063,6937 are needed by GPSO, CFPSO, APSO , AIPSO and AHPSO to reach an acceptable solution, respectively. Among these data, AHPSO only uses 6937 FEs and CPU runtime of 0.09 seconds, which is the best performance among all the PSOs. In the above experiments, the results of GPSO, CFPSO, APSO, AIPSO and AHPSO are compared, we can see that the proposed adaptive inertia weight methods are efficient for PSO. The new PSOs outperform the other PSOs with a faster convergence speed and obtain better optimization results in most unimodal test functions but not the multimodal functions. The comparison among APSO, AIPSO and AHPSO should be specially focused. In general, AISPO and AHPSO perform much better on unimodal functions and APSO perform better on multimodal functions. As APSO has adaptive inertia weight, adaptive acceleration coefficients and a complex ELS approach to help to jump out of local optima, while AIPSO and AHPSO only uses an adaptive inertia weight, we can say that the result of AISPO and AHSPO is acceptable and the proposed method which uses velocity information or both position and velocity information to replace position information to adjust inertia weight in PSOs is promising. 3.3 PSOs with Elitist Learning Strategy (ELS) As the AISPO and AHPSO do not perform well on multimodal functions, we consider using Elitist Learning Strategy (ELS) as in APSO to helps PSO to jump out of local optimal in AIPSO and AHPSO. The details are given in the following. The APSO [6] has an ingenious method named Elitist Learning Strategy (ELS) to help the particle swarm to jump out of local optimal. The ELS gives a random velocity generated from Gaussian distribution to the global best particle to push it to run for a potentially better region in the convergence state. If the global best particle finds a better region, it will move there and all other particles will follow, otherwise the global best particle does not find a better place, it will not move and the global worst particle will move to this position.
Inertia Weight Adaption in Particle Swarm Optimization Algorithm
77
The merits of ELS have been studied by its introducers. After using this strategy, the proposed algorithms’ performances are improved on most multimodal functions, but the performance on unimodal functions will be slightly worse than the ones without ELS because the ELS actually add noise to the particle swarm. In the following experiment, we will implement ELS on AIPSO and AHPSO to see whether the algorithm can be enhanced. For simplicity, the ELS will work as follows: While (f<= 0.05 in 3 continuous generations) If (f<= 0.05in the next generation) The ELS will be applied. The new algorithms are run on f1, f2,f4, f5 for 30 trials. The mean solution gained by each algorithm and the mean FEs (function evaluations) to reach an acceptable solution are shown in Table 5. For comparison, the AIPSO and AHPSO’s testing result without ELS are also listed. So we can see that the uses of ELS and compare APSO, AIPSO and AHPSO in a relatively equitable situation. Table 5. Result of the algorithms with&without elitist learning strategy Function f1 f2 f4 f5
Mean FEs Mean FEs Mean FEs Mean FEs
APSO (has ELS) 1.45e-150 7099 5.13e-84 7925 3.49 5334 -12596.5 7568
AIPSO (no ELS) 1.16e-159 7063 7.07e-89 7921 11.64 8150 -7326.27 ---
AIPSO (with ELS ) 1.46e-150 8544 7.56e-84 8162 5.17 5488 -11261.7 10653
AHPSO (no ELS) 2.67e-159 6937 2.19e-86 7343 9.14 5360 -7348.93 ---
AHPSO (with ELS) 1.15e-150 7332 2.31e-84 7911 3.08 5396 -12596.5 6911
After utilizing the ELS approach to AIPSO and AHPSO, their performance on multimodal function f4 and f5 are obviously enhanced but brought down on unimodal function because ELS adds noise to the particles. Especially on f5, without ELS, the AIPSO and AHPSO cannot find an acceptable solution, but with ELS,AISPO perform much better than before and the AHPSO can find the global best solution. By comparing the search speed, we can find that the AIPSO and AHSPO with ELS cost much less FEs than before and become faster than APSO. In summary, with ELS, the AIPSO and AHPSO can outperform the APSO, which means that the velocity-based inertia weight and hybrid position & velocity inertia weight can enhance the PSO, the performance of AIPSO and AHPSO are better than APSO on most problems. These results meet our expectation that by utilizing velocity information, the PSO can be improved. 3.4 Monitoring of the Inertia Weight To monitor the behavior of the new inertia weight, we run AHPSO on Quadric function, and draw the time-varying f and inertia weight in figure 1.
78
Z. Zhou and Y. Shi
1
Inertia Weigt
0.9 0.8 0.7 0.6 0.5 0.4
Generation
Fig. 1.The time-varyinginertia weighton Quadric function
It can be seen from Figure.1 that during 1000 evolutionary generations, the w is large at the early stage, then decreases rapidly, after that PSO is seen to jump out, which lead to a large value of w, after that w drops until another convergence state. The behavior of the inertia weight suggests that the PSO with this inertia weight can find a potential optimal solution because the value of w reflects the evolutionary state and the PSO has the potential to jump out of local optimum, that is, the inertia weight has an abrupt rise after the convergence.
5 Conclusion In this paper, we proposed two methods to adaptively adjust the inertia weight by using velocity information. Borrowed the idea from APSO, first the velocity information is utilized instead of the position information in APSO. Another method utilized both the position and velocity information to adjust the inertia weight. Experimental tests on seven benchmark functions were conducted to compare the proposed AIPSO and AHPSO with several existing PSOs including APSO. The experimental results show that the proposed methods exceed the other PSOs on unimodal functions. For multimodal functions, AIPSO and AHPSO with elitist learning strategy (ELS) in general has better performance than APSO, which is reasonable because the APSO utilizes position information which reflects the potential solutions themselves directly while the AIPSO (AHPSO) utilizes the velocity information which reflects the changing tendency of the potential solutions but not (only) the solutions themselves. More importantly, the simulation results illustrate that the use of velocity information can effectively improve the PSO’s performance, which is the purpose of this paper. In our future work, we are considering to utilize position, velocity, and cognitive diversity for inertia weight adaptation.
References [1] Kennedy, J., Eberhart, R.C.: Particle Swarm Optimization. In: Proc. IEEE Int. Conf. Neural Networks, vol. 4, pp. 1942–1948 (1995) [2] Eberhart, R.C., Kenedy, J.: A New Optimizer Using Particle Swarm Theory. In: Proc. 6th Int. Symp. Micro Machine and Human Science, pp. 39–43 (1995)
Inertia Weight Adaption in Particle Swarm Optimization Algorithm
79
[3] Shi, Y., Eberhart, R.: A Modified Particle Swarm Optimizer. In: Proc. IEEE World Congr. Comput. Intell., pp. 69–73 (1998) [4] Shi, Y., Eberhart, R.C.: Empirical study of particle swarm optimization. In: Proc. IEEE Congr. Evol. Comput, pp. 1945–1950 (1999) [5] Clerc, M., Kennedy, J.: The particle swarm-explosion, stability and convergence in a multidimensional complex space. IEEE Trans. Evol. Comput. 6(2), 58–73 (2002) [6] Zhan, Z., Zhang, J., Li, Y., Chung, H.S.: Adaptive particle swarm optimization. IEEE Trans. Syst., Man, Cybern. Part-B. Appl. Rev. 39(6), 1362–1381 (2009) [7] Yao, X., Liu, Y., Lin, G.M.: Evolutionary programming made faster. IEEE Trans. Evol. Comput. 3(2), 82–102 (1999)
Nonlinear Inertia Weight Variation for Dynamic Adaptation in Particle Swarm Optimization Wudai Liao, Junyan Wang, and Jiangfeng Wang School of Electrical and Information Zhongyuan University of Technology Zhongyuan West Road 41, Zhengzhou, Henan Province, China
[email protected],
[email protected],
[email protected]
Abstract. A nonlinear inertia weight variation for dynamic adaptation in particle swarm optimization (NDWPSO) was presented to solve the problem that it easily stuck at a local minimum point and its convergence speed is slow, when the linear decreasing inertia weight PSO (LDWPSO) adapt to the complex nonlinear optimization process. The rate of particle evolution changing was introduced in this new algorithm and the inertia weight was formulated as a function of this factor according to its impact on the search performance of the swarm. In each iteration process, the weight was changed dynamically based on the current rate of evolutionary changing value, which provides the algorithm with effective dynamic adaptability. The algorithm of LDWPSO and NDWPSO were tested with three benchmark functions. The experiments show that the convergence speed of NDWPSO is significantly superior to LDWPSO, and the convergence accuracy is improved. Keywords: Particle Swarm Optimization (PSO), Inertia weight, Rate of particle evolution changing, Adaptability.
1
Introduction
Particle Swarm Optimization (referred to as PSO) algorithm is a global search strategy based on population evolution of computing technology, first proposed by James Kennedy and Russell Eberhart in 1995 (see Ref[1,2]). It is through group cooperation and competition in the particles produced by the guidance of swarm intelligence optimization search, while taking advantage of its unique track memory function so that it can dynamically adjust the current search conditions to search strategy. PSO algorithm has fast convergence, set few parameters and simple operation,very suitable for optimization problems (see Ref[3,4]). But its drawback is that the process of PSO algorithm in the optimization and prone to premature and poor performance of global convergence. Based on the PSO algorithm’s insufficiency, this article has proposed NDWPSO, it is by changing the existing algorithms inertia weight update formula, adjusted to achieve the convergence speed and jump out of local minima. Simulation results show that the modified particle swarm algorithm stability and convergence than the existing PSO significantly improved. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 80–85, 2011. c Springer-Verlag Berlin Heidelberg 2011
Nonlinear Inertia Weight Variation for Dynamic Adaptation
2
81
Particle Swarm Optimization Algorithm
In the basic particle swarm algorithm, each individual is regarded as in the optimization space not to have the quality, not to have the volume particle, particle position represents the potential solution space for optimization. Each iteration, the velocity of the particles by the historical movement of individuals and groups influence state information, and to individuals and groups best position to adjust current direction and the velocity of movement of particles. In continuous space coordinates, the mathematical description of PSO is as follows: Supposes the population size is N , the particle i in the N-dimensional space coordinates can be expressed as Xi = (xi1 , xi2 , · · · , xiD ), Its speed is Vi = (vi1 , vi2 , · · · , viD ), i = 1, 2, · · · , M .Records the optimal location which the particle i searches is Pi = (pi1 , pi2 , · · · , piD ), also known as pbest . Search the optimal location of particles is Pg = (pg1 , pg2 , · · · , pgD ), also known as gbest . Thus, the particle i according to the formula (1) and formula (2) adjusting the speed and position of the individual. vid (t + 1) = wvid (t) + c1 r1 (pid − xid (t)) + c2 r2 (pgd − xid (t))
(1)
xid (t + 1) = xid (t) + vid (t + 1)
(2)
Where, w non-negative constant, called the inertia factor; c1 and c2 are called learning factors, usually c1 = c2 = 2.0; r1 and r2 are two random numbers between 0 and 1 values; t for the current iteration.
3
NDW-PSO
Inertia weight w on the performance of particle swarm optimization has a great influence(see Ref[5]), is used to control the preceding generation of speed to the current generation of speed influence, the larger w can strengthen the global PSO search ability, the smaller w enhance the local search capacity. The experiment was later found that the dynamic weight value can be better than the result of optimization, therefore Y. Shi and R. Eberhart proposed the LDWPSO algorithm, so that the value of w increased gradually with the number of iterations is linear reduced. The linear expression is w = wf inal +
Itermax − Iter × (winitial − wf inal ) Itermax
(3)
winitial expresses the initial weight, wf inal expresses the final weight, winitial and wf inal recommended to take 0.9 and 0.4, respectively.The change of w associated only with the number of iterations, not more better adapt to changes in characteristics of those with complex nonlinear optimization problem. To overcome the shortcomings above algorithm, the paper introduces a nonlinear inertia weight variation for dynamic adaptation in particle swarm optimization (NDW-PSO). Below we give the concept of the rate of particle evolution changing.
82
W. Liao, J. Wang, and J. Wang
Definition 1. The current rate of particle evolution changing is defined as formula (4): Pgbest (T − 1) − Pgbest (T ) k= (4) Pgbest (T − 1) We introduced the rate of particle evolution changing to make the improvement to the formula (3), such as formula (5) shows: w = wf inal +
Itermax − Iter × (winitial − wf inal ) × k Itermax
(5)
In the particle swarm algorithm, global optimum value is determined by the optimal value of the individual, and in the iteration process the value of the current global optimum is always better than or at least equal to the previous iteration of the global optimal value. In view of the fact, this has introduced the rate of particle evolution changing. Pgbest (T − 1) and Pgbest (T ) show the preceding time iterates global optimum value and the current global optimum value respectively. The rate of particle evolution changing had considered the particle beforehand running status, responded the reaction speed of the particle group in the degree of evolution. When the fast evolution of large, the algorithm can continue in a larger search space, when is small may reduce w causes the particle to search in the small scope, thus more quickly find the optimal value. k value of early large, fast speed of evolution, and vice versa. When after several iterations, show that the algorithm is stagnant or has found the optimal value. Can be drawn, w decreases as k decreases. The above analysis shows that the introduction of the rate of particle evolution changing, making the particle swarm algorithm to modify its inertia factor, not only to consider the role of the number of iterations, and the group best position to consider the impact, so as to better balance the global search ability of particle swarm and local search capabilities to avoid falling into local optimum, to speed up the convergence speed.
4
Simulation Results
To test the validity of the new method, this paper carries on the simulation with the LDWPSO and NDWPSO algorithm to the three classical Benchmark functions. All of the following functions have the same global minimum value 0. Where function 1 is a single peak function, the other for the Multi-peak function. Function 1 Rosenbrock function: f1 (x) =
n−1
2
2
((100xi+1 − x2i ) + (xi − 1) ), −50 < xi < 50
i=1
Function 2 Rastrigrin function: f2 (x) =
n i=1
(x2i − 10cos(2πxi ) + 10), −50 < xi < 50
Nonlinear Inertia Weight Variation for Dynamic Adaptation
83
Function 3 Griewank function: n n 1 2 xi f3 (x) = xi − cos( √ ) + 1, −600 < xi < 600 4000 i=1 i i=1 Parameter settings: Size of the swarm is 20; Maximum number of iterations is 1000; Dimension of the problem is 10; winitial = 0.9; wf inal = 0.4; c1 = c2 = 2.0 The target value of function set to 1.0e-5. Figure 1 - Figure 3 shows that the use of LDWPSO and NDWPSO algorithms to simulate these functions results.
Fig. 1. Rosenbrock function iterative process
Fig. 2. Rastrigrin function iterative process
84
W. Liao, J. Wang, and J. Wang
Fig. 3. Griewank function iterative process
Figure 1 - Figure 3 show that NDWPSO algorithm than LDWPSO algorithm has significantly improved in the search ability and convergence speed of the optimal values.
5
Concluding Remarks
In this paper, based on the linear decreasing inertia weight PSO (LDWPSO) analysis and found LDWPSO adapt to the complex nonlinear optimization in the search process, there are problems like it easily stuck at a local minimum point and its convergence speed is slow, in order to overcome this, a nonlinear inertia weight variation for dynamic adaptation in particle swarm optimization (NDWPSO) has been provided. Through introduction the rate of particle evolution changing concept, change inertia factor renewal formula, the algorithm achieved global and local search performance of the balance, and improved LDWPSO algorithm easily stuck at a local minimum point. To show effectiveness of this method, the simulations of three benchmark examples are carried out by the proposed method, as a result, NDWPSO algorithm in the stability and convergence better than LDWPSO algorithm, and the algorithm is easy to combine with other algorithms.
Acknowledgement This work was supported by Natural Science Funds of Ministry of Education of Henan Province (2011A120009).
References 1. Kennedy, J., Eberhart, R.C.: Particle Swarm Optimization. In: Proceedings of IEEE International Conference on Neural Networks, pp. 1942–1948. IEEE, Piscataway (1995)
Nonlinear Inertia Weight Variation for Dynamic Adaptation
85
2. Kennedy, J.: The Particle Swarm. In: Preceedings of Evolutionary Computation, Social Adaptation of Knowledge, pp. 303–308. IEEE, Indianapolis (1997) 3. Su, C.-T., Wong, J.-T.: Designing MIMO controller by neuro-traveling particle swarm optimizer approach. Expert System with Applications (S0957-4174) 32(3), 848–855 (2007) 4. Kim, T.-H., Maruta, I., Sugie, T.: Robust PID controller tuning based on the constrained particle swarm optimization. Automatica (S0005-1098) 44(4), 1104–1110 (2008) 5. Zhang, L., Yu, H.: Analysis and Improvement of Particle Swarm Optimization. Information and Control 33(5), 513–517 (2004)
An Adaptive Tribe-Particle Swarm Optimization Yong Duan Song1, Lu Zhang1, and Peng Han2 1
Intelligent Systems and Renewable Energy Research Center, Beijing Jiaotong University 2 Chongqing Institute of Science and Technology
[email protected]
Abstract. This paper talks about the problems in particle swarm optimization (PSO), including local optimum and difficulty in improving solution accuracy by fine tuning. We presents a new variation of Adaptive Tribe-PSO model where nonlinear updating of inertia weight and a particle’s fitness with TribePSO model are combined to improve the speed of convergence as well as fine tune the search in the multidimensional space. The method proved to be a powerful global optimization algorithm. Keywords: adaptive weight, tribe particle swarm optimization, local optimum, accuracy.
1 Introduction Particle swarm optimization (PSO) algorithm is a new intelligent optimization algorithm [1]. Basic PSO can easily get trapped in the local optima when solving multimodal problems [2]. Accelerating convergence speed and avoiding the local optima have become the two most appealing goals in PSO research [3]. Tribe-PSO in [4] has shown some encouragement. It focuses on avoiding the local optima, but brings in a slower convergence as a result. One of the reasons is the computational burden of breeding and subpopulation [5]. Another is the fixed inertia weight. Proper coordination between global and local search is critical for algorithm finally converging to global optimal solution [6]. The time-varying controlling strategies proposed for the PSO parameters so far are according to either linear [7], [8] or nonlinear rules. Some use a self-adaptive method by optimizing parameters together with the position during run time [9], [10]. Some strategies use a fuzzy system with fitness feedback to adjust the parameters [11]. But they are under the risk of inappropriately adjusting the parameters without information that reflects evolutionary state utilized. An adaptive inertia weight developed in [12] has been proved to reflect the population and fitness diversity well. In this paper, we present a new variation of Adaptive Tribe-PSO model where nonlinear updating of inertia weight and a particle’s fitness with a Tribe-PSO model are combined to improve the speed of convergence as well as fine tune the search. Benchmarking tests indicate that the proposed method is able to achieve satisfactory results. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 86–92, 2011. © Springer-Verlag Berlin Heidelberg 2011
An Adaptive Tribe-Particle Swarm Optimization
87
2 Basic PSO Algorithm In Particle swarm optimization (PSO), particles find the optimal solution by updating the velocity and position with the following equations: Vi ,td+1 = wVi ,td + c1 rand1 ( pBestit, d − xit, d ) + c2 rand 2 ( gBestdt − xit, d )
(2.1)
xit,+d1 = xit, d + Vi t, d+1
(2.2)
where c1 and c2 are the learning factor set to 2 to give the two stochastic factors rand1 pbestit,d − xit,d and rand2 gbestdt − xit,d a mean of 1, so that agents would “overfly” the target about half the time. Here rand1 and rand2 are in the range of [0, 1]. Vi ,td t and xi , d are the velocity and position of ith particle in dth dimension till tth iteration, respectively. gbestdt and pbestit, d are the global best and the personal best, respectively. As all particles are affected by the same social optimum, they will all approach to it. The swarm lost particles diversity and even leads to premature.
(
)
(
)
3 Tribe-PSO The two-layered structure of Tribe-PSO is depicted in Fig. 1. Tribe-PSO divides particles into two layers and procedure of optimization is divided into three phases. Top layer
L particles tBest
tBest gBest
gBest
Bottomlayer
p1,1
mparticles
m particles Swarm1
p1,2
""
SwarmL
p1,m
pL,1
pL,2
""
pL,m
Fig. 1. The structure of Tribe-PSO
Assume that there are l×m particles. They are firstly divided into l tribes with each tribe m particles. The convergence procedure of Tribe-PSO consists of three phases: 1) Isolated phase In the first phase, the tribes work as l independent basic PSO models. Every tribe produces a best particle tBest. The velocity function is defined as followed: Vi t, d+1 = wVi ,td + c1 rand1 ( pBestit, d − xit, d ) + c2 rand 2 ( tBestdt − xit, d )
(3.1)
88
Y.D. Song, L. Zhang, and P. Han
2) Communing phase In the second phase, Tribe-PSO works in the standard two-layered model: all tribes form the basic layer and all tBests form the upper layer. For Tribe members, the velocity function is the same as they have in the first phase: Vi t, d+1 = wVi t, d + c1rand1 ( pBestit, d − xit, d ) + c2 rand 2 ( tBestdt − xit, d )
(3.2)
For tBest and gBest particles, the velocity function is defined as followed: Vi t, d+1 = wVi t, d + c1 rand1 ( pBestit, d − xit, d ) + c2 rand 2 ( gBest dt − xit, d )
(3.3)
3) United phase In the last phase, all the tribes are united into one group. The velocity function for all the particles becomes the original one in the basic PSO. Vi t, d+1 = wVi t, d + c1 rand 1 ( pbest it, d − x it, d ) + c 2 rand 2 ( gbest dt − xit, d )
(3.4)
4 Adaptive Tribe-Particle Swarm Optimization 4.1 Adaptive Inertia Weight Here we compute an “evolutionary factor” s based on the evolutionary state as defined by
s=
f − f min ∈ [ 0,1] f avg − f min
(4.1)
f denotes the particle’s fitness at present and favg the average fitness, fmin the minimum fitness. The dynamics of s has been shown in figure 2.
Fig. 2. s from time-varying Griewank function f2
An Adaptive Tribe-Particle Swarm Optimization
89
Based on the dynamics of s, we can allow w to follow the evolutionary states using a mapping ω ( s ) : ℜ+ 6 ℜ+ :
f < f avg
⎧ w + ( wmax − wmin ) ∗ s w ( s ) = ⎨ min wmax ⎩
f ≥ f avg
w ( s ) ∈ [ 0.4, 0.9 ] ∀s ∈ [ 0,1]
(4.2)
It can be seen that w is monotonic with s. Thus w will adapt to the search environment characterized by s. f > favg: The largest w makes it fly to the optimum and accelerates convergence speed. f < favg: The small w helps to protect excellent particles and limits their research area. f = favg: The largest w to jump out of local optimum or enlarge search area and keep the diversity of particles. 4.2 Adaptive Tribe-PSO Based on the previous analysis and discussion, we can establish adaptive Tribe-PSO as described by the following flow chart: ,QLWLDOL]HSDUWLFOHVDQGWKHLU YHORFLWLHV
(YDOXDWHSDUWLFOHVÿILWQHVVHV
&DOFXODWHZEDVHGRQSDUWLFOHVÿ ILWQHVVHV
3UHVHQWEHWWHUWKDQS%HVW <(6
12 12
S%HVW 3UHVHQW
3UHVHQWEHWWHUWKDQ W%HVWJ%HVW <(6 W%HVWJ%HVW 3UHVHQW
12
8SGDWHSDUWLFOHVÿYHORFLWLHV
8SGDWHSDUWLFOHVÿSRVLWLRQV
6DWLVI\LWHUDWLRQQXPEHU <(6 2XWSXWW%HVWJ%HVW
Fig. 3. The Flow Chart of the proposed Adaptive Tribe-PSO
90
Y.D. Song, L. Zhang, and P. Han
The proposed Adaptive Tribe-PSO mainly constitutes the following steps. z z z z
Step 1 Initialization.ïSet parameters. Initialize particle position and velocity. Step 2 Calculate fitness. Based on the fitness, choose tBest, gBest or pBest. Step 3 Update. Update velocity and position using formula (3.1)—(3.4), (2.2). Step 4 Output optimum. In the first two phases, algorithm goes to next phase with the best values. If that is in the third phase, output the optimum.
5 Experimental Setup and Simulation 5.1 Benchmark Functions Simulation tests are conducted on two benchmark functions: Spherical and Griewank. f1: Spherical function: f1 ( x ) =
n
∑x i =1
2 i
−100 ≤ xi ≤ 100
(5.1)
f2: Griewank function: f3 ( x ) =
n 1 n ⎛ x − 100 ⎞ 2 ( xi − 100 ) − ∏ cos ⎜ i ∑ ⎟ +1 4000 i =1 i ⎠ ⎝ i =1
−100 ≤ xi ≤ 100
(5.2)
5.2 Parameter Settings Firstly, strict benchmarking tests are carried out for PSO, Tribe-PSO and Adaptive Tribe-PSO. All the tests start from the same random initiation: the dimension number is set to 10; number of particles is set to 200; number of iterations is set to 150; w is initialized to 0.7, and c1 and c2 to 2.0. wmax and wmin is set to 0.9 and 0.6, respectively. The particles are divided to 20 tribes with each tribe 10 particles. The partition of phases is set to 0.2, 0.3 and 0.5, respectively. Secondly, for Adaptive Tribe-PSO, the partition of phases and ratios of tribe numbers to tribe size are initialized differently. 5.3 Results During the isolated phase, basic PSO has the smallest optimal value. In communing phase, two modified PSOs have better optimized value. And Adaptive Tribe-PSO converges earlier than Tribe-PSO. Two modified PSOs get better results than basic PSO at last. In Tribe-PSO the attraction from the best particle has been limited by the two-layered structure. In Adaptive Tribe-PSO, this problem is resolved well. Particles can adjust velocity intelligently and smash the restriction of two-layered structure. In Fig. 5 (a), T1-T6 represent the trajectory with partitions of phases (0.02, 0.3, 0.68), (0.3, 0.02, 0.68), (0.3, 0.68, 0.02), (0.5, 0.3, 0.2), (0.2, 0.3, 0.5) and (0.3, 0.5, 0.2), respectively. T1, T2, T5 get more accurate optimum where the third phase occupies more. When the first phase occupies too much portion, it has worse convergence result. In Fig. 5 (b), it indicates that the upper layer with more tribes results in better convergence as long as each tribe has enough particle members.
An Adaptive Tribe-Particle Swarm Optimization
(a)
91
(b)
Fig. 4. Average convergence curves of Spherical’s function (a) and Griewank’s function (b)
(a)
(b)
Fig. 5. (a) Average convergence curves of Griewank’s function with different partition of phases (b) Average convergence curves of Griewank’s function with different number of tribes
6 Conclusion In this paper, the problem of premature and local optimum in PSO is investigated and Tribe-PSO has been extended to Adaptive Tribe-PSO by introducing dynamically and adaptively weights updating. As shown in the tests, the proposed approach can achieve better accuracy. Both the partition of phases and number of tribes can be adjusted according to the practical problem. Further more, the adaptive weight updating employed in the algorithm can effectively prevent local optimum.
References [1] Kennedy, J., Eberhart, R.: Particle swarm optimization. In: IEEE International Conference on Neural Networks, Perth, Australia, pp. 1942–1948 (1995) [2] Liang, J.J., Qin, A.K., Suganthan, P.N., Bizataskar, S.: Comprehensive learning particle swarm optimizer for global optimization of multimodal functions. IEEE Trans. Evol. Comput. 10(3), 281–295 [3] Zhan, Z.-H., Zhang, J., Li, Y., Chung, H.S.-H.: Adaptive Particle Swarm Optimization. IEEE Trans. Syst., Man, Cybern. C 39(6), 1362–1381 (2009)
92
Y.D. Song, L. Zhang, and P. Han
[4] Chen, K., Li, T.H., Cao, T.C.: Tribe-PSO: A novel global optimization algorithm and its application in molecular docking. Chemometrics and Intelligent Laboratory Systems 82(1-2), 248–259 (2006) [5] Chatterjee, A., Siarry, P.: Nonlinear inertia weight variation for dynamic adaptation in particle swarm optimization. Comput. Oper. Res. 33(3), 859–871 (2004) [6] Shi, Y., Eberhart, R.C.: Fuzzy adaptive particle swarm optimization. In: Proc. IEEE Congr. Evol. Comput., vol. 1, pp. 101–106 (2001) [7] Shi, Y., Eberhart, R.C.: A modified particle swarm optimizer. In: Proc. IEEE World Congr. Comput. Intell., pp. 69–73 (1998) [8] Ratnaweera, A., Halgamuge, S., Watson, H.: Self-organizing hierarchical particle swarm optimizer with time-varying acceleration coefficients. IEEE Trans. Evol. Comput. 8(3), 240–255 (2004) [9] Tripathi, P.K., Bandyopadhyay, S., Pal, S.K.: Adaptive multi-objective particle swarm optimization algorithm. In: Proc. IEEE Congr. Evol. Comput., Singapore, pp. 2281–2288 (2007) [10] Ratnaweera, A., Halgamuge, S., Watson, H.: Particle swarm optimization with selfadaptive acceleration coefficients. In: Proc. 1st Int. Conf. Fuzzy Syst. Knowl. Discovery, pp. 264–268 (2003) [11] Yamaguchi, T., Yasuda, K.: Adaptive particle swarm optimization: Self-coordinating mechanism with updating information. In: Proc. IEEE Int. Conf. Syst., Man, Cybern., Taipei, Taiwan, pp. 2303–2308 (October 2006) [12] Gong, C., Wang, Z.L.: Optimization calculation based on MATLAB, pp. 283–285. Publish House of Electronics Industry, Beijing (2009)
A Novel Hybrid Binary PSO Algorithm Muhammd Ilyas Menhas, MinRui Fei, Ling Wang, and Xiping Fu Shanghai Key Laboratory of Power Station Automation Technology, School of Mechatronics Engineering and Automation, Shanghai University, Shanghai 200072, China
[email protected]
Abstract. The continuous PSO algorithm has been widely researched and also applied as an intelligent computational technique to solve problems requiring iterative solutions based on some predefined objective function. However, the research on binary version of PSO (DBPSO) is still underway. The major research concerns are to accelerate the convergence speed retaining the search ability and reliability of the algorithm. To achieve this, a novel hybrid binary particle swarm optimization (HBPSO) algorithm is proposed in this paper. It combines the PSO’s concept and GA. In the existing standard binary PSO (DBPSO) two new operators such as crossover and mutation are incorporated to accelerate the convergence speed and to avoid possible stuck in local optimum thereby maintaining population diversity. The proposed HBPSO algorithm has been studied on 6 bench mark optimization problems. The experimental results such as minimum fitness, mean fitness, and variance of fitness over 50 consecutive trials on each objective function indicate that the HBPSO algorithm consistently outperforms the DBPSO and its variants in terms of convergence speed and search accuracy on a bulk of bench mark problems. Keywords: Particle swarm optimization, discrete binary PSO, optimization.
1 Introduction Particle swarm optimization algorithm (PSO) is a population based stochastic search algorithm developed by Kennedy and Eberhart [1] in 1995. It mimics swarms behavior in performing their tasks like bird flocks and fishes to discover an optimal solution based on an objective function. In contrast to the traditional optimization methods based on pure mathematics, the PSO employs a probabilistic search procedure and iteratively determines solutions to an optimization problem. The PSO comprises two main variants namely the continuous PSO [1] and the binary PSO (DBPSO) [2] algorithms. The continuous PSO mainly focuses on problems requiring real numbers while the binary PSO deals with problems that need binary encoding like knapsack and similar decision oriented problems. The (DBPSO) [2] preserves the fundamental concept of the PSO algorithm except that here a population of candidate solutions consists of binary strings each representing a particle’s position vector. The initial bit streams for the whole population are randomly generated subject to arbitrary velocities. The fitness of each individual of the population in minimizing or maximizing a predefined objective function F(x) is Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 93–100, 2011. © Springer-Verlag Berlin Heidelberg 2011
94
M.I. Menhas et al.
evaluated and remembered. The individuals are sorted according to their fitness values. An individual with the best fitness value is identified as a local best from the current population of candidate solutions. Then, an iterative process begins to alter the bit streams with some probability to facilitate further movements in the search space. Now, updating of bits is accomplished with renew of the pseudo probability Vij as follows: K +1
K
K
K
K
K
Vij = w.Vij + r1 .c1 .( pij − xij ) + r2 .c2 .( g1 j − xij )
(1)
K
where Vij is the pseudo probability; xij is a bit of candidate solution; i is the index of the candidate solution and j is the index of dimension; c1 , c2 are two acceleration coefK
ficients; r1 , r2 are two random numbers; w is the inertia weight; p ij is the personal best K
history at iteration K; g 1 j is the current local best at iteration K. The pseudo probabilK
ity Vij is constrained in the actual probability interval Sij ∈ {0,1} using a sigmoid mapping function as below:
Sij =
1 (1 + exp(−Vij )
(2)
Now, a random number rij ∈ {0,1} is generated and compared with Sij ∈ {0,1} to determine actual bit as
⎧⎪1 xij = ⎨ ⎪⎩0
rij <= sij else
(3)
The procedure of generating new candidate solutions, fitness evaluation, renew of personal best, and local best, is continued until the global best solution is ascertained or a predefined termination criterion is reached. In fact, both PSO methods were developed for diverse work domains using the same underlying principles but the binary PSO has extensive applications as the sequence of binary bits can be transformed according to the requirements of any problem space. Also the binary coded PSO can overcome the problems such as trapping into local optima’s because of the inherited advantage of bit flip mechanism however the algorithm might be computationally expensive due to extra computations involved in the process of number conversion and scaling. As the binary PSO is suitable for a wide range of applications of diverse nature and comprises simple mathematics, it has attracted many researchers for its further development. Shen [3] proposed a modified version of binary PSO (MBPSO) by suggesting some modifications to the original version of the binary PSO. Though the modifications proposed by Shen have improved performance of the algorithm in terms of its convergence speed but the MBPSO algorithm traps in local optimum and possesses a high fitness variance that restricts the applications requiring consistency.
A Novel Hybrid Binary PSO Algorithm
95
Ling Wang [4] further extended the MBPSO by introducing two new operators called mutation and dissipation, concepts of natural evolutionary theory, and developed a mutation-dissipation based binary PSO (MDBPSO). Alireza [5] proposed a Boolean PSO algorithm by introducing the concepts of boolean algebra in binary PSO algorithm and designed a dual-band dual-polarized planar antenna using the proposed method. Khansesar [6] proposed a novel binary PSO by redefining the concept of velocity vector in binary PSO. Arezoo Moiri [7] developed a modified binary PSO algorithm by adapting a new velocity calculation strategy to improve the accuracy and the convergence speed. Jeong [8] used a hybridized approach to combine the concept of quantum computing and binary PSO and developed a quantum-inspired binary PSO (QBPSO). Further, essential binary PSO (EBPSO) and probability based binary PSO (PBPSO) have also been proposed [9-10]. With the ongoing progress in research, the binary PSO has been successfully applied in a wide range of optimization problems such as in process control, structural topology optimization, chaotic map feature selection, optimal placement of PMU’s in power network, knapsack problem, management, scheduling, parameter identification, wireless sensor networks, resource allocation, neural network training and face recognition problem. The application results witness the significance of binary PSO’s; nevertheless there is still room to improve the method to achieve better results.
2 The Hybrid Binary PSO (HBPSO) Algorithm Despite the standard binary PSO (DBPSO) has been applied in many real world optimization problems but its performance is not satisfactory. Firstly, the algorithm is computationally expensive due to slow convergence. Moreover, the core concept of the PSO algorithm which governs the movements of particles to their historical best positions and toward the best particle in the group is not completely present in binary PSO. Although, it employs the PSO parameters such as the acceleration factors and the inertia weight in the course of updating the pseudo probability, but later it is only a probability constrained by a sigmoid mapping function in the real probability interval to determine a bit’s state. It cannot aid algorithm to avoid unnecessary march in the search space and in attaining convergence, consequently, it increases the required number of iterations for the algorithm to converge to an optimum solution. Many applications cannot afford large number of fitness evaluations, because it may take long time to evaluate a candidate solution due to the complexity of objective function and other constraints. In order to establish speedy convergence, reduce wandering, and avoid possible trap in local optimum a hybrid approach is proposed. It combines concepts of the PSO and GA [11]. The proposed hybrid strategy comprises a crossover and a mutation operator. An intelligent stochastic crossover operation is performed to wholly realize the cognitive and social concepts of the PSO and then a mutation operator is added as a remedy against possible stuck in local optimum as well as to maintain population diversity. The hybridization has significantly improved performance of the proposed HBPSO in terms of convergence speed, consistency, and accuracy of the solution.
96
M.I. Menhas et al.
2.1 Crossover and Mutation
Mutation and crossover are fundamental concepts employed in genetic algorithm (GA) derived from natural evolution theory. These operators mimic the biological evolutionary process. (1) Crossover In the GA, a crossover operation is performed to generate new candidate solutions for next generation from an existing population of solutions by performing recombination. There are numerous ways to establish the crossover operation. Like GA, in HBPSO an intelligent stochastic crossover operation is introduced to indemnify the essence of the particle swarm optimization in binary domain. Here, a random number rij ∈ {0,1} is generated to determine the actual state of each bit of every candidate solution from the population of current solutions as in eq.4.
⎧ xij if 0 ≤ rij ≤ α ⎪ xij = ⎨ pij if α < rij ≤ 2α ⎪ ⎩ gij if 2α < rij ≤ 1
(4)
In eq.4, α represents a predefined percentage ratio of crossover probability. In HBPSO, α = 33.33% i.e. for each bit, xij of a candidate solution, the possibility to remain in its state as it was determined by equation (3) is 33.33% and 66.67% chances to be replaced by a bit from its previous best history and the current best particle at any iteration. Earlier, a similar approach has been applied in the MBPSO algorithm [3].However; the MBPSO is quite different from the proposed HBPSO algorithm. Because there an initial population of candidate solutions is created with a static probability and then a random number rij ∈ {0,1} is generated to realize an identical approach called update strategy but in fact it results in a very rapid convergence to a local optimum, and in many cases very far from real optimum solution, without exploring search space well. To investigate search space well again, it is necessary to push particles ahead to discover new points with some reasonable velocity. In contrast, the proposed HBPSO preserves the DBPSO’s strategy of generating candidate solutions with a dynamic probability during all iterations as in equation (3) and then performs a stochastic operation analogous to the uniform crossover in GA as in equation (4) to accelerate convergence. The HBPSO has less chances of premature convergence as particles will consistently move further to find new points. (2) Mutation Mutation is another commonly used operator in genetic algorithm (GA) to maintain population diversity. In HBPSO, the mutation operator is added to achieve two goals. Firstly, it can maintain diversity of the swarm; in addition, it can facilitate escape when algorithm has converged to any local optimum. A random number rij ∈ {0,1} is generated and compared with a predefined mutation probability m to perform mutation operation as in eq.5.
A Novel Hybrid Binary PSO Algorithm
⎧⎪ xij xij = ⎨ ⎪⎩ xij
if rij <= m else
97
(5)
In the case of problems other than binary, a mutation operation on a most significant bit (MSB) of any candidate solution will facilitate exploration (global search) while mutation of a least significant bit (LSB) will aid exploitation (local search).The overall procedure of the proposed HBPSO algorithm is illustrated with the help of a flow chart as in Fig.1. VWDUW ,QLWLDOL]H 6HW DOJRULWKPLF SDUDPHWHUV DFFRUGLQJ WR WDEOH
'HWHUPLQH LQLWLDO FDQGLGDWH VROXWLRQV UDQGRPO\
&RPSXWH )LWQHVV
6HW SEHVW DQG JEHVW
8SGDWH 9 DQG 6 DFFRUGLQJ WR HT DQG HT
'HWHUPLQH QHZ FDQGLGDWH VROXWLRQV DFFRUGLQJ WR HT
3HUIRUP FURVVRYHU DQG PXWDWLRQ DFFRUGLQJ WR HT DQG HT 1R
&RPSXWH )LWQHVV
5HQHZ SEHVW DQG JEHVW
,I VWRSSLQJ FULWHULD LV UHDFKHG
HQG
Fig. 1. Flowchart of the HBPSO algorithm
3 Experiments and Numerical Optimization Results Experiments were performed using Matlab, Intel® Pentium® Dual-CPU T2370 @1.73GHz and 2GB of RAM. To evaluate the performance of the proposed HBPSO algorithm 6 bench mark problems were considered. The characteristics of bench mark problems are given in Table 1.
98
M.I. Menhas et al. Table 1. Characteristics of Benchmark Functions Name Sphere Step Rosenbrock’s Griewangk’s Function Glankwahmdee’s Rastrigin
F1 F2 F3 F4 F5 F6
Dimension 2 2 2 2 2 2
Optimum 0.0(min) 0.0 (min) 0.0(min) 0.0(min) 0.0(min) 80.70658(max)
Type unimodal unimodal unimodal unimodal unimodal multimodal
Table 2. Parameter settings of DBPSO, MBPSO, MDBPSO, and HBPSO algorithm
DBPSO
C1=C2=2, Vmin=-Vmax=5 Inertia weight (w)=0.8 Swarm size=30 MDBPSO No. of binary bits=24 Total number of iterations=500
MBPSO
Static probability=0.5 Swarm size=30 HBPSO No. of binary bits=24 Total number of iterations=500
Static probability=0.5 Mutation probability=0.005 Dissipation probability=0.01 Swarm size=30 No. of binary bits=24 Total number of iterations=500 C1=C2=2, Vmin=-Vmax=5 Inertia weight (w)=0.8 Mutation probability=0.005 Cross over probability=66.67% Swarm size=30 No. of binary bits=24 Total number of iterations=500
Table 3. Numerical Simulation results of DBPSO, MBPSO, MDPSO, HBPSO algorithm
F FV DBPSO MBPSO MDBPSO HBPSO F FV DBPSO MBPSO MDBPSO HBPSO BFV 1.78e-9 5.72e-6 7.11e-11 7.11e-11 BFV 8.37e-7 6.59e-5 9.59e-10 9.59e-10 0.0401 MFV 1.15e-5 1.2808 7.11e-11 7.67e-11 MFV 0.0323 4.9513 0.0797 F1 F4 0.0065 VF 4.16e-10 40.881 2.73e-51 1.62e-21 VF 0.0052 200.0113 0.0127 0.2004 HF 9.76e-5 44.1662 7.11e-11 3.55e-10 HF 0.2037 77.5925 0.4465 3.34e-10 BFV 8.48e-8 7.02e-5 5.54e-11 7.50e-12 BFV 1.05e-7 1.82e-4 2.44e-7 0.2250 0.0043 MFV 0.2406 1.2560 0.2282 MFV 0.0035 0.9918 0.1926 F2 F5 0.0312 1.24e-4 VF 0.0359 28.0818 0.0334 VF 8.97e-5 6.6664 0.4603 0.5000 0.0481 HF 0.5040 37.4719 0.5000 HF 0.0459 15.0266 4.5524 4.84e-13 BFV 80.7066 80.71 80.7066 80.7066 BFV 5.12e-9 6.70e-6 1.57e-8 3.36e-4 80.7062 MFV 2.64e-4 0.1677 0.0668 MFV 80.7066 80.5547 80.7057 F3 F6 7.40e-7 1.31e-6 VF 9.72e-8 0.2024 0.0389 VF 2.26e-21 0.0866 2.25e-6 0.0060 80.7031 HF 8.16e-4 2.9528 1.0000 HF 80.7066 79.8825 80.7066 * BFV=Best Fitness Value, MFV=Mean Fitness Value, VF=Variance of Fitness, HF=Highest Fitness
A Novel Hybrid Binary PSO Algorithm
99
The proposed HBPSO algorithm was compared with three former versions of binary PSO like DBPSO, MBPSO and MDBPSO algorithm. Due to sensitivity of algorithmic parameters, the parameters were chosen after extensive experimentations with different parameter combinations and also considering previously reported values in the literature. The parameters combinations were set for each algorithm as listed in Table 2. Experiments were repeated 50 times under identical conditions with each algorithm on each objective function. The experimental results like minimum fitness, mean fitness, variance of fitness, and maximum fitness values for each algorithm on each objective function over 50 consecutive trials were computed to measure performance index of each algorithm. The statistical data obtained from experiments is presented in Table 3.The convergence curves associated with the best results among 20 independent consecutive trials of each algorithm on each objective function are shown in the following figures (Fig.2).
Fig. 2. Convergence curves of various algorithms on different benchmark functions
4 Conclusions and Discussion on Results In this paper a novel HBPSO algorithm is developed by integrating concepts of PSO and GA to arrive at fast convergence and avoid excessive wander. From Table 3 it is evident that the proposed HBPSO shows the best performance index in terms of minimum fitness, mean fitness, variance of fitness in comparison to DBPSO, MBPSO and MDBPSO algorithms. The HBPSO consistently outperformed and converged closer to the optimum solution. The results should be compared in terms of mean, minimum and highest fitness because any algorithm repeatedly trapping into a local optimum also exhibits a low variance. The convergence curves (Fig.2) show that the HBPSO can reach an acceptable solution within lesser number of fitness evaluations
100
M.I. Menhas et al.
in most cases. Also the curves indicate that the HBPSO frequently avoids local optimum and perform search in the area of potential solutions. Acknowledgments. This work is supported by the Projects of Shanghai Science and Technology Community (10ZR1411800, 08160705900 & 08160512100), National Natural Science Foundation of China (Grant No. 60834002 & 61074032), Research fund for the Doctoral Program of Higher Education (20103108120008) of China, Mechatronics Engineering Innovation Group project from Shanghai Education Commission, and the Graduate Innovation Fund of Shanghai University (SHUCX102218).
References 1. Kennedy, J., Eberhart, R.C.: Particle Swarm Optimization. In: Proceedings of IEEE International Conference on Neural Networks, Piscataway, NJ, pp. 1942–1948. IEEE service center, Los Alamitos (1995) 2. Kennedy, J., Eberhart, R.C.: A discrete binary version of the particle swarm algorithm. In: IEEE International Conference on Computational Cybernetics and Simulation, vol. 5, pp. 4104–4108 (12-15, 1997) 3. Shen, Q., Jiang, J.H., Jiao, C.X., Shen, G.L., Yu, R.Q.: Modified particle swarm optimization algorithm for variable selection in MLR and PLS modeling: QSAR studies of antagonism of angiotensin II antagonists. European Journal of Pharmaceutical Sciences 22(2-3), 145–152 (2004) 4. Wang, L., Wang, X.T., Fei, M.R.: An adaptive mutation-dissipation binary particle swarm optimization for multidimensional knapsack problem. International Journal of Modeling, Identification and Control 8(4), 259–269 (2009) 5. Marandi, A., Afshinmanesh, F., Shahabadi, M., Bahrami, F.: Boolean Particle Swarm Optimization and Its Application to the Design of a Dual-Band Dual-Polarized Planar Antenna. In: IEEE Congress on Evolutionary Computation, CEC 2006, pp. 3212–3218. IEEE Press, New York (2006) 6. Khanesar, M.A., Teshnehlab, M., Shoorehdeli, M.A.: A novel binary particle swarm optimization. In: Mediterranean Conference on Control & Automation, pp. 1–6 (June 2007) 7. Modiri, A., Kiasaleh, K.: Modification of real-number and binary PSO algorithms for accelerated convergence. IEEE Transactions on Antennas and Propagation 59(1), 214–224 (2011) 8. Jeong, Y.W., Park, J.B., Jang, S.H., Lee, K.Y.: A new quantum-inspired binary PSO for thermal unit commitment problems. In: 15th International Conference on Intelligent system applications, pp. 1–6 (2009) 9. Menhas, M.I., Wang, L., Pan, H., Fei, M.R.: CFBB PID Controller Tuning with Probability based Binary Particle Swarm Optimization Algorithm, LSMS, Communications in Computer and Information Science, vol. 98, pp. 44–51. Springer, Heidelberg (2010) 10. Chen, E.X., Li, J.Q., Liu, X.Y.: In Search of the Essential Binary Discrete Particle Swarm. Applied Soft Computing Journal 11(3), 3260–3269 (2010) 11. Holland, J.H.: Adaptation in Natural and Artificial Systems. Univ. of Michigan Press, Ann Arbor (1975)
PSO Algorithm with Chaos and Gene Density Mutation for Solving Nonlinear Zero-One Integer Programming Problems Yuelin Gao1 , Fanfan Lei1 , Huirong Li2 , and Jimin Li1 1 2
Institute of Information & System Science, Beifang University of Nationalities, Ningxia, Yinchuan, 750021 Department of Mathematics and Computer Science, Shangluo University, Shanxi, Shangluo, 726000
Abstract. By the penalty function methodwe transform zero-one nonlinear programming problems into unconstrained zero-one integer optimization problems. A particle swarm optimization algorithm with chaos and gene density mutation is given to solve unconstrained the zero-one nonlinear program problems. We use chaos to initialize populations and use the 0-1 integer operation in updating positions to produce 0-1 integer points. We use the fitness variance and gene density strategy to determine whether the population premature phenomenon or not. If it appears that we use the gene density mutation to increase the population diversity or restart and reset the population by chaos technique. Numerical simulations show that the proposed algorithm for most test functions is feasible, effective and has high precision. Keywords: nonlinear zero-one integer programming; penalty function method; particle swarm optimization; gene density mutation.
1
Introduction
In this paper, we consider zero-one nonlinear programming problems as follows: ⎧ min f (x), ⎪ ⎪ ⎨ s.t. gi (x) ≤ 0, i = 1, 2, · · · , m, (1) hj (x) = 0, j = 1, 2, · · · , l, ⎪ ⎪ ⎩ xk = 0 or xk = 1, k = 1, 2, · · · , n. where x = (x1 , x2 , · · · , xn ) , gi (x) is inequality constraints, hk (x) is equality constraints. Generally, those constraints are nonlinear, so it is difficult to solve them. The zero-one nonlinear programming problems come from many real-world, such as assignment problems, knapsack problems, portfolio, capital budget, traveling salesman problems [1 − 3] and so on. At present, the zero-one nonlinear
The work is supported by the National Natural Science Foundation of China under Grant No.60962006 and the Higher School Research Projects of Ningxia under Grant No.2009JY008.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 101–110, 2011. c Springer-Verlag Berlin Heidelberg 2011
102
Y. Gao et al.
programming problems are solved by the two methods, one is deterministic methods, such as branch and bound algorithm, cutting plane algorithm, filled function method, steepest descent method [2, 4] and so on. The other is the stochastic methods, such as genetic algorithm, simulated annealing algorithm, ant colony algorithm, differential evolution algorithm[5 − 7], etc. This kind of methods can solve the complicated nonlinear optimization problems, but its convergence is very difficult to prove. We transform zero-one nonlinear programming problems into unconstrained zero-one integer optimization problems by penalty function method [8], i.e. min F (x, δt ) = f (x) + δt p(x), where p(x) =
m i=1
p
(max(0, gi (x))) +
l
|hj (x)|p
(2)
(3)
j=1
Clearly, p(x) ≥ 0 is the sum of constraint violations, δt is penalty factor, p is a positive integer, in this paper given p = 2 and δt → ∞. Then we give a PSO algorithm with chaos and gene density mutation to solve the zero-one nonlinear program problems(PSO-CSGDM). In this algorithm, we use chaos to initialize populations and the 0-1 integer operation in updating the positions to produce 0-1 integer particles as well as the fitness variance and gene density strategy to determine whether the population premature phenomenon or not. Numerical simulations show that the proposed algorithm is feasible, effective and is a high precision global optimization algorithm.
2 2.1
PSO Algorithm with Chaos and Gene Density Mutation Basic PSO
Particle swarm optimization (PSO) was proposed by Eberhart and Kennedy in 1995, it is a kind of swarm intelligence-based computational method [9 − 10], which comes from the study of birds foraging behavior. Suppose that the search space is D-dimension, and then the particle ith of swarm can be represented by a D-dimensional vector xi = (xi1 , xi2 , · · · , xiD ) . The velocity of this particle can be represented by another D-dimensional vector vi = (vi1 , vi2 , · · · , viD ) . The fitness of each particle can be evaluated according to the objective function of optimization problem. The best previously visited position of the particle ith is noted as its individual best position pi = (pi1 , pi2 , · · · , piD ) . The position of best individual of the whole swarm is noted as the global best position pg = (pg1 , pg2 , · · · , pgD ) . At each step, the velocity of particle and its new position will be assigned according to the following two equations: vid (t + 1) = wvid (t) + c1 r1 (pid (t) − xid (t)) + c2 r2 (pgd (t) − xid (t)),
(4)
xid (t + 1) = xid (t) + vid (t + 1).
(5)
PSO Algorithm with Chaos and Gene Density Mutation
103
where 1 ≤ d ≤ D , 1 ≤ i ≤ N , the superscript t denotes the tth iteration; c1 and c2 are positive constants , called the cognitive and social parameter respectively, r1 and r2 are random numbers uniformly distributed in the range (0, 1) ; let the upper limit of the rate of the velocity be vmax , when |vid | > vmax , then |vid | = vmax , and ω is called inertia weight which has the ability of balancing global search and local search. The experiments indicate that ω will impact on global search ability and local search ability, when ω is higher , the global search ability is strong , but the local search ability is low; whereas the local search ability is strong , but global search ability is low . This paper gives ω from 0.95 linearly decreasing to 0.4 . 2.2
The Equation on the Position of the Particles
a) Initializing population by chaos technique Firstly, we generate a D-dimensional vector z1 = (z11 , z12 , · · · , z1D ) and the value of each component is between 0 and 1 , then according to the typical chaotic systems [11] Logistic equation zi+1j = μzij (1 − zij ), j = 1, 2, · · · , D, i = 1, 2, · · · , N , where μ is the control parameter, then we get N vectors z1 , z2 , · · · , zN , then we convert each component of the chaotic variables zi to decision variables and integer ,i.e.: xij = xlj + [zij ∗ (xuj − xlj )].
(6)
where xl and xu are respectively corresponding decision variables of the lower and upper bound, [] is rounding integer method. b)Updating the positions of the particles In this paper, the position of PSO update formula with rounding integer method, i.e. xid (t + 1) = [xid (t) + vid (t + 1)], (7) where xid (t + 1) is the updated position, [] is rounding integer method. 2.3
The Strategy of Overcoming Premature Phenomena
In order to predict the premature convergence of the algorithm, we will use the following two concepts: population fitness variance and gene density. Definition 1. Let the particle’s number be N , fi is the fitness of ith particle’s, fave is current average fitness of swarm, the swarm fitness variance δ 2 [12]is defined as: N 1 fi − fave 2 δ2 = ( ) . (8) N i=1 f 2 where fave = N1 N i=1 fi , f is a factor of returning, it can limit δ , and the value of f is defined as:f = max{1, max|fave − fi |}, i = 1, 2, · · · , N .
104
Y. Gao et al.
Form the definition, the swarm fitness δ 2 shows that all particles convergence degree. The smaller δ 2 , the swarm diversity is small, the nearer the particles will rapidly cluster together so that particle swarm cannot be further improved. Therefore,we consider that it has been in premature convergence when δ 2 < C(C is a given constant). Definition 2. (Gene Density)In {0, 1}D ,let ⎛ ⎞ x11 · · · x1D ⎜ ⎟ X = ⎝ ... . . . ... ⎠ xN 1 · · · xN D where N is the size of this population, D is the dimension of search space,we take each column of X as gene fragment, ρj is the gene density of the j th gene fragment in X ,then gene density ρj is defined as: ρj =
N 1 x(i, j). N i=1
(9)
Form the definition, the gene density ρj shows that all particles convergence degree. The smaller or larger ρj , the genes of the gene fragment in X are very similar, so that the genetic fragment genes lose diversity. At this time, either most of the particles having the same fitness value or most of the gathering in a few specific locations particles of the particles would be premature, namely, the swarm fitness variance is tend to 0 or gene density is approach to 0 or 1. Thereforewe adopt gene density mutation or the strategy of the population re-initialization in order to increase the diversity of population and pseudo-code in table 1. In δ 2 < C premise, (i) If ρj > β,it shows that the genes of j th gene fragment are most to 1, we transform many 1 to 0 at a certain probability r, and make sure α<ρj <β. Mutation probability r is ranged from 1 − βρj to1 − αρj by calculation. Namely, if xij = 1 and 1 − βρj
β α Namely, if xij = 1 and 1 − 1−ρ
2.4
The Description of the New PSO Algorithm
Now, we describe the proposed algorithm for solving unconstraint problems (2), this algorithm is denoted as PSO-CSGDM.
PSO Algorithm with Chaos and Gene Density Mutation
105
Table 1. Pseudo-code of overcoming premature phenomena strategy if δ 2 < C for j=1:D if ρj > β for i=1:N if x(i, j) = 1 and 1 − βρj
step 1. (Initialization)The size of population N the search space dimension D , acceleration factor c1 , c2 , the maximum iteration time Tmax ,the threshold C, α, β, penalty factor δ1 , set t = 1 . step 2. According to section 3.2.1, we get the initial population. step 3. Evaluating the fitness fi of the particle ith , i = 1, 2, · · · , N , set the initial position of each particle pi ,i.e. pi = xi , the global optimal position pg = argmin(f ). step 4. Perform operation of all the particles as follows: step 4.1. Update the velocity and position according to Eqs.(4)and (7), and put them in a certain extent; step 4.2. Evaluating the fitness fi of the particle ith , i = 1, 2, · · · , N , according to Eqs.(2). step 5. Update the individual optimal position p and the global optimal position pg ; step 6. Evaluating the swarm fitness variance by Eqs. (8) and gene density according to Eqs. (9). The particles in premature convergence are mutated by section 3.2.. Then update the individual optimal position p and the global optimal position pg ; step 7. If a stopping criterion is met, then output pg and its value; Otherwise let t = t + 1, go back to step 4.
106
Y. Gao et al.
3
Numerical Experiments
3.1
Test Function
Example 1[4]: Let us consider the following zero-one programming problem: ⎧ ⎪ ⎪ min 20x1 − 10x2 + 6x3 , ⎨ s.t. x1 + 2x2 − x3 ≥ 2, 2x1 + x2 + x3 ≤ 6, ⎪ ⎪ ⎩ x1 , x2 , x3 ∈ {0, 1}. Example 2[4]: Let us consider the following zero-one programming problem: ⎧ min −2x1 + x2 − 5x3 + 3x4 − 4x5 , ⎪ ⎪ ⎨ s.t. 3x1 − 2x2 + 7x3 − 5x4 + 4x5 ≤ 6, x1 − x2 + 2x3 − 4x4 + 2x5 ≤ 0, ⎪ ⎪ ⎩ x1 , x2 , x3 , x4 , x5 ∈ {0, 1}. Example 3[4]: Let us consider the following zero-one programming problem: ⎧ min −6x1 + 5x2 + x1 x3 , ⎪ ⎪ ⎪ ⎪ ⎨ s.t. x2 = x21 , −x1 + x2 − 2x3 ≤ 5, ⎪ ⎪ 3x1 + 5x2 − 7x3 ≤ −5, ⎪ ⎪ ⎩ x1 , x2 , x3 ∈ {0, 1}. Example 4: Let us consider the following zero-one quadratic programming problem, its global optimal value is −27. 1 min xT Qx, x ∈ {0, 1}5 . 2 Where
⎛
⎞ 15 −4 1 0 2 ⎜ −4 −17 2 1 1 ⎟ ⎜ ⎟ ⎟ Q=⎜ ⎜ 1 2 −25 −8 1 ⎟ ⎝ 0 1 −8 30 −5 ⎠ 2 1 1 −5 −20
Example 5[2]: Let us consider the following nonlinear class of zero-one knapsack problem: ⎧ m Ni ⎪ min i=1 ( j=1 cj xj + di ), ⎪ ⎪ N ⎪ ⎪ ⎨ s.t. j aj xj ≥ b, xj ∈ {0, 1}, aj , cj , b, di ≥ 0, j = 1, 2, · · · , N, i = 1, 2, · · · , m, ⎪ ⎪ ⎪ b≤ N a , ⎪ ⎪ m j=1 j ⎩ i=1 Ni = N. Example 6: Let us consider the following zero-one programming problem: ⎧ 1 T + dT x, ⎨ min f (x) n= 2 x Qx 1 2 s.t. 2 j=1 amj xj + dTm x ≤ tm , m = 1, 2, · · · , M, ⎩ xi ∈ {0, 1}, i = 1, 2, · · · , n.
PSO Algorithm with Chaos and Gene Density Mutation
3.2
107
Parameter Settings
The procedure of the proposed algorithm is compiled with Matlab 7.0. In the procedure, we let the maximum iteration time Tmax = 50, acceleration factor c1 = c2 = 1.8, the threshold C = 0.382, α = 0.25, β = 0.75, the inertia weigh ω from 0.95 linearly decreasing to 0.4. 3.3
Experimental Results and Analysis
In this paper, test process is divided into two steps as following: (1) The feasibility of PSO-CSGDM In this section, in order to explain the feasibility of PSO-CSGDM, we will give some computational results of the proposed algorithm through four examples from Reference[4] , each experiment runs 30 times independently, the experimental results were obtained by using PSO-CSGDM algorithm with the above experimental settings. The optimal solution, optimal value, success ratio and CPU for each problem for 30 independently running are summarized in Table 2.
Table 2. Comparison of new algorithm (PSO-CSGDM) and reference [4] Examples Example 1 PSO-CSGDM Ref[4] Example 2 PSO-CSGDM Ref[4] Example 3 PSO-CSGDM Ref[4] Example 4 PSO-CSGDM
Optimal solution (0, 1, 0) (0, 1, 0) (0, 0, 1, 1, 1) (1, 1, 0, 1, 1) (0, 0, 1) (0, 0, 1) (0, 1, 1, 0, 1)
Optimal value Success ratio (%) CPU(s) -10 100 0.0469 -10 -6 100 0.0781 -2 0 100 0.0156 0 -27 100 0.0625
Form Table 2, it can be seen that the new algorithm quickly search the optimal solution for the low-dimension (3˜5 dimension), at the same time, there is no need initial point of the problem. In particular, comparing with reference [4], the optimal solution of the example 2 is x∗ = (1, 1, 0, 1, 1), optimal f (x∗ ) = −2, but using the new algorithm can get the optimal solution every experiment, optimal value is f (x∗ ) = −6. It shows that the new algorithm is effective. (2) The validity of PSO-CSGDM For this example, we generate some random problems to test the proposed algorithm. All elements of a(j)1×N and c(j)1×N are randomly generated in regions [1, 50] and [1, 20], b = α N a ,where α is randomly generated in regions (0, 1), mj=1 j di = j∈Ni (20 − cj ), i=1 Ni = N , i = 1, 2, · · · , m . We transform example 5 into the following formula in order to prevent the solution overflowing.
108
Y. Gao et al.
⎧ i m N ⎪ j=1 cj xj +di ⎪ min , ⎪ i=1 σ ⎪ N ⎪ ⎪ ⎪ s.t. ⎪ j aj xj ≥ b, ⎨ xj ∈ {0, 1}, aj , cj , b, di ≥ 0, j = 1, 2, · · · , N, i = 1, 2, · · · , m, N ⎪ b ≤ j=1 aj , ⎪ ⎪ m ⎪ ⎪ ⎪ ⎪ i=1 Ni = N, ⎪ N i cj ⎩ σ = max1≤i≤,m ( j=1 +di ).
(10)
These problems vary (N, m) in size from (80, 2) to (10000, 20), the experimental results were obtained by using PSO CSGDM algorithm with the above experimental settings. The minimal optimal value, mean optimal value, standard deviation (Std.) of optimal value and mean CPU for each problem for 30 independently running are summarized in Table 3. As example 5 belongs to stochastic optimization problem, the initial coefficients are different at each time, but it can be seen from the table 3, under the same conditions, it can be found the optimal solution in less time than reference [2] for different (N, m) by using the new algorithm. Therefore it can be shown that the new algorithm is valid. For this example, we generate some random problems to test the proposed algorithm. These problems vary(N, M )in size from (10, 5) to (1000, 200) .All elements of (Q0 )n×n ,(d0 )n×1 and (dm )n×1 are randomly generate in regions [−1, 0],[−3, −2] and [1, 5],respectively, ami and tm are generated in [0, 10] and [400, 500], where j = 1, 2, · · · , n, m = 1, 2, · · · , M .The experimental results were obtained by using PSO-CSGDM algorithm with the above experimental settings. The minimal optimal value, mean optimal value, Table 3. The result of the formula (10) (N,m) (80, 2) (80, 5) (80, 10) (80, 20) (200, 2) (200, 5) (200, 10) (200, 20) (800, 2) (800, 5) (800, 10) (800, 20) (1000, 10) (1000, 20) (5000, 10) (5000, 20) (10000,10) (10000,20)
Min 0.3648 0.0254 3.5488e-004 7.6440e-008 0.3708 0.0159 0.0012 7.5926e-007 0.4858 0.1175 0.0081 2.9368e-005 0.0164 5.7645e-005 0.0262 3.7183e-004 0.0297 7.1415e-004
Mean 0.4108 0.0508 5.9041e-004 9.0777e-008 0.4125 0.0565 0.0038 2.7067e-006 0.5000 0.1405 0.0176 3.1434e-004 0.0244 2.1210e-004 0.0321 7.9916e-004 0.0358 0.0010
Std. 0.0277 0.0155 2.2784e-004 7.8526e-008 0.0173 0.1032 0.0019 2.3232e-006 0.0080 0.0110 0.0035 1.9001e-004 0.0045 1.0975e-004 0.0033 2.1539e-004 0.0021 1.8410e-004
CPU(s) 0.0187 0.0203 0.0214 0.0255 0.0354 0.0339 0.0432 0.0422 0.1063 0.1083 0.1203 0.1146 0.1401 0.1427 0.9505 0.9411 2.1432 2.1182
PSO Algorithm with Chaos and Gene Density Mutation
109
Table 4. The result of the example 6 (N,M) (10, 5) (20, 10) (50, 25) (100, 30) (120, 40) (200, 50) (400, 60) (600, 100) (800, 80) (1000, 200)
Min -50.0167 -117.4873 -161.1217 -598.7031 -820.2338 -2.4063e+003 -9.3295e+003 -2.0892e+004 -3.7420e+004 -5.9212e+004
Mean -42.3417 -96.5805 -119.4951 -500.0089 -720.8680 -2.0462e+003 -8.4206e+003 -1.9447e+004 -3.4856e+004 -5.6006e+004
Std. 4.1484 7.3489 18.3410 59.1474 75.6152 129.5430 485.8764 838.4629 1.4292e+003 1.8257e+003
CPU(s) 0.0073 0.0531 0.2516 0.3896 0.5578 1.2401 13.4203 46.1719 63.2005 249.0297
standard deviation (Std.) of optimal value and mean CPU for each problem for 30 independently running are summarized in Table 4. As can be seen from Table 4,our algorithm on randomly generated the same nonlinear programming problem get the optimal solution with increasing scale of problem and the more constrained conditions in a very short time. It shows that the new algorithm is valid.
4
Conclusion
In this paper, we transform zero-one nonlinear programming problems into unconstrained zero-one integer optimization problems by using penalty function. A particle swarm optimization algorithm with chaos and gene density mutation is given to solve unconstrained zero-one nonlinear program problems. We use chaos to initialize populations and use the 0-1 integer operation in updating positions to produce 0-1 integer points. We use the fitness variance and gene density strategy to determine whether the population premature phenomenon or not. If it appears that we use the gene density mutation to increase the population diversity or reset population. Numerical simulations show that PSO-CSGDM algorithm for most test functions is feasible, effective and has high precision.
References 1. Hilier, F.S., Liberman, G.J.: Introduction to mathematical programming. Graw Hill (1981) 2. Kuno, T.: Solving a class of multiplicative programs with 0-1 knapsackconstraints. Journal of Optimization Theory and Applications 103(1), 121–135 (1999) 3. Ying, S., Yuelin, G.: A double objective decision-making model of loans portfolio optimization and particle Swarm optimization algorithm. In: International Conference on Computational Intelligence and Software Engineering, vol. 12 (2009) 4. Anjidani, M., Effati, S.: Steepest descent method for solving zero-one nonlinear programming problems. Applied Mathematics and Computation 193, 197–202 (2007)
110
Y. Gao et al.
5. Sui, Y., Jia, Z., Du, J.: A continuous approach to 0-1 nonlinear problem and its solution with genetic algorithm. Journal of beijing university of technology 34(8), 785–791 (2008) (in china) 6. Chen, G., Liao, X.: A penalty function algorithm for solving 0-1 nonlinear mixed integer programming. Communication on applied mathematics and computation 21(1), 111–115 (2007) (in china) 7. Liu, J., Gao, Y., Li, H.: Improved different evolution algorithm of 0-1 nonlinear programming problems. Computer Engineering and Applications 46(15), 43–46 (2010) (in china) 8. Bazaraa, M.S., Sherali, H.D., Shetty, C.M.: Nonlinear programming theory and algorithm. Academic press, New York (1979) 9. Kennedy, I., Eberhart, R.: Particle swarm optimization. In: IEEE Intentional Conference on Neural Networks, pp. 1942–1948 (1995) 10. Shi, Y., Eberhart, R.: A modified swarm optimizer. In: IEEE International Conference of Evolutionary Computation, Anchorage, AK, USA, pp. 125–129 (1998) 11. Caponetto, R., Fortuna, L., Fazzino, S.: Sequences to improve the performance of evolutionary algorithms. IEEE Trans on Evolutionary Computation 7(3), 289–304 (2003) 12. Lv, Z., Hou, Z.: Particle swarm optimization with adaptive mutation. Acta Electronica Sinica 32(3), 416–420 (2004)
A New Binary PSO with Velocity Control Laura Lanzarini, Javier L´ opez, Juan Andr´es Maulini, and Armando De Giusti III-LIDI (Institute of Research in Computer Science LIDI) Faculty of Computer Science, National University of La Plata La Plata, Buenos Aires, Argentina
Abstract. Particle Swarm Optimization (PSO) is a metaheuristic that is highly used to solve mono- and multi-objective optimization problems. Two well-differentiated PSO versions have been defined – one that operates in a continuous solution space and one for binary spaces. In this paper, a new version of the Binary PSO algorithm is presented. This version improves its operation by a suitable positioning of the velocity vector. To achieve this, a new modified version of the continuous gBest PSO algorithm is used. The method proposed has been compared with two alternative methods to solve four known test functions. The results obtained have been satisfactory. Keywords: Swarm Intelligence, PSO, Binary PSO, Velocity Control.
1
Introduction
Particle Swarm Optimization (PSO) is a metaheuristic proposed by Kennedy and Eberhart [1]. Its operation is based on the simulation of simple social models, and it has been successfully used in function optimization, as well as in neural network training [2]. There are different versions that were developed from the original idea, most of them related to the variation of various algorithm parameters or to the combination and variation of various topologies, sizes, and number of populations [3][4][5][6]. Variations of the algorithm with changes in the way particle velocity is updated have also been proposed, aimed at achieving diversity and avoiding stagnation in the search process [7] [8] [9]. In [10], Kennedy and Eberhart introduced a discrete binary version of PSO for discrete optimization problems. With binary PSO, each particle is represented as a string of zeros and ones. Unlike the continuous version, the discrete version uses the velocity vector as a probability function that allows deciding the value that should take each binary digit that determines the position of the individual. This paper is organized as follows: In Section 2, the basic components of the PSO algorithm, both in its continuous and binary versions, are described. In Section 3, the method proposed is described, as well as the differences with its original version. In Section 4, the results obtained when comparing the performance of the new algorithm with other binary versions are presented. Finally, Section 5 includes a summary of this paper highlighting the most relevant aspects. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 111–119, 2011. c Springer-Verlag Berlin Heidelberg 2011
112
2 2.1
L. Lanzarini et al.
Particle Swarm Optimization Continuous Particle Swarm Optimization
In PSO, each individual represents a possible solution to the problem and adapts following three factors: its knowledge of the environment (its fitness value), its previous experiences (its memory), and the previous experiences of the individuals in its neighborhood [1]. In this type of technique, each individual is in continuous movement within the search space and never dies. Each particle is composed by three vectors and two fitness values: – Vector xi = (xi1 , xi2 , . . . , xin ) stores the current position of the particle – Vector pBesti = (pi1 , pi2 , . . . , pin ) stores the best solution found for the particle – Velocity vector vi = (vi1 , vi2 , . . . , vin ) stores the gradient (direction) based on which the particle will move. – The fitness value f itness xi stores the suitability value of the current solution. – The fitness value f itness pBesti stores the suitability value of the best local solution found so far (vector pBesti ) The position of a particle is updated as follows: xi (t + 1) = xi (t) + vi (t + 1)
(1)
As explained above, the velocity vector is modified taking into account its experience and environment. The expression is: vi (t + 1) = w.vi (t) + ϕ1 .rand1 .(pi –xi (t)) + ϕ2 .rand2 .(gi –xi (t))
(2)
where w represents the inertia factor [12], ϕ1 and ϕ2 are acceleration constants, rand1 and rand2 are random values belonging to the (0,1) interval, and gi represents the position of the particle with the best pBest fitness in the environment of xi (lBest or localbest) or the entire swarm (gBest or globalbest). The values of w, ϕ1 and ϕ2 are important to ensure the convergence of the algorithm. For detailed information regarding the selection of these values, please see [13] and [14]. 2.2
Binary Particle Swarm Optimization
PSO was originally developed for a space of continuous values and it therefore poses several problems for spaces of discrete values where the variable domain is finite. Kennedy and Eberhart [10] presented a discrete binary version of PSO for these discrete optimization problems. In binary PSO, each particle uses binary values to represent its current position and the position of the best solution found. The velocity vector is updated as in the continuous version, but determining the probability that each bit of the position vector becomes 1. Since this is a probability, the velocity vector should
A New Binary PSO with Velocity Control
113
be mapped in such a way that it only contains values within the [0,1] range. To this end, the sigmoid function indicated in (3) is applied to each of its values. vij (t) = sig(vij (t)) =
1 1 + e−vij (t)
Then, the particle position vector is updated as follows 1 if randij < sig(vij (t + 1)) xij (t + 1) = 0 if not
(3)
(4)
where randij is a number ramdomly generated by an uniform pdf in [0,1]. It should be mentioned that the incorporation of the sigmoid function radically changes the way in which the velocity vector is used to update the position of the particle. In continuous PSO, the velocity vector takes on higher values first to facilitate the exploration of the solution space, and then reduces them to allow the particle to stabilize. In binary PSO, the opposite procedure is applied. Each particle increases its exploratory ability as the velocity vector reduces its value; that is, when vij tends to zero, lim sig(vij (t)) = 0.5, thus allowing each binary t→∞ digit to take a value of 1 with a probability of 0.5. This means that it could take on either value. On the contrary, when the velocity vector value increases, lim sig(vij (t)) = 1, and therefore all bits will change to 1, whereas when the t→∞
velocity vector value decreases, taking negative values, lim sig(vij (t)) = 0 and t→∞ all bits will change to 0. It should be noted that, by limiting the velocity vector values between −3 and 3, sig(vij ) ∈ [0.0474, 0.9526], whereas for values above 5, sig(vij ) 1 and for values below −5, sig(vij ) 0.
3
Binary PSO with Velocity Control. Method Proposed.
Based on the observations of the behavior of the velocity vector in the binary PSO algorithm defined in [10], and on the importance of correctly calculating the probabilities that allow changing each binary digit, a modified version of the original PSO algorithm to modify the velocity vector is proposed. Under this new scheme, each particle will have two velocity vectors, v1 and v2. The first one is updated according to (5). v1i (t + 1) = w.v1i (t) + ϕ1 .rand1 .(2 ∗ pi − 1) + ϕ2 .rand2 .(2 ∗ gi − 1)
(5)
where the variables rand1 , rand2 , ϕ1 and ϕ2 operate in the same way as in (3). The values pi and gi correspond to the ith binary digit of the pBesti and gBest vectors, respectively. The most significant difference between (3) and (5) is that in the latter, the shift of vector v1 in the directions corresponding to the best solution found by the particle and the best global solution does not depend on the current position of the particle. Then, each element of the velocity vector v1 is controlled by applying (6) ⎧ if v1ij (t) > δ1j ⎨ δ1j v1ij (t) = −δ1j if v1ij (t) ≤ −δ1j (6) ⎩ v1ij (t) if not
114
L. Lanzarini et al.
where
limit1upperj − limit1lowerj (7) 2 That is, velocity vector v1 is calculated with (5) and controlled with (6). Its value is used to update velocity vector v2, as shown in (8). δ1j =
v2(t + 1) = v2(t) + v1(t + 1)
(8)
Vector v2 is also controlled as vector v1 by changing limit1upperj and limit1lowerj by limit2upperj and limit2lowerj , respectively. This will yield δ2j , which will be used as in (6) to limit the values of v2. Then, the new position of the particle is calculated with (4) using the values of v2 as arguments of the sigmoid function.
4
Results Obtained
In this section, the performance of the proposed binary PSO variation will be compared to the performance of the method proposed by Kennedy and Eberhart in [10] and the binary PSO defined in [11]. A known set of N-dimensional test functions was minimized. Forty independent runs were performed for each of the methods using 2,000 iterations. N=3, 5,10 and 20 variables were used. Population size was always 20 particles. The values of limit1 and limit2 are the same for all variables; [0; 1] and [0; 6], respectively. Thus, probabilities within the interval [0.0474, 0.9526] can be obtained. The values for ϕ1 and ϕ2 were set at 0.25 in all cases. As regards [10] and [11] methods, velicty limits were set within [−3, 3] in order to keep the same range of probabilities. The test functions used were Sphere, Rosenbrock, Griewangk, and Rastrigin, which were assigned numbers 1 to 4, respectively. In table 1, the fitness value for the best solution found by each method is shown, as well as the average best fitness value for all 40 runs. As it can be observed, the method proposed finds the best solutions and has the lowest average fitness values. Table 2 indicates whether the results obtained are significant. The symbol was used to represent that p − value < 0.05, indicating that the null hypothesis must be rejected. The test carried out is of the lower tail type, whose null hypothesis states that the mean of the method indicated on the corresponding row is not lower than the mean of the method indicated on the corresponding column. The symbol indicates that the null hypothesis is not rejected. Figure 1 shows the plot box diagrams calculated with the best results obtained in each of the 40 runs. Each column corresponds to a different function. Diagrams on the same row correspond to the same number of variables. From top to bottom, rows 1, 2, 3 and 4 correspond to the results obtained when assessing the functions with 3, 5, 10 and 20 variables, respectively. In each figure, methods are numbered from 1 to 3 and correspond to: the method proposed, Binary PSO from [10], and Binary PSO from [11], respectively. As it can be seen, the method proposed offers better solutions than the other two PSO alternatives.
A New Binary PSO with Velocity Control
Table 1. Results obtained Proposed method Nro. Nro. Best Average Var Funct Fitness best Fitness 3 1 0 0 3 2 7,0e-04 2,8 3 3 2,1e-09 3,3e-03 3 4 5,4e-08 5,4e-08 5 1 0,0 3,1e-09 5 2 2,2 28,7 5 3 2,6e-09 8,2e-03 5 4 9,0e-08 1,3e-07 10 1 8,2e-05 9,8e-04 10 2 7,3 141,0 10 3 1,3e-02 7,6e-02 10 4 0,8 4,3 20 1 3,3e-01 8,1e-01 20 2 1865,9 10105 20 3 1,4e-01 2,7e-01 20 4 27,7 43,0
Binary PSO [10] Best Average Fitness best Fitness 0 1,2e-09 1,1e-05 3,0 2,1e-09 6,8e-03 5,4e-08 5,4e-08 1,4e-07 1,3e-05 2,1 111,5 1,6e-03 2,0e-02 2,3e-04 5,1e-01 1,3e-02 7,1e-02 334,0 2812,8 7,7e-02 1,9e-01 7,5 15,3 1,7e+00 3,9e+00 2,8e+05 1,2e+07 9,3e-01 1,0e+00 52,7 88,9
Binary PSO [11] Best Average Fitness best Fitness 1,8e-08 6,3e-07 2,0e-03 5,6 4,2e-06 8,8e-03 8,9e-06 7,6e-04 1,7e-04 1,2e-03 7,2 278,3 1,9e-02 6,6e-02 5,0e-01 3,7 9,7e-02 6,2e-01 92013,0 613510,0 5,2e-01 7,3e-01 13,7 44,0 1,2e+01 1,9e+01 1,2e+08 5,0e+08 1,3e+00 1,4e+00 169,8 215,2
Table 2. Results of hypothesis tests nro Var. 3 3 3 5 5 5 10 10 10 20 20 20
M´etodo Proposed binary Binary PSO [10] Binary PSO [11] Proposed binary Binary PSO [10] Binary PSO[11] Proposed binary Binary PSO [10] Binary PSO [11] Proposed binary Binary PSO [10] Binary PSO [11]
Proposed Binary PSO PSO PSO PSO PSO
Binary PSO Binary PSO [10] [11]
115
116
L. Lanzarini et al.
Fig. 1. Boxplots corresponding to the best solutions obtained in each of the 40 independent runs. The method is indicated on the x-axis: 1 = Method proposed, 2 = Binary PSO from [10] and 3 = Binary PSO from [11]. Each row indicates the results obtained with 3, 5, 10 and 20 variables.
Figure 2 is organized in a similar fashion. It shows the boxplots corresponding to the average fitness of each of the 40 runs performed for each function and for each number of variables considered. The populational diversity of each method can be observed there. In general, based on box heights, it can be said that, even though the method from [11] presents the greater inter-quartile ranges, its solutions are the worst. As for the method proposed and the Binary PSO from [10], ranges are equivalent.
A New Binary PSO with Velocity Control
117
Fig. 2. Boxplots corresponding to the average fitness of each of the 40 independent runs. The method is indicated on the x-axis: 1 = Method proposed, 2 = Binary PSO from [10] and 3 = Binary PSO from [11]. Each row indicates the results obtained with 3, 5, 10 and 20 variables.
5
Conclusions
A variation of the binary PSO method originally proposed in [10] that controls velocity vector changes by using a variation of the continuous PSO method has been presented. The results obtained by minimizing a set of test functions are better than those obtained with the methods defined in [10] and [11] for all the cases assessed. Table 2 shows that, as the number of variables used increases, the difference in means becomes more significant.
118
L. Lanzarini et al.
Figure 1 shows that, in most of the runs, the results obtained with the method proposed have been better than those obtained with the other two methods. Similarly, Figure 2 shows that the method proposed generates the best population average fitness results, at least for the test functions assessed. If we consider the average fitness inter-quartile range (height of the boxplots in Figure 2), it can be stated that the method proposed in this paper and the Binary PSO from [10] are equivalent, the best solutions being offered by the former. Currently, our research is focused on measuring the performance of the algorithm proposed with an increasing number of dimensions in the problem, in order to apply the algorithm to real-world problem resolution. It would also be interesting to analyze its performance using variable-size PSO [6]. This would allow adapting the swarm size based on the complexity of the problem to solve.
References 1. Kennedy, J., Eberhart, R.: Particle Swarm Optimization. In: IEEE International Conference on Neural Networks, Perth, Australia, vol. IV, pp. 1942–1948. IEEE Service Center, Piscataway (1995) 2. Hu, X., Shi, Y., Eberhart, R.: Recent Advances in Particle Swarm. In: Congress on Evolutionary Computation, CEC 2004, vol. 1, pp. 90–97 (2004) 3. Cagnina, L., Esquivel, S., Coello Coello, C.: A bi-population PSO with a shakemechanism for solving constrained numerical optimization. In: IEEE Congress on Evolutionary Computation, CEC 2007, pp. 670–676 (2007) 4. Mohais, A., Mendes, R., Ward, C., Postho, C.: Neighborhood Re-Structuring in Particle Swarm Optimization. In: Zhang, S., Jarvis, R.A. (eds.) AI 2005. LNCS (LNAI), vol. 3809, pp. 776–785. Springer, Heidelberg (2005) 5. Atyabi, A., et al.: Particle Swarm Optimizations: A Critical Review. In: 5th International Conference on Information and Knowledge Technology, Mashad, Iran (2007) 6. Lanzarini, L., Leza, V., De Giusti, A.: Particle Swarm Optimization with Variable Population Size. In: Rutkowski, L., Tadeusiewicz, R., Zadeh, L.A., Zurada, J.M. (eds.) ICAISC 2008. LNCS (LNAI), vol. 5097, pp. 438–449. Springer, Heidelberg (2008) 7. Riget, J., Vesterstrom, J.: A Diversity-Guided Particle Swarm Optimizer – the ARPSO. EVALife Project Group Department of Computer Science (2002) 8. Clerc, M.: Stagnation Analysis in Particle Swarm Optimisation or What Happens When Nothing Happens.Department of Computer Science; University of Essex. Technical Report CSM-460 (2006) 9. Peer, E., Van den Bergh, F., Engelbrecht, A.: Using Neighbourhoods with the Guaranteed Convergence PSO. In: Swarm Intelligence Symposium, SIS 2003, pp. 235–242 (2003) 10. Kennedy, J., Eberhart, R.: A discrete binary version of the particle swarm algorithm. In: Proc. of the World Multiconference on Systemics, Cybernetics and Informatics (WMSCI), pp. 4104–4109 (1997) 11. Khanesar, M., Teshnehlab, M., Shoorehdeli, M.: A novel Binary Particle Swarm Optimization. In: 18th Mediterranean Conference on Control and Automation, Athens, pp. 1–6 (June 2007)
A New Binary PSO with Velocity Control
119
12. Shi, Y., Eberhart, R.: Parameter Selection in Particle Swarm Optimization. In: Porto, V.W., Waagen, D. (eds.) EP 1998. LNCS, vol. 1447, pp. 591–600. Springer, Heidelberg (1998) ISBN 3-540-64891-7 13. Clerc, M., Kennedy, J.: The particle swarm – explosion, stability and convergence in a multidimensional complex space. IEEE Transactions on Evolutionary Computation 6(1), 58–73 (2002) 14. Van den Bergh, F.: An analysis of particle swarm optimizers. Ph.D. dissertation. Department Computer Science. University Pretoria. South Africa (2002)
Adaptive Particle Swarm Optimization Algorithm for Dynamic Environments Iman Rezazadeh1, Mohammad Reza Meybodi2, and Ahmad Naebi1 1
Department of Computer Engineering, Qazvin Islamic Azad University, Qazvin, Iran 2 Department of Computer Engineering and Information Technology, Amirkabir University of Technology, Tehran 15914, Iran {Eiman.rezazadeh,ahmad.naebi}@gmail.com,
[email protected]
Abstract. Many real world optimization problems are dynamic in which global optimum and local optimum change over time. Particle swarm optimization has performed well to find and track optimum in dynamic environments. In this paper, we propose a new particle swarm optimization algorithm for dynamic environments. The proposed algorithm utilizes FCM to adapt exclusion radios and utilize a local search on best swarm to accelerate progress of algorithm and adjust inertia weight adaptively. To improve the search performance, when the search areas of two swarms are overlapped, the worse swarms will be removed. Moreover, in order to track quickly the changes in the environment, all particles in the swarm convert to quantum particles when a change in the environment is detected. Experimental results on different dynamic environments modeled by moving peaks benchmark show that the proposed algorithm outperforms other PSO algorithms, for all evaluated environments. Keywords: MPB, Dynamic Environment, PSO, Moving Peaks.
1 Introduction PSO is relatively a new heuristic search method, this algorithm has successfully been utilized in variety of applications such as pattern recognition, image processing, machine learning, etc. PSO is an optimized algorithm which is inspired from social and group life of animals like birds in order to get the optimum solution. In PSO a group of particles are located in search area. Giving that each particle presents a candidate solution of the optimization problem. Location of each particle is driven from the best location which has ever met (in terms of self-experience) and location of the best neighborhood particles (in terms of neighborhood experience). The applications in which the evolutionary algorithms are applied are divided in to two parts: Static and Dynamic. Majority of the real world problems have dynamic nature and are subjected to change over the time. For example, the new tasks that are received continuously and must be scheduled. Parameters which effect the dynamic environment, the frequency of the change, severity of the change, predictability of the change, Cycle length and cycle accuracy. Dynamic environments are divided in to four sections based on defined settings: constant (identical change in each cycle), periodical, homogeneous and alternating [6]. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 120–129, 2011. © Springer-Verlag Berlin Heidelberg 2011
Adaptive Particle Swarm Optimization Algorithm for Dynamic Environments
121
Drawbacks of The PSO in dynamic environments are: old memory and diversity loss which are explained in next paragraphs as bellow: In the case of any change in environment, the particle’s memory is not true anymore and can have a very bad effect on search process. This problem can be solved by two methods: either re-evaluating the memory or forgetting the memory. In reevaluating, the memory of each particle is verified in each stage. And in forgetting the memory the current location of each particle is replaced with its memory and overall optimization is updated accordingly. Diversity loss occurs when the swarm converges on a few peaks in the landscape and loses its ability to find new peaks, which is required after the environment changes. There are two approaches to deal with diversity losing problem. In the first approach, a diversity maintenance mechanism runs periodically (or when a change is detected) and re-distributes the particles if the diversity falls below a threshold. In the second approach, diversity is always monitored and as soon as it falls below a threshold, the swarm will be re-diversified. The rest of the paper is organized as follows. In Section 2, related works on dynamic environments are reviewed, in section 3, the proposed algorithm is presented. In Section 4, presents the experimental results of the proposed algorithm along with comparison with alternative approaches from the literature. Finally section 5 includes the conclusion of the present paper.
2 Related Works MPSO is suggested by Blackwell and Branke [4.5]. The particles in MPSO are divided to M independent groups. Each group contains a fixed number of particles. Information sharing in each group is done in global manner. This mechanism keeps the diversity in two levels: group is divided into sub-groups which penetrate in different sections of search area (diversity between the groups). And each sub-group contains some quantum particles which provide diversity inside the group. In [10], the effectiveness of this algorithm is analyzed and demonstrated that the quantum articles used in this algorithm are only useful when the environment is subject to change and doesn’t have much efficiency in other cases. In [11] because of less efficiency of quantum particles, two types of strategies are utilized: in the first strategy, in the time of detecting any change in environment, the particles are divided to three parts: the first part remains without change, the second part like quantum particles in a cloud are assigned by value of centrality of the best particle and radius of “r”, and the third part are distributed in whole of the environment. In second strategy useless swarms are detected using fuzzy logic and stopped in order not to waste the system’s resources. In [12] a Cauchy Mutation is utilized for detecting the changes in environment, instead of quantum particles. Also the small neighborhoods are used inside the groups. In this work, some of the particles are kept away from center when the group is going to be convergent in order to keep the diversity. SPSO [5] distributes the particles dynamically between the types. SPSO is extended based on the theory of the types. The limitation of the types depends on parameter rs which represents the measured radiuses in Euclidean distance from the center of types to its borders. The center of a type so called the “type’s core”, usually is a particle with the best fitness. All of the particles within the rs radius from the core are categorized as a similar type.
122
I. Rezazadeh, M.R. Meybodi, and A. Naebi
In FMSO [7], two search algorithm, one in parent group and another in child group are utilized. The global search function is utilized in parent group in order to keep the diversity and finding the probable areas in search environment. Meanwhile hand the child groups are used as local explorer. FMSO starts with a parent group which does the search function in environment In each level if the best founded location in parent’s group is improved a child group in centrality of the founded location and radius of rs from this location is created. Kamosi improved this procedure in [9]. Hashemi and Meybodi introduced cellular PSO, a hybrid model of cellular automata and PSO[3]. In cellular PSO, a cellular automaton partitions the search space into cells. At any time, in some cells of the cellular automaton a group of particles search for a local optimum using their best personal experiences and the best solution found in their neighborhood cells. To prevent losing the diversity, a limit on the number of particles in each cell is imposed. In KPSO [1], in order to divide the problem into sub-problems consecutive repetition, all particles in problem domain are clustered and each cluster performs the search process independently. At first in this mechanism, the grouping process is performed and stays unchanged for several repetitions. So, there will be enough time for algorithm to do the search. Also because of utilization of the clustering, spatial location of the particles in various groups are considered. Drawback of this approach is defining the suitable number of clusters. In [8], Lee and Yong cluster the particles using fuzzy clustering and grouped the particles using the result of the clustering then according to the progress of the algorithm compound the clusters. If the particles of two clusters are a few, and near to each other, these two clusters are compound. Also in order to solve the problem of two steps forward and two steps back in PSO, when the best particles are updating, the dimensions of that particles are updated one by one. In [13] Lee and Yong, at first all of the particles are distributed in the environment and in each repetition the neighboring particles make one group. This process continues until there is no single particle group in the environment. If two groups are closer than a threshold, then they compound together. And if the number of particles in one group is so many then the worse particles are deleted. If any changes have been made in the environment, again a series of the particles are produced in order to keep the diversity of the particles.
3 Proposed Method In our proposed model, the inertia weight has been adjusted adaptively. If the particles of swarm have been improved in previous iteration, it shows that the previous movement of the particles is good and they should continue their pervious movement. So the inertia weight must be high. If the particles of swarm have been failed, it shows that their previous movement isn’t good enough and it is better that these particles don’t continue the previous movement so the inertia weight must be decreased. But if all swarms utilize only this method, they may fall in local optimum. To prevent this, we must not let algorithm reduce all swarms inertias weight more than enough. The groups that have better fitness may be closer to global optimum. So these groups have to have low inertial weight to do local search for groups that have worst
Adaptive Particle Swarm Optimization Algorithm for Dynamic Environments
123
fitness may be far from global optimum and therefore may fall in local optimum. In order to avoid from local optimum and find the global optimum, they should have bigger inertial weight to do global search. In this way, the group descending sorted and ordered with number at first to last. First group has the order of one and the last group has the maximum order. The rank of each group is divided to the number of groups and selected as the minimum of group inertial weight. So this way, inertial weight of each group is calculated according to (1), (2): (1) (2) At first the groups are generated randomly, and start the search. Each group is composed with some PSO particles. Since small neighborhoods causes reduction of convergence’s speed, and increase in diversity, performs well in complex environments, this algorithm utilize the small neighborhoods. The less the number of particles for the fixed number of groups, the less the number of evaluations which is leading to keep the environment unchanged for more iterations and effective search will be performed in environment. The groups are categorized to two categories: Converged and Free. If the numbers of free groups in the environment are less than a threshold, one group will be added to the existing groups, and if this number be more than a threshold, the worst group deleted from search domain. At each iteration, velocity and position of a particle i in each swarm is updated using its best personal position (pbesti) and the best position found by the swarm (gbest) according to(5) and (6), respectively. If the fitness of the new position of particle i is better than its best personal position (pbesti ), pbesti will be updated to the new position. Likewise, the best position found in the swarm (gbest) will be updated. Since searching an area with more than one swarm is not very useful, at the end of each iteration every two swarms are checked whether they are searching in the same area or not. Two swarms will be searching in the same area or they are colliding, if the Euclidian distance between their attractors is less than a specified threshold rexcl. If a collision between two swarms is detected, the swarm whose attractor is worse than the others will be destroyed. In the proposed algorithm, when an environment change is detected, particles in the swarm re-evaluate their best personal position (pbest) and the particles in the swarms change their behaviors in the following iteration after a change is detected in the environment. They will set their new positions to a random location in a hyper sphere with radius rq centered at their swarm’s attractor. Then they will update their best personal positions (pbest) and update the swarm’s attractor. In previous works exclusion distance adjusted without considering environment situation. In purposed algorithm this value is adjusted with considering environment conditions and particles density. Current particles are clustered and then mean of minimum distance between each cluster with other clusters are calculated and used as the rexcel according to (3) and (4). For clustering we use FCM and number of clusters equal to the swarm size. mindisti =min(dist(centeri ,centerj)),where 1
j. (3)
124
I. Rezazadeh, M.R. Meybodi, and A. Naebi
.
(4)
Vi(t+1)=wvi(t)+c1r1(pbesti-pi)+c2r2(gbesti-pi).
(5)
Pi(t+1)=Pi(t)+vi(t+1).
(6)
Procedure Proposed Algorithm begin Initialization swarms Repeat adopt swarms number according to free swarms for each swarm do if a change is detected in the environment then evaluate all pbests then regenerate particles randomly in a hyper sphere with radius r centered at gbest and update pbests update gbest else if swarm is the best swarm do local search around gbest in hyper sphere with radius r and update only gbest end if For each particle in swarm do update particle position according to eq.1 and eq.2 and eq.5 and sq.6 update pbest and gbest end-for end-if test for converge end-for rexcl=fcmdist for each pair of swarms m and n, m<>n do test for conflict if there is delete worse swarm end-for until a maximum number of fitness evaluations is reached end. Fig. 1. Pseudocode of the proposed algorithm
Function distfcm for all particle do datai=position particlei end. center=fcm(data,swarmsize) for each center disti=calculate distance with nearest center end calculate rexce using eq2 end. Fig. 2. Pseudo code of the FCM distance
Adaptive Particle Swarm Optimization Algorithm for Dynamic Environments
125
4 Experimental Studying In this section, we first describe moving peaks benchmark [2] on which the proposed algorithms is evaluated. Then, experimental settings are described. Finally, experimental results of the proposed algorithm are presented and compared with alternative approaches from the literature. Table 1. Default settings of moving peaks benchmark
Fig. 3. Moving peaks benchmark
Parameter number of peaks m frequency of change f height severity width severity peak shape shift length s number of dimensions D cone height range H cone width range W cone standard height I search space range A
Value 10 every 5000 FEs 7.0 1.0 cone 1.0 5 [30.0, 70.0] [1, 12] 50.0 [0, 100]
4.1 Moving Peaks Benchmark Moving peaks benchmark (Fig. 3) [2] is widely used in the literature to evaluate the performance of optimization algorithms in dynamic environments [14]. In this benchmark, there are some peaks in a multi-dimensional space, where the height, width, and position of each peak alter when the environment changes. Unless stated otherwise, the parameters of the moving peaks benchmark are set to the values presented in Table 1. In order to measure the efficiency of the algorithms, offline error that is the average fitness of the best position found by the swarm at every point in time (7), is used [15]. ∑
.
(7)
where T is the maximum iteration, and swarmbest(t) is best position solution by the swarm at iteration t. 4.2 Experimental Settings For the proposed algorithms the total of acceleration coefficients c1 and c2 are set to 1.496180 and the inertial weight w is set to [0, 0.802828]. The number of particles in the swarm is set to 3 particles. The radius of quantum particles (rq) is set to 0.5. The proposed algorithm is compared with mQSO[5] and FMSO [7], and cellular PSO [3], and kamosi[9]. For mQSO we adapted a configuration 10(5+5q) which creates 10 swarms with 5 neutral (standard) particles and 5 quantum particles with rcloud=0.5 and rexcl= rconv =31.5, as suggested in [5]. For FMSO, there are at most 10 child swarms each has a radius of 25.0. The size of the parent and the child swarms are set to 100 and 10 particles, respectively[7]. For cellular PSO, a 5-Dimensional cellular automaton with 105 cells and Moore neighborhood with radius of two cells is embedded into
126
I. Rezazadeh, M.R. Meybodi, and A. Naebi
the search space. The maximum velocity of particles is set to the neighborhood radius of the cellular automaton and the radius for the random local search (r) is set to 0.5 for all experiments. The cell capacity θ is set to 10 particles for every cell. Moreover, all particles perform a local search in the iteration after a change in the environment is detected [3]. For the Kamosi algorithms the acceleration coefficients c1 and c2 are set to 1.496180 and the inertial weight w is set to 0.729844. The number of particles in the parent swarm and the child swarms (π) are set to 5 and 10 particles, respectively. The radius of the child swarms (r), the minimum allowed distance between two child swarm (rexcl) and the radius of quantum particles (rq) are set to 30.0, 30.0, and 0.5, respectively[9].
Fig. 4. Comparison on FCM_Distance and previous method in environment with 10 peaks and frequency=500
Fig. 5. Comparison on FCM_Distance and previous method in environment with 10 peaks and frequency=5000
4.3 Experimental Results For all algorithms we reported the average offline error and 95% confidence interval for 100 runs. Offline error of the proposed algorithm, mQSO10(5+5q) [5], FMSO [7], cellular PSO[3], and kamosi[9] for different dynamic environment is presented in table 2 to table 6. For each environment, result of the best performing algorithm(s) with 95% confidence is printed in bold. As depicted in the table 2 to table 6, the proposed algorithm outperforms other tested PSO algorithms, including FMSO, for all environments. Moreover, the difference between offline error of the proposed algorithm and the next best algorithm decreases as the environment changes less frequently from f=500 (table 2) to f=10000 (table 6). This is because the proposed algorithm uses less number of particles and so it doesn’t waste fitness evaluation and also because the adaptation inertia weight using purposed method , swarm converge very quickly to optimum hence quickly finds better solutions than other algorithms after a change occurs in the environment, especially at the early iterations. Furthermore, in the proposed algorithm the number of swarms converges to the number of peaks in the environment. This will help the proposed algorithm to track the changes more effectively since there will be a swarm on each peak. For adjusting
Adaptive Particle Swarm Optimization Algorithm for Dynamic Environments
127
exclusion distance adaptively, algorithm can adjust exclusion distance corresponding to the environment and if peaks are near to each other doesn’t delete swarm that converged to those peaks. Table 2. Offline error ±Standard Error for f =500 M 1 5 10 20 30 40 50 100 200
Proposed algorithm
4.81±0.14 4.95±0.11 5.16±0.11 5.81±0.08 6.03±0.07 6.10±0.08 5.95±0.06 6.08±0.06 6.20±0.04
Kamosi
5.46±0.30 5.48±0.19 5.95±0.09 6.45±0.16 6.60±0.14 6.85±0.13 7.04±0.10 7.39±0.13 7.52±0.12
mQSO10(5+5q)
33.67±3.42 11.91±0.76 9.62±0.34 9.07±0.25 8.80±0.21 8.55±0.21 8.72±0.20 8.54±0.16 8.19±0.17
FMSO
27.58±0.94 19.45±0.45 18.26±0.32 17.34±0.30 16.39±0.48 15.34±0.45 15.54±0.26 12.87±0.60 11.52±0.61
Cellular PSO
13.46±0.7 9.63±0.49 9.42±0.21 8.84±0.28 8.81±0.24 8.94±0.24 8.62±0.23 8.54±0.21 8.28±0.18
Table 3. Offline error ±Standard Error for f =1000 M 1 5 10 20 30 40 50 100 200
Proposed algorithm
2.72±0.04 2.99±0.09 3.87±0.08 4.13±0.06 4.12±0.04 4.15±0.04 4.11±0.03 4.26±0.04 4.21±0.02
Kamosi
2.90±0.18 3.35±0.18 3.94±0.08 4.33±0.12 4.41±0.11 4.52±0.09 4.57±0.08 4.77±0.08 4.76±0.07
mQSO10(5+5q)
18.60±1.63 6.56±0.38 5.71±0.22 5.85±0.15 5.81±0.15 5.70±0.14 5.87±0.13 5.83±0.13 5.54±0.11
FMSO
14.42±0.48 10.59±0.24 10.40±0.17 10.33±0.13 10.06±0.14 9.85±0.11 9.54±0.11 8.77±0.09 8.06±0.07
Cellular PSO
6.77±0.38 5.30±0.32 5.15±0.13 5.23±0.18 5.33±0.16 5.61±0.16 5.55±0.14 5.57±0.12 5.50±0.12
Table 4. Offline error ±Standard Error for f =2500 M 1 5 10 20 30 40 50 100 200
Proposed algorithm
1.06±0.03 1.55±0.05 2.17±0.07 2.51±0.05 2.61±0.02 2.59±0.03 2.66±0.02 2.62±0.02 2.64±0.01
Kamosi
1.10±0.06 1.68±0.16 2.33±0.06 2.79±0.10 2.88±0.09 2.86±0.07 2.97±0.06 3.00±0.05 2.99±0.04
mQSO10(5+5q)
7.64±0.64 3.26±0.21 3.12±0.14 3.58±0.13 3.63±0.10 3.55±0.10 3.63±0.10 3.58±0.08 3.30±0.06
FMSO
6.29±0.20 5.03±0.12 5.09±0.09 5.32±0.08 5.22±0.08 5.09±0.06 4.99±0.06 4.60±0.05 4.34±0.04
Cellular PSO
4.15±0.25 2.85±0.24 2.80±0.10 3.41±0.14 3.62±0.12 3.84±0.12 3.86±0.10 4.10±0.11 3.97±0.10
128
I. Rezazadeh, M.R. Meybodi, and A. Naebi Table 5. Offline error ±Standard Error for f =5000
M 1 5 10 20 30 40 50 100 200
Proposed algorithm
0.53±0.01 1.05±0.06 1.31±0.03 1.69±0.05 1.78±0.02 1.86±0.02 1.95±0.02 1.95±0.01 1.90±0.01
Kamosi
0.56±0.04 1.06±0.06 1.51±0.04 1.89±0.04 2.03±0.06 2.04±0.06 2.08±0.02 2.14±0.02 2.11±0.03
mQSO10(5+5q)
3.82±0.35 1.90±0.08 1.91±0.08 2.56±0.10 2.68±0.10 2.65±0.08 2.63±0.08 2.52±0.06 2.36±0.05
FMSO
3.44±0.11 2.94±0.07 3.11±0.06 3.36±0.06 3.28±0.05 3.26±0.04 3.22±0.05 3.06±0.04 2.84±0.03
Cellular PSO
2.55±0.12 1.68±0.11 1.78±0.05 2.61±0.07 2.93±0.08 3.14±0.08 3.26±0.08 3.41±0.07 3.40±0.06
Table 6. Offline error ±Standard Error for f =10000 M
Proposed algorithm
Kamosi
1 5 10 20 30 40 50 100 200
0.25±0.006 0.57±0.03 0.82±0.02 1.23±0.02 1.39±0.02 1.37±0.01 1.46±0.01 1.38±0.01 1.36±0.01
0.27±0.02 0.70±0.10 0.97±0.04 1.34±0.08 1.43±0.05 1.47±0.06 1.47±0.04 1.50±0.03 1.48±0.02
mQSO10(5+5q)
1.90±0.18 1.03±0.06 1.10±0.07 1.84±0.08 2.00±0.09 1.99±0.07 1.99±0.07 1.85±0.05 1.71±0.04
FMSO
1.90±0.06 1.75±0.06 1.91±0.04 2.16±0.04 2.18±0.04 2.21±0.03 2.60±0.08 2.20±0.03 2.00±0.02
Cellular PSO
1.53±0.12 0.92±0.10 1.19±0.07 2.20±0.10 2.60±0.13 2.73±0.11 2.84±0.12 2.93±0.09 2.88±0.07
5 Conclusion In this paper, we proposed a new multi-swarm PSO algorithm for dynamic environments. The proposed PSO adjust exclusion distance considering environmental conditions. In order to do this all of the present particles are clustered and then distances between centers of clusters are used to adjust exclusion distance. In order to improve efficiency of algorithm we used a local search around best particle of best swarm and also inertia weight adjusted according to the swarm progress so convergence of algorithm is accelerated. And adjusting exclusion radius using clustering particle causes algorithm don’t delete swarms that converged to the peaks when peaks are near of each other. To prevent redundant search in the same area if two swarms collide the one with the worse fitness will be removed. In addition, to track the local optima after detecting a change in the environment, particles in each swarm temporarily change their behavior to quantum particles and perform a random search around the swarm’s attractor. Results of the experiments show that for all tested environments the proposed algorithm outperforms all tested PSO algorithms, the previously presented multi-swarm algorithm with the similar approach.
Adaptive Particle Swarm Optimization Algorithm for Dynamic Environments
129
References 1. Passaro, A., Starita, A.: Particle Swarm Optimization for Multimodal Functions: a Clustering Approach. Journal of Artificial Evolution and Applications 2008, article id 482032 (2008) 2. Branke, J.: Memory enhanced evolutionary algorithms for changing optimization problems. In: Congress on Evolutionary Computation CEC 1999, vol. 3, pp. 1875–1882 (1999) 3. Hashemi, A.B., Meybodi, M.R.: Cellular PSO: A PSO for Dynamic Environments. In: Cai, Z., Li, Z., Kang, Z., Liu, Y. (eds.) ISICA 2009. LNCS, vol. 5821, pp. 422–433. Springer, Heidelberg (2009) 4. Blackwell, T.: Particle swarm optimization in dynamic environments. In: Evolutionary Computation in Dynamic and Uncertain Environments. Springer, Berlin (2007) 5. Blackwell, T., Branke, J., Li, X.: Particle swarms for dynamic optimization problems. In: Swarm Intelligence: Introduction and Applications, Berlin, Germany (2008) 6. Branke, J.: Evolutionary optimization in dynamic environments, http://www.amazon.com/Evolutionary-OptimizationEnvironments-Algorithms-Computation/dp/0792376315 7. Li, C., Yang, S.: Fast Multi-Swarm Optimization for Dynamic Optimization Problems. In: Fourth International Conference on Natural Computation, Jinan, Shandong, China, vol. 7, pp. 624–628 (2008) 8. Li, C., Yang, S.: A Clustering Particle Swarm Optimizer for Dynamic Optimization. IEEE, Los Alamitos (2009) 978-1-4244-2959-2/09/$25.00_c 9. Kamosi, M., Hashemi, A.B., Meybodi, M.R.: A New Particle Swarm Optimization Algorithm for Dynamic Environments. In: Panigrahi, B.K., Das, S., Suganthan, P.N., Dash, S.S. (eds.) SEMCCO 2010. LNCS, vol. 6466, pp. 129–138. Springer, Heidelberg (2010) 10. del Amo, I.G., Pelta, D.A., González, J.R., Novoa, P.: An Analysis of Particle Properties on a Multi-swarm PSO for Dynamic Optimization Problems. In: Meseguer, P., Mandow, L., Gasca, R.M. (eds.) CAEPIA 2009. LNCS, vol. 5988, pp. 32–41. Springer, Heidelberg (2010) ISBN:3-642-14263-X 978-3-642-14263-5 11. Novoa-Hernández, P., Pelta, D.A., Corona, C.C.: Improvement Strategies for Multi-swarm PSO in Dynamic Environments. In: Nature Inspired Cooperative Strategies for Optimization, NICSO 2010, Granada, Spain, May 12-14 (2010) 12. Hu, C., Wu, X., Wang, Y., Xie, F.: Multi-swarm Particle Swarm Optimizer with Cauchy Mutation for Dynamic Optimization Problems. In: Cai, Z., Li, Z., Kang, Z., Liu, Y. (eds.) ISICA 2009. LNCS, vol. 5821, pp. 443–453. Springer, Heidelberg (2009) 13. Yang, S., Li, C.: A Clustering Particle Swarm Optimizer for Locating and Tracking Multiple Optima in Dynamic Environments. IEEE Transactions on Evolutionary Computation 14(6) (December 2010) 14. Moser, I.: All Currently Known Publications On Approaches Which Solve the Moving Peaks Problem. Swinburne University of Technology, Melbourne (2007) 15. Branke, J., Schmeck, H.: Designing evolutionary algorithms for dynamic optimization problems. In: Advances in Evolutionary Computing: Theory and Applications, pp. 239– 262. Springer-Verlag New York, Inc., New York (2003)
An Improved Particle Swarm Optimization with an Adaptive Updating Mechanism Jie Qi and Yongsheng Ding College of Information Science and Techenology, Donghua University, Shanghai, China [email protected]
Abstract. Premature convergence when solving multimodal problems is still the main limitation which affects the performance of the PSO. To avoid of premature, an improved PSO algorithm with an adaptive updating mechanism (IPSO) is proposed in this paper. When the algorithm converges to a local optimum, the updating mechanism begins to work so that the stagnated algorithm obtains energy for optimization. That is, the updating mechanism refreshes the swarm and expands the range for exploration. In this way, the algorithm can achieve a good balance between global exploration and local exploitation by the combination of the basic PSO evolution and updating mechanism. The proposed method is tested with a set of 10 standard optimization benchmark problems and the results are compared with those obtained through other 4 existing PSO algorithms. The simulation results elucidate that the proposed method produces the near global optimal solution, especially for those complex multimodal functions whose solution is difficult to be found by the other 4 algorithms. It is also observed from the comparison the IPSO is capable of producing a quality of optimal solution with faster rate. Keywords: particle swarm optimization, updating mechanism, benchmark function, swarm intelligence.
1 Introduction Since particle swarm optimization (PSO) was introduced by Kennedy and Eberhart [1], due to its effectiveness and simplicity in implementation, many successful applications have been seen in solving real world optimization problems [2-4]. As the original PSO may easily get trapped in the local optima when solving complex multimodal problems, many variants have been proposed to improve the performance [5-8]. The main variations in the algorithm are summarized: (1)Parameters adjustment. There are linearly [6] or nonlinearly [9] decreasing inertia weight, time-varying acceleration coefficients (TVAC), the strategy to adjust the parameters with fuzzy methods using feedback information from evolutionary state [8] and the self-adaptive method by encoding the parameters into the particles and optimizing them together with the position during run time [10]. (2) Neighborhood topology. Improving PSO’s performance by designing different types of topologies has been an active research direction. Swarm topology can change the algorithm’s convergence properties by influencing the information transfer mode among particles [5]. Low connected topologies result in more exploratory Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 130–137, 2011. © Springer-Verlag Berlin Heidelberg 2011
An Improved Particle Swarm Optimization with an Adaptive Updating Mechanism
131
behavior than highly connected ones. The main static topologies not vary over a run include gbest, lbest, pyramid, star, von Neumann, random topology, and so on [11]. Recent research suggests that time-varying and self-adaptive topologies can be competitive to static ones [5, 7]. (3) Restart mechanism. Through re-initializing particles’ velocities or positions or perturbation of the current best particle, restart mechanism is introduced into the algorithm to prevent the algorithm from stagnation. In the self-organized hierarchical PSO with time-varying acceleration coefficients (HPSOTVAC) [6], a dimension of a particle’s velocity is reinitialized as it is very close to zero. In [8], elitist learning strategy was used in which one dimension of the globally best particle is choose randomly and is reinitialized within the feasible space. In [12], a restart method is realized by relocating the particles when they are too close to each other. (4) Hybrid particle swarm. Some researchers investigated hybridization by combining PSO with other search techniques [5]. In this paper, we propose an improved PSO algorithm embedded an adaptive updating mechanism (IPSO) which can be included in the variation (3): Restart mechanism. However, the key to obtain an effective algorithm is to determine when to start the mechanism and how to develop a good mechanism. We present a new view of system and energy to consider the algorithm. The original PSO can be seen as a system with kinetic and potential energy. After initialization, the energy is decreasing as the algorithm converging. From the view of system and energy, the energy has been consumed since it has been converted to the search campaign in the solution space. If the algorithm converges prematurely to a local optimum, the energy trends to zero so that the algorithm stagnates. To address this case, an update mechanism is introduced to the algorithm. When the algorithm converges to a certain extent, i.e., the energy is below a critical value, the updating mechanism is triggered and new energy is injected into swarm so that the algorithm regain momentum and PSO evolution runs again. The IPSO is easy to implement and only an embedded updating mechanism is required. We testify the performance of the proposed algorithm on a 10 benchmark functions and provide comparisons with 4 classical PSO variants. The simulation results demonstrate that the IPSO has comparable or better performance of global optimization to avoid the local optima compared with other PSO variants experimented in this paper. The paper is organized as follows. In section 2, the basic PSO is briefly introduced and the IPSO is described in detail. Section 3 gives experimental results of the IPSO and other 4 PSO variants to solve 10 benchmark functions. Finally, conclusions are drawn in section 4.
2 The Improved Particle Swarm Optimization Embedded an Adaptive Updating Mechanism PSO is a population based optimization technique, where a swarm of particles I = {1,..., i ,..., N } is randomly initialized and the algorithm searches for optima by updating generations. In PSO, each particle i is associated with four vectors: position vector {xid } representing a potential solution; velocity vector {vid } measuring the direction and distance of one step move; historical best position vector (pbests)
{ pbid }
recording the best position particle i ever visited; and the neighbor best position vector
132
J. Qi and Y. Ding
(gbests)
{ pgid } denoting the best position in the neighborhood, where d=1,…,D is
the dimensions of the solution space. During the iteration process, the velocity and position of particle i on dimension d are updated as [5] (1) vid = vid + c1rand1 ( pbid − xid ) + c2 rand 2 ( pgid − xid ) .
xid = xid + vid .
(2)
where c1 and c2 are the acceleration coefficients, and rand1 and rand2 are two uniformly distributed random numbers independently generated within [0, 1]. The swarm in the original PSO to search the solutions space can be seen as the dynamic evolution of a dissipative system. In this system, particles’ velocity is regarded as kinetic energy and the distance between the particles produces the potential energy. The algorithm converts the energy to the search behavior in solution space. After initialization of particles’ position and velocity, the swarm’s kinetic and potential energy have been identified. As the system’s evolution, the algorithm converges and the system’s energy decreases. The convergence is an important condition for an algorithm to work, but for complex problem, the algorithm could be trapped into a local optimum, i.e., prematurity, which prevent the algorithm from finding better solution. As thus, some heuristic algorithm, such as simulated annealing, adopts a strategy to slow down the convergence. However, in this paper, we introduce an updating mechanism to interrupt the premature convergence of the PSO. When the algorithm converges and the energy is blow a threshold, updating mechanism is triggered to stop the convergence. In this way, the IPSO achieves a kind of intermittent convergence. The IPSO has four main extensions based on the standard PSO: 1. Define a variable E to measure the energy of the swarm. 2. Design an updating mechanism to restart the stagnated algorithm. 3. Set a threshold ET of energy E. The threshold can be adapted according to the dynamic information obtained from the evolution of the algorithm. 4. Implement intermittent convergence of the algorithm by a switch between the converged PSO evolution and the updating mechanism. 1) The measurement of the potential energy The swarm’s energy is determined by its potential energy and kinetic energy. The potential energy is dependent on the historical best position (pbest) of each particle because the velocity is produced by the distance between a particle’s current position and pbest’s position (global best position-gbest is one of the pbest positions too). And the kinetic energy is captured by its velocities. Therefore, we define the energy of the swarm as follows:
E= Where x = 1 md
D
∑
∑ ∑
N
pbid is the dth coordinate of the pbests’ centre. The first term
i =1
N
D
i =1
d =1
( pbid − xmd ) 2 +
1 N
(3)
1 N
∑ ∑ N
i =1
D 2 d =1 id
v
denotes the potential energy by the average square distances between each pbest’s and the pbests’ centre. The second term is the average square velocities of particles representing the kinetic energy. As the E decreasing, the searching energy is reduced, so the
An Improved Particle Swarm Optimization with an Adaptive Updating Mechanism
133
system requires external energy to be injected. Thus, an updating mechanism is adopted to increase the system energy. 2) Updating mechanism Since the potential energy is dependent on the pbests, the pbests are renewed in updating mechanism. The updating rule is: firstly, one dimension denoted by k of pbest i is chosen randomly, and then a uniform distributed velocity is added to this chosen dimension. Specifically, the velocity added to pbest i denoted by vik is
vik = V Δrand .
(4)
Where Δ conforms to Bernouli distribution which takes the values ±1 with probability 1/2, rand is a random number conforming to the [0,1] uniform distribution, and V is linearly decreasing from Xmax to 0.1Xmax, where [-Xmax, Xmax] is defined to the feasible bound of solution. The updating rule of the pbests are (5) pb = pb + v , i=1,…,n. ik
ik
ik
This updating mechanism only changes one dimension to update, so other dimensions’ information of pbests is saved. In this way, both updated information and good memories are used to direct the particles behavior, which increases the efficiency of optimization. 3) The velocity formula of the improved PSO In the original PSO, the inertia velocity term keep the particle move in the former direction which partly prevents the algorithm from prematurity. Since the updating mechanism in the new proposed algorithm plays the role of avoiding trapped into the local optimum, the inertia item is eliminated in order to speed up convergence. So we use the velocity formula (6) vid = γ ( c1rand1 ( pgid − xid ) + c2 rand 2 ( pg d − xid )) . Where
γ
is constriction factor which can prevent the algorithm from divergence[5].
4) Adaptive threshold It is important to set the value of threshold E T because E T decides when to run PSO evolution and when to run updating mechanism. The algorithm begins with E>ET and performs PSO evolution according to equ. (6). During the iterations, the algorithm converges accompanied by the decrease in energy. When E≤E T, the algorithm starts the updating mechanism followed by an increase of E. When E>E T, the algorithm returns to the PSO evolution. E T is dynamically adjusted according to the changes of fitness. When the improvement of fitness f is less than a small number ε within Ps iterations, i.e., (7) f − f s + Ps Δf = s <ε . fs the threshold is adjusted to the current value of energy i.e., let E T = E. In this case, the algorithm runs in a high energy state and allows a large scale search by updating the pbests. During the evolution of the algorithm, the threshold E T is decreasing by ΔE T per iteration. (8) ΔE = ( E - E ) / ( Maxstep - s ) . T
T
T min
134
J. Qi and Y. Ding
Where s is the current iteration number and Maxstep denotes the max iteration number. Equ. (8) can guarantee the algorithm ends at E Tmin which is a desired energy threshold when the algorithm terminates. The switch process between PSO evolution and updating is described as Fig. 1. We define an upper bound upE T for E to avoid the algorithm from divergence due to continued update. Start
Initialization and let s=0, Calculate E s>Maxstep Y
E>ET
N
N N
Y PSO evolution Calculate E N
s%Ps==0 &&s>0 Δf<ε
E
Y E T=E
s=s+1; ET =ET-ΔET Finish
Fig. 1. Switch process between PSO evolution and updating mechanism
3 Numerical Experiments and Results In order to demonstrate the performance of the proposed PSO, we use 10 benchmark functions defined in literature [13] for the experimental tests. Since the biased initialization can test the algorithm global explore ability to expand its search beyond its initial limits. Therefore, we define the initialization range for all the 10 functions are [Xmax/2, Xmax]. This setting increases the difficulty of searching the optimum. The numerical experiments show that biased initialization has the most impact for function f8 whose landscape declines steeply around the global optimum (the center of the feasible space) and while declines flatly in the region far away from the global optimum. So it is quite possible for algorithms to be trapped in local optima In order to compare the difference of the symmetry and the biased initialization, let f8 denote the initialization range [-Xmax, Xmax] and f8’ denote the initialization range [Xmax/2, Xmax] in which the function value declines very flatly and there are a lot of local optima. The experiment results of the two initialization range are listed in table 1. We compare other 4 PSO variants (gbest, lbest, FIPS and HPSOTVAC) with the proposed IPSO. Note that all the PSO algorithms use the same population size of 30, the same number of 300000 fitness evaluations (FEs) and the same maximum velocity Vmax = Xmax (half of the feasible space) in experiments. Gbest, lbest optimization mechanism use the constricted PSO’s updating rules. In FIPS, the von Neumann topology structure is applied and the parameter ϕ is set to 4.1. HPSOTVAC uses the parameters value defined in the literature [6].The parameters of IPSO are set as follows:
An Improved Particle Swarm Optimization with an Adaptive Updating Mechanism
135
2 2 c1=2.05, c2=2.05, γ = 0.72984 , ET = 10−4 X max , upET = X max and Ps=200. The experimental results, in terms of the mean and standard deviation of the fitness value obtained from 20 independent trials, are displayed in table 1. The best results obtained by the 5 PSO algorithms are shown in bold. The results indicate that the IPSO achieves the best results on most complex multimodal functions f6, f7, f8’, f9, f10, especially on f8’ where all other PSOs experimented in this paper fail to jump out of the local optima far away from the global optimum. And for complex function f6 and f7, the IPSO also performs much better when comparing with other PSOs.
Table 1. Search results comparisons among different algorithms function Sphere f1 Quadric f2 Schwefel2.22 f3 Rosenbrock f4 Griewank f5 Rastrigin1 f6 Rastrigin2 f7 Ackley f8 Ackley f8’ Penalized P8 f9 Penalized 16 f10
Mean Dev Mean Dev Mean Dev Mean Dev Mean Dev Mean Dev Mean Dev Mean Dev Mean Dev Mean Dev Mean Dev
gbest
lbest
FIPS
1.5E-180 0 1.3E-2 2.0E-2 1.4E-61 6.1E-61 4.58 5.53 0.032 0.026 109.4 26.4 90.45 20.95 1.69 1.10 19.11 5.32 0.364 0.453 0.049 0.141
7.1E-90 0 0.204 0.14 9.4E-53 2.5E-52 11.6 13.2 0.017 0.015 93.4 20.2 97.6 25.1 3.1E-3 0.17 18.6 8.01 6.9E-15 5.7E-14 1.6E-3 4.0E-3
1.27E-32 3.2E-32 0.176 0.128 1.32E-62 6.23E-63 24.53 12.33 8.91E-6 3.27E-3 30.2 8.8 110.00 30.82 7.9E-15 8.3E-15 18.92 7.45 9.9E-29 6.2E-29 5.3E-12 7.64E-13
HPSOTVAC 2.3E-51 4.4E-52 1.2E-3 3.6E-3 2.2E-20 9.0E-21 0.248 0.578 5.9E-3 9.4E-3 3.7E-3 5.4E-2 0.61 0.68 3.5E-7 9.7E-8 17.91 5.09 1.8E-14 7.4E-13 4E-14 1.9E-14
IPSO 1.3E-28 2.2E-25 6.1E-7 6.5E-6 3.2E-48 4.6E-48 2.68 1.95 0.014 0.027 3.0E-7 7.3E-6 1.1E-14 2.8E-13 9.3E-14 7.5E-14 3.1E-3 2.4E-3 9.9E-32 3.1E-31 3.3E-28 5.3E-27
There is a cost for tuning the IPSO to obtain ability to jump out of the local optima, and the cost is the slow convergence on unimodal problems. Even so, IPSO has already obtained good results which is good enough to be applied in practice. The fitness descent characteristics of the evolution processes are shown in Fig. 2 (f4, f6, f7 and f8’ selected for illustration). It is also observed from Fig. 2 the IPSO is capable of producing a quality of optimal solution with faster rate, while other PSOs such as gbest, lbest and FIPS stop optimizing in early stage of iterations. This is due to the updating mechanism which restarts optimization, so that the fitness will continue to be improvement. In summary, the IPSO can exploit the solution space by PSO evolution and explore the space by updating mechanism. Fig. 2 also reveals that the IPSO generally offers a high speed of convergence, especially for the functions f6, f7 and f8’ whose global optimum is difficult to be found.
136
J. Qi and Y. Ding
f4
10
f6
4
10
10
IPSO 2
HPSO
8
10
10
lbest gbest 0
FIPS
10
6
Mean fitness
Mean fitness
10
4
10
-2
10
-4
10 2
10
IPSO HPSO lbest gbest FIPS
-6
10 0
10
-8
0
0.5
1
1.5 FEs
2
2.5
3
10
0
0.5
1
1.5 FEs
5
x 10
(a) f4
2.5
3 5
x 10
(b) f6
f7
4
2
10
10
f8'
2
2
10
10
0
10
1
-2
10
Mean fitness
Mean fitness
10 -4
10
-6
10
10
0
-1
-8
10
-10
10
-14
10
10
IPSO HPSO lbest gbest FIPS
-12
10
0
0.5
1
1.5 FEs
(c) f7
2
2.5
3 x 10
5
10
-2
IPSO HPSO lbest gbest FIPS
-3
0
0.5
1
1.5 FEs
2
2.5
3 5
x 10
(d) f8’
Fig. 2. Algorit5hm convergence for selected functions f4, f6, f7 and f8’
4 Conclusion In this paper, we propose an improved PSO algorithm embedded an adaptive updating mechanism. As the PSO algorithm converges, the swarm’s energy E decreases. When E ≤ ET (ET is dynamic adjusted during the iterations according to the variations of fitness), the updating mechanism begins to work which injects new energy into the swarm so as to increase E. When E > ET, optimization via PSO evolution is resumed. By the switch between the PSO without inertia term which plays the role of local search and updating mechanism which can expand the explore range, the algorithm achieves a good balance between global exploration and local exploitation. In addition, the IPSO is easy to be implemented because only a little change is required based on the original PSO. Compared with gbest, lbest, FIPS and HPSOTVAC on benchmark functions, our approach has demonstrated good performance in terms of global search ability to jump out the local optima. In general, the IPSO offers the best accuracy on functions f2, f6, f7, f8’, f9 and f10, especially for function f8’ whose initialization range does not contain the global optimum, the solution found by the IPSO is much better than that found by the other 4 PSO algorithms.
An Improved Particle Swarm Optimization with an Adaptive Updating Mechanism
137
Acknowledgments. This work is supported by the Natural Science Foundation of Shanghai (No. 09ZR1401800) and the Shanghai Education Development Foundation (No. 2008CG38).
References 1. Kennedy, J., Eberhart, R.: Particle Swarm Optimization. In: 4th IEEE International Conference on Neural Networks, pp. 1942–1948. IEEE Press, Piscataway (1995) 2. Tasgetiren, M.F., Liang, Y.C., Sevkli, M., Gencyilmaz, G.: A Particle Swarm Optimization Algorithm for Makespan and Total Flowtime Minimization in the Permutation Flowshop Sequencing Problem. European Journal of Operational Research 177, 1930–1947 (2007) 3. Franken, N., Engelbrecht, A.P.: Particle Swarm Optimization Approaches to Coevolve Strategies for the Iterated Prisoner’s Dilemma. IEEE Trans. Evol. Comput. 9, 562–579 (2005) 4. Ho, S.Y., Lin, H.S., Liauh, W.H., Ho, S.J.: OPSO: Orthogonal Particle Swarm Optimization and Its Application to Task Assignment Problems. IEEE Trans. Syst., Man, Cybern. A, Syst., Humans. 38, 288–298 (2008) 5. Poli, R., Kennedy, J., Blackwell, T.: Particle Swarm Optimization: An Overview. Swarm Intelligence 1, 33–57 (2007) 6. Ratnaweera, A., Halgamuge, S., Watson, H.: Self-Organizing Hierarchical Particle Swarm Optimizer with Time-Varying Acceleration Coefficients. IEEE Trans. Evol. Comput. 8, 240–255 (2004) 7. Oca, M.A.M., Stützle, T., Birattari, M., Dorigo, M.: Frankenstein’s PSO: A Composite Particle Swarm Optimization Algorithm. IEEE Trans. Evol. Comput. 13, 1120–1132 (2009) 8. Zhan, Z.H., Zhang, J., Li, Y., Chung, H.S.H.: Adaptive Particle Swarm Optimization. IEEE Trans. Syst., Man, Cybern. B, Cybern. 39, 1362–1380 (2009) 9. Chatterjee, A., Siarry, P.: Nonlinear Iinertia Weight Variation for Dynamic Adaptation in Particle Swarm Optimization. Comput. Oper. Res. 33, 85–871 (2004) 10. Tripathi, P.K., Bandyopadhyay, S., Pal, S.K.: Adaptive Multi-Objective Particle Swarm Optimization Algorithm. In: Proc. IEEE Congr. Evol. Comput., Singapore, pp. 228–2288 (2007) 11. Kennedy, J., Mendes, R.: Population Structure and Particle Swarm Performance. In: Proc. 2002 Congress Evolutionary Computation, vol. 2, pp. 1671–1676 (2002) 12. Lovbjerg, M., Krink, T.: Extending Particle Swarm Optimizers with Self-Organized Criticality. In: Proc. Congr. Evol. Comput., Honolulu, HI, pp. 1588–1593 (2002) 13. Qi, J., Pang, S.: Re-Diversified Particle Swarm Optimization. In: Li, K., Fei, M., Jia, L., Irwin, G.W. (eds.) LSMS 2010 and ICSEE 2010, Part II. LNCS, vol. 6329, pp. 30–39. Springer, Heidelberg (2010)
Mortal Particles: Particle Swarm Optimization with Life Span Yong-wei Zhang, Lei Wang, and Qi-di Wu College of Electronics and Information Engineering Tongji University, Cao’an Road 4800 201804, Shanghai, P.R. China [email protected]
Abstract. Born and death is the nature of lives, but most swarm intelligence algorithm did not reflect this important property. Based on Particle Swarm Optimization, the concept of life span is introduced to control the activity generation of particles. Furthermore, the differential operator is applied to enhance the convergence and precision. The performance of propose algorithm, along with PSO and DE, is tested on benchmark functions. Results show that life span and differential operator greatly improved PSO and with well-balanced exploration and exploitation characteristic.
Keywords: Swarm Intelligence, PSO, Life Span, Differential, Mutation, Optimization, Algorithm.
1
Introduction
A branch of artificial intelligence which deals with the collective behaviour of swarms through complex interaction of individuals without supervision, is referred to as swarm intelligence [1]. During past decades, many swarm-based optimization algorithms have been developed and put into dealing with real world problems. Ant Colony Optimization (ACO) [2,3]mimics the foraging behavior of ant colonies, which uses the pheromone to deliver the landscape information of target problem between ants. Particle Swarm Optimization (PSO) [4] imitates the social behavior of flock of birds or school of fishes, and the particles share their experiences through a component of velocity update formula. Artificial Bees Colony (ABC) [5] utilizes the divided labor of bees to explore and exploit the nectar resources, and the message about food source is represented by the dances of employee bees. The Differential Evolution (DE) [6], even not simulate any real-world system, is still considered as a swarm intelligence algorithm because of the interaction among individuals. As an important part of swarm intelligence algorithms, PSO was broadly studied and applied to many engineering problems such as controller design [7,8], task assignment problem [9], scheduling [10], etc. Many variants of PSO Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 138–146, 2011. c Springer-Verlag Berlin Heidelberg 2011
Mortal Particles: Particle Swarm Optimization with Life Span
139
are designed as well, such as PSO with inertia weight[11], PSO with linearly decreasing Vmax [12], PSO with collision-avoiding mechanism [13] etc.. Though PSO claims to be an algorithm that imitates the behavior of birds or fishes, the behavior of particles is more like a bunch of robots than living biomes. Except the initial phase, the particles never born or die. In other words, the particles are immortal. To the author’s knowledge, few literatures mentioned the life span of particles, not along the effect the living particles will bring. Recently, the differential operator, as a high-efficient heuristic, is increasingly introduced into various algorithms. For example, in Shuffled frog-leaping algorithm (SFLA)[14], the new solutions are generated based on the difference between current solution and the best solution of the memeplex. In the latest version of ABC [15], a differential operation is also used. The appropriate utilization of differential operator balances the exploration and exploitation of a search process. For PSO, there is no doubt that the introduction of differential operator will accelerate convergence and improve accuracy. In our study, we introduce the concept of life span into the PSO scheme (mortal particles). To further improve the algorithm performance, the differential operator is used to generate candidate solutions out of the memory of individual particles. The performance of proposed algorithm, called Mortal Differential PSO (MDPSO), is compare with the original algorithms (immortal particles). The rest of this paper is organized as follow. Section two briefly introduces the PSO algorithm. In section three, we propose the Mortal PSO scheme. The experiment results are presented in section four. Section five gives discussion and conclusion.
2
Particle Swarm Optimization
Since first introduced by Kennedy and Eberhart [4] in 1995, PSO has developed numerous variants. A detailed description of these variants of PSO can be found at [16]. Our study is focused on original PSO. A D-dimension unconstrained minimization problem is defined as follow. minf (x), x = [x1 , · · · , xD ]
(1)
where D is the dimension of the problem or the number of parameters to be optimized, x is a solution of the problem, ximin ≤ xi ≤ ximax . In Particle Swarm Optimization, the position of a particle represents a solution. And the motion of particle Pi is driven by velocity Vi . Through updating the velocity and the position of particles, the feasible space is searched. The updating formula of velocity and position are as follow. Vi (t + 1) = Vi (t) + c1 rand1 (pbesti − Pi ) + c2 rand2 (gbest − Pi ) Pi (t + 1) = Pi (t) + Vi (t + 1)
(2) (3)
where pbesti is the best position previously discovered by particle Pi , gbest is the best position discovered by the entire population. rand1 and rand2 are uniformly
140
Y.-w. Zhang, L. Wang, and Q.-d. Wu
distributed random number in region [0,1]. c1 and c2 are accelerating constants that reflect the weighting of stochastic acceleration term that pull particles to pbest and gbest position[16]. The range of Pi and Vi is limited in [Xmin , Xmax ] and [Vmin , Vmax ]. When parameter exceeds the upper or lower bounds, we simply set parameter as the value of bounds. Some researcher use different random numbers in every dimension, as defined in (4)-(5). Vid (t + 1) = Vid (t) + c1 randd1 (pbestdi − Pid ) + cd2 randd2 (gbestd − Pid ) Pid (t
+ 1) =
Pid (t)
+
Vid (t
+ 1)
(4) (5)
where superscript d is the dimension index. According to (4), every component of velocity Vi needs newly generated random numbers weighting the portion of individual and global terms. The difference between (2)-(3) and (4)-(5) is reported in [17]. For clear discussion, we use (2)-(3) in our study.
3 3.1
Mortal Particle Swarm Optimization Mortal Particles
Death, as one kind of updating mechanisms in biomes, is an indispensible part of evolution. To sustain the population with limited resources, the old and weak individuals have to make room for the young and fitter ones. In the context of swarm intelligence, the elimination of old solutions plays the same role with death in the real world. However, most swarm intelligence algorithms did not take the life span of solutions into account. From the beginning to the end of a search process, a solution is only changed, not been replaced. If the change stops, i.e., the solution trapped in local extreme, then the premature convergence is unavoidable unless some other operations are introduced. Consider (2), when a solution is trapped, it means gbest and pbesti are remain unchanged. This solution can easily replicate itself and occupy the whole population. Because the gbest and pbesti will attract the rest particles to them, and eventually to gbest[16]. Since all the particles are immortal, the algorithm will end up with a population that has same individuals. To help the solution escape local, we use ’life span’ to control the number of activity generations of a particle. For problem (1), the life span of a particle is decided by following formula. minN i=1 (fi ) − fi lif ei = exp N (6) N i=1 (fi − mini=1 (fi ))/N where fi is the evaluation of object function, N is the number of particles. The life span of each particle is within (0,1]. The life of a particle will reduce Δ with every position update. When lif ei ≤ 0, the pbesti particle will be eliminated and reinitialized within the search space. The pbesti is reinitialized as well to erase the memory of the particle, otherwise the new particle will be attracted to pbesti again.
Mortal Particles: Particle Swarm Optimization with Life Span
141
In some cases, the evaluation of some particle are far bigger than the rests, thus leads to a large denominator in (6), and eventually shorten the life span of all particles. In that case, the following formula can be used instead. minN i=1 (fi ) − fi lif ei = exp (7) median(fi − minN i=1 (fi ))/N where median(fi − minN i=1 (fi )) is median number. 3.2
Differential Operator
With mortal particle, the algorithm can escape local now. But the convergence speed is still a problem. If the algorithm reinitializes the solutions again and again to explore wider region, it becomes random search. In addition, the life span did not necessarily speed up the convergence. In this context, we introduce differential operator to improve the convergence. pbestdi + (pbestdr1 − pbestdr2 ), if rand < p P ndi = (8) pbestdi , else r1, r2 ∈ [1, · · · , N ] r1 = r2
(9)
where P ndi is the dth variable of ith new particle, p is the mutation probability, r1 and r2 are random integers. From our observation, p = 0.15 to 0.25 is suitable for most problems. The Pi and pbesti is updated according to following. fobj (P ni (t)) < fobj (pbesti ) −→ Pi (t + 1) = P ni (t), pbesti = P ni (t)
(10)
where fobj (·) is the object function. The pseudo code of MDPSO see Algorithm 1. Where F E and F Emax denote the number of function evaluation and the maximum of it.
4 4.1
Validation Experiments Parameter Setting
To verify the proposed algorithm, numerical experiments are conducted. The performance of MDPSO is compared with PSO and DE. The DE parameters are set according to [18]. The rest parameters are set as follow. Accelerating constants c1 = c2 = 2, population size N = 20, mutation probability p = 0.15, maximum number of function evaluation F Emax =2e5, velocity Vi is limited by (11). Vmax = (Xmax − Xmin )/10 (11) Vmin = −(Xmax − Xmin )/10
142
Y.-w. Zhang, L. Wang, and Q.-d. Wu
Algorithm 1. Mortal Differential PSO Object function f (x), x = (x1 , · · · , xD )D Generate N particles Pi (i = 2, 3, · · · N ), evaluate particles, record pbesti and gbest Compute life value of particles by (7) while F E < F Emax do for each particle Pi do Update Vi and Pi by (2)-(3), F E = F E + 1, evaluate Pi : fi = fobj (Pi ) if fi < fobj (pbesti ) then pbesti = Pi else lif ei = lif ei − Δ end if if lif ei < 0 then Reinitialize Pi and evaluate it, F E = F E + 1 end if end for Generate new particles by (8)-(9) and evaluate them, F E = F E + N Update Pi and pbesti according to (10) Update particle life by (7) and record gbest end while Post process results and visualization
4.2
Benchmark Functions
The benchmark functions are usually used as standard test bed for optimization algorithms. To avoid the unintentional attraction of zeros, the benchmark functions are shifted with a displacement d = (d1 , d2 , · · · dD )D according to following formula. z = x−d (12) f = fobj (z) For example, the Non-continuous Rastrigin function has numerous local minima, which located at small flat local regions. The flat region has no differential information and the function is un-derivable within its search space, which makes this function very difficult for most search algorithms. The function’s shifted version landscape is shown at Fig. 1. The benchmark functions used in our experiment are listed at Table 1. To test the overall performance of proposed algorithm, we try to cover all kinds of test functions. As the characteristic showed at Table 1, four functions are unimodal and four are multimodal. At the same time, four functions are separable and four are non-separable. 4.3
Simulation Results
The initial and final locations of 20 particles of 2-D Non-continuous Rastrigin function in MDPSO are shown at Fig. 2. The final locations are around the optimal solution [1.28,1.28], but distances between particles are still fairly large. This explains why MDPSO can escape local. To further demonstrate the
Mortal Particles: Particle Swarm Optimization with Life Span
143
100
50
0 -4 -2 0 0
-4
-2
Fig. 1. The 3-D landscape of Shifted Non-continuous Rastrigin function Table 1. Benchmark Functions. D: Dimension, F: Feasible Bounds, C: Characteristic, U: Unimodal, M: Multimodal, S: Separable, N: Non-Separable, R: Regular, I: Irregular. Name
Equation 2 Sphere fi = D i=1 xi D Schwefel 2.21 f2 = maxi=1 |xi | 2 2 2 Rosenbrock f3 = D i=1 100(xi+1 − xi ) + (xi − 1)
Schwefel 2.22 f4 = D |xi | + D i=1 |xi | i=1 D D Rastrigin f5 = i=1 xi − 10 cos(2πxi ) + 10 D f6 = D Noni=1 yi − 10 cos(2πyi ) + 10 xi |xi | < 12 continuous yi = round(2xi ) Rastrigin |xi | ≥ 12 2 D
x D 1 √i Griewank f7 = 4000 i=1 xi − D i=1 cos( i ) + 1 D 1 2 f8 = −20exp −0.2 D i=1 xi Ackley
D 1 −exp D i=1 cos(2πxi ) + 20 + e
D F
C
d D
30 [-100, 100] 30 [-100, 100] 30 [-30, 30]
USR USI UNR
25 25D 0D
30 [-10, 10]
UNI
2.5D
30 [-5.12, 5.12]
MSR
1.28D
30 [-5.12, 5.12]
MSI
1.28D
30 [-600, 600]
MNR
150D
30 [-32.768, 32,768]
MNR 8.192D
effectiveness of proposed algorithm, 50 runs are conducted for each algorithm, and the results are summarized at Table 2. For each benchmark function, the best, median, worst, mean, standard deviate (Std) and success (Scr) rate of 50 runs are listed. The success rate is determined by (13)-(14). Scr = Nsuccess/Maxrun × 100%
(13)
|fbest − f∗ | < ε
(14)
144
Y.-w. Zhang, L. Wang, and Q.-d. Wu
5
5
0
0
-5 -5
0
5
-5 -5
0
5
(b) Final Locations
(a) Initial Locations
Fig. 2. Initial and final 2-D locations of 20 particles in MDPSO
where Nsuccess is the number of success runs. If fbest satisfy (14), a success run is recorded. In our experiment, the tolerance is truncated at 1.00e-8, which means all values that less than 1.00e-8 are treated as zero. From Table 2 we can conclude that MDPOS outperforms PSO for all eight test functions and outperforms DE for three multimodal functions (Rastrigin, non-continuous Rastrigin and Griewank) and one unimodal function (Schwefel 2.21). DE outperforms MDPSO for two unimodal non-separable functions (Rosenbrock and Schwefel 2.22). Both MDPSO and DE have same performance for Sphere and Ackley function. Table 2. Comparison of Three Algorithms Function ε Best Median Worst PSO Mean Std Scr Best Median Worst DE Mean Std Scr Best Median Worst MDPSO Mean Std Scr
f1
f2
f3
f4
f6
f6
f7
f8
1.00e-8
0.5
25.0
1e-8
1e-8
1e-8
1e-8
1e-8
0.07 0.19 0.38 0.19 0.07 0% 0.00 0.00 0.00 0.00 0.00 100% 0.00 0.00 0.00 0.00 0.00 100%
0.78 29.04 0.16 33.91 38.00 0.22 0.10 1.41 74.15 0.27 63.73 69.00 0.40 0.22 3.29 368.86 0.46 94.62 126.00 0.64 1.71 1.60 87.93 0.27 63.88 71.88 0.41 0.53 0.57 70.88 0.07 14.61 16.96 0.09 0.50 0% 0% 0% 0% 0% 0% 0% 0.06 0.04 0.00 15.69 32.67 0.0 0.0 2.24 17.40 0.00 83.48 81.43 0.0 0.0 20.66 69.43 0.00 133.97 118.62 7.40e-3 0.0 3.44 26.12 0.00 84.25 81.25 1.48e-4 0.0 4.02 21.63 0.00 27.56 22.97 0.001 0.0 16% 78% 100% 0% 0% 98% 100% 0.17 4.80e-3 0.00 0.00 0.00 0.00 0.00 0.28 20.78 0.00 0.00 0.00 0.00 0.00 0.41 81.90 12.50 5.59e-7 0.00 0.00 0.00 0.29 33.19 0.25 1.16e-8 0.00 0.00 0.00 0.05 27.92 1.75 7.82e-8 0.00 0.00 0.00 100% 72% 98% 96% 100% 100% 100%
Mortal Particles: Particle Swarm Optimization with Life Span
145
Clearly MDPSO performed well when deals with multimodal functions. Especially for Rastrigin and non-continuous Rastrigin function, MDPSO is far more superior. On the other hand, the advantage of DE is not obvious. In general, the proposed algorithm is more efficient than PSO and DE.
5
Discussion and Conclusion
From the experiment results we can conclude that the life span and differential operator significantly improved the performance of PSO and showed great potential on dealing with multimodal problems. With life span, some old particles are eliminated, so is its memory, pbest. With the elimination of old particles, the population diversity is increased. Technically the population will not converge to a same local extreme (like the original PSO always do), hence the algorithm will not trap. Theoretically, as long as the algorithm keeps running, it will find the global minima eventually. Though the algorithm will not trap in local, it is not practical if it takes long time to converge. A differential operator can speed up convergence and increase the accuracy. In the early stage of searching process, the pbest records only the information of scattered local regions, and the average distance of particles is large. The new generated particle can search broader region. In the later stage, with the decreasing distance of particles, the differential factor becomes smaller. This drives the algorithm to higher precision. The process is self-adaptive, the exploration and exploitation are well balanced. The implementation of life span and differential operator dose not depend on algorithms, which means the proposed improvement can be applied to other algorithms as well. PSO is just an example, how to improve other algorithms by these heuristics is still an open issue. Acknowledgement. The research is supported by Ph.D. Programs Foundation of Ministry of Education of China (No. 20100072110038), National Natural Science Foundation of China (NSFC, No. 70871091, 61075064, 61034004), Foundation of the Ministry of Education of China for Returned Scholars and Program for New Century Excellent Talents in University of Ministry of Education of China.
References 1. Akay, B., Karaboga, D.: A modified Artificial Bee Colony algorithm for realparameter optimization. Inform. Science (in press) (2010), Corrected Proof doi:10.1016/j.ins.2010.07.015 2. Dorigo, M., Maniezzo, V., Colorni, A.: The Ant System: Optimization by a colony of Cooperating agents. IEEE Trans. Syst. Man. Cybern. Part B. Cybern. 26, 29–41 (1996) 3. Dorigo, M., Birattari, M., Stutzle, T.: Ant colony optimization. IEEE Comput. Intell. Mag. 1, 28–39 (2006)
146
Y.-w. Zhang, L. Wang, and Q.-d. Wu
4. Kennedy, J., Eberhart, R.: Particle swarm optimization. In: IEEE International Conference on Neural Networks, pp. 1942–1948 (1995) 5. Karaboga, D.: An idea based on honey bee swarm for numerical optimization. Technical report, Computer Engineering Department, Engineering Faculty, Erciyes University (2005) 6. Storn, R., Price, K.: Differential Evolution - A simple and efficient adaptive scheme for global optimization over continuous spaces. Technical report, International Computer Science Institute (1995) 7. Zamani, M., Sadati, N., Ghartemani, M.K.: Design of an H PID controller using Particle Swarm Optimization. Int. J. Contr. Autom. Syst. 7, 273–280 (2009) 8. Zhang, Y., Qiao, F., Lu, J., Wang, L., Wu, Q.: Performance Criteria Research on PSO-PID Control Systems. In: 2010 International Conference on Intelligent Computing and Cognitive Informatics (ICICCI), pp. 316–320 (2010) 9. Salman, A., Ahmad, I., Al-Madani, S.: Particle swarm optimization for task assignment problem. Microprocess. Microsy. 26, 363–371 (2002) 10. Bo, L., Ling, W., Yi-Hui, J.: An Effective PSO-Based Memetic Algorithm for Flow Shop Scheduling. IEEE Trans. Syst. Man. Cybern. Part B. Cybern. 37, 18–27 (2007) 11. Shi, Y., Eberhart, R.: A modified particle swarm optimizer. In: Proc. of the IEEE Int’l Conf. of Evolutionary Computation, pp. 69–73. IEEE Press, Piscataway (1998) 12. Fan, H.Y., Shi, Y.: Study on Vmax of particle swarm optimization. In: Workshop Particle Swarm Optimization (2001) 13. Blackwell, T.M., Bentley, P.: Don’t push me! Collision-avoiding swarms. In: Proceedings of the 2002 Congress on Evolutionary Computation (CEC 2002), pp. 1691–1696 (2002) 14. Eusuff, M.M., Pasha, K.L.F.: Shuffled frog-leaping algorithm: a memetic metaheuristic for discrete optimization. Eng. Optimiz. 38, 129–154 (2006) 15. Karaboga, D., Basturk, B.: A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm. J. Global. Optim. 39, 459–471 (2007) 16. Liang, J.J., Qin, A.K., Suganthan, P.N., Baskar, S.: Comprehensive learning particle swarm optimizer for global optimization of multimodal functions. Ieee T. Evolut. Comput. 10, 281–295 (2006) 17. Wilke, D.N.: Analysis of the particle swarm optimization algorithm. Dept. Mechanical and Aeronautical Eng., Univ. of Pretoria, Pretoria, South Africa, (2005) 18. Pedersen, M.E.H.: Good Parameters for Differential Evolution. Technical report, Hvass Computer Science Laboratories (2010)
PSO Based Pseudo Dynamic Method for Automated Test Case Generation Using Interpreter Surender Singh Dahiya1, Jitender Kumar Chhabra1, and Shakti Kumar2 1
National Institute of Technology, Kurukshetra, India Institute of Science & Technology, Kalawad, Yamunanagar, India {surendahiya,jitenderchhabra,shaktik}@gmail.com 2
Abstract. In this paper, we propose a particle swarm optimization (PSO) based hybrid testing technique named as “pseudo dynamic testing” to generate test data for C programs by fulfilling one of the most demanding test adequacy criteria: the all-path testing criterion using an interpreter. The proposed methodology attempts to solve many of the structural testing problems such as dynamic variables, input dependent array index, abstract function calls, infeasible paths and loop handling. The key algorithms and heuristics are given which are easy enough to implement, scalable and effective. The technique is employed on real world programs to show the robustness of this technique. The set of test inputs generated are not redundant as each leads to a different program path. Keywords: Pseudo dynamicSoftware Testing, Symbolic Testing, Dynamic Testing, Particle Swarm Optimization (PSO).
1 Introduction The manual selection of test inputs to the program under test is both labor-intensive, and erroneous [1]. Automated test data generation can reduce the test cost and time significantly. Although automation in testing is less intelligent but it helps in avoiding biases in test process. For automatic test data generation in structural testing, there are two ways through which the program can be analyzed. The dynamic analysis approach can handle dynamic arrays, pointers, internal variables, input dependent array index, function calls and other dynamic constructs more accurately than static analysis approach such as symbolic testing but it may also be more expensive, since the program under test is executed repeatedly for searching the input data. This problem becomes worse, when the tester fails to apply any highly effective search algorithm for generation of values of the inputs to execute the desired path [10]. Another problem with dynamic testing is its uncontrolled execution behavior, where any infinite loop execution or an infeasible target path (a path selected for testing and no input combination exists to execute it) can make testing extremely slow. Therefore, the dynamic execution method is very costly and time consuming, making it inappropriate and impractical for nontrivial programs. On the other side, second method namely the symbolic testing provides a controlled environment for testing because, here, the tester can specify in advance the execution path. Some of the infeasible paths can be avoided by excluding them in the list of test paths by following some Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 147–156, 2011. © Springer-Verlag Berlin Heidelberg 2011
148
S.S. Dahiya, J.K. Chhabra, and S. Kumar
identification processes such as identical or complement decisions, mutuallyexclusive decisions prescribed by [7] and [11]. For other difficult-to-identify infeasible paths, the tester can monitor the search progress of test data generation process and if he/she feels that search is not making any progress from the last several iterations then the path can be declared infeasible or difficult to be covered for test case generation purpose. This also can be achieved automatically [2]. Although symbolic testing provides partial solution to the problem of infeasible paths but it miserably fails to generate test data for such programs where state of any variable is only determined at run time [3]. A careful study of both techniques can reveal that although both of the testing techniques have their own inherent incapability in solving testing issues if used in isolation but these complement each other. While symbolic testing is not able to handle dynamic variables, dynamic execution based method can efficiently test programs involving these types of variables. On the other side, while dynamic execution testing is not able to solve the problem of path explosion due to presence of loops in path traversal, symbolic execution provides the facility of restricted execution by virtue of its execution style. If these complement each other, a question may arise; why not to create a hybrid testing approach which imitates the behavior of both of the testing types? This paper presents a novel hybrid approach for automatic test data generation named as pseudo dynamic execution (PDE) testing to address most of the problems of structural testing techniques. The Pseudo dynamic testing is a well-accepted concept in civil and mechanical engineering where actual construction or product is not tested but a simulation test is conducted which simulates the actual environment of the product. In the proposed approach, we have exploited the same concept, where program’s statements are executed concretely using an interpreter as done in dynamic approach but in a controlled way as done in the symbolic technique. This is the very reason to name this testing technique as pseudo dynamic technique. A soft computing based search algorithm particle swarm optimization (PSO) is also used to search for test data to achieve the all-path testing criterion. The hybrid approach can be used in test data generation for all type of real programs with/without loops and procedures. The rest of the paper is organized as follows: Section 2 explains proposed methodology. Section 3 describes the key algorithms used in PSO based PDE method of test case generation. Section 4 provides an experimental evaluation of our technique on real-world programs. Section 5 compares the proposed methodology with existing similar methods. Section 5 isfollowed by the conclusion.
2 The Pseudo Dynamic Execution (PDE) Method In the symbolic execution method, for each path, a path constraint is maintained together with a table which contains the expression of each variable referenced. When an assignment is encountered, the variables in the assignment statement are substituted by their current expressions maintained in the table and the resulting assignment expression replaces the expression representing the target variable. When a predicate is encountered, each variable in the predicate is substituted by its current expression and it is integrated with the path constraint. Once the symbolic execution of the path is complete, the path constraint is evaluated for its satisfaction by replacing symbols
PSO Based Pseudo Dynamic Method for Automated Test Case Generation
149
representing variables by the concrete values derived from a constraint solver. The values of input variables, which satisfythe path-constraint, become a test datum. This method has one problem; if variables maintained in the table are of dynamic nature, whose expression can’t be determined statically and depends on the concrete values then variables expression can’t be substituted conclusively for predicate evaluation. Table 1. Fitness function of a branch predicate Violated predicate
Penalty to be imposed in case predicate is not satisfied
AB B–A+ζ A >= B B–A A=B Abs(A – B) A≠B ζ – abs(A – B) A and B are operands and ζ is a smallest constant of operands’ universal domains used for incremental penalty in case of inequality violated predicate when both operands have equal value. For integer it is 1 and in case of real values it can be 0.1 or 0.01 depending on the accuracy we need in solution.
We have tried to solve this problem by executing the statement of programs on the path for which test data is to be generated, one by one by using concrete values of input variables with the help of an interpreter, thus, removing the urgency of maintaining a table. Each variable is maintained in the program memory space by interpreter itself then updated accordingly as the execution of the statements progresses. If any predicate statement is encountered during the path execution progress then it is evaluated for its truthfulness based on the current program variable values and subsequently, a penalty value replaces corresponding predicate in the path constraint which is built by concatenating all the branch nodes predicates. This penalty value is calculated using the well-established branch distance rules concept [17] as shown in table 1. After completing the processing of the whole path using the above concept, each ‘and’ operator in path constraint is replaced with ‘+’ operator, each ‘or’ operator is replaced with ‘,’ operator and each ‘(’ operator with ‘min(’ operator in path constraint string. Finally, a single penalty value is calculated by evaluating the whole path constraint string. If the penalty value is zero then the path constraint is satisfied and it implies that the concrete values of the inputs are able to execute the target path and this becomes the test data for the path. If the penalty value comes out to be more than zero then it means that the concrete values set for input variables fails to execute the target path fully and these can’t form the valid test data, however, in a population based search algorithm such as PSO, these can provide direction for evolving such values which can execute the target path and generate the valid test data. An algorithm explaining the above concept is given in figure 1. Thus this methodology is an amalgamation of symbolic and concrete execution and is a dynamic modeling of program execution in a controlled environment just like as it is done in pseudo dynamic testing in other engineering domains.
150
S.S. Dahiya, J.K. Chhabra, and S. Kumar
For each feasible path For each particle in PSO search algorithm population Assign input variables values from PSO particle For each node in target path of CFG If node is non-branch node Then concretely execute all the statements related to that node using Ch interpreter; Else Find the predicate of branch node from node expression array. Find the traversal link to next node in target path from CFG matrix. If traversal link is for false execution of branch predicate Then simplify predicate for negation. End If If simplified predicate is evaluated true using Ch interpreter Then continue without any penalty to individual solution Else Extract distinct predicates from combined branch predicate. For each distinct predicate If distinct predicate is evaluated true by individual Then assign zero penalty corresponding to that distinct predicate Else Determine Penalty for violated distinct predicate by following the concept for branch distance function End If End For Replace each distinct predicate with its corresponding penalty in composite predicate. End If Replace each ‘&&’ symbol with plus (+) sign and ‘||’ symbol with comma (,) sign and each bracket ‘(‘ with min([ in branch predicate to determine fitness related to the combined node predicate. End If Add fitness of each branch node predicate to determine the fitness for individual related to whole path. End For If fitness for the path is zero Then record the individual as a test data for the particular path and exit inner loop. End If End For End For Fig. 1. Pseudo dynamic testing using PSO algorithm
3 PSO Based Test Data Generator In the proposed methodology, test data is generated in two steps; first the program under test is instrumented to extract control flow graph (CFG) and node statements
PSO Based Pseudo Dynamic Method for Automated Test Case Generation
151
array. All paths of the program are automatically generated from the CFG and some of the infeasible paths are deleted manually by identifying mutually-exclusivedecision on node predicates. Other infeasible paths, which are hard to be identified can be later resolved by considering the search progress of search algorithm[2]. Feasible paths and node expression are fed into the PSO search algorithm to generate test cases as shown in figure 2. The PSO search algorithm is implemented in ‘Ch’ interpreter environment [18] which is helpful in executing individual statements with the help of ‘streval’ command. This command is also used to evaluate predicates which are further used to evaluate the whole path constraints which subsequently determine the fitness of an individual or a particle in PSO algorithm.
Fig. 2. PSO based Test data generator
The PSO search algorithm has the goal of covering all the paths in CFG of the program under test. The PSO generates tests (candidate solutions) and executes them as input for the program under test. A testis formed by a vector of given values (y1, y2, . . . ,yn) generated by the PSOfor the input variables (z1, z2, . . . , zn) of the program under test. The general PSO algorithm appears in Fig 3. The PSO generates test inputs based on the test that is the current solution (CS). Initially, the CS is a random test, but, inside the loop, the PSO modifies it based on the cognition and social learning it has acquired from the previous solutions. When a test is generated, the PSO evaluates its fitness based on the extent of test criterion it is able to satisfy.
152
S.S. Dahiya, J.K. Chhabra, and S. Kumar
1.
2. 3. 4.
Initialize the particle population (Candidate Solution) by randomly assigning locations (Xvector for each particle) from input space of the program and velocities (V-vector with random or zero velocities- in our case it is initialized with zero vector) Evaluate the fitness of the individual particle and record the best fitness Pbest for each particle and update P-vector related to each Pbest. Also find out the individuals’ highest fitness Gbest and record corresponding position Pg. Modify velocities based on Pbest and Gbest position using following equations 4.1 ௗ ͳ ൌ ൈ ௗ ଵ ൈ ሺሻ ൈ ሺ ௗ െ ௗ ሺሻሻ ଶ ൈ ሺሻ ൈ
ሺ ௗ െ ௗ ሺሻሻ 4.2 ௗ ͳ ൌ ௗ ௗ ͳ where • is a particle. • is dimension of the particle. • ሺ ሻ is random number generator. • ଵ and ଶ are are learning rates governing the cognition and social components. • represents the index of particle with best p-fitness. • ͳ signifies next generation. • is the inertia factor that dynamically adjust the velocities of particles gradually focusing the PSO into a local search.
5. 6. 7.
Update the particles position using above equation. Terminate if the condition is met Go to Step 2
Fig. 3. PSO Algorithm
3 Experiments and Results Ch integrated development environment (ChIDE) is used for implementing algorithms for experiment purpose. It is an interpreter and can execute ANSI standard C programs. Ten attempts are made for each path in a CFG of program under test for the purpose of averaging results. In each attempt, the PSO is iterated for 100 generations. The population size is 30. If a solution is not found within all attempts then, it is assumed that either the path is infeasible or the path constraint is too difficult to be solved. We have measured average percentage coverage (APC) of feasible paths, which measures the effectiveness of test data generator and is calculated as fraction of paths covered. The high value of APC is desirable. The starting values of inertia weight , Cognition learning rate ଵ and Social learning rate ଶ are taken as 0.8, 2.8 and 1.3 respectively as suggested in [19]. For experiment, ten ‘C’ programs have been selected (henceforth called testing objects). Although, test objects are not very complex but they exhibit every characteristics for which we want to generate test cases. Except the first, each program contains loops. A2F & BS are the programs in which there are array indexes which depend on concrete values and can be solved only using dynamic analysis. Further there is a program linked list (LL1) which contains pointer variable and all feasible paths are covered for this object. A second version of link list (LL2) is also experimented where several abstract functions are taken and we are able to get result for the higher level function by implicitly and dynamically executing lower function.
PSO Based Pseudo Dynamic Method for Automated Test Case Generation
153
The main attributes of these are objects and corresponding APC are shown in the table 2. From the results it can be concluded that this hybrid approach is effective on almost all programs. The APC for BS test object is just 58%. This is due to its requirement of a sorted array as input which destroy the search guidance for the PSO in every iteration and thus it becomes difficult to generate test cases especially where boundary cases are to be satisfied. Thus, it is a problem of search function not of the proposed testing technique. Table 2. Test objects, their attributes and experimental result Test Object
Lineof Code
Decision Nodes
Nesting Level
Loop exists
Pointer structure
AbstractFunction
Total Paths in CFG
Feasible Paths
AP C %
TC A2F BS REM BUB QUAD MINMAX ISPRIME LL1 LL2
35 48 23 35 21 24 27 16 116 57
06 14 04 8 03 05 03 02 12 5
05 07 03 04 03 03 03 02 06 02
No Yes Yes Yes Yes Yes Yes Yes Yes Yes
No No No No No No No No Yes Yes
No No No No No No No No No Yes
07 910 124 22 121 06 121 10 673 32
07 568 62 22 31 06 121 08 35 32
100 100 58 100 100 100 100 100 100 100
4 Related Work Recently, researchers have started exploring the use of hybrid techniques for solving several issues of symbolic execution such as the use of dynamically allocated data and scalability. Godefroid used both types of testing strategies; concrete as well as symbolic (called concolic testing) in Directed Automated Random Testing (DART) [5] and Systematic Modular Automated Random Testing (SMART) [6] algorithms for test case generation of C programs.Sen et al [14] suggested a concolic unit test generation framework “CUTE” which is similar to the DART but it uses a logical input mapping table for handling pointer variables also. Majumdar and Sen [9] enhanced the coverage capability of CUTE by including random testing with concolic testing. Khurshid et al [8] proposed a new technique called generalized symbolic execution for automated test case generation for programs containing dynamic allocated data. Visser et al [15] combined model checking with symbolic execution to generate test inputs in Java programs. Deng et al [4] proposed KUnit, a unit test data generation framework for sequential, heap-manipulating Java applications. Pasareanu et al [12] used the symbolic execution extension to the Java Path Finder model checker to generate test cases for complex, safety-critical software.Saxena et al [13] introduced loop-extended symbolic execution (LESE) by including symbolic variables for the number of times each loop executes. Visvanathan and Gupta [16] generated test inputs for functions that requires pointer as input. All these techniques addressed testing requirements partially and were specific in their approaches and thus failed to address problems on larger scale.
154
S.S. Dahiya, J.K. Chhabra, and S. Kumar Table 3. Comparison of different hybrid techniques
Criterion
DART
CUTE
PDE
Primary testing technique
Symbolic
Symbolic
Dynamic
Secondary technique
Concrete
Concrete
Not Required
Type of search algorithm
Random
Random
PSO based
Criterion for testing
Systematic Path testing
Systematic Path testing
All Path testing
Type of constraint solver
Linear Programming (LP)
LP with backtracking
PSO
Identification of feasible paths
Automatic with limited iteration based criterion
Automatic with limited iteration based criterion
Fully automatic with search progress criterion
Handling of abstract function
No
No
Yes
Handling of pointers
No
Pointer approximation only
Yes
non-linear constraints
No
No
Yes
memory mapping
Required
Required
Not Required
The proposed PDE based approach is most closely related to DART and CUTE. The DART starts with a random (concrete) input and collects symbolic path constraints (conditions) during its execution and then uses these to attempt direct execution down an unexplored path on the next execution by negating a predicate in the path condition. Thus a new path condition is solved, generating the new set of test inputs. When execution reaches a branching statement the underlying decision procedure cannot decide, the symbolic condition is replaced by its concrete value. Randomization is also used when automated reasoning is not possible. The DART handles constraints only on integer types, but does not handle constraints on the programs with pointers or complex data structures. For these cases, it only uses randomly generated data. The DART is also being extended into the SMART to perform inter-procedural static analysis for dynamic test generation at component level and defined test results as function summaries using
PSO Based Pseudo Dynamic Method for Automated Test Case Generation
155
input pre-conditions and output post-conditions for reusing these for testing higher-level functions. The SMART algorithm takes a top-down, demand-driven approach to compute summaries in order to avoid explosion of paths in a large program but, it does not have any extenuating effects on the inherent limitations of symbolic execution. It fails to generate test cases in three circumstances; when in any program, call flow graph (inter procedural graph) is cyclic (as in the case of recursive calls of a function), second where any function for which pre-conditions summaries cannot be determined in advance (e.g. in functions where loop execution determine the behavior of specific summary of a function and its execution bound can't be determined statically) and lastly whenever a constraint on some inputs cannot be expressed within given theory of constraints (e.g if about a method it is not possible to reason completely by using information in the calling context to constrain the input values). The CUTE is similar to the DART with the additional capability of addressing pointer variables by explicit memory mapping. Table 3 compares the proposed method with CUTE and DART andbased upon the literature survey, theoretically, it can be said that the proposed approach (i.e. PDE) is expected to outperform the other two.
5 Conclusion This paper presented a hybrid approach which generates test cases dynamically but in a controlled environment as is the case with symbolic testing. Since the approach applied PSO based search algorithms its effectiveness is much better than that achieved by any algorithm based on random search. We validate our methodology using ten real world test objects. The results were found highly encouraging. We observed that the proposed approach was able to achieve 100% test coverage in nine out of the ten objects. Even in the case of 10th object it was observed that lower performance was not the outcome of any shortcoming on the part of approach but was due to the inherent characteristics of object itself.
References 1. Beizer, B.: Software testing techniques. Dreamtech publication, New Delhi (1990) 2. Bueno, P.M.S., Jino, M.: Identification of potentially infeasible program paths by monitoring the search for test data. In: Proceedings of the 15th IEEE International Conference on Automated Software Engineering (ASE 2000), France, pp. 11–15 (2000) 3. Coward, P.D.: Symbolic execution and testing. Information and Software Technology 33(1), 53–64 (1991) 4. Deng, X., Robby, Hatcliff, J.: Kiasan/KUnit: Automatic test case generation and analysis feedback for open object-oriented systems. In: Proceedings of the Testing: Academic and Industrial Conference Practice and Research Techniques, Washington, pp. 3–12 (2007) 5. Godefroid, P., Klarlund, N., Sen, K.: DART: Directed Automated Random Testing. In: The Proceedings of Programming Language Design and Implementation (June 2005) 6. Godefroid, P.: Compositional dynamic test generation. In: The Proceedings of ACM Symposium on Principles of Programming Languages (2007)
156
S.S. Dahiya, J.K. Chhabra, and S. Kumar
7. Goldberg, A., Wang, T.C., Zimmerman, D.: Applications of Feasible Path Analysis to Program Testing. In: ISSTA 1994, Seattle, Washington, USA, pp. 80–94 (1994) 8. Khurshid, S., Păsăreanu, C.S., Visser, W.: Generalized symbolic execution for model checking and testing. In: Garavel, H., Hatcliff, J. (eds.) TACAS 2003. LNCS, vol. 2619, pp. 553–568. Springer, Heidelberg (2003) 9. Majumdar, R., Sen, K.: Hybrid concolic testing. In: The proceedings of the 29th International Conference on Software Engineering, Washington DC, pp. 416–426 (2007) 10. McMinn, P.: Search-based Software Test Data Generation: A Survey. Software Testing, Verification and Reliabilit 14(2), 105–156 (2004) 11. Ngo, M.N., Tan, H.B.K.: Detecting Large Number of Infeasible Paths through Recognizing their Patterns. Information and Software Technology 50, 641–655 (2008) 12. Pasareanu, C.S., Mehlitz, P.C., Bushnell, D.H., Gundy-Burlet, K., Lowry, M., Person, S., Pape, M.: Combining unit-level symbolic execution and system level concrete execution for testing NASA software. In: Proceedings of the International Symposium on Software Testing and Analysis, pp. 15–25 (2008) 13. Saxena, P., Poosankam, P., McCamant, S., Song, D.: Loop-Extended Symbolic Execution on Binary Programs. In: ISSTA 2009, Chicago, Illinois, USA, July 19-23 (2009) 14. Sen, K., Marinov, D., Agha, G.: CUTE: a concolic unit testing engine for C. In: Proceedings of Joint Conference of ESEC/FSE 2005, Lisbon, Portugal, pp. 263–272 (2005) 15. Visser, W., Pasareanu, C.S., Khurshid, S.: Test input generation with Java PathFinder. In: Proceedings of the International Symposium on Software Testing and Analysis (2004) 16. Visvanathan, S., Gupta, N.: Generating Test Data for Functions with Pointer Inputs. In: 17th IEEE International Conference on Automated Software Engineering (2002) 17. Watkins, A., Hufnagel, E.M.: Evolutionary test data generation: a comparison of fitness functions. Software Practice & Experience 36, 95–116 (2006) 18. http://www.softintegration.com 19. Yuhui, S., Eberhart, R.C.: Parameter Selection in particle swarm optimization. In: The 7th Annual Conference on Evolutionary Programming, San Diego USA
Reactive Power Optimization Based on Particle Swarm Optimization Algorithm in 10kV Distribution Network Chao Wang1, Gang Yao2,*, Xin Wang1, Yihui Zheng1, Lidan Zhou2, Qingshan Xu3, and Xinyuan Liang4 1
Center of Electrical & Electronic Technology, Shanghai Jiao Tong University, Shanghai, P.R. China, 200240 2 Department of Electrical Engineering, Shanghai Jiao Tong University, Shanghai, P.R. China, 200240 [email protected] 3 JiLin Electric Power Co. LTD. 130021 4 Department of Environmental Science, College of Life and Environmental Science, Minzu University of China, Beijing, 100081
Abstract. The optimization of reactive power compensation plays an important role in power system planning and designing. A mathematical model in the 10kV distribution network is established in this paper. Its objective function is the cost of investment in equipment of reactive power compensation and active power loss of the system should be the least. The node voltages beyond limited and the generator reactive power output beyond limited will be expressed in the way of penalty function. In this paper, particle swarm optimization will be used. Using PSO’s characteristic of high convergence efficiency, the speed of reactive power optimization will be improved. Using the binary PSO, the algorithm can better adapt to solve the problem. Keywords: 10kV distribution system, reactive power optimization, PSO.
1 Introduction Voltage is an important indicator to measure the security and economy of the power system, while the reactive power is an important factor in affecting the voltage level. A reasonable distribution of reactive power is a basic condition to ensure the voltage quality [1]. The rational flow of reactive power is able to maintain reactive power balance, not only ensure the voltage quality, improve the system’s security and stability, but also reduce the power loss, access to economic benefits [2]. As an important part of power system’s planning, reactive power optimization can utilize voltage to control power system, improve grid stability, reduce network loss and ensure a wider operating margin through reactive power compensation [3,4]. 10 kV distribution network has many branches and many customers, distribution transformers have no people on duty. Currently, compensation devices which can switch automatically are few and high cost, most of them have a fixed put-in form and can not be changed when the load changes [5]. In order to achieve the best *
Corresponding author.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 157–164, 2011. © Springer-Verlag Berlin Heidelberg 2011
158
C. Wang et al.
compensation effect and not to send reactive power back to the main network, how to choose the node of reactive power compensation and reactive compensation capacity is very important [6]. In order to deal with these problems, there appeared linear programming, nonlinear programming, integer programming, graph theory method, sensitivity analysis, interior point method and network flow method and the simulated annealing algorithm, genetic algorithms, particle swarm optimization which are proposed in recent years [7-9]. Particle swarm optimization is a random optimization algorithm based on swarm intelligence algorithm which is merging in recent years. The algorithm is fast in the initial convergence, but in the latter part, it may be trapped in local optimum. This is the major shortcomings of PSO [10,11]. In this paper, an improved PSO has been presented. The method of dynamic adjustment of the inertia weighted has been added into the traditional PSO algorithm, which the global search capability is far superior to the traditional PSO. Finally, it is applied to reactive power optimization of a 10 kV distribution network system with 17 nodes. And its simulation result shows that this method is effective.
2 The Mathematical Model of Reactive Power Optimization The purpose of reactive power optimization is to minimize the loss of the entire network and improve voltage quality, to save the cost of system operation, to make the system operated stably and safely. The mathematical model has 3 parts, includes the objective function, the power constraint equations and the variable constraint equations. 2.1 The Objective Function The objective function of reactive power optimization is varied, including both technical performance indicators and economic indicators. The operation of power system should meet the security and economy. Reactive power optimization regulates generator terminal voltage, adjusts the voltage transformation ratio of voltage transformer and compensation capacitor switching and other control variables in order to take full advantage of the system reactive power, to ensure the voltage quality of the users, to achieve the minimum active power loss of the whole network. The objective function can be expressed as the minimum active power loss:
Ploss = ∑ Gij (Vi 2 + V j 2 − 2VV i j cos δ ij )
(1)
i∈t j∈N
The state variables (node voltages beyond limited and the generator reactive power output beyond limited) can be expressed in the way of penalty function:
min F = Ploss + ∑ λVj ( iecov
V j − V j lim V j max − V j min
) 2 + ∑ λGi ( iecoo
QGi − QGi lim 2 ) QGi max − QGi min
(2)
where the first section of right-hand side is the active power loss; the second section is to punish the node voltages when beyond limited; the third section is to punish generator reactive power output when beyond limited. λVj and λGi are penalty factors of
Reactive Power Optimization Based on Particle Swarm Optimization Algorithm
159
node voltages other than the node of PT and generator reactive power output when beyond limited. cov is the collection of subscript of node voltage of load which is out of range; coG is the collection of subscript of generator reactive power output of load which is out of range. V j lim and QGi lim can be expressed as:
;
V j lim
QGi lim
⎧V j max V j > V j max ⎪ = ⎨V j min V j < V j min ⎪ V j min
(3)
QGi > QGi max ⎧QGi max ⎪ = ⎨QGi min QGi < QGi min ⎪Q QGi min
(4)
2.2 The Power Constraint Equations
Node power balance equation is the equality constraint: N
Pi = Vi ∑ V j (Gij cos δ ij + Bij sin δ ij )
(5)
j =1 N
Qi = Vi ∑ V j (Gij cos δ ij − Bij sin δ ij )
(6)
j =1
where Pi , Qi are the active and reactive power which is injected by node i ; Vi , V j are the voltage amplitudes of node i and node j ; Gij
, B ,δ ij
ij
are conductance, sus-
ceptance, angle difference between voltage phase between node i and node j ; N indicates the nodes which are connected with node i directly. 2.3 The Variable Constraint Equations
Variable constraints are inequality constraints:
⎧VGi min ≤ VGi ≤ VGi max ⎪Q ⎪⎪ Gi min ≤ QGi ≤ QGi max ⎨Tk min ≤ Tk ≤ Tk max ⎪Q ≤ QCi ≤ QCi max ⎪ Ci min ⎪⎩Vi min ≤ Vi ≤ Vi max
(7)
where VGi is the generator terminal voltage; VGi min , VGi max are the upon limit and lower limit of the generator terminal voltage; QGi is the generator reactive power output; QGi min , QGi max are the upon limit and lower limit of the generator reactive power output;
Tk is the position of the adjustable transformer tap; Tk min , Tk max are the upon limit and
160
C. Wang et al.
lower limit of the adjust ratio of the transformer; QCi is the capacitive reactive compensation capacity; QCi min , QCi max are the upon limit and lower limit of the compensation capacity in node i ; Vi is the voltage of node i ; Vi min , Vi max are the upon limit and lower limit of the voltage amplitude of node i .
3 Particle Swarm Optimization
)
PSO (Particle Swarm Optimization is a new evolutionary algorithm which is developed in recent years. It was originally developed by Dr. Kennedy and Dr. Eberhart in 1995 which is inspired by the research of artificial life. It is an evolutionary computation technique based on swarm intelligence which is proposed when simulating birds’ behavior of migration and the cluster during foraging. In PSO, the solution of each optimization problem is a bird in the search space. We call it “particle”. Each particle has a fitness value which is determined by the function to be optimized and a speed to determine their flying direction and distance. Then particles will search in the solution space search, following the current best particle. However, due to the defects in the basic PSO (as in theory, absolute convergence has not be proved, it has the danger of falling into local optimal) and actual use (such as requirements of the computing speed) and other reasons, we have to do some improvements to the basic PSO, so that PSO can be adapted to the reactive power optimization. 3.1 The Introduction of Inertia Factor
In PSO, each particle is the optimization solution in the feasible region. First, it initializes a group of particles randomly. Then, these particles adjust their direction and location to search for the optimal solution by learning two "extreme" in the iteration process. These two "extreme", one is individual extreme value, which is its own optimal value of the current; the other is the global extreme value, the optimal solution of all particles currently. In the searching process, the particles adjust their speed Vid and location X id according to these two values. To speed up the convergence rate of PSO, with the inertia factor, the formula of particles’ velocity and displacement is:
where
Vidk +1 = ωVidk + C1rand ()( pBestidk − X idk ) + C2 rand ()( gBestidk − X idk )
(8)
X idk +1 = X idk + Vidk +1
(9)
ω
is called the inertia factor; X id is the particle’s position; Vid means the particle’s speed; C1 , C2 are acceleration factors rand () is a random number between 0 and 1; pBestid global.
、 gBest
;
id
are the best particle position and the best position of the
Reactive Power Optimization Based on Particle Swarm Optimization Algorithm
161
ω is a scale factor which is related with the previous speed, it controls how the next iteration’s velocity is impacted of the previous iteration’s speed value. A larger ω can strengthen the global search capability in PSO; a smaller ω can enhance the local search capability. So if using a same value of ω in the whole process of PSO iterations, the algorithm can not be easily suitable for global search and local search. In this paper, ω will decrease linearly from 0.9 to 0.4 in the whole iteration process: ω = 0.9 −
0.9 − 0.4 ×n N max
(10)
where N max is the total number of iterations; n is the current number of iterations. 3.2 The Construction of Particles in Reactive Power Optimization
In PSO, each particle is instead of each solution in the reactive power optimization. Using the objective function, the fitness of each particle can be determined: the higher fitness, the more superiority of the particles. Each particle searches for the optimal solution according to its own and other particles’ flying experience in the solution space. When using PSO to determine compensation point, each node only has two states: a compensation point or not. So binary coding is suitable for PSO: each particle represents a combination of compensation state. Using binary coding, 0 means this node has no compensation, the node 1 means that it has compensation. 3.3 Initialization of PSO
For the binary coded PSO, the initial of the particles’ position is randomly selected certain nodes as the initial compensation nodes. Because of the actual situation of the distribution network, the compensation nodes should not be too many; otherwise the economy will be poor. According to the experience, 3-5 nodes will be appropriate. The velocity of particles in the distribution network reconfiguration problem has no actual physical meaning. It represents the different between the current states of the switching portfolio with the best combination states. The speed will be faster if the difference is greater. In the binary coded PSO, the particle velocity is on behalf of a dimensional coordinates of the probability of this state or another state. In this paper, Sigmoid function will be used to update the particles’ velocity: Sigmoid (Vid ) =
1 1 + e−Vid
(11)
4 System Examples Take a distribution network of 17 nodes and assume the voltage of the first outlet end of the root node is a constant value 10.5kV.
162
C. Wang et al.
1 2 3
10 4
11 12
5
17
13
6
14
7 15 8
9
16
Fig. 1. A 17-node System
All raw data of the system is as follow: Table 1. Raw Data
Start Node 1 2 2 3 3 4 5 6 7 7 11 11 12 13 14 15
Last node 2 3 10 4 11 5 6 7 8 9 12 17 13 14 15 16
Resistance( Ω )
Reactance( Ω )
0.033117 0.026563 0.028350 0.015593 0.008366 0.014459 0.021263 0.014459 0.021263 0.017483 0.012062 0.023814 0.011852 0.011155 0.011504 0.009691
0.035511 0.028484 0.023184 0.012751 0.008971 0.011824 0.017388 0.011824 0.017388 0.014297 0.012933 0.010293 0.012709 0.011962 0.012335 0.010392
Reactive Power Optimization Based on Particle Swarm Optimization Algorithm
163
Table 2. Node voltage before and after the compensation
node 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
before 10.500 10.324 10.220 10.214 10.210 10.199 10.192 10.184 10.190 10.301 10.188 10.157 10.127 10.100 10.083 10.082 10.164
after 10.500 10.329 10.228 10.218 10.211 10.208 10.207 10.199 10.212 10.306 10.202 10.175 10.148 10.125 10.112 10.110 10.180
Table 2 shows the voltage of each node has been improved in varying degrees after the compensation. In which the lower voltage before compensation will be improved the larger, such as node 15, 16; the higher voltage before compensation will be improved the smaller, such as Node 2. Table 3. Reactive power compensation added
Node Capacity added ( kVar )
2
3
7
11
5.25
3.93
19.98
8.40
Table 3 shows that the reactive power compensation capacity added of each node by the end is: node 2, 5.25 kVar; node 3, 3.93 kVar; node 7, 19.98 kVar; node 11, 8.40 kVar. The above analysis shows that after adding reactive power compensation, the system voltage level has been markedly improved. Therefore, the calculated compensation plan is reasonable. Through comparative analysis of before and after the compensation, we can see voltage level and the net loss of the grid has been greatly improved, the equipment investing cost of the reactive power compensation has been saved, while the reactive power has been well improved. The reactive power optimization can reduce the whole
164
C. Wang et al.
Net Loss, improve the system voltage level, and thereby raise the level of economic, security of grid operation.
5 Conclusion In this paper, mathematical model in the 10kV distribution network has been established. Its objective function is the cost of investment in equipment of reactive power compensation and active power loss of the system should be the least. The node voltages beyond limited and the generator reactive power output beyond limited can be expressed in the way of penalty function. The convergence speed and convergence precision has increased effectively, the system voltage security been improved by using improved PSO to select the optimal compensation node. The improved PSO makes PSO more suitable for reactive power optimization in the distribution network, has theoretical and practical significance.
References 1. MakSioe, T.: Propagation of Transientsina Distribution Network. IEEE Transaction on Power Delivery 8(1), 337–343 (1993) 2. Mantawy, A.H., AI-Ghamdi, M.S.: A New ReactivePower Optimization Algorithm. In: 2003 IEEE Bologna PowerTech Conference, Bologna, Italy (2003) 3. Durairaj, S., Fox, B.: Evolutionary computation based reactive power optimization. In: IET-UK International Conference on Information and Communication Technology in Electrical Sciences (ICTES 2007), pp. 120–125. Dr.M.G.R.University, Chennai (2007) 4. Yoshida, H., Kawata, K., Fukuyama, Y., et al.: A particle swarmoptimization for reactive power and voltage control securityassessment. IEEE Trans. on Power Systems 15(4), 1232–1239 (2000) 5. Yu, X., Li, Y., Xiong, X.: Optimal shunt capacitorplacement using particle swarm optimization algorithm withharmonic distorts ion consideration. Proceedings of the CSEE 23(2), 26–30 (2003) 6. Zhou, S., Zhu, L., Guo-jiu, et al.: The power systemvoltage stability and control. China ElectricPower Press, Beijing (2004) 7. Guo, Y., Wen, J.: A new power system reactive poweroptimization algorithm. Electric Power Survey and Design 12(1), 66–70 (2005) 8. Tan, T.-l., Zhang, Y.: Reactive power optimizationbased on genetic/ tabu search hybrid algorithm. PowerSystem Technology 28(11), 57–61 (2003) 9. Eberhart, R.C., Shi, Y.: Comparing inertia weights and const riction factors in particle swarm optimization. In: Proc.of the IEEE Conf. on Evolutionary Computation, pp. 84–88. IEEE Service Center, California (2000) 10. Naka, S., Genji, T.: A hybrid particle swarm optimization for distribution state estimation. IEEE Trans. on Power Systems 18, 60–68 (2003) 11. Zhang, W.-J., Xie, X.-F.: DEPSO Hybrid Particle swarms with differential evolution operator. In: Proceedings of IEEE International Conference on Systems, Man and Cybernetics, vol. 4, pp. 3816–3821 (2003)
Clustering-Based Particle Swarm Optimization for Electrical Impedance Imaging Gang Hu, Min-you Chen, Wei He, and Jin-qian Zhai State Key Laboratory of Power Transmission Equipment & System Security and New Technology, Chongqing University, Chongqing 400044, China
Abstract. An attempt has been made in this paper to solve the non-linear and ill-posed Electrical Impedance Tomography (EIT) inverse problem using clustering-based particle swam optimization (PSO). To enhance optimal search capability in such an ultra high dimension space and improve the quality of the reconstructed image, an adaptive PSO algorithm combined with a modified Newton–Raphson algorithm and a conductivity-based clustering algorithm was proposed. The modifications are performed on the reduction of dimension by dividing all mesh into clusters and initializing particles using the result of the modified Newton–Raphson type algorithm. Numerical simulation results indicated that the proposed method has a faster convergence to optimal solution and higher spatial resolution on a reconstructed image. Keywords: Particle Swarm Optimization, Algorithm, Electrical Impedance Tomography.
Clustering,
Reconstruction
1 Introduction The electrical impedance tomography (EIT) problem is an inverse problem that the internal conductivity of an inaccessible region can be estimated through currents injected into the region and the corresponding voltages measured on the surface. EIT is very suitable for early detection, diagnosis, prediction and evaluation after healing for nerve diseases and malignant tumors [1]. Essentially, the EIT problem is a non-linear inverse problem and is severely ill-posed. The use of a Newton–Raphson type solution is widespread in EIT, the Newton's One-Step Error Reconstructor (NOSER) algorithm being a well known example [2]. However, the linearized solution will only be accurate when the true conductivity is close to the initial estimate and the process is likely to be trapped in a local minimum. Recently, some global optimizing evolutionary algorithms, such as GA [3], [4] and DE [5], were put forward to solve the inverse problem. Although these algorithms are relatively expensive in terms of computing time and resources, the spatial resolution of the reconstructed images could be improved. In the years since the introduction of PSO as a new method for global optimization [6], the PSO algorithm has been found to be successful in a wide variety of optimization tasks, including neural network training [7] and function minimization [8]. In this paper, a clustering-based PSO reconstruction method for EIT was proposed, which used the result of NOSER as prior knowledge to Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 165–171, 2011. © Springer-Verlag Berlin Heidelberg 2011
166
G. Hu et al.
initialize the population and reduce the dimension of problem space by clustering the meshes with a similarity factor. The convergence of the PSO was accelerated and the quality of imaging was improved.
2 The EIT Problem The principle of operation of EIT is shown in Fig. 1, where low frequency current is injected through a pair of electrodes and voltages are captured on others. After sixteen injecting and measuring, the conductivity distribution would be evaluated. The potential distribution function ϕ and conductivity distribution function σ in the region Ω are governed by the Laplace equation (1) subject to the boundary condition (2).
∇[σ ( x, y ) ⋅ ∇ϕ ( x, y )] = 0 ( x, y ) ∈ Ω
σ ( x, y )
∂ϕ ( x, y ) = j ( x, y ) ( x, y ) ∈ ∂Ω ∂n
(1)
(2)
where j is the current density applied on the boundary, ∂Ω is the boundaries of Ω and n is the unit outward normal vector to the boundary surface. This inverse problem of EIT also can be presented as minimizing the objective function E(σ) with respect to σ, N N −3
E (σ ) = ∑∑ (Vij − U ij (σ )) 2 ,
(3)
i =1 j =1
where Vij are the measured boundary voltages and Uij are the calculated boundary voltages. This suggest the viability of employing PSO for the solution of the EIT problem.
Fig. 1. Principle of Operation of EIT
3 Clustering-Based PSO for Image Reconstruction in EIT There are many modified versions of PSO by improving convergence property to a certain problem. While, the modified PSO algorithm suggested in [9] was used to solve
Clustering-Based Particle Swarm Optimization for Electrical Impedance Imaging
167
the EIT inverse problem in this paper. In the simple implementation of PSO in EIT, a swarm (particles) of tentative solutions (EIT images) is generated, usually at random. Each particle’s position vector consists in m-tuple of conductivity values (m is the number of elements discretizing the imaging region), i.e., the EIT particle’s position vector is a sequence of m conductivities. A fitness value is computed for each individual. In the present case, the fitness function is equation (3). In EIT imaging, it normally requires a large number of elements in the FE model (e.g. m=864 in our FE model shown in Fig.2) to obtain satisfactory resolution in the imaging region. In such a high-dimensional space, the PSO algorithm is often failed in searching the global optimal solution.
Fig. 2. The FE model used in computer simulation
In fact, the existence of biological tissue is always classified and similar tissues have similar electrical properties. This enlighten us that if all the elements can be reasonably assigned into several subsets under certain similarity measures without losing key information, it will reduce the dimension of the problem space significantly and improve the convergence of the PSO algorithm. Furthermore, after the one-step iteration of the NOSER algorithm, absolute conductivity values of meshes cannot be determined but some useful information on the objective images can be obtained which can be used as prior information of the optimization problem. To increase the feasibility of the pre-clustering in EIT reconstruction, a similarity factor was proposed to control the clustering, which includes two distance measures, the one is concerned with the conductivity value and the other is concerned with the adjacency of space location of elements. These two distance measures represented by VD and SD were defined as follows:
VD = σ ei − σ cj ; SD = ( xei − xcj ) 2 + ( yei − ycj ) 2 ,
(4)
where σei is the conductivity of the ith element, σcj stands for the conductivity of the jth cluster, xei and yei are the coordinates of the ith element, xcj and ycj stand for the coordinates of the jth cluster. The conductivity of a cluster is defined as follows:
σ cj = ∑σ i / G j ,
(5)
where σi is the conductivity value of an element belonging to cluster j, and Gj is the number of elements in cluster j. The coordinates of a cluster are defined as follows:
xcj = ∑ xi / G j ; ycj = ∑ yi / G j ,
(6)
168
G. Hu et al.
where xi and yi are the coordinates of an element belonging to cluster j and Gj is the number of elements in cluster j. Using the distance measures VD and SD, a self-organizing network based clustering algorithm [10] is used to establish the clusters. With different thresholds for VD and SD, different number of clusters will be divided. By the pre-clustering, the dimension of the PSO algorithm’s searching space was greatly reduced from m to N, where N is the number of clusters which is much smaller than the number of elements m. Thus, the position vector of ith individual in the population was represented as xi=[ xi1,…, xij,…, xiN]=[σi1,…, σij,…, σiN], where σij denotes the conductivity of jth cluster. Instead of initializing all particle’s position vector randomly, one individual’s position vector was initialized by the conductivity distribution [σ1,…, σj,…, σN], which was calculated through equation (5) with the result of the NOSER algorithm and self-organizing network based clustering algorithm.
Fig. 3. The convergent performance of different threshold for VD and SD
To preliminarily estimate the effect of the pre-clustering on the convergence of the PSO, a simulation experiment for EIT image reconstruction was conducted. Eight evenly spaced electrodes array put on the top boundary of a rectangle region and the 864 elements, 463 nodes FE Model was used to discretize it. The conductivity of the black region 3 or B shown in Fig.2 was set to 5 S/m and the others were set to 1 S/m. Two different thresholds of VD and SD were taken into consideration and these two cases were compared with the non-clustering case. The convergence performance of the PSO algorithm with different clustering results was shown in Fig.3. It can be seen that the PSO with pre-clustering process (the lines with dot markers and diamond markers) converged faster than the PSO algorithm without clustering (the line with triangle markers). But without sufficient clusters, it is easy for the algorithm to be premature (see the line with diamond markers for iterations > 6). So the values for VD and SD should to be optimized for different imaging situation. In this paper, the actual implementation in EIT (clustering based PSO in the following) consists of a two-stage PSO. In the first stage, particles not only search the optimal conductivity values but also the optimal VD and SD values. So individual’s position vector includes N conductivity values, the VD value and the SD value, i.e., xi=[xi1, xi2, …, xiN, xi(N+1) , xi(N+2)] =[σi1, σi2,…, σiN, VDi, SDi]. For different VD and SD values the N is different, so the dimension of the position vector is different for each particle and even for each iteration of the same particle. In this stage, the two important values, individual-best and global-best for conductivity-position need a special process.
Clustering-Based Particle Swarm Optimization for Electrical Impedance Imaging
169
In this paper, at every iteration, the individual-best and global-best are first mapped into non-clustered space and then set these two values of each new cluster by the average values of all the elements belonging to the cluster. The two best values of a cluster are defined as follows:
pbestj = ∑ pbesti / G j ; gbestj = ∑ gbesti / G j ,
(7)
where pbesti is the individual-best value of an element belonging to cluster j, gbesti is the global-best value of an element belonging to cluster j, and Gj is the number of elements belonging to cluster j. The second PSO finally solves the EIT problem by searching for the conductivity distribution without clustering. In this stage, one population was initialized by the conductivities computed in the first stage and others generated randomly. The first stage PSO procedure can be described as following steps: Step1. Initialisation a)
Set population number and iteration number.
b) Randomly set the threshold of VD and SD for each particle. c)
Use a self-organizing network to generate element clusters using the given VD, SD values based on the conductivity values calculated by NOSER.
d) Initialize the first particle position using the conductivity values calculated through the NOSER algorithm and the others position and velocity of the particles within the pre-defined decision variable range. Set the maximum allowable velocity. Set individual-best and global-best position. Step2. Evaluation Evaluate each particle in the current population using Pareto-based fitness assignment strategy. Update individual-best and global-best. Step3. New particles generation a)
Calculate individual-best and global-best according to clusters.
b) Calculate the new velocity and new position. c)
According to new VD and SD value re-cluster elements to clusters.
d) Calculate the objective function values for all the new particles. Combine all position and new position (2N particles) together and store them in a temporary list. Step4. Non-dominated Sorting. Step5. Select particles for next iteration.
170
G. Hu et al.
Step6. If satisfied the control condition, execute mutation operation, otherwise go to Step7. Step7. If satisfied the control condition, go to Step2. Step8. Store the non-dominated solutions from the final population. The proposed method was tested with simulation experiment shown in Fig.2. The background conductivity was set to 1 S/m and the target conductivity was chosen to 5 S/m. To study the spatial resolution in the X direction parallel to the electrode arrays, four locations A~D shown in Fig.2 were tested. To study the spatial resolution in the Y direction, the depths of positions 1 to 4 shown in Fig.2 were tested.
Fig. 4. The reconstruction images using NOSER and clustering-based PSO
The images reconstructed by NOSER (the upper images) and clustering-based PSO (the bottom images) were shown in Fig.4. In these figures, the conductivity value was represented by brightness, i.e. the objective with higher conductivity corresponds to brighter region. Fig.4 shows that the clustering-based PSO can locate the target more accurately and reconstruct images more clear than NOSER. For each location, the image reconstruction was run 10 times independently with random initial conditions and adding randomly distributed noise (the maximum signal-to-noise ratio was 30DB) to the calculated voltages. It is clearly shown that the clustering-based PSO can improve the reconstruction image on the accuracy of solution remarkably.ï
4 Conclusions and Further Developments PSO appear to be a promising tool for the solution of the EIT problem. Although PSO is presently unsuitable for real-time tomographic applications, the exploitation of prior knowledge has the potential to produce better reconstructions. The proposed clustering-based PSO-EIT method is able to finding optimal solution of reconstruction that can improve imaging resolution. Further research should be done to improve the stability of the proposed method. The successful cases should be studied to obtain some experiential knowledge to optimize VD and SD.
Clustering-Based Particle Swarm Optimization for Electrical Impedance Imaging
171
Acknowledgements The authors gratefully acknowledge the Project No.CDJXS11151154 supported by the Fundamental Research Funds for the Central Universities.
References 1. Brown, B.H.: Electrical impedance tomography. Journal of Medical Engineering & Technology 27(3), 97–108 (2003) 2. Lionheart, W.R.B.: EIT reconstruction algorithms: pitfalls, challenges and recent developments. Physiol. Meas. 25, 125–142 (2004) 3. Kimt, H.C., Mood, D.C., Kimtt, M.C., Kimttt, S., Leettt, Y.J.: Improvement in EIT Image Reconstruction using Genetic Algorithm. In: Proceedings of the American Control Conference, Anchorage, pp. 3858–3863 (2002) 4. Olmi, R., Bini, M., Priori, S.: A Genetic Algorithm Approach to Image Reconstruction in Electrical Impedance Tomography. IEEE Transactions on Evolutionary Computation 4(1), 83–88 (2000) 5. Li, Y., Rao, L., He, R., Xu, G., Wu, Q., Yan, W., Dong, G., Yang, Q.: A Novel Combination Method of Electrical Impedance Tomography Inverse Problem for Brain Imaging. IEEE Transactions on Magnetics 41(5), 1848–1851 (1848) 6. Kennedy, J., Eberhart, R.: Particle Swarm Optimization. Neural Networks. In: Proc. IEEE Inter. Conf. on Neural Networks, Perth, pp. 1942–1948 (1995) 7. Engelbrecht, A.P., Ismail, A.: Training product unit neural networks. Stability Control: Theory Appl. 2(1-2), 59–74 (1999) 8. Parsopoulos, K.E., Vrahatis, M.N.: On the Computation of All Global Minimizers Through Particle Swarm Optimization. IEEE Trans. Evol. Comput. 8(3), 211–224 (2004) 9. Chen, M., Wu, C., Fleming, P.J.: An evolutionary particle swarm algorithm for multi-objective optimization. In: Processing of the 7th World Congress on Intelligent Control and Automation, pp. 3269–3274. IEEE Press, Los Alamitos (2008) 10. Linkens, D.A., Chen, M.: Hierarchical Fuzzy Clustering Based on Self-organising Networks. In: Proceedings of World Congress on Computational Intelligence (WCCI 1998), vol. 2, pp. 1406–1410. IEEE, Piscataway (1998)
A PSO- Based Robust Optimization Approach for Supply Chain Collaboration with Demand Uncertain Yutian Jia, Xingquan Zuo, and Jianping Wu Computer School, Beijing University of Posts and Telecommunications, Beijing, China [email protected], [email protected], [email protected]
Abstract. A robust optimization approach is proposed to solve the problem of supply chain collaboration under a demand uncertain environment. The proposed approach is universal and able to adapt to various demand models. First, the uncertain demand is described by a set of sampling sequences, and the total cost of supply chain is calculated based on these sequences to evaluate a collaboration scheme. Then a particle swarm optimization (PSO) is employed to find the optimal collaboration scheme which leads to a minimum total cost of supply chain. Numerical experiments show that the proposed approach can produce a robust solution that is insensible to the effect of demand uncertainty. Keywords: Supply chain collaboration, Robust optimization, Particle swarm optimization.
1 Introduction In recent years, inter-enterprise collaborative decision-making has become an important research direction in the field of supply chain management. The operational efficiency of supply chain is improved and its costs are reduced through the collaboration decision between members in supply chain. Some researchers show great interest in supply chain collaboration. Fung et al[1], Li et al[2] made a review on the mechanism of supply chain coordination respectively. Barbarosoglu et al [3] Ozdamar et al[4] considered the large-scaled collaborative problem, solved those complicated problems effectively and got a near-optimal solution. Most of the literatures consider minimizing the total cost of the supply chain as the collaborative decision-making target. However, calculating the total cost of supply chain is difficult due to the demand uncertainty, and sometimes the total cost function is hard to express. Researchers have made various assumptions and limitations to deal with the demand uncertainty. Some suppose the demand is determined, so the calculation of total costs can be simplified. Darwish et al[5] studied the case of one supplier and multiply retailers, each retailer’s demand rate is supposed to be determined and distribution from the supplier to all the retailers must occur at the same time. The demand was also assumed to be determined in [6] and the inventory and distribution decision was made based on this assumption. In addition, some assume that the demand follows certain probability distribution. Kang et al[7] studied the collaborative problem
,
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 172–181, 2011. © Springer-Verlag Berlin Heidelberg 2011
A PSO- Based Robust Optimization Approach for Supply Chain Collaboration
173
of one supplier and one retailer. The number of customers arriving at the retailer (in a unit time) follows a Poisson distribution with a known mean value, and the mean and variance of demand quantities of customers are also known. The goal is to minimize the expected long-run average cost. Amanda et al[8] studied the case that the demand of retailer is stochastic and gave a closed-form approximate solution. For a supply chain with uncertain demand, only a suboptimal collaborative decision can be obtained if the demand is assumed to be determined. Assuming the demand follows a probability distribution will reduce the universality of total cost calculation. Moreover, the probability distribution of uncertain demand is actually difficult to estimate. In this paper, a PSO based robust optimization approach is proposed to solve the problem of supply chain collaboration. The approach can produce a collaboration decision scheme that is insensible to demand uncertain. First, some demand instances are generated randomly, and the total cost of supply chain are calculated by these instance to evaluate a collaboration decision scheme. Then a PSO is used to optimize the decision schemes to obtain an optimal robust decision scheme. Experimental results show that the proposed approach can obtain a more stable decision scheme, which is robust to the demand uncertainty of supply chain.
2 Problem Description We consider a supply chain that contains a supplier and a retailer, and the customer demand is uncertain, as shown in Fig. 1. The retailer holds an inventory to satisfy the demand of the customer, and unsatisfied demand will result in an unfulfilled penalty cost. The retailer has a reorder point r and an order quantity q. When the inventory level is lower than r, the retailer orders quantity q goods from the supplier, the order takes a lead time to arrive. The supplier also has a reorder point R and an order quantity Q. When the inventory level is lower than R, the supplier orders quantity Q goods from the upstream supplier, the order also takes a lead time to arrive. Fig. 2 shows inventory level changes for the retailer and the supplier. The retailer and the supplier must disburse the inventory holding cost, the order cost and the unfulfilled penalty cost, respectively. The total cost of the supply chain is sum of the cost of retailer and supplier. The collaboration decision purpose is to minimize the total cost of supply chain.
Fig. 1. Structure of the supply chain
174
Y. Jia, X. Zuo, and J. Wu
For the retailer, the part which customer’s demand cannot be satisfied is considered to be the unfulfilled quantity; but for the supplier, as long as the inventory level is lower than the retailer’s order quantity, it will be out of stock. The supplier does not deliver goods to the retailer, and the unfulfilled quantity is always the retailer’s order quantity. This is because supplier’s fixed scale batches of distributions may save the cost. Hence the supplier's best order quantity should be an integral multiple of the retail’s order quantity. It is easy to explain with the reduction to absurdity: if the supplier’s order quantity Q is not the integral multiple of q, then let Q = nq + k (0
Fig. 2. Schematic of inventory level
3 The Cost Calculation As mentioned above, {nq, nr, q, r} is the set of decision variables. Since the demand is uncertain, it is difficult to calculate the total cost directly. In this paper, a set of demand sampling sequences is produced randomly to reflect the demand uncertainty, and used to calculate the total cost of supply chain to evaluate a set of decision variables.
A PSO- Based Robust Optimization Approach for Supply Chain Collaboration
175
3.1 Calculating the Total Cost The notations used in the cost calculations are as follows. T Nord Nunf Ik Uk Dk hOf hOv hU hI LR
length of time horizon (days) number of order during the T days number of out-of-stock times during the T days retailer’s inventory level in the kth day (k = 1, 2, …, T) retailer’s kth unfulfilled quantity ( k = 1, 2, …, Nunf) demand of the customers in the kth day(k = 1, 2, …, T) unit order fixed cost of the retailer unit order variable cost of the retailer unit unfulfilled penalty cost of the retailer unit inventory holding cost of the retailer per day lead time of the retailer
The total cost of the retailer is calculated as follows. Step 1 Input T, hOf, hOv, hU, hI and LR. Step 2 Produce a sample sequence (D1, D2, ..., DT) randomly according to some probability distribution. Each element in the sequence represents the demand for a day. Step 3 Let the initial inventory level of the retailer to be q. Step 4 Inventory level of the retailer is decreased by Dk (k = 1, 2, …, T) everyday. When the inventory level is lower than r, an order is placed by the retailer and the goods will arrive in a lead time LR. If the on-hand inventory of the retailer is not sufficient to satisfy customers’ demands, the unfulfilled part is the quantity of shortage. Step 5 The inventory holding cost for one day is calculated by multiply the unit inventory cost and inventory level of the day. Hence, in the kth day, the inventory holding cost C_Ik is C_Ik = Ik *hI
(1)
Hence the total inventory holding cost C_I is T
T
k =1
k =1
C _ I = ∑C _ I k = hI ∑I k
(2)
Step 6 The order cost is composed of two parts: the fixed part of each order and the variant part which changes linearly with the order quantity. Hence the total order cost C_O is C_O = Nord (hOf + q*hOv)
(3)
Here, hOf + q*hOv is the order cost each time. Step 7 It is difficult to estimate the loss when inventory is out of stock, so we use an unfulfilled penalty cost here, which is proportional with the unfulfilled quantity. If the kth shortage occurs in the mth day then
176
Y. Jia, X. Zuo, and J. Wu
Uk = Dm - Im
(4)
Hence the total unfulfilled penalty cost C_U is N unf
C _U = hU ∑U k
(5)
k =1
Step 8 Denote the total cost of the retailer is TCR T
Nunf
k =1
k =1
TC R = C _ I + C _O + C _U = hI ∑I k + N ord ( hOf + q*hOv) + hU ∑U k
The pseudo codes for this approach is given in Fig. 3
Fig. 3. Calculation method for the total cost of the retailer
(6)
A PSO- Based Robust Optimization Approach for Supply Chain Collaboration
177
The cost calculation method of the supplier is similar to that of the retailer and the total cost of the supplier denoted as TCS is also obtained. Hence the total cost of supply chain TC is TC = TCR + TCS
(7)
3.2 Evaluation of the Decision Variables In order to evaluate the decision variables, we generate N sampling sequences randomly which follow some probability distribution. Each sampling sequence will be used to obtain a total cost denoted as TCk (k = 1, 2, …, N) according to the approach given in part 1.1. The average value of TCk denoted by TC is TC =
1 N
N
∑ TC k =1
k
The flow chart is given in Fig. 4.
Fig. 4. The flow chart of the evaluation method
178
Y. Jia, X. Zuo, and J. Wu
4 Optimize the Decision Variables by the PSO 4.1 Description of the Standard PSO For a standard PSO, there are M particles in n-dimensional space and the position of each particle represents a potential solution. The following notations are used in the PSO: Xi = (xi1, xi2, …, xin) Vi = (vi1, vi2, …, vin) Pi = (pi1, pi2, …, pin) Pg = (pg1, pg2, …, pgn)
current position of the ith particle current speed of the ith particle the best position that the ith particle passed the best position that all the particles passed
In the tth generation, the evolution equation for the jth dimension of the ith Particle is vij(t+1) = ωvij(t) + c1rand()(pij(t) - xij(t)) + c2rand()(pg(t) - xij(t))
(8)
xij(t+1) = xij(t) + vij(t+1)
(9)
Here, ω is the inertia weight, c1and c2 are the acceleration constants. The rand() is a function used to generate random numbers in the range of [0, 1]. 4.2 Algorithm Steps In this paper, a decision variable set {nq, nr, q, r} is represented by a 4-dimensional particle in the PSO. The steps of the PSO are as follows. Step 1 Initialize position and speed. Generate M 4-dimensional particles, whose initial position and speed are produced randomly. Step 2 Calculate the fitness value. For each particle, calculate its total cost by the approach proposed in part 3. Fitness of the particle is the reciprocal of the total cost. Step 3 For each particle, compare its current position and its historical best position, if the former is better, then let the historical best position equal to be the current position. Step 4 For each particle, compare its current position and the global best position, if the former is better, then let the global best position equal to be the current position. Step 5 Update position and speed of each particle according to the evolution equations (8) and (9). Step 6 If the termination condition is not satisfied, then return to Step 2; otherwise, the algorithm stops.
5 Numerical Experiments In our experiment, the time horizon T = 180 and other supply chain parameters are listed in Table 1.
A PSO- Based Robust Optimization Approach for Supply Chain Collaboration
179
Table 1. Parameters of the supply chain hOf 10 30
The retailer The supplier
hOv 0.05 0.02
hI 0.01 0.005
hU 10 30
Lead Time(day) 2 5
In the PSO, number of the particles pt_num = 100, ω= 0.1, c1= c2 = 2 and the generations of evolution max_gen = 300. The larger number of sampling sequence is, the better result will be obtained, but the time cost will increase too. So we choose N = 30 here to make a balance between the solution accuracy and time cost. The uncertain demand is supposed to follow a normal distribution N(80, 16). In order to describe the uncertainty of demand, two different approaches are employed. One is robust optimization approach which use the random sampling sequences following the normal distribution N(80, 16) as the customers’ demand to calculate the total cost of supply chain; the other is traditional optimization approach which use the mean of the normal distribution 80 to calculate the total cost. Both PSO-based approaches run 20 times and the obtained decision variables are given in Table 2 and Table 3 respectively. In order to evaluate the solutions, each solution is tested by 5000 sampling sequences which follow the normal distribution N(80, 16) and each sequence corresponds to a total cost. Then we calculate the mean and the standard deviation of these 5000 total costs which are denoted as TCexp, TCstd, respectively. They are also listed in the tables. The number of evaluations required to converge denoted as Ne is also given in the last column. Table 2. Experimental results obtained by the PSO based robust optimization approach No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 average
nr 3 15 9 2 6 4 4 12 9 2 7 2 2 3 6 9 8 2 4 2
nq 0 8 7 0 5 1 1 6 2 0 5 0 0 0 1 3 1 0 1 0
q 493 246 246 495 247 251 251 246 248 494 246 494 494 495 250 246 248 494 250 493
r 245 246 246 246 247 249 248 246 248 246 246 247 245 244 248 246 248 247 248 247
TCexp 2502.78 5113.31 4325.20 2427.32 3631.87 2625.21 2625.82 4367.39 3176.79 2425.80 3718.02 2425.60 2428.15 2508.76 2704.21 3383.15 2884.40 2425.89 2629.71 2426.02 3037.77
TCstd 40.35 67.64 67.60 32.59 51.71 27.76 28.39 69.20 41.65 35.13 66.46 33.67 38.76 39.14 36.63 67.62 40.69 33.81 36.53 36.37 44.59
Ne 204000 96000 264000 126000 147000 210000 129000 153000 318000 165000 288000 156000 285000 201000 129000 123000 141000 171000 171000 207000 184200
180
Y. Jia, X. Zuo, and J. Wu
Table 3. Experimental results obtained by the PSO based traditional optimization approach No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 average
nr 14 2 4 2 2 10 13 2 11 8 3 9 10 14 10 12 2 9 11 9
nq 1 0 1 0 0 5 7 0 6 1 2 3 4 1 1 1 0 3 4 3
q 240 480 240 480 480 240 240 480 240 240 240 240 240 240 240 240 480 240 240 240
r 225 230 227 238 228 230 225 234 230 238 231 237 218 231 191 237 199 226 240 237
TCexp 4378.55 3121.26 3569.22 2675.86 3210.11 4804.67 5517.37 2875.54 5137.75 3774.40 3829.19 4311.66 4622.90 4380.37 4376.62 4138.68 3509.27 4309.87 4644.05 4306.66 4074.70
TCstd 459.54 407.09 456.66 218.66 425.42 458.98 455.57 318.36 458.09 461.95 464.24 466.97 454.65 459.63 489.52 467.87 445.63 458.38 461.49 470.19 437.94
Ne 6200 10800 7600 4600 5300 4700 8100 4400 5200 5300 4900 5900 17100 21700 11300 8600 6600 7700 5500 4900 7820
From Table2 and Table 3, we can find that the mean of TCexp, TCstd obtained by traditional optimization approach are larger than that obtained by robust optimization approach. It shows that the proposed robust optimization approach can produce a collaboration decision scheme that is robust to the effect of demand uncertainty, but more evaluations are required by the robust approach to converge.
6 Concluding Remarks In this paper, a PSO based robust optimization approach is proposed for the problem of supply chain collaboration with uncertain demand. The approach can obtain a robust collaboration decision scheme, which is insensible to the demand uncertainty that follows various probability distributions. The proposed approach requires more computation time than the traditional method. The more demand sampling sequences are used, the better result can be obtained, but more time will be spent. Therefore, we need to set a balance of accuracy and time cost according to the practical requirements. The standard PSO is employed in the robust optimization algorithm and its effectiveness has been proved by numerical experiments. However, the standard PSO has the shortage of easily sticking at local optimum. Many studies have been made to improve its performances. Our future work is to develop the improved PSO to further enhance the accuracy of the solution, reduce the time complexity and compare with other optimization algorithms.
A PSO- Based Robust Optimization Approach for Supply Chain Collaboration
181
Acknowledgment This research is supported by the National High Technology Research and Development Program ("863"Program) of China (Grant No. 2009AA04Z120) and the National Natural Science Foundation Project of China (Grant No. 60504028).
References 1. Fung, R.Y.K., Chen, T.: A multiagent supply chain planning and coordination architecture. Int. J. Adv. Manuf. Technol. 25(7/8), 811–819 (2005) 2. Li, X., Wang, Q.: Coordination mechanisms of supply chain systems. Eur. J. Oper. Res. 179(1), 1–16 (2007) 3. Barbarosoglu, G., Ozgur, D.: Hierarchical design of integrated production and 2-echelon distribution system. Eur. J. Oper. Res. 118, 464–484 (1999) 4. Ozdamar, L., Yazgac, T.: A hierarchical planning approach for a production-distribution system. Int. J. Prod. Res. 37(16), 3759–3772 (1999) 5. Darwish, M.A., Odah, O.M.: Vendor managed inventory model for single-vendor multi-retailer supply chains. Eur. J. Oper. Res. 204, 473–484 (2010) 6. Kim, J.U., Kim, Y.D.A.: Lagrangian relaxation approach to multi-period inventory/distribution planning. J. Oper. Res. Soc. 51(3), 364–370 (2000) 7. Kang, J.-H., Kim, Y.-D.: Inventory replenishment and delivery planning in a two-level supply chain with compound Poisson demands. Int. J. Adv. Manuf. Technol. 49 (9/12), 1107–1118 (2009) 8. Schmitt, A.J., Snyder, L.V., Shen, Z.-J.M.: Inventory systems with stochastic demand and supply: Properties and approximations. Eur. J. Oper. Res. 206, 313–328 (2010)
A Multi-valued Discrete Particle Swarm Optimization for the Evacuation Vehicle Routing Problem Marina Yusoff1, Junaidah Ariffin2, and Azlinah Mohamed1 1
Faculty of Computer and Mathematical Sciences Universiti Teknologi MARA 40450 Shah Alam, Selangor Malaysia {marinay,azlinah}@tmsk.uitm.edu.my 2 Flood-Marine Excellence Centre Faculty of Civil Engineering Universiti Teknologi MARA 40450 Shah Alam, Selangor Malaysia [email protected]
Abstract. An optimal evacuation route plan has to be established to overcome the problem of poor coordination and uneven distribution of vehicles before or during disaster. This article introduces the evacuation vehicle routing problem (EVRP) as a new variant to the vehicle routing problem (VRP). EVRP is a process of moving vehicles from a vehicle location to the potentially flooded area (PFA), and from PFA to relief center using a number of capacitated vehicles. This paper examines the application of a multi-valued discrete particle swarm optimization (DPSO) for routing of vehicles from vehicle location to PFA. A solution representation is adopted and modified from the solution of the shortest path problem (SPP) to accommodate this problem. Experimental results were tested based on the objective function of finding a minimum total travelling time using datasets from a flash flood evacuation operation. DPSO was found to yield better results than a genetic algorithm (GA). Keywords: Keywords-discrete particle swarm optimization; evacuation route plan; evacuation vehicle routing problem; potentially flooded area; vehicle routing problem.
1 Introduction During flood evacuation, the determination of the optimal evacuation route for moving people to safety is made more difficult by the unavailability of information required by the agencies responding to the floods. This inadequacy in flood response triggered the National Security Council of Malaysia to formulate sustainable emergency procedures for management of evacuees and properties. Nevertheless, these guidelines on disaster management have limited advantages (M. Omar, personal communication, November, 2007). They merely serve as a very generic manual Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 182–193, 2011. © Springer-Verlag Berlin Heidelberg 2011
A Multi-valued Discrete Particle Swarm Optimization
183
guiding response to disaster. In all circumstances of evacuation planning, immediate response is crucial as time is the decisive factor. Therefore, immediately after warning has been issued an emergency evacuation route plan should be generated considering the safe routes for evacuees and allocation of vehicles. An optimization algorithm is required to help in producing an optimal emergency evacuation plan to help local authorities and related agencies making prompt and informed decisions. A few optimization algorithms have been developed in other countries for evacuation planning in several types of natural disaster, namely Capacity Constrained Route Planning [13], A* [3], Flip High Flip Edge [4], greedy heuristic [5-6], Bottleneck Relief Heuristic [5-6], BEST [7], SP-TAG [7], and multi-ant colony system [8]. Some of them have demonstrated good performance in optimizing evacuation planning, but they do not focus on the capacity of vehicles during routing. Thus, this paper introduces the evacuation vehicle routing problem (EVRP) as a new variant to the vehicle routing problem (VRP) since it has same core process as VRP. EVRP considers the routing of vehicles that have been assigned for a particular number of people. Prior to solving the EVRP, a list of assigned vehicles with their capacities is generated using DPSOVAP [9]. It should be noted that in finding solutions to EVRP, it is unnecessary to find separately the solution of the shortest path problem (SPP) since SPP is a basic process of a VRP. In this paper, we consider the static routing of capacitated vehicles from vehicle location to PFA to find a minimum total travelling time using multi-valued discrete particle swarm optimization (DPSO). PSO has shown significant results for solving SPP and outperformed genetic algorithm (GA) [10]. A range of random discrete priority values (PVs) that represents all of the nodes in a network graph offers a 95% optimal solution for PSO in this research. A further reason for using DPSO is its successful performance in the variant of VRP that is similar to EVRP. It has been observed that EVRP is closely related to the capacitated vehicle routing problem (CVRP), primarily in its handling capacity constraints [11-14]. In particular, EVRP deals with routing of a number of capacitated vehicles to PFA, whereas CVRP deals with the delivery of goods to customers. Like EVRP, CVRP assumes that each customer is served by exactly one vehicle without exceeding the capacity constraints of each vehicle. Several optimization algorithms have been employed [11-14] for solving CVRP. For example, GA with local search is applied in [11] and DPSO with binary position and a hybrid of DPSO-SA in [12]. In general, they obtained an effective result in terms of processing time with no assurance for optimal results. In addition, with the embedment of the two solution representations for CVRP in PSO, namely SR-1 and SR-2, it has been shown that the PSO gives a good quality solution [15]. These representations use a real value for the particle position representation comprising customer priority and vehicle priority. SR-1 finds a sequence of routes for each vehicle which routes the vehicle to the customer, based on the Euclidean distance between customer and vehicle reference point, where as SR-2 incorporates the coverage of radius based on vehicle orientation point for vehicle routing. Local improvements were added to change the customer route direction to directly improve the routing cost. Although this solution has seemed possible for a search on optimal EVRP results, there are still some limitation of information to generate PFA's priority and
184
M. Yusoff, J. Ariffin, and A. Mohamed
vehicle's priority value. Consequently, the EVRP solution is based on the problem formulation and a discrete particle representation in Section 3. This paper is organized as follows. Section 2 reviews the PSO algorithm. Section 3 presents the problem formulation and solution representation. The DPSO algorithm is discussed in Section 4, and Section 5 explains the computational results and discussion. Finally, Section 6 concludes the paper and addresses some future work.
2 Particle Swarm Optimization PSO was introduced by Kennedy and Eberhart in the mid-1990s [16]. A populationbased stochastic approach grouped under swarm intelligence [17], it is used to solve continuous and discrete problems. PSO indicates the velocity and position of particles in a multi-dimensional space. By updating both velocity and position, a feasible solution is achieved. The fitness values comprise Gbest and Pbest , which derive from the simulated behaviour of a group of particles [18]. PSO is able to explore regions of the search space and exploit the search to refine a feasible solution. These search strategies are influenced by the parameters acceleration constant and inertia weight [19-20]. Equation 1 and equation 2 present the velocity and position formulas for the canonical PSO, respectively. Vid(new)=W x Vid(old) + C1 x r x(Pbest - Xid(old) + C2 x r x(Gbest-Xid(old)) Xid(new)=Xid(old) + Vid(new)
(1) (2)
where Vid(new) and Vid(old) are the new and old velocities of particle i, respectively; Xid(old) and Xid(new) are the old and new particle positions respectively; and W is the inertia weight. C1 and C2 are the acceleration constant parameters, r is the random function in the range of [0,1], Pbest is the personal best of the ith particle, and Gbest is the best position derived from all particles in the swarm. PSO has been shown to be useful to solve such types of problems as the travelling salesman problem [20-21] and vehicle routing [12]. PSO is easy to implement and is computationally efficient [22-23]. Modification of PSO have been developed to the performance of PSO for various types of problems [24-25] and across standard benchmark datasets [21][24][26]. For example, the canonical PSO applies inertia weight in updating velocity to simulate the social behavior of birds. After two years of PSO development, the research on a discrete problem had concentrated on discrete binary PSO begun by Kennedy and Eberhart [27]. Kennedy and Eberhart proposed a new way of updating the position of particles to accommodate a binary representation. This solution was then improved in several studies based on a benchmark [28-29] and a real-world situation [30-31] using DPSO algorithm. When compared to other optimization methods, the performance of DPSO has been found to be competitive with a genetic algorithm [30], demonstrating the promise of DPSO, with its global search capability and local exploitation.
A Multi-valued Discrete Particle Swarm Optimization
185
3 Problem Formulation and Solution Representation This paper focuses on the EVRP that involves routing of a number of vehicles from a vehicle location to a single destination (i.e., only one PFA). EVRP addresses the objective function to find a minimum total traveling time for all the capacitated vehicles from the vehicle location to the PFA. This problem is mathematically formulated based on with terminology used in previous research on VRP [13][32]. The problem can be formally defined as follows: Let G = (N, E) be a weighted directed graph. Define N = {N0, N2, N3, ... Nn}. N0 represents a vehicle location and Nn is a destination node (PFA). E is the set of edges. Cij are matrices representing travelling cost of traversing from i to j. For each edge (i, j) ∈ E, a distance dij≥0 and travel time tij≥ 0, is a non negative integers. Vij is the set of all vehicles that are able to move from node i and j, where V = {V1, V2, ...., Vk}. The capacity of vehicle, c ∈ V is denoted as VC. The decision variable Xijk is a binary variable which has the value of 1 if vehicle k travels from node i to node j, otherwise 0. The objective function is to find a minimum total travelling time for all vehicles from N0 to Nn. The EVRP is mathematically formulated as shown below:
∑ ∑
Min
k∈K
( i , j )∈N
C X
(3)
ijk
ij
subject to
∑ ∑ ∑ X k∈K
i∈N
j∈N
ijk
∑ X -∑ X X ∈ {0,1} j∈N
j∈N
ijk
=1 jik
(4)
=0
(5) (6)
ijk
Constraints (4) and (5) ensure that all vehicles travelled. Constraint (6) is the set of bound decision variables. The solution representation for EVRP is adopted from the work of Mohemmed et al [10] because of its good performance in SPP. To accommodate the EVRP, we enhance this representation taking into account a number of capacitated vehicles. However, the use of PV that represents each node is maintained. As shown in Fig. 1, the representation of a particle consists of an array of PVs that is assigned to each of the capacitated vehicles. In other words, each particle comprises a matrix of PVn x Vm, that is, the matrix of a particle would depend on the total number of nodes and the number of generated vehicles. PV0
PV 1
PV 2
PV 3
...
PV n-1
PV n
V1
PV 0
PV 1
PV 2
PV 3
...
PV n-1
PV n
V2
...
...
...
...
...
...
...
. .
PV
PV 1
PV 2
PV 3
...
PV n-1
PV n
Vm
Fig. 1. A particle comprises a matrix of PVn x Vm
186
M. Yusoff, J. Ariffin, and A. Mohamed
Each vehicle traverses from its vehicle location (N0), trying to find a valid path to the PFA (Nn). If a path, for example from N0 to N1, is a valid path, then, the travelling time for the vehicle is calculated. The travelling time depends on the distance for the valid path and the standard travelling speed of the vehicle, as calculated using the following equation.
t
= d
v
(7)
ts v
where tv is travelling time for each vehicle for the valid path travelled, d is a distance between two nodes (edge), and tsv is a standard travelling speed for each vehicle. The total travelling time for each of vehicle travelled through valid path is then calculated using Equation 8.
tt
v
=
∑t m
1
(8)
v
where ttv is the total travelling time for all vehicles travelling through all valid paths. Total travelling time for all vehicles is based on the number of vehicles travelling on the valid path, as calculated using Equation 9.
tt
vs
=
∑ tt m
1
v
(9)
ttvs is presented as the Pbest calculated for each population of particle. The total travelling time might be different because the number of vehicles travelling depends on the vehicles generated using myDPSO-VAP [9] and their standard travelling speed. The next section explains the solution representation that is adopted into the DPSO algorithm.
4 Discrete Particle Swarm Optimization The solution representation described in Section 3 is implemented in the DPSO as shown in Fig. 2. This algorithm is similar to that found in Mohemmed et al [10]. The number of vehicles traversing from the starting node N0 (vehicle location) to Nn (PFA) is also considered. The algorithm starts with the normal process of PSO. Steps 2 and 3 initialize the number of populations and the coefficient values C1 and C2, respectively. Step 4 performs the initialization of PVs and velocities. Step 5 retrieves vehicle's information which includes the vehicle id, vehicle capacity, and its standard travelling speed. Steps 6 through 11 follow the same step as described in Mohemmed et al [10]. Then, Pbest and Gbest are calculated. In summary, steps 2 through 12 yield an initial solution, which is followed by an iteration process that begins at step 13 until 27 until the final iteration is achieved with all vehicles arriving at the destination. Each particle is updated with a new velocity and position value (PV) using Equation 1 and Equation 2 at step 14 until 17. The new velocity and new position value are in the form of a multi discrete value (positive integer). Step 18 executes path validation for each of the vehicles. Step 19 will take place in the event of a vehicle arriving at destination. If one vehicle arrives at the destination, other vehicles can use the PV
A Multi-valued Discrete Particle Swarm Optimization
187
that was used by the vehicle that has arrived, ensuring that all vehicles would be able to arrive at their respective destinations. This condition can be seen as the probability of achieving an optimal or sub-optimal result for an iteration of a particle, if the vehicle travelled for the minimum total travelling time. DPSO’s random population of particles and its ability to exploit and explore enhance the possibility of obtaining the optimal result. Finally, steps 20 to 26 calculate Pbest(new), Gbest(new) and the condition for the selection of the best current fitness for each iteration. 1: Begin 2: Initialize number of particle's population 3: Declare C1 and C2 4: Initialize PVs, Vmin and Vmax for all particles in random 5: Retrieve vehicle's information from [9] 6: For each vehicles 7: Construct a path 8: If it is a valid path 9: Calculate tv 10: else 11: Return fitness value as 0 12: Calculate Pbest(old) and Gbest(old) 13: Do 14: For each particle 15: Calculate V(new) using equation (1) 16: Calculate PV(new) using equation (2) 17: Update PVs 18: Perform step 6 until 11 19: If there is a vehicle arrive at destination, other vehicles applies the PV used by this vehicle 20: Calculate Pbest (new) 21: Calculate Gbest (new) 22: If (Gbest (new) > Gbest(old)) 23: Assign Gbest(old) as the best current fitness 24: If (Gbest (new) =< Gbest(old)) 25: Gbest(old))= Gbest (new) 26: Assign Gbest(new) as the best current fitness 27: While (maximum iteration is achieved or all vehicles arrived at destination) 28: End
Fig. 2. DPSO algorithm
5 Computational Result and Discussion This section presents the computational results to allow evaluation of the performance of the DPSO algorithm in the application of a multi discrete particle position in EVRP. The DPSO algorithm was implemented in JAVA and run on a PC with an Intel Core 2 CPU (3.0 GHz) and 2GB memory. To verify the proposed algorithm, a GA with the application of the same solution representation as DPSO is used. In this case, the GA with one point crossover and the same number of population was compared to DPSO. The following subsections introduce the experimental setup and the datasets, and present and discuss the results using DPSO and GA. 5.1 Experimental Setup Table 1 is the list of parameters for the computational experiments.
188
M. Yusoff, J. Ariffin, and A. Mohamed Table 1. List of parameters Parameter PVmax PVmin C1 C2
Value -100 [10] 100 [10] 2.05 [19] 2.05 [19]
Parameter Initial Vmin Initial Vmax Inertia Weight, w Stopping condition
Value -10 [10] 10 [10] 0.12 [20] Until all vehicles are arrived destination or certain 200 iterations
The stopping condition is based on all vehicles are arrived destination or 200 iterations. Datasets were taken from data generated in dealing with a flash flood in Malaysia’s Kota Tinggi district in December 2006 and 2007. The assigned vehicles were generated using algorithm in [9], which involves the information of vehicles; vehicle id, destination node for each vehicle, number of people assigned to the particular vehicle, and travelling speed for each vehicle. Routes from vehicle location to PFA are indicated by source nodes (original vehicle location), nodes, edges, and destination node (PFA). All of the routes are transformed into graph abstraction. The graph is then transferred into an adjacency matrix for easy transformation into the algorithm. Table 2 shows the datasets for routing comprising the number of nodes, the total number of people that need to be evacuated and the number of vehicles generated. Table 2. List of datasets from flash flood evacuation in 2006 and 2007 for a single PFA Datasets VR1_06 VR2_06 VR3_06 VR4_06 VR5_06 VR6_06 VR1_07 VR2_07
Number of nodes 12 35 12 21 25 36 12 21
Number people 5853 26 1215 448 524 1429 1620 620
Number of the generated vehicles 600 3 154 52 59 224 253 94
5.2 Comparison of Solutions Using DPSO and GA The performance of DPSO and GA are analyzed based on the objective function to find a minimum total traveling time for all the capacitated vehicles from the vehicle location to the PFA. The comparisons involve two aspects: total travelling time for all vehicles from vehicle location to PFA and processing time. Table 3 compares the results of VR1_06 based on the fitness value (in hours) and processing time (in seconds) for DPSO and GA. The total travelling time (ttvs) is obtained from the total of 600 vehicles which successfully arrived at the PFA. As can be seen in Table 3, with 10 populations, the fitness value of GA is about 0.039 seconds less than that of DPSO, but GA requires a longer processing time than does DPSO. In terms of number of iterations used for this population, GA performs only one iteration while DPSO performs 23 iterations. However, most interestingly, DPSO outperformed GA for 30 populations in terms of processing time with about 0.296 seconds while GA requires 0.319 seconds. DPSO for 50 populations in terms of total travelling time of about 8.797 hours using only one iteration while GA requires 9.136.
A Multi-valued Discrete Particle Swarm Optimization
189
Contrary to expectations, neither DPSO nor GA produced any result after 200 iterations for VR2_06, VR4_06, VR5_06, and VR6_06. This failure may be accounted for by the fact that the multi-valued PVs assigned to each node were unable to determine valid paths. These datasets used a greater number of nodes than that of VR1_06. This shows that the particles utilize more search space compared to VR1_06. The next comparison highlights the results of the VR3_06. As can be seen in Table 3, both DPSO and GA performance obtained the same fitness for 50 populations using this dataset. However, DPSO took 0.002 second longer than GA. As can be seen in the table, GA gives less quality solution. GA requires 0.072 seconds of processing time using 50 populations while DPSO requires 0.070 seconds using 10 populations. In particular, DPSO demonstrates better performance than GA, when using less than 40 populations. The result indicates that the use of multivalued PVs in DPSO and GA provides a minimum total travelling time to destination for this dataset. Table 3. Performance of DPSO and GA using VR1_06 and VR3_06 Dataset VR1_06 DPSO P
Dataset VR3_06 GA
DPSO
GA
ttvs
PT (s)
iter
ttvs
PT (s)
Iter
ttvs
PT (s)
iter
ttvs
PT (s)
Iter
10
9.165
0.343
23
9.136
0.415
1
6.459
0.070
2
-
-
200
20
9.136
0.328
2
9.136
0.313
1
6.459
0.072
7
6.459
0.140
1
30
9.136
0.296
2
9.136
0.319
1
6.459
0.070
23
-
-
200
40
9.136
0.390
1
9.136
0.313
1
6.459
0.080
6
6.459
0.095
1
50
8.797
0.452
1
9.136
0.378
1
6.459
0.074
12
6.459
0.072
2
* P - number of population, PT - processing time, iter - number of iteration
Table 4 and 5 shows the results of the datasets of a single PFA concentration on 30 populations of particles, 30 experiments and based on the iteration up to 200 or until all vehicles arrived at the PFA. The selection of 30 populations is based on the suggestion from Mohammed et al [10]. The average of the total travelling time and processing time is based on 30 experiments. As shown in Table 4, it is apparent that DPSO outperformed GA of about 0.51% lesser in its average of fitness value. However, the average of processing time of DPSO is shown competitive to GA. In contrast, no results found for GA, using dataset VR3_06. The DPSO provides a consistent of 6.459 hours of its total travelling time, with less than one second of processing time. In addition, DPSO confirm gives a better fitness value to EVRP. The evident is shown in Table 5 showing that DPSO outperformed the GA for both dataset VR1_07 and VR2_07. Overall, DPSO and GA consume in average less than one second of processing time.
190
M. Yusoff, J. Ariffin, and A. Mohamed
Table 4. Comparison measure of DPSO and GA using VR1_06 and VR3_06 based on average, min, max, and standard deviation Dataset VR1_06
Dataset VR3_06 GA
DPSO
DPSO
GA
ttvs
PT (s)
Iter
ttvs
PT (s)
iter
ttvs
PT (s)
iter
ttvs
PT (s)
iter
Avg
9.129
0.468
2
9.176
0.460
1
6.459
0.253
2
-
-
200
Min
8.797
0.312
1
8.797
0.328
1
6.459
0.129
1
-
-
200
Max
9.880
0.843
15
9.880
0.671
2
6.459
0.365
32
-
-
200
Std Dev
0.176
0.136
2.609
0.200
0.107
0.498
0.000
0.043
5.721
-
-
-
* P - number of population, PT - processing time, iter - number of iteration
Table 5. Comparison measure of DPSO and GA using VR1_07 and VR2_07 based on average, min, max, and standard deviation Dataset VR1_07 DPSO
Dataset VR2_07 GA
DPSO
GA
ttvs
PT (s)
Iter
ttvs
PT (s)
iter
ttvs
PT (s)
iter
ttvs
PT (s)
iter
Avg
3.839
0.199
8
3.844
0.196
2
2.046
3.146
14
-
-
200
Min
3.704
0.140
1
3.704
0.140
1
1.990
3.093
4
-
-
200
Max
4.160
0.327
101
4.160
0.280
2
2.369
3.296
91
-
-
200
Std Dev
0.078
0.051
20.287
0.074
0.041
0.498
0.114
0.045
24.103
-
-
0
* P - number of population, PT - processing time, iter - number of iteration
This study produced results, which corroborate the findings of Mohemmed et al [10] for SPP as it was offered good solution. The findings confirmed that DPSO proved better than GA in getting a minimum total travelling time. The use of multivalued discrete particle position is observed to have successfully achieved optimal results for a small number of datasets. In addition, the processing time of less than one second is acceptable, especially for the VR1_06 dataset, where 600 vehicles are traversed through all nodes to their destinations. Based on the interesting findings provided by DPSO, it can be illustrated that several valid paths were able to determine using 30 populations of particles, grants a higher possibility of using less travelling time for the vehicles travelled from vehicle location to a single PFA. With the high possibility of getting valid node, the best solution would become faster and lead to the fast convergence due to the less search space. This is confirmed by was mentioned in the literature review that the DPSO has a capability of finding better solution and fast convergence compared to the GA.
6 Conclusion and Recommendation A solution representation for EVRP has been presented using both DPSO and GA. DPSO was found to achieve better solution quality in terms of total travelling time
A Multi-valued Discrete Particle Swarm Optimization
191
and processing time compared to GA. The random multi-value of PVs and the formulation of updating velocity and PVs used in DPSO support this solution. In future investigations, it might be possible to find mean of limiting the movement of particles, most probably with the decomposition of graph. This is to ensure at least one vehicle can traverse from vehicle location until destination using a valid path. In addition, more experiments are required with the consideration of different parameter values and different size of routing dataset.
Acknowledgment This study has been made possible under the support of the Ministry of Science and Technology Malaysia through the Science Fund and University Technology MARA.
References 1. Lu, Q., Huang, Y., Shekhar, S.: Evacuation Planning: A Capacity Constrained Routing Approach. In: Chen, H., Miranda, R., Zeng, D.D., Demchak, C.C., Schroeder, J., Madhusudan, T. (eds.) ISI 2003. LNCS, vol. 2665, pp. 111–125. Springer, Heidelberg (2003) 2. Lu, Q., George, B., Shekhar, S.: Capacity Constrained Routing Algorithms for Evacuation Planning: A Summary of Results. In: Anshelevich, E., Egenhofer, M.J., Hwang, J. (eds.) SSTD 2005. LNCS, vol. 3633, pp. 291–307. Springer, Heidelberg (2005) 3. Lu, Q.: Capacity constrained routing algorithms for evacuation route planning. PHD Thesis, University of Minnesota (2006) 4. Kim, S., Shekhar, S.: Contraflow network reconfiguration for evacuation planning: a summary of results. In: 13th Annual ACM International Workshop on Geographic Information Systems, pp. 250–259 (2005) 5. Shekhar, S., Kim, S.: Contraflow transportation network reconfiguration for evacuation route planning. Technical Report, Mn/DOT 2006-21, Department of Computer Science and Engineering, University of Minnesota (2006) 6. Kim, S.: Contraflow network reconfiguration using evacuation route planner. PHD Thesis, University of Minnesota (2007) 7. George, B., Kim, S., Shekhar, S.: Spatio-temporal network databases and routing algorithms: A summary of results. In: Papadias, D., Zhang, D., Kollios, G. (eds.) SSTD 2007. LNCS, vol. 4605, pp. 460–477. Springer, Heidelberg (2007) 8. Zong, X., Xiong, S., Fang, Z., Li, Q.: Multi-ant colony system for evacuation routing problem with mixed traffic flow. In: Congress on Evolutionary Computation, pp. 1–6 (2010) 9. Yusoff, M., Ariffin, J., Mohamed, A.: Solving Vehicle Assignment Problem Using Evolutionary Computation. In: Tan, Y., Shi, Y., Tan, K.C. (eds.) ICSI 2010. LNCS, vol. 6145, pp. 523–532. Springer, Heidelberg (2010) 10. Mohemmed, A.W., Sahoo, N.C., Geok, T.K.: Solving shortest path problem using particle swarm optimization. Applied Soft Computing 8(4), 1643–1653 (2008) 11. Lin, S.-W., Ying, K.-C., Lee, Z.-J., Hsi, F.-H.: Applying simulated annealing approach for capacitated vehicle routing problems. In: IEEE International Conference on Systems, Man and Cybernetics (SMC), Taipei, pp. 639–644 (2006)
192
M. Yusoff, J. Ariffin, and A. Mohamed
12. Chen, A.-l., Yang, G.-k., Wu, Z.-m.: Hybrid Discrete Particle Swarm Optimization Algorithm for Capacitated Vehicle Routing Problem. Journal of Zhejiang University Science 7, 607–614 (2006) 13. Zhishuo, L., Yueting, C.: A hybrid ant colony algorithm for capacitated vehicle routing problem. In: IEEE International Conference on Systems, Man, and Cybernatics, pp. 3907—3911 (2006) 14. Marinakis, Y., Marinaki, M.: A particle swarm optimization algorithm with path relinking for the location routing problem. Journal of Mathematical Modelling and Algorithms 7, 59–78 (2008) 15. Ai, T.J., Kachitivhyanukul, V.: Particle swarm optimization and two solution representations for solving the capacitated vehicle routing problem. Computers and Industrial Engineering 56, 380–387 (2009) 16. Kennedy, J., Eberhart, R.C.: Particle swarm optimization. In: IEEE International Conference on Neural Networks, pp. 1942—1948 (1995) 17. Engelbrecht, A.P.: Computational intelligence: An Introduction, 2nd edn., p. 9. John Wiley & Son, West Sussex (2007) 18. Guner, R., Sevkli, M.: A Discrete Particle Swarm Optimization Algorithm for Uncapacitated Facility Location Problem. Journal of Artificial Evolution and Applications, 1–9 (2008) 19. Engelbrecht, A.P.: Computational intelligence: An Introduction, 2nd edn., pp. 306–309. John Wiley & Son, West Sussex (2007) 20. Shi, Y., Eberhart, R.: Empirical study of particle swarm optimization. In: Proceedings of the 1999 Congress on Evolutionary Computation. IEEE Service Center, Piscataway (1999) 21. Zhong, W.-l., Zhang, J., Chen, W.-n.: A novel discrete particle swarm optimization to solve traveling salesman problem. In: IEEE Congress on Evolutionary Computation (CEC), pp. 3283—3287 (2007) 22. Li, X., Tian, P., Hua, J., Zhong, N.: A hybrid discrete particle swarm optimization for the traveling salesman problem. In: Wang, T.-D., Li, X., Chen, S.-H., Wang, X., Abbass, H.A., Iba, H., Chen, G.-L., Yao, X. (eds.) SEAL 2006. LNCS, vol. 4247, pp. 181–188. Springer, Heidelberg (2006) 23. Eberhart, R. C., Kennedy, J.: A new optimizer using particle swarm theory. In: Proceedings of the Sixth International Symposium on Micro Machine and Human Science (MHS), pp. 39–43 (1995) 24. Veeramachaneni, K., Osadciw, L., Kamath, G.: Probabilistically driven particle swarms for optimization of multi valued discrete problems: design and analysis. In IEEE Swarm Intelligence Symposium (SIS), pp. 141—149 (2007) 25. AlHajri, M. F., AlRashidi, M. R., El-Hawary.: A novel discrete particle swarm optimization algorithm for optimal capacitor placement and sizing. In: Electrical and Computer Engineering (CCECE), pp. 1286–1289 (2007) 26. Al-Kazemi, B., Mohan, C.K.: Discrete Multi-Phase Particle Swarm Optimization. In: Information Processing with Evolutionary Algorithms. Advanced Information and Knowledge Processing, pp. 305–327. Springer, Heidelberg (2005) 27. Kennedy J, Eberhart R.C.: A Discrete Binary Version of the Particle Swarm Algorithm. In IEEE International Conference on Systems, Man, and Cybernetics, Orlando, FL, USA, vol. 5, pp. 4104–4108 (1997) 28. Eberhart R.C., Shi, Y.: Comparing Inertia Weights and Constriction Factors in Particle Swarm Optimization. Evolutionary Computation. In Proceedings of the Congress on Evolutionary, vol. 1, pp. 84–88 (2000)
A Multi-valued Discrete Particle Swarm Optimization
193
29. Bui, L.T., Soliman, O., Abbass, H.A.A.: Modified Strategy for the Constriction Factor in Particle Swarm Optimization. In: Randall, M., Abbass, H.A., Wiles, J. (eds.) ACAL 2007. LNCS (LNAI), vol. 4828, pp. 333–344. Springer, Heidelberg (2007) 30. Gong, T., Tuson, L.: Particle swarm optimization for quadratic assignment problems - a forma analysis approach. Computational Intelligence Research 4, 177–185 (2008) 31. Gao, F., Cui, G., Zhao, Q., Liu, H.: Application of improved discrete particle swarm algorithm in partner selection of virtual enterprise. Computer Science and Network Security 6, 208–212 (2006) 32. Pisinger, D., Ropke, S.: A general heuristic for vehicle routing problems. Computers and Operations Research 34, 2403–2435 (2007)
A NichePSO Algorithm Based Method for Process Window Selection Wenqi Li1,2, Yiming Qiu1, Lei Wang1, and Qidi Wu1 1
School of Electronics and Information Engineering, Tongji University, Shanghai, 200092, China 2 Analog Devices Technology (Shanghai) Co. Ltd., Shanghai, 200021, China [email protected], [email protected], [email protected]
Abstract. Process parameter window selection in semiconductor manufacturing field is usually the problem to find out the ranges of input parameters that meet production requirements, which requires allocating optima of a multimodal function efficiently. To achieve good results under the conditions of multimodal model and process control requirement, a NichePSO algorithm based method for parameter window selection is presented in this paper. Both simulation results and production validation data indicate it is an effective method for process parameter window selection. Keywords: NichePSO, Process Optimization, Parameter Window Selection.
1 Introduction Statistical Process Control (SPC) has been widely applied to semiconductor manufacturing field to monitor process parameters and detect process abnormality. The data points of a stable and capable process vary randomly between Upper Control Limit (UCL) and Lower Control Limit (LCL), and it will be recommended to be adjusted once any data point violates the SPC control rule. To secure a wide enough range for each process parameter, the Upper Specification Limit (USL) and Lower Specification Limit (LSL) of the parameter must be wider than UCL and LCL. Normally process control in semiconductor production requires sigma level to be 3 or 6, and process capability index Cpk should be equal to or greater than 1.67[5]. Control chart example in figure 1 presents the relations between the indicators:
UCL = X + 3σ
14
. .
USL
(1) (2)
USL − X X − LSL Cpk = min( , ) ≥ 1 .67 3σ 3σ or ⎧ LSL ≤ X − 1 . 67 × 3σ . ⎨ ⎩USL ≥ X + 1 . 67 × 3σ
12
(3)
σ σ σ Avg=7.90 σ σ σ LCL=4.23
UCL=11.56
A 10 ѹÁ¦ /g
LCL = X − 3σ
Xi
B C
8 C 6 B A 4
where X =
1 n
n
∑ i =1
Xi σ =
,
1 n
∑ (X n
i =1
i
−X
)
LSL
2 3
2
.
6
9
12
15 18 21 ѹÁ¦¿ØÖÆͼ
24
27
30
Fig. 1. Control chart example
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 194–202, 2011. © Springer-Verlag Berlin Heidelberg 2011
33
A NichePSO Algorithm Based Method for Process Window Selection
195
LSL and USL of each parameter are defined during process development stage according to (3), so the width of the process window W should be wide enough: W ≥ USL − LSL ≥ 1.67 × 3σ + 1.67 × 3σ = 10.02σ .
In some of real cases, output parameter Q is a multimodal function of multiple input parameters Pi, and it must meet the process requirement of Q>R, or QR, then: ⎧ Q = Q (P1 , P2 ,... Pn ) ⎨ Q >R ⎩
(4)
1 0.8 Q(Pi) 0.6 R 0.4
a
b
c
d
0.2 0 -0.2 -0.4
.
(5)
-0.6 -0.8
0
0.2
0.4
0.6
0.8
1
Pi
Each input parameter window must satisfy (4) and (5) and be as wide as possible, which is Fig. 2. Input, output parameters and process requirement equivalent to find out all common points of Q and R, and figure out the widest portion that meets the both equations, such as the portion between c and d in figure 2. Usually, the function of Q is unknown and engineer has to define input parameter window based on experience and experiment data, which makes the problem more complex, so an effective method to select parameter window will be very helpful. Particle Swarm Optimization (PSO) has been successfully applied to solve unimodal optimization problem and has been proven as an effective algorithm, but it can find one optimum only and may not converge if there are multiple optima with equal or similar values. Niching Particle Swarm Optimizer (NichePSO) algorithm that developed by R. Brits can find out all optima including both global optimum and local optima, which is an effective tool to solve multimodal optimization problem. NichePSO algorithm is introduced and a parameter window selection method based on it is presented in this paper. Section 2 gives a brief overview of PSO and NichePSO algorithms, and section 3 provides a NichePSO algorithm based method for parameter window selection. Simulation results and production validation data of the method are summarized in section 4 and 5.
2 Niching Particle Swarm Optimizer 2.1 Particle Swarm Optimization Particle swarm optimization (PSO) algorithm was developed by J, Kennedy and R. Eberhart in 1995 when it was used to study the food searching behaviors of bird flocks[1],[3]. Each particle in PSO algorithm is regarded as a point with zero size and mass, and it updates its position based on its current velocity V, the best position found by itself (pbest) and the best position that found by whole group (gbest): V ik ( t + 1) = ω V ik ( t ) + c 1 r1 ( p ik best ( t ) − x ik ( t )) + c 2 r2 ( g k
( t ) − x ik ( t ))
best
x ik ( t + 1 ) = x ik ( t ) + V ik ( t + 1 )
.
.
(6) (7)
196
W. Li et al.
Velocity update equation (6) will be simplified as (8) if consider the velocity and the best position found by each individual particle only: V ik ( t + 1 ) = ω V ik ( t ) + c 1 r1 ( p ik best ( t ) − x ik ( t ))
.
(8)
Where ω is inertia weight; c1 and c2 are acceleration constants; r1 and r2 are random numbers between 0 and 1; index i indicates the ith particle; k (1≤ k ≤ D) stands for the kth dimension of particle velocity vector and position vector. In the process of position update, particles cannot move out of the border and the velocity cannot exceed the limits i.e. Vik(t+1) [-Vmax, Vmax] and xik(t+1) [-xmax, xmax]. If any particle flies out of border, it will be redistributed in the area near the border:
∈
⎧ x ik ( t + 1 ) = x max − β ⋅ r () ⋅ x max ⎨ ⎩ x ik ( t + 1 ) = − x max + β ⋅ r () ⋅ x max
∈
∈
,
x ik ( t + 1) ∉ [− x max , x max
if
].
(9)
where β (0, 0.5); r ( ) is random number between 0 and 1. In order to make the particles search for optimum in a large range at beginning stage of iteration and converge quickly near the end of iteration, typically inertia weight ω decreases linearly from 0.9 to 0.4: ω (i ) = 0 .9 −
i × 0 .5 I max
(10) .
where Imax is the maximum number of iterations. 2.2 The Guaranteed Convergence Particle Swarm Optimizer (GCPSO) If follow standard PSO algorithm, a particle will stop nearby the current global best position if its velocity is near to zero, which implies all particles will stop there eventually if there is no new global best position is found. To correct this unwanted property, Van den Bergh introduced GCPSO algorithm and redefined the particle velocity and position update equations as below[3], [4]: V τ k ( t + 1 ) = − x τ k ( t ) + p τ k ( t ) + ω V τ k ( t ) + ρ ( t )( 1 − 2 rand
())
xτ k ( t + 1) = xτk ( t ) + Vτk ( t + 1) = p τ k ( t ) + ω Vτk ( t ) + ρ ( t )(1 − 2 rand ())
.
(11)
.
(12)
where τ is the index of the current global best particle; rand () is random number between 0 and 1. The value of ρ(t) is adapted after each step according to (13): ⎧ 2ρ ⎪ ρ (t + 1) = ⎨ 0 .5 ρ ⎪ ρ (t ) ⎩
if if
# successes # failures
> sc > fc
. (13)
others
where #successes and #failures are the number of consecutive successes and failures respectively. The position update is defined as success if new position of a particle is different from that in last step; otherwise it will be defined as failure. This algorithm can achieve acceptable result when sc=15 fc=5 and ρ (0) =1.
,
A NichePSO Algorithm Based Method for Process Window Selection
197
2.3 Niching Particle Swarm Optimizer R. Brits et al introduced niching particle swarm optimization (NichePSO) algorithm to multiple optima detecting problem [2]. In NichePSO algorithm, if fitness change of a particle is less than δ over a certain consecutive number of iterations, then a subswarm is randomly created in the space around the particle with a radius of the Euclidean distance from the particle to its neighbor; subswarms are merged when they overlap or their Euclidean distance is less than µ. In the position update process, particles will be absorbed into a subswarm if they fly into a swarm. Normally δ and µ are small positive numbers. With NichePSO algorithm, both global optimum and local optima of multimodal functions can be detected. The flow and major steps of the NichePSO algorithm are as below [2]: 1. Initialize main particle swarm including particle quantity, particle position and particle velocity. 2. Train particles in main swarm per equation (7) and (8). 3. Update the fitness of particles in the main swarm and create subswarm if meet criteria. 4. For each subswarm: a. b. c.
Train subswarm particles using one iteration of the GCPSO algorithm. Update each particle’s fitness. Update swarm radius.
5. Merge subswarms if they meet merge criteria. 6. Allow subswarm to absorb those particles from the main swarm if they move into it. 7. Search in main particle swarm; create a new subswarm if any particle is found meeting partitioning criteria. 8. Repeat from 2 until stopping criteria are met.
3 NichePSO Algorithm Based Method for Process Window Selection A proper fitness function is required for NichePSO algorithm. Fitness function below is constructed for parameters window selection problem: Obj = | Q − R | .
(14)
Apparently, Obj is small if R is close to Q, and it equals to 0 for the common points of Q and R. With NichePSO algorithm and (14), we developed a parameter window selection method, its flow and major steps for one dimensional problem is as below: 1. Search for common points of Q and R using NichePSO algorithm and fitness function (14). If none, return the information of no common point and exit program. 2. Sort border points together with the common points that found in step 1 in increasing order, pick a point xj between each two neighbor points xi and xi+1; keep the portion [xi , xi+1] if Q(xj)>R.
198
W. Li et al.
3. Calculate the width Wi= xi+1-xi of each kept portion, tag the portion as candidate interval if Wi>10.02σ. If no candidate interval, return related information and exit program. 4. Output endpoints and the width of each candidate interval, and recommend the widest interval as the portion that parameter window should be selected on. Two dimensional problems are more complex due to the solutions of Q=R are curves when they intersect each other, which contain infinite common points. The flow and major steps for the two dimensional problems are as below: 1. Search for common points of Q and R using NichePSO algorithm and fitness function (14). If none, return information of no common point and exit program. 2. Calculate Euclidean distance between the common points that found in step 1. If the distance between a particle and its neighbor is less than ε, then search for common points again using NichePSO algorithm in the space around the particle with a radius of the Euclidean distance from it to its neighbor. Repeat this step until the distance between each particle and its neighbor is less than ε. 3. Link all common points that found in step 2 by following the rectangle grid model based algorithm for contour drawing [6]. 4. Pick a point (xi, yj) in each area that separated by the close curves obtained in step 3, keep the area if Q (xi, yj)>R. 5. Calculate the widths of each kept area in both in x and y direction. If Wx>10.02σx and Wy>10.02σy, tag the area as candidate area; if no candidate area, return related information and exit program. 6. Output the border lines and the widths Wx and Wy of each candidate area. With geometric shape and widths of each candidate area, engineer can easily make judgment where the process parameter window should be selected from.
4 Simulation Results R.Brits et al have ever used below standard multimodal functions to test NichePSO algorithm due to their typical properties of multimodal function [2], see figure 10. We also use the 5 functions to test the NichePSO algorithm based process parameter window selection method.
F 1( x ) = sin 6 (5πx ) . F 2( x) = (e
− 2 log ( 2 ) × (
(15)
x − 0.1 2 ) 0.8
) × sin 6 (5πx) .
F 3( x ) = sin 6 (5π ( x 3 / 4 − 0 .05 )) . − 2 log ( 2 ) ×(
x − 0.08 2 ) 0.854
(16)
(17)
) × sin 6 (5π ( x 3 / 4 − 0.05)) .
(18)
F 5( x, y ) = 200 − ( x 2 + y − 11) 2 − ( x + y 2 − 7) 2 .
(19)
F 4( x) = (e
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
F2 (R=0.2)
F1 (R=0.2)
A NichePSO Algorithm Based Method for Process Window Selection
0.5
0.5
0.4
0.4
0.3
0.3
0.2
0.2 0.1
0.1 0
0
0
20
40
60 Iteration
80
100
120
0
20
40
60 Iteration
80
100
120
Fig. 4. Particle trace on F2
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
F4 (R=0.2)
F3 (R=0.2)
Fig. 3. Particle trace on F1
0.5 0.4
0.5 0.4
0.3
0.3
0.2
0.2
0.1 0
199
0.1
0
20
40
60 iteration
80
100
0
120
0
Fig. 5. Particle trace on F3
20
40
60 Iteration
80
100
120
Fig. 6. Particle trace on F4
=
With main swarm particle quantity 30, R 0.2 and σ=0.008, we tested the method and got the results in table 1 and table 2. Table 1 shows all main particles converged at or close to the common points of R and each function, and all the common points in F1 to F4 were found during each test. Table 2 provides Table 1. Test summary the recommended intervals Fitness Fitness %Com m on R σ ε Im ax Test Tim e s Mean Deviation Points Found which the parameters Function F1 0.2 0.008 -100 30 1.39E-05 5.31E-05 100% F2 0.2 0.008 -100 30 8.96E-07 2.47E-06 100% window can be selected on. F3 0.2 0.008 -100 30 1.49E-04 4.72E-04 100% Figure 3 to 6 record particle F4 0.2 0.008 -100 30 3.77E-04 1.34E-03 100% F5 150 0.1, 0.1 0.3 500 30 8.01E-07 4.22E-06 -trace during iterations. F5 is a 3D curved Table 2. Test output (F1—F4) surface with 4 maxima, Recommended which can be used to test Function Endpoints of Candidate Interval Width of Candidate Interval Inerval two dimensional problems. F1 Set main swarm particles F2 as 300, with R=150, σx=σy F3 F4 =0.1 and ε=0.3, the test results on F5 are shown in table 3 and figure 9. Figure 8 is the image of F5 and R=150, and figure 7 records particles’ original position, iteration-in-process position and final position respectively. Apparently, the particles’ final positions in figure 7 match with the intersection curves of F5 and R=150 in figure 8. In most of real cases, the summary in table 3 and areas in figure 9 are good enough for engineer to define input parameter window. 0.0554, 0.1446 0.0555, 0.1445 0.2057, 0.2894 0.2060, 0.2884
0.2554, 0.3446 0.2561, 0.3429 0.4026, 0.5000 0.4054, 0.4950
0.4554, 0.6554, 0.8554, 0.0892 0.0892 0.0892 0.0892 0.0892 0.5446 0.7446 0.9446 0.089
0.6280, 0.8759, 0.7359 0.9928 0.6381, 0.7213
0.0868
1,2,3,4,5 1
0.0837 0.0974 0.1079 0.1169
4
0.0824 0.0896 0.0832
2
200
W. Li et al. 5
5
5
4
4
4
3
3
3
2
2
2
1
1
yy 0
y
y
y 0
1 y 0
-1
-1
-1
-2
-2
-2
-3
-3
-3
-4
-4
-5 -5
-5 -5
-4
-3
-2
-1 0 F5 (R=150)
1
x
2
3
4
5
-4
-4
-3
-2
-1 0 F5 (R=150)
x
x
1
2
3
4
-5 -5
5
-4
-3
-2
-1 0 F5 (R=150)
1
x
x
x
2
3
4
5
Fig. 7. Original, in-process and final position of particles (F5)
5
200
Table 3. Test output (F5)
4
2
3
150
2
100
y
Area
Wx
1
Wy
50
2.8521 2.4034
3
3.2886 6.5977
0 -1
0 5
2.0091 2.3907
2
-2
0
x
-4
0
-5 -5
-5
Fig. 8. F5 and R=150
1
0.8
0.8
0.6
0.6
0.6
F2(x)
F3(x)
1
F1(x)
1
0.4
0.4
0.2
0.2
0.2
0
0
0.2
0.4
0.6
0.8
1
x
0
0.2
0.4
0.6
0.8
-4
-3
-2
-1
0
1
2
x
3
4
5
Fig. 9. Areas meeting requirements (F5)
0.8
0.4
1
-3
5
y
-5
0
3
1
1
0
x
0
0.2
0.4
0.6
0.8
1
x
1 200
F5 (x,y)
0.8
F4(x)
0.6
150
100
50
0.4
0 5
0.2
5 0
0
0
0.2
0.4
0.6
0.8
1
y
0 -5
x
-5
x
Fig. 10. Images of F1, F2, F3, F4 and F5
5 DOE Analysis and Production Validation The distribution of output voltage Vout of a power management product is related to input voltage Vin and test temperature Temp. To achieve higher Cpk of Vout during test mass production, an experiment to define the ranges of Vin and Temp was conducted. Table 4 gives the matrix of the Design of Experiment (DOE) and results, where Vout mean and Vout stdev are average and standard deviation of Vout of 18 units tested in
A NichePSO Algorithm Based Method for Process Window Selection
5.2 1.333
4.8
1.667
4.4
Vin /V
same leg. Given the ideal target of Vout is 0.9V and preliminary specification limits are 0.888V and 0.912V, Cpk in table 4 can be easily computed. The test head and resource channel of testing machine can provide stable Vin and Temp with standard deviations at σvin=0.003V and σTemp=0.6oC. Set main particle quantity as 300 and take R=1.333, 1.5, 1.667 and 1.883, and then study the relation between Vout Cpk and input parameters Vin and Temp by using the method presented in section 3, then get the curves in figure 11. Engineer can easily
201
4.0
1.500
3.6 3.2 1.833
1.833
2.8 1.500 1.667
2.4 -20
0
20
40
60
80
100
120
Temp /deg C
Fig. 11. DOE analysis result
Table 4. DOE matrix and data Leg 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Temp /deg C -40 -40 -40 0 0 0 25 25 25 85 85 85 125 125 125 Vin /V 3.6 2.3 5.5 3.6 2.3 5.5 3.6 2.3 5.5 3.6 2.3 5.5 3.6 2.3 5.5 Vout mean 0.89687 0.89688 0.89735 0.89876 0.89863 0.89923 0.89984 0.89956 0.90022 0.90055 0.90033 0.90145 0.90091 0.90043 0.90263 Vout stdev 0.00215 0.00217 0.00213 0.00199 0.00204 0.00198 0.002 0.00206 0.00198 0.00229 0.00237 0.00226 0.00261 0.00267 0.00261 Cpk 1.37847 1.36639 1.46676 1.80229 1.73727 1.89182 1.97496 1.87046 1.98523 1.66581 1.64371 1.55381 1.41683 1.44379 1.19414
select the area in rectangle as the process windows of Vin and Temp Table 5. Production validation data based on figure 11, i.e. Vin Lot 1 2 3 4 5 6 7 8 9 10 [2.8V,5.2V] and Temp [0oC, Cpk 1.98028 1.957399 1.98967 1.949872 2.01362 1.99061 1.99364 1.96887 2.01008 1.90897 60oC], which can make Vout achieve higher Cpk. Set Vin=4.0V and Temp=30oC as test mass production settings, then randomly pick 10 lots and record their Vout Cpk in table 5, here the distribution of Vout is much better than that we got during DOE, which shows the method presented in this paper is effective for process parameter window selection.
∈
∈
6 Conclusion This paper introduces a NichePSO algorithm based method for parameter window selection. For one dimensional problem, it can directly give the portion where input parameter window can be selected on; and it can provide the contours of output parameter and the width of each contour in both x and y direction for two dimensional problem. The production validation data and simulation results on standard multimodal functions reveal it is an effective method for parameter window selection. Acknowledgement. This research is sponsored by National Science Foundation of China (70871091, 6107506 and 61034004), Ph.D. Programs Foundation of Ministry of Education of China (20100072110038), Foundation of the Ministry of Education of China for Returned Scholars and Program for New Century Excellent Talents in University of Ministry of Education of China.
202
W. Li et al.
References 1. Kennedy, J., Eberhart, R.: Particle Swarm Optimization. In: Proceedings of IEEE International Conference on Neural Networks, Perth, pp. 1942–1948 (1995) 2. Brits, R., Engelbrecht, A.P., Van den Bergh, F.: A Niching Particle Swarm Optimizer. In: Proceedings of the 4th Asia-Pacific Conference on Simulated Evolution and Learning, Singapore, pp. 692–696 (2002) 3. Wu, Q.D., Wang, L.: Intelligent Particle Swarm Optimization Algorithm Research and Application. Jiangsu Education Publishing House, Nanjing (2005) 4. Van den Bergh, F., Engelbrecht, A.P.: A New Locally Convergent Particle Swarm Optimizer. In: IEEE Conference on Systems, Man and Cybernetics, Hammamet, pp. 6–11 ( 2002) 5. Thomas, M.K., Donald, W.B.: The Certified Six Sigma Black Belt Handbook, 2nd edn. ASQ Quality Press, Milwaukee (2009) 6. Zhang, X.Q., Liu, Z.P.: An Algorithm of Contour Lines Based on Regular Grid. J. Computer Science. 32(9), 199–201 (2005)
Efficient WiFi-Based Indoor Localization Using Particle Swarm Optimization Girma S. Tewolde and Jaerock Kwon Department of Electrical and Computer Engineering Kettering University, Flint, MI 48504, USA {gtewolde,jkwon)@kettering.edu
Abstract. Location based services are rapidly gaining popularity in various mobile applications. Such services rely particularly on the capability to accurately determine the location of the user. Several techniques are already available to provide localization for static or mobile applications, GPS being the most popular. However, due to some limitations of GPS such as low accuracy, unavailability in indoor environments and lower signal quality in urban areas with high rise buildings, complementary solutions are essential to offer satisfactory service at all places all the time. This paper demonstrates the use of a widely available WiFi networking infrastructure for accurate and low-cost indoor localization. Most existing WiFi-based localization approaches employ radio signal strength indicator (RSSI) fingerprinting technique, which requires a great deal of pre-deployment effort. Our swarm-inspired optimization algorithm applies a simpler and efficient technique based on the radio propagation model of the wireless signal. The proposed technique is evaluated in simulation and is demonstrated to achieve excellent average localization error of about 4 meters in an area of 50 x 50 square meters, under noisy RSSI measurements. Keywords: indoor localization, RSSI modeling, RSSI fingerprinting, particle swarm optimization.
1
Introduction
The recent advances in mobile Internet technology and the proliferation of a wide range of services are further accelerating the research and development effort for improved as well as new applications. Modern location based services (LBS) have evolved as a result of the technology integration of mobile Internet, smart phones, and Geospatial information. Knowledge of the user’s location as well as locations of interest points in a given area are at the core of LBS and related services. The problem of localization has been a core focus of research by many researchers in various fields, including mobile robotics, wireless sensor networks, mobile communication and internet technology. In general, different techniques may be utilized for outdoor and indoor localization. The focus of our study in this paper is indoor localization. Simplicity, cost, and accuracy of localization are common criteria for comparing different localization strategies. Ideally, it is desirable to have a Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 203–211, 2011. © Springer-Verlag Berlin Heidelberg 2011
204
G.S. Tewolde and J. Kwon
technique that could be easily deployable without requiring initial setup, training or environmental adaptation. It is also necessary that the technique provides sufficient accuracy for the class of applications it is intended for. Obviously, a low cost solution is desirable to make the technology affordable for widespread applications. Several techniques such as LANDMARC [1], Cricket [2], and Active Badge [3] are already available for indoor localization. However, these techniques deploy and rely on specialized infrastructure based on RFID, sonar, IR, or radio signals for the purpose of the localization thus adding to the deployment cost. Although the initial setup adds up to the cost of localization, these techniques often provide excellent accuracies. For example, Cricket - a triangulation based positioning technique using active ultrasound beacons, achieves an overall localization accuracy within 10 cm of the actual position. Such high levels of accuracies could be attractive for applications such as mobile robot navigation and object manipulation tasks. On the other hand, several indoor and outdoor applications may not necessarily require such high levels of sub-meter accuracies. For example, when a person is navigating in an unknown indoor office environment or outdoors it might be sufficient to be able to localize within a few meters to aid find nearest interest points. For such applications where the accuracy requirement is relatively relaxed simpler and lower-cost localization techniques will be more attractive. Two related radio frequency (RF) based localization techniques attract great interest mostly due to the fact that existing wireless communication infrastructure is exploited without incurring additional deployment cost. These methods rely on RF signals either from cellular towers or WiFi access points (APs). The localization solution based on reference information from cellular towers can be utilized anywhere cellular signals from at least 3 towers are available. For example, as part of the Federal Communications Commission (FCC) E911 rules wireless carriers in the US are required by law to provide a 911 caller’s location to within 50 to 300 meters depending on the technology used [4]. Despite the limited accuracy of this technique it applies both indoors and outdoors providing global localization in extended geographical areas. Our proposed solution is based on RF signals from WiFi access points. It assumes knowledge of the locations and transmit-powers of at least three access points. To minimize the effect of RSSI measurement uncertainties in the localization accuracy we employ a particle swarm based optimization algorithm that is found to result in robust performance in noisy environments. The main contribution of this paper is that we demonstrate an efficient and sufficiently accurate localization scheme for indoor localization using existing infrastructure with little initial setup or training. The rest of this paper is organized as follows. Section II presents related work on RF based localization. Section III presents the wireless signal propagation model that is used in our localization solution. Section IV gives a short introduction to the PSO algorithm and describes the mapping of the localization problem to the PSO model. Section V presents the experiment and results. And finally the paper provides discussion and concluding remarks in sections VI and VII.
Efficient WiFi-Based Indoor Localization Using Particle Swarm Optimization
2
205
Related Work
In general, the localization techniques that use RF signals on existing networks employ a radio signal fingerprinting approach, model based techniques, or a combination with other localization methods [5]. In the radio signal fingerprinting method the RSSI measurements from all the radio transmitters in the region is mapped at each location of the environment. To localize a given device its RSSI readings are matched against the values stored in the map. RADAR [6] is an example of this technique which uses extensive offline data collection before real-time localization starts. There have been several improvements on this approach through the years as well as commercialization of the technology [7]. In a similar approach to RF signal fingerprinting but at a global scale a company called Skyhook [8] developed a WiFi positioning system (WPS). It collects and maintains a massive worldwide database of WiFi access points in major populated areas. Using the data and applying intelligent search techniques the company provides subscribers real-time access to location information. The company claims an accuracy of 10 to 20 meters by its core engine. Alternative to the signal-fingerprinting and map-based approaches is a modelbased technique that relies on the radio propagation property of the WiFi signal. In this case, the RF propagation model is used to predict the RSSI at various points in an environment. This method eliminates the cost of initial deployment, maintenance and the issue of scalability associated with the signal fingerprinting technique. But its localization accuracy may be slightly lower [9]. Previously proposed solutions using this approach include Chintalapudi et al. [5], Lim et al. [10], Madigan et al. [11]. Most of these techniques except [5] assume knowledge of the locations and transmit power of the APs, and/or rely on WiFi sniffers at known locations to provide anchor points for the localization algorithms. Chintalapudi et al. on the other hand assume access to GPS data at some locations in the environment. The GPS data provides known location fixes for the environment modeling created by a server. The system is configured in client-server model so mobile nodes query the server for their location information by sending requests wirelessly. Like many of the existing techniques, our proposed method assumes knowledge of the locations and transmit characteristics of at least three access points in the operating environment. We modeled the localization problem as an optimization problem with the goal of minimizing the computed location error. Then an intelligent nature inspired problem solving strategy is applied to the optimal solutions for the localization problem. In this paper we employed the Particle Swarm Optimization (PSO) algorithm. The main reason for choosing PSO over other competing optimization techniques is due to its simplicity and proven performance to deal with noisy optimization problems. For example, on a similar problem of emission source localization in noisy environments we demonstrated the superior performance of PSO over Differential evolution (DE) and Matlab’s non-linear least squares (LSQ) optimization tool [12].
206
3
G.S. Tewolde and J. Kwon
Wireless Signal Propagation Model
In our studies we assume an environment with IEEE 802.11 wireless communication at 2.4 GHz band. There are several experimental and theoretical studies of radio signal propagation in indoor environments [13]. In this paper the log-distance path loss (LDPL) model is used to predict RF signal attenuation as a function of distance between an AP and a WiFi receiver. This model is given by Equation (1) below:
p d = P0 − 10 ⋅ α ⋅ log( d ) + R.
(1)
where pd is the received power in dBm at distance d (in meters) from the transmitter. P0 is the signal strength 1 meter from the transmitter, α is known as the path loss exponent, and R represents a random variable for capturing the variations in the RSSI readings due to multi-path effects, physical barriers in signal path and other imperfections in the model. The parameter α is dependent on the environment, i.e. type of construction material, architecture, location, temperature, humidity, etc. Empirical measurements of α in the literature report values in the range 1.8 to 5 depending on the level of obstruction [11]. Lower value of α correspond to lower signal path loss. For example, for free space propagation a value of 2.0 is used and for office environment with wall partitions, furniture and people a value of 2.5 would be a reasonable choice.
4
Particle Swarm Based Localization Algorithm
Particle Swarm Optimization (PSO) was inspired by the social swarming behavior of bird flocks, fish schools, and bee swarms. It was first developed in 1995 by Kennedy and Eberhart [14]. Individual particles in a particle swarm represent candidate solutions for the optimization problem. Initially, at the start of the optimization algorithm the PSO particles are assigned random initial positions in the search space. The particles are then moved around in the parameter space by using systematic rules to adjust their velocities and positions, in response to the swarm’s experience in locating quality solutions. The social interaction of the particles in the swarm shapes the dynamics the optimization algorithm. Thus, the performance of the individual particles in the swarm is influenced by a combination of their personal and social best experiences. In effect, the particles tend to be attracted to the best solution they have individually found and the best solution that any particle in their neighborhood has found. Different PSO models have been proposed over the years to target different classes of problems. Two of the most widely known models are the constriction-factor and inertia-weight forms of the PSO algorithm, both of which have been demonstrated to be effective for general optimization tasks. The governing equations for the constriction-factor form of the PSO algorithm are given by Equations (2) and (3):
vij (t +1) = χ ⋅ (vij (t) +ϕ1 ⋅ r1 ⋅ ( pij − xij (t))+ϕ2 ⋅ r2 ⋅ ( pgj − xij (t))).
(2)
x ij (t + 1) = x ij (t ) + vij (t + 1) .
(3)
Efficient WiFi-Based Indoor Localization Using Particle Swarm Optimization
207
The quantity χ is called constriction-factor. The quantity is the personal best position of particle and is the global best position in the entire swarm. and represent the learning rates that control the degree of influence of the cognitive and social components. and are independently generated random numbers in (0,1). They contribute to the stochastic behavior of the algorithm to allow random exploration of the search space in the surroundings of the personal and neighborhood best positions. The performance of each particle is measured using a problem specific pre-defined fitness function. In our proposed solution strategy for the problem of localization we assume the presence of at least three reference APs with known locations and transmit powers. When we want to compute the (x, y) location of a point in space within the operating environment, we will first collect RSSI readings from the three APs. Then we apply the swarm inspired optimization method on the LDPL model to reach at an optimal localization with minimum estimation error. The fitness function for the optimization problem is derived with the goal of minimizing the sum of the squares of the errors between the actual RSSI readings from all the APs at the unknown location (x, y) and the theoretical values that would be obtained from the LDPL model, computed over all the reference APs. 2 (4) f = ∑ ( p − P + 10 ⋅ α ⋅ log(d )) . ∀APs
i
0i
i
where, pi is the RSSI reading at the unknown location from the ith access point. P0i is the RSSI reading at 1 meter radius from the ith AP. di is the distance in meters of the unknown node location from the ith AP. In equation (4) di is the unknown quantity that will be solved as part of finding the solution for the unknown location (x, y). The PSO algorithm initially starts by assigning the particles in the swarm random positions in the search space. By evaluating the fitness function for each particle the algorithm determines how close they are to the actual position. Particles that are located far away from the desired location (x, y), whose position is being computed, result in larger values of f corresponding to higher estimation errors than particles closer to the actual node location. Then, in successive iterations the algorithm tries to update the particles’ velocities and positions using the PSO equations so as to improve their fitness values.
5
Experiment and Results
For our simulation experiment we considered the following environmental layout, shown in Fig. 1. Three different dimensions of the same environmental layout were considered to study the effect of the size of the working areas on the estimation accuracy. Experiments were conducted on the following three sizes of the environment: a) 25 x 25 square meters b) 50 x 50 square meters c) 100 x 100 square meters
208
G.S. Tewolde and J. Kwon
In each case three APs were placed far apart from each other in a triangular formation. Then randomly generated points were distributed all over the environment. The PSO based localization algorithm computes the locations of these points based on their RSSI measurements.
Fig. 1. Layout of the test environment with randomly placed test points (the triangles are APs, the dots are points whose localization is to be computed)
The only information the optimization algorithm has at the its start is the set of RSSI measurements at the unknown position from the three WiFi access points. The locations and transmit powers of the access points is assumed known, and also the path loss model of the radio signal in the operating environment. To study the impact of the measurement uncertainties in the RSSI values due to environmental effects, zero mean Gaussian distributed random noise was introduced in the emulated readings of the radio signals. The standard deviation of the noise was varied from 0 to 5, to see how it impacts the localization accuracy. To minimize the impact of noise the localization algorithm takes 30 samples of the RSSI readings at each unknown location and takes the average value. Using the RSSI readings and knowledge of information about the three reference access points the PSO algorithm computes the localization of each point. For the LDPL model in the problem formulation we used a value of α = 2.5 which was assumed to work fine for a single floor office building with some partitioning walls and corridors. The PSO parameters used in the simulation are swarm size of N = 50, constriction factor, χ = 0.729, learning rates, = = 2.05. The performance of the localization algorithm is evaluated by calculating the localization error which is computed as the Euclidean distance between the estimated location (x’, y’) of the point from the algorithm and its actual location (x, y). Fig. 2, 3 and 4 present the way the localization algorithm performs over the three environmental dimensions.
Efficient WiFi-Based Indoor Localization Using Particle Swarm Optimization
209
Localization Error (m)
2.5 2.0 1.5 1.0 0.5 0.0 0
1
2
3
4
5
RSSI m easurem ent error (st. dev.)
Fig. 2. Localization accuracy on 25 x 25 sq. meters. The horizontal axis shows st. dev. of the Gaussian noise in the RSSI measurement error. 5.0
Localization Error (m)
4.5 4.0 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0.0 0
1
2
3
4
5
RSSI measurem ent error (st. dev.)
Localization Error (m)
Fig. 3. Localization accuracy on 50 x 50 sq. meters. The horizontal axis shows st. dev. of the Gaussian noise in the RSSI measurement. 9.0 8.5 8.0 7.5 7.0 6.5 6.0 5.5 5.0 4.5 4.0 3.5 3.0 2.5 2.0 1.5 1.0 0.5 0.0 0
1
2
3
4
5
RSSI m easurem ent error (st. dev.)
Fig. 4. Localization accuracy on 100 x 100 sq. meters. The horizontal axis shows st. dev. of the Gaussian noise in the RSSI measurement.
210
6
G.S. Tewolde and J. Kwon
Discussion
From Fig. 2, we see that for the smallest size operating environment (25 x 25 sq. meters), the average maximum localization error is limited to about 2 meters for the maximum setting of the noise level. From Fig. 3, for the 50 x 50 sq. meters operating environment, the average maximum error is shown to be limited to about 4 meters for the maximum noise level. And from Fig. 4, for the 100 x 100 sq. meters operating environment, the average maximum error is shown to be about 8.5 meters at the maximum noise level. From these results we observe that the localization error follows more like a linear pattern as a function of the dimension of the operating environment. To compare the performance of our algorithm to that of RSSI fingerprinting techniques, consider the problem dimension 50 x 50 square meters which is close to the size of the environment reported in RADAR [6]. The 50 percentile (median) error of our algorithm at the maximum level of Gaussian noise is about 3.4 meters. This result is only slightly worse than the best 2 to 3 meter achieved by RADAR which relies on cumbersome offline data collection. A resolution of 3 to 5 meters for medium size environments could be quite good enough for common indoor applications. Our goal is to deploy such localization tools on autonomous mobile robots that could benefit from the WiFi based global localization for navigational tasks, while improvements on the accuracy can be achieved using additional sensors for local perception. For example, if vision or other sensors are available on board the mobile robot, information obtained from visual landmarks could be used to aid in improving the localization accuracy. When examining the execution performance of our proposed algorithm, we find that compared to other model based methods the PSO-based solution is found to be efficient and converges fast in less than one second on a Dell Latitude E5400 laptop. In contrast, the result reported in [8] takes extra long off-line training times (16 to 65 minutes on a Lenovo T61p laptop) for building the RF model using Genetic Algorithm based technique.
7
Conclusion
The significance of our PSO based localization technique using existing WiFi infrastructure is that it requires little initial setup. It can be easily deployed for use by humans or mobile robots as long as WiFi access from at least three APs can be obtained. Unlike other techniques, such as [5] and [8], there is no offline training required. These are important properties especially in scenarios when there is no prior information about the environment or when there is no time to gather fingerprinting data that would be needed for some of the other methods. The proposed technique is evaluated in simulation and is demonstrated to achieve average localization error of about 4 meters in an area of 50 x 50 square meters, under noisy RSSI measurements. This is reasonably sufficient accuracy for the class of target applications the technique is meant for. In future work we will implement and carry out experiments in real physical environments and evaluate its performance. Methods of automatically determining the parameters of the APs will also be examined.
Efficient WiFi-Based Indoor Localization Using Particle Swarm Optimization
211
References 1. Ni, L., Liu, Y., Yiu, C., Patil, A.: LANDMARC: Indoor Location Sensing Using Active RFID. In: WINET (2004) 2. Priyantha, N.B., Chakraborty, A., Balakrishnan, H.: The Cricket Location-Support System. In: MobiCom (2000) 3. Want, R., et al.: The Active Badge Location System. ACM Transactions on Information Systems (January 1992) 4. http://www.fcc.gov/cgb/consumerfacts/wireless911srvc.html 5. Chintalapudi, K., Iyer, A.P., Padmanabhan, V.N.: Indoor Localization without the Pain. In: MobiCom (2010) 6. Bahl, P., Padmanabhan, V.N.: RADAR: An In-building RF-based User Location and Tracking System. In: INFOCOM (2000) 7. Ekahau, http://www.ekahau.com/ 8. Skyhook, http://www.skyhookwireless.com/ 9. Gwon, Y., Jain, R.: Error Characteristics and Calibration-free Techniques for Wireless LAN-based Location Estimation. In: MobiWac (2004) 10. Lim, H., et al.: Zero Configuration Robust Indoor Localization: Theory and Experimentation. In: Infocom (2006) 11. Madigan, D., et al.: Bayesian Indoor Positioning Systems. In: Infocom (2005) 12. Tewolde, G.S., Hanna, D.M., Haskell, R.E.: Particle Swarm Optimization for Emission Source Localization in Sensor Networks. In: The 2009 Artificial Neural Networks in Engineering (ANNIE 2009) Conference, St. Louis, MO (2009) 13. Rappaport, T.S.: Wireless Communications - Principles and Practice. Prentice Hall PTR, Englewood Cliffs (1996) 14. Eberhart, R., Kennedy, J.: A new Optimizer using Particle Swarm Theory. In: 6th Int. Symp. Micro Machine and Human Science (1995)
Using PSO Algorithm for Simple LSB Substitution Based Steganography Scheme in DCT Transformation Domain Feno Heriniaina Rabevohitra and Jun Sang* School of Software Engineering, Chongqing University, Chongqing, China 400030 [email protected], [email protected]
Abstract. An improved method for embedding a secret message into a cover image with least significant bit (LSB) substitution in discrete cosine transformation (DCT) domain was proposed. The secret message was first split into partitions, while the cover image was divided into blocks of size 2x2, and DCT was used to convert the blocks from spatial domain to frequency domain. Then, Particle Swarm Optimization (PSO) algorithm was applied to search for an optimal substitution matrix T to transform the split partitions for an optimal embedding. Next, the transformed part of secret message was embedded into the AC coefficients of the transformed image blocks by LSB substitution. Experimental results show the proposed method can keep the quality of the stego-image better, while the security of the hidden secret message is increased by use of the substitution matrix T. Keywords: Steganography, PSO, LSB, DCT.
1 Introduction Internet is the world on top of our fingers and it is anything but secure. Information can be sent from the half part of the globe to the other half in just seconds. However, sharing data over public networks such as the Internet is unsafe. Ways to insure data confidentiality is then needed. In contrast with cryptography, steganography is the art and science of hiding a message in a cover signal for transmission where the concealed message will not be apparent to anyone except for the targeted receiver to be able to extract its content with help of pre-defined way or key. The most well-known steganographic technique in the data hiding field is LSBs substitution [1]. Image hiding methods can generally be categorized into spatial and frequency domain [2]. In 2007, a JPEG steganographic method was presented by Li and Wang [2]; they have modified the quantization table used in JQTM (Jpeg and quantization table modification) for embedding larger secret message into the DC-tomiddle frequency components for each block and developed a PSO algorithm to approach optimal LSB substitution, which proposed a higher security level and a better quality of the stego image. Recently, a method proposed in [3] imbedded data at the LSBs of 2x2 transformed blocks of the cover image in frequency domain. Based on LSB embedding in frequency domain, using PSO and a key transformation *
Corresponding author.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 212–220, 2011. © Springer-Verlag Berlin Heidelberg 2011
Using PSO Algorithm for Simple LSB Substitution Based Steganography Scheme
213
for embedding a data and recovering the hidden data is presented in this paper. Implementations and experiments show good PSNR values. The rest of this paper is organized as follows: Related works are introduced in Section 2. The proposed schemes are presented in section 3. Experimental results are illustrated in section 4 and section 5 is for comments and conclusion.
2 Related Works 2.1 DCTIASMTT DCTIASMTT [3] presents a method for embedding secret data into gray scale image file which is split into blocks of 2x2 transformed in frequency domain using DCT and then embedded in its LSB pixel values (excluding the first pixel). Inverse DCT is then used to get the image back to spatial domain. Presented below an illustrative figure which shows the encoding scheme of the DCTIASMTT and the decoding is done using reverse procedure.
Fig. 1. Encoding scheme using DCTIASMTT
2.2 Particle Swarm Optimization Algorithm Particle Swarm Optimization (PSO) is a technique used to explore the search space of a given problem to find the settings or parameters required to maximize a particular objective [4]. This technique, first described by James Kennedy and Russell C. Eberhart in 1995 [5], originates from two separate concepts: the idea of Swarm intelligence based on the observation of swarming habits by certain kinds of animals and the field of evolutionary computation. A PSO algorithm works by simultaneously maintaining several candidate solutions in the search space. During each iteration of the algorithm, each candidate solution is evaluated by the objective function being optimized, determining the fitness of that solution. Each candidate solution can be thought of as a particle “flying” through the fitness landscape finding the maximum or minimum of the objective function [4]. It is the objective function which is used to evaluate candidate solutions and operates on the resultant fitness values of the PSO algorithm. 2.3 A Steganographic Method Based Upon JPEG and Particle Swarm Optimization Algorithm Published in 2007, Xiao Li and J. Wang [2] presented a steganographic method based on JPEG compression and PSO. PSO was used for finding an optimal substitution matrix for transforming the secret message before its embedding in the DC-to-middle frequency components of the quantized DCT coefficients of the cover-image during
214
F.H. Rabevohitra and J. Sang
the jpeg compression phase. This resulted of a higher security level of the stego image compared to JPEG and Quantization Table Modification (JQTM) [6].
3 Proposed Schemes 3.1 Three Different Schemes Here, we present 3 different schemes for improving the method proposed in DCTIASMTT. All based on the use of table matrix transformation selected by PSO before embedding, the size of the table matrix, the processing time and the quality of the stego image resulting from the use of each of them are different. For our work we use gray scale image of size (MxN). The technique inserts a secret message of maximum-size (M/2xN/2x3)-16bits. DCT is used to transform the image from spatial domain to frequency domain. The secret data gets imbedded in the frequency domain of the cover image. Scheme 1: Using a unique table transformation to transform the whole block of the secret data. Encoding process is as follows: 1. 2. 3. 4.
Load the source image and secret data. Convert the secret data into stream of bit stream. Convert the cover image into blocks. By use of DCT, transform each block of the cover image into its discrete cosine transform values. 5. Retrieve the k-LSBs of each of the cover image block 6. Search for Optimal table transformation matrix T by use of PSO a. b.
c. d.
Get a table transformation matrix T* by use of PSO Convert the binary number of the secret message part to decimal and transform the secret data using T* before getting it back to binary values Calculate the PSNR for each substitution of the secret data with the retrieved k-LSBs of the cover image Select the one having the highest PSNR as an optimal transformation of the secret data and the table transformation used as best transformation matrix T.
7. Embedding followed by inverse discrete cosine transform 8. Save table transformation T and stego image Using this system, only one transformation matrix is used to map each block of k bits of the secret data into new block of k bits. The size of T is kept 2k Scheme 2: Using a unique table transformation to transform each block of the secret data and save all used tables to compose T.
Using PSO Algorithm for Simple LSB Substitution Based Steganography Scheme
215
Fig. 2. Encoding flowchart by use of PSO, transformation domain and LSB substitution, scheme 1. Decoding requires the possession of T.
Figures 3 and 4 below show the encoding and decoding scheme of the proposed method:
Fig. 3. Encoding flowchart using PSO, transformation domain and LSB substitution, scheme 2
Decoding requires the possession of all tabular matrices previously used to transform each block of the secret data presented as T in figure 4.
216
F.H. Rabevohitra and J. Sang
To reconstruct the secret message, inverse transformations of the encoding in the opposite order is used with the saved table transformation T and stego image as inputs.:
Fig. 4. Decoding flowchart, scheme 2
Scheme 3: it is only different from scheme two for the setting of PSO`s objective function which we will describe in the next section. 3.2 PSO Settings The information is stored in the frequency domain, DCT coefficients of the cover image. We assume the cover image is split into 2x2 blocks and that every block encodes 3 bits. We build the PSO algorithm to select an optimal table transformation matrix T as in [2] section 2.2 where in our case k is equal to 3. Objective functions: ─ Scheme 1: The objective function minimizes the error on the stego image. We measure the cost of transformation between original discrete cosine transform value of the cover image and the transformed value of the secret message. This will now be referred to PSO1 ─ Scheme 2: using PSO 2 set as to minimize the error on the stego image. The average intensity distortion between the cover image 2x2 blocks and the 2x2 Stego blocks produced is used as objective function. ─ Scheme 3: uses PSO 3 and the average intensity distortion between the original secret data and the recovered secret data is the objective function. It is defined to minimize the error on the hidden data. Every member of the population is an 8 dimensional vector. And sorting this vector is the transformation of the member. Each particle represents a transformation. The best particle attracts the others and the best one of the last generation gets returned as the solution to the problem. Each block to be embedded from the cover image will be converted from spatial domain to frequency domain using DCT. We replace each bit of the DC transform value for all blocks where the value is not equal to the considered bit of the transformed secret message. For any of the modified discrete cosine transform values that have changed, apply inverse discrete cosine transform to get back the image block in spatial domain.
Using PSO Algorithm for Simple LSB Substitution Based Steganography Scheme
217
4 Experimental Results and Discussions To evaluate the performance of the proposed methods, we implemented the scheme described in “Discrete Cosine Transformation Based Image Authentication and Secret Message Transmission scheme” and our proposed schemes. We develop 3 PSO algorithms which differ for the calculation of the cost of transformation: PSO1, PSO2 and PSO3 as presented in 3.2. All these programs were coded in Matlab 7.10 and run on a PC with Intel Core i5 CPU M460 2.53GHz; with 4GB RAM under Windows 7-64 operating system. And as we focus on the stego image quality with the maximum size of the hidden data limited to (M/2xN/2x3) -16bits, our criteria for evaluations are PSNR and MSE. We use the 8-bit gray-level images “Baboon”, “Boat”, “Lena” and “Peppers” as cover-images, and for all our experiments “Plane” will be our hidden data.
Fig. 5. Our cover images (Baboon, Boat, Lena and Peppers) and the secret data (Plane of size 75x75)
The following tables relate the results of our experiments: Table 1. Comparing PSNR values between Source image and stego image, presented on this table are the results from DCTIASMTT, PSO1 (our proposed method scheme 1), PSO2 (our proposed method scheme 2 where objective function focuses on minimizing the error on the stego image) and PSO3 (our proposed method scheme 3 and objective function gives focus on minimizing the error on the secret message)
PSNR value in DB Images
Image Size
DCTIASMTT
Method PSO1
PSO2
PSO3
Baboon
512*512
51.1496
51.2214
57.1888
51.1798
Lena
256*256
46.5180
46.5446
51.4310
46.5400
Boat
256*256
46.2311
46.2034
51.4408
46.2157
Boat
512*512
52.6235
52.6488
57.4641
52.6235
Peppers
256*256
46.4566
46.4839
51.4452
46.4709
218
F.H. Rabevohitra and J. Sang
Fig. 6. shows “Plane.bmp” (75x75) images used as secret data in all our experiments. From “B” to “H” were all extracted from Baboon after all the different methods of imbedding that are listed below. Image “A” is the original secret data. Table 2. Secret data resulting from all our proposed schemes
Image
Method used for embedding
A
Plane (our secret data)
B C D E F G H
DCTIASMTT Our proposed method PSO1 Our proposed method PSO2 Our proposed method PSO3 Our proposed method PSO1 Our proposed method PSO2 Our proposed method PSO3
Image block 2x2 2x2 2x2 2x2 4x4 4x4 4x4
During our experiments, we have also implemented the same proposed scheme 2 and scheme 3 in difference of the block Image size of 2x2 to be 4x4 Table 3. Experimental results of the proposed method scheme 2 and 3, in the difference of the 2x2 image block replaced to be 4x4.
PSNR(dB) Images
Image Size
PSO2
PSO3
Baboon Lena Boat Boat Peppers
512x512 256x256 256x256 512x512 256x256
53.3389 48.2312 47.9865 54.2615 48.1262
51.0174 46.3531 46.0007 52.5407 46.2300
Using PSO Algorithm for Simple LSB Substitution Based Steganography Scheme
219
Table 4. Processing time of DCTIASMTT and the proposed methods for 2*2 image block size
Processing Time in Seconds Method Images
Image Size
DCTIASMTT
PSO1
PSO2
PSO3
Baboon
512*512
Lena
256*256
Boat
256*256
Boat
512*512
Peppers
256*256
31.665 14.181 14.195 31.628 14.198
299.792 276.310 284.677 307.950 272.339
355.264 364.444 364.343 367.709 363.911
467.540 469.060 461.239 467.221 465.707
5 Conclusion This paper proposed a method for concealing information with LSB substitution in frequency domain while using PSO to optimize the embedding procedure. Compared with DCTIASMTT in [3], by use of PSO for finding an optimal transformation matrix T, the proposed method results a minute increase in efficiency, while increasing the security level. And compared with the method in [2], the proposed method is much simpler, since it only uses DCT, not the whole procedure for JPEG compression. For scheme 2 and 3, the table transformation for each block can be searched using PSO although that's not optimal at all in the setting using 2x2 blocks from the source image. The best transformation is the one where the part of the secret message gets mapped to the exact bit representation of the considered bits of the source image. And the stegoimage will be exactly the same as the source image as no bit needs to be altered. As for 2x2, exact calculation can generate the best transformation. We implemented 4by4 to execute the true potential of PSO. Here, schemes 2 and 3 offer a highly improved stego image quality with cumulated tables to form T needed for the re-transformation. And scheme 1 provides a higher security of the stego image compared to DCTIASMTT with an acceptable PSNR value and smaller T size. Acknowledgments. This work was supported by National Natural Science Foundation of China (No. 60972105) and Natural Science Foundation Project of CQ CSTC (No.2009BB2210).
References 1. Bender, W., Gruhl, D., Morimoto, N., Lu, A.: Techniques for data hiding. IBM Systems Journal 35(3-4), 313–336 (1996) 2. Li, X., Wang, J.: A steganographic method based upon JPEG and particle swarm optimization algorithm. Information Sciences 177, 3099–3109 (2007)
220
F.H. Rabevohitra and J. Sang
3. Bhattacharyya, D., Dutta, J., Das, P., Banyopadhyay, S.K., Kim, T.-h.: Discrete cosine Transformation based image authentication and secret message transmission scheme. In: First International Conference on Computational Intelligence, Communication Systems and Networks (2009) 4. Blondin, J.: Particle Swarm Optimization: A tutorial (September 4, 2009) 5. Kennedy, Eberhart, R.C.: Swarm Intelligence. Morgan Kaufmann Publishers, San Francisco (2001) ISBN: 1-55860-595-9 6. Chang, C.C., Chen, T.S., Chung, L.Z.: A steganographic method based upon JPEG and quantization table modification. Information Science 141, 123–138 (2002) 7. Parsopoulos, K.E., Vrahatis, M.N.: Particle Swarm Optimization and Intelligence: Advance and Applications. Information Science (2010) 8. Fazli, S., Kiamini, M.: A High Performance Steganographic Method Using Jpeg and PSO Algorithm. In: IEEE International Multitopic (December 24, 2008) 9. Fridrich, J.: Steganography in Digital Media Principles, Algorithm, and Applications. Cambridge University press, Cambridge (2010)
Numerical Integration Method Based on Particle Swarm Optimization Leila Djerou1 , Naceur Khelil2 , and Mohamed Batouche3 1
2 3
LESIA Laboratory, Mohamed Khider University at Biskra, Algeria [email protected] Laboratory of applied Mathematics, Mohamed Khider University at Biskra, Algeria [email protected] Computer Science Departement CCIS-King Saud University, Riyadh Saudi Arabia [email protected]
Abstract. In this paper, a novel numerical integration method based on Particle Swarm Optimization (PSO) was presented. PSO is a technique based on the cooperation between particles. The exchange of information between these particles allows to resolve difficult problems. This approach is carefully handled and tested with some numerical examples. Keywords: Numerical trapezoidal rule.
1
integration,
Particle
Swarm
optimization,
Introduction
Solving numerical integration is an important question in scientific calculations and engineering. As is well known, that for a partition X 1 of [a, b] and a function f : x ∈ [a, b] −→ R bounded on the interval [a, b], is integrable, if and only N if, ∀ε > 0, ∃X (partition) over [a, b] s.t. i=0 (Li − li )(xi − xi−1 ) < ε, where Li = sup[xi−1 xi ] f (x) and li = inf[xi−1 xi ] f (x). Therefore, the purpose of this problem is to find a partition X of [a, b] that returns (in a certain manner) N the quantity i=0 (Li − li )(xi − xi−1 ) the smallest possible. The quality of the result depend on the choice of X. How to choose the best partition? To do this, conceptually, we would like to select the partition using particle swarm optimization. This paper is organized as follows. In Section 2, a formulation adapted to the strategy of particle swarm optimization and the construction of an algorithm to generate the different agents in a swarm. The Section 3 exposes some essential examples to show how the PSO algorithm can lead to a satisfactory result for numerical integration. The comments and conclusion are made in Section 4. 1
A partition X is a finite set of points : a = x0 < x1 < · · · < xN −1 < xN = b.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 221–226, 2011. c Springer-Verlag Berlin Heidelberg 2011
222
2
L. Djerou, N. Khelil, and M. Batouche
Overall Description Strategy of Particle Swarm Optimization
Recently, a new stochastic algorithm has appeared, namely ’particle swarm optimization’ PSO. The term ’particle’ means any natural agent that describes the ‘swarm’ behavior. The PSO model is a particle simulation concept, and was first proposed by Eberhart and Kennedy [2]. Based upon a mathematical description of the social behavior of swarms, it has been shown that this algorithm can be efficiently generated to find good solutions to a certain number of complicated situations such as, for instance, the static optimization problems, the topological optimization and others [3]-[4]-[6]-[7]. Since then, several variants of the PSO have been developed [8]-[9]-[10]-[11]-[12]-[13]-[14]. It has been shown that the question of convergence of the PSO algorithm is implicitly guaranteed if the parameters are adequately selected [15]-[16]-[4]. Several kinds of problems solving start with computer simulations in order to find and analyse the solutions which do not exist analytically or specifically have been proven to be theoretically intractable. The particle swarm treatment supposes a population of individuals designed as real valued vectors - particles, and some iterative sequences of their domain of adaptation must be established. It is assumed that these individuals have a social behavior, which implies that the ability of social conditions, for instance, the interaction with the neighbourhood, is an important process in successfully finding good solutions to a given problem. The strategy of the PSO algorithm is summarized as follows: We assume that each agent (particle) i can be represented in a N dimension space by its current position Xi = (xi1 , xi2 , · · · , xiN ) and its corresponding velocity. Also a memory of its personal (previous) best position is represented by, Pi = (pi1 , pi2 , · · · , piN ) called (pbest), the subscript i range from 1 to s, where s indicates the size of the swarm. Commonly, each particle localizes its best value so far (pbest) and its position and consequently identifies its best value in the group (swarm), called also (sbest) among the set of values (pbest). The velocity and position are updated as. k+1 k = wij vij + c1 r1k [(pbest)kij − xkij ] + c2 r2k [(sbest)kij − xkij ] . vij
(1)
k+1 xk+1 = vij + xkij . ij
(2)
, vik+1 are the position and the velocity vector of particle i respectively where xk+1 i at iteration k + 1, c1 and c2 are acceleration coefficients for each term exclusively situated in the range of 2–4, wj is the inertia weight with its value that ranges from 0.9 to 1.2, where as r1 , r2 are uniform random numbers between zero and one. For more details, the double subscript in the relations (1) and (2) means that the first subscript is for the particle i and the second one is for the dimension j. The role of a suitable choice of the inertia weight wj is important in the success of the PSO. In the general case, it can be initially set equal to its maximum value,
Numerical Integration Method Based on Particle Swarm Optimization
223
and progressively we decrease it if the better solution is not reached. Too often, in the relation (1), vij is replaced by vij /σ where σ denotes the constriction factor that controls the velocity of the particles. This algorithm is successively accomplished with the following steps [17]-[18]-[19]: 1. Set the values of the dimension space N and the size s of the swarm (s can be taken randomly). 2. Initialize the iteration number k (in the general case is set equal to zero). 3. Place every agent between a and b; arrange them in ascending sequence respectively. There are N +2 nodal points and N +1 segments, then calculate the fitness values at the N + 1 segments. The fitness is defined as: f (i) =
N +1
(Lij − lij )(xij − xij−1 ) .
(3)
j=1
If the termination condition is met, then stop (The termination condition is defined as: choose an ε which is very close to 0, if the minimum fitness value is less than εthen stop), choose the optimum solution X∗ (a = x∗0 < x∗1 < · · · < x∗N < x∗N +1 = b) and then a
b
f (x)dx
N +1
f (xj )(x∗j − x∗j−1 ) .
(4)
j=1
Otherwise, continue. 4. Each agent must be updated by applying its velocity vector and its previous position using (2). 5. Repeat the above step (3, 4 and 5) until convergence criterion is reached. The PSO algorithm is applied, with parameter setting (Table 1). Table 1. Parameters Setting to generate the PSO Algorithm for this study Example1 Example2 Population Size 21 Number of Iterations 500 Acceleration Coefficients: c1 and c2 0.5 Inertial Weight 1.2 to 0.4 Desired Accuracy 10−5
21 600 0.5 1.2 to 0.4 10−7
To validate the feasibility and validity of the algorithm for numerical integration, here are some simulation examples.
224
3
L. Djerou, N. Khelil, and M. Batouche
Examples
These examples can be viewed as typical cases which provide a good illustration. We note that, the accuracy of results depends manifestly to success of particles in the swarm to locate the best points. For easy interpretation, the numerical results evaluated by PSO algorithm, and those obtained by the trapezoidal rule have been compared. The best partition generated 5 dx by PSO are displayed in Tables (Table 2) in the cases N = 5 for −5 1+x 2 and (Table 3) N = 7 for 4 −x 400x(1 − x)e dx. 0 3.1
Example 1
The exact numerical value of the integral pso
5
dx −5 1+x2
is 2.7468. Here using PSO,
let N=5, Xi = (−5 = xi0 , xi1 , xi2 , xi3 , xi4 , xi5 , xi6 = 5), we find the error 1.6420 · 10−7 , as seen in Table (Table 2). Table 2. A partition X∗ describing the best partition X generated by PSO algorithm for the example 1 i
X∗
f(X∗ )
|x∗j − x∗j−1 |
0 1 2 3 4 5 6
-5 -3.1000 -1.5000 0.0000 2.0000 3.2500 5.0000
0.094251 0.307690 1.000000 0.200000 0.086486 0.038462
1.9000 1.6000 1.5000 2.0000 1.2500 1.7500
5
6 j=1 f (xj )(x∗j − x∗j−1 ) = 0.094251 · 1.9000 + 0.307690 · 1.6000 + 1.0000 · 1.5000 + 0.20000 · 2.0000 + 0.086486 · 1.2500 + 0.038462 · 1.7500 = 2.7468 The error using the trapezoidal rule for N = 5 is 0.26988 dx −5 1+x2
3.2
Example 2
The exact numerical value of the integral
4 0
400x(1 − x)e−x dx is 1.0735. Here pso
using PSO, let, N = 7 Xi = (0 = xi0 , xi1 , xi2 , xi3 , xi4 , xi5 , xi6 , xi7 , xi8 = 4), we find the error 4.1683 · 10−7 , as seen in Table (Table 3 ), 4 8 400x(1 − x)e−x dx j=1 f (xj )(x∗j −x∗j−1 ) = 45.2940·0.34652+30.0970· 0 0.23900 − 9.8074 · 0.64908 − 14.653 · 0.76540 − 2.1595 · 1.79000 − 2.0152 · 0.05000 − 1.6922 · 0.12486 − 1.6102 · 0.035140 = 1.0731. The error using the trapezoidal rule for N=80 is 8.2775 · 10−2 (incomparable!).
Numerical Integration Method Based on Particle Swarm Optimization
225
Table 3. A partition X∗ describing the best partition X generated by PSO algorithm for the example 2
4
i
X∗
f(X∗ )
|x∗j − x∗j−1 |
0 1 2 3 4 5 6 7 8
0.00000 0.34650 0.58552 1.23460 2.00000 3.79000 3.84000 3.96490 4.00000
45.2940 30.0970 -9.8074 -14.653 -2.1595 -2.0152 -1.6922 -1.6102
0.34652 0.23900 0.64908 0.76540 1.79000 0.05000 0.12486 0.03514
Conclusion
The particle swarm optimization is used to investigate the best integrating points. Some good results are obtained by using the specific PSO approach. It is now known that the PSO scheme is powerful, and easier to apply specially for this type of problems. Also, the PSO method can be used directly and in a straightforward manner.
Acknowledgement This work was sponsored, in part, by the MERS (Minist`ere de l’Enseignement et de la recherche Scientifique): Under the contract No B*0142/0/0016.
References 1. Wang, X.-h., et al.: Numerical Integration Study Based on Triangle Basis Neural Network Algorithm. Journal of Electronics and Information Technology 26(3), 394– 399 (2004) 2. Eberhart, R.C., Kennedy, J.: A new optimizer using particles swarm theory. In: Sixth International Symposium on Micro Machine and Human Science, Nagoya, Japan, pp. 39–43 (1995) 3. Parsopoulos, K.E., Vrahatis, M.N.: Modification of the Particle Swarm Optimizer for Locating all the Global Minima. In: Kurkova, V., et al. (eds.) Artificial Neural Networks and Genetic Algorithms, pp. 324–327. Springer, New York (2001) 4. Parsopoulos, K.E., et al.: Stretching technique for obtaining global minimizers through particle swarm optimization. In: Proc. of the PSO Workshop, Indianapolis, USA, pp. 22–29 (2001) 5. Parsopoulos, K.E., et al.: Objective function stretching to alleviate convergence to local minima. Nonlinear Analysis TMA 47, 3419–3424 (2001) 6. Fourie, P.C., Groenwold, A.A.: Particle swarms in size and shape optimization. In: Proceedings of the International Workshop on Multi-disciplinary Design Optimization, Pretoria, South Africa, August 7-10, pp. 97–106 (2000)
226
L. Djerou, N. Khelil, and M. Batouche
7. Fourie, P.C., Groenwold, A.A.: Particle swarms in topology optimization. In: Extended Abstracts of the Fourth World Congress of Structural and Multidisciplinary Optimization, Dalian, China, June 4-8, pp. 52–53 (2001) 8. Eberhart, R.C., et al.: Computational Intelligence PC Tools. Academic Press Professional, Boston (1996) 9. Kennedy, J.: The behaviour of particles. Evol. Progr. VII, 581–587 (1998) 10. Kennedy, J., Eberhart, R.C.: Swarm Intelligence. Morgan Kaufmann Publishers, San Francisco (2001) 11. Shi, Y.H., Eberhart, R.C.: Fuzzy adaptive particle swarm optimization. In: IEEE Int. Conf. on Evolutionary Computation, pp. 101–106 (2001) 12. Shi, Y.H., Eberhart, R.C.: A modified particle swarm optimizer. In: Proc. of the 1998 IEEE International Conference on Evolutionary Computation, Anchorage, Alaska, May 4-9 (1998) 13. Shi, Y.H., Eberhart, R.C.: Parameter selection in particle swarm optimization. In: Porto, V.W., Waagen, D. (eds.) EP 1998. LNCS, vol. 1447, pp. 591–600. Springer, Heidelberg (1998) 14. Clerc, M.: The swarm and the queen: towards a deterministic and adaptive particle swarm optimization. In: Proceedings of the 1999 IEEE Congress on Evolutionary Computation, Washington DC, pp. 1951–1957 (1999) 15. Eberhart, R.C., Shi, Y.: Parameter selection in particle swarm optimization. In: Porto, V.W. (ed.) (1998) 16. Cristian, T.I.: The particle swarm optimization algorithm: convergence analysis and parameter selection. Information Processing Letters 85(6), 317–325 (2003) 17. Zerarka, A., Khelil, N.: A generalized integral quadratic method: improvement of the solution for one dimensional Volterra integral equation using particle swarm optimization. Int. J. Simulation and Process Modelling 2(1-2), 152–163 (2006) 18. Zerarka, A., Soukeur, A., Khelil, N.: The particle swarm optimization against the Runge’s phenomenon: Application to the generalized integral quadrature method. International Journal of Mathematical and Statistical Sciences 1(3), 171–176 (2009) 19. Khelil, N., et al.: Improvement of Gregory’s formula using Particle Swarm Optimization. In: The proceeding of International Conference on Computer and Applied Mathematics, vol. 58, pp. 940–942 (2009)
Identification of VSD System Parameters with Particle Swarm Optimization Method Yiming Qiu, Wenqi Li, Dongsheng Yang, Lei Wang, and Qidi Wu School of Electronics and Information Engineering, TongjiUniversity, Shanghai 200092, China [email protected], [email protected], [email protected], [email protected]
Abstract. A VSD system, which consists of an inverter & an induction motor, is now widely used in all kinds of application. But from the view point of an end user, neither the motor parameters in the mathematics model nor the vector controller structure are known. In this paper a PSO algorithm is programmed with IEC61131-3 language to estimate the parameters for the VSD system, based on the hardware of a vector controlled inverter, in order to reach the similar dynamic performance as a DC motor system. The PSO algorithm could be a kind of alternative approach of present parameter identification functions, for its requirements on the speed of CPU and volume of memory are low, while it converges quickly. It’s especially helpful for the adjustment of complicated control system, when the technical requirements are clear & measurable. Keywords: PSO, VSD, Induction Motor, Parameter Identification.
1 Introduction In recent years, instead of DC motor, induction motor became more popular in a high precise and high performance transmission system, because of its simple, reliable, and robust structure. In order to get the similar performance as a DC system, for field oriented vector control, a precise motor model & vector control structure model are the prerequisite for high performance. But in an actual AC VSD system, these two models are just like black box to the user, which limits the actual performance of the system. There are lots of suppliers, which produce vector-controlled inverter with the latest CPU & DSP technology. About the control structure, it is really difficult for someone else, except the designer himself, to use existing mathematical methods to make an accurate description, because it is not only vector control method, but also a combination of feed-forward, feed-back, interpolation, compensation and other engineering methods. Being a user, it is impossible to know the actual control algorithm. So in most cases, the internal mathematical model and the control algorithm of the inverter are complete “Black Box”, which input can be changed, which output can be observed, but the internal is invisible. There are differences between the parameters in the nameplate and the real motor parameters too. Because most induction motors are originally designed for open-loop applications. So there is no concern on the characteristics, and in the nameplate only Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 227–233, 2011. © Springer-Verlag Berlin Heidelberg 2011
228
Y. Qiu et al.
rated frequency and synchronous speed are marked, instead of the rated speed (or rated slip). In the same time, there are lots of specially designed motors without detailed motor parameters to prevent a copy from the competitors. Because of the material differences in the manufacturing process, there could be a deviation between the real motor parameter and the designed value; Before this study work, several kinds of motor parameter identification methods have been discussed already. Most scholars finished their identification of the motor mathematical model in a pure simulation environment, compared recognition results with the "precision motor parameters", and compared a variety of different identification methods on identification value, error, identification rate, to prove the validity of the algorithm [1]. Or first put different forms of voltage and current signals on a motor, and detected the motor voltage & current, then established the motor mathematical model, put the same forms of voltage and current signals to the model, and measured the output response, which should be similar to the measured value for the tested motor if the motor parameters were right. The recognition results were similar to the induction motor parameters obtained from the standard way, which is to perform a locked rotor and a no-load test [2]. All these studies only focused on the motor itself without considering the function of frequency inverter. For end users, the combination of motor and frequency inverter is significantly to be treated as a black box together. Based on the existing hardware and software, a particle swarm optimization algorithm is introduced in this paper to make iterative searching for the correct parameters for the VSD system, by comparing the performance to a DC motor system. This method is doubtless to be a rare substitute of the original inverter functions.
2 Particle Swarm Optimization Algorithm [3][4] Particle Swarm Optimization (PSO) is a population based stochastic optimization technique developed by Dr. Eberhart and Dr. Kennedy in 1995, inspired by social behavior of bird flocking. In PSO, all of particles have fitness values which are evaluated by the fitness function to be optimized, and have velocities which direct the flying of the particles. The particles fly through the problem space by following the current optimum particles. PSO is initialized with a group of random particles (solutions) and then searches for optima by updating generations. After each time of iteration, every particle is updated by following two "best" values. The first one is the best solution (fitness) it has achieved so far. (The fitness value is also stored.) This value is called pbest. Another "best" value, which is tracked by the particle swarm optimizer, is the best value, obtained so far by any particle in the population. This best value is a global best and called gbest. After finding the two best values, the particle updates its velocity and position with following equation (1) and (2): Vik (t + 1) = ω ⋅ Vik (t ) + c1 ⋅ rand1 ( pik best (t ) − xik (t )) + c2 ⋅ rand 2 ( g kbest (t ) − xik (t )) .
xik (t + 1) = xik (t ) + Vik (t + 1)
.
(1) (2)
Vik(t+1)is the particle’s velocity, xik(t+1)is the current particle’s position. pikbest(t) and gkbest(t) are defined as stated before. ω is weighting factor c1 c2 are learning
, ,
Identification of VSD System Parameters with Particle Swarm Optimization Method
229
∈
factors, rand1&rand2 are two random number between (0,1). Vik(t+1) [-Vmax,Vmax], Particles' velocities on each dimension are clamped to a maximum velocity Vmax. If the sum of accelerations would cause the velocity on that dimension to exceed Vmax, then the velocity on that dimension is limited to Vmax. xik(t+1) [-xmax, xmax], Particles' positions should be in a certain range, which might be fit to their physic value.
∈
3 Inverter Parameters and Motor Nameplate Parameters [5] [6] An inverter 09.F5.A1D-2BDA from company KEB is used in this research. In the application manual, a standard vector control algorithm is described. Its performance has been proved in lots of application in last decade. But the internal control algorithm is really magical, for only stator resistor Rs and leakage inductance LΣ are needed for the motor equivalent model. In closed loop control mode, even these two parameters are not so sensible. In order to reach an excellent performance, the right motor nameplate data is needed. Table 1. Nameplate parameters of an induction motor in this research
( V)
Urated 220
()
Irated A 0.87
frated 50
(Hz)
( )
nrated rpm 3000
cos(phi) 0.84
(kw)
Prated 0.18
Normally this kind of nameplate is not enough for a VSD system. We can only treat the following three parameters Prated, Irated, frated as precise value. Obviously the listed value 3000rpm is only a synchronous speed at rated frequency. The list value 220V is only the voltage of net. Cos(phi) will influence the magnetizing current. And the inverter parameter, Field weakening factor F2, will influence the performance of VSD system in field weakening zone. All these 4 parameters are very sensitive for the performance of a VSD system. There are unknown relationships between them. An auto-identification of these 4 parameters will be valuable in engineering level. Table 2. VSD system parameters to be identified No. 1 2 3 4
Parameter nrated Urated cos(phi)
Physical range 1… 64000 rpm 120…830v 0.50…1.00
Identified range 2500…2999 120…300 50…100
F2
0.01…3.00
1…300
4 Objective Functions We know that any power electric drive systems are subject to the basic equation of motion:
Me − M L =
J dω np dt
.
(3)
230
Y. Qiu et al.
Only with a complete decoupling control, one induction motor can achieve the comparable performance as DC motor. Therefore the speed characteristics of a DC motor can be used to measure the fitness value of present motor parameters. We keep the same ramp time for accelerating and decelerating, if the following conditions can be fitted to a certain level, we can say that the system model is almost fully decoupled. Condition 1: the speed deviation at accelerating & decelerating should be as small as possible. n
Fn =
∑ (n i =1
set
(i ) − nact (i ) )
2
n
. (4) Condition 2: the actual motor torque should be constant with the constant accelerating rate up to field weakening range. And the ripple of actual torque should be as small as possible.
∑ (M n
FM =
i =1
(i ) − M act )
2
act
n
. (5) Condition 3: The sum of accelerating torque and decelerating torque should be two times of the friction torque. This can be set manually to improve the precision of the identification.
FMf =
M acc + M dec − M/ f 2
. Combining these 3 conditions, we get following objective function.
F = F ( Fn , FM , FMf )
.
Fig. 1. Optimized running curve.(A: torque, B: current, C: set-speed, D: actual speed)
(6)
(7)
Identification of VSD System Parameters with Particle Swarm Optimization Method
231
In Fig.1 we can find a running curve of an AC VSD system, which is comparable with a DC motor system. In this case, the objective function value will be very low.
5 Test System&Algorithm The test system consists of an induction motor, a vector-control inverter, a motion controller, and a desktop PC. The PSO algorithm is programmed in a motion controller with IEC61131-3. After each flying, the new motor parameters are sent from the motion controller to inverter, and an auto-tuning of the control structure is activated according to these motor data. Then the motion controller sends out commands to the inverter to control the motor to follow a designed speed profile, accelerating, running constant and
Start
Initialize particle
Download parameter to inverter Activate motor model Run the speed profile
Read out speed, torque & current Calculate the fitness If the fitness value is better than pBest then set current value as the new pBest
i:=i+1;
i>popsize?
N
Y Choose the particle with the best fitness value of all as the gBest
i:=1; Calculate particle velocity according equation (1) Update particle position according equation (2)
N
maximum iterations or minimum error criteria is attained Y End
Fig. 2. Procedure of PSO
Save in PC
232
Y. Qiu et al.
decelerating to zero speed. The actual values are sent back to motion controller to calculate the fitness value. The PC reads out and records the data of each particle after each flying through MODBUS TCP with100BASE-TX. The position, velocity, fitness value, pbest of each particle and gbest are included.Procedure of PSO based control algorithm is listed in Fig.2.
6 Identification and Results We tried PSO algorithm to identify the following 4 parameters of this motor: nrated, Urated, cos(phi) and field weakening factor F2. 17 particles were used. After 11 times of iteration, the objective value was acceptable with gbest [2543,206,85,20]. Table 3. Nameplate parameter & identified value
Parameter Nameplate Identified
nrated(rpm) 3000 2543
Urated(V) 220 206
cos(phi) 0.84 0.85
F2 1.2(Default) 0.2
When we put the identified parameter value into the inverter, and run the VSD system to follow the defined speed profile, the dynamical performance can meet the defined conditions of objective functions. It’s closed to the performance of a DC system. We optimized the objective functions and PSO algorithm during the identification, and the motor became hot. So these values are fit for a hot motor. This is what we need for a real application. The definition of objective functions and the PSO algorithm were proved. 300
2950 2900 2850
255
2800 2750 2700
210
2650 2600
165
2550 2500 2450
120 0
2
4
6
8
10
12
0
Fig. 3. Parameter_nrated
2
4
6
8
10
12
10
12
Fig. 4. Parameter_Urated 300
100
250
90
200
80
150 70
100
60
50
50
0 0
2
4
6
8
10
Fig. 5. Parameter_cos(phi)
12
0
2
4
6
8
Fig. 6. Parameter_F2
Identification of VSD System Parameters with Particle Swarm Optimization Method
233
Fig.3 to Fig.6 shows the 4 dimensions of the positions of 17 particles&gbest particle after each time of iteration.During the optimization, we found that the performances with several pbest solutions were quite closed to final solution. They could be accepted by most application too.
7 Summary In this paper, PSO algorithm is used to identify the VSD system parameters. The motor and inverter both are treated as a black box. By comparing the dynamic performance with DC motor characteristics in following a given speed profile, the fitness of motor nameplate parameters and system parameter F2 are calculated. PSO algorithm is verified. It could be a new optimization method for parameter-identificationin an unknown system.
Acknowledgments This research is sponsored by National Natural Science Foundation of China (NSFC)(70871091, 61075064, 61034004), Ph.D. Programs Foundation of Ministry of Education of China (20100072110038), Foundation of the Ministry of Education of China for Returned Scholars, Program for New Century Excellent Talents in University of Ministry of Education of China.
References 1. Picardi, C., Rogano, N.: Parameter identification of induction motor based on particle swarm optimization. In: International Symposium on Power Electronics, Electrical Drives, Automation and Motion, SPEEDAM 2006, pp. 968–973 (2006) 2. Karimi, A., Choudhry, M.A., Feliachi, A.: PSO-based Evolutionary Optimization for ParameterIdentification of an Induction Motor. In: 2007 39th North American Power Symposium (NAPS 2007), pp. 659–664 (2007) 3. Kennedy, J., Eberhart,R.: Particle Swarm Optimization. In: Proceedings of IEEE International Conference on Neural Networks, Perth, pp. 1942–1948 (1995) 4. Wu, Q.D., Wang, L.: Intelligent Particle Swarm Optimization Algorithm Research and Application. Jiangsu Education Publishing House, Nanjing (2005) (in Chinese) 5. Boshi, C.: Electric Drive & Automatic Control System. Department of Automation. Shanghai University of Industrial (1991) (in Chinese) 6. Brinkmann, K.E.: GmbH: Application Manual of COMBIVERT F5-MULTI / SERVO 2.8, Art.Nr.: 00.F5.MEA-K280 (2005)
PSO-Based Emergency Evacuation Simulation Jialiang Kou, Shengwu Xiong*, Hongbing Liu, Xinlu Zong, Shuzhen Wan, Yi Liu, Hui Li, and Pengfei Duan School of Computer Science and Technology, Wuhan University of Technology, 122 Luoshi Road, Wuhan, Hubei, China, 430070 [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
Abstract. The Emergency Evacuation Simulation (EES) has been increasingly becoming a hotspot in the field of transportation. PSO-based EES is a good choice as its low computation complexity compared with some other algorithms, especially in an emergency. The selection of fitness function of each particle in PSO is a key problem for EES. This paper will introduce some fitness functions for EES and present a new fitness function called TripleDistance Safe Degree (TDSD). Through theoretical analysis and experimental validation, the TDSD is proved to be much better than other fitness functions introduced in this paper. Keywords: PSO; Emergency Evacuation Simulation; Triple-Distance Safe Degree.
1 Introduction Emergency evacuation simulation (EES) has been increasingly becoming a hotspot [1] [2] [3] in the field of transportation, especially recent ten years, with occurrences of more and more emergency incidents, such as September 11 Attacks [4], Wenchuan Earthquake [5], Hurricane Katrina [6] and so on. PSO is originally proposed by Kennedy, Eberhart and Shi [7] [8] [9]. The PSO is a kind of optimization method by iteratively improving candidate solutions according to given fitness function. On the other hand, the PSO could be used as a simulation method to simulate a social or natural procedure in real life. There have been some researches on PSO based EES at recent years. Yang et al. [10] [11] proposed a new emergency evacuation model based on Multi-Agent framework and Linear Weight Decreasing PSO to simulate human behavior during emergency evacuation in continuous indoor small space. Yusoff et al. [12] utilized a discrete PSO to simulate evacuation. Izquierdo et al. [13] established a model for evacuation time estimation and behavioral patterns assessment. Actually, it *
Corresponding author.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 234–241, 2011. © Springer-Verlag Berlin Heidelberg 2011
PSO-Based Emergency Evacuation Simulation
235
is a simulation and assessment system. Although the previous works have investigated some problems on PSO based EES, neither of them studied the fitness function systematically. On the basis of the former studies of the predecessors, this paper will briefly introduce a kind of PSO-based EES method and concentrate on the fitness selection problem of PSO based EES. After analyzing two sorts of fitness function, this paper presents a novel fitness function called TDSD. The structure of this paper is as follows. This paper starts with introducing the situation of PSO-based EES researches and the main focus of this paper. And then, it introduces the PSO-based EES method employed in this paper. In the third part, it focuses on the fitness selection problem and proposes a completely new fitness function called TDSD. At last, the TDSD is tested through experiments and the conclusion is drawn out.
2 The Abstractions and Representations 2.1 The Scenario A stadium scenario is selected as the scenario for this study. The stadium is abstracted as an undirected graph. The edges of the graph represent the roads inside and outside the stadium. The vertexes of the graph represent the intersections of the roads. Fig.1 shows the stadium scenario.
Fig. 1. The scenario of a stadium. The blue lines represent the roads inside and outside the stadium. The black dots represent the intersections of the roads. The green dots represent the exits. There are 8 exits in this scenario. The red dots represent the danger points.
2.2 The Representation of Evacuation Solution The evacuation solution is represented as a matrix shown as equation 1. The jth column of the matrix represents the jth person’s route. The ith row represents the ith time step. The vij represents the position of the jth person on the ith time step. The Rj represents the jth person’s route. The m is the number of time steps of the last person evacuated from the stadium. The n is the total number of people.
236
J. Kou et al.
⎡v11 v12 v13 " " v1n ⎤ ⎢v ⎥ ⎢ 21 v22 v23 " " v2 n ⎥ ⎢v v v " " v3n ⎥ S = ⎢ 31 32 33 ⎥ = [ R1 # # % % # ⎥ ⎢# ⎢# # # % % # ⎥ ⎢ ⎥ ⎢⎣vm1 vm 2 vm 3 " " vmn ⎥⎦
R2 " Rn ]
(1)
2.3 The PSO Based Emergency Evacuation Simulation Each person is seen as a particle in PSO. The fitness of a particle represents the safe degree of a person. The main procedure of the PSO for evacuation simulation is as follows: 1. 2. 3. 4. 5.
Generate the danger points randomly. Set the exits of the stadium. Set the study factor and inertia weight of PSO. Initialize each particle’s position randomly. Initialize the real speed of each person randomly. The real speed refers to the real running speed in evacuation here. 6. Initialize the velocity of each particle randomly. 7. Do the following loop, till all the particles arrive at the exits. Function PSO_EES() For t=1:M %M is the maximum number of time steps For i=1:N %N is the number of particles If RemainingDistance(i)>MinRemainingDistance Keep current velocity unchanged; Keep current position unchanged; RemainingDistance(i)=RemainingDistance(i) RealSpeed(i);
-
RealSpeed(i)=CalculateRealSpeed(); Else Change velocity according to PSO iteration formulas; Change Position according to PSO iteration formulas; RemainingDistance(i)=RemainingDistance(i)RealSpeed(i); RemainingDistance(i)=RemainingDistance(i)+ Distance(current_position,next_position); RealSpeed(i)= CalculateRealSpeed(); End
PSO-Based Emergency Evacuation Simulation
237
If Fitness(Position(i))> Fitness(Local_Best_Position(i)) Local_Best_Position(i)=Position(i); End End For i=1:N If Fitness(Local_Best_Position(i))> Fitness(Global_Best_Position) Global_Best_Position= Local_Best_Position(i); End End For i=1:N Position_Record(t,i)=Position(i); End
For i=1:NV % NV is the number of vertexes NPV(i)=0; End QuitFlag=1; For i=1:N If Position(i) is not one of Exits NPV(Position(i))=NPV(Position(i))+1; ExitFlag=0; End End If QuitFlag==0 Quit(); End End End 8. Record the generated evacuation solution.
3 The Fitness Functions of PSO for EES The selection of fitness function for EES is the key problem which affects the validity of the results of the simulation. In other words, the results of simulation how close to the reality is largely depended on the fitness function.
238
J. Kou et al.
3.1 The Distance to the Danger Point (DDP) The Distance to the Danger Point refers to the distance between the person and the nearest danger point to the person. The definition of the DDP [14] is as equation 2.
DDP = min
(
(X
p
) (
− X Di + YP − YDi
Fitness =
( DDP )
))
NDP
(2) i =1
0.8
(3) 300 The NDP means the Number of Danger Points. Xp and Yp are the horizontal and vertical coordinate of position of the person. XDi and YDi are the horizontal and vertical coordinate of the ith danger point. Obviously, the lower the DDP, the lower the fitness is. But, the lower the DDP, the more dangerous the person is? As shown in Fig.2, hypothesize that there is only one exit Exit4 and one danger point Intersection369 in the stadium. Although the Intersection272 is farther than the Intersection371 away from the danger point, the Intersection371 is safer than the Intersection272. That is because that the Intersection371 is nearer than the Intersection272 to the Exit4. Obviously, it is not suitable to measure the safe degree just employing the DDP here.
Fig. 2. An example to validate the reliability of DDP
3.2 The Distance to the Exit (DE)
The Distance to the Exit means the distance between the person and the nearest exit to the person. The DE [13] is defined as equation 4. DE = min Fitness = 1 −
(
(X
p
) (
− X Ei + YP − YEi
))
NE
(4) i =1
DE , C is a constant larger than DE C
(5)
PSO-Based Emergency Evacuation Simulation
239
The NE means the Number of Exits. Xp and Yp are the horizontal and vertical coordinate of position of the person. XEi and YEi are the horizontal and vertical coordinate of the ith danger point. Obviously, the smaller the DE, the higher the fitness is. But, the smaller the DE, the safer the person is? As shown in Figure 3, there are two exits (Exit4 and Exit8) and only one danger point (the Intersection370). Assume that the distance between Exit4 and Intersection371 is the same as the distance between Exit8 and Intersection403. But, the Intersection371 is closer to the danger point than Intersection403. Thus, the Intersection371 is more dangerous than Intersection403. Clearly, it is not sensible merely to use DE to evaluate the safe degree in this example.
Fig. 3. An example to validate the reliability of DE
3.3 The Triple-Distance Safe Degree (TDSD)
Considering the distance relations between the exits, the danger points, the center point of the building and the person, the TDSD is defined as equation 6. ⎧ ⎪ 4 ⎪ Fitnessi = TDSDi = ( DCi / C ) ∗ 64 2 ∗ arccot ( DEi / C ) ∗ arctan ( DDPi / C ) , π ⎪ ⎪i = 1, 2," , NP ⎪ NE ⎪⎪ 2 2 ⎞ ⎛ ⎨ DEi = min ⎜ X Pi − X E j + YPi − YE j ⎟ ⎝ ⎠ j =1 ⎪ ⎪ NDP ⎪ DDP = min ⎛ X − X 2 + Y − Y 2 ⎞ i P D P D ⎜ ⎟ i k i k ⎪ ⎝ ⎠k =1 ⎪ 2 2 ⎪ ⎪⎩ DCi = X Pi − X C + YPi − YC
(
) (
(
(
)
) (
) (
(6)
)
)
C is a constant larger than DCi, DEi and DDPi. DCi is the distance between the ith person and the center point of the building. DEi is the minimum distance between the ith person and the exits. DDPi is the minimum distance between the ith person and the danger points. Xpi is the horizontal coordinate of the ith person. Ypi is the vertical coordinate of the ith person. XEj is the horizontal coordinate of the jth exit. YEj is the
240
J. Kou et al.
vertical coordinate of the jth exit. XDk is the horizontal coordinate of the kth Danger Point. YDk is the vertical coordinate of the kth Danger Point. Xc is the horizontal coordinate of the center point. Yc is the vertical coordinate of the center point. NP is the number of the people. NE is the number of the exits. NDP is the number of the danger points. Fitnessi is the fitness of the ith person. The TDSD is composed of three parts. The first part is about the distance to the center point (DC) of the building. The second part is an arc cotangent function which means the safe degree relative to the DE. With the increase of DE, the safe degree goes down. The third part is an arc tangent function which means the safe degree relative to the DDP. With the increase of DDP, the safe degree goes up. The fitness of the ith person is the product of the three parts. The name TDSD originates from the combination of the DC, the DE and DDP.
4 Experiment and Analysis As shown in Fig.1, there are 8 exits (Exit1 to Exit8) and 3 danger points (Intersection161, Intersection205 and Intersection367). As shown in Fig.4 (the left), through comparing the safe degree of 476 intersections generated by DE, DDP and TDSD with the real safe degree, it is proved that the TDSD curve could best match the real curve. As shown in Fig.4 (the right), the safe degree calculated by TDSD possess the smallest average deviation with the real value just 0.0080, much less than DDP (0.0517) and DE (0.1606). Obviously, TDSD is the best fitness function among the three types. The TDSD reveals the fact that the safe degree is not just relative with the center point, the danger points or the exits, but both of them.
Fig. 4. The left chart is the safe degree and the right chart is the deviation between the safe degree and the real value
5 Conclusion and Future Works This paper introduces a kind of PSO-based EES method and presents a completely new fitness function for EES. Through the comparison with other two kinds of fitness
PSO-Based Emergency Evacuation Simulation
241
functions in the scenario of a stadium, the TDSD is proved to meet the physical reality best in three type fitness functions. As the limitation of space, the correctness and feasibility of the TDSD in more scenarios is not discussed and tested. That will become the future direction of this study. Acknowledgements. This work was supported in part by the National Science Foundation of China under grant no. 40971233.
References 1. Church, R.L., Cova, T.J.: Mapping evacuation risk on transportation networks using a spatial optimization model. Transportation Research Part C: Emerging Technologies 8(16), 321–326 (2000) 2. Lämmel, G., Grether, D., Nagel, K.: The representation and implementation of timedependent inundation in large-scale microscopic evacuation simulations. Transportation Research Part C: Emerging Technologies 18(1), 84–98 (2010) 3. Xie, C., Turnquist, M.A.: Lane-based evacuation network optimization: An integrated Lagrangian relaxation and tabu search approach. Transportation Research Part C: Emerging Technologies 19(1), 40–63 (2011) 4. September 11 attacks, http://en.wikipedia.org/wiki/September_11_attacks 5. 2008 Sichuan earthquake, http://en.wikipedia.org/wiki/Wenchuan_earthquake 6. Katrina, H.: http://en.wikipedia.org/wiki/Katrina_Hurricane 7. Kennedy, J., Eberhart, R.: Particle Swarm Optimization. In: The 1995 IEEE International Conference on Neural Networks, pp. 1942–1948. IEEE, Piscataway (1995) 8. Kennedy, J.: The particle swarm: social adaptation of knowledge. In: The 1997 IEEE International Conference on Evolutionary Computation, pp. 303–308. IEEE, Piscataway (1997) 9. Shi, Y., Eberhart, R.: A modified particle swarm optimizer. In: The 1998 IEEE International Conference on Evolutionary Computation, pp. 69–73. IEEE, Piscataway (1998) 10. Yang, B., Wang, C., Huang, H., Li, L.: A Multi-Agent and PSO Based Simulation for Human Behavior in Emergency Evacuation. In: The 2007 International Conference on Computational Intelligence and Security, pp. 295–300. IEEE Computer Society, Piscataway (2007) 11. Yang, B., Wang, C., Li, L., Huang, H.: A Modified Particle Swarm Optimization-based Human Behavior Modeling for Emergency Evacuation Simulation System. In: The 2008 IEEE International Conference on Information and Automation, pp. 23–28. IEEE Computer Society, Piscataway (2008) 12. Yusoff, M., Ariffin, J., Mohamed, A.: An Improved Discrete Particle Swarm Optimization in Evacuation Planning. In: 2009 International Conference of Soft Computing and Pattern Recognition, pp. 49–53 (2009) 13. Izquierdo, J., Montalvo, I., Pérez, R., Fuertes, V.S.: Forecasting pedestrian evacuation times by using swarm intelligence. Physica A: Statistical Mechanics and its Applications 388(7), 1213–1220 (2009) 14. Zeng, S., Ma, X.Q., Liao, Y.F.: The Research of Evacuation Model in Urban Underground Business Buildings. Building Science 24(5), 27–32 (2008)
Training Spiking Neurons by Means of Particle Swarm Optimization Roberto A. V´ azquez1 and Beatriz A. Garro2 1
Intelligent Systems Group Faculty of Engineering - La Salle University Benjam´ın Franklin 47 Col. Condesa CP 06140 M´exico, D.F. 2 Center for Computing Research - IPN Av. Juan de Dios Batiz sn, Col. Nueva Industrial Vallejo, CP 07738 M´exico, D.F. [email protected], [email protected]
Abstract. Meta-heuristic algorithms inspired by nature have been used in a wide range of optimization problems. These types of algorithms have gained popularity in the field of artificial neural networks (ANN). On the other hand, spiking neural networks are a new type of ANN that simulates the behaviour of a biological neural network in a more realistic manner. Furthermore, these neural models have been applied to solve some pattern recognition problems. In this paper, it is proposed the use of the particle swarm optimization (PSO) algorithm to adjust the synaptic weights of a spiking neuron when it is applied to solve a pattern classification task. Given a set of input patterns belonging to K classes, each input pattern is transformed into an input signal. Then, the spiking neuron is stimulated during T ms and the firing rate is computed. After adjusting the synaptic weights of the neural model using the PSO algorithm, input patterns belonging to the same class will generate similar firing rates. On the contrary, input patterns belonging to other classes will generate firing rates different enough to discriminate among the classes. At last, a comparison between the PSO algorithm and a differential evolution algorithm is presented when the spiking neural model is applied to solve non-linear and real object recognition problems.
1
Introduction
James Kennedy and Russell C. Eberhart proposed the particle swarm optimization (PSO) algorithm in 1995 [11]. This algorithm is a method for combinatorial or numerical optimization problems. Several versions of this algorithm have been proposed in the last years; however, the principal characteristic of this algorithm is that it can optimize over non-linear and non-continuous search spaces. In addition, this PSO algorithm is based on the collective behavior of the bird flocking, fish schooling. This behavior consists on moving to another better place for eating or getting a better life. The PSO algorithm has been applied in a wide range of problems, including those related to the field of artificial neural networks (ANN). These types of algorithms are non-gradient approaches; this characteristic makes them a promising Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 242–249, 2011. c Springer-Verlag Berlin Heidelberg 2011
Training Spiking Neurons by Means of Particle Swarm Optimization
243
learning strategy for the training (adjusting the synaptic weights) of an ANN [12], [13] and [14]. Furthermore, the PSO algorithm has been applied to design automatically feed-forward neural networks; this includes the design of the best topology, the transfer function of each neuron and the synaptic weights [1]. One of the most common applications of an ANN is a pattern classification task. However, though these models have been applied to solve several pattern recognition problems, they have some constrains that limits their applicability in real-life problems, particularly during the design of the ANN. For that reason, it is mandatory to explore new ways of implementing ANN. Recently, a new type of neural model, called spiking neuron models, emerged. These models have been called the 3rd generation of artificial neural networks [2]. The spiking neuron models increase the level of realism in a neural simulation and incorporate the concept of time. They also have been applied in a wide range of areas from the field of computational neurosciences such as: brain region modeling, auditory processing [3], visual processing [4], robotics [5] and so on. Nonetheless, their application for solving pattern recognition problems is gaining popularity in the field of artificial intelligence. In [17], the authors described how a genetic algorithm can be used during the learning process of a spiking neural network; however, the model was not applied to perform a pattern recognition problem. In [16], the authors show how a spiking neural network can be trained by a quantum PSO and then applied to a string pattern recognition problem. In [18] the authors trained a spiking neural network using a PSO algorithm, and then it is applied in three pattern recognition problems; however, in each problem, the authors had to design the topology of the network. In [10,15,19], the authors shown how only one spiking neuron such as Leaky-Integrate-and-Fire and Izhikevich models [6,7] can be applied to solve different linear and non-linear pattern recognition problems. In this paper is shown how it is possible to apply a spiking neuron, trained with a PSO algorithm, in different linear and non-linear pattern recognition problems. Given a set of input patterns belonging to K classes, each input pattern is transformed into an input signal. After that, the spiking neuron is stimulated during T ms and the firing rate is computed. Once the synaptic weights of the neuron model were adjusted by the PSO algorithm, we expect that the input patterns which belong to the same class generate similar firing rate. On the contrary, patterns belonging to other classes generate firing rates different enough to discriminate among the classes. Finally, the proposed method is compared against the method described in [19] when the spiking neuron is applied to solve pattern recognition problems.
2
Spiking Neuron Model
A typical spiking neuron can be divided into three functionally distinct parts, called dendrites, soma, and axon. The dendrites play the role of the input device that collects signals from other neurons and transmits them to the soma. The soma is the central processing unit that performs an important non-linear
244
R.A. V´ azquez and B.A. Garro
processing step: if the total input exceeds a certain threshold, then an output signal is generated. The output signal is taken over by the output device, the axon, which delivers the signal (spike train) to other neurons. Since all spikes of a given neuron look alike, the form of the action potential does not carry any information. Rather, it is the number and the timing of spikes, which matter. In this paper we adopt the Izhikevich model C v˙ = k (v − vr ) (v − vt ) − u + I ifv ≥ vpeak then u˙ = a {b (v − vr ) − u} v ← c, u ← u + d
(1)
which has only 9 dimensionless parameters. Depending on the values of a and b, it can be an integrator or a resonator. The parameters c and d take into account the action of high-threshold voltage-gated currents activated during the spike, and affect only the after-spike transient behavior. v is the membrane potential, u is the recovery current, C is the membrane capacitance, vr is the resting membrane potential, and vt is the instantaneous threshold potential. The parameters k and b can be found when one knows the neuron’s rheobase and input resistance. The sign of b determines whether u is an amplifying (b < 0) or a resonant (b > 0) variable. The recovery time constant is a. The spike cutoff value is vpeak , and the voltage reset value is c. The parameter d describes the total amount of outward minus inward currents activated during the spike and affecting the after-spike behavior. A detail description of the model can be found in [6,7].
3
Proposed Method
It is important to point out that when the input current signal changes the response of the spiking neuron also changes, generating different firing rates. The firing rate is computed as the number of spikes generated in an interval of duration T divided by T . The neuron is stimulated during T ms with an input signal and fires when its membrane potential reaches a specific value generating an action potential (spike) or a train of spikes. The proposed method is inspired in the method described in [19]. We expect that patterns which belong to the same class generate similar firing rates and patterns, which belong to other classes generate firing rates different enough to discriminate among p the classes. Let D= xi , k i=1 be a set of p input patterns where k = 1, . . . , K is the class to which xi ∈ IRn belongs. First of all, each input pattern is transformed into an input signal I. The spiking neuron model is not directly stimulated with the input pattern xi ∈ IRn , but with an injection current I. Since synaptic weights of the model are directly connected to the input pattern xi ∈ IRn , the injection current generated with this input pattern can be computed as I = γ·x·w
(2)
where wi ∈ IRn is the set of synaptic weights of the neuron model and γ = 100 is a gaining factor which guarantees that the neuron will fire.
Training Spiking Neurons by Means of Particle Swarm Optimization
245
After that, the spiking neuron is stimulated using I during T ms and then the firing rate of the neuron is computed. With this information, the average firing rate AFR ∈ IRK of each class is computed. At last, the class of an input pattern x ˜ is determined by means of the firing rates as follows: K
cl = arg min (|AF Rk − f r|) k=1
(3)
where f r is the firing rate generated by the neuron model stimulated with the input pattern x ˜. The synaptic weights of the model, which are directly connected to the input pattern, determines the firing rate of the neurons. This means that our learning phases consist in generating the desired behavior by adjusting the synaptic weights of the neuron. The learning phase will be done by the particle swarm optimization algorithm.
4
Adjusting Synapses of the Neuron Model
Synapses of the neuron model w are adjusted by means of the PSO algorithm. As we already said, the PSO algorithm is a powerful and an efficient technique for optimizing non-linear and non-differentiable continuous space functions. This algorithm works with a population of particles xi that represent solutions (positions). Each particle changes its position with the time t. They are guided by the knowledge of the best particle from whole population and also by its own knowledge as so to search the optimums value. In this case, each one is guided by a velocity function that evolves a social component pg (the best particle of all) and a cognitive component pi (the best position of each particle). The velocity function limited to the range [vmin , vmax ] help to find the best positions in the search space. This function is shown in the next equation: vi (t + 1) = ωvi (t) + c1 r1 (pi (t) − xi (t)) + c2 r2 (pg (t) − xi (t))
(4)
where ω is the inertia weight [1, 0) that changes each iteration, c1 and c2 are acceleration coefficients; r1 ∼ U (0, 1) and r2 ∼ U (0, 1) are uniformly distributed random numbers called the craziness After that, each particle i has to update its new position computing by the next equation: xi (t + 1) = xi (t) + vi (t + 1)
(5)
Moreover, each possible solution is measured by means of fitness function in order to know its aptitude. It is desired that this solution be the optimums or the nearest to it. Finally, the PSO algorithm for the real version could be performed as follows: Given a population of xi ∈ IRD , i = 1, . . . , M individuals 1. Initialize the population at random. 2. Until a stop criteria is reached: (a) For each individual xi evaluate their fitness
246
R.A. V´ azquez and B.A. Garro
(b) For each (c) From all (d) For each and then
individual i, update its best position pi . individual i, update the best individual pg . individual i, compute the velocity update equation vi (t + 1) compute the current position xi (t + 1).
To find the synaptic weights that maximize the accuracy of the spiking neural model during a pattern recognition task, the next fitness function was proposed: f (w, D) = 1 − perf ormance(w, D)
(6)
where w are the synapses of the model, D is the set of input patterns and perf ormance(w, D) is a function which follows the steps described in above section and computes the classification rate given by the number of patterns correctly classified divided by the number of tested patterns.
5
Experimental Results
Several experiments were performed in order to evaluate the accuracy of the proposed method. Five of them were taken from the UCI machine learning repository [8]: iris plant, glass, diabetes, liver-bupa and wine datasets. In addition, another dataset was generated from a real object recognition problem [9]. The parameters for the Izhikevich neuron were defined as C = 100, vr = −60, vt = −40, vpeak = 35, k = 0.7, a = 0.03, b = −2, c = −50, and d = 100. The Euler method was used to solve the differential equation of the model with dt = 1. The parameter to compute input current I from the input pattern was set to θ = 100 with a duration of T = 1000. For the case of the particle swarm optimization algorithm, N P = 40, M AXGEN = 1000, V M AX = 4, V M IN = −4, c1 = 2, c2 = 2, XM AX = 10, XM IN = −10 and ω was varied in the range [0.95 − 0.4] throught the generations. The accuracy (classification rate) achieved with the proposed method was computed as the number of input patterns correctly classified divided by the total number of tested patterns. To validate the accuracy of the method 10 experiments over each dataset were performed. Something important to notice is Table 1. Average accuracy provided by the methods using different databases Dataset
Method using DE [19] Proposed method using PSO Tr. cr. Te. cr. Tr. cr. Te. cr. Wine 0.9796 0.8744 0.9782 0.8879 Iris plant 0.9933 0.9833 0.9933 0.97 Glass 0.8158 0.7411 0.8178 0.7457 Diabetes 0.8038 0.7371 0.7990 0.7619 Liver 0.7620 0.6870 0.7591 0.6754 Object rec. 1 0.9850 1 0.9950 Tr. cr = Training classification rate, Te. cr. = Testing classification rate.
Training Spiking Neurons by Means of Particle Swarm Optimization Spike raster (Wine)
200
200
150
150
Input pattern
Input pattern
Spike raster (Wine)
100
50
0 0
247
100
50
200
400
600
800
0 0
1000
200
time (ms)
400
600
800
1000
time (ms)
(a)
(b)
Fig. 1. Two of the experimental results obtained with the wine dataset. Notice that 3 different firing rates which correspond to 3 classes can be observed. Spike raster (Glass)
Spike raster (Glass) 150
Input pattern
Input pattern
150
100
50
0 0
200
400
600
800
100
50
0 0
1000
200
time (ms)
400
600
800
1000
time (ms)
(a)
(b)
Fig. 2. Two of the experimental results obtained with the glass dataset. Notice that 2 different firing rates which correspond to 2 classes can be observed. Spike raster (Object recognition) 100
80
80
Input pattern
Input pattern
Spike raster (Object recognition) 100
60
40
20
0 0
60
40
20
200
400
600
time (ms)
(a)
800
1000
0 0
200
400
600
800
1000
time (ms)
(b)
Fig. 3. Two of the experimental results obtained with the object recognition dataset. Notice that 5 different firing rates which correspond to 5 classes can be observed.
248
R.A. V´ azquez and B.A. Garro
that in each experiment the datasets were randomly split into two new partitions: 50% of the patterns for training and the remain for testing. Due to space only some of the experimental results achieved with the proposed method are shown in Fig 1 - Fig 3. As can be appreciated from these figures, the set of synaptic weights found with the PSO algorithm provokes that the spiking neuron generates almost the same firing rate when it is stimulated with input patterns from the same class. On the contrary, the spiking neuron generates firing rates different enough to discriminate among the different classes when it is stimulated with input patterns which belong to different classes. The average classification rate computed from all experimental results is shown in Table 1. These preliminary results suggest that spiking neurons trained with a PSO algorithm can be considered as an alternative way to perform different pattern recognition tasks. As the reader can appreciate, only one spiking neuron was enough to solve a pattern recognition problem with a high acceptable accuracy. In general, the accuary of the proposed method was comparable to the method described in [19]. Both methods provide similar results; however, in some problems the proposed method was slightly better than the other, and vice verse. We can also conjecture that if only one neuron is capable of solving pattern recognition problems, perhaps several spiking neurons working together can improve the experimental results obtained in this research. However, that is something that should be proven.
6
Conclusions
In this paper a new method to apply a spiking neuron in a pattern recognition task was proposed. This method is based on the firing rates produced with a spiking neuron when is stimulated. The training phase of the neuron model was done by means of a particle swarm optimization algorithm. After training, we observed that input patterns, which belong to the same class, generate almost the same firing rates and input patterns, which belong to different classes, generate firing rates different enough to be discriminate among the different classes. Through several experiments, we can conclude that spiking neurons can be considered as an alternative tool to solve pattern recognition problems. Concerning to the strategy adopted to adjust the synaptic weights, we could observe that the results achieved with the particle swarm optimization algorithm are comparable to those provided by the differential evolution algorithm. Nowadays, we are developing a methodology to calculate the maximum number of categories that the spiking neuron can classify. Furthermore, we are researching different alternatives of combining several types of spiking neurons in one network to improve the results obtained in this research and then apply it in more complex pattern recognition problems such as face, voice and 3D object recognition.
Training Spiking Neurons by Means of Particle Swarm Optimization
249
Acknowledgements The author thanks Universidad La Salle for the economical support under grant number ULSA I-113/10.
References 1. Garro, B.A., Sossa, H., Vazquez, R.A.: Design of Artificial Neural Networks using a Modified Particle Swarm Optimization Algorithm. IJCNN, 938–945 (2009) 2. Maass, W.: Networks of spiking neurons: the third generation of neural network models. Neural Networks 10(9), 1659–1671 (1997) 3. Loiselle, S., Rouat, J., Pressnitzer, D., Thorpe, S.: Exploration of rank order coding with spiking neural networks for speech recognition. IJCNN 4, 2076–2080 (2005) 4. Thorpe, S.J., Guyonneau, R., et al.: SpikeNet: Real-time visual processing with one spike per neuron. Neurocomputing 58(60), 857–864 (2004) 5. Di Paolo, E.A.: Spike-timing dependent plasticity for evolved robots. Adaptive Behavior 10(3), 243–263 (2002) 6. Izhikevich, E.M.: Simple model of spiking neurons. IEEE Trans. on Neural Networks 14(6), 1569–1572 (2003) 7. Izhikevich, E.M.: Dynamical Systems in Neuroscience: The Geometry of Excitability and Bursting. The MIT press, Cambridge (2007) 8. Murphy, P.M., Aha, D.W.: UCI repository of machine learning databases. Dept. Inf. Comput. Sci., Univ. California, Irvine (1994) 9. Vazquez, R.A., Sossa, H.: A new associative model with dynamical synapses. Neural Processing Letters 28(3), 189–207 (2008) 10. Vazquez, R.A., Cachon, A.: Integrate and fire neurons and their application in pattern recognition. In: Proceedings of the 7th CCE, pp. 424–428 (2010) 11. Kennedy, J., Eberhart, R.: Particle Swarm Optimization. In: Proceedings of IEEE International Conference on Neural Networks, vol. IV, pp. 1942–1948 (1995) 12. Zhao, L., Yang, Y.: PSO-Based Single Multiplicative Neuron Model for Time Series Prediction. Expert Systems with Applications 36, 2805–2812 (2009) 13. Yu, J., et al.: An Improved Particle Swarm Optimization for Evolving Feedforward Artificial Neural Networks. Neural Processing Letters 26, 217–231 (2007) 14. Gudise, V.G., Venayagamoorthy, G.K.: Comparison of particle swarm optimization and backpropagation as training algorithms for neural networks. In: Proceedings of the IEEE Swarm Intelligence Symposium, pp. 110–117 (2003) 15. V´ azquez, R.A.: Pattern recognition using spiking neurons and firing rates. In: KuriMorales, A., Simari, G.R. (eds.) IBERAMIA 2010. LNCS, vol. 6433, pp. 423–432. Springer, Heidelberg (2010) 16. Hamed, H.N., Kasabov, N., Michlovsk´ y, Z., Shamsuddin, S.M.: String Pattern Recognition Using Evolving Spiking Neural Networks and Quantum Inspired Particle Swarm Optimization. In: Leung, C.S., Lee, M., Chan, J.H. (eds.) ICONIP 2009. LNCS, vol. 5864, pp. 611–619. Springer, Heidelberg (2009) 17. Kamoi, S., et al.: Pulse Pattern Training of Spiking Neural Networks Using Improved Genetic Algorithm. In: Proceedings of the IEEE CIRA, pp. 977 – 981 (2003) 18. Hong, S., et al.: A Cooperative Method for Supervised Learning in Spiking Neural Networks. In: 14th CSCWD, pp. 22–26 (2010) 19. Vazquez, R.A.: Izhikevich Neuron Model and its Application in Pattern Recognition. Australian Journal of Intelligent Information Processing Systems 11, 35–40 (2010)
Clustering Aggregation for Improving Ant Based Clustering Akil Elkamel1,2 , Mariem Gzara1,2 , and Hanˆene Ben-Abdallah1,3 1
MIRACL (Multimedia InforRmation systems and Advanced Computing Laboratory) Route de Tunis Km 10, B.P. 1030, Sfax, 3021 Tunisia 2 Institut Sup´erieur d’Informatique et de Math´ematiques de Monastir Avenue de la Korniche - B.P. 223 - Monastir - 5000, Tunisia 3 ´ Facult´e des Sciences Economiques et de Gestion de Sfax, Route de l’a´eroport Km 4 Sfax, 3018, Tunisia [email protected], [email protected], [email protected]
Abstract. In this paper, we propose a hybridization between an antbased clustering algorithm: CAC (Communicating Ants for Clustering) algorithm [5] and a clustering aggregation algorithm: the Furthest algorithm [6]. The CAC algorithm takes inspiration from the sound communication properties of real ants. In this algorithm, artificial ants communicate directly with each other in order to achieve the clustering task. The Furthest algorithm takes as inputs m clusterings given by m different runs of the CAC algorithm, and tries to find a clustering that matches, as possible, all the clusterings given as inputs. This hybridization shows an improvement of the obtained results.
1
Introduction
Clustering is one of the important tasks in data mining. It has many application areas; including machine learning, biology, medicine, and statistics. The clustering problem is defined as partitioning a data set into groups (clusters) such that the data objects, in the same cluster, share a high degree of similarity while data objects, in different clusters, are much dissimilar in a remarkable way. Referring to the literature, there are several families of methods proposed to resolve the clustering problem [7], [9], citing hierarchical, partitional, graphbased, grid-based, density-based, and model-based techniques. Hierarchical methods divide a data set into a sequence of nested partitions, while partitional algorithms divide a data set into a single partition. The graph-based clustering algorithms construct firstly a graph from the similarity matrix between the data items and then, apply a clustering algorithm to partition the constructed graph. The grid-based approaches are popular for mining clusters in a large multidimensional space wherein clusters are regarded as denser regions than their surroundings. The density-based clustering approach is a methodology that is capable of finding arbitrarily shaped clusters, where clusters are defined as dense regions separated by low-density regions. In the model-based clustering, it is assumed Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 250–259, 2011. c Springer-Verlag Berlin Heidelberg 2011
Clustering Aggregation for Improving Ant Based Clustering
251
that the data are generated by a mixture of underlying probability distributions in which each component represents a different group or cluster. Another family of methods based on biological and natural phenomena is proposed in literature, and it’s called bio-inspired methods. Bio-inspired clustering algorithms can be classified into two categories: those that start from an initial solution (or a set of solutions) and try to improve it iteratively (genetic algorithms [12], tabu search [3], simulated annealing [13] and Particle Swarm Optimization [2]) and those that use a population of artificial agents that evolve in the clustering environment to achieve the clustering task and generate a partition as a solution (Ant-based clustering algorithms [4], [11]). We have proposed in [5] a new ant-based clustering algorithm: CAC algorithm (Communicating Ants for Clustering). The CAC algorithm takes inspiration from the acoustic communication phenomenon observed among real ants [8]. It has shown good results when it was applied on real and synthetic data sets [5]. The CAC algorithm shows also a good robustness of the obtained results despite its stochastic nature. To further improve the results, we choose to hybridize the CAC algorithm with a clustering aggregation algorithm [6] which is the Furthest algorithm, which from a given set of clusterings finds a single clustering that agrees as much as possible with the input clusterings. This paper is organized as the following: in section 2, we describe the CAC (Communication Ants for Clustering) algorithm [5]. Section 3 is devoted to presenting the Furthest algorithm. In section 4, we introduce the main idea of this paper which is the hybridization of the CAC and the Furthest algorithm. In section 5 we explain the experimental evaluation. Section 6 concludes the paper and points out some avenues for a possible future work.
2
The CAC Algorithm
The CAC algorithm [5] is based mainly on the acoustic communication phenomenon observed in real ants [8]. In our algorithm, a set of ant-agents move on a two-dimensional, squared and toroidal grid √ G where the data objects are initially scattered at random. G includes L = N cells per side where N is the number of objects. In our approach, several objects can be placed on one cell, which form a heap of objects. In this case, a class corresponds to a heap and a partition is given by all heaps on the grid. Figure 1 illustrates this configuration. The number of ants is automatically determined by the number of data. If 2 L represents the side of the grid, then the number of ants F = L9 . The idea is that an ant is responsible for the cell where it is located and the eight nearby cells. Thus, with this formula we guarantee that the number of ants is neither very large nor very small compared to the number of cells on the grid. At the initialization, the F ants (f1 , ..., fF ) are positioned randomly on the grid by checking, as for the distribution of objects, that a cell can’t contain at the same time two ants or two objects. At each iteration, each ant fi moves randomly on the grid. Thus, an ant can move to one of the eight cells of its neighborhood. After the initialization, the ants try to find on the grid similar groups of objects in order to merge them. Each ant that reaches a cell containing an object or a
252
A. Elkamel, M. Gzara, and H. Ben-Abdallah
Fig. 1. CAC allows the construction of heaps of objects on the grid
heap of objects, sends a recruitment signal to other ants that hold objects or heaps of objects. This signal contains information on the characteristics of the object or the heap it holds as well as the coordinates of the cell where it is positioned on the grid. Then, each ant among those that received the signal will evaluate the similarity between its heap and the heap of the ant issuing the signal. If the similarity is over a certain threshold, it will pick up its object or its heap and drop it on the cell where the ant that sent the signal is, returns back to its initial position and continues moving by choosing, randomly, a destination among the eight neighbor cells. In this way, larger and larger clusters will be formed. After it has completed all its communication, the ant that issued the signal will move to a nearby cell seeking for other objects or heaps. Ants are considered in turn and the process is reiterated until the number of iteration TMax is reached. The similarity between two heaps of objects H1 and H2 is evaluated as the maximum distance between H1 and H2 : Dmax (H1 , H2 ) =
max
xi ∈H1 ,xj ∈H2
{d(xi , xj )}
(1)
where d is a distance measure. Two heaps H1 and H2 are aggregated if the maximum distance between them Dmax (H1 , H2 ) is less or equal to the aggregation threshold t. This threshold is not constant, we start with a very low threshold equal to the minimum distance between all objects dmin (O), and we add at each iteration a constant . dmin (O) =
min
(i,j)∈{1,...,N }2 ,i=j
=
{d(xi , xj )}
d(O) Tmax
(2) (3)
where d(O) is the average distance between all objects of the set O and Tmax is the maximum number of iterations. 2 d(O) = d(xi , xj ) (4) N (N − 1) 2 (i,j)∈{1,...,N } ,i<j
Clustering Aggregation for Improving Ant Based Clustering
253
Algorithm 1 presents the steps of the CAC algorithm.
Algorithm 1. CAC (Communicating Ants for Clustering) Initialization: Randomly place the data objects and the ants on the grid, by checking that two objects or two ants can not be on the same cell. for t = 1 to TM ax do for every ant ak , k ∈< 1, K > do if the ant ak has an object [heap] then for every ant ai , i ∈< 1, K >, i = k do Calculate the distance between his object [heap] and the object [heap] of the ant ak . if this distance is accepted then move its object [heap] to the cell where the main ant ak is located. ai moves to one of the eight neighbors cells. end if end for end if ak moves to one of the eight neighbors cells. end for end for
3
The Furthest Algorithm for Clustering Aggregation
The clustering aggregation problem [6] is defined as an optimization problem where, given a set of m clusterings, we want to find the clustering that minimizes the total number of disagreements with the m clusterings. Considering a set of n objects V = {v1 , ..., vn }. A clustering C of V is a partition of V into k clusters C1 , ..., Ck . For each v ∈ V , we use C(v) to denote the label of the cluster to which the object v belongs, that is, C(v) = j if and only if v ∈ Cj . Considering also m clusterings: we use Ci to denote the ith clustering, and ki for the number of clusters of Ci . A disagreement between two clustering C1 and C2 is a pair of object (u, v) such that C1 places them in the same cluster, while C2 places them in different clusters or vice versa : ⎧ 1 if ((C1 (u) = C1 (v) and C2 (u) = C2 (v)) ⎪ ⎪ ⎨ or (C1 (u) = C1 (v) and C2 (u) = C2 (v))) du,v (C1 , C2 ) = (5) ⎪ ⎪ ⎩ 0 otherwise dV (C1 , C2 ) denotes the number of disagreements between C1 and C2 dV (C1 , C2 ) = du,v (C1 , C2 ). (u,v)∈V ×V
(6)
254
A. Elkamel, M. Gzara, and H. Ben-Abdallah
The clustering aggregation problem is formulated as follows: given a set of objects V and m clusterings C1 , ..., Cm on V , compute a new clustering C that minimizes the total number of disagreements with all the given clusterings : D(C) =
m
d(Ci , C)
(7)
i=1
In [6], the authors present many algorithms for resolving the clustering aggregation problem. The Furthest algorithm has low complexity and it shows better performances in comparison to the other studied algorithms in [6]. In [6], the clustering aggregation problem is formulated as a graph where the weight Xuv of the edge (u, v) is the fraction of clusterings that place u and v in different clusters. The Furthest algorithm starts by placing all the nodes into a single cluster. Then, it finds the pair of nodes that are furthest apart and places them into different clusters. These two nodes become the centers of the clusters. The remaining nodes are assigned to the center that incurs the least cost. This procedure is repeated iteratively: at each step, a new center is generated that is the furthest from the existing centers, and the nodes are assigned to the center that incurs the least cost. At the end of each step, the cost of the new solution is computed. If it is lower than that of the previous step, then the algorithm continues. Otherwise, the algorithm outputs the solution computed in the previous step.
4
Hybridization of the CAC Algorithm and the Furthest Algorithm
The CAC algorithm is an ant-based clustering algorithm inspired by the acoustic communication phenomenon observed in real ants. The algorithm was tested and evaluated on several real data sets. The CAC algorithm generated good results, it showed a superiority over the k-means and other ant-based clustering algorithms on several well known benchmark databases. The CAC algorithm is a stochastic algorithm. In fact, objects and ants are initially randomly scattered on the grid. Moreover, ants move randomly in their neighborhood throughout the algorithm. Despite this stochastic nature the CAC algorithm showed a good robustness. If we run the CAC algorithm several times we have, in average, good results and the standard deviation of all the evaluation measures is very low. But when comparing two different runs, we can find disagreements between the generated partitions. These disagreements are caused by the stochastic steps of the algorithm. That’s why we thought to hybridize the CAC algorithm with the Furthest algorithm to have a final clustering that matches as possible with the clusterings in result of the CAC algorithm. The hybridization consists on running the CAC algorithm m times and the Furthest algorithm takes the resulted m clusterings as inputs. Then, it generates a clustering that agrees as much as possible with the clusterings generated by the ants.
Clustering Aggregation for Improving Ant Based Clustering
5 5.1
255
Experimental Evaluation Data Sets
To achieve our experimental evaluation, we have used real data sets issued from the machine learning repository [1] and synthetic data sets (table 1). These data sets are supervised (we know the class of each object) in order to assess the quality of the partitioning we get. We present for each data set the dimension of objects space (M ), the number of classes (K) and the total number of objects (N ). Table 1. Data sets used for the experimental evaluation Data sets Iris Wine Glass Thyroid Breast cancer wisconsin Yeast Synth1
5.2
M 4 12 9 5 10 8 2
K 3 3 7 3 2 10 4
N 150 178 214 215 699 1484 2000
Evaluation Measures
F-measure: The F-measure is based on the idea of comparing a resulting partition with a real or a reference partition. It uses the recall and precision measures which are defined as follows: nij recall(i, j) = (8) Ni precision(i, j) =
nij Nj
(9)
where nij is the number of objects or individuals present in the reference class Ci and in the resulting class Cj . Ni and Nj represent respectively the total number of objects in the class Ci and Cj . Or recall(i, j) and precision(i, j) are relative only for one case, that of the adequacy of reference class Ci with the result class Cj . To evaluate the entire class Ci , we just choose the maximum of the recall and precision values obtained within Ci : recall(i) = max[recall(i, j)]
(10)
precision(i) = max[precision(i, j)]
(11)
j j
The global values of the recall and precision for all classes will be finally determined as follows:
256
A. Elkamel, M. Gzara, and H. Ben-Abdallah
recall =
pi × recall(i)
(12)
pi × precision(i)
(13)
i
precision =
i
where pi is the weight of the class Ci . It is given by the following formula: Ni pi = k Nk
(14)
The global value of the F-measure will be given by the following formula: F =
2 × precision × recall precision + recall
(15)
Note that high values of recall, precision and F-measure matches to a best clustering. Impurity index: If a clustering contains k clusters with sizes s1 , ..., sk , and the sizes of the majority class in each cluster are m1 , ..., mk , respectively, then the impurity index measure is defined as: I=
k si − m i ( ) si
(16)
i=1
If a clustering has I value equal to 0, it means that it contains only pure clusters. Rand index: Given a set of n objects O = {o1 , o2 , ..., on } and two partition P = {C1 , C2 , ..., Ck } and P = {C1 , C2 , ..., Ck }, respectively containing k and k clusters. We define the following measures: – a, the number of pairs of elements in and in the same cluster in P . – b, the number of pairs of elements in and in different clusters in P . – c, the number of pairs of elements in and in different clusters in P . – d, the number of pairs of elements in and in the same cluster in P .
O, that are in the same cluster in P O, that are in different clusters in P O, that are in the same cluster in P O, that are in different clusters in P
The Rand index is calculated as follow: R=
a+b a+b = n a+b+c+d (2 )
A best clustering is the one that maximizes the Rand index value.
(17)
Clustering Aggregation for Improving Ant Based Clustering
5.3
257
Experimentations
In our experimentation study, we ran the CAC algorithm 5 times and we have provided the resulting 5 clusterings to the Furthest algorithm. The Synth1 data set is the type of data most frequently used within antbased clustering algorithms. It is two-dimensional and consists of four clusters. They are generated by four different Normal Distributions and each has a size of 500. Figure 2 shows the partitions generated by 5 runs of the CAC algorithm and that is generated by the Furthest algorithm after having as inputs the 5 clusterings C1 , ..., C5 . Figure 2 shows that the Furthest algorithm succeed to correct misclassifications generated by the ants in each clustering.
−10
−5
0 V1
5
10
−5
0 V1
5
10
−10
−5
0 V1
5
10
−10
−5
0
5
10
10 0
V2
−5 −10
−10
−5
0
V2
5
10
Furthest
5
10 5 −5 −10
−5 −10 −10
C5
0
V2
5
10
C4
0
V2
5 −10
−5
0
V2
5 0 −10
−5
V2
C3
10
C2
10
C1
−10
V1
−5
0 V1
5
10
−10
−5
0
5
10
V1
Fig. 2. Results on Synth1 data set
We present in the following tables the results on the different data sets. For each clustering within the m input clusterings and the final clustering, we present the number of resulted clusters (#clu), the recall (R), the precision (P ), the Fmeasure (F ), the impurity index (I) and the rand index (Rand). The average of all the evaluation measures is represented by the Avg(C1−5 ) row. Table 2 shows that the clustering obtained by the hybridization of the CAC algorithm and the Furthest algorithm for the iris and wine data sets is better than the average of the five clusterings. Table 3 shows that for the glass data set, the clustering C has recorded a slight superiority for the different evaluation measures, except the recall measure. This exception can be justified by the number of the obtained clusters which is larger than the average number of clusters of the 5 input clusterings. For the thyroid data set, the Furthest algorithm showed an improvement of the final clustering among all the evaluation measures. Table 4 presents the results for the Breast cancer wisconsin and the Yeast data sets. For the Breast cancer wisconsin, the aggregation of the five clusterings has recorded better results compared to the average of all the evaluation measures, while the clustering C4 performs better than the clustering C. For the Yeast data set the Furthest algorithm generates a larger number of clusters (14) compared to the real number of clusters (10), but when looking at the precision value, we notice that the clusters generated by the Furthest algorithm are more homogeneous than those generated by the five clusterings given as inputs. We have presented in tables 2, 3 and 4 the evaluation measures values of the clustering obtained by the Furthest algorithm after having as inputs five clusterings generated by five runs of the CAC algorithm. The Furthest algorithm always generates a clustering with a better precision than the inputs clusterings. It succeeds to correct the misclassifications committed by the ants.
258
A. Elkamel, M. Gzara, and H. Ben-Abdallah Table 2. Results on the Iris and Wine data sets Iris Wine Clustering #clu R P F I Rand #clu R P F I Rand C1 3 0.96 0.96 0.96 0.04 0.94 4 0.83 0.95 0.89 0.14 0.81 C2 4 0.80 0.98 0.88 0.04 0.90 4 0.81 0.89 0.85 0.14 0.82 C3 3 0.96 0.96 0.96 0.03 0.95 4 0.88 0.96 0.92 0.07 0.87 C4 4 0.73 1.00 0.84 0.10 0.85 3 0.79 0.68 0.73 0.37 0.68 C5 3 0.95 0.95 0.95 0.04 0.94 4 0.88 0.97 0.92 0.08 0.87 Avg(C1−5) 3.4 0.88 0.97 0.91 0.05 0.91 3.8 0.83 0.89 0.86 0.16 0.81 C 3 0.96 0.96 0.96 0.04 0.95 4 0.90 0.97 0.93 0.06 0.89
Table 3. Results on the Glass and Thyroid data sets Glass Clustering #clu R P F I Rand #clu C1 6 0.88 0.51 0.64 0.52 0.61 6 C2 7 0.75 0.71 0.73 0.50 0.63 6 C3 8 0.75 0.72 0.73 0.50 0.63 6 C4 6 0.83 0.70 0.76 0.52 0.61 6 C5 7 0.77 0.56 0.65 0.51 0.59 7 Avg(C1−5 ) 6.8 0.80 0.64 0.70 0.51 0.62 6.2 C 8 0.75 0.72 0.74 0.50 0.63 6
R 0.83 0.83 0.83 0.65 0.80 0.78 0.83
Thyroid P F I 0.91 0.87 0.10 0.91 0.87 0.09 0.91 0.87 0.09 0.94 0.77 0.13 0.96 0.88 0.07 0.92 0.85 0.096 0.92 0.87 0.09
Rand 0.82 0.82 0.83 0.68 0.86 0.80 0.83
Table 4. Results on the Breast cancer wisconsin and Yeast data sets Breast cancer wisconsin Clustering #clu R P F I Rand #clu R C1 2 0.90 0.91 0.91 0.09 0.83 11 0.61 C2 2 0.89 0.90 0.89 0.10 0.81 11 0.49 C3 2 0.85 0.88 0.86 0.14 0.75 10 0.74 C4 2 0.91 0.92 0.92 0.08 0.84 10 0.76 C5 2 0.90 0.91 0.90 0.09 0.82 11 0.50 Avg(C1−5) 2 0.89 0.90 0.89 0.10 0.81 10.6 0.62 C 2 0.90 0.91 0.91 0.09 0.83 14 0.46
6
Yeast P F 0.70 0.65 0.71 0.58 0.77 0.75 0.69 0.72 0.80 0.61 0.73 0.66 0.85 0.60
I 0.59 0.58 0.59 0.61 0.59 0.59 0.58
Rand 0.64 0.62 0.58 0.54 0.62 0.60 0.65
Conclusion
In this paper, we have presented a hybridization of the CAC algorithm with the Furthest algorithm. This hybridization shows an improvement of the obtained results. As prospects, we attempt to adapt the principles developed in CAC and its hybridization with the Furthest algorithm to handling large data sets.
Clustering Aggregation for Improving Ant Based Clustering
259
References 1. Blake, C., Merz C.: UCI Repository of machine learning databases, University of California, Irvine, Dept. of Information and Computer Sciences 2. Cui, X., Potok, T.E., Palathingal, P.: Document Clustering using Particle Swarm Optimization. In: IEEE Swarm Intelligence Symposium, The Westin (2005) 3. Delgado, M., Skrmeta, A.G., Barber, H.M.: A Tabu Search Approach To The Fuzzy Clustering Problem. In: Proceedings of the Sixth IEEE International Conference on Fuzzy Systems, pp. 125–130 (1997) 4. Deneubourg, J.L., Goss, S., Franks, N., Sendova Franks, A., Detrain, C., Chretien, L.: The dynamics of collective sorting: robot-like ant and ant-like robots. In: Meyer, J.-J., Wilson, S. (eds.) Proceedings of the First International Conference on Simulation of Adaptative Behavior, Paris, France, pp. 356–365 (1990) 5. Elkamel, A., Gzara, M., Jamoussi, S., Ben Abdallah, H.: An ant-based algorithm for clustering. In: The 7th ACS/IEEE International Conference on Computer Systems and Applications, Rabat, Morocco, pp. 76-82 (2009) 6. Gionis, A., Mannila, H., Tsaparas, P.: Clustering Aggregation. ACM Transactions on Knowledge Discovery from Data 1(1), Article 4 (2007) 7. Guojun, G., Chaoqun, M., Jianhong, W.: Data Clustering: Theory, Algorithms, and Applications. ASA-SIAM Series on Statistics and Applied Probability (2007) 8. Hickling, R., Brown, R.L.: Analysis of acoustic communication by ants. J. Acoust. Soc. Am. 108(4), 1920–1929 (2000) 9. Jain, A.K., Murty, M.N., Flynn, P.J.: Data clustering: a review. ACM Computing Surveys 31(3), 264–323 (1999) 10. Knight, T., Timmis, J.: A Multi-Layered Immune Inspired Approach to Data Mining. In: Lotfi, A., Garibaldi, J., John, R. (eds.) Proceedings of the 4th International Conference on Recent Advances in Soft Computing, Nottingham, UK, pp. 266–271 (December 2002) 11. Lumer, E.D., Faieta, B.: Diversity and adaptation in populations of clustering ants. In: Proceedings of the Third International Conference on Simulation of Adaptive Behaviour, pp. 501–508 (1994) 12. Raghavan, V.V., Birchard, K.: A clustering strategy based on a formalism of the reproductive process in natural systems. In: Proceedings of the Second International Conference on Information Storage and Retrieval, pp. 10–22. ACM, New York (1979) 13. Selim, S.Z., Alsultan, K.: A simulated annealing algorithm for the clustering problem. Pattern Recognition 24(7), 1003–1008 (1991)
Multi-cellular-ant Algorithm for Large Scale Capacity Vehicle Route Problem Jie Li, Yi Chai, Penghua Li, and Hongpeng Yin Automation College of Chongqing University, Room 1911, Main building, Section A of Chongqing University, Chongqing, China [email protected]
Abstract. This paper presents a multi-cellular-ant algorithm for large scale capacitated vehicle routing problem with restrictive vehicle capability. The problem is divided into corresponding smaller ones by a decomposition methodology. Relative relationship between subsystems will be solved through cooperative performance among cellular ants to avoid trivial solutions. The empirical results composed with adaptive ant colony algorithm and traditional collaboration show more efficiency and availability. Keywords: multi-cellular-ant algorithm, cooperation, decomposition, capacitated vehicle routing problem.
1
Introduction
Vehicle route problem (VRP) is designing delivery routes to meet some requirements and obtain minimal total cost synchronously. capacitated vehicle routing problem (CVRP) is an extension of VRP where vehicle capability is restrained. Researches on CVRP focus on two positions. On the one hand, average distance minimization is to diminish distribution cost. Ellipse rule approach made high decline by about 44% (Santos L et al, 2009). Heuristic algorithms played signature performances on CVRP under certain problem sizes, such as evolutionary algorithm(Borgulya I, 2008), genetic algorithm (Chung − Ho W ang et al, 2010) and particle swarm optimization (Ai T J et al, 2009). (Istvan Borgulya, 2008) proposed a multi-objective algorithm based on extended virtual loser for CVRP as similar as other evolutionary algorithm. (Jens Lysgaard et al, 2004) presented a new branch-and-cut algorithm including several separation methods to solve the three instances and find out their upper bounds and then (Ricardo F ukasawa et al, 2006) improved it into Branch-and-Cut-and-Price method to gain lower bounds. On the other hand, CVRP scale caught some attention. (Jari Kytojokia et al, 2007) scattered customer services location with known demands geographically to breakdown large scale problem. Furthermore, (David M estera et al, 2007) enhanced the guided local search and evolution strategies meta-heuristics. A deoxyribonucleic acid computing and modified Adleman − Lipton model accelerates the search on large nodes CVRP in a decentralized model (Y uvraj, 2009). Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 260–266, 2011. c Springer-Verlag Berlin Heidelberg 2011
Multi-cellular-ant Algorithm
261
Subsystems coupling is ignored generally in a decentralized model. Multi-ant algorithm is proposed in a distributed model where iteration between subsystems is taken into account. Large scale CVRP is decomposed into a set of smaller ones with connection based on Tree Cut-Set algorithm given in the paper. Moreover, additional reward function punishes suboptimal strategies at each state. (Carlos Bermudez et al,2010) had proposed recombination operator for genetic search and provided solution for CVRP based on cellular model where cellular ants played well. Consequently, complex and abundant macroscopic phenomenon in the parallel evolutionary is described as cellular automata (CA) as a discrete grid dynamics model both in timespace and state vector. The paper is organized as follows: Section 2 will introduce decomposition of large scale CVRP using tree cut-set. Section 3 describes multi-cellular-ant algorithm in a distributed model established in Session 2 based on reward shaping. The distributed multi-cellular-ant in a grid net of subsystems updates information by local rules following same action regulations synchronously with finite discrete states. Simultaneously, the procedure of cooperation between subsystems is gotten. Simulations are executed among three algorithms in Section 4. Finally, discussion and conclusions are in Section 5.
2
Decomposition for Large Scale CVRP
Large scale CVRP is deemed as a weighted incomplete undirected graph divided into subsystems by Tree Cut-Set (TCS). For the complexity, undirected graph with unsteady capacity constraints is transformed into Tree Description (Chen Y ulin et al, 2002) firstly using network ripping (Li Y an et al, 2004). Then, the semantic representation of CVRP could be replaced by subsystems. The amount of subsystems is related with the carrying capability of vehicles, demands and association of customers. We will explain t − sepset couple based on d − sepset(N g.A et al, 1999). Definition 1. In a tree, a tree-node i has and only has two different parents, has and only has one child node j, at the same time, node j has and only has two different children. Then, (i, j) is called as a t-sepset couple nodes. Formed tree is searching by order under Greedy policy and ripping by t-sepset couple nodes of customers with stochastic demands. As what Bayesian Theory [11] says, demands are weighted by wi . A random variable must fix some preconditions: w > 0 and 2i=1 wi = 1. Summation of demands ta in subsystems must be lower than b limited vehicle capability. Error e = ta − b declines as lower as possible. Our procedure stops till the value of e is lower than a by constant p. Otherwise, TCS will continue.
3
Multi-cellular-ant Algorithm
A subsystem is described as a five-tuple discount value MDP model M = {S, A, T, R, f v} where S = {s} is a set of states, A = {a} is a set of actions,
262
J. Li et al.
T = {p(·|s, a), s ∈ S, a ∈ A} are the transition probability distribution of nextstate. p(· | s, a) represents the probability of action a. R(s, a, s, ) describes reward function and f v defines additional reward function. π(s) is policy function in the state space. R, (s, a, s, ) = R(s, a, s, ) + Φ(s, ) − Φ(s) is for any policy π(s) and V ∗ (s) = π(s) − Φ(s) [12] by assumption that potential function Φ(s) exists. If reward function R of model M exchanges into new reward function R, of model M , , reward shaping incurs optimal policies of model M being as well as optimal policies of model M , . f v(s, a, s, ) carries ant colony information, thus R, is defined as follows : (1) R, (s, a, s, ) = R(s, a, s, ) + f v(s, a, s, )
3.1
Cellular Ants
Cellular automata (CA) depicts a discrete model with a finite number of states. Lattice cells work in communication, computation, construction, growth, reproduction and evolution. Simultaneously, CA masters at ordering, turbulence, chaos, symmetry-breaking and fractals in the dynamic system. Cell state at next time is dominated by current state and neighbors’ current states. CAs structure consists of four parts: cellular-ant space, grid dynamics net, local principles and transition function. Cellular Space in subsystems has twodimensional uncertainty states. Updated function with cellular ants information at time t under extended Moore neighbor model is as: f : sit+1 = f (sit , sN t ). The key part of CAs is to establish corresponding-neighbors policies under extended Moore neighbor model where last-state performances are compared with neighbors’. Thus reward of distributed multi-cellular-ant algorithm function j is written as f = f (sit (a), N s (a)) and f v(s, a, s, ) = F (sit+1 ): j=0 t R, (s, a, s, ) = R(s, a, s, ) +
2r
f (si+r t (a),
r=0
3.2
N
sjt (a))
(2)
j=0
Distributed Multi-cellular-ant Algorithm
Dynamic learning in Back Propagation (Xiao − Hu Y u et al, 1995) accelerates the learning rate that represented by ϕt (i)(the value of ant i at time t). ϕt (i) value reduces to zero gradually in the limited search procedure. Let ϕt (i) > 0 be a series T of constants for every ant at time t and fit the equation: lim ϕt (i) = ∞. T −→∞ t+1
The influence of perturbation from unstable situations can be amended by Performance Potential (CaoXi − enetal, 1997). Such as, vehicle diversity may impact on the efficiency and the weather will delay the arriving time of transportation. The last-step state is chosen for performance potential for currentstep state. Let X = {Xt , t = 1, 2 . . . } picture the decision progress. According
Multi-cellular-ant Algorithm
263
to reward function, while s is the last-step state, the description of performance potential under state s, is defined as: gs, = lim {E[ρN T −→∞
N −1
R, (s, a, s, )|X0 = s]
s=0
−(N − 1)gs } Reward shaping integrates with ant colony algorithm based on Q-learning (Bagnell, J.etal, 2006; Dietterichetal, 2000): πk∗ (i, j) = argminmax{f v(s, a, s, ) πa (i, j) ∗ Q }
(3)
(4)
a∈A
Q = maxa=k Q(i, j, k) − Q(i, j, s) Q(i, j, k) = ϕt (i) · Q(1 − rk /Rk ) − δ · gs, +rk /Rk · V V = R, (i, k, j) + γV ∗ (s, )
(5)
(6)
(7)
Where α is discounted factor. While the amount of cellular ants arriving at city i is Rk , the amount of cellular ants chosen city j as the next city is rk .
4
Experimental Result
The dataset for simulation is from a GIS software, ”ArcView”, transforming geographic location in the original city map to network one. Information in ArcView compose latitude and longitude vector. The amount of cellular ants is 31. Parameter α is trail evaporation coefficient. The revisited probability will increase if α is high. Parameter β also takes heuristic information where best regions are 0.1 ≤ α ≤ 0.3 and 3 ≤ β ≤ 6 (JIAN G Ling − yan et al, 2007). Then parameters in Q-learning are set as: α = 0.6, β = 4, γ = 0.8, Q = 2 and ρ = 0.7. 4.1
Solution Superiority
The number of places in the city is 500. Time consumes ordered by adaptive ant colonycooperation without decomposition and cooperation with decomposition are 1.7514e+003 | 202.8906 | 179.5156. The shortest distances by the same orders are 1.4263e+004 | 1.4164e+003 | 1.3541e+003. For larger scale problem, multi-cellular-ant cooperation with decomposition displays quicker astringency than cooperation without decomposition. Moreover, solutions through multicellular-ant algorithm are better (illustrated by the right one in Fig 1). Without decomposition, the cooperation is easy to trap into local solution (illustrated by the left one in Fig 1).
264
J. Li et al.
Global Optimal Solution
Global Optimal Solution
1580
1600 Global Optimal Solution
Global Optimal Solution
1560 1550
1540
Sum of solution
Sum of solution
1520 1500 1480
1500
1450
1460 1440
1400
1420 1400
0
50
100
150 200 iteration number
250
1350
300
0
50
100
150 200 iteration number
250
300
Fig. 1. Shortest distances comparison
4.2
Efficiency for System Coupling
For the large scale problem, interactions between subsystems drive signature impacts on operations. Interaction and coordination are special characters of multi-cellular-ant algorithm with corresponding coupling. With various scales of CVRP, performance contrasts are analyzed during experiments. From first two graphs in Fig 2, best solutions and average solutions under multi-cellular-ant algorithm and multi-ant algorithm without decomposition are shown clearly. While problem is simple, accomplishments between those two methods differentiate infirmly. The later method leads to suboptimal operations rapidly with incremental problem scopes. Because of restrained vehicle capacity, cellular ants keep contact with each others through relative reinforcement learning. Therefore, more complex manipulations of multi-cellular-ant algorithm takes more time for smaller problem. However, under fewer iterations, it costs less time to find out optimal solutions as higher scale of CVRP (illustrated by the third graph in Fig 2). 4
10000
2 decentralized algorithm distributed multi−ant algorithm
9000
x 10
8000
4000 decentralized algorithm distributed multi−ant algorithm
1.8
decentralized algorithm distributed multi−ant algorithm
3500
1.6 3000 1.4
6000 5000 4000
2500
1.2 cost time
average solution
best solution
7000
1 0.8
3000
0.6
2000
0.4
1000
0.2
2000 1500 1000
0
50100
200
300
500 amount of places
1000
0
500
50100
200
300
500 amount of places
1000
0
50100
200
300
500 amount of places
1000
Fig. 2. Results comparisons
Performance Potential(Pp) is helpful for filtering system noises. The purpose of importing Pp into multi-cellular-ant algorithm is to reduce impression from uncertainties and accelerate actions. Its performances is determined by parameter δ. Simulations are executed by several δ values (illustrated in Fig 3). It is obvious in the bottom curve that technique with smaller δ value takes more iteration to gain best solution under noise.
Multi-cellular-ant Algorithm
265
The conclusion that high δ value means filter process strengthened is proven in Fig 3. Prior solutions are obtained as higher δ value.
7000
6000
5000
best solution average solution iteration
4000
3000
2000
1000
0 0
0.2
0.4
0.6
0.8
1
Fig. 3. Pp executions
5
Discussion and Conclusions
Decomposition is to scale down large scale CVRP into subsystems using hybrid algorithms. Cooperation and interaction is considered and solved by multi-cellular-ant algorithm in a distributed model. Potential function filters the disturbance from circumstance whose efficiency is verified from simulations. Moreover, other problem are still be improved by multi-cellular-ant algorithm, for instance, a Pork Traceability System.
Acknowledgments This research is funded by Chongqing Natural Science Foundation (No.CSTC 2010BB2065).
References 1. Santos, L., Coutinho-Rodrigues, J., Current, J.R.: An improved heuristic for the capacitated arc routing problem. In: Computers and Operations Research, pp. 2632–2637 (2009) 2. Borgulya, I.: An algorithm for the capacitated vehicle routing problem with route balancing. Central European Journal of Operations Research, DEC, 331–343 (2008) 3. Wang, C.-H., Lu, J.-Z.: An effective evolutionary algorithm for the practical capacitated vehicle routing problems. J. Intell. Manuf. 21, 363–375 (2010) 4. Ai, T.J., Kachitvichyanukul, V.: Particle swarm optimization and two solution representations for solving the capacitated vehicle routing problem. Computers and Industrial Engineering, 380–387 (2009)
266
J. Li et al.
5. Borgulya, I.: An algorithm for the capacitated vehicle routing problem with route balancing. Central European Journal of Operations Research 16, 331–343 (2008) 6. Yuvraj Gajpal, P.L.: Abad Multi-ant colony system(MACS) for a vehicle routing problem with backhauls. European Journal of Operational Research, 102–117 (2009) 7. Bermudez, C., Graglia, P., Stark, N., Salto, C., Alfonso, H.: Comparison of Recombination Operators in Panmictic and Cellular GAs to Solve a Vehicle Routing Problem. Inteligencia Artificial 46, 34–44 (2010) 8. Chen, Y., Liu, J.: An tree generation algorithm of undirected graphs. The application of Computer Engineer, 115–117 (2002) 9. Li, Y., Yin, Z.-m.: Techniques by compound branch and network ripping to find out all spanning trees of an undirected graph. Journal of Naval University of Engineering, 74–77 (2004) 10. Ng, A., Harada, D., Russell, S.: Policy invariance under reward transformations: theory and application to reward shaping. In: ICML 1999 (1999) 11. Xiang, Y.: Distributed structure verification in multiply sectioned Bayesian networks. In: Florida Artificial Intelligence Research Symposium, pp. 295–299 (1996) 12. Moere, A.V., Clayden, J.J.: Cellular ants: Combining ant-based clustering with cellular automata. In: International Conference on Tools with Artificial Intelligence ICTAI, pp. 177–184 (2005) 13. Yu, X.-H., Chen, G.-A., Cheng, S.-X.: Dynamic learning rate optimization of the backpropagation algorithm. In: IEEE Transactions on Neural Networks, 669–677 (1995) 14. Cao, X.-e., Chen, H.-f.: Perturbation realization, potentials and sensitivity analysis of Markov processes. IEEE Transactions of Automatic Control, 1382–1393 (1997) 15. Bagnell, J., Ng, A.: On local rewards and scaling distributed reinforcement learning. Neural Information Processing Systems (2006) 16. Dietterich, T.G.: Hierarchical reinforcement learning with the MAXQ value function decomposition. JAIR 17. Jiang, L.-y., Zhang, J., Zhong, S.-h.: (2007) Analysis of parameters in ant colony system. Computer Engineering and Applications, 31–36 (2000) 18. Lysgaard, J., Letchford, A.N., Eglese, R.W.: A new branch-and-cut algorithm for the capacitated vehicle routing problem. Mathematical Programming 100(2), 423– 445 (2004) 19. Fukasawa, R., Longo, H., Lysgaard, J., de Aragao, M.P., Reis, M., Uchoa, E., Werneck, R.F.: Robust branch-and-cut-and-price for the capacitated vehicle routing problem. Mathematical Programming 106(3), 491–511 (2006) 20. Kytojoki, J., Nuortio, T., Braysy, O., Gendreau, M.: An efficient variable neighborhood search heuristic for very large scale vehicle routing problems. Computers and Operations Research 34(9), 2743–2757 (2007) 21. Mestera, D., Braysyb, O.: Active-guided evolution strategies for large-scale capacitated vehicle routing problems. Computers and Operations Research 34(10), 2964–2975 (2007)
Ant Colony Optimization for Global White Matter Fiber Tracking Yuanjing Feng and Zhejin Wang Department of Automation, Zhejiang University of Technology Hangzhou, Zhejiang, China
Abstract. In this paper, we propose a fast and novel probabilistic fiber tracking method for Diffusion tensor imaging (DTI) data using the ant colony tracking technique, which considers both the local fiber orientation distribution and the global fiber path in collaborative manner. We first construct a global optimization model that captures both global fiber path and the uncertainties in local fiber orientation. Then, a global fiber tracking algorithm is presented using a novel learning strategy where the probability associated with a fiber is iteratively maximized. Finally, the proposed algorithm is validated and compared to alternative methods using both synthetic and real data. Keywords: Diffusion tensor imaging, ant colony optimization, tractography, probabilistic fiber tracking.
1 Introduction Diffusion tensor imaging (DTI) is a technique that allows measurement of white matter fiber orientation in the human brain in vivo. White matter fiber tracking or “tractography” can estimate likely fiber paths by tracing the principal diffusion directions of the local tensor orientations. These fiber paths can subsequently be used, for example, to chart the complex network of neural fiber tracts in the human brain, and to investigate connectivity in healthy and pathological populations. One of the challenges facing conventional tractography methods is the problem of uncertainty in the tracking procedure. Noise, splitting and crossing fibers, head motion and image artifacts are all examples of factors that cause variability in the estimated fibers. As a result, stochastic tractography methods have been developed in order to quantify and visualize the uncertainty associated with the estimated fibers. Stochastic approaches model the uncertainty in DTI measurements at each voxel using a probability density function (PDF) for orientation distribution, and then trace the direction randomly sampled from the PDF [1~4]. However, these methods require the number of samples to be exponential to properly explore the state space, which is computationally burdensome. Recently, global tractography techniques based on an iterative optimization algorithm have received considerable interest [5~8]. In the graph framework, they define a cost function to estimate the degree of a fiber trajectory belonging to the true fiber pathway running form the seed point to target point. Then optimization algorithms, such as Dijkstra algorithms [5,6,7], are used to find the maximum Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 267–276, 2011. © Springer-Verlag Berlin Heidelberg 2011
268
Y. Feng and Z. Wang
probability fiber. These methods admit a relatively large amount of discretization error in orientation at the voxel level because they only sample the PDFs from the neighbors’ directions (generally 26 directions). In this paper, we extend a fast and novel probabilistic fiber tracking method for quantifying white matter connectivity inspired from ant colony optimization. It provides a model optimization framework for tracking the fiber directions which can capture both the local fiber orientation distribution and the global optimal maximum a posteriori fiber. In our tracking algorithm, the particles propagate the consistent orientations in a collaborative manner, which yields inherent path regularization. It provides a more accurate estimation of fiber orientations with acceptable particle numbers and reasonable computation cost. The paper is organized as follows. In section 2, we develop the global fiber tracking optimization model between the seed point and the target region. The ant colony fiber tracking algorithm is proposed in Section 3. In Section 4, we evaluate the performance of the algorithm on synthetic data and real-world diffusion MRI data. Section 5 concludes the paper and discusses directions for future research.
2 Global Fiber Tracking Global fiber tracking is aim to extract the most likely fiber pathway from a predefined seed point. Our formulation of extracting the most likely fiber pathway is based on computing a path of maximum probability between seed point and target region of interest. Given a fiber path c : [x0 , xn ] → Ω , where Ω ⊂ R3 is a compact image
domain, we define the global cost function f c of c as fc (c(x0 → xn )) =
∫
xn x0
P(T (t), c(t)) dt
(1)
where T (t) = c′(t) c′(t) is the unit tangent vector of c . The total cost is defined as the integral of a local cost function, P( v, x ) , and gives the cost of moving in the unit sphere direction v from the point x ∈Ω . In practice, a white matter fiber path can be modeled as a trajectory of discrete points in the image space, i.e. P1:n = { x0 , x1 ," , xn } . We assume that all vectors have
the same step size, i.e. α i = α , i = 1," , n . Hence, the growth of a path in discrete time can be described as xi +1 = xi + α vi , i = 0,1," , n − 1
(2)
where x0 is the seed point, vi is the fiber direction at position xi . Then the cost of (1) is approximated as n
f (c(x0 → xn )) = α ∑ P(vi , xi ) i −1
(3)
Ant Colony Optimization for Global White Matter Fiber Tracking
269
Here, we define the local cost function, P(vi , xi ) , as the probability of selecting the direction vi at point xi
.
In deterministic tractography, such as streamline method, vi
is the largest eigenvector of the tensor D at xi , i.e. vi = Dx , and the recursion in (4) i
is deterministic because xi +1 is given by xi + α vi with probability P(xi+1 = xi + α vi ) = 1
(4)
Due to both noise and ambiguities for voxels where multiple fibers cross or branch, the local orientations measured by DTI are not completely reliable. Let Φ be the set of observations of a 3D diffusion weighted imaging volume. The method of probabilistic fiber tracking models this uncertainty using a probability density function (PDF) for the fiber orientations. Thus, (4) is rewritten as the stochastic recursion P(xi+1 = xi + α vi ) = p(vi | vi−1 , Φ )
(5)
where p(vi | vi−1 , Φ) is the conditional prior density under the measured diffusion tensor. We assume that the vector vi only depends on the previous state vi −1 , so that p(vi | v0:i−1 , Φ) = p(vi | vi−1 , Φ)
(6)
This means the new state is conditioned directly only on the immediately preceding states, and is independent of the past. Let A be a start region of interest, and B be a target region of interest. The total cost of a fiber path from A to B is n
f (c(x0 ∈ A → xn ∈ B)) = α ∑ p(vi | vi−1 , Φ)
(7)
i =0
However, this measure increases strongly with the path length. A uniform distribution over a range of reasonable lengths is used to describe the prior information about the expected path between A and B . In fact, the priori information about the fiber length is not easy predefined. Iturria et al. [5] define the minimum probability of p(vi | vi −1 , Φ) as the measure. Here, we define a new measure
f a as the average weight of the fiber, i.e. f a ( c( x0 ∈ A → xn ∈ B )) =
α
n
∑ p( v n+1 i =0
i
| vi−1 , Φ)
(8)
We recast the problem of tracking the expected fiber path going from x0 ∈ A to
B as that of approximating the maximum of the probability of (8),
⎛ α n ⎞ f * (c( x0 → B)) = arg max ⎜ ∑ p(vi | vi −1 , Φ) ⎟⎠ ∀ ( x0 ,", xn ∈B ) ⎝ n + 1 i = 0
(9)
270
Y. Feng and Z. Wang
More formally, we define the stochastic fiber tracking problem as follow. Given a seed point x0 ∈ A , a region B , a step length α , P(vi , xi ) at voxel xi , and termination criteria: compute either a most likely path c* (x0 → B) or a set of M likely paths M C(x0 → B) = {c n (x0 → B)}n=1 supported by the DT-MRI data. It can be mapped on a
maximum optimization problem (S, f , Ω) that can be characterized by the following,
2)
A finite set of discrete decision variables X i , i = 1," , n is defined as the voxels over the compact image domain and a set Ω of constraints include fiber curvature, FA value, et al. A finite set vi = vi1 ," , vij ," , viDi of states of variable X i , defined on a unit
3) 4)
sphere. A feasible solution s ∈S , which satisfies all the constraints in the set Ω . A nonempty set s* ∈S of optimal solutions, with f (s* ) ≥ f (s) ∀s ∈S .
1)
{
}
where S is the set of (candidate) solutions, f is the objective function, which assigns to each candidate solution s ∈S an objective function (cost) value f (s) , and Ω is a set of constraints, which defines the set of feasible candidate solutions.
3 Ant Colony Fiber Tracking Ant Colony Optimization (ACO) was introduced as a novel nature-inspired method for the solution of hard stochastic optimization problem. Here, we introduce ACO into global fiber tracking. 3.1 Probability Density Function of Fiber Orientation
Before going into in-depth description of our algorithm, we must discuss the fiber orientation PDFs, and select the one that we will use. In our method, we introduce an approximate observation density model by multiplying the error Gaussian distribution over all gradient directions of the diffusion weighted image, with the motivated that the noise between the observed intensity φ i and the true signal si over direction vi conforms closely to a normal distribution [3], i.e.
μj
M
p(φi | vi ) = ∏ j=1
2πσ 2
−
e
μ 2j 2σ 2
(log
sj
μj
)2
(10)
Here, μ j is the observation intensity of gradient direction j = 1," , M , and s j is the true signal over the gradient direction j = 1, " , M , given by the constrained tensor model, s j = s0 e
−γ bj
e
− β b j ( g Tj v )2
(11)
Ant Colony Optimization for Global White Matter Fiber Tracking
271
where the gradient directions g j and b-value b j are the scanner parameters for data acquisition, v is the principal tensor direction, and s0 is the intensity with no diffusion gradients applied. Parameters γ and β are determined by the eigenvalues
1 2
λ1 ≥ λ2 ≥ λ3 of D with γ = ( λ2 + λ3 ) , β = λ1 − γ . 3.2 Pheromone Representation and Diffusion
In ACO, the pheromone is represented as certain value associated with solution component, and it is stored as a table. At each iteration, when choosing a solution component, an ant uses some of the value from the table as a discrete probability distribution. In case of tractography, the choice an ant makes is the direction on a unit sphere which is not restricted to a finite set. It is impossible to represent the pheromone in the form of table. Here, we adopt a model of pheromone based on the von Mises-Fisher (vMF) distribution over a unit sphere. In fiber tracking, the particles propagate fiber paths stochastically, and the particle deposits a certain amount of pheromone trail along the fiber path. Specifically, at each step xi , i = 0,1," , n , a pheromone trail g i is assigned to fiber component along orientation vij which is defined as a 3-dimentiaonal vMF function g i ( x ; μ ,κ ) =
κ 1/2 (2π ) I1/2 (κ ) 3/2
eκμ
T
x
(12)
1 . The 2 vMF function g i ( x; μ ,κ ) is parameterized with two vectors of parameters: the means where κ ≥ 0, μ = 1 , and I1/2 (⋅) is the modified Bessel function with order
vector vi = vij is the selected fiber direction, and κ is the given vector of concentration parameters. Assume that there are m fiber paths traced by ants at each iteration. For each fiber path f i , i = 1," , m , with ti steps, we store the value of voxel coordinates and objective function E ( f i ) . The fibers are ordered in K paths pass through voxel xi , the pheromone diffusion process is defined as a weighted sum of these K g i functions, which is denoted as Gi ( x ) : K
K
Gi ( x ) = ∑ ω k gik = ∑ ω k k =1
k=1
κ 1/2 (2π ) I1/2 (κ ) 3/2
κμiT x
e
(13)
where ω k is the vector of weights associated with the individual Gaussian functions which is created in the following way. In our method, we keep track of a number of fibers in a fiber archive F = [ f1 , f 2 ," , f n ] . For each fiber f k with tk steps, we store in F the value of its fiber step orientations and the value of the objective function
272
Y. Feng and Z. Wang
E ( f k ) . Each fiber is evaluated and ranked according to E ( f k ) , i.e., fiber f k has rank k . The weight ω k of the fiber f k is calculated as
ωk =
−
1
δ K 2π
e
( k−1) 2 2δ 2 K 2
(14)
which essentially defines the weight to be a value of the Gaussian function with argument k , mean 1.0, and standard deviation δ K , where δ is a parameter of the algorithm. When δ is small, the best-ranked fibers are strongly preferred, and when it is large, the probability becomes more uniform. 3.3 Ant Colony Fiber Tracking Algorithm
In this section, we outline the ant colony fiber tracking algorithm. Ant Fiber Propagation. Consider m particles at the starting point of a path which propagate as time progresses. The traveling of each ant in discrete time can be described by equation (2) with step size α . At step t , an ant chooses a fiber direction according to the pheromone model. As mentioned earlier, the pheromone is a mixture vMF directional model. The number of vMF functions used is equal to the size K of the fiber archive T . Sampling from a mixture vMF function is difficult. We decompose into two stages. In the first stage, we choose one of the vMF functions that compose the pheromone. The probability p j of choosing the jth vMF function is
given by: pj = ω j
K
∑ω
k
(15)
k=1
where ω k is the weight of fiber f k which has been defined in equation (14). Note that the choice of jth vMF function is done only once per ant, per iteration. The second stage consists of sampling the chosen vMF function. The vMF distribution can be efficiently sampled from using the algorithm developed by Sungkyu1 based on works of Wood [10]. Pheromone Update. The pheromone is composed of a number of vMF functions which stored as a fiber archive. This implies that the pheromone update procedure has to perform some form of update on this archive instead of pheromone evaporation. The fiber archive T is initialized generating K fibers by sampling from (12). Then, pheromone update is conducted by adding the set of newly generated fiber to the fiber archive T and then removing the same number of worst fibers, so that the total size of the archive dose not change. This process ensures that only the best fibers are kept in the archive, so that they effectively guide the following ants toward to more likely fiber region in the search process. To summarize, the propagating steps at each iteration are as follows. 1
http://www.unc.edu/~sungkyu/MiscPage.html
Ant Colony Optimization for Global White Matter Fiber Tracking
273
Given step length α , seed points x0 , ants number m etc. Compute the weights ω k according to (14). Repeat k = 1, 2," For i = 1: m while (Termination Criteria is not satisfied) do 5. Estimate tensor model for current point. 6. Calculate Posterior Distribution according to (10) 7. if k = 1 8. Draw a random direction sampling from (10) 9. else 10. Select the j fiber from the archive. 11. Draw a rand direction with vMF along the fiber j . 12. Compute the cost function according to (13) 13. end 14. End while 15. Update fiber archive 16. End 1. 2. 3. 4.
4 Experiments and Results In this section, we evaluate the performance of the method by experiments with both synthetic and real DTI data.
4.1 Synthetic Data
The synthetic data used in this section was created with the following parameters: 120 × 120 × 28 voxels, 1 × 1 × 1mm , b = 800s / mm2 , 6 gradient directions. We generate the observed log-signal intensities according to the constrained tensor model [3] with λ1 / λ2 = 3 , λ2 = λ3 . Similar to [4], we generate synthetic additive
independent zero mean Gaussian noise with variance σ r2 , where σ r = r % ⋅ ( μ k − μ l ) relates to the minimum and maximum image scalar values, μl and μ k , at noise level r % . Fig. 1, panel (a)-(d) shows the results of the first experiment with synthetic twodimensional data with complex tract configurations at noise level 25%. Panel (a) shows the data tensor field corrupted by noised. The tracking result of Friman’s method with 1000 particles is shown in panel (b). Most of the fibers stop near the seed point. Panel (c) and (d) is the tracking result of our method with 50 particles after 3 and 6 iterations. Note that most of the particles can reach the target region after 6 iterations. The second experiment is performed on fiber crossing synthetic data at noise level 25% shown in Fig.1, panel (e). As expected, the principal tensor eigenvectors in the intersection are noisy. Panel (f) shows the particle paths of a set of 1000 particles from the seed point in the left part of the horizontal fiber using Friman’s Bayesian approach [3]. Panel (g) and (h) is the tracking result of our method with 50 particles after 3 and 6 iterations.
274
Y. Feng and Z. Wang
4.2 Brain Diffusion MRI
The diffusion weighted data was acquired from a real human brain using a 3-T GE system and a double echo planar imaging (EPI) sequence, with TR=17000ms, TE=78ms. The images cover a field of view of 24cm using a 144 × 144 grid. 85 axial slices parallel to the AC-PC line were acquired, with a slice thickness of 1.7mm. Acquisitions have 51 gradient directions with b = 900s / mm2 and 8 baseline scans with b = 0 . The tensor parameters were estimated using weighted least squares. Spatial filtering of the tensor field was not performed. (a)
(e)
(b)
(f)
(c)
(d)
(g)
(h)
Fig. 1. (a) Synthetic data at noise level 25%. (b) Friman’s method [3]. (c) our method after 3 iterations and (d) after 6 iterations. (e) Synthetic data with fiber crossing at noise level 25%. (f) Friman’s method [3]. (g) Our method after 3 iterations and (h) after 6 iterations.
Fig.2 shows the experimental results with the background of a coronal slice. Fig. 2 (a), (b) and (c) show 1000 paths of Friman’s method seeded separately the point in Corpus callosum and Corticopontine tract. Fig.2 (d), (e) and (f) are the results of our method with 50 particles and 6 iterations. The figure shows that the sampled paths from Friman’s method are more dispersed, with a number of paths which have low probabilities. However, our method can locate the maximum probabilities region with few particles. The result reveals how our probabilistic algorithm can address the fiber crossing and noise because of the global optimization model and the swarm collaboration.
Ant Colony Optimization for Global White Matter Fiber Tracking
(a)
(b)
275
(c)
(d)
(e)
(f)
Fig. 2. (a) 1000 paths trace from a seed point in Corpus callosum using Friman’s method[3](the same of (b) and (c)). (d) 50 particles 4 iterations trace from a seed point in Corpus callosum, (b) 1000 paths trace from a seed point in the right Corticopontine tract. (e) 50 particles 4 iterations trace from the same point as in (b). (c) 1000 paths trace from a seed point in the left Corticopontine tract. (f) 50 particles 6 iterations trace from the same point as in (c).
5 Conclusions Earlier stochastic tractography algorithms use a large number of particles, many of which can deviate from the correct trajectory and terminate near the seed points. In this work, we proposed an iterative optimization approach based on a swarm tracking technique. We formulate the probability of fiber tracking as a global optimization problem. The particles are guided by both the local fiber orientation and the global direction in a collaborative manner. From the experimental results, we can see that the advantages of the proposed algorithm are several. First, the algorithm only needs a small number of particles to rapidly locate the global optimal fiber. Second, our method can reconstruct the true fiber paths more accurately in uncertainty due to noise and fiber crossings. The local fiber orientation distribution is based on the single tensor model which can not capture the complex fiber configurations. In future work, we will reformulate our method for the multi-tensor model of diffusion.
References 1. Basser, P., Jones, D.: Diffusion-tensor MRI: theory, experimental design and data analysis – a technical review. NMR in Biomedicine 15, 456–467 (2002) 2. Behrens, T., Woolrich, M., Jenkinson, M., Nunes, R., Clare, S., Matthews, P., Brady, J., Smith, S.: Characterization and propagation of uncertainty in diffusion-weighted MR imaging. Magnetic Resonance in Medicine 50, 1077–1088 (2003)
276
Y. Feng and Z. Wang
3. Friman, O., Farneback, G., Westin, C.: A bayesian approach for stochastic white matter tractography. IEEE Trans. Med. Imag. 25, 965–978 (2006) 4. Zhang, F., Edwin, R., Gerig, G.: Probabilistic white matter fiber tracking using particle filtering and von Mises–Fisher sampling. Medical Image Analysis 13, 5–18 (2009) 5. Iturria-Medina, Y., Canales-Rodriguez, E.J., Melie-Garcia, L., Valdes-Hernandez, E., Sanchez-Bornot, J.M.: Characterizing brain anatomical connections using diffusion weighted MRI and graph theory. NeuroImage 36, 645–660 (2007) 6. Zalesky, A.: DT-MRI Fiber Tracking: A Shortest Paths Approach. IEEE Trans. Med. Imag. 27, 1458–1471 (2008) 7. Lifshits, S., Tamir, A., Assaf, Y.: Combinatorial fiber tracking of the human brain. NeuroImage 48, 532–540 (2009) 8. Sotiropoulos, S.N., et al.: Brain tractography using Q-ball imaging and graph theory: Improved connectivities through fibre crossings via a model-based approach. Neuroimage 49, 2444–2456 (2010) 9. Parrott, D., Li, X.: Locating and tracking multiple dynamic optima by a particle swarm model using speciation. IEEE Trans. Evol. Compu. 10, 440–458 (2006) 10. Wood, A.T.A.: Simulation of the von Mises–Fisher distribution. Commun. Stat. Simul. Comput. 23, 157–164 (1994)
An Efficient Bee Behavior-Based Multi-function Routing Algorithm for Network-on-Chip Junhui Wang1, Huaxi Gu1, Yintang Yang2, and Zhi Deng1 1
State Key Laboratory of Integrated Service Networks 2 Institute of Microelectronics, Xidian University, 710071 Xi’an, China [email protected], [email protected], [email protected]
Abstract. To obtain the best food source, bees communicate their forage information by waggle dance, which indicates direction, distance, and quality of the food source they found. In this paper we propose a multi-function routing algorithm (BMFR) inspired by bees' foraging behaviors for network-on-chip (NoC). We utilize a bee agent model to exchange the states among nodes. According to these states we establish a probability model to choose the output direction. We analyze the performance of BMFR on uniform traffic pattern. Finally, we compare BMFR with XY routing algorithm on uniform and tornado traffic patterns. Keywords: Bee agent model, Load-balance, Fault-tolerance, QoS, NoC.
1 Introduction Swarm Intelligence has been an active area of research in the past years. In the field of communication network, Swarm Intelligence has evolved as an effective mean to solve routing problems. Many related work have already been done. AntNet, an adaptive, distributed, mobile-agents-based multi-path routing algorithm was proposed in [1]. Encouraged by AntNet and genetic algorithm, Horst etc. proposed a multi-path routing algorithm with random decision, BeeHive [2], which is based on stochastic process and works without the necessary to save global information. Saleem etc. proposed a bee-inspired power aware routing protocol, BeeSensor [3], which requires little processing and network resources with a bee agent model. To provide guaranteed bandwidth performance for NoC, Peibo, X etc. proposed a bee-inspired QoS routing algorithm [4], in which virtual circuits and spatial division multi-plexing are employed to maintain available paths for different traffic patterns. Al Maghayreh etc. proposed a novel routing algorithm which combines Ant colony and BeeHive, called Bees-Ants [5]. Routing is a key factor that determines how much of the ideal performance could be realized. So, an appropriate routing algorithm is essential for communication networks. A large number of routing algorithms for NoC have been proposed in the past. The three types of routing algorithm are load-balance, fault-tolerance and QoS. Arjun, S etc. proposed a load-balanced adaptive routing algorithm GOAL [6] which achieves global load balance by choosing the direction in each dimension Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 277–284, 2011. © Springer-Verlag Berlin Heidelberg 2011
278
J. Wang et al.
randomly. Fukushima, Y etc. proposed an effective fault-tolerance routing algorithm without virtual channels [7]. Kun, W etc. proposed a family of QoS routing algorithm with local information [8]. Each of these algorithms only considers one of the three aspects, and couldn’t guarantee the performance in the others. In this paper we propose a bee behavior-based multi-function routing algorithm, which achieves load-balance, fault-tolerance and QoS. The rest of the paper is organized as follows. Section 2 describes the bee agent model which is applied to exchange information. Section 3 describes the routing algorithm in detail. The performance of BMFR is given in section 4. In section 5, we conclude the paper.
2 The Bee Agent Model Bee is a social insect that shows very complex behavior composed of individuals, although behavior of individual is extremely simple. Generally speaking, the model of bee colony intelligence consists of three basic elements: food source, employed foragers and unemployed foragers. The two of most basic models of behavior are recruiting bee for certain food source and abandoning the certain food source. To choose the best food source, bees exchange their information about food source by dancing in cellular. The organizational principles of honey bee are helpful to solve routing problems in NoC. We borrow the concept from bees’ communication principles to design the bee agent model, which exchanges information between neighbor nodes. The information is used to estimate the probability which determines the routing direction.
Fig. 1. (a) The 8×8 torus topology, the edge nodes transmit bee agents through these long links. (b) The fault region we assumed (the dashed line is the fault ring).
There are three types of bee agents in this model: forward-bee, backward-bee and reference-bee. The forward-bee and backward-bee work as follows. Firstly, two forward-bees (play the role of forager, the solid line in Fig.1.(a)), with the number of free buffer at each port (just like the information of food source), are launched by each node to the neighbor nodes in the positive direction (x+ and y+) through the control network periodicity. Afterwards, the neighbor nodes read the information carried by the forward-bees (as bees dance in cellular). Then, the
An Efficient Bee Behavior-Based Multi-function Routing Algorithm
279
neighbor nodes rewrite their own free buffer number to the forward-bees to construct the backward-bees (the dashed line in Fig.1.(a)), and send them back to the previous nodes in the negative direction (x- and y-) through the control network. Finally, the previous nodes get the information from backward-bees. Then, the backward-bee is killed. Thus each node obtains free buffer number of the four neighbor nodes. The reference-bee is applied to transmit the coordinate of reference nodes to these nodes on the fault ring, which is defined in 3.2. After dancing in cellular, all of the reference-bees are killed. With the three bee agents, every node in the network could get the information of its neighbor nodes or some special nodes through the control network.
3 Multi-function Routing Algorithm A detailed description about the multi-function routing algorithm we proposed is given in this section. This routing algorithm combines bee agent model, improved GOAL and fault-tolerance routing algorithm. Besides, we also apply different types of packets to provide better QoS. 3.1 Load Balance and QoS A good routing algorithm should provide low latency, high throughput and balanced load on adversarial traffic patterns. In BMFR, the concept quadrant inspired by GOAL is applied to provide global load balance and the probability based minimal routing is applied to provide local load balance in the selected quadrant. Besides, we add priorities for different types of packets to provide better QoS.
Fig. 2. (a) Source and destination nodes in different row and column. (b) Source and destination nodes in the same row or column. For simplicity, we use mesh instead of torus.
Based on the distance between source and destination nodes, a direction is chosen in each dimension. Thus, the quadrant in which a packet will be transmitted was determined after the packet was generated in the source node. How to determine the direction and quadrant are described as follows.
280
J. Wang et al.
a): As is shown in Fig.2.(a), source and destination nodes in different row and column, equation (1)-(4) are applied to determine the quadrant. b): As is shown in Fig.2.(b), source and destination nodes in the same row or column. In the same row, equation (2), else equation (3) is applied to determine the direction.
offset = D − S = (Δx, Δy ) . Px − =
Py − =
min( Δx , k x − Δx ) kx min( Δy , k y − Δy ) ky
,
Px + =
,
Py + =
(1)
max( Δx , k x − Δx ) kx max( Δy , k y − Δy ) ky
.
(2)
.
(3)
Pq1 = Px + × Py + , Pq 2 = Px − × Py + , Pq 3 = Px + × Py − , Pq 4 = Px − × Py − .
(4)
Where D stands for the coordinate of the source node, S for the destination node. Px − stands for the probability that choose the longer path in x-coordinate, Px + for the shorter one. Pqi stands for the probability that choose quadrant i . In order to provide lower latency for special information, we assume that all the packets are divided into four categories. The packets with most stringent requirement of latency, such as video traffic, have the highest priority. For these packets, quadrant 1 is always the choice. The others follow the probabilities which get from equation (4) to determine the quadrant. Thus, we can provide better global load balance and lower latency for these packets need to be transmitted as soon as possible.
fx + f y ≠ 0
Px =
fx + f y = 0
fx , fx + f y Px = 0 ,
Py =
fy fx + f y
Py = 0 .
.
(5)
(6)
Px stands for the probability that choose direction in x-coordinate, Px for y-coordinate. In the selected quadrant, the probability based minimal routing algorithm is applied to provide local load balance and lower latency. For each node, there are two available directions (x or y) to transmit the packet in the shortest path. We choose one according to the probabilities which estimated through free buffer number transmitted by the bee agents and the priority of the packet. The probabilities are estimated by equation (5) and (6), where f stands for free buffer number of the corresponding input port of the neighbor node. We define f = 0 , in the case that neighbor node is a faulty one. When competition emerges, the direction with higher probability is chosen for the packet with higher priority. Thus, because of the decreasing of the latency for these packets with high priority, we can get better performance.
An Efficient Bee Behavior-Based Multi-function Routing Algorithm
281
3.2 Fault Tolerance
As device shrinks toward the nanometer scale, on-chip circuits are becoming vulnerable to errors. So, a fault-tolerance routing algorithm is essential to provide reliable communication on unreliable physical interconnects. In BMFR, we propose a protocol to transmit packets bypass the fault region with minimal hops. To reduce the number of disabled nodes, we adopt the node deactivation algorithm proposed in [7] to form the fault region. For torus, all of the nodes are equal in the network, the fault region is shown in Fig.1.(b). In order to bypass the fault ring with minimal hops, we define the northeast corner node of the faulty ring as N-reference node, the southwest one as S-reference node. The reference-bee is applied to transmit the coordinate of the reference nodes to these nodes on the fault ring. It’s clear that a packet encounters the fault region only when the current and the destination nodes in the same row or column. The fault-tolerance routing algorithm is described as follow. a): Current node on the left (right) of the fault ring. Clockwise (counter-clockwise) is the choice when N-reference node is closer than Sreference node in y-coordinate, otherwise counter-clockwise (clockwise). b): Current node on the top (bottom) of the fault ring. Clockwise (counter-clockwise) is the choice when N-reference node is closer than Sreference node in x-coordinate, otherwise counter-clockwise (clockwise). In BMFR, deadlock could not be avoided. To solve this problem, a timer is applied. The timer starts to work when a packet arrives at the router. In the case that the packet transmitted unsuccessfully before timeout, we assume deadlock emergence. Then the packet will be sent to the local IP core. After a random time, the packet will be retransmitted by the router. 3.3 Pseudo Code
The following pseudo code describes the proposed routing algorithm in detail. /*S is source, D is destination, C is current node */ /*choose quadrant or direction*/ if(priority is 1) if(Source and destination in different row and column) choose quadrant 1; else choose direction with higher probability; else choose quadrant/direction according to probabilities; /*probability-based minimal routing*/ if(C is destination D) send P to local IP core; else if(C and D in the same row or column) if(C on the fault ring) fault-tolerance routing; else normal routing;
282
J. Wang et al.
else normal routing; /*normal routing*/ if(priority is 1) send P to the direction with higher probability; else send P according to probabilities; /*fault-tolerance routing*/ if(C on the left (right) of the ring) if(N-reference closer in y-coordinate) clockwise(counter-clockwise); else counter-clockwise(clockwise); else if(C on the top (bottom) of the ring) if(N-reference closer in x-coordinate) clockwise(counter-clockwise); else counter-clockwise(clockwise);
4 Performance Evaluation In order to analyze the performance of BMFR, we simulate the results on the 8×8 torus topology. Each node operates asynchronously and generates packets at time interval chosen from a negative exponential distribution. The simulation is completed with the network simulator-OPNET. Wormhole switching is chosen as the switching mechanism. We analyze the performance of the network with 6% faulty nodes in terms of latency and throughput on uniform traffic pattern. We also compare BMFR with XY routing algorithm on uniform and tornado traffic patterns in the case that all nodes are working well. 14000
0.18
BMFR
throughput(packets/cycle/IP)
latency(cycles)
10000
8000
6000
4000
2000
0 0.00
BMFR
0.16
12000
0.14 0.12 0.10 0.08 0.06 0.04 0.02
0.05
0.10
0.15
0.20
offered load(packets/cycle/IP)
0.25
0.30
0.00 0.00
0.05
0.10
0.15
0.20
0.25
0.30
offered load(packets/cycle/IP)
Fig. 3. (a) Latency of BMFR on uniform traffic. (b) Throughput of BMFR on uniform traffic.
The performance of BMFR with 6% faulty nodes on uniform traffic pattern is shown in Fig.3. It shows that BMFR has good performance when offered load is low. In Fig.3.(a), we can see that the latency keeps small and stable until offered load reaches 0.10. Then, the latency rises sharply with the growth of offered load. In Fig.3.(b),
An Efficient Bee Behavior-Based Multi-function Routing Algorithm
283
we can see that the network reaches saturation point when the offered load is 0.22. But the latency is really a large one at the saturation point. Fig.4.(a) and (b) show the performance of BMFR and XY routing algorithm on uniform traffic, (c) and (d) on tornado traffic pattern without faulty nodes. A good routing algorithm should provide stability on adversarial traffic patterns. It’s clear that BMFR is more stable than XY routing algorithm on different traffic patterns. It means that BMFR has adaptability benefit of XY routing algorithm. 16000 14000
0.25
XY BMFR
XY BMFR
throughput(packets/cycle/IP)
0.20
latency(cycles)
12000 10000 8000 6000 4000
0.15
0.10
0.05
2000 0 0.00
0.05
0.10
0.15
0.20
0.25
0.30
0.00 0.00
0.35
0.05
22000 20000
0.12
XY BMFR
0.15
0.20
0.25
0.30
0.35
XY BMFR
0.10
throughput(packets/cycle/IP)
18000 16000
latency(cycles)
0.10
offered load(packets/cycle/IP)
offered load(packets/cycle/IP)
14000 12000 10000 8000 6000 4000
0.08
0.06
0.04
0.02
2000 0 0.00
0.02
0.04
0.06
0.08
0.10
offered load(packets/cycle/IP)
0.12
0.14
0.00 0.00
0.02
0.04
0.06
0.08
0.10
0.12
0.14
offered load(packets/cycle/IP)
Fig. 4. (a) Latency of BMFR and XY routing algorithm on uniform traffic. (b) Throughput of BMFR and XY routing algorithm on uniform traffic. (c) Latency of BMFR and XY routing algorithm on tornado traffic. (d) Throughput of BMFR and XY routing algorithm on tornado traffic.
5 Conclusions In this paper we proposed BMFR for NoC. Bee agent model is applied to exchange information among nodes. Based on quadrant and probability based minimal routing we get better load balance. The priority of packets is applied to achieve lower latency for these packets with high requirement on latency. The fault-tolerance routing algorithm provides reliable communication on unreliable physical interconnects. For general purpose, BMFR contains all of the three main aspects of a routing algorithm. We analyzed the performance of BMFR with OPNET simulator. Simulation results show the latency and throughput under different offered loads and distribution probabilities. In the future, we will consider the case that more than one fault ring emerge and online fault detection.
284
J. Wang et al.
Acknowledgments. This work is supported partly by the National Science Foundation of China under Grant No.60803038, No.61070046 and 60725415, the special fund from State Key Lab (No.ISN090306), the Fundamental Research Funds for the Central Universities under Grant No.K50510010010 and the 111 Project under Grant No. B08038.
References 1. Caro, G.D., Dorigo, M.: AntNet: Distributed stigmergetic control for communication networks. J. Artificial Intelligence Research 9, 317–365 (1998) 2. Wedde, H.F., Farooq, M., Zhang, Y.: BeeHive: An Efficient Fault-Tolerant Routing Algorithm Inspired by Honey Bee Behavior. In: Dorigo, M., Birattari, M., Blum, C., Gambardella, L.M., Mondada, F., Stützle, T. (eds.) ANTS 2004. LNCS, vol. 3172, pp. 83– 94. Springer, Heidelberg (2004) 3. Saleem, M., Farooq, M.: BeeSensor: A Bee-Inspired Power Aware Routing Protocol for Wireless Sensor Networks. In: Giacobini, M. (ed.) EvoWorkshops 2007. LNCS, vol. 4448, pp. 81–90. Springer, Heidelberg (2007) 4. Peibo, X., Huaxi, G.: Intelligent bees for QoS routing in Networks-on-Chip. In: 2nd PacificAsia Conference on Circuits, Communications and System (PACCS), pp. 311–314. IEEE Press, Beijing (2010) 5. Al Maghayreh, E., Al-Haija, S.A., et al.: Bees_Ants Based Routing Algorithm. In: International Conference on Intelligent Systems, Modelling and Simulation (ISMS), pp. 344–349. IEEE Press, Liverpool (2010) 6. Arjun, S., Dally, W.J., et al.: GOAL: a load-balanced adaptive routing algorithm for torus networks. In: 30th Annual International Symposium on Computer Architecture, pp. 194– 205 (2003) 7. Fukushima, Y., Fukushi, M., et al.: Fault-Tolerant Routing Algorithm for Network on Chip without Virtual Channels. In: 24th IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems, pp. 313–321. IEEE Press, Chicago (2009) 8. Kun, W., Changshan, W., et al.: Quality of service routing algorithm in the torus-based network on chip. In: 8th IEEE International Conference on ASIC, pp. 952–954. IEEE Press, Changsha (2009)
Artificial Bee Colony Based Mapping for Application Specific Network-on-Chip Design Zhi Deng1, Huaxi Gu1, Haizhou Feng2, and Baojian Shu2 1
State Key Laboratory of Integrated Service Networks, Xidian University, 710071 Xi’an, China 2 ZTE Corporation, Shenzhen, China [email protected], [email protected]
Abstract. A new mapping algorithm is proposed based on Artificial Bee Colony (ABC) model to solve the problem of energy aware mapping optimization in Network-on-Chip (NoC) design. The optimal mapping result can be achieved by transmission of the information among various individuals. The comparison of the proposed algorithm with Genetic Algorithm (GA) and Max-Min Ant System (MMAS) based mapping algorithm shows that the new algorithm has lower energy consumption and faster convergence rate. Simulations are carried out and the results show the ABC based method could save energy by 15.5% in MMS, 5.1% in MPEG-4 decoder and 12.9% in VOPD compared to MMAS, respectively. Keywords: Network-on-Chip(NoC), consumption.
mapping
optimization,
energy
1 Introduction With the development of semiconductor technology, the number of Intellectual Property (IP) cores integrated on a single chip is increasing dramatically. It is possible for a single chip to integrate a system. Finally, System-on-Chip (SoC) appears. However, with the further progress in system integration, the existing shared bus structure faces enormous challenges in performance, such as delay, throughput, power consumption, synchronization, scalability and so on. Fortunately, an emerging research field, Network-on-Chip (NoC), endeavors to solve these issues above. As soon as it is proposed, NoC has been attracted more attentions for some new mechanisms introduced. For example, it uses wormhole switching as basic switching mechanism, and Global Asynchronous Local Synchronous (GALS) as clock mechanism which can solve the single global clock synchronization challenge. Application specific mapping from IP core to architecture is a key step in NoC design, which significantly affects the system performance, such as energy, latency and load balance. However, the mapping optimization is a NP-complete problem and difficult to obtain optimal solution by traditional methods due to the complexity of time and space. Therefore, many scholars settle this problem by using heuristic algorithm, such as Branch and Bound(BB)[1], Ant Colony Algorithm(ACA) [2], Genetic Algorithm(GA)[3], and Particle Swarm Optimization(PSO)[4] algorithm Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 285–292, 2011. © Springer-Verlag Berlin Heidelberg 2011
286
Z. Deng et al.
et al. However, those methods show low convergence speed and the optimal solution is always affected by local solution. On the contrary, Artificial Bee Colony(ABC) algorithm performs lower complexity and better performance, for example, it not only converges with a rapid speed, but is hardly affected by local optimal solution [5][6]. In this paper, we address energy aware mapping from IP core to NoC platform. First of all, the energy model associated to 2D mesh topology and mapping problem is formulated. Then, an efficient colony algorithm is proposed to map IP cores to nodes of NoC, such that the total energy consumption is minimized. This method shows a better performance and also can be applied to the other topologies.
2 Related Work Hu et al. [1] proposed a Communication Weighted Model (CWM) by constructing the graph of IP core as vertex and communication volume as weight. They adopted Branch-and-Bound (BB) algorithm to solve optimization model in the target of energy such that bandwidth constraint. According to simulation results, the proposed method had advantages over random mapping and decreased 60% of communication energy. Zhou et al. [2] used improved ant colony algorithm to solve optimization model with objective of power consumption. Due to the development in the convergence of MaxMin Ant System (MMAS) [7] algorithm, this method could achieve better performance. Experimental results showed that 25% to 70% of power consumption was reduced depending on different applications. Tang et al. [3] suggested a two-step Generic Algorithm (GA) based approach to map from the parameterized task graph to NoC architecture with 2D mesh topology. They believed that the method could be able to handle large task graph and provide near optimal mapping in a few minutes. Wang et al. [4] proposed a heuristic two step strategy to map tasks to tiles on NoC platform in the target of energy consumption and delay. They tried to assign the tasks to IP cores firstly, and then mapped from IP core to tile on architecture by chaotic Discrete Particle Swarm Optimization (DPSO) method. They said that the solution obtained by DPSO was 6.852% better than what was obtained by GA.
3 Problem Formulation Definition 1. Given a communication core graph(CCG), where vertex ti ∈ T represents a IP core in the application specific communication, a directed arc ci , j ∈ C represent communication between the IP core ti and t j , and the weight of edge vi , j ∈ V represents communication volumes from the IP core ti to t j . Definition 2. Given a topology architecture graph (TAG) G ( N , P, E ) , where vertex
ni ∈ N represents a tile in the architecture, a directed edge pi , j ∈ P represents routing
path from the tile ni to tile n j , and ei , j ∈ E in the architecture represents average energy consumption of sending one bit of data from the source tile ni to destination tile n j .
Artificial Bee Colony Based Mapping
287
3.1 Energy Model
We use the model for energy consumption proposed in [8]. The energy ( Ebit ) consumed when one bit of data is transported from a tile to its neighbor is defined as Ebit = ES bit + EBbit + EWbit + ELbit .
(1)
where ESbit , EBbit , EWbit and ELbit represent the energy consumed by the switch, buffering, interconnection wires inside switching fabric and links, respectively. Since the length of a link is typically in the order of millimeters on chip, the energy consumed by buffering( EBbit ) and internal wires( EWbit ) is negligible compared to ELbit [9]. So equation (1) can be defined approximately as
Ebit = ESbit + ELbit .
(2)
Then average energy consumption per bit data from tile ni to n j is n ,n j
Ebiti
= H × ESbit + ( H + 1) × ELbit .
(3)
where H represents hops of bit traversing from tile ni to n j . Generally speaking, the H in regular topology could be Manhattan distance instead. 3.2 Optimization Model
With the model mentioned in 3.1, the optimal mapping problem of minimizing communication energy consumption can be described as min{Energy = ∑ ∀c vi , j × Ebit
map ( ti ), map ( t j )
i, j
}.
(4)
s.t. ∀ti ∈ T , map (ti ) ∈ N .
(5)
∀ti ≠ t j ∈ T , map(ti ) ≠ map(t j ) ∈ N .
(6)
map ( t ), map ( t j ) is the where map(ti ) represents the mapping result of IP core ti and Ebit i average energy consumption per bit. Conditions (5) and (6) mean that each IP core should be mapped to one tile and no tile can host more than one IP core.
4 ABC Based Mapping As is known to all, a colony of honey bee is composed of a queen, some drones and thousands of workers. The mission of the queen is to lay eggs as many as possible and make new colonies. The drones’ most important work is to mate with queen in order to help queen produce more offspring. The smallest but most individual in a colony is
288
Z. Deng et al.
worker bee. The worker bees are responsible for building honeycomb, taking caring of the young, feeding the queen and drones, collecting foods and so on. The ABC algorithm derives from the process of worker bees searching food for the individuals’ cooperation. It was firstly presented by Seely in 1995 and then improved by D. Karaboga in 2005 [10]. Generally speaking, three kinds of worker bees, leader bees, scout bees and follower bees, are in charge of the food and information collection. In other words, the optimal solution can be achieved by the following behavior in search space via the Artificial Bee Colony (ABC) algorithm [6]. 4.1 The Behavior of Leader Bee
The responsibility of leader bees is leading the followers to certain food source. So, one food source has a leader bee at least and all the leaders should know the situation of their food. Also, the leader bees should tell the followers necessary information about quality and scale of the food they known. According to the experience, the proportion of leader bees in the colony is 50% in this method we used. 4.2 The Behavior of Scout Bee
The Scouts fly around and search for food randomly. Once find, the scout bee will fly back to report the information of the food by dancing as soon as possible. In ABC algorithm, the scout bee must finish the activities including searching solution randomly and reporting necessary information. In this paper, we choose 10% individuals of the colony as the scout bees. 4.3 The Behavior of Follower Bee
The Followers must decide which food source to go to when they get the information from the leader bee. Most individuals do select the best food source finally and few of them do not for some uncertain factors. In order to simulate the behavior of follower bee, the artificial follower bees must be responsible for the selection of solution according to the current information, and few of them also need to go to the non-best location with roulette simultaneously. The ratio of follower bees is 40%. 4.4 The Pseudo Code
The following pseudo code is to describe the proposed algorithm in detail: ABC based mapping const colony_size = 100;// size of colony max_iter = 1000;// max iterations limit = 50;// max number without changed mut_prob = 0.1;// mutation probability generate initial colony; begin iter := 1; repeat sort all individuals in ascending order of cost; //cost relates to energy consumption leader bee behavior();
Artificial Bee Colony Based Mapping
289
scout bee behavior(); follower bee behavior(); if number of individual k without changed > limit individual k := generate new individual randomly; endif. for individual i //mutate all colony with a probability of 0.1 if random number > mut_prob individual i:= generate new individual randomly; endif. endfor. record best individual in all colony; iter := iter + 1; until iter = max_iter end.
5 Experiments and Results 5.1 Experimental Descriptions
In order to show the performance of the proposed mapping algorithm, we use Genetic algorithm(GA) [3], MAX-MIN Ant System(MMAS) [2] and Artificial Bee Colony (ABC) based mapping to different benchmarks, respectively. The simulations are done with MATLAB in windows XP OS on a computer with Pentium(R) Dual-Core CPU E6500 @2.93GHz 2.93GHz, 1.96GB RAM. In this paper, the Bit energy consumption for link and switch are 0.7066(nJ) and 0.9334(nJ) at technology of 1GHz and 0.18µm, respectively [11].
Fig. 1. The benchmark of application specific traffic: (a) MMS communication core graph (Mb/s); (b) MPEG-4 decoder communication core graph (Mb/s); (c) VOPD communication core graph (Mb/s)
290
Z. Deng et al.
As is shown in Fig. 1, they are three application specific communication core graphs used in most of simulations in application specific NoC design[1][2][8][9][12]. Fig. 1(a) is a Multi Media System (MMS) communication graph and the system tasks are partitioned into 40 tasks that are assigned onto the 18 IP cores [13]. In this paper, we will map from MMS with 18 cores onto 3×6 2D mesh topology architecture. The MPEG-4 decoder has been used for testing purposes in the past [14] and the application core graph with 12 IPs is shown in Fig. 1(b) [15]. It will be mapped onto 3×4 2D mesh topology. The Video Objective Plane Decoder (VOPD) core graph with 16 IPs [15] will be mapped onto 4×4 2D mesh topology is shown in Fig. 1(c). 5.2 Experimental Results
Different optimization algorithms lead to different performances and runtimes in the process of getting optimal solution. Fig. 2 shows the optimal solution converged by GA, MMAS and ABC based mapping during iteration process in different benchmarks respectively. It is easy to conclude that the ABC based mapping shows a 4
3.2
x 10
11000 GA MMAS ABC
3
10000 energy(mJ)
energy(mJ)
2.8
2.6
9500
2.4
9000
2.2
8500
2
GA MMAS ABC
10500
0
0.5
1
1.5
2
2.5 3 Run Time(S)
3.5
4
4.5
5
8000
0
0.5
1
(a) 1.4
x 10
2
2.5 3 Run Time(S)
3.5
4
4.5
5
(b)
4
1.3
GA
1
GA MMAS ABC
1.35
MMAS ABC
0.95 Normalized energy
1.25 energy(mJ)
1.5
1.2 1.15 1.1
0.9
0.85
1.05
0.8
1 0.95
0.75 0.9
0
0.5
1
1.5
2
2.5 3 Run Time(S)
(c)
3.5
4
4.5
MMS
MPEG-4
VOPD
5
(d)
Fig. 2. The performance of different methods during iteration process: (a) the energy consumption in MMS; (b) the energy consumption in MPEG-4 decoder; (c) the energy consumption in VOPD; (d) the normalized energy consumption of the final results.
Artificial Bee Colony Based Mapping
291
faster convergence speed than GA and MMAS. Perhaps, GA based mapping could have got a global optimal solution if it could maintain the convergence rate. Unfortunately, it always falls into the local optimization and does not get a better solution. The convergence of MMAS based mapping is so slow that it needs much time to run in order to get better mapping performance. Moreover, it is sensitive to the local optimal solution. Fig. 2(a) shows a significant reduction of energy consumption with runtime by using the ABC based mapping compared to GA and MMAS. The mapping result of ABC is 20329.28mJ in MMS, but the GA is 22500.49mJ and MMAS is 24049.83mJ. The results of three mapping methods in MPEG-4 decoder are shown in Fig. 2(b). Precisely, the energy consumption of ABC, MMAS and GA based mapping methods are 8471.16mJ, 8919.26mJ and 8669.6mJ respectively. In VOPD, it is conclude that the energy consumption of the ABC based mapping saves more than GA and MMAS based mapping. As is shown in Fig. 2(c), the energy consumption is 9470.21mJ with the ABC, 1087.4mJ with MMAS and 10803.52mJ with GA based mapping finally. Fig. 2(d) shows the normalized energy consumption of the final results with different mapping methods, the energy consumption of MMAS method is unitary in this figure. According to the calculation analysis, the energy consumption of AFSA saves 15.5% in MMS, 5.1% in MPEG-4 decoder and 12.9% in VOPD compared with MMAS based mapping.
6 Conclusions and Future Works In this paper, an artificial bee colony (ABC) based mapping method is presented in application specific NoC design. According to the simulation results of different benchmark applications, the proposed mapping method shows a better performance than GA and MMAS, such as lower energy consumption and faster convergence rate. The energy of ABC based mapping can save 15.5% in MMS, 5.1% in MPEG-4 decoder and 12.9% in VOPD compared to MMAS, respectively. In the future, more work needs to be done in order to improve global search capability. Acknowledgments. This work is supported partly by the National Science Foundation of China under Grant No.60803038, No.61070046 and 60725415, the special fund from State Key Lab (No.ISN090306), the Fundamental Research Funds for the Central Universities under Grant No.K50510010010, the 111 Project under Grant No. B08038 and ZTE University cooperation project.
References 1. Jingcao, H., Radu, M.: Energy-aware mapping for tile-based NoC architectures under performance constraints. In: The 2003 Asia and South Pacific Design Automation Conference, pp. 233–239. ACM, Kitakyushu (2003) 2. Zhou, G., Yin, Y., Hu, Y., Gao, M.: NoC Mapping Based on Ant Colony Optimization Algorithm. Computer Engineering and Applications 41(18), 7–10 (2005) (in Chinese)
292
Z. Deng et al.
3. Lei, T., Kumar, S.: A two-step genetic algorithm for mapping task graphs to a network on chip architecture. In: Euromicro Symposium on Digital System Design, pp. 180–187 (2003) 4. Lei, W., Xiang, L.: Energy- and Latency-Aware NoC Mapping Based on Chaos Discrete Particle Swarm Optimization. In: 2010 International Conference on Communications and Mobile Computing (CMC), pp. 263–268 (2010) 5. Karaboga, D., Basturk, B.: On the performance of artificial bee colony (ABC) algorithm. Applied Soft Computing 8(1), 687–697 (2008) 6. Ding, H., Li, F.: Bee Colony Algorithm for TSP Problem and Parameter Improvement. China Science and Technology Information 03, 241–243 (2008) (in Chinese) 7. Stüzle, T., Hoss, H.H.: MAX-MIN Ant system. Future Gener. Comput. System. 16(9), 889–914 (2000) 8. Hu, J., Marculescu, R.: Exploiting the routing flexibility for energy/performance aware mapping of regular NoC architectures. In: Design, Automation and Test in Europe Conference and Exhibition, pp. 688–693 (2003) 9. Hu, J., Marculescu, R.: Energy- and performance-aware mapping for regular NoC architectures. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 24(4), 551–562 (2005) 10. XingBao, L., ZiXing, C.: Artificial Bee Colony Programming Made Faster. In: Fifth International Conference on Natural Computation (ICNC 2009), pp. 154–158 (2009) 11. Chen, X., Peh, L.-S.: Leakage power modeling and optimization in interconnection networks. In: The 2003 International Symposium on Low Power Electronics and Design (ISLPED 2003), pp. 90–95 (2003) 12. Van Der Tol, E.B., Jaspers, E.G.T.: Mapping of MPEG-4 decoding on a flexible architecture platform. In: SPIE - Medio. Processors, pp. 1–13 (2002) 13. Morgan, A.A., Elmiligi, H., El-KharashiF, M.W.,Gebali, F.: Multi-objective optimization for Networks-on-Chip architectures using Genetic Algorithms. In: 2010 IEEE International Symposium on Circuits and Systems (ISCAS), pp. 3725–3728 (2010) 14. Murali, S., De Micheli, G.: SUNMAP: a tool for automatic topology selection and generation for NoCs. In: 41st Proceedings of Design Automation Conference, pp. 914–919 (2004) 15. Dumitriu, V., Khan, G.N.: Throughput-Oriented NoC Topology Generation and Analysis for High Performance SoCs. IEEE Transactions on Very Large Scale Integration (VLSI) Systems 17(10), 1433–1446 (2009)
Using Artificial Bee Colony to Solve Stochastic Resource Constrained Project Scheduling Problem Amin Tahooneh1 and Koorush Ziarati2 1
Department of Mathematics, College of Science, Science, Shiraz University, Shiraz, Iran 2 Department of Computer Science and Engineering, Shiraz University, Shiraz, Iran [email protected], [email protected]
Abstract. Resource constrained project scheduling (RCPSP) is one of the most crucial problems in project problem. The aim of RCPSP, which is NP-hard, is to minimize the project duration. Sometimes the activity durations are not known in advance and are random variables. These problems are called stochastic resource constrained project scheduling problems or stochastic RCPSP. Various algorithms such as genetic algorithm and GRASP have been applied on stochastic RCPSP. Bee algorithm is a metaheuristic based on the intelligent behavior of honey bee swarms. The goal of this study is adopting the artificial bee colony (ABC) algorithm to solve stochastic RCPSP and investigating its performance on the stochastic RCPSP. Simulation results show that proposed algorithm is an effective method for solving the stochastic resource constrained project scheduling problem. With regard to the problems with high distribution variability, the ABC algorithm is more effective than the other algorithms in the literature. Keywords: Artificial Bee Colony, stochastic RCPSP, Serial-SGS, Stochastic Serial-SGS.
1
Introduction
Resource constrained project scheduling problem is one of the major problems in project management. It has been shown that this problem is the NP-hard [4]. During the project execution, each activity requires many resources. Since the capacity of each resource is limited, the proper use of resources will reduce the makespan of the project. These projects, which focus on the minimization of project duration subject to resource and precedence constraints, have 2 activities and m renewable resources. In all scheduling problems, activity durations are not deterministic because during the project implementation there may be a series of random factors affecting the duration of activities. These uncertainties are derived from several factors such as an increase or decrease in the originally estimated time, unavailability of resources, late material arrivals, the absence of workers, network-structure changes and the bad weather delays. In this article, a case in which durations are not known beforehand has been considered. The durations are random variables. The objective of stochastic RCPSP is Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 293–302, 2011. © Springer-Verlag Berlin Heidelberg 2011
294
A. Tahooneh and K. Ziarati
to minimize the expected makespan. Now there exists an important question: What is the feasible solution to the stochastic RCPSP when a deterministic problem becomes a stochastic problem. Necessarily a deterministic scheduling does not provide us with sufficient information about creating a feasible solution. Unlike the events that occur during the project, the represented solution should express the appropriate behavior. Such solutions are called “Policy” [9]. Several classes of the policies were examined by Stork [14]; the classes of the so-called activity-based policies were utilized for large instances. Also, this policy is used in this paper. Here, the stochastic serial-SGS is applied in order to find a feasible solution to the stochastic RCPSP [2]. There are a few heuristic algorithms for the stochastic RCPSP. Research into stochastic RCPSP, however, has remained limited to date, with few computational publications addressing this problem: Igelmund and Radermacher [9] and stork [14] reported on experiments using branch-and-bound algorithms, while Golenko-Ginzburg and Gonik [6] and Tsai and Gemmill [15] developed greedy and local search heuristics. Time/resource trade-offs with stochastic activity durations, in which the resource allocation influences the mean and/or the variance of the durations, have been investigated by Gerchak [5] Gutjahr [7] and Wolmer [17]. This work aims at presenting a heuristic algorithm for the stochastic RCPSP. In this paper, the artificial bee colony (ABC) algorithm is used and a method for finding a solution to a stochastic RCPSP is investigated. To minimize the expected makespan of a stochastic RCPSP, meta-heuristics inspired from the collective behavior of honey bees. The remainder of this paper is organized as follows: in Section 2, the definition of the problem and the formulation of the stochastic RCPSP are presented; in section 3, the artificial bee colony algorithm is explained. Next, Section 4 explains the application of ABC algorithm for stochastic RCPSP. Then, the computational results of the expected makespan objective are reported in the section 5; Finally, Section 6 concludes this work.
2
Definition of Stochastic RCPSP
Before the stochastic RCPSP is examined, it is necessary to be familiar with the resource constrained project scheduling problem. RCPSP has 2 activities and renewable resources. The set of activities is denoted by 1,2, … , 2 . The activities 1 and are called dummy activities representing the start and end 2 activities, respectively. The duration of the activity is . There are different types of renewable resources, and each resource has a limited quantity. The availability of units, each resource of Type is 1, 2, … , ( is the number of different units of the resource k. It is assumed that A is an resources); the activity i requires order relation on such that , , if and only if the activity cannot start before the activity i has finished; is called a precedence relation. A feasible where schedule for the project is represented by is the , ,…, (Subsequently starting time of the activity . The completion of the project is referred to as ). RCPSP is modeled as follows:
Using Artificial Bee Colony
Minimize
295
C
subject to S ∑
1 S ,
d r
i, j R
k
A R, t
0, S
where , represents the set of activities in process at time [16]. Stochastic RCPSP is a stochastic variant of RCPSP in which the activity durations will be random variables with a specific probability distribution. The random vector shows the activity durations. For the start and end activities we , ,…, have P D 0 1, and For the ith activity 2, 3, … , 1 it is assumed that represents the probability of event . 0 0, where P D For the stochastic RCPSP the objective is to minimize the expected makespan. The expected makespan of a priority list λ is computed using the following equation, E λ, nscen
∑
C
Sλ d ,
2
where is the number of different scenarios, is a sample of independent scenarios of d, and is the schedule that ,…, will be obtained by applying the stochastic Serial-SGS on the priority list under the is equal to . scenario . Finally
3
Artificial Bee Colony (ABC) Algorithm
In the past decade, metaheuristics have been successfully applied on the NP-hard optimization problems. Due to NP-hardness of stochastic RCPSP, the metaheuristics such as GA and GRASP have been used by authors to solve it. In this paper, the artificial bee colony is used to solve this problem. The ABC algorithm is one of the newest and most successful metaheuristics presented to solve optimization problems. The behavior of honey bees has been studied extensively by natural scientists and formulated with the model of bee′s behavior. The ABC algorithm has been inspired by the intelligent behavior of real honey bees [10], [11]. One of the examples of bee colony behavior is the waggle dance of bees during the food procuring. When a worker honey bee has visited a food resource, she returns to her hive, and she performs a waggle dance on the vertical face of the honey comb to inform the other bees in the hive about the location of the food source. This behavior can cause additional workers to move to the location, thus enabling the colony to exploit the food source effectively. In this paper, the artificial bee colony consists of three groups of bees: Employed, onlooker and scout bees. The first half of the colony consists of the employed artificial bees and the second half constitutes the onlooker bees. For every food source there is only one employed bee. The employed bee whose food source has been exhausted becomes a scout. In a robust search, the exploration process and the exploitation process must be carried out simultaneously. In the ABC, while the onlooker bees and employed bees carry out the exploitation process in the search space, the scout controls the exploration
296
A. Tahooneh and K. Ziarati
process. These three steps are repeated until the termination criteria are satisfied [10]. The search carried out by the artificial bees can be summarized as follows: Such employed bee determines a food source in the neighborhood of the food source in her memory. Employed bees share their information with the onlooker bees waiting in the hive and then the onlooker bees select one of the food sources advertized by the employed bees. An onlooker bee moves toward the chosen food source in the previous step and selects a new food source in the neighborhood of the current position. A bee whose food source has been abandoned becomes a scout and starts to search a new food source randomly. The primary food sources are determined randomly. At the update stage, an employed bee will choose a feasible solution (food source) in the neighborhood of its current position, randomly and moves toward a new position. If the new food source has better nectar, the employed bee will change its position. The employed bees in the neighborhood of the current situation move according to the following motion equation: x
x
x
x
3 ,
is a position in the neighborhood of the employed bee i and in this equation, selected randomly. The vector shows the bee's previous status. The vector is a random vector so that each component of this vector will be located between -1 and 1. After the employed bees have explored the new areas of food sources, they will come into the hive and share the information with the onlooker bees. Now an onlooker bee needs a process to select an employed bee as her guide. For this purpose, the probability for the employed bee i will be calculated as follows, P
4 ,
∑
where for the maximization problems is equal to and for the minimization problems is calculated according to the following equation, 5 ,
f
where is the objective function value for the employed bee i. After calculating the probabilities, each onlooker bee employs the roulette wheel to choose an employed bee based on its probability. After selecting a guide, the onlooker bee updates its position using the following equation: x
x
x
x
6 ,
where is the position of the employed bee that has been selected as a guide. Should the newly obtained position be better than the old one, the new position will replace the previous position. Now the food sources with poor qualities are abandoned and their associated bees become scouts. In the next section the way of solving a stochastic RCPSP by means of the ABC algorithm is presented.
4
Application of ABC Algorithm for Stochastic RCPSP
The details about the ABC algorithm to solve the stochastic RCPSP are expressed in this section. Figure 1 presents the proposed ABC algorithm to solve the stochastic RCPSP in pseudo code.
Using Artificial Bee Colony
297
ABC Algorithm (Population size, Num_scouts, Max-Numerator, D)
Calculate the average project. Calculate nscen independent scenarios from d. Initialization step Define SN = Population size/ 2 For i = 1 to SN Initialize Position randomly Numerator = 0 End For Evaluation step For i = 1 to SN EvaluationFunction(Position ) End For population λ ,λ ,…,λ } Updating step While termination criteria not met do (Send Employed Bees) For i = 1 to SN Select Neighborhood position randomly Calculat position by use of equation 3 EvaluationFunction(position ) If ( Fitness λ λ ) λ population population λ Else Numerator Numerator 1 End For (Send Onlooker bees) Calculate probabilities for each food source using equation 4 For i = 1 to SN Select Neighborhood k from food sources based on roulette wheel Calculat position by use of equation 6 ) EvaluationFunction(position If ( Fitness λ Fitness λ ) population population λ λ Else Numerator Numerator 1 End For (Send Scout Bees) For i = 1 to SN If Numerator Max_Numerator Initialize food source i randomly Fig. 1. Pseudo code of the ABC algorithm for stochastic RCPSP
298
A. Tahooneh and K. Ziarati
Numerator End If End For End while Termination step Return best priority list.
0
Fig. 1. (Continued)
In the ABC algorithm (see Fig.1), to provide a priority list for a stochastic project and its corresponding food source, the function EvaluationFunction is used. This function is presented in the figure 2. EvaluationFunction(Position ) Evaluate priority list δ (for average project) Evaluate food source for average project using serial-SGS Evaluate priority list λ using LFT rule on the average project (for stochastic project) Evaluate food source for stochastic projects using stochastic serial-SGS E λ , nscen . λ Fig. 2. Pseudo code of the EvaluationFunction for
At first, the function EvaluationFunction evaluates the priority list δ for an average project according to the position of the bee ; the average project is a deterministic project obtained from the stochastic project, where the duration of each activity is the mean of its duration distribution. Then, the serial schedule generation scheme (serial-SGS) is used to build a scheduling from the priority list δ [12]. The serial-SGS takes the activities one at a time from the priority list and schedules them at is made using the earliest feasible precedence and resources. Next, a priority list the LFT rule on the average project. To evaluate the food source for the stochastic project, another type of policy is needed. In this paper, the stochastic serial-SGS is used to generate a feasible schedule. For a given sampled, the stochastic serial-SGS takes the activities one by one from the list and schedules them at the earliest possible time, but without overtaking the activities already scheduled. Finally, according to the equation 4 the fitness of the priority list is calculated. The ABC algorithm consists of a set of different kinds of bees that find the priority list with the minimum expected makespan. The method used by a bee to find the food source specifies its type. A bee which finds a new food source simply according to her past position is called an employed bee. A bee that remains in the hive to detect a new food source by use of information from the employed bees is named as onlooker bee, and the bee which moves in the search space randomly is called a scout. The ABC algorithm uses the following steps to find a priority list with the minimum expected makespan:
Using Artificial Bee Colony
299
(Initialization step) the ABC algorithm receives the following parameters as inputs: population size (Population size), the number of scouts (Num_Scouts), Max_Numerator, and . Parameter is the sample of nscen independent scenarios of d. Max_Numerator is the parameter utilized to denote the food sources that must to be abandoned. At this step, the population is divided into two equal subsets that consist of the employed and onlooker bees. The number of employed bees (SN) will be set to half of is the parameter that be increased when a food the population size. source is not developed in two continuous cycles. At last, the average project is created. (Evaluation step). The initial population for the ABC algorithm is produced at the evaluation step. The function EvaluationFunction generates every member of the initial population and evaluates its corresponding food sources. The preliminary population is consists of all the priority lists obtained for the stochastic project. (Updating Step). After the initial position of each bee has been identified, the employed bee chooses a new position as its own neighborhood and moves according to the equation 3. According to the new position of the employed bee ), by using the function EvaluationFunction, a new priority list is made ( and the new food source of this bee for the stochastic project is obtained. After the employed bees have found new food sources and updated their current positions, they will return to the hive and share information about their food sources with the onlooker bees. By using the roulette wheel, each onlooker bee selects an employed bee based on its probability (the equations 4 and 5). According to the information related to the employed bee food source, the onlooker bee updates its position using the equation 6. By using the function EvaluationFunction, a new priority list is generated and the new priority list is calculated. Should the newly discovered food source propose a priority list with a smaller expected makespan, the onlooker bee leaves her food source and goes to the new food source. At each cycle of the ABC algorithm, the situations are assessed and should a food source not be able to be optimized after the Max_Numerator iteration, the corresponding food source is abandoned. The food source is replaced with the new one found by the scouts. In this paper the Max_Numerator is set to 10. (Termination step). By the termination of the ABC algorithm, the priority list with the minimum expected makespan obtained by the population is returned as the output.
5
Computational Results
In this section, the results of our computational experiments to investigate the performance of the ABC algorithm and the other algorithms on the stochastic RCPSP are represented. All experiments were performed on a personal computer with 2.6 GHz CPU and 2.00 GB RAM. The coding was performed in C++. Our tests are performed on the instances from the benchmark library PSPLIB, which were generated by the problem generator ProGen [13]. Each instance consists of 122 activities and 4 different resources. The duration of 121). The number activity (2 121) is located between 1 and 10 (i.e. 2
300
A. Tahooneh and K. Ziarati
of instances are 600. The deterministic processing time of each activity is taken as expectation of distribution. The uniform and exponential distributions are examined in order to choose the probability distributions. Three distributions were used: first of all, , ('U1'); a continuous uniform distribution with support ('U2'); secondly, another continuous Uniform distribution with support 0 , 2 finally, one exponential distribution with expectation d ('Exp'). The variance of these ⁄3 and distributions are , , respectively. The quality of the algorithm is investigated by the bottom equation, pde
λ,
∑
100 ,
7
where CPL is the critical-path length of the average project; is the average of the percentage distance of E λ, nscen from the critical-path length of the average project. In order to compare the algorithms used on the stochastic RCPSP more effectively, many limitations are considered. Limiting the number of schedules for the average project is one of these limitations. In this article, there are both 5000 and 25000 restrictions on the number of schedules. Many scenarios for obtaining suitable approximation for the expected makespan are used. With a fixed number of schedules and the changing of the number of scenarios, the effect of this parameter on the quality of solution is investigated. The following experiments to test whether reducing the number of scenarios improves the quality of the solutions have been implemented. We have run ABC+S (ABC algorithm + SerialSGS) with nscen being 5, 10, 20, 50, and 100 scenarios. Table 1contains the results of ABC+S with respect to the different number of scenarios for distributions 1, 2 and , respectively. As anticipated, a direct interface exists between the variability of the distribution and the fitness of the stochastic project; however, even with a very big variability, such as in , a definite improvement can be attained. The improvement is dependent on the number of schedules generated for the average project. Table 1. Changing the number of scenarios in ABC+S for 1, 2 and distance of E λ, nscen from the critical-path length of the average project) Distribution # schedules 5 10 20 50 100
(Percentage
, 5000 54.28 54.23 54.46 54.44 54.39
25000 51.85 51.92 51.77 51.90 51.81
5000 74.86 74.60 74.58 74.81 74.77
25000 71.48 71.41 71.19 71.42 71.26
5000 100.75 100.39 100.56 100.87 100.61
25000 94.37 95.74 95.12 96.23 95.60
According to the above-mentioned table, there is no number of scenarios for which the best results for all tests are obtained. For U1, 10 for 5000 and 20 for 25000 are the best choices; and for 2, 20 works best. For , 10 is the best choice for 5000 and 5 works best for 25000.
Using Artificial Bee Colony
301
Now we can compare the ABC algorithm with the other stochastic RCPSPalgorithms from the literature. The genetic algorithm (GA) and the GRASP algorithm are considered [2], [3], where the same data set and schedule restriction are used, with the distributions 1, 2 and . The ABC algorithm performance is compared with the other algorithms for the problems with the distributions U1, U2 and Exp. The computation results are given in the table 2. Table 2. Compare the ABC algorithm with the GA and GRASP for
1,
2 and
.
, BEST GA+S GA+P GRASP ABC+S
5000 52.14% 51.94%
25000 49.63% 50.16%
5000 78.65 % 78.50%
25000 75.38% 76.33% 70.95%
5000 120.22 % 120.91% 114.42 %
25000 116.83% 118.56% 112.37%
46.84%
45.21%
72.58 %
54.23%
51.77%
74.58%
71.19%
100.39%
95.12%
As can be seen from the results, the GA and GRASP have better performance compared to ABC algorithm for the stochastic projects with the distribution 1 while for the stochastic projects with the distributions 2 and the ABC algorithm has better performance than the genetic algorithm. The ABC algorithm shows better efficiency than GRASP when the variability is very large ( (table 2).
6
Conclusions
In this paper, the ABC algorithm to solve the stochastic resource constrained project scheduling problem was used. The ABC algorithm begins with the initial priority lists and attempts to reduce the expected makespan through searching the feasible solutions space. The computational experiment showed that this algorithm produces good quality solutions. By comparing the numerical results, we can say that the ABC algorithm provides an efficient way to solve the stochastic RCPSP. When the availability of distribution is large, the efficiency of the ABC algorithm is better than the other stochastic-algorithms in the literature. For example, in the stochastic problems with the exponential distribution, the pde of the proposed ABC algorithm over the test problems with 5000 schedules is 100.39 whereas for the GRASP and GA, the s are 114.42 and 120.22, respectively. Similarly, the s for ABC, GRASP and GA over test problems with 25000 schedules are 95.12, 112.37 and 116.83, respectively. Due to the ability of ABC algorithm in providing better diversity throughout the execution of the algorithm, the qualities of solutions are improved. Providing appropriate level of diversity helps the algorithm to alleviate the deficiencies of meta-heuristic algorithm such as stagnation and premature convergence and accordingly provide the ability to explore further regions of the search space to find better solutions. Table 1shows that should the number of schedules to be generated for the average project is increased; the quality of the solution to the stochastic project will increase too.
302
A. Tahooneh and K. Ziarati
References 1. Akbari, R., Zeighami, V., Ziarati, K.: Artificial Bee colony for resource constrained project scheduling problem. International Journal of Industrial Engineering Computations 1, 45– 60 (2011) 2. Ballestin, F.: When it is worthwhile to work with the stochastic RCPSP? Journal of Scheduling 10, 153–166 (2007) 3. Ballestin, F., Leus, R.: Resource-constrained project scheduling for timely project completion with stochastic activity durations. Production and Operations Management 18, 459–474 (2009) 4. Blazewicz, J., Lenstra, J., Rinnooy Kan, A.: Scheduling subject to resource constraints: classification and complexity. Discrete Applied Mathematics 5, 11–24 (1983) 5. Gerchak, Y.: On the allocation of uncertainty-reduction effort to minimize total variability. IIE Transactions 32, 403–407 (2000) 6. Golenko-Ginzburg, D., Gonik, D.: Stochastic network project scheduling with nonconsumable limited resources. International Journal of Production Economics 48, 29–37 (1997) 7. Gutjahr, W.J., Straus, C., Wagner, E.: A stochastic branch-and-bound approach to activity crashing in project management. INFORMS Journal on Computing 12, 125–135 (2000) 8. Hartmann, S., Kolisch, R.: Experimental evaluation of state-of-the-art heuristics for the resource-constrained project scheduling problem. European Journal of Operational Research 127, 394–407 (2000) 9. Igelmund, G., Radermacher, F.J.: Preselective strategies for the optimization of stochastic project networks under resource constraints. Networks 13, 1–28 (1983) 10. Karaboga, D.: An Idea Based On Honey Bee Swarm For Numerical Optimization, Technical Report-TR06, Erciyes University, Engineering Faculty, Computer Engineering Department (2005) 11. Karaboga, D., Basturk, B.: A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm. Journal of Global Optimization 39, 459–471 (2007) 12. Kolisch, R., Hartmann, S.: Heuristic Algorithms for solving the resource-constrained project scheduling problem: classification and computational analysis. In: Handbook of Recent Advances in Project Scheduling, pp. 147–178. Kluwer Academic Publishers, Boston 13. Kolisch, R., Sprecher, A.: PSPLIB - a project scheduling problem library. European Journal of Operational Research 96, 205–216 (1996) 14. Stork F.: Stochastic resource-constrained project scheduling, Ph.D. thesis, Technische UniversitÄat Berlin, (2001) 15. Tsai, Y.-W., Gemmill, D.D.: Using tabu search to schedule activities of stochastic resourceconstrained projects. European Journal of Operational Research 111, 129–141 (1998) 16. Valls, V., Ballestın, F., Quintanilla, S.: A hybrid genetic algorithm for the resource constrained project scheduling problem. European Journal of Operational Research 185, 495–508 (2008) 17. Wollmer, R.D.: Critical path planning under uncertainty. Mathematical Programming Study 25, 164–171 (1985)
Brain Storm Optimization Algorithm Yuhui Shi Xi’an Jiaotong-Liverpool University Suzhou, China 215123 [email protected]
Abstract. Human being is the most intelligent animal in this world. Intuitively, optimization algorithm inspired by human being creative problem solving process should be superior to the optimization algorithms inspired by collective behavior of insects like ants, bee, etc. In this paper, we introduce a novel brain storm optimization algorithm, which was inspired by the human brainstorming process. Two benchmark functions were tested to validate the effectiveness and usefulness of the proposed algorithm. Keywords: Optimization, Brainstorming Process, Brain Storm Optimization.
1 Introduction Population-based optimization algorithms have been widely accepted and successfully applied to solve a lot of optimization problems. Unlike traditional single-point based algorithms such as hill-climbing algorithms, a population-based optimization algorithm consists of a set of points (population) which solve the problem through information sharing to cooperate and/or compete among themselves. So far, there are a lot of population-based algorithms existed. The very first population-based algorithms are evolutionary algorithms including evolutionary programming, genetic algorithm, evolution strategy, and genetic programming [EBERHART2007], which were inspired by biological evolution. Recently, there occurred more population-based algorithms which are usually called nature-inspired optimization algorithms instead of evolution-inspired algorithms. Many of nature-inspired optimization algorithms are categorized as swarm intelligence algorithms. In a swarm intelligence algorithm, each individual in the population represents a simple object such as ant, bird, fish, etc. There exist a lot of different swarm intelligence algorithms, among which are particle swarm optimization (PSO) [SHI1998], ant colony optimization algorithm(ACO) [DORIGO1996], bacterial forging optimization algorithm(BFO) [PASSINO2010], firefly optimization algorithm [YANG2008], artificial immune system [CASTRO1999], and etc. In a swarm intelligence algorithm, it is the collective behavior of all individuals that makes the algorithm to be effective in problem optimization. All individuals cooperate and collectively move toward the better and better areas in the solution search space. These individuals represent only simple objects such as birds in PSO, ants in ACO, bacteria in BFO, etc. Human beings are social animals and are the most intelligent Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 303–309, 2011. © Springer-Verlag Berlin Heidelberg 2011
304
Y. Shi
animals in the world. Therefore, it is natural to expect that an optimization algorithm inspired by human creative problem solving process will be a good optimization algorithm. In this paper, we will introduce a novel optimization algorithm inspired by the human idea generation process – brainstorming process. The remaining paper is organized as follows. In Section 2, the human brainstorming process is reviewed. In Section 3, the novel optimization algorithm inspired by human brainstorming process is introduced and described in detail, followed by experimental simulation and result discussion on two benchmark functions in Section 4. Finally, conclusions are given in Section 5.
2 Brainstorming Process As we all may have experienced that when we face a difficult problem which every single person can’t solve, a group of persons, especially with different background, get together to brain storm, the problem can usually be solved with high probability. Great and un-expectable intelligence can occur from interactive collaboration of human beings. One way to help human beings to interactively collaborate to generate great ideas is to get together a group of people to brainstorm. A brainstorming process generally follows the steps listed in Table 1. Table 1. Steps in a Brainstorming Process Step 1. Get together a brainstorming group of people with as diverse background as possible; Step 2. Generate many ideas according to the rules in Table 2; Step 3. Have several, say 3 or 5, clients act as the owners of the problem to pick up several, say one from each owner, ideas as better ideas for solving the problem; Step 4. Use the ideas picked up in the Step 3 with higher probability than other ideas as clues, and generate more ideas according to the rules in Table 2; Step 5. Have the owners to pick up several better ideas generated as did in Step 3; Step 6. Randomly pick an object and use the functions and appearance of the object as clues, generate more ideas according to the rules in Table 2; Step 7. Have the owners to pick up several better ideas; Step 8. Hopefully a good enough solution can be obtained by considering and/or merging the ideas generated.
In a brainstorming process, usually there are a facilitator, a brainstorming group of people, and several owners of the problem to be solved. The role of the facilitator is to facilitate the idea generation (brainstorming) process by enforcing the brainstorming group to obey the Osborn’s original four rules of idea generation in a brainstorming process [SMITH2002]. The four rules are listed in Table 2 below. The facilitator should not be involved in generating ideas itself, but facilitating the brainstorming process only. The guideline for selecting facilitator is to have a facilitator to have facilitation experience but have less expertise on the background knowledge related to the problem to be solved as possible. The purpose of this is to have generated ideas to have less, if not none, biases from the facilitator.
Brain Storm Optimization Algorithm
305
Table 2. Osborn’s Original Rules for Idea Generation in a Brainstorming Process Rule 1. Rule 3.
Suspend Judgment Cross-fertilize (Piggyback)
Rule 2. Rule 4.
Anything Goes Go for Quantity
In Table 2, the Rule 1 says that there is no idea as bad idea. All ideas are good ideas. It is unwise to judge whether a proposed idea is a good or bad idea. Any judgment or criticism must be held back until at least the end of the brainstorming process. The Rule 2 says that anything coming to your mind during the brainstorming process is an idea worth to be shared and recorded. Don’t let any idea or thought ignored. The Rule 3 says that lot of ideas can and should be based on ideas already generated. Any generated idea can and should serve as a clue to generate more ideas. The Rule 4 says that it is necessary to generate as many ideas as possible. We first go for quantity of generated ideas. The quality will come from quantity naturally. Without generating large quantity of ideas, it is difficult, if not impossible, to come out ideas with good quality. The purpose to generate ideas according to rules in Table 2 is to generate ideas as diverse as possible so that the people in the brainstorming group will be open-minded as much as possible. The operation of picking up an object in Step 6 serves for the same purpose as generating diverse and different ideas. It can help brainstorming group to diverge from previously generated ideas therefore to avoid being trapped by the previously generated ideas. As a consequence, the brainstorming group will be more open-minded and generate more diverse ideas. The problem owners serve for one different purpose. Picking up several good ideas from ideas generated so far is to cause the brainstorming group to pay more attention to the better ideas which the brainstorming group believes to be. The ideas picked-up work like point-attractors for the idea generation process.
3 Brain Storm Optimization Algorithm The brainstorming process has been successfully applied to generate ideas to solve very difficult and challenging problems. Intuitively, an optimization algorithm designed based on the human being idea generation process should be superior to optimization algorithms inspired by collective behaviors of animals because human beings are the most intelligent animals in the world. The novel optimization algorithm inspired by brainstorming process is given in Table 3. In the procedure of the Brain Storm Optimization (BSO) algorithm shown in the Table 3, the Step 1 is the initialization step as that in other population-based algorithms; the Step 2, 3, and 4 in Table 3 serves the purpose of Step 3, 5, and 7 in Table 1 to pick up several better ideas; the Step 5 in Table 3 simulates the operation of Step 6 in Table 1 to make the population to cover unexplored areas; the Step 6 in Table 3 simulates the idea generation in Step 2, 4, and 6 of Table 1; the Step 6.b simulates generating new idea inspired by one single existing idea while the Step 6.c simulates generating new
306
Y. Shi
Table 3. Procedure of Brain Storm Optimization Algorithm 1. 2. 3. 4. 5.
6.
7. 8.
Randomly generate n potential solutions (individuals); Cluster n individuals into m clusters; Evaluate the n individuals; Rank individuals in each cluster and record the best individual as cluster center in each cluster; Randomly generate a value between 0 and 1; a) If the value is smaller than a pre-determined probability p5a, i. Randomly select a cluster center; ii. Randomly generate an individual to replace the selected cluster center; Generate new individuals a) Randomly generate a value between 0 and 1; b) If the value is less than a probability p6b, i. Randomly select a cluster with a probability p6bi; ii. Generate a random value between 0 and 1; iii. If the value is smaller than a pre-determined probability p6biii, 1) Select the cluster center and add random values to it to generate new individual. iv. Otherwise randomly select an individual from this cluster and add random value to the individual to generate new individual. c) Otherwise randomly select two clusters to generate new individual i. Generate a random value; ii. If it is less than a pre-determined probability p6c, the two cluster centers are combined and then added with random values to generate new individual; iii. Otherwise, two individuals from each selected cluster are randomly selected to be combined and added with random values to generate new individual. d) The newly generated individual is compared with the existing individual with the same individual index, the better one is kept and recorded as the new individual; If n new individuals have been generated, go to step 8; otherwise go to step 6; Terminate if pre-determined maximum number of iterations has been reached; otherwise go to step 2.
idea inspired by two existing ideas from two different idea clusters, respectively; the cluster center has more chances to be used to generate new ideas than other ideas in each cluster; certainly a new idea can also be inspired by more than two existing ideas, but it is not simulated in the BSO algorithm for keeping the algorithm simple; the number of clusters in Table 3 serves as the role of problem owners in Table 1; the cluster center in each cluster serves the purpose of better ideas picked up by problem owners. The Step 6.d serves the purpose of keeping better ideas generated. The population size n simulates the number of ideas generated in each round of idea generation in the brainstorming process. For the simplicity of the algorithm, the
Brain Storm Optimization Algorithm
307
population size usually is set to be a constant number for all iterations in the BSO algorithm.
4 Experiments and Discussions The BSO procedure can be implemented in various ways by setting up BSO algorithm’s parameters differently. In Step 6.b.i of the BSO procedure shown in Table 3, a cluster is selected with probability p6bi, which is proportional to the number of individuals in the cluster. This is, the more individuals a cluster contains, the more likely it will be selected. The Gaussian random values will be used as random values which are added to generate new individuals. The new individual generation in Step 6 can be represented as Xnewd = Xselectedd +ξ * n(μ, σ)
(1)
whereXselectedd is the dth dimension of the individual selected to generate new individual; Xnewd is the dth dimension of the individual newly generated; n(μ, σ) is the Gaussian random function with mean μ and variance σ; the ξ is a coefficient that weights the contribution of the Gaussian random value. For the simplicity and for the purpose offine tuning, the ξ can be calculated as ξ = logsig((0.5 *max_iternation – current_iteration)/k) * rand()
(2)
where logsig() is a logarithmic sigmoid transfer function, max_iteration is the maximum number of iterations, and current_iteration is the current iteration number, k is for changing logsig() function’s slope, and rand() is a random value within (0,1). For the purpose of validating the effectiveness and usefulness of the proposed BSO algorithm, in this paper, a set of parameters are set intuitively for the procedure of BSO given in Table 3 for both testing functions below. The set of parameters are listed in Table 4 below. Table 4. Set of Parameters for BSO Algorithm n 100
m 5
p5a 0.2
p6b 0.8
p6biii 0.4
p6c 0.5
k 20
Max_ iteration 2000
μ
σ
0
1
The BSO algorithm is then tested on two benchmark functions listed in Table 5. We use k-mean cluster algorithm to cluster n individuals into m clusters. For each benchmark function, the BSO will be run 50 times to obtain reasonable statistical results. The first benchmark function is the Sphere function, which is an unimodal function. The simulation results of testing BSO on the Sphere function with dimensions 10, 20, and 30, respectively, are given in Table 6.
308
Y. Shi
Table 5. Benchmark Functions Tested in This Paper Index 1
Function name Sphere
2
Rastrigin
Function expression
f1 ( x) = ∑i =1 xi2 D
f 2 = ∑i =1 ( xi2 − 10 cos(2πxi ) + 10) D
Table 6. Simulation Results of BSO Algorithm function Sphere
Rastrigin
dimension 10 20 30 10 20 30
mean 3.82E-44 3.1E-43 1.15E-42 3.820643 18.06844 32.91322
best 1.50775E-44 1.61402E-43 8.07001E-43 1.989918 8.954632 17.90926
worst 7.12557E-44 4.56276E-43 1.69603E-42 6.964713 26.86387 58.70249
variance 1.57592E-88 4.0471E-87 4.69513E-86 1.954026 19.65172 82.82522
The results given in the Table 6 are mean, best, worst minimum values and their variance of the final iteration over 50 runs. From the Table 6, it can be observed that very good results can be obtained by the implemented BSO algorithm. The second is the Rastrigin function, which is a multimodal function. The simulation results of testing BSO on the Rastrigin function with dimensions 10, 20, and 30, respectively, are given in Table 6. From Table 6, we can observe that good results can also be obtained by this very version of BSO algorithm.
5 Conclusions In this paper, we introduced a novel brain storm optimization algorithm which was inspired by the human brainstorming process. Human beings are the most intelligent animals in the world, therefore, it is natural to believe that the optimization algorithm inspired by collective behavior of human beings should be superior to the optimization algorithms inspired by collective behavior of injects such as ants, birds, etc. The proposed BSO algorithm was implemented and tested on two benchmark functions. Even though the simulation results are very preliminary, the results DID validate the effectiveness and usefulness of the proposed BSO algorithm which is the purpose of this paper. More detailed analysis and experimental tests are our next step research work, e.g. using different clustering algorithm, using different random functions for generating new individuals, etc.
Acknowledgement This paper is partially supported by National Natural Science Foundation of China under Grant No.60975080, and by Suzhou Science and Technology Project under Grant No.SYJG0919.
Brain Storm Optimization Algorithm
309
References 1. de Castro, L.N., Von Zuben, F.J.: Artificial Immune Systems: Part I -Basic Theory and Applications, School of Computing and Electrical Engineering, State University of Campinas, Brazil, No. DCA-RT 01/99 (1999) 2. Dorigo, M., Maniezzo, V., Colorni, A.: The ant system: Optimization by a colony of cooperating agents. IEEE Trans. Syst., Man, Cybern. B 26(2), 29–41 (1996) 3. Eberhart, R.C., Shi, Y.: Computational Intelligence, Concepts to Implementation, 1st edn. Morgan Kaufmann Publishers, San Francisco (2007) 4. Passino, K.M.: Bacterial Foraging Optimization. International Journal of Swarm Intelligence Research 1(1), 1–16 (2010) 5. Shi, Y., Eberhart, R.C.: A Modified Particle Swarm Optimizer. In: 1998 IEEE International Conference on Evolutionary Computation, Anchorage, Alaska, USA, May 4-9 (1998) 6. Smith, R.: The 7 Levels of Change, 2nd edn. Tapeslry Press (2002) 7. Yang, X.: Nature-Inspired Metaheuristic Algorithms. Luniver Press (2008)
Human Group Optimizer with Local Search Chaohua Dai, Weirong Chen, Lili Ran, Yi Zhang, and Yu Du The School of Electrical Engineering, Southwest Jiaotong University, 610031 Chengdu, China [email protected]
Abstract. Human Group Optimization (HGO) algorithm, derived from the previously proposed seeker optimization algorithm (SOA), is a novel swarm intelligence algorithm by simulating human behaviors, especially human searching/foraging behaviors. In this paper, a canonical HGO with local search (L-HGO) is proposed. Based on the benchmark functions provided by CEC2005, the proposed algorithm is compared with several versions of differential evolution (DE) algorithms, particle swarm optimization (PSO) algorithms and covariance matrix adaptation evolution strategy (CMA-ES). The simulation results show that the proposed HGO is competitive or, even, superior to the considered other algorithms for some employed functions. Keywords: Human group optimizer, human searching/foraging behaviors, seeker optimization algorithm, swarm intelligence.
1 Introduction During the past over two decades, swarm intelligence (SI) [1-3], illumined by the social behavior of gregarious insects and other animals, has been attracting more and more attention of researchers. In the existing SI algorithms, researchers have focused mainly on the social behaviors of non-human animals [4], yet few have taken into account human social behaviors, especially human group searching/foraging behaviors. However, interacting groups of people also create emergent self-organizing behaviors that are not intended by any person [5], and swarm intelligence is known as an ever-present potential in humans [4]. As we all know, optimization tasks are often encountered in many areas of human life, and the search for a solution to a problem is one of the basic behaviors to all mankind [6]. In addition, in the search process, human brain can effectively manage the trade-off between exploitation and exploration [7]. Hence, it is an interesting choice to simulate human behaviors, especially human group searching/foraging behaviors, for solving optimization problems. The seeker optimization algorithm (SOA) [8] proposed by the authors of this paper is just such a paradigm. The SOA has been applied to function optimization [6], proton exchange membrane fuel cell model optimization [9], optimization problems in power systems [10-14], optimal assembly tolerance design [15], digital IIR filter design [16], and training neural networks [17], etc. According to these applications, it is preliminarily proved that the SOA is a promising and competitive candidate of heuristic search algorithms. Recently, because the term, seeker Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 310–320, 2011. © Springer-Verlag Berlin Heidelberg 2011
Human Group Optimizer with Local Search
311
optimization algorithm, could not reflect the essential nature of the novel algorithm of simulating human behaviors, it was renamed as Human Group Optimization algorithm or Human Group Optimizer (HGO) in Ref. [18]. At the same time, in Ref. [18], we proposed a canonical version of HGO. In this paper, to improve its local search ability, the Quasi-Newton method is combined, and the HGO with local search (L-HGO) is proposed. Furthermore, the performance of L-HGO on several benchmark functions provided by CEC2005 is reported. The rest of this paper is organized as follows. In Section 2, we detail the HGO and L-HGO. Then, the L-HGO is compared with other algorithms by use of benchmark function optimization in Section 3. Finally, the conclusion is presented in Section 4.
2 Human Group Optimizer with Local Search Human group optimization (HGO) algorithm operates on a set of solutions called search population, and the individual of this population is called seeker (i.e., a person). Assume that the optimization problems to be solved are minimization problems. 2.1 Implementation of Human Group Optimization In HGO, a search direction d ij (t ) and a step length α ij (t ) are computed separately for each seeker i on each dimension j for each time step t, where α ij (t ) ≥0 and d ij (t ) ∈
{-1,0,1}. For each seeker i (1≤i≤s, s is the population size), the position update on each dimension j (1≤j≤D) is given by (1): xij (t + 1) = xij (t ) + α ij (t ) d ij (t ) .
(1)
K where xi (t ) = [ xi1 , xi 2 ,", xiD ] is the D-dimensional position vector of the i-th seeker at time step t. The pseudocode of HGO is shown as Fig. 1. Generating s positions randomly, t←0; repeat Evaluating each seeker i; Selecting the neighbors for each seeker i; K K Computing di (t ) and α i (t ) for each seeker i; Updating each seeker’s position using (1); t←t+1; until the stopping condition is satisfied. Fig. 1. The pseudocode of the HGO
2.2 Search Direction
In HGO, each seeker i selects his search direction synthetically based on several empirical gradients (EGs) by evaluating the current or historical positions of himself or his neighbors. Generally, the EGs involve egotistic behavior, altruistic behavior
312
C. Dai et al.
and pro-activeness behavior to yield an egotistic direction, two altruistic directions and a pro-activeness direction, respectively [11, 16]. K K K d i , ego (t ) = sign ( pi , best (t ) − xi (t )) . (2) K K K K K ⎧sign( g best (t ) − xi (t )) if g best is better than xi di ,alt1 (t ) = ⎨ K K ⎩sign( xi (t ) − g best (t )) else
(3)
K K K K K ⎪⎧sign(lbest (t ) − xi (t )) if lbest is better than xi d i ,alt 2 (t ) = ⎨ K K ⎪⎩sign( xi (t ) − lbest (t )) else
(4)
K K K d i , pro (t ) = sign ( xi (t1 ) − xi (t 2 ))
(5)
K K where pi ,best (t ) and g best (t ) are the i-th seeker’s and neighbors’ historical best K positions respectively, l best (t ) is the neighbors’ current best position, the sign (⋅) is a K K signum function on each dimension of the input vector, and xi (t1 ) and xi (t 2 ) are the K K K best and the worst one from the set { xi (t ), xi (t − 1), xi (t − 2)} , respectively. According to human rational judgment, the actual search direction of the i-th K seeker, d i (t ) , is based on a compromise among the aforementioned four empirical directions applying the following proportional selection rule for each dimension j:
⎧0 if r j ≤ p (j0) ⎪⎪ d ij = ⎨+ 1 if p (j0) < r j ≤ p (j0) + p (j+1) . ⎪- 1 if p (0) + p ( +1) < r ≤ 1 ⎪⎩ j j j
(6)
) (m ∈ {0,+1,−1}) is the percent where r j is a uniformly random number in [0,1], p (m j
of the number of “m” on each dimension j of the four empirical directions. 2.3 Step Length
In this algorithm, human focusing search is introduced and described by a simple Fuzzy control rule as “If {fitness value is small} (i.e., the conditional part), Then {step length is short}(i.e., the action part)”. Hence, Fuzzy reasoning is used to determine step length of each seeker. To design a Fuzzy system to be applicable to a wide range of optimization problems, the fitness values of all the seekers are descendingly sorted and turned into the sequence numbers from 1 to s as the inputs of Fuzzy reasoning. The linear membership function is used in the conditional part since the universe of discourse is a given set of numbers, i.e., 1,2," , s . The expression is presented as (7).
μ i = μ max −
s − Ii ( μ max − μ min ) . s −1
(7)
Human Group Optimizer with Local Search
313
K where Ii is the sequence number of xi (t ) after sorting the fitness values, μmax and μmin are the maximum and minimum membership degree value. At the same time, the Bell K 2 2 membership function μ ( x) = e − x / 2δ is used in the action part. The parameter, δ , of the Bell membership function is determined by (8). K K K (8) δ = ω ⋅ abs( xbest − xrand ) . where abs(⋅) returns an output vector such that each element of the vector is the absolute value of the corresponding element of the input vector. The parameter ω is used to decrease the step length with time step increasing so as to gradually improve K K the search precision. The xbest and xrand are the best seeker and a randomly selected neighbor from the population, respectively. To introduce the randomicity on each dimension and improve local search K capability, Eq. (9) is used to change μi in (7) into a vector μi . The action part of the Fuzzy reasoning gives every dimension j of step length by (10) where δ j is the j-th K dimension of the vector δ in (8).
μ ij = RAND( μ i ,1) .
(9)
α ij = δ j − ln( μij )
(10)
2.4 The Neighbors of Every Seeker
Before calculating the two altruistic directions in (3) and (4), each seeker needs to first give his neighborhood. Note: the seeker excludes himself from his neighborhood. In this work, a random topology introduced in [19, 20] is used, namely, each seeker randomly select other seekers as his neighbors with a selection probability:
1 p = 1 − (1 − ) K . s
(11)
where K is an integer less than s. 2.5 Local Search Schedule
To our knowledge, unlike particle swarm optimization (PSO) who implements an aggregating search around the personal and neighbors’ historical best positions, HGO utilizes a focusing search around the personal current positions. So, compared with PSO, HGO may more effectively keep the population diversity. However, we also found that the HGO sometimes lacks a sufficient local search ability to achieve a better search precision [18] although it can not only efficiently balance exploration and exploitation but also perfectly switch between a “nearer is better” assumption and a “nearer is worse” one [11, 16]. To give a better local search precision, a local search schedule introduced by Ref. [21] is added into HGO: every L (200 in this study)
314
C. Dai et al.
generations, sort the population according to their fitness values and refine 5% individuals including the best individual and the randomly selected individuals out of the best 50% individuals in the current population using the Quasi-Newton method.
3 Simulation Results In this section, the modified HGO is evaluated by using the first 14 functions of the test suite on real optimization of CEC 2005 [22]. Experiments are conducted on all the 10-dimension problems. The detailed evaluation criterion description can be referred to Ref. [22]. In this study, the parameters of the L-HGO are assigned as: s = int(10 + 2 ⋅ D ) , K=3, μmax=0.95, μmax=0.0111, and ω linearly decreased from 0.8 to 0.2 with time step increasing. The proposed method is compared with self-adaptive differential evolution algorithm with local search (L-SaDE) [23], differential evolution with self-adapting control parameters (SACP-DE)[24], the restart version of the (μW,λ)-CMA-ES (LRCMA-ES) [25], dynamic multi-swarm particle swarm optimizer with local search (DMS-L-PSO) [21], comprehensive learning particle swarm optimizer (CLPSO)[26] and Standard PSO 2007 (SPSO-07) [20]. The following results of L-SaDE, LRCMA-ES, DMS-L-PSO and HGO are cited from the corresponding references. For each problem, function error values achieved when FEs=1e+5 are tabulated in Table 1, successful FEs and success performance are presented in Table 2. Those successful FEs and Success Performance for functions 8, 13 and 14 are not shown because all the algorithms failed. According to the simulation results in Table 1 and 2, the analysis on the comparisons between L-HGO and other algorithms is presented as follows. Except function 3 among the first five unimodal functions, L-HGO can successfully solve the other four functions and has the smallest or equal values of the best, worst, and mean function errors with 100% success rates. At the same time, L-HGO has comparable successful FEs and success performance from Table of Table 2 although it is not the best ones. Hence, L-HGO has good local search ability and rapid convergence rate. For function 3, L-HGO has a relatively bad performance. For the multimodal functions from function 6 to function 12, L-HGO also presents good global search ability. L-HGO achieves 100% success rate for function 6 and 72% for function 7. For function 8, L-HGO along with all the other algorithms fails in all 25 runs. L-HGO can find the global optimum and achieves 52% success rate for function 9. Although L-HGO is not that good for function 10 owing to the rotation and only achieves 16% success rate, it can still find the precise global optimum. For function 11, the results of L-HGO are superior to all other algorithms with success rate of 36%, and L-HGO achieves 44% success rate for function 12. Functions 13 and 14 are extended functions and all the algorithms including L-HGO fail in all 25 runs for them. But, L-HGO has the comparable performance for function 13 and better function error values for function 14 than all the other algorithms.
Human Group Optimizer with Local Search
315
Table 1. Function errors of various algorithms when FEs=1e+5 Funcs. 1st 7th 13th F1 19th 25th Mean Std 1st 7th 13th F2 19th 25th Mean Std 1st 7th 13th F3 19th 25th Mean Std 1st 7th 13th F4 19th 25th Mean Std 1st 7th 13th F5 19th 25th Mean Std 1st 7th 13th F6 19th 25th Mean Std 1st 7th 13th F7 19th 25th Mean Std 1st 7th 13th F8 19th 25th Mean Std
L-SaDE 0 0 0 0 0 0 0 0 0 0 0 2.5580e-12 1.0459e-13 5.1124e-13 0 0 0 9.9142e-6 1.0309e-4 1.6720e-5 3.1196e-5 0 0 0 0 3.5456e-4 1.4182e-5 7.0912e-5 1.1133e-6 0.0028 0.0073 0.0168 0.0626 0.0123 0.0146 0 4.3190e-9 5.1631e-9 9.1734e-9 8.0479e-8 1.1987e-8 1.9282e-8 4.6700e-10 1.48e-2 1.97e-2 2.71e-2 3.69e-2 1.99e-2 1.07e-2 20.0000 20.0000 20.0000 20.0000 20.0000 20.0000 5.3901e-8
SACP-DE LR-CMA-ES 1.84e-9 0 3.75e-9 0 5.65e-9 0 6.42e-9 0 9.34e-9 0 5.20e-9 0 1.94e-9 0 2.21e-9 4.0168e-7 3.27e-9 1.0935e-6 4.53e-9 1.5977e-6 5.71e-9 2.7079e-6 7.67e-9 5.3480e-6 4.70e-9 1.9829e-6 1.56e-9 1.4144e-6 2.21e-9 5.3347e+2 4.61e-9 1.5730e+3 5.51e-9 2.3763e+3 6.58e-9 3.3918e+3 9.66e-9 9.4322e+3 5.60e-9 2.8819e+3 1.93e-9 2.2021e+3 1.71e-9 5.7618e-6 3.85e-9 1.6068e-5 4.78e-9 2.0628e-5 6.46e-9 4.0977e-5 7.80e-9 1.0043e-4 5.02e-9 3.1071e-5 1.71e-9 2.3115e-5 2.46e-9 0 5.02e-9 0 6.33e-9 0 8.60e-9 0 9.84e-9 0 6.58e-9 0 2.17e-9 0 1.44e-9 4.1410e-4 3.81e-9 2.4519e-1 4.69e-9 3.1617e-1 5.67e-9 5.0135e-1 8.13e-9 9.6508e-1 4.87e-9 3.6579e-1 1.66e-9 2.2060e-1 6.22e-10 2.7195e+3 1.65e-9 2.9486e+3 2.84e-9 3.2102e+3 5.46e-9 3.4067e+3 7.77e-9 3.6533e+3 3.31e-9 3.1651e+3 2.02e-9 2.7187e+2 2.00e+1 2.0156e+1 2.00e+1 2.0281e+1 2.00e+1 2.0330e+1 2.00e+1 2.0371e+1 2.00e+1 2.0463e+1 2.00e+1 2.0326e+1 3.89e-3 7.4168e-2
DMS-L-PSO 0 0 0 0 0 0 0 0 5.6843e-14 5.6843e-14 1.1369e-13 7.3896e-13 1.2960e-13 1.5612e-13 1.5364e-9 5.5371e-9 7.3142e-9 8.9301e-9 1.1275e-8 7.0064e-9 2.6589e-9 2.0784e-4 6.6984e-4 1.1399e-3 2.5429e-3 8.7836e-3 1.8851e-3 1.8932e-3 1.1267e-8 1.7025e-7 4.9662e-7 9.4387e-7 1.0268e-5 1.1383e-6 2.1828e-6 6.0652e-11 1.3616e-9 3.0839e-9 6.1451e-9 1.6000e-6 6.8925e-8 3.1904e-7 4.8879e-9 2.2151e-2 4.4283e-2 6.6493e-2 1.2799e-1 4.5189e-2 3.2611e-2 2.0000e+1 2.0000e+1 2.0000e+1 2.0000e+1 2.0000e+1 2.0000e+1 5.5382e-9
CLPSO SPSO-2007 HGO L-HGO 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5.6843e-14 0 0 0 5.6843e-14 1.1369e-13 0 0 5.6843e-14 1.7053e-13 0 0 1.1369e-13 2.2737e-13 1.7053e-13 4.5475e-13 5.6843e-14 5.6843e-14 7.9581e-14 1.9554e-13 2.2737e-15 1.1369e-14 3.6692e-14 1.0126e-13 1.1369e-14 2.3206e-14 4.7806e+3 3.3457e+3 8.1456e+3 1.2008e+2 2.9139e+4 1.3958e+4 3.3641e+4 3.1296e+3 5.5009e+4 3.0878e+4 5.6796e+4 1.2461e+4 2.3547e+5 4.1905e+4 8.3709e+4 2.1470e+4 1.4237e+6 1.0958e+5 2.3856e+5 1.0250e+5 2.2900e+5 3.3535e+4 6.8079e+4 1.8221e+4 3.5814e+5 2.5853e+4 5.2735e+4 2.3743e+4 0 0 5.6843e-14 2.1542e+0 0 0 1.1369e-13 8.0694e+1 0 0 4.5475e-13 2.4601e+2 0 0 1.5348e-12 5.4506e+2 9.0031e-9 2.7671e+3 5.6843e-14 1.1369e-13 4.0073e-10 5.3680e+2 9.0949e-15 2.9559e-14 1.8025e-9 7.8221e+2 2.1269e-14 3.7130e-14 0 0 0 6.6833e+2 0 0 0 8.4984e+2 0 0 0 9.5814e+2 0 0 1.0897e+3 3.6380e-12 0 0 1.9917e+3 7.8776e+2 0 0 1.0049e+3 3.1557e+1 0 0 2.6176e+2 1.5754e+2 7.6930e-2 1.4704e-9 4.4241e-3 9.2686e-5 6.2559e-3 2.6544e+0 4.9131e-9 5.5107e-4 1.5176e-2 2.9959e+0 8.9166e-9 4.0885e-2 2.8477e+0 3.9973e+0 3.6026e+0 2.1826e-7 7.6620e+0 8.9261e+2 4.4916e+0 6.2924e-6 1.2911e+0 9.5349e+1 2.9116e+0 7.1820e-7 2.1051e+0 2.4543e+2 1.1309e+0 1.5252e-6 0 3.1108e+3 5.6648e-2 2.8422e-14 7.3960e-3 3.9790e-13 3.3696e+3 1.3050e-1 9.8974e-3 7.3960e-3 3.5769e+3 2.0438e-1 1.7274e-2 1.2316e-2 3.9102e+3 3.6189e-1 5.4719e-2 3.2013e-2 4.6988e+3 7.4597e-1 1.4193e-2 9.1745e-3 3.6983e+3 2.4563e-1 1.3503e-2 1.0578e-2 4.2224e+2 1.6324e-1 2.0083e+1 2.0099e+1 2.0126e+1 2.0000e+1 2.0137e+1 2.0211e+1 2.0278e+1 2.0000e+1 2.0167e+1 2.0272e+1 2.0362e+1 2.0000e+1 2.0268e+1 2.0306e+1 2.0403e+1 2.0000e+1 2.0474e+1 2.0423e+1 2.0465e+1 2.0001e+1 2.0199e+1 2.0261e+1 2.0331e+1 2.0000e+1 9.5430e-2 2.5382e-4 7.6041e-2 9.1104e-2
316
C. Dai et al.
Table 1. (Continued) Funcs. L-SaDE SACP-DE LR-CMA-ES 1st 1.52e-10 0 0 th 7 3.46e-10 0 0 th 13 6.14e-10 0 0 th F9 19 3.50e-9 0 0 th 25 9.95e-1 0 0 2.39e-1 0 0 Mean 4.34e-1 0 0 Std st 1.50e-10 1.3243e+1 1.9899 1 th 3.34e-10 1.5268e+1 3.9798 7 5.64e-10 1.6779e+1 4.9748 13th th 1.08e-9 1.9010e+1 5.9698 F10 19 th 9.95e-1 2.4500e+1 9.9496 25 7.96e-2 1.7185e+1 4.9685 Mean 2.75e-1 3.0103e+0 1.6918 Std st 5.27e-10 5.7828e+0 3.2352 1 th 7 3.48e-2 6.7190e+0 4.5129 6.34e-1 7.0276e+0 4.7649 13th th 1.64e+0 7.3644e+0 5.3823 F11 19 th 3.19e+0 8.2542e+0 5.9546 25 9.34e-1 6.9982e+0 4.8909 Mean 9.00e-1 6.3794e-1 0.6619 Std 1st 1.4120e-10 1.7072e+3 1.08e-9 7th 2.81e-9 1.7250e-8 2.2332e+3 3.89e-9 13th 8.1600e-8 2.5057e+3 F12 19th 3.8878e-7 3.0837e+3 5.94e-9 25th 3.3794e-6 4.1731e+3 7.12e+2 2.93e+1 Mean 4.5011e-7 2.6605e+3 1.42e+2 8.5062e-7 6.9549e+2 Std 1st 4.07e-1 6.5789e-1 0.1201 7th 6.44e-1 7.5483e-1 0.1957 13th 6.82e-1 8.3828e-1 0.2170 F13 19th 7.61e-1 8.6047e-1 0.2508 25th 1.05e+0 9.7245e-1 0.3117 6.96e-1 8.1645e-1 0.2202 Mean 1.50e-1 8.0547e-2 0.0411 Std st 2.08e+0 3.1192e+0 2.5765 1 th 2.75e+0 3.4501e+0 2.7576 7 3.00e+0 3.5640e+0 2.8923 13th th 3.28e+0 3.6549e+0 3.0258 F14 19 th 3.51e+0 3.7318e+0 3.3373 25 3.01e+0 3.5240e+0 2.9153 Mean 3.49e-1 1.6791e-1 0.2063 Std
DMS-L-PSO 0 0 0 0 0 0 0 1.9899e+0 2.9849e+0 3.9798e+0 3.9798e+0 4.9748e+0 3.6217e+0 8.5590e-1 2.7590e+0 4.4767e+0 4.6570e+0 5.0608e+0 5.2394e+0 4.6229e+0 5.8400e-1 3.3481e-11 3.0343e-10 7.2993e-10 1.4545e-5 1.0003e+1 2.4007e+0 4.3602e+0 2.5403e-1 3.2064e-1 3.6085e-1 4.0121e-1 4.7266e-1 3.6865e-1 5.6411e-2 1.4838e+0 2.1160e+0 2.3522e+0 2.6055e+0 2.8906e+0 2.3601e+0 3.3750e-1
CLPSO 1.9899e+0 3.9798e+0 4.9748e+0 5.9698e+0 7.9597e+0 4.8554e+0 1.5815e+0 7.9597e+0 1.1939e+1 1.5919e+1 2.1889e+1 4.0793e+1 1.7471e+1 8.1546e+0 1.9484e-1 2.5144e+0 3.3422e+0 4.4543e+0 7.6678e+0 3.4362e+0 1.7027e+0 6.3715e-6 1.4485e-1 1.0003e+1 1.8835e+1 1.6936e+3 2.1071e+2 4.9578e+2 1.1902e-1 4.6867e-1 5.9665e-1 8.1384e-1 1.2010e+0 6.5480e-1 2.7688e-1 1.8246e+0 2.8009e+0 3.0708e+0 3.1780e+0 4.0127e+0 3.0099e+0 4.7116e-1
SPSO-2007 5.9697e+0 9.9496e+0 1.0945e+1 1.4924e+1 2.2884e+1 1.2594e+1 4.3063e+0 3.9798e+0 7.9597e+0 1.3928e+1 1.7507e+1 2.3879e+1 1.3444e+1 5.8035e+0 5.0886e-1 2.1478e+0 2.5552e+0 3.1957e+0 3.7362e+0 2.4719e+0 9.0019e-1 2.1138e+3 7.6271e+3 1.0146e+4 1.7040e+4 2.8260e+4 1.2214e+4 6.6159e+3 3.7861e-1 6.6312e-1 7.4046e-1 9.9497e-1 1.8375e+0 8.3801e-1 3.1776e-1 1.8263e+0 2.3163e+0 2.6537e+0 3.0165e+0 3.5063e+0 2.6226e+0 4.5624e-1
HGO L-HGO 0 0 0 0 9.9496e-1 5.6843e-14 9.9496e-1 9.9496e-1 2.9849e+0 1.9899e+0 7.5617e-1 5.9698e-1 7.7496e-1 7.0354e-1 0 2.0582e-3 9.9574e-1 9.9496e-1 1.9899e+0 9.9496e-1 2.9885e+0 2.9849e+0 5.0115e+0 3.9798e+0 1.9615e+0 1.7511e+0 1.4263e+0 1.3250e+0 1.7635e-5 6.0004e-5 1.5000e-2 2.8510e-3 7.5498e-2 7.1042e-2 6.5254e-1 2.7160e-1 1.2664e+0 1.6480e+0 3.7918e-1 2.9052e-1 4.4355e-1 4.7407e-1 9.8920e+3 1.0158e-6 1.5639e+4 1.1241e-3 2.0941e+4 5.2651e-2 2.5132e+4 1.3474e+3 3.7099e+4 1.6936e+3 2.1366e+4 4.7516e+2 7.5338e+3 7.2324e+2 3.9113e-1 2.4856e-1 5.4520e-1 3.7844e-1 5.7953e-1 4.0864e-1 7.2001e-1 4.7261e-1 9.9512e-1 7.2356e-1 6.2690e-1 4.3591e-1 1.3407e-1 1.1888e-1 5.6454e-1 5.6628e-1 1.3294e+0 1.4408e+0 1.6906e+0 1.8625e+0 2.0670e+0 2.1318e+0 3.0726e+0 2.6985e+0 1.7193e+0 1.7736e+0 6.6719e-1 5.3521e-1
After combined with local search, the performance of HGO is significantly improved especially for functions 6-9 and 12, and its success rate is raised from 0% to 100% for function 6, from 52% to 72% for function 7, from 40% to 52% for function 9, from 0% to 44% for function 12. Of course, the impact of the used local search schedule is not always positive; for example, its performance is deteriorated for functions 2, 4 and 14.
Human Group Optimizer with Local Search
317
Table 2. Successful FEs and success performance of various algorithms Funcs
F1
F2
F3
F4
F5
F6
F7
Algorithms L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO
1st
13th
25th
Mean
Std
10126 27347 1.44e+3 1.1843e+4 19028 2541 6.5320e+3 3249 10227 94577 2.20e+3 1.1843e+4 26966 6109 2.2121e+4 6.8340e+3 28357 5.84e+3 1.2165e+4 31040 2.52e+3 28562 2.7185e+4 2.6605e+4 47405 5.36e+3 7.7125e+4 3859 7.3970e+3 7.9050e+3 31546 83171 5.67e+3 2.5912e+4 63447 86051 4.4816e+4 10257 1.49e+3 4.9529e+4 1.5700e+4 6.8340e+3
10126 28694 1.63e+3 1.1915e+4 20678 2767 7.2900e+3 3249 10241 2.35e+3 1.2046e+4 28900 7723 2.5232e+4 1.3652e+4 36644 6.51e+3 1.2519e+4 39110 2.88e+3 31977 2.9522e+4 2.9317e+4 49409 5.83e+3 8.9185e+4 4875 9.2620e+3 1.0651e+4 52756 8.55e+3 5.2022e+4 4.8016e+4 5.83e+3 4.9381e+4 2.7288e+4
10126 29944 1.71e+3 1.1946e+4 22370 2995 8.4440e+3 3249 10244 2.60e+3 1.2340e+4 30721 9504 2.6734e+4 2.0448e+4 7.20e+3 1.2649e+4 3.22e+3 35436 3.1375e+4 3.1809e+4 52414 6.72e+3 1.0783e+4 1.2340e+4 63382 2.26e+4 7.8003e+4 6.0727e+4 1.33e+4 -
10126 2.8701e+4 1.61e+3 1.1912e+4 2.0702e+4 2.7666e+3 7.3048e+3 3249 10237 2.38e+3 1.2052e+4 2.8683e+4 7.9303e+3 2.4951e+4 1.4835e+4 6.50e+3 1.2480e+4 2.90e+3 3.1827e+4 2.9288e+4 2.9202e+4 4.9656e+4 5.85e+3 9.3535e+3 1.0312e+4 48777 1.08e+4 5.4677e+4 4.8268e+4 4.67e+3 -
0 6.7244e+2 6.14e+1 2.5786 +1 7.0589e+2 1.1149e+2 4.4876e+2 0 7.2920 1.06e+2 1.1488e+2 1.0814e+3 8.9394e+2 1.2441e+3 3.2041e+3 2.92e+2 1.2440e+2 1.68e+2 1.7093e+3 1.2098e+3 1.4748e+3 1.4919e+6 2.89e+2 7.6755e+2 1.1795e+3 10240 5.00e+3 1.2942e+4 4.0065e+3 2.83e+3 -
Success Rate 100% 100% 100% 100% 100% 100% 100% 100% 100% 24% 100% 100% 100% 100% 100% 100% 64% 0% 100% 100% 0% 0% 0% 0% 96% 0% 100% 0% 100% 0% 100% 100% 0% 100% 100% 80% 0% 88% 100% 100% 100% 8% 100% 100% 48% 36% 0% 100% 24% 0% 100% 16% 0% 0% 52% 72%
Success Performance 1.0126e+4 2.8701e+4 1.61e+3 1.1912e+4 2.0702e+4 2.7666e+3 7.3048e+3 3249 1.0237e+4 4.0555e+5 2.38e+3 1.2052e+4 2.8683e+4 7.9303e+3 2.4951e+4 1.4835e+4 5.2306e+4 6.50e+3 1.2480e+4 4.5601e+4 2.90e+3 3.1827e+4 2.9288e+4 2.9202e+4 4.9656e+4 5.85e+3 1.1336e+5 1.0912e+4 9.3535e+3 1.0312e+4 4.8777e+4 1.0918e+6 1.08e+4 5.4677e+4 1.5553e+5 2.4532e+5 4.8268e+4 1.7197e+5 4.67e+3 5.8672e+5 6.5136e+4 3.1849e+4
318
C. Dai et al. Table 2. (Continued)
Funcs
F9
F10
F11
F12
Algorithms L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO L-SaDE SACP-DE LR-CMA-ES DMS-L-PSO CLPSO SPSO-2007 HGO L-HGO
1st
13th
25th
Mean
14540 46532 2.33e+4 2.4651e+4 3.8625e+4 4.3002e+4 2.68e+4 6.8971e+4 5.3240e+4 3.05e+4 2.3123e+4 2.6401e+4 10302 2.37e+3 1.2482e+4 46864 1.0243e+4
17217 52241 7.85e+4 3.6919e+4 6.6480e+4 5.15e+4 31493 3.10e+4 2.5687e+4 -
20103 58120 4.9663e+4 52733 -
17048 5.2126e+4 3.4612e+4 31933 -
Success Rate 1340.9 100% 3.0352e+3 100% 76% 8.8073e+3 100% 0% 0% 40% 52% 0% 0% 92% 0% 0% 0% 12% 16% 0% 0% 24% 0% 0% 0% 24% 36% 12789 100% 0% 88% 76% 16% 0% 0% 44% Std
Success Performance 1.7048e+4 5.2126e+4 7.57e+4 3.4612e+4 1.1130e+5 1.0691e+5 6.50e+4 6.0441e+5 4.2706e+5 2.63e+5 1.2489e+5 9.4848e+4 3.1933e+4 3.27e+4 5.4443e+4 4.2168e+5 7.7500e+4
4 Conclusions The HGO is a novel swarm intelligence algorithm by simulating human behaviors, especially human searching/foraging behaviors. In order to improve the local search ability, the canonical HGO is combined with the Quasi-Newton method. The studies on the comparisons between L-HGO and other algorithms are also conducted on several functions provided by CEC05. The simulation results document that the proposed algorithm is a competitive and promising candidate of search algorithms. In the future research, we will further conduct in-depth study on human social behaviors, especially human searching/foraging behaviors, for solving optimization problems. Acknowledgments. This work was supported in part by the Fundamental Research Funds for the Central Universities under Contracts (SWJTU09CX026) and Experimental Education and Technology Project of Southwest Jiaotong University (No. 2010A03).
Human Group Optimizer with Local Search
319
References 1. Kordon, A.K.: Swarm intelligence: The benefits of swarms. In: Applying Computational Intelligence: How to Create Value, pp. 145–174. Springer, Heidelberg (2010) 2. Timmis, J., Andrews, P., Hart, E.: On artificial immune systems and swarm intelligence. Swarm Intell. 4, 247–273 (2010) 3. Krause, J., Ruxton, G.D., Krause, S.: Swarm intelligence in animals and humans. Trends in Ecology & Evolution 25, 28–34 (2010) 4. Goldstone, R.L., Roberts, M.E., Gureckis, T.M.: Emergent processes in group behavior. Current Directions in Psychological Science 17, 10–15 (2008) 5. Dai, C.H., Chen, W.R., Song, Y.H., et al.: Seeker optimization algorithm: A novel stochastic search algorithm for global numerical optimization. J. Syst. Eng. Electro. 21, 300–311 (2010) 6. Cohen, J.D., McClure, S.M., Yu, A.J.: Should I stay or should I go? How the human brain manages the trade-off between exploitation and exploration. Philos. Trans. R. Soc. Lond., Ser. B: Biol. Sci. 362, 933–942 (2007) 7. Dai, C., Zhu, Y., Chen, W.: Seeker optimization algorithm. In: Wang, Y., Cheung, Y., Liu, H. (eds.) CIS 2006. LNCS (LNAI), vol. 4456, pp. 167–176. Springer, Heidelberg (2007) 8. Dai, C., Chen, W., Cheng, Z., et al.: Seeker optimization algorithm for global optimization: a case study on optimal modelling of proton exchange membrane fuel cell (PEMFC). Int. J. Electr. Power Energ. Syst. 33, 369–376 (2011) 9. Dai, C., Chen, W., Zhu, Y., et al.: Reactive power dispatch considering voltage stability with seeker optimization algorithm. Electr. Power Syst. Res. 79, 1462–1471 (2009) 10. Dai, C., Chen, W., Zhu, Y., et al.: Seeker optimization algorithm for optimal reactive power dispatch. IEEE Trans. Power Syst. 24, 1218–1231 (2009) 11. Sivasubramani, S., Swarup, K.S.: Hybrid SOA–SQP algorithm for dynamic economic dispatch with valve-point effects. Energy 35(12), 5031–5036 (2010) 12. Shaw, B., Mukherjee, V., Ghoshal, S.P.: Seeker optimization algorithm: application to the solution of economic load dispatch problems. IET Gener. Transm. Distrib. 5, 81–91 (2011) 13. Krishnanand, K.R., Rout, P.K., Panigrahi, B.K., Mohapatra, A.: Solution to non-convex electric power dispatch problem using seeker optimization algorithm. In: Panigrahi, B.K., Das, S., Suganthan, P.N., Dash, S.S. (eds.) SEMCCO 2010. LNCS, vol. 6466, pp. 537– 544. Springer, Heidelberg (2010) 14. Zhao, Z., Li, Y., Yu, J., et al.: Optimal assembly tolerance design based on Fuzzy information entropy and seeker optimization algorithm. In: 3rd International Conference on Advanced Computer Theory and Engineering, vol. 5, pp. 610–613 (2010) 15. Dai, C., Chen, W., Zhu, Y.: Seeker optimization algorithm for digital IIR filter design. IEEE Trans. Ind. Electron. 57, 1710–1718 (2010) 16. Dai, C., Chen, W., Zhu, Y., et al.: Seeker optimization algorithm for tuning the structure and parameters of neural networks. Neurocomputing 74, 876–883 (2011) 17. Dai, C., Chen, W., Ma, L., et al.: Human group optimizer for global numerical optimization. Int. J. Artif. Intell. Tools (2010) (in press) 18. Clerc, M.: Back to random topology (2007), http://clerc.maurice.free.fr/pso/ 19. Standard PSO 2007 (SPSO-07) on the Particle Swarm Central, Programs section, http://www.particleswarm.info/ (Login time in 2008) 20. Liang, J.J., Suganthan, P.N.: Dynamic multi-swarm particle swarm optimizer with local search. In: Proc. 2005 IEEE Congress on Evol. Comput., vol. 2, pp. 522–528 (2005)
320
C. Dai et al.
21. Suganthan, P.N., Hansen, N., Liang, J.J., et al.: Problem Definitions and Evaluation Criteria for the CEC 2005 Special Session on Real-Parameter Optimization, Technical Report, Nanyang Technological University, Singapore (May 2005) 22. Qin, A.K., Suganthan, P.N.: Self-adaptive differential evolution algorithm for numerical optimization. In: Proc. 2005 IEEE Congress on Evol. Comput (CEC 2005), Edinburgh, Scotland, vol. 2, pp. 1785–1791 (2005) 23. Brest, J., Greiner, S., Bošković, B., et al.: Self-adapting control parameters in differential evolution: a comparative study on numerical benchmark problems. IEEE Trans. Evol. Comput. 10, 646–657 (2006) 24. Auger, A., Kern, S., Hansen, N.: A restart CMA evolution strategy with increasing population size. In: Proc. 2005 IEEE Congress on Evol. Comput (CEC 2005), Edinburgh, Scotland, vol. 2, pp. 1769–1776 (2005) 25. Liang, J.J., Qin, A.K., Suganthan, P.N., et al.: Comprehensive learning particle swarm optimizer for global optimization of multimodal functions. IEEE Trans. Evol. Comput. 10, 67–82 (2006)
Average-Inertia Weighted Cat Swarm Optimization Maysam Orouskhani1,*, Mohammad Mansouri2, and Mohammad Teshnehlab3 1
Msc Student, Department of Computer Engineering, Science and Research Branch, Islamic Azad University, Tehran, Iran [email protected] 2 Intelligent System Laboratory (ISLAB), faculty of Electrical Engineering, Control department, K.N. Toosi University of Technology, Tehran, Iran 3 Department of Computer Engineering, Science and Research Branch, Islamic Azad University, Tehran, Iran
Abstract. For improving the convergence of Cat Swarm Optimization (CSO), we propose a new algorithm of CSO namely, Average-Inertia Weighted CSO (AICSO). For achieving this, we added a new parameter to the position update equation as an inertia weight and used a new form of the velocity update equation in the tracing mode of algorithm. Experimental results using Griewank, Rastrigin and Ackley functions demonstrate that the proposed algorithm has much better convergence than pure CSO. Keywords: Cat Swarm Optimization, Average-Inertia Weighted Cat Swarm Optimization, Swarm Intelligence.
1 Introduction Optimization and functions minimization are very important problems. So there are many algorithms to solve these problems.Some of these optimization algorithms were developed based on swarm intelligence bysimulating the intelligent behavior of animals, like Ant Colony Optimization (ACO) [1-6] which imitates the behavior of ants, Particle Swarm Optimization (PSO) [2] which imitates thebehavior of birds, Bee Colony Optimization (BCO)[3] which imitates the behavior of bees and the recent finding, Cat SwarmOptimization (CSO) [4] which imitates the behavior of cats. In order to solve the optimization problems, CSO models the behavior of cats into two sub-models namely seeking mode and tracing mode. In the cases of functions optimization, CSO is one of the best algorithms to find the best global solution. In comparison with other heuristic algorithms such as PSO and PSO with weighting factor [7], CSO usually achieves better result. But sometimes in some cases pure CSO takes a long time to find an acceptable solution. So it affects on performance and convergence of the algorithm.Therefore high speed processor is needed for getting reasonable result. In this article, our aim is to introduce a new version of CSO in order to improve the performance and achieve better convergence in less iteration. First we add a new *
Corresponding author.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 321–328, 2011. © Springer-Verlag Berlin Heidelberg 2011
322
M. Orouskhani, M. Mansouri, and M. Teshnehlab
parameter to the position equation as an inertia weight that will be chosen randomly (ICSO). Then by making a new form of the velocity equation composing two terms, we introduce Average-Inertia Weighted CSO (AICSO). Experimental results indicate that the proposed algorithm rather than pureCSO can improve performance on finding the best global solution and achieves better accuracy level of convergence.
2 Cat Swarm Optimization Chu et al. [4] divided CSO algorithm into two sub-models based on two of the major behavioral traits of cats.These are termed”seeking mode” and ”tracing mode”.In CSO, we first decide how many cats we would like to usein the iteration, then we apply the cats into CSO to solve the problems. Every cat has its own position composed of Ddimensions, velocities for each dimension, a fitness value, which represents the accommodation of the cat to the fitness function, and a flag to identify whether the cat is in seeking mode or tracing mode. The final solution would be the best position of one of the cats. The CSO keeps the best solution until it reaches the end of the iterations [5]. A. Seeking Mode This sub model is used to model the cat during a period of resting but being alertlooking around its environment for its next move. Seeking mode has four essential factors, which are designed as follows: seeking memory pool (SMP), seeking range of the selected dimension (SRD), counts of dimension to change (CDC) and self position consideration (SPC). Seeking mode is described below. Step 1: Make j copies of the present position of catk , where j = SMP. If the value of SPC is true, let j = (SMP-1), then retain the present position as one of the candidates. Step 2:For each copy, according to CDC, randomly plus or minus SRD percent the present values and replace the old ones. Step 3: Calculate the fitness values (FS) of all candidate points. Step 4: If all FS are not exactly equal, calculate the selecting probability of each candidate point by equation (1), otherwise set all the selecting probability of each candidate point be 1. Step 5: Randomly pick the point to move to from the candidate points, and replace the position of catk. P
|SSE SSE
SSE | , SSE
0
i
j
1
If the goal of the fitness function is to find the minimum solution,FSb= FSmax , otherwiseFSb = FSmin
Average-Inertia Weighted Cat Swarm Optimization
323
B. Tracing Mode Tracing mode is the sub-model for modeling the case of the cat in tracing targets. The action of tracing mode can be described as follows: Step 1: Update the velocities for every dimension (vk,d) according to equation (2). Step 2: Check if the velocities are in the range of maximum velocity. In case the new velocity is over-range, it is set equal to the limit. v
,
v
r c
,
x
x
,
2
,
Step 3: Update the position of cat k according to (3) ,
,
,
C. Core Description of CSO In order to combine these two modes into the algorithm, we define a mixture ratio (MR) which dictates the joining of seeking mode with tracing mode. The MR decides how many cats will be moved by seeking mode process. For example,if the population size is 50 and the MR is equal to 0.7, there should be50*0.7=35 cats moveto seeking mode and 15 cats move to tracing mode in this iteration. So the process of CSO is summarized below: First we create N cats and initialize the position, velocities and the flag of every cat. (*) According to the fitness function, evaluate the fitness value of the each cat and keep the best cat into memory. In next step, according to cat’s flag, apply cat to the seeking mode or tracing mode process. After finishing the related process, re-pick the number of cats and set them into seeking mode or tracing mode according to MR. In the final step check the termination condition, if satisfied, terminate the program, otherwise go to (*).
3 AICSO Algorithm In the pure CSO, we should have a condition on the velocity equation in order to control the velocities of the cats for every dimension and check whether the velocities are in the range of maximum or not. For modifying this part, we use a parameter as an inertia weight to handle this problem.Here we choose the value of inertia weight (w) randomly and experimental results indicate that it is better to choose w in the range of [0.4,0.9].So we select the largest value for w in the first iteration (w = 0.9) and then it will be reduced to 0.4 in thenext iterations.CSO with inertia weight can converge under certain conditions even without using vmax. For w>1, velocities increase over time, causing cats to diverge eventually beyond the boundaries of the search space.Forw<1,velocities decrease over time,eventually reaching 0,resulting in convergence behavior.So the new position update equation can be written as v
,
wv
,
r c x
,
x
,
4
Where c1is acceleration coefficient and usually is equal to 2.05 and r1is a random value uniformly generated in the range of [0,1] and w is inertia weight(ICSO).
324
M. Orouskhani, M. Mansouri, and M. Teshnehlab
Next step, we use a new form of the position update equation composingtwo terms. In the first term, the average information of current and previous position and in the second, the average of current and previous velocity information will be used(AICSO). So new position equation is described below x
x
x 2
v
v
5
2
4 Experimental Results In this paper, simulation experiments are conducted in GCC compiler on an Intel Core 2 Duo at 2.53GHz with 4G real memory.Our test is about finding the global minima of three test functions: Rastrigrin, Griewank and Ackley. In table1 we determine the parameter values of the algorithm and the limitations range of three test functions are mentioned in table2. Table 1. Parameters settings(1) Parameter Value or range SMP 5 SRD CDC MR c1 r1 w
20% 80% 2% 2.05 [0,1] [0.4,0.9]
Table 2. Parameters settings(2) Function Limitation Range Object Rastrigrin [2.56,5.12] Minimize Griewank [300,600] Minimize Ackley [-32.768,32.768] Minimize
Rastrigin’s function is based on the function of DeJong with the addition of cosine modulation in order to produce frequent local minima. Thus, the test function is highly multimodal. Function has the following definition 10
2
10
6
Where -5.12<x<5.12, its global minimum is equal to 0. As shown in Fig.1, AICSO in the 900th iteration achieves the best solution and its fitness value is so close to the answer of Rastrigin’s function. So in comparison with pure CSO and ICSO, AICSO has so much better solution and takes less iteration to converge.
Average-Inertia Weighted Cat Swarm Optimization
325
Fig. 1. The experimental result of Rastrigin function
Fig. 2. The experimental result of Griewank function
Griewangk’s function has many minima regularly distributed. Where -600<x<600, its global minimum is equal to 0. Function has the following definition 1 4000
√
1
7
As demonstrated in Fig.2, Pure CSO and ICSO have the same fitness value approximately but ICSO can find the better solution and its final solution is 4.57.
326
M. Orouskhani, M. Mansouri, and M. Teshnehlab
Fig. 3. The experimental result of Ackley function
Ackley’s function is a widely used multimodal test function and Where32.68<x<32.68, its global minimum is equal to 0. It has the following definition 20. exp
0.2
1
exp
1
cos 2
20
exp 1
8
As shown in Fig.3 AICSO rather than Pure CSO can find the better solution and the best fitness value is 0.000192 in the last iteration. With comparisons of the average fitness value, numbers of iteration and the best global solution for CSO, ICSO and AICSO which are mentioned in Table3, table4 and table5,results indicate that AICSO has better performance and usually takes less iteration to converge rather than pure CSO and ICSO. For example, global results of Griewank function are shown in table4. The best fitness values of CSO, ICSO and AICSO are 12.08, 10.01, 4.57 respectively. So it is clear that AICSO has much better result and its solution is more acceptable than CSO and ICSO. Table 3. Global Results of Rastrig in Function
Algorithm Average Solution
Iteration
Best Solution
CSO
26.64208
2000
1.161127
ICSO
22.45198
1100
0.000000
AICSO
21.718749
950
0.000000
Average-Inertia Weighted Cat Swarm Optimization
327
Table 4. Global Results of Griewank Function
Algorithm
Average Solution
Iteration
Best Solution
CSO
16.34888
2000
12.081966
ICSO
1485353
2000
10.017866
AICSO
9.937433
2000
4.572061
Table 5. Global Results of Ackley Function
Algorithm Average Solution
Iteration
Best Solution
CSO
0.38096
3500
0.004589
AICSO
0.370672
3500
0.000192
5 Conclusions Function minimization is a very important problem in the optimization theory. Cat Swarm Optimization is one of the useful algorithms to solve these problems. But pure CSO in some cases takes a long time to converge and in some problems cannot find the best global solution correctly. So we modified the tracing mode of the algorithm. To do this, we added an inertia weightto the velocity update equation (ICSO) and then we changed the position update equation to a new form using average of current and previous position/ velocity information (AICSO). Experimental results for three benchmarks indicated that the proposed algorithm in comparison with pure CSO and ICSO improves the performance on finding the best global solution and achieves the better accuracy level of convergence in the less iteration.
References 1. Dorigo, M., Gambardella, L.M.: Ant colony system: a cooperative learning approach to thetraveling salesman problem. IEEE Trans. on EvolutionaryComputation 26(1), 53–66 (1997) 2. Eberhart, R., Kennedy, J.: A new optimizer using particle swarm theory. In: Sixth International Symposium on Micro Machine and Human Science, pp. 39–43 (1995) 3. Karaboga, D.: An Idea Based On Honey Bee Swarm for Numerical Optimization, Technical Report-TR06,ErciyesUniversity, Engineering Faculty, Computer Engineering Department (2005) 4. Chu, S.C., Tsai, P.W., Pan, J.S.: Cat swarm optimization. In: Yang, Q., Webb, G. (eds.) PRICAI 2006. LNCS (LNAI), vol. 4099, pp. 854–858. Springer, Heidelberg (2006)
328
M. Orouskhani, M. Mansouri, and M. Teshnehlab
5. Santosa, B., Ningrum, M.: Cat Swarm Optimization for Clustering. In: International Conferenceof Soft Computing and Pattern Recognition, pp. 54–59 (2009) 6. Chu, S.C., Roddick, J.F., Pan, J.S.: Ant colony system with communication strategies. Information Sciences 167, 63–76 (2004) 7. Shi, Y., Eberhart, R.: Empirical study of particle swarm optimization. In: Congress on Evolutionary Computation, pp. 1945–1950 (1999) 8. Molga, M., Smutnicki, C.: Test functions for optimization needs, 3 kwietnia (2005)
Standby Redundancy Optimization with Type-2 Fuzzy Lifetimes Yanju Chen and Ying Liu College of Mathematics and Computer Science, Hebei University Baoding 071002, Hebei, China [email protected]
Abstract. Under the given system weight constraint, we consider the problem of maximizing the system lifetime and minimizing the system cost. The lifetimes of components in the system are characterized by type-2 fuzzy variables. The numbers of redundant elements of each components are the decision variables. We use the reduction methods to reduce the type-2 fuzzy lifetimes. Then, we propose a goal programming model for this system. We suggest an approximation approach (AA) to the reliability and design an AA-based particle swarm optimization (PSO) algorithm to solve the fuzzy model. Keywords: Standby redundancy optimization, Type-2 fuzzy variables, Generalized credibility, Approximation approach, Particle swarm optimization.
1
Introduction
In various kinds of systems, reliability engineering is especially important. The primary goal of reliability engineering is to improve the reliability of a system. The redundancy allocation is a direct way of enhancing the binary-state system reliability. There exist two basic ways to provide some components redundancy: parallel redundancy and standby redundancy. In the first way, all redundant elements are operating while in the second way, one of the redundant elements begins to work only when the active element has failed. Based on the assumption that the elements’ lifetimes are random variables, many lots of researches have been done. Coit and Smith [1] have studied redundancy allocation to maximize a lower percentile of the system time-to-failure distribution. Zhao and Liu [2] have considered both parallel redundant systems and standby redundant systems, three types of system performance are introduced. Reliability has become a greater concern in recent years, Kuo and Wan [3] provides a broad overview of recent research on reliability optimization problems and their solution methodologies. To enhance the reliability of the systems in which the lifetimes are imprecise or vague, some researchers used the fuzzy set theory to study fuzzy reliability optimization problems [4,5,6]. Mahapatra and Roy [7] discussed a fuzzy multi-objective optimization method for a multiobjective system reliability problem. With different optimization criteria, Zhao Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 329–337, 2011. c Springer-Verlag Berlin Heidelberg 2011
330
Y. Chen and Y. Liu
and Liu [8] built three kinds of standby redundancy optimization models for a standby redundancy system with fuzzy lifetimes. Since the membership function is difficult to be determined, Zadeh [9] introduced the concept of a type-2 fuzzy set as an extension of an ordinary fuzzy set. A type-2 fuzzy set is characterized by a fuzzy membership function. Liu and Liu [10] presented fuzzy possibility theory. In fuzzy possibility theory, a variable-based approach is adopted to deal with type-2 fuzziness. To characterize the properties of type-2 fuzzy variables in some aspects, Chen and Wang [11] presented a scalar representative value operator for type-2 fuzzy variable. To defuzzify type-2 fuzzy variables, Qin et al. [12,13] gave the mean reduction methods and the critical value reduction methods for the type-2 fuzzy variable. This paper models the redundancy optimization based on fuzzy possibility theory, the lifetimes of components are characterized by type-2 fuzzy variables with known secondary possibility distributions. The paper is organized as follows. Section 2 recalls some basic concepts and results in fuzzy possibility theory. In Section 3, we formulate a multi-objective redundancy optimization model with type-2 fuzzy lifetimes. Then we use the reduction methods to reduce the type-2 fuzzy lifetimes and propose a goal programming model. Section 4 employs the AA to evaluate the system reliability and designs an approximation-based PSO algorithm to solve the proposed goal programming model. One numerical example is provided in Section 5. Finally, Section 6 summarizes the main work in this paper.
2
Preliminaries
Let ξ be a general fuzzy variable with the distribution μ. The generalized credi˜ of the event {ξ ≥ r} is defined by bility measure [13], denoted by Cr, ˜ Cr{ξ ≥ r} = 12 supx∈ μ(x) + supx≥r μ(x) − supx
for any subsets Bi , i = 1, 2, . . . , n of . To reduce the type-2 fuzziness, one way is to give a reasonable representation for the secondary possibility distribution [10]. For this purpose, Qin et al. [13] have used the expectations [14] of secondary possibility distribution as the representing values and given the mean reduction methods for the type-2 fuzzy variable. With E reduction method, the reduction η of type-2 normal fuzzy variable η˜ = n ˜ (μ, σ2 ; θl , θr ) has the following distribution [13] ⎧ (x−μ)2 √ √ ⎪ ⎨ (4+θr −θl ) exp(− 2σ2 ) , if x ≤ μ − σ 2ln2 or x ≥ μ + σ 2ln2 4 μη (x)= 2 ⎪ √ √ )+θr −θl ⎩ (4−θr +θl ) exp(− (x−μ) 2σ2 , if μ − σ 2ln2 < x < μ + σ 2ln2. 4
Standby Redundancy Optimization with Type-2 Fuzzy Lifetimes
331
With E reduction method, the reduction ξ of type-2 triangular fuzzy variable ξ˜ = (˜ r1 , r˜2 , r˜3 ; θl , θr ) has the following distribution [13] ⎧ (4+θ −θ )(x−r ) r 1 l 2 ⎪ , if x ∈ [r1 , r1 +r ⎪ 4(r2 −r1 ) 2 ] ⎪ ⎪ ⎪ ⎪ ⎨ (4−θr +θl )x+(θr −θl )r2 −4r1 , if x ∈ ( r1 +r2 , r2 ] 4(r2 −r1 ) 2 μξ (x) = (−4+θ −θ )x+4r −(θ −θ )r r 3 r l l 2 ⎪ 3 ⎪ , if x ∈ (r2 , r2 +r ⎪ 4(r3 −r2 ) 2 ] ⎪ ⎪ ⎪ ⎩ (4+θr −θl )(r3 −x) , if x ∈ ( r2 +r3 , r ]. 4(r3 −r2 )
3
2
3
Fuzzy Standby Redundancy Optimization Problem
This paper considers a standby redundant system containing five components which is showed in Fig. 1. Assume that the ith component consists of xi redundant elements, i = 1, 2, . . . , 5, respectively. Firstly, we give the following assumptions: 1) The system, components, and elements, at any time, are binarystate (good or failed). 2) There is no element (or system) repair or preventive maintenance. 3) The failures of the elements are mutually-independent. 4) The switching device of the standby system is perfect. 5) The elements of the same type have independent and identically distributed lifetimes, the lifetimes of each components are independent.
[
[
[
[
[
Fig. 1. A standby redundant system
Sometimes, we can only obtain limited information about the lifetimes such as the distributions. In this section, we assume that we can only obtain the type-2 distributions of the lifetimes, i.e., the lifetimes are characterized by type-2 fuzzy variables. We use type-2 fuzzy vector ξ˜ = (ξ˜1,1 , . . . , ξ˜1,x1 , . . . , ξ˜5,1 , . . . , ξ˜5,x5 ) where ξ˜i,j is the type-2 fuzzy lifetime of the jth element in component i for all i = 1, 2, . . . , n, j = 1, 2, . . . , xi , to characterize the lifetimes of the components. The system lifetime at allocation x = (x1 , . . . , x5 ) can be expressed as ˜ T (x, ξ) = max{(ξ˜1,1 + · · · + ξ˜1,x1 ) ∧ (ξ˜3,1 + · · · + ξ˜3,x3 ) ∧ (ξ˜4,1 + · · · + ξ˜4,x4 ), (ξ˜1,1 + · · · + ξ˜1,x1 ) ∧ (ξ˜3,1 + · · · + ξ˜3,x3 ) ∧ (ξ˜5,1 + · · · + ξ˜5,x5 ), (ξ˜2,1 + · · · + ξ˜2,x2 ) ∧ (ξ˜3,1 + · · · + ξ˜3,x3 ) ∧ (ξ˜4,1 + · · · + ξ˜4,x4 ), (ξ˜2,1 + · · · + ξ˜2,x2 ) ∧ (ξ˜3,1 + · · · + ξ˜3,x3 ) ∧ (ξ˜5,1 + · · · + ξ˜5,x5 )}.
(1)
332
Y. Chen and Y. Liu
Our problem is to find the optimal redundancy allocations to this system so as to maximize the system lifetime and minimize the system cost. Based on those two different objectives, we can formulate the standby redundancy optimization model as ⎧ ˜ max T (x, ξ) ⎪ ⎪ 5 5 ⎨ ci xi + i=1 ci exp(hi xi ) min i=1 (2) ⎪ subject to 5i=1 wi xi + 5i=1 wi exp(mi xi ) ≤ w0 ⎪ ⎩ x ≥ 1, integer vector where 1 = (1, 1, 1, 1, 1), xi is the decision variable which denotes the number of elements in the ith component, w0 denotes the maximal weight the system can burden, wi denotes the weight of element in the ith component, ci denotes the cost of element in the ith component, wi exp(mi xi ) and ci exp(hi xi ) denote the additional weight and cost due to the interconnection between elements in the ith component, respectively, hi , mi represent the corresponding parameters. The problem (2) is not well-defined because the meaning of the first objective is not clear. In this sense, solving such a programming is meaningless. In order to obtain a meaningful mathematical model, we can use the mean reduction methods to reduce the type-2 fuzzy lifetimes. We expect to maximize the system lifetime and minimize the system cost. Let T0 be the threshold duration of the ˜ system lifetime, and Cr{T (x, ξ) ≥ T0 } the system reliability. If we regard system reliability as the first priority, then we obtain the following goal programming model ⎧ + lexmin {d− ⎪ 1 , d2 } ⎪ ⎪ + ˜ ⎪ subject to Cr{T (x, ξ) ≥ T0 } + d− ⎪ 1 − d1 = α0 ⎪ 5 5 ⎨ + ci xi + i=1 ci exp(hi xi ) + d− 2 − d2 = c0 i=1 5 (3) 5 ⎪ ⎪ i=1 wi xi + i=1 wi exp(mi xi ) ≤ w0 ⎪ ⎪ ⎪ x ≥ 1, integer vector ⎪ ⎩ + d− i , di ≥ 0, i = 1, 2 where ξ = (ξ1,1 , . . . , ξ1,x1 , . . . , ξ5,1 , . . . , ξ5,x5 ) and ξi,j is the reduced fuzzy vari˜ is the generalized able of ξ˜i,j according to the mean reduction methods, Cr credibility measure, α0 is the given level the system reliability should achieve, c0 is the given level of the system cost should achieve.
4
Solution Method
To solve the fuzzy goal programming model (3), it is required to evaluate the ˜ generalized credibility function Cr{T (x, ξ) ≥ T0 }. For any feasible decision ˜ x, we evaluate Cr{T (x, ξ) ≥ T0 } by using the AA [15]. Then we suggest an approximation-based PSO algorithm to solve the model (3). 4.1
An Approximation Scheme
For simplicity, we rewrite ξ = (ξ1 , ξ2 , . . . , ξm ) where m = x1 + · · · + x5 . Suppose that ξ is an essentially bounded fuzzy vector, and the possibility distributions νi
Standby Redundancy Optimization with Type-2 Fuzzy Lifetimes
333
of ξi , i = 1, 2, . . . , m, are continuous on . Let μ be the possibility distribution of ξ, and defined as μ(u1 , u2 , . . . , um ) = min νi (ui ) 1≤i≤m
(4)
for every (u1 , u2 , . . . , u m ) ∈ m . m Denote Ξ = i=1 [ai , bi ] as the support of ξ with [ai , bi ] the supports of ξi , i = 1, 2, . . . , m, respectively. For any given integer n, the discrete fuzzy vector ζn = (ζn,1 , ζn,2 , . . . , ζn,m ) is defined as ζn = hn (ξ) = (hn,1 (ξ1 ), hn,2 (ξ2 ), . . . , hn,m (ξm )) (5) where the fuzzy variables ζn,i = hn,i (ξi ), i = 1, 2, . . . , m, with
hn,i (ui ) = sup kni | ki ∈ Z, kni ≤ ui
(6)
for ui ∈ [ai , bi ], and Z the set of all integers. Moreover, for each i, 1 ≤ i ≤ m, by the definition of ζn,i , as ξi takes its values in [ai , bi ], the fuzzy variable ζn,i takes its values in the set { kni | ki = [nai ], [nai ] + 1, . . . , Ki }, where [r] is the maximal integer such that [r] ≤ r, and Ki = nbi − 1 or [nbi ] according as nbi is an integer or not an integer. Therefore, the possibility distribution νn,i of ζn,i is
(7) νn,i kni = Pos γ | kni ≤ ξi (γ) < kin+1 for ki = [nai ], [nai ] + 1, . . . , Ki . As a consequence, the possibility distribution μn of ζn = (ζn,1 , . . . , ζn,m ) is μn kn1 , kn2 , . . . , knm = min νn,i kni (8) 1≤i≤m for i = 1, 2, . . . , m, and ki = [nai ], [nai ] + 1, . . . , Ki . The sequence {ζn }, which converges uniformly to the continuous fuzzy vector ξ [15], is referred to as the discretization of the continuous fuzzy vector ξ. 4.2
Computing the Generalized Credibility ˜ ˜ Let Cr{T (x, ξ) ≥ T0 } is denoted as Cr{g(ξ) ≥ T0 }. We now discuss the compu˜ tation of Cr{g(ξ) ≥ T0 } according to the following two cases. Case 1. Suppose ξ = (ξ1 , ξ2 , . . . , ξm ) has the possibility distribution
ξˆ1 ξˆ2 . . . ξˆK ξ∼ ν1 ν2 . . . νK
(9)
with νk = Pos{ξ = ξˆk } > 0, ξˆk = (ξˆk,1 , ξˆk,2 , . . . , ξˆk,m ) ∈ m , and maxK k=1 νk = supx∈Ξ μ(x). The generalized credibility ˜ Cr{g(ξ) ≥ T0 } = 12 (supx∈Ξ μ(x) + max{νk | g(ξˆk ) ≥ T0 } − max{νk | g(ξˆk ) < T0 }) where Ξ = ξˆ1 , ξˆ2 , . . . , ξˆK ⊂ m .
334
Y. Chen and Y. Liu
Case 2. Suppose the support Ξ of ξ is continuous. We utilize the following ˜ approach to compute L = Cr{g(ξ) ≥ T0 }. Let {ζn } be the discretization of the fuzzy vector ξ. For each fixed n, the k k k fuzzy vector ζn takes on K values ζˆnk = (ζˆn,1 , ζˆn,2 , . . . , ζˆn,m ), k = 1, 2, . . . , K, k k k ˆ ˆ with K = K1 K2 · · · Km . Write νk = νn,1 (ζn,1 ) ∧ νn,2 (ζn,2 ) ∧ · · · ∧ νn,m (ζˆn,m ) for k = 1, 2, . . . , K, where νn,i defined by Eq. (7) are the possibility distributions of ˜ the fuzzy variables ζn,i , i = 1, 2, . . . , m, respectively. Then Cr{g(ζ n ) ≥ T0 } can be computed by the formula
1 k k ˆ ˆ sup μ(x) + max{νk | g(ζn ) ≥ T0 } − max{νk | g(ζn ) < T0 } . (10) 2 x∈Ξ ˜ ˜ Liu [15] shows that Cr{g(ζ n ) ≥ T0 } converges to Cr{g(ξ) ≥ T0 } as n → ∞, which ˜ implies that Cr{g(ξ) ≥ T0 } can be estimated by the formula (10) provided n is ˜ sufficiently large. The process to estimate the generalized credibility Cr{g(ξ) ≥ T0 } (i.e., AA) is summarized as Step 1. form Step 2. Step 3. Step 4. 4.3
k k k Generate K points ζˆnk = (ζˆn,1 , ζˆn,2 , . . . , ζˆn,m ), k = 1, 2, . . . , K, which the support of ζn . Calculate g(ζˆnk ) for k = 1, 2, . . . , K. k k k Set νk = νn,1 (ζˆn,1 ) ∧ νn,2 (ζˆn,2 ) ∧ · · · ∧ νn,m (ζˆn,m ) for k = 1, 2, . . . , K. Return L via the estimation formula (10).
Hybrid Particle Swarm Optimization
PSO algorithm, originally developed in [16], is based on pop size particles, each of which indicates a possible solution of the problem space. Each particle has its own best position (pbest) which represents the personal smallest objective value so far at time t. The global best particle (gbest) represents the best particle found so far at time t in the colony. The new velocity of the ith particle is updated by the following formula Vi (t + 1) = ωVi (t) + c1 r1 (Pi (t) − Xi (t)) + c2 r2 (Pg (t) − Xi (t))
(11)
for i = 1, 2, . . . , pop size, where ω is called the inertia coefficient, c1 and c2 are the learning rates and usually c1 = c2 = 2, and r1 , r2 are two independent random numbers generated from the unit interval [0,1]. Let X = (x1 , . . . , x5 ) be denoted as a particle to represent the decision vector. Since model (3) is an integer programming, the new position of the ith particle is renewed by Xi (t + 1) = Xi (t) + IVi (t + 1) where
⎧ 1, if Vi (t + 1) > 0 ⎪ ⎪ ⎨ IVi (t + 1) = −1, if Vi (t + 1) < 0 ⎪ ⎪ ⎩ 0, if Vi (t + 1) = 0.
The solution process of PSO combined AA is summarized as follows.
(12)
Standby Redundancy Optimization with Type-2 Fuzzy Lifetimes
335
Step 1. Initialize pop size feasible particles with random positions and velocities, then compute their objective values by AA. Step 2. Set pbest of each particle and its objective value equal to its current position and objective value, and set gbest and its objective value equal to the position and objective value of the best initial particle; Step 3. Renew the velocity and position of each particle according to formulas (11) and (12), respectively. Step 4. Calculate the objective values for all particles by AA. Step 5. For each particle, compare the current objective value with that of its pbest. If the current objective value is smaller than that of pbest, then renew pbest and its objective value with the current position and objective value. Step 6. Find the best particle of the current swarm with the smallest objective value. If the objective value is smaller than that of gbest, then renew gbest and its objective value with the position and objective value of the current best particle. Step 7. Repeat the third to six steps for a given number of cycles. Step 8. Return the gbest and its objective value as the optimal solution and the optimal value.
5
A Numerical Example
We consider a standby redundant system containing five components which is showed in Fig. 1. Assume that the ith component consists of xi redundant elements, i = 1, 2, . . . , 5, respectively. For the ith component, the lifetime of each element is characterized by type-2 fuzzy variable ξ˜i , which is shown in Table 1, ξ˜i , i = 1, 2, . . . , 5 are mutually independent type-2 fuzzy variables [10]. Let ξi (i = 1, 2, . . . , 5) be the reduced fuzzy variable of ξ˜i according to the E reduction method, and the support of ξ3 be [0, 15]. Furthermore, we suppose that the threshold duration of the system lifetime is T0 = 5, the prescribed confidence level of the system reliability is α0 = 0.9, the given cost level of the system should achieve is c0 = 150, the maximal weight the system can burden is w0 = 220, the parameters hi = mi = 0.3, i = 1, . . . , 5. The other parameters are also shown in Table 1. Then we build the following goal programming model ⎧ + lexmin {d− ⎪ 1 , d2 } ⎪ ⎪ + ˜ ⎪ subject to Cr{T (x, ξ) ≥ 5} + d− ⎪ 1 − d1 = 0.9 ⎪ 5 5 ⎨ + ci xi + i=1 ci exp(0.3xi ) + d− 2 − d2 = 150 i=1 5 5 ⎪ ⎪ i=1 wi xi + i=1 wi exp(0.3xi ) ≤ 220 ⎪ ⎪ ⎪ x ≥ 1, integer vector ⎪ ⎩ + d− i , di ≥ 0, i = 1, 2.
(13)
For simplicity, we assume that θl = θli , θr = θri , i = 1, 2, . . . , 5. For some values of (θl , θr ), the AA-based PSO algorithm (1000 generations in PSO) shows the optimal solutions of model (13) which are provided in Table 1.
336
Y. Chen and Y. Liu Table 1. Parameters and solutions i 1 2 3 4 5
6
ξ˜i (˜ 3, ˜ 6, ˜ 8; θl1 , θr1 ) (˜ 4, ˜ 6, ˜ 7; θ 2 , θ 2 ) l
r
n ˜ (5, 2; θl3 , θr3 ) ˜ ˜ (3, 4, ˜ 8; θl4 , θr4 ) (˜ 4, ˜ 6, ˜ 7; θl5 , θr5 )
ci 10 12 13 9 10
wi 5 6 8 5 6
(θl , θr ) (0.6, 0.5) (0.4, 0.8) (0.8, 0.5) (0.4, 0.7) (0, 0)
optimal solution x (3, 1, 3, 1, 2) (2, 1, 3, 1, 2) (2, 1, 3, 1, 2) (4, 1, 4, 2, 1) (2, 1, 2, 1, 2)
d− 1 0 0 0 0 0.0098
d+ 2 46.7643 46.7643 46.7643 104.4587 25.4770
Conclusions
The paper’s innovation contents include the following three aspects: (a) Based on fuzzy possibility theory, we model the standby redundancy optimization problem and use the mean reduction methods to reduce the type-2 fuzzy lifetimes with known secondary possibility distributions. Then based on generalized credibility measure, we give a goal programming model; (b) When the lifetimes of components are characterized by mutually independent type-2 fuzzy variables, we employ the AA to estimate the system reliability. Then we design an approximation-based PSO algorithm to solve the proposed goal programming model; (c) For the proposed model, we provide one numerical example to illustrate the modeling idea and the efficiency of the proposed algorithm.
Acknowledgments This work is supported by the National Natural Science Foundation of China (No.60974134), the Natural Science Foundation and the Education Department of Hebei Province (No.A2011201007, No.F2010000318, No.2010109), and the Scientific Research and Development Program of Baoding (No.10ZR002).
References 1. Coit, D.W., Smith, A.E.: Redundancy Allocation to Maximize a Lower Percentile of the System Time-to-Failure Distribution. IEEE Transactions on Reliability 47, 79–87 (1998) 2. Zhao, R., Liu, B.: Stochastic Programming Models for General Redundancy Optimization Problems. IEEE Transactions on Reliability 52, 181–192 (2003) 3. Kuo, W., Wan, R.: Recent Advances in Optimal Reliability Allocation. IEEE Transactions on Systems, Man, and Cybernetics-Part A: Systems and Humans 37(2), 143–156 (2007) 4. Pedrycz, W., Gomide, F.: Fuzzy Systems Engineering: Toward Human-Centric Computing. J. Wiley, Hoboken (2007) 5. Zadeh, L.A.: Fuzzy Sets. Information and Control 8, 338–353 (1965) 6. Li, B., Zhu, M., Xu, K.: A Practical Engineering Method for Fuzzy Reliability Analysis of Mechanical Structures. Reliability Engineering & System Safety 67, 311–315 (2000)
Standby Redundancy Optimization with Type-2 Fuzzy Lifetimes
337
7. Mahapatra, G.S., Roy, T.K.: Fuzzy Multi-Objective Mathematical Programming on Reliability Optimization Model. Applied Mathematics and Computation 174, 643–659 (2006) 8. Zhao, R., Liu, B.: Standby Redundancy Optimization Problems with Fuzzy Lifetimes. Computers & Industrial Engineering 49, 318–338 (2005) 9. Zadeh, L.A.: Concept of a Linguistic Variable and Its Application to Approximate Reasoning I. Information Sciences 8, 199–249 (1975) 10. Liu, Z.Q., Liu, Y.-K.: Type-2 Fuzzy Variables and Their Arithmetic. Soft Computing 14(7), 729–747 (2009) 11. Chen, Y., Wang, X.: The Possibilistic Representative Value of Type-2 Fuzzy Variable and Its Properties. Journal of Uncertain Systems 4(3), 229–240 (2010) 12. Qin, R., Liu, Y.K., Liu, Z.Q.: Methods of Critical Value Reduction for Type-2 Fuzzy Variables and Their Applications. Journal of Computational and Applied Mathematics 235(5), 1454–1481 (2011) 13. Qin, R., Liu, Y.K., Liu, Z.Q.: Modeling Fuzzy Data Envelopment Analysis by Parametric Programming Method. Expert Systems with Applications 38(7), 8648– 8663 (2011) 14. Liu, B., Liu, Y.-K.: Expected Value of Fuzzy Variable and Fuzzy Expected Value Models. IEEE Transactions on Fuzzy Systems 10(4), 445–450 (2002) 15. Liu, Y.-K.: Convergent Results about the Use of Fuzzy Simulation in Fuzzy Optimization Problems. IEEE Transactions on Fuzzy Systems 14(2), 295–304 (2006) 16. Kennedy, J., Eberhart, R.C.: Particle Swarm Optimization. In: Proceedings of IEEE International Conference on Neural Networks, Piscataway, NJ, pp. 1942– 1948 (1995)
Oriented Search Algorithm for Function Optimization Xuexia Zhang and Weirong Chen School of Electrical and Engineering, Southwest Jiaotong University, 610031 Chengdu, China [email protected], [email protected]
Abstract. A population-based algorithm, oriented search algorithm (OSA), is proposed to optimize functions in this paper. In OSA, the search-individual imitates human random search behavior, and the search-object simulates an intelligent agent that can transmit oriented information to search-individuals. OSA is tested on thirteen complex benchmark functions. The results are compared with those of particle swarm optimization with inertia weight (PSO-w), particle swarm optimization with constriction factor (PSO-cf) and comprehensive learning particle swarm optimizer (CLPSO). The results show that OSA is superior in convergence efficiency, search precision, convergence property and has the strong ability to escape from the local sub-optima. Keywords: swarm intelligence, oriented search algorithm, human random search behavior, function optimization.
1 Introduction As a novel computational intelligence technology, swarm intelligence [1-4] has become more and more researchers’ focus. Swarm intelligence [3-5] means that simple individuals show the character of intelligent behavior through co-operation between individuals. Swarm intelligence behavior is the self-organizing act which is not controlled by central controller, meaning that the collective behavior emerges from simple individuals interacting locally with one another and with their environment [6-7]. Recently, the algorithms based on swarm intelligence mainly include ant colony algorithm [8-9], particle swarm optimization [10-18] etc. Shi Y. and Eberhart R. [19] proposed particle swarm optimization with inertia weight (PSOw) which can balance between local optima and global optima. Nevertheless, the inertial weight linearly decreased with run time increasing affects the global search capability. Clerc M. and Kennedy J. [20] presented particle swarm optimization with constriction factor (PSO-cf), which improves the search ability of particle swarm optimization. Liang J.J. and Qin A.K. [21] introduced comprehensive learning particle swarm optimizer (CLPSO), which advances the ability of escaping from local optima. However, it has shortcomings in unimodal functions optimization. The authors have proposed a novel algorithm based on population, oriented search algorithm (OSA), to optimize reactive power dispatch in power system [22-23]. In order to verify the performance of OSA, function optimization based on OSA is presented in this paper. Trough testing thirteen benchmark functions based on OSA, Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 338–346, 2011. © Springer-Verlag Berlin Heidelberg 2011
Oriented Search Algorithm for Function Optimization
339
the results identify that OSA has high convergence efficiency, search precision, convergence property and the strong ability to escape from the local sub-optima.
2 Oriented Search Algorithm In OSA [22-23], the search-individual simulates human random search behavior, and the search-object (i.e., the optimal solution of the objective functions) works like an intelligent agent that can transmit oriented information to search-individuals. The oriented information transmitted by the current-search-object makes the searchindividual search towards better direction. At the same time, the search-object continuously adjusts its position so that search-individuals can receive the variable oriented information to search the optimal object as soon as possible. In a word, OSA simulates the search behavior of human searching intelligent agent to model the communication between search-object and search-individuals. 2.1 Search-Individual Search-individual simulates human random search behavior. The search-individual moves discretely in multidimensional space. During the search process, each searchindividual takes exploration walks and every walk includes the search step and the search direction. A number of steps determine the search period. The initial position of the search-individual can be defined as follows:
x0 ji = X min i + ( X max i − X min i )* random(0,1) .
(1)
Where random(0,1) denotes a random value between 0 and 1. X min i and X max i denote
, ,, , ,
the bounds of search space. i=1 … n n denotes the dimension of search space, i denotes the ith dimension. j=1 … m, m denotes the population size, j denotes the jth search-individual. 2.2 Search-Object
In each walk, all the search-individuals obtain one current-search-object, the current optimal solution of the objective function. The current-search-object adjusts its position ( xtglobal ) adaptively for transmitting the oriented information to searchindividuals. At the same time, the oriented information acts as the oriented-neighborspace of the next walk for search-individuals. Search-object sends oriented information to search-individuals in order to reduce the search range of the individual blindly searching. According to the variable oriented information, search-individuals continuously generate stochastic search steps and search directions to update their positions. 2.3 Oriented-Neighbor-Space
Oriented-neighbor-space is a random neighbor-space built by the position of the current-search-object. In each walk, the current-search-object adjusts its position
340
X. Zhang and W. Chen
adaptively, at the same time to send the information of its position, called oriented information, to search-individuals. In same walk, each search-individual receives different oriented information. Therefore, oriented-neighbor-space is formed for each search-individual. Moreover, in different walk, oriented information is changeable. As a result, oriented-neighbor-space is variable as well. For the whole exploration process, the range of the oriented-neighbor-space is reduced gradually with searchindividuals approaching to the search-object, and becomes one certain position until search-individuals achieve the search-object. It means that search-individuals, receiving the oriented information transmitted by the current-search-object in every current walk, are getting concentrative and inclined to the search-object step by step, and find the search-object until the certain position information of the search-object was accepted. Oriented-neighbor-space is defined as follows: xtglobal *(1 + w * randn(0,1)) .
(2)
Where randn(0,1) denotes a random number with normal distributed between 0 and 1. w denotes a variable parameter to regulate the random changing trend of orientedneighbor-space. The minimal w is zero, which denotes search-individuals achieve the optimal position of search-object when optimization process is ended. w is defined as follows: w = wmax − t *( wmax − wmin ) / G .
(3)
Where t is the current generation number, G is the maximal generation number. 2.4 Search-Neighbor-Space, Updating Strategy of Search Direction and Search Step
The search-neighbor-space of every search-individual is related closely with the oriented-neighbor-space. According to the oriented-neighbor-space, searchindividuals set search-neighbor-space, and generate stochastic search steps and search directions. In search-neighbor-space, different search-individual generates different search direction which points to its own current-search-object. Also, the search step is stochastic distance between the current position of the search-individual and the position of its own current-search-object. The updating strategy of search direction and search step is described as follows: Δxtji = ( xtglobal * (1 + w * randn(0,1)) − xtji ) * random (0,1) .
(4)
2.5 Evaluation and Decision
Throughout each exploration, every search-individual achieves a solution of the objective function which is evaluated by evaluation function. Then, the result of the evaluation for each solution of the objective function marks the quality of the solution. If the quality of the solution is better, the current position of the searchindividual is better. Furthermore, the decision function is applied to determine whether updating the current search walk or not. If the current position of searchindividual is better than that of last walk, it will be updated. After each walk, the
Oriented Search Algorithm for Function Optimization
341
current-search-object is updated through selecting the best quality of the solution among the solutions of the objective function. The search process continues until the termination criterion is met. Explore new position of the current search-individual x( t +1) ji :
x(t +1) ji = xtji + Δxtji .
(5)
Evaluate the quality of the objective function solution:
f tj = f ( xtji ) .
(6)
Decide whether generating search behavior: , (if : f ( t +1) j ≤ f tj ) . ⎧x xtji = ⎨ ( t +1) ji ⎩ xtji , (if : f ( t +1) j > f tj )
(7)
2.6 OSA Architecture
The structure of OSA mainly includes three parts: initialization, exploration and termination. The algorithm architecture is presented in Fig.1 as a flow chart. Oriented Search { Initialization{ initialize X min i , X max i ,n,m,G; Start initialize the position of search individuals x0 ji ; generate an initial solution of the objective function for each search individual f ( x0 ji ) ; Initialization generate an initial optimal solution of the objective function for population min( f ( x0 ji )) ; initialize w}//end initialization Exploration do{ // exploration generate the strategy of updating Δxtji ; explore new position of the current search No individual x( t +1) ji; evaluate the quality of the objective function Termination solution f tj ; decide whether generating search behavior Yes ⎧⎪ x( t +1) ji , (if : f( t +1) j ≤ ftj ); xtji = ⎨ Yes Draw the result ⎪⎩ xtji , (if : f( t +1) j > ftj ) update the current position of the objective function optimal solution xtglobal ; } while (( f min ≤ f opt ) || ( g ≥ G )) //termination End output the result} // end Oriented Search
Fig. 1. Algorithm architecture
3 Simulation and Analysis OSA is tested on thirteen complex benchmark functions and the results are compared with those obtained by particle swarm optimization with inertia weight (PSO-w), particle swarm optimization with constriction factor (PSO-cf) and comprehensive
342
X. Zhang and W. Chen
learning particle swarm optimizer (CLPSO). The parameters settings are list as follows. The parameters of PSO-w are set as: learning rate is c1 = c2 = 2 , inertia weight w is linearly decreased from 0.9 to 0.4 with implementation time increasing, the maximum velocity vmax is set at 20% of the dynamic range of the variable on each dimension; the parameters of PSO-cf are set as: learning rate is c1 = c2 = 2.01 , constriction factor is χ = 0.729844 ; the parameters of CLPSO are set as: c = 1.49445 , inertia weight w is linearly decreased from 0.9 to 0.4 with implementation time increasing; the parameter of OSA is set as: inertia weight w is linearly decreased from 0.9 to 0 with implementation time increasing. Experiments are implemented in MATLAB 7.0 with Lenovo PC of Pentium(R) 4 CPU 2.94GHz, 512MB of RAM. Table 1 lists thirteen functions, where n is the dimension of variable, S is the bound of variable and f min is optimal solution of objective function in theory. Table 2, 3 and table 4 list the optimal results of unimodal functions, multimodal functions with Table 1. Thirteen benchmark functions
Function
G f1 ( x ) = ∑ in=1 xi2
G f 2 ( x ) = m ax { x i ,1 ≤ i ≤ n } i
G n −1 f 3 ( x ) = ∑ i =1 (100( xi +1 − xi2 ) 2 + ( xi − 1) 2 )
G f4 (x ) =
∑
n i =1
ix i4 + rand [0,1)
G n f 5 ( x ) = − ∑ i =1 ( xi sin( xi )) n G f 6 ( x ) = ∑ i =1 ( xi2 − 10 cos(2 π xi ) + 10)
S n [ − 5 . 12 ,5.12]n 30
30 [− 100,100]
n
n 30 [− 30,30]
fmin 0 0 0
30 [− 1.28,1.28]
n
30 [− 500,500]
n
30 [− 5.12,5.12]
n
1 n 2 1 n G n f 7 ( x ) = − 20 exp( − 0.2 xi ) − exp( ∑ cos(2 πxi )) ∑ 30 [− 32,32] n i =1 n i =1
0 −12569.5 0 0
+20 + e n x 1 n [− 600,600]n x 2 − ∏ i =1 c o s ( i ) + 1 30 ∑ i =1 i 4000 i G π n −1 2 2 f 9 ( x ) = {1 0 sin ( π y 1 ) + ∑ i = 1 ( y i − 1) [1 + 1 0 sin 2 ( π y i + 1 )] n n 30 [− 50,50]
G f8 ( x ) =
0 0
+( y n − 1) 2 } + ∑ in=1 u ( xi ,10,100,4)
n −1 G f10 ( x ) = 0.1{sin 2 (3π x1 ) + ∑ i =1 ( xi − 1) 2 [1 + sin 2 (3 π x i +1 )]
+( x n
− 1) 2 [1 + sin 2 (2πx
n )]} +
∑ in=1 u ( xi ,5,100,4)
2 4 6 G f 11 ( x ) = − ∑ i = 1 c i ex p[ − ∑ j = 1 a ij ( x j − p ij ) ]
7 G K K f12 ( x ) = − ∑ i =1 [( x − a i )( x − a i ) T + ci ]− 1 G 10 K K f13 ( x ) = − ∑ i =1 [( x − ai )( x − ai ) T + ci ] −1
n 30 [− 50,50]
0
6
[ 0,1]
4
[0,10]
−10.4029
4
[0,10]
−10.5364
n
n n
−3.32
Oriented Search Algorithm for Function Optimization
343
many local minima and multimodal functions with only a few local minima, respectively. The same population size is 100 and a total of 50 runs are made in all simulations. The maximal generation (G), the best value (Best), the mean value (Mean), the standard deviation (Std. Dev.) and CPU implementation time (Time (Second)) are illustrated, respectively. Table 2 shows that OSA has better ability of searching Best, Mean and Std. Dev. for unimodal functions than other algorithms but the Best of function f 3 . Table 3 shows that OSA has better capability of exploring Best, Mean and Std. Dev. for multimodal functions with many local minima than other algorithms but the Best of functions f 9 and f10 . Table 4 shows that OSA has better facility of finding the Best of function f11 and the Mean of function f12 and f13 for multimodal functions with only a few local minima than other algorithms but the Std. Dev.. From the index of CPU implementation time, we can see that PSO-w has slightly better than other algorithms. From the integrated performance of OSA, OSA is better in the convergence efficiency, search precision, convergence property and strong ability to escape from the local sub-optima. Table 2. The performance comparison of algorithms for unimodal functions
Function
Algorithm PSO-w
f1 (G=1500)
PSO-cf CLPSO OSA PSO-w
f2 (G =5000)
PSO-cf CLPSO OSA PSO-w
f3 (G =20000)
f4 (G =3000)
PSO-cf CLPSO OSA PSO-w PSO-cf CLPSO OSA
Best 1.7864e015 4.5023e045 3.2147e013 9.1166e124 0.011794 1.4824e016 0.00068793 4.7762e101 0.010498 1.8661e012 0.16786 23.299 0.0029905 0.00098644 0.0010339 3.7417e005
Mean 1.6568e013 2.2848e041 2.7272e012 1.5372e120 0.07022 7.1273e013 0.002049 4.2001e092 1821.6 7323.6
Std. Dev. 4.5931e013 4.5442e041 1.684e-012 2.6619e120 0.046572 2.1876e012 0.0012533 2.8823e091 12727
24636
36.256 31.223 25.786 1.2625 0.0062767 0.0021719 0.0024501 0.0013784 0.0029838 0.00097204 6.2126e0.00013706 005
Time(second) 18.180 19.817 24.450 27.088 63.410 73.237
83.920 101.960 251.490 271.720
349.100 502.920 42.960 51.558 57.380 78.754
344
X. Zhang and W. Chen
Table 3. The performance comparison of algorithms for multimodal functions with many local minima
Function f5 (G =9000)
f6 (G =5000)
Algorithm PSO-w PSO-cf CLPSO OSA PSO-w PSO-cf CLPSO OSA PSO-w
f7 (G =1500)
PSO-cf CLPSO OSA
f8 (G =2000)
PSO-w PSO-cf CLPSO OSA PSO-w
f9 (G =1500)
PSO-cf CLPSO OSA PSO-w
f10 (G =1500)
PSO-cf CLPSO OSA
Best Mean Std. Dev. Time(second) -10495 -9363.3 445.34 126.650 -10398 -9026.1 656.9 150.250 -12569 -12271 158.870 177.84 621.12 241.220 -7528 -6386.4 7.9597 21.036 8.0054 66.950 26.864 61.714 18.406 71.912 2.8525e1.3387e- 8.5715e87.740 010 009 010 112.68 0 0 0 1.3927e1.6594e- 2.6584e20.970 007 006 006 2.6645e22.528 0.55865 0.72955 015 3.3065e1.9421e27.090 6.812e-006 006 006 39.001 -8.8818e7.4607e- 1.7886e016 016 015 0 0.015917 0.021873 28.520 0 0.01112 0.012484 30.884 1.6431e36.660 0.00029587 0.001464 014 54.004 0 0 0 8.8539e28.990 2.2084 5.523 015 31.940 1.5705e16.62 18.099 032 8.7972e35.160 3.9566e4.802e-011 012 011 0.014073 0.058148 0.032146 39.950 8.2301e36.978 572.42 357.41 007 1.3498e33.646 239.83 240.31 032 1.1773e38.618 6.4202e- 4.4627e010 010 010 0.5063 0.9541 0.23547 39.897
Oriented Search Algorithm for Function Optimization
345
Table 4. The performance comparison of algorithms for multimodal functions with only a few local minima
Function f11 (G =200)
f12 (G =100)
f13 (G =100)
Algorithm PSO-w PSO-cf CLPSO OSA PSO-w PSO-cf CLPSO OSA PSO-w PSO-cf CLPSO OSA
Best -3.322 -3.322 -3.322 -3.321 -4.6069 -10.403 -10.339 -10.398 -6.6324 -10.536 -10.457 -10.372
Mean -3.2561 -3.2767 -3.2744 -3.2582 -2.1373 -6.4735 -9.4026 -9.7249 -2.2004 -8.1124 -9.4725 -9.6482
Std. Dev. Time(second) 0.065727 2.831 0.058388 2.755 0.058837 3.537 0.059905 4.848 0.83394 1.250 3.5574 1.410 1.1175 1.910 0.98188 2.814 1.0073 1.350 3.4669 1.506 1.2532 2.010 1.4202 3.024
4 Conclusion Oriented search algorithm simulates the search behavior of human searching intelligent agent, which is different from other swarm intelligent algorithms. In OSA, there is one parameter w to be adjusted except population size, maximal generation. And it is easier to implement than other algorithms. Through testing on thirteen benchmark functions, the results demonstrate that the OSA has advantages in the convergence efficiency, search precision, convergence property and the strong ability to escape from the local sub-optima.
References 1. Beni, G., Wang, J.: Swarm Intelligence. In: Proc. of the Seventh Annual Meeting of the Robotics Society of Japan, pp. 425–428 (1989) 2. Bonabeau, E., Dorigo, M., Theraulaz, G.: Swarm Intelligence: from Natural to Artificial Systems. Oxford University Press, New York (1999) 3. Kennedy, J., Eberhart, R., Shi, Y.: Swarm Intelligence. Morgan Kaufmann, San Francisco (2001) 4. Bonabeau, E., Dorigo, M., Theraulaz, G.: Inspiration for Optimization from Social Insect Behavior. Nature 406, 39–42 (2002) 5. Michael, G., Hinchey, R.S., Chris, R.: Swarms and Swarm Intelligence. Computer 40, 111–113 (2007) 6. Kristina, L., Aram, G.: A General Methodology for Mathematical Analysis of Multi-agent Systems. USC Information Sciences Technical Report ISI-TR-529 (2001) 7. Bonabeau, E., Meyer, C.: Swarm Intelligence: A Whole New Way to Think About Business. Harvard Business Review, 106–114 (2001) 8. Colorni, A., Dorigo, M., Maniezze, V.: Distributed Optimization by Ant Colonies. In: Proc. of the 1st European Conf. Artificial Life, Pans, France, pp. 134–142. Elsevier, Amsterdam (1991)
346
X. Zhang and W. Chen
9. Dorigo, M., Blum, C.: Ant Colony Optimization Theory: A Survey. Theoretical Computer Science 344, 243–278 (2005) 10. Kennedy, J., Eberhart, R.: Particle Swarm Optimization. In: IEEE International Conference on Neural Networks, vol. 4, pp. 1942–1948 (1995) 11. Eberhart, R., Kennedy, J.: A New Optimizer Using Particle Swarm Theory. In: Proc. of the Sixth International Symposium on Micromachine and Human Science, pp. 39–43 (1995) 12. Zhao, B., Guo, C.X., Cao, Y.J.: A Multi-agent Based Particle Swarm Optimization Approach for Reactive Power Dispatch. IEEE Trans. Power Syst. 20, 1070–1078 (2005) 13. Esmin, A.A.A., Lambert-Torres, G., Zambroni de Souza, A.C.: A Hybrid Particle Swarm Optimization Applied to Loss Power Minimization. IEEE Trans. Power Syst. 20, 859–866 (2005) 14. John, G., Vlachogiannis, K.Y.L.: A Comparative Study on Particle Swarm Optimization for Optimal Steady-state Performance of Power Systems. IEEE Trans. Power Syst. 21, 1718–1728 (2006) 15. Coelho, L., dos, S., Herrera, B.M.: Fuzzy Identification Based on A Chaotic Particle Swarm Optimization Approach Applied to A Nonlinear Yo-yo Motion System. IEEE Trans. Ind. Electron. 54, 3234–3245 (2007) 16. Del, V.Y., Venayagamoorthy, G.K., Mohagheghi, S., Hemandez, J.-C., Harley, R.G.: Particle Swarm Optimization: Basic Concepts, Variants and Applications in Power Systems. IEEE Trans. Evolut. Comput. 12, 171–195 (2008) 17. Chen, X., Li, Y.: A Modified PSO Structure Resulting in High Exploration Ability with Convergence Guaranteed. IEEE Transactions on System, Man and Cybernetics: Part B 37, 1271–1289 (2007) 18. Chen, X., Li, Y.: On Convergence and Parameters Selection of an Improved Particle Swarm Optimization. International Journal of Control, Automation, and Systems 6, 559– 570 (2008) 19. Shi, Y., Eberhart, R.: Empirical Study of Particle Swarm Optimization. In: Proc. of the 1999 Congress on Evolutionary Computation, vol. 3, pp. 1945–1950 (1999) 20. Clerc, M., Kennedy, J.: The Particle Swarm – Explosion, Stability, and Convergence in A Multidimensional Complex Space. IEEE Trans. Evolut. Comput. 6, 58–73 (2002) 21. Liang, J.J., Qin, A.K., Suganthan, P.N., Baskar, S.: Comprehensive Learning Particle Swarm Optimizer for Global Optimization of Multimodal Functions. IEEE Trans. Evolut. Comput. 10, 281–295 (2006) 22. Zhang, X.X., Chen, W.R., Dai, C.H.: Application of Oriented Search Algorithm in Reactive Power Optimization of Power System. In: Proc. of The Third International Conference on Electric Utility Deregulation and Deregulation and Restructuring and Power Technologies, pp. 2856–2861. IEEE Press, Nanjing (2008) 23. Zhang, X.X., Chen, W.R.: Reactive Power Optimization Based on Oriented Search Algorithm. Journal of Southwest Jiaotong University 45, 418–423 (2010)
Evolution of Cooperation under Social Norms in Non-structured Populations Qi Xiaowei, Ren Guang, Yue Gin, and Zhang Aiping Marine engineering of Dalian Maritime university,116026 Dalian, China [email protected]
Abstract. Indirect reciprocity is a key mechanism for the evolution of human cooperation. There are normally two choices in the standard model of indirect reciprocity which works through reputation. Here we introduced the role of costly punishment into the model. The players could have the third choice besides cooperation and defection. The dynamics of cooperation in indirect reciprocity is analyzed under the social norms which depend on the action of the donor and the reputation of the recipient. It is found that those strategies using costly punishment which allow the evolutionary stability of cooperation typically reduce the average payoff of the population and there is only a small parameter region where costly punishment is evolutionary stable and more efficient. The computer simulations based on agent in finite populations are performed and the result is agreement with our theoretical predictions. Keywords: costly punishment, indirect reciprocity, dynamics, evolutionary stable strategy, social norm.
1 Introduction Human societies are organized around cooperative interactions. But why would natural selection equip selfish individuals with altruistic tendencies? This question has fascinated evolutionary biologists for decades. One answer is given in terms of direct reciprocity [1–2]. There are repeated encounters between the same two individuals: I help you, and you help me. More recently, indirect reciprocity has emerged as a more general model: I help you, and somebody helps me. Indirect reciprocity is based on reputation. People monitor the social interactions within their group. Helping others establishes the reputation of being a helpful individual. Natural selection can favor strategies that help those who have helped others [3–4].Direct reciprocity is like an economy based on the exchange of goods, whereas indirect reciprocity resembles the invention of money. In direct reciprocity, one’s strategy depends on what his opponent has done to him, but in indirect reciprocity, one’s strategy depends not only on what his opponent has done to him but also on others. Direct and indirect reciprocity are two key mechanisms for the evolution of cooperation in human populations. But in reality, when a person was defected by his opponent, the defector sometimes would be punished by others or his opponent who would not expect benefits from the punishment action and the punisher would pays a cost for exercising punishment. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 347–354, 2011. © Springer-Verlag Berlin Heidelberg 2011
348
Q. Xiaowei et al.
Axelrod suggested that costly punishment can stabilize social norms[5] and Fehr suggested that costly punishment is an alternative mechanism independent of direct or indirect reciprocity[6]. But the study of the effect of costly punishment on human behavior shows it is not a separate mechanism for the evolution of cooperation but a form of direct or indirect reciprocity. If I punish you because you have defected with me, then I use direct reciprocity. If I punish you because you have defected with others, then indirect reciprocity is at work. In the setting of direct reciprocity, punishment is a form of retaliation [7]. For indirect reciprocity, punishment works through reputation and includes third-party actions, which means that observers of an interaction are willing to punish defectors at a cost to themselves. Therefore, any discussion of the evolution of costly punishment brings us immediately into the framework of direct or indirect reciprocity. There are many models discussing the direct reciprocity or indirect reciprocity. The repeated Prisoner’s dilemma is the most popular form of direct reciprocity. Indirect reciprocity could be described by the variant of TFT[8]. Nowak [9] developed a simple model by image scoring to analyze the dynamics of indirect reciprocity. Here we analyze the dynamics of cooperation in the model based on social norm where the evolutionary programming method is used.
2 Model Summary Consider a large enough population. At each small time interval, a fraction of players are randomly chosen from the population to form pairs in order to play a game. In each pair, one player acts as a donor and the other player as a recipient. The recipient has a binary reputation, which is either ‘good’ or ‘bad’. The donor has three behavioral choices: cooperation (C), defection (D), and punishment (P). Cooperation involves a cost, c, for the donor and a benefit, b, for the recipient. Defection has no cost and yields no benefit. Punishment has cost α for the donor and cost β for the recipient. The donor’s choice depends on the recipient’s reputation and his action is observed by other members of the population, who update the donor’s reputation according to a social norm, which is shared by all. After each interaction, the reputation of the donor is updated by the social norms of the population, while the recipient’s reputation remains the same. Then the participant goes back to the population with probability ω or leave for ever with probability (1- ω ), which makes sure that the total population size remains constant. As a Moran process, the new individual is added in exchange for the lost individual and assigned with good or bad reputation according to the proportion of good and bad players in the current population. For the social norms, we study them by the second-order assessment[10,11] which depends on the action of the donor and the reputation of the recipient: for example ,it could be deemed as ‘good’ to cooperate with a good recipient but ‘bad’ to cooperate with a bad recipient. There are therefore six combinations and 26 =64 social norms and 32=9 action rules (Fig.1). The action rule specifies the action of the donor when he meets one recipient. For example, CC means that donor will cooperate without considering the recipient’s reputation whereas CD means donor would cooperate with a good recipient and defection with a bad one. In contrast with CC and CD, CP action rule prescribes cooperation with good recipients and punishment of bad recipients.
Evolution of Cooperation under Social Norms in Non-structured Populations
349
recipient’s reputation G B Donor’s C action D
G
G
CC
CD
CP
B
G
DC
DD
DP
P
B
G
PC
PD
PP
Social norms
9 action rules
Fig. 1. Social norms and action rules
In the model, there would be errors in updating the reputation after the interaction and it is denoted by μ .With probability (1- μ ), the correct reputation is assigned .All individuals share the same conclusions with no private list of reputation. For notational convenience, the action rule and social norms are defined as S(*) and norm n(*,*). For example, S(G)=C describes an action rule which means when I meet a good recipient , I will take the cooperation. A social norm n(G,D)=B is a mapping from the product of {C, D, P} (the donor’s action) and {G, B} (the recipient’s reputation) to {G, B} (the donor’s new reputation). It suggests that if a donor defect a good recipient, his future reputation will be updated as bad. So under the 64 social norms, we will search for the combination of an action rule S(*) and a social norm n(*,*) ,(S,n), that satisfies the two criteria[14]: (1) more than 1- μ of all game interactions are cooperative (2) under social norm n, the action rule S is evolutionarily stable The dynamic programming equation (Bellman equation) is used to study the evolutionary stability of the action rule S. It is assumed that all players except the focal player adopt action rule S under the given social norm n(*).If the best-response action rule Sopt exists uniquely and matches S, then S is evolutionarily stable. If the strategy is the best response to itself, it would get the maximum payoff when interacting with others. 1 1 WI , J = max [ {−ξ[ X ]+ωW(1− μ ) n( J , X )+μ n( J , X ),(1−μ )G+ μB } + {η [s( I )] + ω WI ,(1−μ )G+μ B }] X = C, D, P 2 2
(1)
Where WIJ describes the expected maximum payoff that a player, currently having reputation I(=G or B) ,can gain from the game with his opponent with reputation J(=G or B) from nowadays to future. ξ [ X ] and η [ X ] is respectively the cost and benefit function of action X. It is obviously that the WIJ is recurrence and we have to make some mathematical skills for solving the equation. The equation (1) could be rewritten as equation (2) because of WIJ independents of I : Sopt ( J ) = arg max {ωW(1− μ ) n ( J , X ) + μ n ( J , X ),(1− μ ) G + μ B + ξ [ X ]} X =C ,D ,P
(2)
350
Q. Xiaowei et al.
where φ [G ] = 1 , φ [ B ] = 0 and q = 1 − 2 μ .The q = 1 − 2 μ is also called ‘social G
G
resolution’ which defines the ability to distinguish between good and bad and is a key parameter in indirect reciprocity.
ω
W(1− μ ) B + μG ,(1− μ ) G + μ B being constant, so it is could be ignored in the 2 calculation. The first term, −ξ [ X ] , represents the immediate cost of action X. The With the item
second term ω q λφ [ n ( J , X )] represents the future benefit through becoming a good G
player via action X, which is λφ [ n ( J , X )] multiplied by the discounting factor ω and G
the social resolution q . Hence we are able to derive s*(G) and s*(B). By using the method described above, we get the four kind of combination as showed in figure 2.. In the first combination, where the cost of punishment is smaller than cost of cooperation ( c > α ), the CD action rule is ESS under the condition ω qb > (2 − ω ) c and the average payoff is 1 [(1 − μ ) b − c ] . 1− ω
2
1
2
G
B
C
G
*
D
B
P
3
G
B
C
G
*
G
D
B
B
*
P
C
D
c >α
4
G
B
C
G
*
C
G
B
G
D
B
B
D
B
B
*
*
P
B
G
P
*
G
C
D
C
P
C
P
c<α
c>α
G
B
c<α
Fig. 2. Social norms of cooperation
3 Simulation Results and Analysis To confirm the analytic predictions, we have run agent-based computer simulations where the size of population is a fixed number, N = 100. In the beginning, each new player receives an initial reputation, which is either good or bad with equal probability. Each player adopts one of 9 possible action rules. All players share the same social norm that is fixed in the population. In each step of updating, every individual has exactly 10 interactions with other randomly chosen individuals. Individuals play donor and recipient on average 5 times at each interaction. Then the reputation of the donor is updated according to the social norm, but a wrong reputation is assigned with probability µ = 0.02. In this case, every player agrees on the wrong reputation of this particular player. No private lists of reputation are considered. In the latter, we will release the limit. After all interactions have taken place, an individual is chosen for reproduction with a probability proportional to PiPmin, where Pi is the total payoff of the individual and Pmin is the minimum payoff in the population. The offspring inherits the action rule of the parent and replaces
Evolution of Cooperation under Social Norms in Non-structured Populations
351
another random player. However, the offspring sometimes will randomly choose one of the 9 action rules as his own strategy with probability ε = 0.01. It could be understood in another way that error rate in assigning reputation of offspring is ε. After reproduction, the payoffs of all players are reset to zero. Thus, older players do not accumulate their payoffs. The total generations of the simulations are 1000. In the simulation, there are two classic norms for demonstration: stern-judging, and shunning [12]. First, we do the simulations with no error(represented as eact) in executing intended action and error(represented as erep) in recalling recipient’s reputation. CC CD CP DC DD DP PC PD PP
0.8 0.6 0.4 0.2 0 0
3 2.95 2.8 average payoff
frequency of action rules
1
2.6 2.4 2.2 2
200
400 600 time
800
1.8 0
1000
200
400 600 time
800
1000
Fig. 3. Simulation results for b> c in stern-judging b=9, c=3, a=1, β =4, µ=0.02,ε = 0.01 , eact =0 and erep= 0
In figure 3, the parameter values are: b = 9, c = 3, α = 1, β = 4, μ = 0.02, eact =0 and erep= 0 and ε = 0.01. The initial frequency of the CD action rule is 0.8. The initial frequencies of the other 8 action rules are randomly chosen .We find that the CD(green) action rule is stable against invasion attempts by CC (blue) and CP (red). The average payoff of the population per round fluctuates with its maximum being 2.94, which agrees with our analytic prediction, (1 − μ)(b − c)/2 = 2.94. In figure 4, the initial frequency of CP is 0.8. CP is stable against other action rules. The average payoff per round fluctuates with its maximum being 2.89, which also agrees with our analytic prediction, {(1 − μ)(b − c) − μ(α+ β)}/2 = 2.89. CC CD CP DC DD DP PC PD PP
0.8 0.6 0.4
3 2.90 2.8 average payoff
frequency of action rules
1
2.6 2.4 2.2 2
0.2 1.8
0 0
200
400
600 time
800
1000
1.6 0
200
400
600 time
Fig. 4. Simulation results for b> c in shunning b=9, c=3, a=1, β =4, µ=0.02,ε = 0.01 , eact =0 and erep= 0
800
1000
352
Q. Xiaowei et al.
In figure 5,when b
DD
0.8
0 average payoff
frequency of action rules
1
0.6 0.4
-0.4 -0.6
0.2 0 0
-0.2
200
400 600 time
800
1000
-0.8 0
200
400 600 time
800
1000
Fig. 5. Simulation results for b< c in stern-judging b=2, c=3, a=1, β =4, µ=0.02,ε = 0.01 , eact =0 and erep= 0
In figure 6, the CP action rule is robust against invasion by the other 8 action rules because of the large effect of punishment (β = 4) although cooperation is nonproductive because b < c. The average payoff is negative and is about -0.54. Hence the group does not benefit from the cooperation that is enforced by costly punishment. -0.5 -0.55 -0.6
0.8 CP
average payoff
frequency of action rules
1
0.6 0.4 0.2 0 0
-0.7 -0.8 -0.9
200
400 600 time
800
1000
-1 0
200
400 600 time
800
1000
Fig. 6. Simulation results for b< c in shunning b=2, c=3, a=1, β =4, µ=0.02,ε = 0.01 , eact =0 and erep= 0
Here, we take computer simulation to analyze the impact of the initial frequency and error (µ) in assigning reputation on the cooperation. In the following table, there is the necessary round number for stability in different norm. For example, in sternjudging norm, if initial frequency of CD is 0.1, µ=0.02, the necessary round number for the population to maintain cooperation is 120. The round number needed in shunning norm is less than Stern-judging norm. Probably the reason is that the ESS condition of CD is more rigorous than CD. When the error µ is less than 0.3, the most population will take the choice of cooperation if the communication round number is more than 400.But if the error µ is bigger, the population finally will be selfish no matter how big the communication round number.
Evolution of Cooperation under Social Norms in Non-structured Populations
353
Table 1. Round number of communication in Stern-judging CD 0.1 0.3 0.5 0.7
round µ=0.01 110 100 100 90
round µ=0.03 120 160 160 170
round µ=0.05 380 240 220 220
round µ=0.07 350 350 350 340
round µ=0.1 500 480 490 460
round µ=0.2 >500 >500 >500 >500
Table 2. Round number of communication in shunning CP 0.1 0.3 0.5 0.7
round µ=0.01 50 50 50 60
round µ=0.03 50 80 50 50
round µ=0.05 150 110 90 110
round µ=0.07 170 130 150 130
round µ=0.1 210 210 230 210
round µ=0.2 >500 >500 >500 >500
If we extend the mechanism to group communication that a group of people interact with each other to exchange their message, the result may be better. Furthermore, if the group is the whole population, then there is no private list and no error in assigning reputation. To get cooperation, the round number has to increase as the total size of the population increases.
4 Conclusion We have studied the dynamics of indirect reciprocity in an explicit model and analyzed all social norms that use binary reputation and second-order assessment. We find that both CD and CP action rules can stabilize cooperation. These rules reward good recipients with cooperation and ‘punish’ bad ones with either defection (CD) or costly punishment (CP). If both CD and CP action rules are evolutionarily stable, the use of costly punishment leads to a lower equilibrium payoff and is therefore inefficient. It is even possible that costly punishment yields a lower payoff than all defection (DD). Costly punishment maximizes the group average payoff for only a very limited parameter region. This narrow margin of efficiency requires fine-tuning of the key parameters. If the social resolution exceeds the cost to benefit ratio (q>c/b), which is the same as Hamilton rule in non-relatives, CD rules are always more efficient than CP rules. If the reputation system lost or weaken, the cooperation would be at low-level. However, there are some phenomena which show the tradition virtue is threatened. In Chongqing, china, a pupil helps an old lady up, but he was charged with pushing the lady down. If people all are afraid of being in trouble with helping others, how will the society be? Now our country is in the process of Social Transformation, the society needs harmonious and stable socio-economic environment. The government should do their best to induct people to keep the traditional virtue.
354
Q. Xiaowei et al.
Furthermore, in this paper, it is assumed that there is only one best response strategy under the social norm, but the simulation results reveal that two strategies could coexist. So it might be worthwhile to analyze the dynamics in the population on the assumption that there are two best response strategies. Maybe there would be some much more interesting findings.
References 1. Nowak, M.A., Sigmund, K.: Evolution of indirect reciprocity by image scoring. J. Nature 393, 573–577 (1998) 2. Dufwenberg, M., Gneezy, U., Güth, W., van Damme, E.: Direct vs indirect reciprocity: an experiment. J. Homo. Oecon. 18, 19–30 (2000) 3. Brandt, H., Sigmund, K.: The logic of reprobation: assessment and action rules for indirect reciprocation. J. Theor. Biol. 213, 475–486 (2004) 4. Bolton, G.E., Katok, E., Ockenfels, A.: Cooperation among strangers with limited information about reputation. J. Public Econ. 89, 1457–1468 (2005) 5. Alexander, R.C.: The Biology of Moral Systems. Aldine de Gruyter, New York (1988) 6. Fehr, E., Gächter, S.: Altruistic punishment in humans. J. Nature 415, 137–140 (2002) 7. Yamagishi, T.: Seriousness of social dilemmas and the provision of a sanctioning system. J. Social Psychology Quarterly 51, 32–42 (1988) 8. Clutton-Brock, T.H., Parker, G.A.: Punishment in animal societies. J. Nature 373, 209–216 (1995) 9. Fehr, E., Gächter, S.: Altruistic punishment in humans. J. Nature 415, 137–140 (2002) 10. Fehr, E., Fischbacher, U.: Third-party punishment and social norms. J. Evol. Hum. Behav. 25, 63–87 (2004) 11. Owler, J.H.: Altruistic punishment and the origin of cooperation. J. Proc. Natl. Acad. Sci. USA. 102, 7047–7049 (2005) 12. Ohtsuki, H., Iwasa, Y.: The leading eight: Social norms that can maintain cooperation by indirect reciprocity. J.Theoretical Biology 239, 435–444 (2006) 13. Suzuki, S., Akiyama, E.: Chaos, oscillation and the evolution of indirect reciprocity in nperson games. J.Theoretical Biology 252, 686–693 (2005)
Collaborative Optimization under a Control Framework for ATSP Jie Bai1, Jun Zhu2, Gen-Ke Yang1, and Chang-Chun Pan1 1
Automation Department of Shanghai Jiao Tong University, 200240, Shanghai, China 2 Jiangsu Jun-Long Electrical Technology CO., Ltd. [email protected]
Abstract. A collaborative optimization algorithm under a control framework is developed for the asymmetric traveling salesman problem (ATSP). The collaborative approach is not just a simple combination of two methods, but a deep collaboration in a manner like the feedback control. A notable feature of the approach is to make use of the collaboration to reduce the search space while maintaining the optimality. Compared with the previous work of the reduction procedure by Carpaneto, Dell'Amico et al. (1995) we designed a tighter and more generalized reduction procedure to make the collaborative method more powerful. Computational experiments on benchmark problems are given to exemplify the approach. Keywords: ATSP, Collaborative optimization, Control framework, Ant colony optimization, Branch and Bound.
1 Introduction ATSP is one of the most well-known combinatorial optimization problems due both to its practical relevance and to its considerable difficulty. ATSP and its variations are commonly used models to formulate many practical applications, such as the scheduling of chemical process[3], the scheduling of steel production[17][18], and printed circuit board punching sequence problem [15], and so on. The problem is concerned with finding the shortest Hamiltonian cycle or tour in a weighted directed graph without loops and multiple arcs. Although simple to state, ATSP is very difficult to attack and much effort has been, and will continue to be, devoted to the design of good optimization algorithms. Roughly speaking, methods of solving ATSP problems can fall into three categories, i.e., rigorous, heuristic and hybridized. Rigorous method can guarantee the optimality of the solution obtained. Many algorithms have been developed for the exact solution of ATSP. The representative ones are the Branch-and-Bound (B&B) based on Assignment Problem (AP) relaxation[2][16]. Recently, Turkensteen, Ghosh et al.[19] reported a new branching rule in B&B algorithm which utilizes tolerances to indicate which arcs are preferred to save in the optimal ATSP tour. The Branch-and-Cut (B&C) algorithm is also explored by [8]. Since solving the ATSP optimally is NP-hard, especially in many real industrial problems, exact optimization algorithms require overlong execution Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 355–363, 2011. © Springer-Verlag Berlin Heidelberg 2011
356
J. Bai et al.
time and huge memory. In most of cases they can’t produce an acceptable or even feasible solution given limit time. Hence, heuristics were dominating later even though they can’t provide any guarantee on the solution quality. Karp [13] presented the so-called Patching Algorithm (PA)-a convincible heuristic method, and showed that the heuristic solution asymptotically converges to the optimal solution as the size of ATSP tends to infinity. Glover, Gutin et al. [9] introduced several construction heuristics, and conducted a large number of computational experiments for several families of ATSP instances. In more recent years, metaheuristics are booming, such as genetic algorithms (GA) [3][10], simulated annealing (SA) [14], tabu search (TS) [7], ant colony optimization (ACO)[1][6][15], and so on. Rigorous and heuristic approaches have ever-conflicting advantages and disadvantages in terms of computational load and solution quality. Hence, growing attentions have been given to hybridized methods. The rest of the paper is organized as follows. In the next section, the mathematical formulation of the ATSP is presented. In section 3, the collaborative optimization framework is described. The key components that constitute the framework are illustrated in detail. Furthermore, theoretical analysis with respect to the performance is also presented briefly. In section 4, a large number of computational experiments are given. Finally, concluding remarks are included in section 5.
2 Problem Description The ATSP can be formulated as an Integer Linear Programming z * = min
∑
c(i , j ) ⋅ x(i , j )
(1)
∑
x(i , j ) = 1 i = 1,", n
(2)
∑
x(i , j ) = 1
(3)
( i , j )∈ A
subject to: (i , j )∈ A
(i , j )∈ A
∑∑ x i∈ S j∈ S
(i, j )
≤ | S | −1
j = 1," , n
S ⊂ {1, 2,", n} , 2 ≤ S ≤ n − 2
(4)
( i, j ) ∈ A
(5)
x( i , j ) ∈ D( i , j ) {0,1}
where x(i , j ) = 1 ( i, j ) ∈ A , if the arc is selected in the optimal solution; and x( i , j ) = 0 otherwise. Apparently, equations (1)(2)(3) and (5) define the AP problem and constraints (4) forbid subtours. The number of constraints described in constraints (4) will be exponentially explosive as the size of the problem increases. This reason cause the computational difficult in solving large-scale ATSP.
Collaborative Optimization under a Control Framework for ATSP
357
3 The Collaborative Optimization 3.1 The Overall Scheme Commonly, the ATSP solution space D can be described by D = ∏ ( i , j )∈ A D( i , j ) . D( i , j ) = {0,1}
(6)
Once some particular arc ( i, j ) is indentified definitely not belonging to optimal solutions which means we can fix x( i , j ) = 0 , the entire search space D would shrink by 50%. Based on the result, we propose a parallel optimization architecture in which the exact solver and meta-heuristic solver are launched concurrently (see Fig1 ).
A
'
Fig. 1. A generalized parallel optimization architecture for ATSP where The dominated arc set in this paper is referred to as those arcs that not belong to optimal solutions or those ones if included in a solution that can’t generate better solution than the best-known one so far
Fig.1 mainly consists of three components: Exact solver: the exact solver works through iteratively solving simplified subproblems and thus it can provide a lower bound (LB) (a minimum problem). Metaheuristic Solver: the metaheuristic solver usually works by generating feasible solutions and then conducting improvement. The objective of the best solution can be adopted as an upper bound (UB). Reduction Procedure: the reduction procedure takes useful information from both exact and metaheuristic solver to reduce the global search space and hence speed up the rate of convergence to optimality. 3.2 The Implementation A more concrete optimization scheme is constructed in which B&B method and ACO are used respectively (see Fig. 2). PATCH is referred to as the Patch Algorithm (PA) proposed by [13] which is employed as another upper bounding strategy. As shown in the diagram, B&B, Reduction Procedure, Patching Algorithm and ACO are 4 key components that compose the framework. The details will be specified in the following sections.
358
J. Bai et al.
'
z patch zACO
Fig. 2. A concrete implementation for ATSP.
zpatch
and
zACO
are the objective value
produced by PA and ACO respectively.
A. B&B method With B&B method we use the breadth-first search instead of the lowest-first in [2]. The advantage is that the low bound obtained would be better and better as the approach progresses since our intention is to provide a high quality solution with the guaranteed degree of accuracy. B. Reduction procedure According to the dual theory of LP, the dual problem of AP is defined as follows n ⎛ n ⎞ v ( AP ) = max ⎜ ∑ ui + ∑ v j ⎟ j =1 ⎝ i =1 ⎠
Subject to: ui + v j ≤ c( i , j )
Carpaneto, Dell'Amico et al. [2] based on the dual rpoblem presented a reduction procedure as lemma 1 shows Lemma 1. If a feasible solution (ATSP) with objective value z (UB) is known, then each ( i, j ) ∈ A with c ( i , j ) ≥ z − v ( AP ) or c ( i , j ) + v ( AP ) ≥ z
(7)
can be discarded from further considerations. The above result is further strengthened by the theorem 1 Theorem 1. if arc ( i, j ) satisfies the following property v ( AP ) + c( i , j ) + d ( col •[ j ], row • [i ]) ≥ z
(8)
The arc ( i, j ) can be ignored in the further optimization procure. where col • and row • are the optimal solution to the initial AP corresponding to the row and column respectively (row and column are commonly used notations in the context of AP and k = col • [ j ] means row k is assigned to column j which indicates that arc
( k, j )
is belong to some certain subtour in the context of ATSP.;
Collaborative Optimization under a Control Framework for ATSP
359
d ( col •[ j ], row • [i]) is called as the shortest path cost on the newly defined bipartite
digraph G = (U ∪ V , D ∪ R ) whose definition is given in the proof procedure.
Proof. The definition of the bipartite digraph, i.e., G is first constructed. Then U ,V are the row and column node sets, U = V {1,2,", n} .Denote k = col • [ j ], k ∈ U , j ∈ V and l = row • [i ], i ∈ U , l ∈ V as the best assignment node for node j and i respectively. Then the optimal solution X can be represented as the following form: X = {( i, j ) | j = row • [i] or i = col • [ j ], i ∈ U , j ∈ V }
the arc set D ∪ R is defined as below: D is the direct arcs D = {( g , h ) | g ∈ U , h ∈V , ( g , h ) ∈ A} \ X c( g , h ) = c( g , h ) − u g − vh
, ( g , h ) ∈ D
R is the reverse arcs
R =
{( h, g ) | h ∈V ,g ∈ U , ( g , h ) ∈ X \ {( k , j ) , ( i, l )}} ch , g = 0, ( h, g ) ∈ R
Row 1
#
Col .
"
G
1
# j
k
#
#
i
"
k
l
l
#
" a
j
# i
b
Fig. 3. A graphical illustration for computing a lower-bound on the cost of ATSP including ( i, j )
Fig 3 depicts a illustration for computing a lower-bound on the cost of ATSP solution including arc ( i, j ) . If ( i, j ) is definitely required in the AP solution, then the matching pairs ( k , j ) and ( i, l ) in the X have to be broken, such that the node k ∈U is a unassigned row node, and l ∈V is a unassigned column node. In order to get a new feasible optimal solution X ′ , one must find the shortest alternating path from node k to node l in G [5]. It is obvious that any dipath of G starting from a node of U and terminated with a node of V contains, alternatively, an arc in D and an arc in R . Such that cost of the new optimal match X ′ is exactly :
360
J. Bai et al. v ( X' ) = v ( X ) + c(i , j ) + d ( k , l ) = v ( AP ) + c( i , j ) + d ( k , l )
(9)
Eq.(9) provides a tighter lower bound on the cost of ATSP that ( i, j ) is required. So, if (8) is satisfied, it means that no ATSP solutions with the inclusion of arc ( i, j ) is better than z . Theorem 1 tells the effective way to filter out dominated arcs while for the remaining arcs we have the following theorem which actually is a generalization of lemma 1. Theorem 2. Given a known objective value z , any feasible solution that contains the following K arcs can’t be better than z if the following inequality holds
∑
k ={1,", K }
c( ik , jk ) + v ( AP ) ≥ z
(10)
Proof. This result is an immediate result inspired by inequality (7). Theorem 2 is very useful for guiding ACO. In the construction phase of the algorithm, an ant incrementally constructs a complete tour by adding nodes to a p
partial path, say s , constructed so far. Hence, Theorem 2 provides a good way to p
assess the possible obtained tour starting with the partial path s . This is done by p
calculating the accumulated reduced cost of s and check whether it excess the gap between v ( AP ) and z . If it is the case by which we mean any tour containing s is worse than the obtained solution with the objective value z , such that the ant will terminate the search and return to the starting point. This mechanism will increase the efficiency of ACO. Moreover, based on theorem 2 the transition probability can be redesigned as follows: Denote Φ as the set of cities that should be priced out p
Φ = {k | η + cl , k ≥ z − v( AP ), k ∈ V \ s p }
where
η=
∑
( i , j )∈s p
cij
(11)
is the accumulative reduced cost of s p and then
β ⎧ τ ( r , l ) ⋅η ( r , l ) ⎪ β ⎪ P ( l | r ∈ s p ) = ⎨ ∑ j∈V \{Φ ∪ s p } and ( r , j )∈ A \ Δ τ ( r , j ) ⋅η ( r , j ) ⎪ ⎪⎩ 0 otherwise
if l ∈ V \ {Φ ∪ s p }
(12)
The reduction procedure inevitably requires additional computing cost. The question is whether the reduction in the search space is sufficiently large to compensate for the additional computing cost. Computational experiments show that it really works for most of benchmark problems.
Collaborative Optimization under a Control Framework for ATSP
361
4 Computational Experiments The computational experiments are executed on a 1.79GHz personal computer and totally 19 benchmark problems are tested. The proposed algorithm is coded in C++. Although many well-crafted algorithms have been designed for ATSP, we don’t intend giving extensive comparisons among all those algorithms. Since the proposed optimization framework is to exhibit the power of collaboration between exact methods and metaheuristics. So, the comparisons will be among our method, ACO[6] and CDT[2]. This is to give a direct evidence to verify that the proposed method outperforms the methods that works individually. 4.024
ACO with guide inf ormation ACO alone
O b je c tiv eV a lu e
3.943
3.876
3.817
3.757
3.690
3.623
0
50
100
150
200
250
300
Number of I terations
Fig. 4. The performance comparison of two ACO algorithms for instance ‘kro124’
The parameters of ACO are set to the same values as the literature [6] did. In the implementation, the local search, e.g. 2-opt or 3-opt, is not used in ACO in order to illustrate directly the efficacy of collaborations between methods. Fig.4 presents comparative convergent curves for the two kinds of ACO algorithms. The proposed algorithm has faster convergent rate and higher solution quality. Table 1 summarizes Table 1. Comparison results of several existing algorithms Instance br17 ft53 ft70 ftv33 ftv35 ftv38 ftv44 ftv47 ftv55 ftv64 ftv70 ftv170 kro124 p43 ry48p rbg323 rbg358 rgb403 rgb443
Known Best
Time for hitting the best known
39 6905 38673 1286 1473 1530 1613 1776 1608 1839 1950 2755 36230 5620 14422 1326 1163 2465 2720
ACO alone 0.001 24 9 10 8 8 5 16 17 12 25 105 150 35 23 37.43 105.32 24.39 65.63
CDT 0.001 -67 1 4 3 7 10 7 4 127 ---12379 0.001 0.001 0.001 0.001
(sec.)
Our method 0.001 20 2 2 3 5 3 5 3 6 23 53 89 47 13 0.001 0.001 0.001 0.001
Note that all the experiments are starting with the solution obtained by PA. ”--“means the best known solution is not found in 10 hours by CDT algorithm and the number marked in bold style indicates the best behavior in terms of running time.
362
J. Bai et al.
the results among the algorithms. See that for 80% instances the proposed algorithm is better than the other two.
5 Conclusion A novel collaboration optimization framework is proposed to solve the ATSP. The advantage mainly lies in the synergistic utilization of interior information which improves the overall searching efficacy. The idea behind is that the proposed algorithm is powerful in dealing with ATSP because it is equipped with the capacity to exploit the interior information concerning the characteristics of instances they are solving. The design of collaborative algorithms combing rigorous method and metaheuristics will continue to be one of the most promising research areas in discrete optimization.
Acknowledgements The research was supported by National Natural Science Foundation of China (Grant 61074150).
References 1. Blum, C., Dorigo, M.: The hyper-cube framework for ant colony optimization. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics 34(2), 1161–1172 (2004) 2. Carpaneto, G., Dell’Amico, M., et al.: Exact solution of large-scale, asymmetric traveling salesman problems. ACM Trans. Math. Softw. 21(4), 394–409 (1995) 3. Choi, I.-C., Kim, S.-I., et al.: A genetic algorithm with a mixed region search for the asymmetric traveling salesman problem. Comput. Oper. Res. 30(5), 773–786 (2003) 4. Choi, J., Realff, M.J., et al.: An algorithmic framework for improving heuristic solutions Part I. A deterministic discount coupon traveling salesman problem Computers & Chemical Engineering 28(1): 1285-1296 (2004). Computers & Chemical Engineering 28(1), 1285–1296 (2004) 5. Dell’Amico, M., Toth, P.: Algorithms and codes for dense assignment problems: the state of the art. Discrete Applied Mathematics 100(1-2), 17–48 (2000) 6. Dorigo, M., Gambardella, L.M.: Ant colony system: a cooperative learning approach to the traveling salesman problem. IEEE Transactions on Evolutionary Computation 1(1), 53–66 (1997) 7. Fiechter, C.N.: A parallel tabu search algorithm for large traveling salesman problems. Discrete Appl. Math. 51(3), 243–267 (1994) 8. Fischetti, M., Toth, P.: A Polyhedral Approach to the Asymmetric Traveling Salesman Problem. Management Science 43(11), 1520–1536 (1997) 9. Glover, F., Gutin, G., et al.: Construction heuristics for the asymmetric TSP. European Journal of Operational Research 129(3), 555–568 (2001) 10. Goldberg, D.E.: Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley, Reading (1989)
Collaborative Optimization under a Control Framework for ATSP
363
11. John, D.L.: An improved solution to the traveling salesman problem with thousands of nodes. Commun. ACM 27(12), 1227–1236 (1984) 12. Jourdan, L., Basseur, M., et al.: Hybridizing exact methods and metaheuristics: A taxonomy. European Journal of Operational Research 199(3), 620–629 (2009) 13. Karp, R.M.: A Patching Algorithm for the Nonsymmetric Traveling-Salesman Problem. SIAM Journal on Computing 8(4), 561–573 (1979) 14. Laarhoven, P.J.v., Aarts, E.H.: Simulated Annealing: Theory and Applications. Mathematics and Its Applications. Springer, Heidelberg (1987) 15. Marco, D., Christian, B.: Ant colony optimization theory: a survey. Theor. Comput. Sci. 344(2-3), 243–278 (2005) 16. Miller, D.L., Pekny, J.F.: Exact Solution of Large Asymmetric Traveling Salesman Problems. Science 251(4995), 754–761 (1991) 17. Pan, C., Yang, G.K.: A method of solving a large-scale rolling batch scheduling problem in steel production using a variant of column generation. Comput. Ind. Eng. 56(1), 165– 178 (2009) 18. Tang, L.X., Liu, J.Y., et al.: A multiple traveling salesman problem model for hot rolling scheduling in Shanghai Baoshan Iron & Steel Complex. European Journal of Operational Research 124(2), 267–282 (2000) 19. Turkensteen, M., Ghosh, D., et al.: Tolerance-based Branch and Bound algorithms for the ATSP. European Journal of Operational Research 189(3), 775–788 (2008)
Bio-Inspired Dynamic Composition and Reconfiguration of Service-Oriented Internetware Systems Huan Zhou1 , Zili Zhang1,2, , Yuheng Wu1 , and Tao Qian1
2
1 Faculty of Computer and Information Science Southwest University, Chongqing 400715, China School of Information Technology, Deakin University, VIC 3217, Australia [email protected]
Abstract. Dynamic composition and reconfiguration of service-oriented Internetware systems are of paramount importance as we can not predefine everything during the design time of a software system. Recent biology studies show that the slime mold Physarum polycephalum – a single-cell organism – can form a veined network that explores the available space and connects food sources in the absence of central control mechanisms. Inspired by the formation and behavior of such biological adaptive networks, a new bionic approach is proposed for dynamic service composition and reconfiguration of Internetware systems. Simulation experiments were conducted. The experimental results show that the proposed approach is effective and efficient. It is hoped that this paper will shed new light in Internetware system design and construction. Keywords: Internetware, Physarum polycephalum, Service Composition, Reconfiguration.
1
Introduction
Any service-oriented software system running in an open and dynamic environment like the Internet can be called an Internetware system. To meet the functional and quality requirements, the dynamic composition and reconfiguration capabilities are required for such systems. With the dynamic composition and reconfiguration capabilities, the Internetware systems can improve and optimize their configurations when the network environment changes. An Internetware system provides comprehensive services by combining various service components. It is evident that we cannot pre-define everything for such a software system, and some unknown emergent behaviours may occur when it is running under a changing network environment. A service component failure or network congestion may result in the system failure or unreliable results. If this happens, redeveloping and redeploying a new system will cost too much. A better way
Corresponding author.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 364–373, 2011. c Springer-Verlag Berlin Heidelberg 2011
Bio-inspired Dynamic Composition and Reconfiguration
365
is to reconfigure the system dynamically during the running time to adapt the changed environment or tasks. Dynamic service composition and reconfiguration of service-oriented software systems have attracted much attention in the past few years. Typically, there are two principal approaches for dynamic service composition – process-driven and semantic-driven [1]. The process-driven approach includes the workflow model method [2], the state calculus approach [3], the process algebra approach [4], and so on. The main idea of semantic-driven approach is to introduce machine understood semantics for service description and service request. In this way, the composition schemes can be generated automatically through reasoning [5]. Recent years also saw many studies on reconfiguration. In [6], Ribeiro-Justo et al discussed the integration of F RODICA (Framework for Distributed Configurable Applications) framework and CODA (Complex Organic Distributed Architecture) framework. A multi-role and multi-layered framework is then formed to monitor and reconfigure a system. Anosike et al proposed a solution for the logistics reconfiguration problem in manufacture sectors, in which the negotiation and bidding of multi-agents without centralized control is utilized [7]. The self-organization of distributed multi-agent systems was achieved through negotiation and trust management mechanisms [8]. Approaches were proposed to solve the incremental web services publication and registration problem in composition Web services through service community, composite services, atomic services, and the heterogeneous hierarchy of service providers [9]. The theoretical foundation was also laid to assure the correct operation of composition services. Palma et al [10] proposed an agent system reconfiguration approach by modifying the geographic distribution of agents in the system, which is based on a structural description language called ADL. It is noted that many organisms can achieve self organization and self optimization without global information and centralized control. Borrowing ideas from biology has helped us to successfully develop neural network algorithms, genetic algorithms and ant colony optimization algorithms etc. A recent study shows that the slim mold Physarum polycephalum can demonstrate self organization, self optimization and self repair behaviours naturally [11]. Its foraging behavior could guide people to improve technical systems, such as mobile communication network or other dynamic networks of connected computing devices. Drawing inspiration from this, we propose a novel dynamic service composition and reconfiguration approach for Internetware systems in this paper. It is hoped that this paper will shed new light for the design and construction of Internetware systems. The rest of the paper is organized as follows. In Section 2, background knowledge of the foraging principles of Physarum polycephalum and its corresponding mathematical model as well as Internetware is introduced. Section 3 presents the bio-inspired service composition and reconfiguration model. Experimental results and discussions are provided in Section 4. Section 5 concludes the paper.
366
2
H. Zhou et al.
Background
For the sake of further discussion, a brief introduction to the foraging principle of Physarum polycephalum and its corresponding mathematical model as well as Internetware is provided in this section. 2.1
Foraging Principles of Physarum polycephalum and Its Mathematical Model
The slime mould Physarum polycephalum is a kind of large amoeba-like cell consisting of a dendritic network of tube-like structures (pseudopodia). It changes its shape as it crawls over a plain agar gel and, if food is placed at two different points, it will put out pseudopodia that connects the two food sources in order to absorb nutrition through the flow of protoplasm. At last, an optimized network is formed by connecting different food sources. The physiological mechanism of tube formation can be summarized as follows: Tubes thicken in a given direction when shuttle streaming of the protoplasm persists in that direction for a certain time. This implies positive feedback between flux and tube thickness, as the conductivity of the sol is greater in a thicker tube. Experimental results have revealed two empirical rules describing the changes in the tubular structure of the plasmodium: first, open-ended tubes are likely to disappear; and second, when two or more tubes connect the same two food sources, the longer tube tends to disappear [13]. Based on the physiological mechanism of tube formation, a mathematical model is proposed [14]: Suppose that the pressures at nodes i and j are pi and pj , respectively, and that the two nodes are connected by a cylinder of length Lij and radius of the cylinder is rij . According to the Hagen − P oiseuille equation in chemistry, the flux through the tube can be πr4 (pi −pj ) D (pi −pj ) described as Qij = = ij Lij where η is the viscosity of the fluid, 8ηLij 4
and Dij = πr 8η is a measure of the conductivity of the tube. As the length Lij is a constant, the behavior of the network is described by the conductivity Dij . The foraging principle of Physarum has been used to solve the maze-problem. The two special nodes corresponding to the food sources are named N1 and N2 and other nodes are designated N3 , N4 , N5 , and so forth. N1 always acts as a source and N2 as a sink. We assume zero capacity at each node, by considering the conservation law of sol we have Qij = 0 if j = 1, 2. i The source node N1 and the sink node N2 meet Qi1 + I0 = 0 and Qi2 − i
i
I0 = 0, respectively. Where I0 represents the flux of the source node (or into the sink node). It should be noted that I0 is a constant in our model, which means that the total flux is fixed constant throughout the process. Experimental observations show that tubes with larger flux expand, while those with smaller flux shrink gradually. Such adaptation behaviours of plasmodium can be described according to the conductivity Dij changing over time with the flux Qij . More specifically, the evolution of conductivity Dij can be described as follows:
Bio-inspired Dynamic Composition and Reconfiguration
367
dDij = f (|Qij |) − rDij (1) dt Based on the mathematical model, a network model has been proposed and a lot of experiments have been done. Different parameters are discussed in different situations. This model was also used to find the shortest path between designated cities through freeways in United States. Experiments show that the Physarum model can not only find the shortest path successfully but also has efficient reconfiguration ability in the case of traffic accidents. 2.2
A Brief Introduction to Internetware
Web services are web-based, self-described, modular and distributed computing model. Its main idea is to describe software as services while Internetware belongs to this paradigm. As the function of individual services is quite limited, and can not meet the requirements of different users at most of the time, individual services can be combined to provide more powerful composite services. Dynamic composition or reconfiguration is necessary as an atomic service consisting of a composite service may fails during running time. Internetware entities consist of different components, which can be published in open environments such as the Internet. Those entities can be connected across networks. The development processes of Internetware systems are different from traditional software systems due to the open and dynamic characteristics of the network environments. More specifically, Internetware systems are required to perceive the changes of the external network environments, and then adapt accordingly in regard to the functionality, performance and trustworthness. The development activities of Internetware systems are treated as combining basic software resources without orders into a basic system in order. This process is an iterative one as the system in order may become out-of-order with time goes by [15][16]. Different Web services published on the Internet can be viewed as different components for Internetware. The service composition process is to combine services without order to ordered ones to form a new basic system.
3
Bio-inspired Service Composition and Reconfiguration Model
In this section, we present the Physarum inspired service composition and reconfiguration model for Internetware systems. For better understanding the model, a problem description is given first. 3.1
Problem Description
Generally, there are different service composition problems - sequential, circular, parallel, and so forth. As other service composition problems such as circular and parallel service composition problems can be converted to sequential problem
368
H. Zhou et al.
Fig. 1. Relationship among candidate services
by changing some conditions [17], we focus on sequential service composition problem only in this paper. Suppose there are m different sets of Web services in an Internetware system consisting of Web service components, and there are various service components in each service set. The relationship among those candidate services can be represented by the directed acyclic graph shown in Figure 1 where n1 is the number of web service in service set one, n2 is the number of web service in service set two, and so forth. Therefore, the total number of the combination services is n1 × n2 × · · · × nm . With a relatively large number of services, the service composition problem can not be solved by traditional exhaustive methods. Here, we turn to Physarum and propose a Physarum-like algorithm to solve this problem. The formation of this ordered system is similar to Physarum maze-solving problem. The users and registry can be viewed as the start and end points in the maze. Different services are viewed as different nodes in the maze. The relation among services is corresponding to the flow among nodes of the maze. Therefore, the mechanism of Physarum protoplasm flow changes to find the shortest path can be used to solve the service composition problem – a problem to find the optimal service combination according to the change of relations of the internal components for an Internetware system. This problem is essentially reduced to the problem seeking an optimal path in a weighted directed acyclic graph. As Physarum has the ability to find the shortest path in an intricate maze according to the length of paths from the start to the end, we can follow it to find the optimal combination of services from the service nodes with different QoS (Quantity of Service).
Bio-inspired Dynamic Composition and Reconfiguration
3.2
369
Mathematical Model
Usually, services composition performance is defined based on its QoS. Five generic QoS criteria for service composition are proposed in [18], which are service execution cost, service execution duration, satisfaction degree of service, reliability, and availability. In this paper, service execution cost, service execution duration and reliability are chosen as our quality criteria, which are the weights of the relation edges. According to the Physarum maze-solving model, some parameters of web service combination are introduced into our model. Suppose that the pressures at nodes i and j in adjacent service sets are pi and pj , and the service execution costs are costi and costj , respectively. The total execution cost could be the sum of these two nodes when the relation is established between these two nodes, which is Cij = costi + costj . Similarly, the total execution duration could be Tij = timei + timej , where timei and timej are the execution duration at nodes i and j, respectively . However, the reliability Kij is defined as Kij = Ki × Kj , where Ki and Kj are the reliability at nodes i and j, respectively. According to the definition above, the relation strength RS is defined as follows: RSij =
Dij (pi − pj )Kij = Dij (pi − pj ) × QoS Cij × Tij
(2)
The change behavior of network is described by the conductivity Dij of every relation edge. The QoS of relations among services are measured by Kij /Cij × reqi Tij . For any node i, its reliability is defined as Ki = req . sum We define users and registry as N1 and N2 . For any intermediate service nodes i and j, based on the Kirchhoff’s law, we can obtain RSij = 0 if j = i 1, 2. The equations to describe nodes N1 and N2 are RSi1 + I0 = 0 and i RSi2 − I0 = 0, respectively, where I0 is a constant. i
To simulate the adaptive behaviors of service components, the conductivity dD of service components evolves as described in dtij = f (|RSij |) − Dij . The first term in the right side of the equation indicates that the conductivity increases with increasing of the relation strength, while the second term denotes the shrinking rate of the relation edges. In the case of low relation strength, relations will gradually disappear. The service relationship between the components can be expressed by a seventuple, denoted as R(ID1 , ID2 , W SL1 , W SL2 , W SD1 , W SD2 , RS), where ID1 and ID2 are unique identifiers of two related services; W SL1 and W SL2 are URLs of the two services; W SD1 and W SD2 are service descriptions,; and RS represents the relation strength between services. 3.3
Algorithm Characteristics
The characteristics of the service composition and reconfiguration algorithms described above can be summarized as follows:
370
H. Zhou et al.
– This slime mold amoeba - Physarum polycephalum can establish a reliable adaptive network efficiently in the foraging process. A world class team in Japan and the United Kingdom has been conducting research on this for quite a long time [11] – [14] and [19] – [24], which laid a solid theoretical foundation for such approaches. – The proposed service combination and reconfiguration algorithms integrate both Web service and and amoeba based features. item Our approach is based on global optimization, which will ensure the optimal combination and reconfiguration with correct parameters. – Our reconfiguration method can be obtained through real-time index, the iterative calculation that can select the best QoS service for the user through its own parameters automatically evolution with non-human intervention and non-stop.
4
Experimental Results and Discussion
In our experiments, the execution price, execution duration and reliability of the node connections are all randomly generated in the experiments in the range of [0, 1]. The number of services sets is 10, with start node and end node, a total of 12 categories of services, the number of web services in each service set is 10 which are present by the following web service composition and reconfiguration simulation. Assume that what is needed is a combination of 10 different services; each type of service has 10 service nodes provide the same service. Only two services in adjacent service sets could have edges. There is no relation edge between non-adjacent set of services and services within the same service set. Then the process of finding the optimal combination is finding the of strongest relation edge from the beginning to the end nodes. Services Composition Simulation Experiments: In the bitmap, each node represents a service that service composition starts at the left-most single node in a column and ends at the right-most single node in a column. The nodes listed between the start and end nodes in the same column are services to provide the same functionality, the connection line between two points, represent the two nodes (service) relation. The thickness of Line represents the relation strength. The initial state is shown in Figure 2. When the simulation experiment begins, the strength of relationship will gradually changes with repeated iterations. Ultimately, it will choose some node of different type from the beginning to the end for the optimal path, that is, the optimal combination of services. Reconfiguration Simulation Experiments: The process of reconfiguration simulation experiment is as follows: Simulation results based on a combination of the above, assuming that relations edge ofe453 and e546 failure, service node 64 is not available, the system will select a new optimal services through its own parameters automatically evolution with non-human intervention and non-stop as shown in Figure 3 (top).
Bio-inspired Dynamic Composition and Reconfiguration
371
Fig. 2. Initial state
The system automatically selects the other sub-optimal node to ensure that the software system automatically is reconfigured (Figure 3, bottom).
Fig. 3. The process of reconfiguration(b)
372
H. Zhou et al.
The final reconfiguration result is shown in Figure 4.
Fig. 4. Result of reconfiguration
5
Conclusions
We focused on solving the problem of service-oriented Internetware component composition and dynamic reconfiguration. In response to this kind of problem, there are a number of related researches. This paper is based on the Physarum polycephalum maze-solving bionic model. It can be seen from the experiment, our method can find the optimal combination of services by QoS, and if some changes happened in the environment, with non-stop and non-human intervention the adaptive reconfiguration succeed in finding replacement nodes to achieve the best combination to ensure excellent. Our approach provides a new way for dynamic web service composition and reconfiguration; some parameters in the model will be adjusted and optimized in our future work.
References 1. Ni, W.-c., Liu, L.-c., Wu, C.: Survey on Web Services Composition Methods. Computer Engineering 04, 79–81 (2008) (in Chinese) 2. Casati, F., Ilnicki, S., Jin, L., Krishnamoorthy, V., Shan, M.-C.: Adaptive and Dynamic Service Composition in eFlow. In: Wangler, B., Bergman, L.D. (eds.) CAiSE 2000. LNCS, vol. 1789, pp. 13–31. Springer, Heidelberg (2000) 3. Hamadi, R., Benatallah, B.: A Petri net-based model for web service composition. Australian Computer Society, Inc., Adelaide (2003) 4. Liao, J., Tan, H., Liu, J.-D.: Describing and Verifying Web Science Using PiCalculus. Chinese Journal of Computers 28(04), 635–643 (2005) (in Chinese) 5. Li, M., Wang, D.-Z., Du, X.-Y., Wang, S.: Dynamic Composition of Web Services Based on Domain Ontology. Chinese Journal of Computers 28(04), 644–650 (2005) (in Chinese)
Bio-inspired Dynamic Composition and Reconfiguration
373
6. Ribeiro-Justo, G.R., Saleh, A., Karran, T.: Intelligent Reconfiguration of Dynamic Distributed Components. Electronic Notes in Theoretical Computer Science 180(2), 91–106 (2007) 7. Anosike, A.I., Zhang, D.Z.: An agent-based approach for integrating manufacturing operations. International Journal of Production Economics 121(02), 333–352 (2009) 8. Reece, S., Rogers, A., Roberts, S., et al.: Rumours and reputation: evaluating multi-dimensional trust within a decentralised reputation system. In: Proceedings of 6th AAMAS, Hawaii, pp. 1–8 (2007) 9. Benatallah, B., Dumas, M., Sheng, Q.Z., et al.: Declarative composition and peerto-peer provisioning of dynamic Web services. In: Proceedings of the 18th International Conference on Data Engineering, San Jose, CA, USA, pp. 297–308 (2002) 10. Nol, L.B., Bellissard, L., De Palma, N., et al.: Dynamic Reconfiguration of AgentBased Applications. In: Third European Research Seminar on Advances in Distributed Systems (ERSADS apos 1999), Madeira, Island, pp. 23–28 (1999) 11. Tero, A., Takagi, S., Saigusa, T., et al.: Rules for Biologically Inspired Adaptive Network Design. Science 327(5964), 439–442 (2010) 12. Nakagaki, T., Yamada, H., Toth, A.: Intelligence: Maze-solving by an amoeboid organism. Nature 407(6803), 470 (2000) 13. Tero, A., Kobayashi, R., Nakagaki, T.: Physarum solver: A biologically inspired method of road-network navigation. Physica A: Statistical Mechanics and its Applications Information and Material Flows in Complex Networks 363(01), 115–119 (2006) 14. Tero, A., Kobayashi, R., Nakagaki, T.: A mathematical model for adaptive transport network in path finding by true slime mold. Journal of Theoretical Biology 244(04), 553–564 (2007) 15. Lu, J., Ma, X.-X., Tao, X.-P., Xu, F., Hu, H.: Internetware Survey. Science in China (Series E) 36(10), 1037–1080 (2006) (in Chinese) 16. Yang, F.-Q., Mei, H., Lu, J., Jin, Z.: Some Discussion on the Development of Software Technology. Acta Electronica Sinica 30(12A), 1902–1906 (2002) (in Chinese) 17. Zeng, L., Benatallah, B., Ngu, A.H.H., et al.: QoS-aware middleware for Web services composition. IEEE Transactions on Software Enineering 30(05), 311–327 (2004) 18. Zeng, L., Benatallah, B., Dumas, M., et al.: Quality driven web services composition. In: Proceedings of the 12th International Conference on World Wide Web, Budapest, Hungary, pp. 411–421 (2003) 19. Nakagaki, T., Yamada, H., Ueda, T.: Interaction between cell shape and contraction pattern in the Physarum plasmodium. Biophysical Chemistry 84(03), 195–204 (2000) 20. Nakagaki, T., Yamada, H., Hara, M.: Smart network solutions in an amoeboid organism. Biophysical Chemistry 107(01), 1–5 (2004) 21. Nakagaki, T., Kobayashi, R., Nishiura, Y., et al.: Obtaining multiple separate food sources: behavioural intelligence in the Physarum plasmodium. Proceedings of the Royal Society of London, B: Biological Sciences 271(1554), 2305–2310 (2004) 22. Tero, A., Yumiki, K., Kobayashi, R., et al.: Flow-network adaptation in Physarum amoebae. Theory in Biosciences 127, 89–94 (2008) 23. Nakagaki, T., Iima, M., Ueda, T., et al.: Minimum-Risk Path Finding by an Adaptive Amoebal Network. Phys. Rev. Lett. 99(6), 068104-1–068104-4 (2007) 24. Marwan, W.: Amoeba-Inspired Network Design. Science 327(5964), 419–420 (2010)
A Novel Search Interval Forecasting Optimization Algorithm Yang Lou1, Junli Li1, Yuhui Shi2, and Linpeng Jin1 1
Information Science and Engineering College, Ningbo University, 315211 Ningbo, China 2 Department of Electrical and Electronic Engineering, Xi’an Jiaotong-Liverpool University, 215123 Suzhou, China [email protected], [email protected], [email protected], [email protected]
Abstract. In this paper, we propose a novel search interval forecasting (SIF) optimization algorithm for global numerical optimization. In the SIF algorithm, the information accumulated in the previous iteration of the evolution is utilized to forecast area where better optimization value can be located with the highest probability for the next searching operation. Five types of searching strategies are designed to accommodate different situations, which are determined by the history information. A suit of benchmark functions are used to test the SIF algorithm. The simulation results illustrate the good performance of SIF, especially for solving large scale optimization problems. Keywords: Global Numerical Optimization, Evolutionary Algorithm, Search Interval Forecasting.
1 Introduction Global numerical optimization is an important research topic because many realworld problems can be described as global numerical optimization problems. Many numerical optimization problems are difficult to solve and some of them even can not be solved by analytical methods. Consequently, Evolutionary Algorithms (EAs) [1], which simulate the natural processes of evolution, were proposed to solve these problems. In CEC (IEEE Congress on Evolutionary Computation) 2005, a special competition of real-parameter optimization was hold and 17 algorithms [2] were proposed, all of which had been tested on a suite of 25 benchmark functions with 10 and 30 dimensions, respectively [3]. Furthermore, another special competition on solving large scale global optimization problems using EAs [4] was organized in CEC 2008. The test suite was designed based on 7 benchmark functions with 100, 500 and 1000 dimensions, respectively [4]. Eight algorithms were selected to enter the final competition, among which MTS (Multiple Trajectory Search) [5] proposed by Tseng and Chen won the first prize. MTS uses multiple agents to search the solution space concurrently [6]. Nevertheless, other algorithms also contributed a lot to improve global numerical optimization methods as well. Yang et.al proposed the MLCC (Multilevel Cooperative Coevolution) [7], in which an improved framework of Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 374–381, 2011. © Springer-Verlag Berlin Heidelberg 2011
A Novel Search Interval Forecasting Optimization Algorithm
375
cooperative coevolution was designed to overcome the hard-to-determine parameters. In this paper, we proposed a novel search interval forecasting (SIF) optimization algorithm, which utilizes the history information accumulated in the previous iteration of the evolution. The framework of search interval forecasting algorithm is designed for solving large scale optimization, but it has downward compatibility for solving lower dimensional problems. The remainder of this paper is organized as follows. Section 2 gives some definitions of optimization and subinterval used in this paper. Section 3 introduces and describes the SIF algorithm. Experimental simulation and result discussion are given in Section 4, followed by conclusions in Section 5.
2 Preliminaries 2.1 Problem Definition Without loss of generality; in this paper, we consider minimization problems without constraint. The global numerical optimization problem is defined as follows: Minimize f ( x ) , subject to x ≤ x ≤ x
where point x = ( x1 , x2 ,L , xN ) is a variable vector in the search space R N , and f (⋅) is a single-objective function without constraint. Vectors x = ( x1 , x 2 ,L , x N ) and
x = ( x1 , x 2 ,L , x N ) define the lower and upper bound of the variable vector x, i.e. each dimension xi of a feasible solution must satisfy x i ≤ xi ≤ xi , i = 1, 2,..., N . The feasible solution space is denoted by [ x, x ] . The fitness value of a potential solution (a point in the search space) of the minimization problem is defined as − f ( x ) . 2.2 Subinterval Definition
The search range of each dimension of the variable vector x in the search space is denoted by[ xi , x i ] , i = 1, 2,..., N . The interval [ xi , xi ] is divided into M subintervals.
Fig. 1. One dimension search range segmented into 4 equal subintervals
As shown in Fig 1, the search range is segmented into 4 ( M = 4 ) equally sized subintervals, thus b = 0.5( x i + x i ) , a = 0.5( x i + b) and c = 0.5(b + xi ) . The numbers in the top are the indexes of the subintervals. Through trial-and-error method, we found M = 4 is a good value. When M = 4 , the indexes range from 0 to 3. We name subinterval [ xi , a ] as No.0subinterval , [a, b] as No.1subinterval , [b, c] as
376
Y. Lou et al.
No.2subinterval and [c, xi ] as No.3subinterval . Search Interval Forecasting (SIF) algorithm utilizes the history information of these subintervals accumulated in the previous iteration to forecast the next searching subinterval, but ignores those subintervals that have low probability to find the global optimal according to the history information, therefore SIF can reduce the objective function evaluations.
3 Search Interval Forecasting Optimization Algorithm 3.1 Parameters Definition
The index of the current searching subinterval is represented by iCur . SIF marks three points in each subinterval, i.e. the current best point X b , which has the current best fitness value of all and its index is denoted by iX b ; the best point before the current best (pre-best) point pX b , and the best points before the pre-best point ppX b . A Boolean value yes / no Cur denotes whether the searching subinterval is feasible, which is determined by the history information. We define “succeed” of a searching operation as “selecting a set of points randomly in the specific subinterval and its fitness value is larger than the current best”. Otherwise, it is a failure trial of a searching operation. Five types of trial times of searching operations are kept. They are succeed times Sts , failure times Fts , the total trial times Tts , the succeed times of searching operations in the “ + ” direction Sts + , and the succeed times of searching operations in the “ − ” direction Sts − . SIF algorithm has two queues to record the points which have specific attributes, i.e. the smooth queue SQ and the failure queue FQ . The points in the smooth queue SQ have the same fitness value as that of the current best point. If the current best point changes, and the smooth queue will be updated. Consequently, SQ contains three types of points, “the best point” X b , pX b and ppX b described before. In the failure queue FQ , each record includes three items of information: the position of current point Xpt , the residual values δ f of objective function between the current point and the current best point, and a Boolean value denotes whether a further local search is needed. The minimum δ f is marked as min δ f , which is the minimum residual of objective function values between the current point and the current best point in the failure queue FQ . 3.2 Five Types of Searching Strategies
We define five types of strategies for the searching in subintervals, the nearest + direction searching strategy( NS + ), and the nearest − direction searching strategy ( NS − ), the longest distance searching strategy( LS ), the minimum operable residual + direction searching strategy( MRS + ), and the minimum operable residual − direction searching strategy( MRS − ). Among these strategies, a searching operation
A Novel Search Interval Forecasting Optimization Algorithm
377
is defined as “selecting a set of points randomly in the specific subinterval”. NS + / − search strategies mean searching in the next + or − direction subinterval. LS means searching in the subinterval which has a longest distance to the current point. And MRS + / − strategies mean searching in the subinterval which has the minimum residual with the current subinterval. 3.3 SIF Summarization
The SIF algorithm shown in Fig.2 can be summarized as follows: Step 1. It is the Initialization step. For each dimension, a midpoint of any subinterval of 4 subintervals is selected randomly, and then a vector of the initial point is constructed. Record the five types of trial times of searching Sts , Fts , Tts , Sts + , and Sts − ; and record information of X b , pX b , ppX b , iX b , iCur and min δ f as well. Step 2. For each dimension, five types of searching strategies are utilized. If the current subinterval is the same as the current best subinterval i.e. iCur = iX b , NS + and NS − are utilized. If Sts + > Sts − , NS + is utilized first, otherwise, NS − first. If the searching is successful, ignore the rest of Step 2 and go to Step 3; If iCur ≠ iX b , the rest three types of searching strategies are utilized. Searching strategy LS is utilized, and if the searching is successful, ignore the rest of Step 2 and go to Step 3; if the three strategies above are unsuccessful, then MRS + and MRS − are utilized.
Step 3. If there is a successful searching in Step 2, then update all parameters and history information. Otherwise, there is no successful searching, a value of subinterval is calculated as
No. jsubinterval.value = No. jsubinterval.min δ f +
Fig. 2. Flow Chart of SIF
No. jsubinterval.Fts No. jsubinterval.Sts
378
Y. Lou et al.
where No. jsubinterval ( j = 1, 2, 3, 4 ) means a subinterval, Sts , Fts and min δ f are defined above. For four subintervals, the subinterval with the minimum No. jsubinterval.value is treated to be the next searching subinterval. Step 4. If number of objective function evaluations reaches its pre-fixed maximum value, the algorithm stops, otherwise, go to Step 2.
4 Experimental Studies 4.1 Benchmark Functions
Six benchmark functions are adopted here. The dimensions of each function are set to be 100, 500 and 1000, respectively. A fixed number of Function Evaluations ( FEs ) is given for each problem. The performance of an algorithm is quantitatively measured by the value of objective functions, and the FEs is defined as
FEs = 5000 × Dimensionality And for each problem, 25 independent runs are carried out. Among the series of testing, we focus on the problems with dimension 1000. Table.1 shows the six benchmark functions in our experiment. Table 1. Benchmark Functions Benchmark Functions
Search Range
Optimal Solution Value
[ −100,100]D
Min f1 = f1 (0,0,L ,0) = 0
[ −100,100]D
Min f 2 = f 2 (0,0,L ,0) = 0
[ −100,100]D
Min f 3 = f 3 (0,0,L ,0) = 0
[ −5,5]D
Min f 4 = f 4 (0,0,L ,0) = 0
[ −600,600]D
Min f 5 = f 5 (0,0,L ,0) = 0
[−32,32]D
Min f 6 = f 6 (0,0,L ,0) = 0
1. Sphere Function D
f 1 ( x ) = ∑ xi i =1
2. Schwefel’s Problem 2.21 f 2 ( x ) = max{| xi |,1 ≤ i ≤ D} i
3. Rosenbrock’s Function D −1
f 3 ( x ) = ∑ (100( xi 2 − x i +1 )2 + ( xi − 1)2 ) i =1
4. Rastrigin’s Function D
f 4 ( x ) = ∑ ( xi − 10cos(2π xi ) + 10) i =1
5. Griewank Function 1 D 2 D x f5 ( x) = xi − ∏ cos( i ) + 1 ∑ 4000 i =1 i i =1 6. Ackley's Function f 6 ( x ) = 20 − 20exp( −0.2 D
1 − exp( ∑ cos(2π xi )) D i =1
1 D 2 ∑ xi ) D i =1
A Novel Search Interval Forecasting Optimization Algorithm
379
4.2 Experimental Data
Table 2 shows the average results of 25 independent run for each problem. Six benchmark functions with 100, 500 and 1000 dimensions are tested within 5 × 105 , 2.5 × 106 and 5 × 106 times of FEs , respectively. For function f 4 , SIF can get the optimum in all 25 runs. As we know, the higher dimension a problem has, the more difficult it is to optimize. This can be inferred from simulation results. For function f5 , from Table 2, SIF can solve it with 100 dimensions accurately, and can obtain results with the precision of 10−15 for the problem with 500 and 1000 dimensions. In Fig.3, processes of convergence are displayed, in which the Y-axis is set in the form of log and the minimum displayed is less than 10−40 . For functions f1 , f 2 , f 5 and f 6 , SIF has fast convergence speed, while for f3 , the convergence process is relatively longer because of f 3 is a hard-to-solve problem, which is multi-modal and non-separable. For function f 4 , SIF can solve it within 600 iterations. Table 2. The Average Results of 25 Independent Runs
Functions 100-Dimension ( 5 × 105 FEs ) 500-Dimension ( 2.5 × 106 FEs ) 1000-Dimension ( 5 × 106 FEs )
f1
f2
f3
f4
f5
f6
6.4706E-36
5.5849E-19
2.8877E+2
0.0000E+0
0.0000E+0
1.7452E-13
4.3108E-35
7.1876E-20
1.4893E+3
0.0000E+0
1.1102E-15
8.4598E-13
8.5512E-35
3.5223E-19
2.8601E+3
0.0000E+0
3.9968E-15
1.6417E-12
(a) Fig. 3. Convergence Process Graphs for Optimizations with (a) 100-Dimension; (b) 500Dimension and (c) 1000-Dimension Problems
380
Y. Lou et al.
(b)
(c) Fig. 3. (Continued)
5 Conclusion In this paper, a novel population-based optimization algorithm, search interval forecasting algorithm, is proposed. A suit of benchmark functions are used to test the validity of the proposed SIF algorithm. Even though the experimental study is very preliminary but it do illustrate the effectiveness of the proposed SIF algorithm. More experimental studies, algorithm analysis, and comparison with other existing algorithms are our future work.
Acknowledgment This research was supported by the Natural Science Foundation of China under Grant Nos.60832003, 60975080, the Natural Science Foundation of Zhejiang Province
A Novel Search Interval Forecasting Optimization Algorithm
381
under Grant No.Y1100076, the Natural Science Foundation of Ningbo under Grant No.2009A610089 and K.C. Wong Magna Fund in Ningbo University.
References 1. Engelbrecht, A.P.: Computational Intelligence: An Introduction, 2nd edn. Wiley Publishing. Inc., Chichester (2009) 2. http://www3.ntu.edu.sg/home/epnsugan/ 3. Suganthan, P.N., Hansen, N., Liang, J.J., Deb, K., Chen, Y.-P., Auger, A., Tiwari, S.: Problem Definitions and Evaluation Criteria for the CEC, Special Session on RealParameter Optimization. Technical Report, Nanyang Technological University, Singapore, and KanGAL Report #2005005, IIT Kanpur, India (2005) 4. Tang, K., Li, X., Suganthan, P.N., Yang, Z., Weise, T.: Benchmark Functions for the CEC’2010 Special Session and Competition on Large Scale Global Optimization. Technical Report, Nature Inspired Computation and Applications Laboratory, USTC, China, & Nanyang Technological University (2009) 5. Tseng, L.Y., Chen, C.: Multiple Trajectory Search for Large Scale Global Optimization. In: Proc. of the IEEE Congress on Evolutionary Computation, pp. 3052–3059 (2008) 6. Tseng, L.Y., Chen, C.: Multiple Trajectory Search for Multiobjective optimization. In: Proc. of the IEEE Congress on Evolutionary Computation, pp. 3609–3616 (2007) 7. Yang, Z.Y., Tang, K., Yao, X.: Multilevel Cooperative Coevolution for Large Scale Optimization. In: Proc. of the IEEE Congress on Evolutionary Computation, pp. 1663–1670 (2008)
A Danger Theory Inspired Learning Model and Its Application to Spam Detection Yuanchun Zhu and Ying Tan Key Laboratory of Machine Perception (MOE), Peking University Department of Machine Intelligence, School of Electronics Engineering and Computer Science, Peking University, Beijing, 100871, China {ychzhu,ytan}@pku.edu.cn
Abstract. This paper proposes a Danger Theory (DT) based learning (DTL) model for combining classifiers. Mimicking the mechanism of DT, three main components of the DTL model, namely signal I, danger signal and danger zone, are well designed and implemented so as to define an immune based interaction between two grounding classifiers of the model. In addition, a self-trigger process is added to solve conflictions between the two grounding classifiers. The proposed DTL model is expected to present a more accuracy learning method by combining classifiers in a way inspired from DT. To illustrate the application prospects of the DTL model, we apply it to a typical learning problem — e-mail classification, and investigate its performance on four benchmark corpora using 10-fold cross validation. It is shown that the proposed DTL model can effectively promote the performance of the grounding classifiers. Keywords: artificial immune system, danger theory, machine learning, spam detection.
1
Introduction
The development of Artificial Immune System (AIS) is usually promoted by the proposal of novel Biological Immune System (BIS) paradigms. In recent years, a novel biological paradigm — Danger theory (DT), proposed by Matzinger [1], has become popular in explaining the mechanism of BIS. According to the DT, an immune response is not triggered by the detection of ‘non-self’ but the discovery of ‘danger’, and immunity is controlled by an interaction between tissues and the cells of the immune system. Although there are still debates on the relation between the DT and classical viewpoint, the DT does contain enough inspiration for building relative AIS [2]. Based on DT, novel AIS paradigms have been proposed and applied to web mining and intrusion detection. Secker et al. [3] presented a DT based adaptive mailbox, where high number of unread messages were defined as the source of danger. Aickelin et al. [4] gave thoughts about the way of building a next generation Intrusion Detection System (IDS) based on DT. In Ref. [5], the development and application of two DT based algorithms for intrusion detection, namely the Dendritic Cell Algorithm and the Toll-like Receptor Algorithm, were presented. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 382–389, 2011. c Springer-Verlag Berlin Heidelberg 2011
A Danger Theory Inspired Learning Model
383
In this paper, we propose a DT based learning (DTL) model for combining classifiers. Mimicking the mechanism of DT, signal I, danger signal and danger zone are designed for machine learning task, and then the framework of the model is presented. Among the three components, danger zone is the most important one leading to the success of the DTL model. The danger zone defines a specific way of interaction between two grounding classifiers. To illustrate the application prospects of the DTL model, we apply it to a typical classification task — spam detection, and investigate its performance on four benchmark corpora using 10-fold cross validation. Experiments were conducted to analyze the effect of the danger zone, and compare the DTL model with classical machine learning approaches. It is shown that the proposed model can effectively promote the performance of the grounding classifiers. The remainder of the paper is organized as follows. In Section II, we present how to transplant the three main concepts of DT into the machine learning task, and the framework of the DTL model is given. In Section III, the DTL model is implemented for spam filtering task. Section IV discusses our experimental results. The conclusions are presented in Section V.
2
Danger Theory Based Learning Model
The immune system has the ability of detecting and responding to dangerous things, according to DT. This phenomenon implies that the immune system can discriminate between danger and non-danger. Thus, it is logical to build a DT based Learning model for two-group classification problem. In this section, we concern with how to transplant the three main concepts of DT, namely Match — Signal I, Danger Signal and Danger Zone, into the field of machine learning. 2.1
Generating Signals
The signal I is generated using the classifier I for each test sample in the DTL model. The process is depicted in Fig. 1(a). When the classifier I classify a test sample as positive class (match occurs), it will send a positive signal I to the sample. Otherwise, it will send negative one to the sample, if no match occurs. Figure 1(b) shows how a danger signal (Signal II) is triggered by the classifier II. Although the generating process of a danger signal seems to be quite similar as that of a signal I, the transmission coverage of a danger signal is quite different from that of a signal I. When a signal I is triggered, it will be sent only to the specific sample, upon which the signal is arisen. However, a triggered danger signal will be sent to all the test samples within the danger zone, besides the specific sample. 2.2
Classification Using Signals
This phase is the key procedure of the DTL model, which defines an immune based interaction between the two classifiers. As shown in Fig. 1(c), a test sample
384
Y. Zhu and Y. Tan
A test sample
Classifier model
A test sample
Yes
Match
Send positive signal
Classifier model
Match
No
No
Send negative signal
Send negative danger signal
(a) The process of generating signal I
Yes
Send positive danger signal
(b) The process of generating signal II
A test sample
Positive Positive danger signal
Negative
Signal
No
No
Self-trigger process
Self-trigger process
Yes (Received) Label positive
Negative danger signal
Yes (Received) Label negative
(c) Classification process using signals Fig. 1. The process of classification using signals
is labeled only if the two signals that it received agree with each other. Otherwise, a self-trigger process is utilized to get the test sample classified. The weighted result given by the interaction between the two classifiers is defined as Eq. 1. E(xi ) = δ(c1 (xi ), c2 (xj ))K(d(xi , xj )), (1) xj ∈D
where xi and xj are test samples, D denotes the test set, c1 (x) and c2 (x) are the two classifier models, d(xi , xj ) = xi − xj is the distance between two samples, K(z) is defined in Eq. 2, and δ(y1 , y2 ) = 1, if y1 = y2 , and 0 otherwise. K(z) defines the effect of the danger zone as follows. 1 if z θ K(z) = , (2) 0 otherwise where θ is the size of the danger zone. After obtaining the weighted result E(xi ), the sample xi can get its class label using Eq. 3. c1 (xi ) if E(xi ) 1 L(xi ) = , (3) f (xi ) otherwise where f (x) denotes the class label given by the self-trigger process.
A Danger Theory Inspired Learning Model
385
Algorithm 1. Framework of the DTL model Select two uncorrelated classifiers: classifier I, II; Train the two classifiers respectively on train corpus; for each sample xi in test corpus do Trigger a signal I upon xi using classifier I and send the signal to xi ; Trigger a danger signal upon xi using classifier II and send the signal to the test samples within the danger zone of xi ; end for for each sample xi in test corpus do if xi has received a positive signal I then if xi has received a positive danger signal then Label xi as positive class; else Call self-trigger process; end if else if xi has received a negative danger signal then Label xi as negative class; else Call self-trigger process; end if end if end for
Self-Trigger Process: for the test samples which get conflict results from classifier I and II, a self-trigger process is designed. An intuitional thought is to get the sample activated using its nearest neighbor. Thus, the Nearest Neighbor (NN) approach is applied in this phase [6]. In future work, we intend to incorporate other approaches for self-trigger process into the DTL model and compare their performance. 2.3
The Framework of the DTL Model
Algorithm 1 summarizes the framework of the DTL model, in which two grounding classifiers interact through two signals. In the model, two grounding classifiers are first chosen and trained independently. Then the signal I and the danger signal, simulating the signals in the DT, are triggered upon each test sample utilizing the two classifiers. Finally, each test sample gets labeled by considering the interaction between the two classifiers. 2.4
Analysis of the DTL Model
For any machine leaning model, the essence of it is the conditional probability P (yk |xi ) of class yk that it computes for each test sample xi . In the DTL model, a test sample xi gets a label yk in two cases as follows. (1)The two grounding classifiers give a consistent label yk to the sample xi : Suppose the two grounding classifiers are conditionally independent, given a test
386
Y. Zhu and Y. Tan
sample xi . Then the probability P (yk | xi , case1 ), which denotes the probability that the two grounding classifiers give consistent label yk to the sample xi , is computed as follows. P (yk | xi , case1 ) P (c1 (xi ) = yk | xi ) ·
P (c2 (xj ) = yk ∩ K( xi − xj ) = 1 | xi , xj ).
(4)
xj ∈D
(2)There is confliction between the two grounding classifiers, and the selftrigger process gives the label yk to the sample xi . The probability P (yk | xi , case2 ), which denotes the probability that this case may happen, is defined as follows. P (yk | xi , case2 ) = P (E(xi ) = 0 ∩ f (xi ) = yk | xi ).
(5)
Following the above analysis, the probability P (yk | xi ), computed by the DTL model, is presented in Eq. 6. P (yk |xi ) = P (yk | xi , case1 ) + P (yk | xi , case2 ),
(6)
which can be expanded using Eqs. 4 and 5.
3 3.1
Filter Spam Using the DTL Model Feature Extraction
At the beginning, terms are selected according to their importance for classification, which can be measured by Information Gain (IG) [7]. Bag-of-Words (BoW), also referred to as vector space model, is usually utilized as the feature extraction approach for spam filtering [8]. In BoW, an email is transformed into a d-dimensional vector x1 , x2 , . . . , xd by calculating occurrence of previously selected terms. For BoW with Boolean attribute, xi is assigned to 1 if ti occurs in the e-mail, or it is assigned to 0 otherwise. In our experiments, 300 features were selected by using IG, and a BoW with Boolean attribute was applied to the feature extraction phase. 3.2
Selection of Classifiers
Support Vector Machine (SVM) and Naive Bayes (NB) are chosen as the two grounding classifiers of the DTL model, as they are two of the most prevalent and effective classifiers especially for spam filtering [9, 10]. 3.3
Performance Measures
To validate the effectiveness of the proposed DTL model, two overall performance measures were adopted in our experiments, namely accuracy and Fβ measure [8]. The two components of Fβ measure are also given in the experiment results.
A Danger Theory Inspired Learning Model
4
387
Experiments of Spam Detection
Experiments were conducted on four benchmark corpora PU1, PU2, PU3, and PUA1 [11], using 10-fold cross validation. The corpora have been preprocessed when published, by removing attachments, HTML tags, and header fields except for the subject. The details of the corpora can be found in Ref. [11]. 4.1
The Effects of the Danger Zone
The specific interaction between the two grounding classifiers is implemented by the design of the danger zone. To some extent, the success of the DTL model lies in a proper danger zone design and an optimal size of the danger zone. In this subsection, we investigate the impact of the danger zone size on the overall performance of the DTL model. Experiments of the DTL model with different danger zone size were conducted on PU1, using 10-fold cross validation. The results are depicted in Fig. 2(a), which shows the variational performance of the DTL model, as the size of the danger zone growing larger. At initial stages, the accuracy and F1 measure increases as the size of the danger zone is enlarged. Then, the performance of the DTL model peaks at a size of 20. After that, the performance declines as the size growing even larger. 4.2
Comparison Experiments
Comparison experiments were conducted on four benchmark corpora PU1, PU2, PU3, and PUA to validate the proposed DTL model, using 10-fold cross validation. As the four corpora have already been preprocessed when published, our experiments began at the phase of feature extraction. First, 300 discriminative words were selected by using the IG method. Then based on this, each e-mail was transformed to a 300-dimensional feature vector. Finally, the two grounding classifiers were built from the feature vector set. In the experiments, two performance measures — accuray and F1 measure were adopted as mentioned in Section 3.3. Fig. 2(b) depicts the comparison of accuracy among SVM, NB and DTL, while Fig.2(c) shows the comparison of F1 measure among the three approaches. More details on the comparison are shown in Table 1, where the two components of F1 measure, namely spam recall and spam precision, are also given. Besides, the performance of NN, which was utilized in self-trigger process, is also presented in the table. On corpus PU1, PU3 and PUA, the DTL model outperforms SVM and NB in terms of both accuracy and F1 measure. On corpus PU2, the DTL model performs equally as SVM and outperforms NB. From these results, we can draw a preliminary conclusion that the proposed DTL model can effectively improve the performance of classifiers. Why does the DTL model perform not so outstandingly on corpus PU2 as it does on the three other corpora? The preliminary investigation shows that the 1
The four PU corpora can be downloaded from the web site: http://www.aueb.gr/users/ion/publications.html
388
Y. Zhu and Y. Tan
0.97
0.98
0.95
0.96 0.97
0.95 0.94
0.95 0.94
0.9 F1 Measure
Accuracy
Measure values
0.96
0.93 0.92 0.91
0.93
Recall Precision Accuracy F1
0.92 0.91 0
10
20
60 50 40 30 Size of the danger zone
70
0.9 SVM NB DTL
0.89 0.88 80
0.85
0.75 PU1
PU2
PU3
PUA
SVM NB DTL
0.8
PU1
PU2
PU3
PUA
(a) Performance of the DTL (b) Accuracy of SVM, NB (c) F1 measure of SVM, NB model with different danger and DTL on corpus PU1, and DTL on corpus PU1, PU2, PU3 and PUA PU2, PU3 and PUA zone size Fig. 2. Performance of SVM, NB and DTL on corpus PU1, PU2, PU3 and PUA Table 1. Performance of SVM, NB, NN and DTL on four PU corpora Corpus Approach Recall Precision Accuracy F1 Feature dim. SVM 95.83% 95.39% 96.06% 95.54% 300 NB 85.00% 98.30% 92.75% 91.06% 300 PU1 NN 84.17% 94.43% 90.73% 88.86% 300 DTL 96.04% 96.89% 96.88% 96.44% 300 SVM 72.86% 88.72% 92.54% 79.31% 300 NB 65.71% 91.00% 91.83% 75.60% 300 PU2 NN 45.71% 84.13% 87.32% 58.52% 300 DTL 72.86% 88.72% 92.54% 79.31% 300 SVM 94.45% 96.04% 95.79% 95.19% 300 NB 77.25% 94.03% 87.72% 84.66% 300 PU3 NN 84.51% 95.38% 91.33% 89.57% 300 DTL 94.73% 95.99% 95.88% 95.31% 300 SVM 94.56% 92.60% 93.25% 93.41% 300 NB 94.39% 93.98% 93.86% 93.95% 300 PUA NN 90.88% 86.87% 87.98% 88.39% 300 DTL 95.44% 93.93% 94.47% 94.57% 300
two grounding classifiers make more correlated error on corpus PU2 compared to other corpus. This reflects that the success of the DTL model lies in selection of uncorrelated grounding classifiers. Besides, the poor performance of the selftrigger process (NN) on PU2 is also a reason for the unideal performance of the DTL model.
5
Conclusions
In this paper, we have transplanted the main concepts of the DT into building an immune based learning model. In addition, the DTL model has been successfully applied to a typical machine learning problem – spam detection. The experimental results show that the proposed DTL model can promote the performance of
A Danger Theory Inspired Learning Model
389
grounding classifiers. In the experiments, the DTL model outperformed SVM, NB and NN in terms of both accuracy and F1 measure. In future work, we seek to incorporate other design of danger zone and selftrigger process into the DTL model, and investigate the performance of the model under different settings. In this way, we hope to obtain a more ideal model and better performance. Finally, we intend to add other signals, which can indicate the drift of knowledge, into the DTL model. In this way, we hope it can develop into an adaptive learning model. Acknowlegements. This work was supported by National Natural Science Foundation of China (NSFC), under Grant No. 60875080 and 60673020, and partially supported by the National High Technology Research and Development Program of China (863 Program), with Grant No. 2007AA01Z453.
References 1. Matzinger, P.: The danger model: a renewed sense of self. Science’s STKE 296(5566), 301–305 (2002) 2. Aickelin, U., Cayzer, S.: The danger theory and its application to artificial immune systems. In: Proceedings of the First International Conference on Artificial Immune Systems, pp. 141–148. Citeseer (2002) 3. Secker, A., Freitas, A., Timmis, J.: A danger theory inspired approach to web mining. In: Timmis, J., Bentley, P.J., Hart, E. (eds.) ICARIS 2003. LNCS, vol. 2787, pp. 156–167. Springer, Heidelberg (2003) 4. Aickelin, U., Bentley, P., Cayzer, S., Kim, J., McLeod, J.: Danger Theory: The Link between AIS and IDS? In: Timmis, J., Bentley, P.J., Hart, E. (eds.) ICARIS 2003. LNCS, vol. 2787, pp. 147–155. Springer, Heidelberg (2003) 5. Aickelin, U., Greensmith, J.: Sensing danger: Innate immunology for intrusion detection. Information Security Technical Report 12(4), 218–227 (2007) 6. Cover, T., Hart, P.: Nearest neighbor pattern classification. IEEE Transactions on Information Theory 13(1), 21–27 (1967) 7. Yang, Y., Pedersen, J.: A comparative study on feature selection in text categorization. In: Proceedings of International Conference on Machine Learning, pp. 412–420. Citeseer (1997) 8. Guzella, T., Caminhas, W.: A review of machine learning approaches to Spam filtering. Expert Systems with Applications 36(7), 10206–10222 (2009) 9. Drucker, H., Wu, D., Vapnik, V.: Support vector machines for spam categorization. IEEE Transactions on Neural networks 10(5), 1048–1054 (1999) 10. Sahami, M., Dumais, S., Heckerman, D., Horvitz, E.: A Bayesian approach to filtering junk e-mail. In: Learning for Text Categorization: Papers from the 1998 Workshop, vol. 62, pp. 98–105. AAAI Technical Report WS-98-05, Madison (1998) 11. Androutsopoulos, I., Paliouras, G., Michelakis, E.: Learning to filter unsolicited commercial e-mail. Technical report, National Centre for Scientific Research “Demokritos”, Greece (2006)
Research of Hybrid Biogeography Based Optimization and Clonal Selection Algorithm for Numerical Optimization Zheng Qu and Hongwei Mo Automation College, Harbin Engineering University, Harbin, 150001, China
Abstract. The interest of hybridizing different nature inspired algorithms has been growing in recent years. As a relatively new algorithm in this field, Biogeography Based Optimization(BBO) shows great potential in solving numerical optimization problems and some practical problems like TSP. In this paper, we proposed an algorithm which combines Biogeography Based Optimization (BBO) and Clonal Selection Algorithm (BBOCSA). Several benchmark functions are used for comparison among the hybrid and other nature inspired algorithms (BBO, CSA, PSO and GA). Simulation results show that clone selection can enhance the ability of exploration of BBO and the proposed hybrid algorithm has better performance than the other algorithms on some benchmarks. Keywords: Biogeography based optimization, Clonal selection algorithm, Optimization.
1 Introduction Nature inspired algorithms, such as Genetic Algorithm, Particle Swarm Optimization, Clonal Selection Algorithm, and Biogeography Based Optimization, have been proposed for solving optimization problems in the last few decades. The characteristics of these algorithms are different for different problems and there is no the best algorithm for all problems. So many researchers had been trying to hybridize different algorithms for more effective applications. Biogeography researches the migration of species from one isolated habitat to another, the increase and distinction of species. A good habitat has a high habitat suitability index (HSI), which is related to the factors such as rainfall, diversity of vegetation, diversity of topographic feature, land area and temperature. Suitability index variables (SIVs) are those variables characterizing habitability. A large number of species tend to be in habitats with a high HIS, while a small number in habitats with a low HSI. Species in habitats with a high HSI are more likely to emigrate to nearby habitats which means high emigration rate, simply driven by the large number of species that they host. At the same time, habitats with a high HSI have a low immigration rate because of the saturation state they already have. Therefore, the species distribution in high HSI habitats is more stable than that in low HIS habitats. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 390–399, 2011. © Springer-Verlag Berlin Heidelberg 2011
Research of Hybrid Biogeography Based Optimization and Clonal Selection Algorithm
391
Inspired by the theory, in 2008, Simon proposed Biogeography Based Optimization (BBO) inspired by concepts from biogeography[1]. BBO is mainly composed of the migration operator and the mutation operator based on immigration rate and migration rate. By the above two operators poor solutions will share some new characters from good solutions to raise the quality of those solutions. Like EAs and swarm intelligence, BBO is also a population-based optimization algorithm. However, it has unique features of maintaining the set of solution and only some local variables of solution change during the optimization process. BBO has been applied to many optimization problems. In the past two years, many improvements to BBO had been finished by Simon and some other researchers[2][3][4][5][6][7]. But there are few researches about hybrid BBO with the other algorithms. Aniruddha et al [4] presented a hybrid technique combining differential evolution with biogeography – based optimization (DE/BBO) algorithm to solve both convex and nonconvex economic load dispatch (ELD) problems. In [8], Gong et al investigated the possible combination between BBO and DE for numeric optimizations. An attempt to hybridizing BBO and PSO for Cross-Country Path Finding was discussed in [9]. A hybrid of flower pollination by artificial bees (FPAB) and BBO was propsed in [10] for Satellite Image Classification. Bhattacharya et al propsed hybrid BBO and DE for solving economic load dispatch problem[11]. In the field of Artificial Immune Systems(AIS),the clonal selection theory has been used as inspiration for the development of AIS that perform computational optimization and pattern recognition tasks. de Castro and Von Zuben [12] developed one of the most popular and widely used clonal selection inspired AIS called CLONALG, which has been used to performed the tasks of pattern matching and multi-modal function optimisation. Like negative selection, clonal selection has proven to be very popular in the AIS community spawnng a great deal of research with recent examples including [13][14][15].For the CSA, Carlos A. Coello et al [16] demonstrated an approach to hybridize Genetic Algorithm and Artificial Immune System for global optimization. In [17], Wang et al proposed a hybrid Particle Swarm Optimization (PSO) method, which is based on the fusion of the PSO, Clonal Selection Algorithm (CSA), and Mind Evolutionary Computation (MEC). We proposed a hybrid algorithm of BBO and CSA. Since the performance of the original BBO is not very good at some optimization problems, it needs to be improved in further. We use the ability of local search and diversity production of CSA to improve the optimizing ability of BBO. This paper is organized as follows. After the introduction, section 2 illustrates a brief review of BBO and CSA. Section 3 demonstrates the framework of the hybrid and pseudo-code of implementation. Section 4 reports the performance of BBOCSA on several benchmark functions in the literature, comparing with that of BBO, Clonal Selection Algorithm, PSO and GA.
2 BBOCSA 2.1 Framework of BBOCSA For balancing the exploration and exploitation of the algorithm, we hybridize Biogeography Base Optimization and Clonal Selection Algorithm because BBO has
392
Z. Qu and H. Mo
shown considerable speed of convergence while CSA has great ability in local searching. The process of the BBOCSA is as follows. Initializing: In this step, set up parameters of BBOCSA and generate a population of candidate solutions. Evaluating fitness: Calculate fitness value, corresponding to each candidate solution. At the same time, any infeasible solutions are replaced with a random feasible solution. Selection: From all solutions in the current population, the best solutions are selected for the next clone step, the number of which is a constant among the parameters in Initializing step. Clone: The selected solutions have different clonal amounts due to different fitness. The better a selected solution is, the larger its clonal amount is. Hypermutation: After the clone process, all candidate solutions have to go through hypermutation with a possibility Pm. Gaussian mutation is used here. Emigration and immigration operator: First of all, according to the fitness values, every candidate solution has a corresponding species number. Then an emigration rate and an immigration rate are obtained by employing a migration model. Termination Criterion: Terminate after some generations. Otherwise, it goes back to the step Evaluating fitness. 2.2 The Procedure of BBOCSA The parameters used in the algorithm are as follows. Algorithm 1. The main procedure of BBOCSA
1: 2: 3: 4: 5: 6: 7: 8:
Generate the initial population P Evaluate the fitness for each individual in P While the termination criterion is not satisfied Do Select the best nselect individuals in P to form new population Obtain new population by cloning the selected individuals according to clone operator Modify current population with the hypermutation operator Apply migration operator to the current population End While
Algorithm 2. Clone operator of BBOCSA
1: 2:
For i = 1 : PopSize Do CloneCount = CloneMax + 1 – i
Research of Hybrid Biogeography Based Optimization and Clonal Selection Algorithm
3: 4: 5: 6:
393
For j = 1 : CloneCount Do To duplicate one more same individual as the ith individual in P End For End For
Algorithm 3. Hypermutation operator of BBOCSA
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
For i = 1 : PopSize Do MutateRate = rand If rand < MutateRate Then For j = 1 : dimensionNum Do If rand < MutateRate Then Scale = rand * rand * (MaxParValue - MinParValue) Pi.chromj = Pi.chromj + + Scale * randn; End If End For End If End For
Algorithm 4. Migration operator of BBOCSA
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
For i = 1 : PopSize Do For each individual, map the fitness to the number of species Calculate the immigration rate λi and the emigration rate μi for each individual Pi End For For i = 1 : PopSize Do Normalize the immigration rate lambdaScale for Pi in the range of 0 and 1 For j = 1 : dimensionNum Do If rand < lambdaScale Then Select an individual Pselect to emigrate by roulette Pi.chromj = Pi.chromj + rand * rand * (PSelect.chromj - Pk.chromj) End If End For
The main process of BBOCSA is shown in Algorithm 1. Algorithm 2 and 3 give the clone operator and hypermuation operator, which are the key strategy of CSA. Algorithm 4 shows the migration operator of BBOCSA. In this step, the cloned habitats will have many copies of itself. They have high probability to mutate to be individuals with high HSIs in hypermuation process. So in the migration process,
394
Z. Qu and H. Mo
more habitats with high HSIs will share good information with those poor ones. While in the original BBO, the habitats with high HSI have no copies of themselves. The diversity of habitats is lower than that of BBOCSA. In fact, the introduction of clone strategy enhances the ability of global search and the diversity generation for BBO. In [9], Ma lists six migration models for Biogeography Based Optimization and compares the performance of the different models for solving 23 benchmark functions. We apply linear migration model for this paper.
3 Experimental Results For a clear observation and a fair judgment on the performance of BBOCSA, we employed 7 widely used benchmark functions of numerous optimizations and compared BBOCSA with BBO, CSA, PSO and GA. All of benchmark problems are 30 dimensions. Each benchmark function is run30 times and gets the statistics results. BBO is the original one without mutation operator introduced by [8].PSO is the also the one used in [8], whose inertial constant is 0.3 and whose cognitive constant, social constant for swarm interaction and social constant for neighborhood interaction are all set to 1. GA employs a single point crossover operator and a single point mutation operator. Crossover probability is 1 and mutation probability 0.01. The test results are shown in Fig.1. From Figure.1 A to G, we can see that BBOCSA shows faster convergence than BBO and CSA except Quartic_Noise. PSO and GA cannot compete with BBOCSA either on the convergence rate or the optimal solutions they found. Table1 shows the comparison results of BBOCSA with the other algorithms. It competes with the other algorithms and has relative better results on most of the test problmes. For most benchmark functions BBOCSA could not guarantee an optimal solution after termination, which means a better local searching scheme should be introduced to BBO in the future. Ackley
10
Penalty1
10
10
10
BBO PSO GA BBOCSA CSA
5
10
BBO PSO GA BBOCSA CSA
8
10
6
10
4
10
2
10
0
10
0
10
-2
10
-4
10 -5
10
-6
10
0
500
1000
1500
A
2000
2500
3000
0
500
1000
1500
2000
2500
3000
B
Fig. 1. The comparison of convergence of BBOCSA with the other optimization algorithms
Research of Hybrid Biogeography Based Optimization and Clonal Selection Algorithm
Penalty2
10
Quartic Noise
3
10
395
10
BBO PSO GA BBOCSA CSA
BBO PSO GA BBOCSA CSA
2
10
5
10
1
10
0
10 0
10
-1
10
-2
-5
10
10
0
500
1000
1500
2000
2500
3000
0
500
1000
C
2000
2500
3000
D
Rosenbrock
9
1500
Schwefel221
12
10
10
BBO PSO GA BBOCSA CSA
8
10
7
10
BBO PSO GA BBOCSA CSA
10
10
8
10
6
10
6
10 5
10
4
10 4
10
2
10
3
10
0
10
2
10
-2
1
10
10 0
500
1000
1500
2000
2500
3000
0
500
1000
E
1500
F Sphere
6
10
BBO PSO GA BBOCSA CSA
4
10
2
10
0
10
-2
10
-4
10
0
500
1000
1500
2000
G Fig. 1. (Continued)
2500
3000
2000
2500
3000
396
Z. Qu and H. Mo
Table1. The comparison BBOCSA and the other algorithms
Best
Mean
std
median
worst
Sphere
6.73E-05
2.55E-04
1.56E-04
2.31E-04
7.73E-04
Schwefel221
1.96E-03
5.13E-03
1.46E-03
4.89E-03
8.29E-03
Rosenbrock
3.18E+01
1.05E+02
4.36E+01
9.57E+01
2.08E+02
Quartic Noise
1.88E-01
3.16E-01
7.44E-02
3.14E-01
4.84E-01
Ackley
2.04E+00
6.91E+01
3.82E+01
7.95E+01
1.71E+02
Penalty1
0
0
0
0
0
Penalty2
5.23E-02
1.78E-01
6.16E-02
1.80E-01
3.33E-01
Sphere
1.359336
2.257555 2
0.585029 2
2.138380 5
3.553987
Schwefel221
4.83E-01
5.99E-01
7.86E-02
5.87E-01
7.60E-01
Rosenbrock
1.80E+03
3.65E+03
1.33E+03
3.53E+03
7.11E+03
Quartic Noise
2.19E+00
2.96E+00
3.78E-01
2.95E+00
3.96E+00
Ackley
6.98E+01
2.34E+02
7.94E+01
2.44E+02
4.55E+02
Penalty1
0.00E+00
2.17E+00
1.37E+00
2.00E+00
5.00E+00
Penalty2
3.11E-02
1.14E-01
3.95E-02
1.18E-01
1.96E-01
BBO CSA
CSA
Research of Hybrid Biogeography Based Optimization and Clonal Selection Algorithm
397
Table1. (Continued)
BBO
PSO
Sphere
0
0
0
0
0
Schwefel221
9.00E+00
1.79E+01
6.11E+00
1.80E+01
3.10E+01
Rosenbrock
1.92E+01
3.61E+01
2.28E+01
2.67E+01
8.15E+01
Quartic Noise
1.28E-06
2.29E-04
2.50E-04
1.49E-04
1.08E-03
Ackley
1.05E-01
1.99E-01
5.24E-02
1.94E-01
3.34E-01
Penalty1
1.57E-32
1.57E-32
5.57E-48
1.57E-32
1.57E-32
Penalty2
1.35E-32
1.35E-32
5.57E-48
1.35E-32
1.35E-32
Sphere
21.35909 6
27.96628 3
3.151866 9
27.40442 5
35.49424 8
Schwefel221
3.08E+01
4.10E+01
3.57E+00
4.11E+01
4.92E+01
Rosenbrock
4.63E+02
6.79E+02
1.36E+02
6.57E+02
9.42E+02
Quartic Noise
1.27E+01
2.10E+01
5.16E+00
2.09E+01
3.27E+01
Ackley
1.42E+01
1.53E+01
5.00E-01
1.54E+01
1.60E+01
Penalty1
6.83E+05
4.21E+06
2.26E+06
4.79E+06
8.82E+06
Penalty2
6.41E+06
2.55E+07
1.14E+07
2.54E+07
6.29E+07
398
Z. Qu and H. Mo Table1. (Continued)
GA
Sphere
0
0.096418 5
0.098702 9
0.065510 8
0.382986 2
Schwefel221
1.70E+01
3.63E+01
1.16E+01
3.50E+01
6.70E+01
Rosenbrock
2.82E+01
5.97E+01
2.60E+01
4.95E+01
1.33E+02
Quartic Noise
6.09E-04
7.39E+00
1.13E+01
3.95E-02
4.25E+01
Ackley
3.56E+00
8.60E+00
2.45E+00
8.46E+00
1.35E+01
Penalty1
1.57E-32
1.57E-32
5.57E-48
1.57E-32
1.57E-32
Penalty2
1.35E-32
8.33E-02
1.56E-01
1.35E-32
7.00E-01
GA
4 Conclusions and Future Work In this paper, we proposed a new hybrid algorithm which combines the biogeography and immune clone selection. The clone selection mechanism can enhance the ability of exploration of BBO. We test the algorithm by six typical functions. The simulation results show that BBOCSA is an effective hybrid optimization algorithm. We will continue to research BBOCSA in more complex problems, such as multi objective and constrained optimization problems. Acknowledgement. This paper is supported by National Nature Science Foundation of China(No. 61075113), Excellent Young Teacher Foundation of Heilongjiang (No.1155G18).
References [1] Simon, D.: Biogeography-based optimization. IEEE Trans. on Evolutionary Computation 12, 702–713 (2008) [2] Simon, D.: A Probabilistic analysis of a simplified biogeography-based optimization algorithm. Evolutionary Computation, 1–22 (2009) [3] Simon, D., Ergezer, M., Du, D.W.: Population distributions in biogeography-based optimization algorithms with elitism. In: IEEE Conference on Systems, Man, and Cybernetics, San Antonio, TX, pp. 1017–1022 (2009)
Research of Hybrid Biogeography Based Optimization and Clonal Selection Algorithm
399
[4] Ergezer, M., Simon, D., Du, D.W.: Oppositional biogeography-based optimization. In: IEEE Conference on Systems, Man, and Cybernetics, San Antonio, TX, pp. 1035–1040 (2009) [5] Du, D.W., Simon, D., Ergezer, M.: Biogeography-based optimization combined with evolutionary strategy and immigration refusal. In: 2009 IEEE International Conference on Systems, Man, and Cybernetics, San Antonio, TX, pp. 1023–1028 (2009) [6] Rarick, R., Simon, D., Villaseca, F. E., Vyakaranam, B.: Biogeography-based optimization and the solution of the power flow problem. In: IEEE Conference on Systems, Man, and Cybernetics, San Antonio, TX, pp. 1029–1034 (2009) [7] Gong, W.Y., Cai, Z.H., Ling, C.X., Li, H.: A real-coded biogeography-based optimization with mutation. Applied Mathematics and Computation 216, 2749–2758 (2010) [8] Gong, W.Y., Cai, Z.H., Ling, C.X.: DE/BBO: A Hybrid Differential Evolution with Biogeography Based Optimization for Global Numerical Optimization. In: Soft Computing - A Fusion of Foundations, Methodologies and Applications (2010) [9] Johal, N.K., Singh, S., Kundra, H.: Cross - Country Path Finding using Hybrid approach of PSO and BBO. International Journal of Computer Applications 7, 15–19 (2010) [10] Johal, N.K., Singh, S., Kundra, H.: A hybrid FPAB/BBO Algorithm for Satellite Image Classification. International Journal of Computer Applications 6, 31–36 (2010) [11] Bhattacharya, A., Chattopadhyay, P.K.: Hybrid Differential Evolution with Biogeography – Based Optimization for Solution of Economic Load Dispatch Power Systems. IEEE Transactions on Issue 25, 1955–1964 (2010) [12] De Castro, L.N., Von Zuben, F.J.: Learning and optimization using the clonal selection principle. IEEE Transactions on Evolutionary Computation 6, 239–251 (2002) [13] Cutello, V., Nicosia, G.: The clonal selection principle for in silico and in vitrocomputing. In: De Castro, L.N., Von Zuben, F.J. (eds.) Recent Developments in Biologically Inspired Computing. Idea Group Publishing, Hershey (2004) [14] de Mello Honório, L., da Silva, A.M.L., Barbosa, D.A.: A gradient-based artificial immune system applied to optimal power flow problems. In: de Castro, L.N., Von Zuben, F.J., Knidel, H. (eds.) ICARIS 2007. LNCS, vol. 4628, pp. 1–12. Springer, Heidelberg (2007) [15] May, P., Timmis, J., Mander, K.: Immune and evolutionary approaches to software mutation testing. In: de Castro, L.N., Von Zuben, F.J., Knidel, H. (eds.) ICARIS 2007. LNCS, vol. 4628, pp. 336–347. Springer, Heidelberg (2007) [16] Carlos, A., Coelloa, C., Cortésa, N.C.: Hybridizing a Genetic Algorithm with an Artificial Immune System for Global Optimization. Engineering Optimization 36, 607–634 (2004) [17] Wang, X., Gao, X.Z., Ovaska, S.J.: A Hybrid Particle Swarm Optimization Method Systems. In: IEEE International Conference on Systems, Man, and Cybernetics (SMC 2006), Taipei, pp. 4151–4157 (2006)
The Hybrid Algorithm of Biogeography Based Optimization and Clone Selection for Sensors Selection of Aircraft Lifang Xu1,2, Shouda Jiang1, and Hongwei Mo3 1
Department of Automatic Test and Control, Harbin Institute of Technology 150001 Harbin, China 2 Engineering Training Center, Harbin Engineering University 150001 Harbin, China 3 Automation College, Harbin Engineering University 150001 Harbin, China [email protected],[email protected],[email protected]
Abstract. Biogeography-based optimization algorithm(BBO) is a new kind of optimization algorithm based on Biogeography. It mimics the migration strategy of animals to solve the problem of optimization. In this paper, the clone selection strategy is combined with biogeography for solving the problem of sensors selection of aircraft. It is compared with other classical nature inspired algorithms. The comparison results show that BBOCSA is an effective algorithm for optimization problem in practice. It provides a new method for this kind of problem. Keywords: Biogeography, Biogeography-based optimization, Clone selection, Sensor selection.
1 Introduction In recent years, we have seen that many algorithms inspired by natural phenomenon or mechanisms, including evolutionary algorithms, artificial immune systems and so on. In this paper, we mainly focus on a new kind of algorithm, which is called biogeography based optimization(BBO), which is inspired by the science of biogeography. It is very interesting in that it mimics the migration process of animals to design method for solving engineering problems, especially optimization. In the early 1960s, Robert MacArthur and Edward Wilson began working together on mathematical models of biogeography. They were interested in mathematical models for the extinction and migration of species. Since their distinct work, biogeography has become a major area of research[1].Mathematical models of biogeography describe how species migrate from one island to another, how new species arise, and how species become extinct. The term “island” here is used descriptively rather than literally. That is, an island is any habitat that is geographically isolated from other habitats. Simon presented the first paper on biogeography inspired algorithm for engineering[2]. In his creative work, he merged the burgeoning field of biogeography with engineering in order to see how the two disciplines can be of mutual benefit. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 400–407, 2011. © Springer-Verlag Berlin Heidelberg 2011
The Hybrid Algorithm of Biogeography Based Optimization and Clone Selection
401
Although the idea of application of biogeography to engineering is similar to those nature inspired algorithms mentioned above, it has completely different mechanisms and process from those ones. Some researches about BBO itself and its applications had been done[3][4][5][6]. In the field of Artificial Immune Systems(AIS),the clonal selection theory has been used as inspiration for the development of AIS that perform computational optimization and pattern recognition tasks. de Castro and Von Zuben [7] developed one of the most popular and widely used clonal selection inspired AIS called CLONALG, which has been used to performed the tasks of pattern matching and multi-modal function optimisation. We proposed a hybrid algorithm of BBO and CSA to solve the problem of aircraft sensor selection. In this paper, the BBOCSA is used for sensors selection problem of aircraft. The paper is organized as follows. Section 2 reviews the ideas BBOCSA. Section 3 provides some simulation results comparing BBOCSA with other optimization methods. Section 4 presents some concluding remarks and suggestions for further work.
2 The Procedure of BBOCSA The parameters used in the proposed algorithm BBOCSA are illustrated as follows. P: the current population PopSize: the number of individuals in current population; CloneMax: the number of duplicates the best individual should be cloned; DimensionNum: the number of dimension in the numerous optimization problem randn: an operator to generate normally distributed random numbers with mean 0 and standard deviation 1. Algorithm 1. The main procedure of BBOCSA
1: 2: 3: 4: 5: 6: 7: 8:
Generate the initial population P Evaluate the fitness for each individual in P While the termination criterion is not satisfied Do Select the best n selected individuals in P to form new population Obtain new population by cloning the selected individuals according to clone operator Modify current population with the hypermutation operator Apply migration operator to the current population End While
Algorithm 2. Clone operator of BBOCSA
1: 2:
For i = 1 : PopSize Do CloneCount = CloneMax + 1 – i
402
3: 4: 5: 6:
L. Xu , S. Jiang , and H. Mo
For j = 1 : CloneCount Do To duplicate one more same individual as the ith individual in P End For End For
Algorithm 3. Hypermutation operator of BBOCSA
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
For i = 1 : PopSize Do MutateRate = rand If rand < MutateRate Then For j = 1 : dimensionNum Do If rand < MutateRate Then Scale = rand * rand * (MaxParValue - MinParValue) Pi.chromj = Pi.chromj + + Scale * randn; End If End For End If End For
Algorithm 4. Migration operator of BBOCSA
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
For i = 1 : PopSize Do For each individual, map the fitness to the number of species Calculate the immigration rate λi and the emigration rate μi for each individual Pi End For For i = 1 : PopSize Do Normalize the immigration rate lambdaScale for Pi in the range of 0 and 1 For j = 1 : dimensionNum Do If rand < lambdaScale Then Select an individual Pselect to emigrate by roulette Pi.chromj = Pi.chromj + rand * rand * (PSelect.chromj - Pk.chromj) End If End For
In geography, geographical areas that are well suited as residences for biological species are said to have a high habitat suitability index (HSI). The variables that characterize habitability are called suitability index variables (SIVs). SIVs can be considered the independent variables of the habitat, and HSI can be considered the dependent variable. Biogeography is nature’s way of distributing species, and is analogous to general problem solutions. A good solution is analogous to an island with a high HSI, and a
The Hybrid Algorithm of Biogeography Based Optimization and Clone Selection
403
poor solution represents an island with a low HSI. High HSI solutions resist change more than low HSI solutions. By the same token in BBO, suppose that we have a global optimization problem and a population of candidate individuals. The individual is represented by a D-dimensional integer vector. The population consists of NP = n parameter vectors. Each individual is considered as a “habitat” with a habitat suitability index (HSI), which is similar to the fitness of EAs, to measure the individual. A good solution is analogous to an island with a high HSI, and a poor solution indicates an island with a low HSI. High HSI solutions tend to share their features with low HSI solutions. Low HSI solutions accept a lot of new features from high HSI solutions.In TSPBBO, each individual has its own immigration rate λ and emigration rate μ . A good solution has higher μ and lower λ , vice versa. The immigration rate and the emigration rate are functions of the number of species in the habitat. The migration procedure is shown in Algorithm 4. λ and μ can be calculated as Eqn. (1) and (2). Ek μk = (1) n
⎛ ⎝
k⎞ n⎠
λ k = I ⎜1 − ⎟ where
(2)
λ s and μ s are the immigration and emigration rates when there are S species
in the habitat.
3 Benchmark Results 3.1 Sensor Selection of Aircaft An inlet supplies air to the fan. The air that leaves the fan separates into two streams, one through the engine core, and the other through the bypass duct. The fan is driven by a low-pressure turbine. The air that passes through the engine core goes through a compressor, which is driven by a high-pressure turbine. Fuel is injected and ignited in the combustor to produce hot gas that drives the turbines. The two air streams recombine in the augmentor duct, where additional fuel may be added to increase the temperature. The air leaves the augmentor at a high velocity through the nozzle (which has an adjustable cross section area) and thereby produces thrust.The engine simulation used in this paper is called Modular Aero Propulsion System Simulation (MAPSS) [8], and was written using Matlab Simulink. The controller update rate is 50 Hz. The three state variables used in MAPSS are low-pressure rotor speed, highpressure rotor speed, and average hot section metal temperature. The discretized time invariant equations that model the turbofan engine can be summarized as
x(k + 1) = f [ x(k ), u (k ), p (k )] + w x (k ) p (k + 1) = p (k ) + w p (k ) y ( k ) = g[ x( k ), u ( k ), p( k )] + e( k ) .
(3)
404
L. Xu , S. Jiang , and H. Mo
where k is the time index, is the three-element state vector,is the three-element control vector, p is the ten-element health parameter vector, and y is the measurement vector. The measurement consists of the outputs of the sensors with which we instrument the engine. The health parameters change slowly over time. Between measurement times their deviations can be approximated by the zero mean noise w p ( k ) . The noise term wx (k ) represents inaccuracies in the system model, and e(k ) represents measurement noise. We can use multiple sensors at a single location if desired. The use of more sensors results in smaller elements Σ , which means that our health estimate will be better. However, there is a point of diminishing returns. The use of more sensors costs more money, and it may not be worth the extra cost to obtain a marginally improved health estimate. The optimality criterion for the health estimation problem can, therefore, be written as 13
J =∑ i =1
∑ (i, i) + αC . ∑ (i, i) C
(4)
0
0
where Σ 0 and C 0 are reference values used for normalization. Σ 0 is the covariance that results if we use all 11 sensors with no duplicates, and C 0 is the financial cost of
fitting the aircraft engine with 11 sensors. α is a scale factor that weights the importance of financial cost relative to estimation accuracy. J is the objective function for the health estimation problem. This approach to sensor selection was first proposed using GAs [9]. When BBO is used to solve the problem, J is referred to as the HSI. In general, we want to use a total of N sensors out of K unique sensors (in our example, K =11 ) with each sensor being used no more than times. (The numerical values of N , K , and M will be problem dependent.) The total number of possible sensor sets is found by the following procedure. First, we generate a polynomial q (x ) as
q( x) = (1 + x + x 2 + ... + x M ) K = 1 + q1 x + q 2 x
2
+ ... + x
The total number of sets containing exactly
(5) MK
N sensors is equal to q N . This is
known as the multinomial theorem [10].
3.2 Results and Discussion In order to explore the benefits of BBOCSA, we compared its performance with five other population-based optimization methods, including Ant Colony Optimization (ACO), Genetic Algorithm(GA), Simple Genetic Algorithm(SGA), Particle Swarm
The Hybrid Algorithm of Biogeography Based Optimization and Clone Selection
405
Optimzation(PSO), Deferential Evolution (DE), Evolution Strategy(ES), Clone Selection Algorithm(CSA). The parameters of BBO are: habitat modification probability=1, maximum immigration and migration rates=1 for each habitat. We did some rough tuning on each of the optimization algorithms to get reasonable performance, but we did not make any special efforts to fine-tune the algorithms. For ACO, we used the following parameters: initial pheromone value τ 0 = 1E − 5 ,pheromone update constant Q = 20 , exploration constant q0 = 1 , global pheromone decay rate ρ g = 0.9 , local pheromone decay rate
ρ t = 0.5 , pheromone sensitivity
α = 2 , and visibility sensitivity β = 6 . For the GA, we used roulette wheel selection, single point crossover with a crossover probability of 0.3, and a mutation probability of 0.1. For PSO, we used initial and ending inertia weight 0.9 and 0.3 respectively, and a social constant 0.7 for swarm interaction. For the ES, we produced offspring λ = 10 each generation, and standard deviation σ = 1 for changing solutions. For CSA, we used clone rate of 0.2,mutation rate 0.1. For DE, we used a weighting factor F = 0.5 and a crossover constant 0.5.For the SGA, we used single point crossover with a crossover probability of 1, and a mutation probability of 0.01. The clone rate of BBOCSA is 0.2. The mutation rate of BBOCSA is 0.1. Each algorithm had a population size of 50, an elitism parameter of 2, and ran for 500 generations. Figure 1 shows the results of the simulations. The sensor selection problem can be solved with population-based optimization methods. A population member consists of a vector of integers, with each element in the vector representing a sensor number. The fitness or HSI of a population member is given by (7) . If an invalid sensor set arises during the optimization process due to too many of a certain sensor type, then we replace some of the duplicated sensor types with a randomly chosen sensor to enforce feasibility. We assumed here that we could use a total of 20 sensors (out of our unique 11 sensors) with each sensor being used no more than four times. The total number of sensor sets to choose from is the coefficient of in the polynomial
q( x) = (1 + x + x 2 + x 3 + x 4 )11 .
(6)
20
The coefficient of x in this polynomial is equal to 3 755 070. That is the total number of sensor sets that must be searched in order to find the minimum value of J in (5). In order to compute J for a single sensor set, we need to solve for for that sensor set. In order to solve for Σ , we need to solve a discrete algebraic Riccati equation (DARE) . This can be done with the DARE function in Matlab’s Control SystemToolbox. Table 1. The comparison results for sensor selection
Mean Best
ACO 8.230 8.229
BBO 8.025 8.021
DE 8.087 8.075
ES 8.1492 8.131
GA 8.088 8.078
CSA 8.166 8.154
PSO 8.193 8.181
BBOCSA 8.022 8.015
406
L. Xu , S. Jiang , and H. Mo
Table 1 shows the results of the optimization methods on the sensor selection problem.We see that BBOCSA performs the best in terms of both average performance and best performance. 8.45 ACO BBO DE ES GA CSA PSO BBOCSA
8.4 8.35
Minimum Cost
8.3 8.25 8.2 8.15 8.1 8.05 8
0
5
10
15
20
25 30 Generation
35
40
45
50
Fig. 1. The comparison results of BBO with the other optimization algorithms
In Fig.1, we can see that BBOCSA and BBO have the relative good performance for the sensor selection problem. And as a new method, BBOCSA shows better performance than the most other nature inspired algorithms, such as ACO, PSO, DE, ES and so on.
4 Conclusion In this paper, we have combined biogeography and immune clone selection to solve optimization problems in practice. We have applied the BBOCSA to solve the problem of sensors selection of aircraft. The results showed that it provides better performance than the other population-based methods. In future, we will focus on improving its performance on combination optimization problems and solving more complex ones in further.
References 1. Hanski, I., Gilpin, M.: Metapopulation Biology. Academic, New York (1997) 2. Simon, D.: Biogeography-based optimization. IEEE Trans. on Evo. Comp. 12, 702–713 (2008) 3. Simon, D., Ergezer, M., Du, D.W.: Markov Analysis of Biogeography Based Optimization
The Hybrid Algorithm of Biogeography Based Optimization and Clone Selection
407
4. Ergezer, M., Simon, D., Du, D.W.: Oppositional Biogeography-Based Optimization. In: IEEE Conf. on Systems, Man, and Cybernetics, San Antonio, TX, pp. 1035–1040. IEEE Press, New York (2009) 5. Du, D.W., Simon, D., Ergezer, M.: Biogeography-Based Optimization Combined with Evolutionary Strategy and Immigration Refusal. In: IEEE International Conf. on Systems, Man, and Cybernetics, San Antonio, TX, pp. 1023–1028. IEEE Press, New York (2009) 6. Bhattacharya, A., Chattopadhyay, P.K.: Solving Complex Economic Load Dispatch Problems Using Biogeography-based Optimization. Expert Systems with Applications 37, 3605–3615 (2010) 7. De Castro, L.N., Von Zuben, F.J.: Learning and optimization using the clonal selection principle. IEEE Transactions on Evolutionary Computation 6, 239–251 (2002) 8. Parker, K., Melcher, K.: The modular aero-propulsion systems simulation (MAPSS) users’ guide. NASA, Tech. Memo. 2004-212968 (2004) 9. Mushini, R., Simon, D.: On optimization of sensor selection for aircraft gas turbine engines. In: Proc. Int. Conf. Syst. Eng., Las Vegas, NV, pp. 9–14 (2005) 10. Chuan-Chong, C., Khee-Meng, K.: Principles and Techniques in Combinatorics. World Scientific, Singapore (1992)
A Modified Artificial Immune Network for Feature Extracting Hong Ge and XueMing Yan School of Computer Science, South China Normal University, Guangzhou, China [email protected]
Abstract. focusing on “distinctiveness” and “effectiveness” of algorithms inspired by natural immune system, a novel artificial immune network algorithm named immune feature extracting network (IFEN) is proposed to realize the function of feature data extracting in this paper. Based on comprehensive analysis of mechanism of natural immune system and current researching works of artificial immune system (AIS), a modified paradigm of artificial immune network (AIN) and a new mutation operation are designed to adapt to decrease the size of sample data set and extract feature data from the data set with noise. The proposed algorithm is supposed to be used as a data preprocessing method with functions of data compression and data cleansing. Preliminary experiments show that the quality of the data set processed by IFEN is apparently improved and the size is compressed. Keywords: artificial immune system, artificial immune network, feature extracting.
1 Introduction Artificial immune system is a general term for different intelligent computing approaches inspired by natural immune system. In the last two decades, a diverse set of immune inspired algorithms to solve various computational problems or tackle real world applications has been produced, and many successful works are reported[13,16]. Despite some remarkable works, the field of AIS still lacks unique and effective application domains and algorithm model, which limits the development of AIS to a large degree. Currently, three major AIS algorithms have been constantly developed and gained popularity[8]: (1) negative selection algorithms (NSA); (2) clonal algorithms (CLONALG); (3) artificial immune networks (AINE). The negative selection algorithm is based upon self/nonself discrimination of T-cells within the thymus, and mainly applied in Computer security, Virus detection etc. Clonal algorithm focused on the clonal selection principle and affinity maturation process of the adaptive immune response and is developed suitable to perform tasks such as machine learning, pattern recognition, and optimization. Artificial immune networks is inspired by immune network theory, which suggests that B-cells are capable of recognizing each other and endow the immune system with a certain type of eigenbehavior and network of communication among cell receptors. AINE is mainly applied in machine learning, pattern recognition. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 408–415, 2011. © Springer-Verlag Berlin Heidelberg 2011
A Modified Artificial Immune Network for Feature Extracting
409
Clonal selection is the theory used to explain how the immune system responds to nonself antigens. Negative selection in contrast, is one of the strategies used by the immune system to eliminate self-reactive cells, i.e. cells that recognize self antigens. Immune network theory describes how the cells of the immune system interact with other cells of the immune system. Though immune network theory was presented later, it is very interesting and can be used to explain the mechanism of immune system properly and roundly. According to this, artificial immune network can be more reasonable to be an immune inspired approach than clonal selection algorithms. Because of this, our researching work in this paper is focused on inspiration of immune network theory and based on existing artificial immune network models[4-8]. In [9], Garrett tracked the development of AIS, and followed by attempting to make assessment of the usefulness of the AIS in terms of “distinctiveness” and “effectiveness”. From this point of view, we attempt to address the function of algorithm inspired by immune system and its application domain by analyzing the functional mechanism of immune system in view of immune network theory. We suggest that feature extraction is one of the most important functions of natural immune system. Starting from this understanding, we propose a modified artificial immune network---immune feature extracting network (IFEN), which is a hybrids of AINE with CLONALG and major function is extracting feature data from a sample data set with noise, and realizes data cleansing and compression.
2 The Immune System: From Information Processing Perspective The most remarkable roles of immune system are the protection of the organism against the attack of antigen. The primary problem the immune system is faced with, is thus the recognition of these antigen. After recognizing (identifying) an antigen, the immune response arises to avoid or block the antigen, and immune memory which is the feature map of the antigen is memorized in immune system. Therefore, from information processing perspective, the immune system is a highly distributed, adaptive, and self-organizing information processing system, together with its learning, memory, feature extraction, and pattern recognition features, and offers rich metaphors for its artificial counterpart[15]. From the view of biological mechanisms, the main information processing mechanisms of immune system include: z
z
z
z
Recognition: when an antigen entering, a set of specific antibodies recognize it based on shape complementary match, and only those antibodies whose match degree, called affinity, with the antigen is over the match threshold will be activated and participate the immune response. Evolution: those activated antibodies are cloned and mutated, by this way, the affinity of whole population of activated antibodies are improved; Memory: the antibodies with highest affinity must be preserved somehow as high quality candidate solutions, and shall only be replaced by improved candidates. This immune memory would ensure that both the speed and accuracy of the immune response becomes successively greater after each infection Network: the immune network theory suggests that antibody molecules can be recognized by other antibody molecules. As an outcome of this mutual
;
410
z
H. Ge and X. Yan
recognition of antibody molecules, a network of communication named immune network arises within the immune system and forms a stable memory structure; According to this new perspective of the immune interactions, the interactions of the immune cells are going to result in a network with a natural eigen-behavior whose state will be disturbed by non-self antigens. That is to say, the immune response will cause the component of immune network changed, and in this way, the immune network will be the internal image of the invading antigens; Diversity: The number of antibodies contained in our immune system is known to be much inferior to the number of possible antigens, making the diversity and individual binding capability the most important properties to be exhibited by the antibody repertoire. The mechanism to maintain diversity of antibody repertoire is specific mutation and concentration suppression of antibodies in immune network.
It is apparent that the most important task of immune system is to recognize, extract and memorize the features of invader antigens. Based on the above mechanisms, natural immune systems can achieve the diversity of antigen recognition and specificity of antigen killing.
3 Immune Feature Extracting Network Based on the analysis of functional mechanism of immune system and current immune inspired algorithm[10-14], we propose a hybrid of AINE with CLONALG, named Immune Feature Extracting Network (IFEN). The main immune aspects taken into account to develop the algorithm are: selection and cloning of the most stimulated cells proportionally to their antigenic affinity; death of non-stimulated cells; affinity maturation and selection of cells proportionally to their antigenic affinity; and generation and maintenance of diversity. In our algorithm, antigen refers to data in sample data set, and antibody refers to data in resulting data set handling by IFEN. The IFEN works as follows: Step 1. Initialization: create an initial random population of network antibodies; Step 2. Antigenic presentation: for each antigenic pattern, do: z
z
z
z
Antibodies activation: for each network element, determine its affinity with the antigen presented. Select a number of antibodies whose affinity with the antigen are more than a pre-specified threshold(activating threshold) as activated set; save the remaining antibodies in a unactivated set. Clonal expansion: reproduce (clone) activated antibodies proportionally to their affinity; eliminate the antibodies whose clones is less than a pre-specified threshold(selecting threshold); Affinity maturation: select a number of highest affinity antibodies in activated set and place them into a memory set. Mutate each clone of the remaining activated antibodies inversely proportional to affinity; Clonal suppression: by incorporating memory antibodies with mutated antibodies, reconstruct the memory set, and then determine the concentration of each antibodies; eliminate antibodies whose concentration is more than a prespecified threshold;
A Modified Artificial Immune Network for Feature Extracting z
z
411
Network construction: incorporate the clonal memory set with unactivated antibody set, reconstruct the antibody population. Network suppression: eliminate all network antibodies whose activated counting numbers are less than a pre-specified threshold(living threshold);
Step 3. Cycle: repeat steps 2 until a pre-specified number of iterations is reached. Step 4. Output: the resulting data are output, and afforded to be sample data for further application. Several key steps of IFEN are described in details as follow: z
Affinity definition: the affinity of antigen Ag i and antibody Ab j is computed according to Eq. (1).
aff ij = 1 /(1 + d ( Ag i , Ab j ))
(1)
where d(.) denotes the Euclidian distance between Agi and Ab j . z
w j is given to each activated
Clonal expansion: an initial weight value
antibody, and keeping the total weight value of activated set unchangeable. Then clone each antibody activated antibodies according to Eq.(2) and eliminate those antibodies whose weight value are lowest; w
j
= int( w 0 × N
act
×
aff N
∑
ij
)
act
aff
(2)
ij
j =1
Where
w0 is the initial weight value of antibody; N act is the total number of
activated antibodies. z
Affinity maturation: the main function of this step is to mutate the antibodies in order to improve the affinities of these antibody, and the activated antibodies are mutated according to Eq.(3):
Ab k = Abk + β ( Ag i − Abk ) 1-
Where β k is the mutation rate, and β k = e antibody's affinity. z
N act *affik N act
(3)
, it is inversely proportional to
Clonal suppression: the concentration of antibody is evaluated according to Eq(4): N
C
Where S = ⎧1 Ab jk ⎨ jk 0 Ab ⎩
jk
j
/ max{Ab } ≥ η ; / max{Ab } < η jk
=
∑
(4)
act
S
k =1
N
jk
act
Ab jk is the affinity of Ab j and Ab k , and
jk
the concentration suppression threshold.
η
is
412
H. Ge and X. Yan
Network suppression: at the beginning of algorithm, the initial activated counting number of each activated antibody is specified to zero. During the iterations, the activated counting number add one whenever the antibody is activated once. If the activated counting number is less than a pre-specified number, the antibody will be eliminated from the antibody population.
z
4 Experiments Result and Analysis As mentioned above, the IFEN is used to extract the feature data from a data set, so we will compare the experimental results of using the feature data obtained by IFEN and the initial data set to show the effectiveness of IFEN as a data pre-processing algorithm. 4.1 The Experiments of Clustering Analysis In this experiment, a data set is generated by program as an initial data set to clustering analysis, and then a number of noise data are added to the initial data set, in this way, a test data set with noise is constructed. The clustering centers of the initial data set and the test data set are respectively determined by K-means method first. Then, processing the test data set by using IFEN, the feature data set of the test data set are obtained by applying the IFEN to the test data, and the clustering centers of the feature data set are obtained by K-means. By comparing the clustering centers of the feature data set and the test data set with the clustering centers of the initial data set, the function of IFEN as a feature data extracting method is verified. The results of the experiments are exhibited in Fig.1. 1.2
1.2
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-0.2
0
0.1
0.2
0.3
0.4
0.5
0.6
(a)
0.7
0.8
0.9
1
-0.2
-- data set with noise -- the resulting data by IFEN
0
0.2
0.4
0.6
0.8
1
1.2
1.4
(b)
Fig. 1. (a) initial data set; (b) data set with noise(i.e. The test data set) and the resulting data set(i.e. the feature data set)
A Modified Artificial Immune Network for Feature Extracting
413
From Fig.1, we can see that the size of the feature data set is apparently decreased by IFEN, the compression rate is nearly 90%. In order to confirm IFEN having function of data cleansing, we compare the clustering centers of the test data set and the feature data set with that of the initial data set, as shown in Table 1. The experiment is repeated for 20 times, and the average errors of clustering centers are calculated shown in last column. The average error of the feature data set is much less than the test data set since the noise is removed by IFEN to a large degree. Table 1. The clustering centers of each clustering data set and the average error of clustering centers clustering centers
initial data set
Clustering 1 Clustering 2 Clustering 3 Average error of clustering centers
(0.3296, 0.0456 ) (0.5076, 0.8017) (0.2722, 0.1345) (0.0000, 0.0000)
data set with noise
resulting data set by IFEN (0.3329, 0.0659) (0.4814, 0.7969) (0.2629, 0.1072) (0.0063, 0.0035)
(0.2902, 0.1008)
(0.8135, 0.7984) (0.1956, 0.8078) (0.1345, 0.1242)
It is shown that the clustering centers of the feature data set are closer to the clustering centers of the initial data set than that of the test data set. Therefore, IFEN can remove the noise in data set and realize the function of data cleansing and data compression. 4.2 Function Approximation Experiment In this experiment, randomly selecting sample data from function shown in (5), and add noise to these data, then use these data with noise as sample data to approximate the function. First, without any pre-processing, these sample data are directly used to experiment. Then, handle the data with noise by IFEN, and use the processed data as 3
3
sample data with noise the original function the result without IFEN
2
2
1.5
1.5
1
1
0.5
0.5
0
0
-0.5 -4
-3
-2
-1
0 Input x
(a)
1
2
3
sample data with noise the original function the result by IFEN
2.5
Input y
Input y
2.5
4
-0.5 -4
-3
-2
-1
0 Input x
1
2
3
4
(b)
Fig. 2. (a) function approximation with sample data not processed by IFEN; (b) function approximation with sample data processed by IFEN
414
H. Ge and X. Yan
sample data to experiment. Compare the two results to confirm that IFEN has the function of feature data extracting. The results of the experiments are exhibited in Fig.2.
f ( x) = 1.1(1 − x + 2 x 2 )e − x
2
/2
, x ∈ [− 4,4]
(5)
In Fig.2(a), the sample data with noise are not processed by IFEN, and directly used to be training data for function approximation. In Fig.2(b), the sample data with noise are processed by IFEN, and then the resulting data are used to be training data. The experimental results show that the approximation errors are using the resulting data processed by IFMN is much less than that of sample data without pre-processing, and the size of sample data is decreased after processing by IFEN. The function of IFEN is verified again.
5 Conclusion and Further Works In this paper, an attempt is done to address the problems of application domains and modeling of AIS. We have presented a so-called IFEN algorithm based on the analysis of information processing mechanism of natural system and several typical model of AIN. The approach is able to extract feature data from an initial data set with noise and realize data cleansing and data compression. The experimental results indicate that IFMN is effective in practice. The purpose of this paper is not only to propose a new AIS algorithm, but also to construct a "distinctiveness" and "effectiveness" AIS algorithm, and the latter is more important. The distinctiveness of our algorithm lies in its function of feature data extracting when most existing AIS algorithms are concerned in optimization, pattern recognition and classification etc, so its effectiveness are focused on data preprocessing method to improve the quality of the initial data set. The experiments in this paper are designed to verify the function of IFEN. However, the experiments in this paper are relatively simple ones. We suggest that IFEN can be a data preprocessing method to be applied in many different areas. More complex experiments will be done concerning different applied domains. Based on analysis of experimental results and theory of immune system, the proposed paradigm will be modified further. Mutation operation is very important for maintaining diversity and ensuring quality of antibody population, and finally effect the performance of the algorithms, so it is worth to do more researching work on this point. We are also interested in how to define the end condition of the algorithms. A general solution is to specify a running times, but it is not the most suitable one. A current weakness of the approach inspired by natural system is lacks of theoretical basis, and there will be a lot of hard and significant works to do in this field[16].
References [1] Dasgupta, D.: An overview of artificial immune systems. In: Dasgupta, D. (ed.) Artificial Immune Systems and Their Applications, pp. 3–19. Springer, Heidelberg (1998) [2] Castro, L.N.D., Timmis, J.: Artificial Immune Systems: A New Computational Intelligence Approach. Springer, London (2002)
A Modified Artificial Immune Network for Feature Extracting
415
[3] Timmis, J.: Artificial immune systems—today and tomorrow. Nat. Comput 6, 1–18 (2007) [4] Timmis, J.: Immune Systems: A Novel Data Analysis Technique Inspired by the Immune Network Theory, University of Wales, Aberystwyth, UK (2000) [5] Timmis, J., Neal, M., Hunt, J.: An artificial immune system for data analysis. Biosystems 55, 143–150 (2000) [6] Castro, L.N.d., Zuben, F.J.V.: aiNet: an artificial immune network for data analysis. In: Abbass, H.A., Sarker, R.A., Newton, C.S. (eds.) Data Mining: A Heuristic Approach, pp. 231–259. Idea Group Publishing, USA (2001) [7] Timmis, J., Neal, M.: A resource limited artificial immune system for data analysis. Knowledge Based System 14, 121–130 (2001) [8] de Castro, L.N., Timmis, J.I.: Artificial immune systems as a novel soft computing paradigm. Soft Computing 7, 526–544 (2003) [9] Garrett, S.M.: How do we evaluate artificial immune systems? Evolutionary Computation 13, 145–178 (2005) [10] Deng, J., Jiang, Y., Mao, Z.: An artificial immune network approach for pattern recognition. In: Third International Conference on Natural Computation (ICNC 2007) (2007) [11] Fu, J., Li, Z., Tan, H.-Z.: A hybrid artificial immune network with swarm learning. In: International Conference on Communications, Circuits and Systems (ICCCAS 2007) (2007) [12] Bereta, M., et al.: Comparing binary and real-valued coding in hybrid immune algorithm for feature selection and classification of ECG signals. Engineering Applications of Artificial Intelligence 20, 571–585 (2007) [13] Timmis, J., Hone, A., Stibor, T., Clark, E.: Theoretical advances in artificial immune systems. Theoretical Computer Science 403, 11–32 (2008) [14] Timmis, J., Andrews, P., Owens, N., Clark, E.: An interdisciplinary perspective on artificial immune systems. Evolutionary Intelligence 1, 5–26 (2008) [15] Hart, E., Timmis, J.: Application areas of AIS: the past, the present and the future. Applied Soft Computing 8, 191–201 (2008) [16] Dasgupta, D., et al.: Recent Advances in Artificial Immune Systems: Models and Applications. Appl. Soft Comput. J. (2010), doi:10.1016/j.asoc, 08.24
Novel Binary Encoding Differential Evolution Algorithm Changshou Deng, Bingyan Zhao, Yanling Yang, Hu Peng, and Qiming Wei School of Information Science and Technology, JiuJiang University, 332005 Jiujiang, China {csdeng,yangyanling}@jju.edu.cn
Abstract. Differential Evolution (DE) algorithm is a successful optimization method in continuous space and has been successfully applied in many different areas. The operators used in DE are simple, however, the mechanism in which the operators are defined, makes it impossible to apply the standard DE directly to the problems in binary space. A novel binary encoding DE (BDE) was proposed to extend DE for solving the optimization problems in binary space. A mixed expression, which constitutes of an arithmetical expression and a logical expression, was used to construct a new mutation operator. And then with a predefined probability, the result of the mutation operator was flipped. Initial experiment results indicate the novel BDE is useful and effective. Keywords: Discrete optimization, mutation operator, arithmetical expression, logical expression.
1 Introduction Differential Evolution (DE), proposed by Storn and Price (1997) [1], is a simple yet competitive algorithm for real parameter optimization. DE, just as most popular Evolutionary Algorithms, is a population-based method. DE generates trials by adding the scaled difference of two randomly selected vectors to the third individual. Then DE recombines the trial with its parent using a curtain probability to generate its offspring. In addition, DE employs a one-to-one spawning logic which allows replacement of an individual only if the offspring outperforms its corresponding parent. Since its inception, DE has been widely used in a variety of continuous fields. For example, Chiou et al. (2004) applied DE to power electronics [2]. Karaboga and Cetinkaya (2006) designed a filter with DE [3]. In Tirronen (2008) [4], a DE-based algorithm is implemented to design a digital filter for paper industry applications. An application to highway network capability optimization is given in Koh (2009) [5]. It has also been successfully used in chemical engineering, machine intelligence and pattern recognition [6].And it has been shown to perform better than the Genetic Algorithm (GA) or the Particle Swarm Optimization (PSO) over several numerical benchmarks [7]. Despite the simplicity and successful application in many engineering fields, its application in the domain of discrete optimization problems is still unusual. This limitation is mainly caused by the working mechanism of DE (which is based on real vectors) and the lack of a principled generalization of DE [8]. In this paper, a novel binary encoding DE was proposed. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 416–423, 2011. © Springer-Verlag Berlin Heidelberg 2011
Novel Binary Encoding Differential Evolution Algorithm
417
The rest of the paper is organized as follows. Section 2 gives a brief introduction of conventional DE. A novel BDE with binary mutation is presented in section 3. The three knapsack Problems are used to evaluate the BDE in section 4. Section 5 concludes this paper.
2 Conventional DE The DE algorithm is a kind of floating-point encoding evolutionary optimization algorithm. At present, there have been several variants of DE [1]. One of the most promising schemes, DE/Rand/1/Bin , is presented in great detail. It is supposed that we are going to find the minimization of the objective function f (x) . 2.1 Generation of Initial Population
The DE algorithm starts with the initial target population X = ( xij ) m× n with the size
of m and the dimension of
n
, which is generated by the following way.
xi j (0) = x lj + rand (0,1)( x uj − x lj ) . where i = 1,2, , m , j = 1,2, constraints respectively.
,n
,
x uj
and
x lj
(1)
denotes the upper constraints and the lower
2.2 Mutation Operator
For each target vector xi (i = 1,2,
, m) , a mutant vector is produced by
hi (t + 1) = x r1 + F ( x r 2 − x r 3 ) .
(2)
where i , r1 , r2 , r3 ∈ {1,2, … , m} are randomly chosen and must be different from each other. And F is the scaling factor for the difference between the individual x r 2 and x r 3 . 2.3 Crossover Operator
DE employs the crossover operator to add the diversity of the population. The approach is given by (3).
⎧hi (t + 1), if rand ≤ CR or j = rand (i ) ui (t + 1) = ⎨ ⎩ xi (t ), otherwise
.
(3)
where i = 1,2, , m , j = 1,2, , n , CR ∈ [0,1] is the crossover probability and rand (i ) ∈ (1,2, n) is the randomly selected number. The crossover operator can ensure at least one component of the trial individual comes from the mutation vector.
418
C. Deng et al.
2.4 Selection Operator
To decide whether the trial individual ui (t + 1) should be a member of the next generation, it is compared to the corresponding xi (t ) . The selection operator is based on the survival of the fitness among the trial individual and the corresponding one such that:
⎧u i (t + 1), if f (u i (t + 1)) < f ( x i (t )) x i (t + 1) = ⎨ ⎩ xi (t ), otherwise
(4)
In short, DE can adapt itself during the search process and find the optimum efficiently and effectively.However, the search set in the continuous domain can satisfy a closure under the mutation operation shown as formula (2). When this mutation operator is employed in the binary space, this closure cann’t be satisfied.
3 Binary Encoding DE It can be easily found that the mutation operator, denoted by the formula (2), can only be effective in real domain. When it is used for the optimization problems in the binary space, the results of the mutation operator may fall out the space. Thus the conventional DE cannot be used in discrete optimization problems directly. A Binary encoding DE with a newly defined mutation operator was proposed to deal with this problem. 3.1 New Mutation Operator
The main nature of the conventional DE is to use the difference of the between vectors to perturb one certain vector. The difference of two multi exclusive vectors is got by the mutation operator in formula (2). For the optimization problems in binary space, the elements of each vector can be regarded as logical number. Borrowing the concept of difference in continuous field, the difference of two binary numbers can be described as the result of exclusive or (XOR) of two binary digits. For instance, the truth table of XOR is shown in table 1. Table 1. XOR Truth Table X 0 0 1 1
Y 0 1 0 1
Z 0 1 1 0
In table 1, a simple way to state the exclusive disjunction is "one or the other but not both." When the X and Y are not identical, the output is 1. Hence this can be used to express the difference of the X and Y. This paper will use this to adapt the conventional DE mutation operator.
Novel Binary Encoding Differential Evolution Algorithm
419
A new mutation operator is given as formula (5). h i j ( t + 1) = MOD ( x r 1 j + ( x r 2 j
XOR
xr3 j )
(5)
where MOD is the function of Addition Modulo 2. Then with a very small probability p , hij (t + 1) was flipped as formula (6). h i j ( t + 1) = 1 − h i j ( t + 1)
(6)
Since the crossover and selection operator in the conventional DE already manipulate the vectors in discrete form, the BDE can inherit them directly. 3.2 Flowchart of the BDE
The main steps of the proposed BDE are as fellows. Step1: Generation of Binary Initial Population; Step2: New mutation operator as formula (5) and formula (6); Step3: Crossover operator as formula (3); Step4: Selection operator as formula (4) The flowchart of the BDE is presented in Fig. 1. Begin Generation of the initial binary population
Meet the termination condition?
Y
N New Mutation Operator
Crossover Operator
Selection Operator
end Fig. 1. The flowchart of BDE
420
C. Deng et al.
4 Numerical Experiments In this section, the three 0-1 knapsack problems in [9, 10] were used to test the proposed BDE initially. Since the 0-1 knapsack problems are constrained, the method in [9] was used to deal with the infeasible solutions as well. The parameters of the BDE are given in table 2. Table 2. Parameters of the BDE for the three KPs
Examples Kp1 Kp2 Kp3
Population size 20 20 20
p 0.005 0.005 0.005
CR 0.5 0.5 0.5
Maxgen 50 300 500
For each of the three knapsack problems, 50 trials have been conducted and the best results (Best), average results (Avg), worst results (Worst), standard deviations (Dev) and the success rate (SR) of the BDE are shown in Table 3. Table 3. Statistical results of the three knapsack problems
Examples Kp1 Kp2 Kp3
Best 1042 3119 26559
Avg 1041.8 3118.3 26553
Worst 1037 3113 26535
Dev 0.9897 1.512 10.2884
SR 96% 68% 72%
The results in table 3 show us that BDE can find the optimums of all the three Knapsack Problems with comparable small size of population. The best results compared with TGBDE [8] and several versions of GA [10] are also reported in table 4. Table 4. Compared Results with other Algorithms
Algorithm TGA[10] GGA[10] HGA[10] SEGA[10] TGBDE[8] BDE
KP1 1042 1042 1037 1042 1042 1042
KP2 3077 3112 3103 3116 3103 3119
KP3 25848 26559 26487 26559 26539 26559
Table 4 shows that for the three Knapsack Problems, the BDE is the only method which can find the best known optimum of each problem. Particularly, for KP2, the best result found by the BDE is the best one among the six different algorithms. In order to compare the convergence speed of the BDE with that of TGBDE [8], Using the identical initial poppulation, one run was excuted for the above each knapsack problem. The best solution against generation was recorded, as shown in Fig.2.Fig.4. respectively.
Novel Binary Encoding Differential Evolution Algorithm
1050
1000
Fitness
950 BDE TGBDE 900
850
800
750
0
5
10
15
20
25
30
35
40
45
50
Generation
Fig. 2. Best against generation for KP1 3150
3100
Fitness
3050 BDE TGBDE
3000
2950
2900
2850
0
50
100
150
200
Generation
Fig. 3. Best against generation for KP2
250
300
421
422
C. Deng et al.
4
2.7
x 10
2.6 2.5
BDE TGBDE
2.4
Fitness
2.3 2.2 2.1 2 1.9 1.8 1.7
0
50
100
150
200
250
300
350
400
450
500
Generation
Fig. 4. Best against generation for KP3
A conclusion can be drawn from the Figs 2, 3 and 4, that for the three knapsack problems used in the experiment, the convergence performance of the BDE is slightly better than that of the TGBDE. Further to evaluate the sensitivity of the probability to flip the digit, five different parameters of p are used to solve Kp2. Then 10 trials have been conducted and the best results (Best), average results (Avg), worst results (Worst), standard deviations (Dev) and the success rate (SR) of the BDE are shown in Table 5. Table 5. Five different p for Kp2
p 0.1 0.05 0.025 0.0125 0.001
Best 3118 3119 3119 3119 3119
Avg 3116.7 3118.4 3118.7 3117.2 3118.7
Worst 3116 3116 3116 3113 3117
Dev 0.9487 0.9661 0.9487 2.8983 0.6749
SR 0 60% 90% 70% 90%
The results in table 5 show us that the smaller value of the probability p , the better results can be found by the BDE.
Novel Binary Encoding Differential Evolution Algorithm
423
5 Conclusions DE is a recently developed heuristic algorithm that has been empirically proven to be very efficient for global optimization over continuous spaces. In order to extend the field of DE from the continuous domain to the binary domain, a novel BDE was proposed. In the BDE, a new mutation operator was defined to deal with binary digits. Initial experiments on the three different sizes of Knapsack Problems show it is an effective and efficient way to solve the binary optimization problems. In the future, we will investigate this novel BDE to solve other combinatorial problems such as TSP. Acknowledgments. This work is partially support by the science and Technology Foundation of Jiangxi Province, China under grant no. GJJ10616 &GJJ11616.
References 1. Storn, R., Price, K.: Differential Evolution-A Simple and Efficient Heuristic for Global Optimization over Continuous Spaces. Journal of Global Optimization 11, 241–354 (1997) 2. Liu, B., Wang, L., Jin, Y.H., et al.: Designing neural networks using hybrid particle swarm optimization. LNCS, pp. 391–397. Springer, Berlin (2005) 3. Rogalsky, T., Derksen, R.W., Kocabiyik: Differential evolution in aerodynamic optimization. In: Proc. of 46th Annual Conf. of Canadian Aeronautics and Space Institute, pp. 29–36 (1999) 4. Das, S., Konar, A.: Design of two dimensional IIR filters with modern search heuristics: a comparative study. International Journal of Computational Intelligence and Applications 6(3), 329–355 (2006) 5. Wang, F.-S., Jang, H.-J.: Parameter estimation of a bio-reaction model by hybrid differential evolution. In: Proc. of the IEEE Congress on Evolutionary Computation, USA, pp. 410-417 (2000) 6. Omran, M., Engelbrecht, Konar, A.: Differential evolution methods for unsupervised image classification. In: Proc. Seventh Congress on Evolutionary Computation. IEEE Press, Los Alamitos (2005) 7. Versterstrom, J., Thomsen, R.: A comparative study of differential evolution, particle swarm optimization, and evolutionary algorithm on numerical benchmark problems. In: Evolutionary Computation, CEC 2004, vol. 2, pp. 1980–1987. IEEE press, Portland (2004) 8. Gong, T., Tusion, L.: Differential Evolutionfor Binary Encoding. In: Soft Computing in Industrial Applications, pp. 251–262 (2007) 9. Deng, C., Zhao, B., Yang, Y., Deng, A.: Hybrid Differential Evolution for Knapsack Problem. In: Tan, Y., Shi, Y., Tan, K.C. (eds.) ICSI 2010. LNCS, vol. 6145, pp. 505–512. Springer, Heidelberg (2010) 10. Liu, Y., Liu, C.: A Schema-Guiding Evolutionary Algorithm for 0-1 Knapsack Problem. Iacsit-sc. In: 2009 International Association of Computer Science and Information Technology –Spring Conference, pp. 160–164. IEEE Press, Singapore (2009)
Adaptive Learning Differential Evolution for Numeric Optimization Yi Liu, Shengwu Xiong, Hui Li, and Shuzhen Wan School of Computer Science and Technology, Wuhan University of Technology, Wuhan 430070, China
Abstract. Differential Evolution algorithm is a simple yet reliable and robust evolutionary algorithm for numeric optimization. However, fine-tuning control parameters of DE algorithm is a tedious and time-consuming task thus became a major challenge for its application. This paper introduces a novel self-adaptive method for tuning the amplification parameters F of DE dynamically. This method sampled appropriate F value from a probabilistic model build on periodic learning experience. The performance of proposed MSDE is investigated and compared with other state-of-art self-adaptive approaches. Moreover, the influence of learning frequency of MSDE is investigated. Keywords: Differential Evolution, self-adaptive, learning experience.
1 Introduction Differential evolution (DE) algorithm, proposed by Storn and Price[1], is a simple but powerful population-based stochastic search technique for solving global optimization problems. However, the performance-critical control parameters and learning strategies involved in DE are highly dependent on the problems under consideration. For a specific task, we may have to spend huge amount of time to try through various strategies and fine-tune the corresponding parameters, and this trial-and-error process can be fallible due to the nature of human intervention. This dilemma motivates us to develop a Self-adaptive DE algorithm to solve general problems more efficiently. Recently, several Self-adaptive DE algorithms have been proposed to tackle this problem. Omran[3] proposed a Barebones DE which generate F and Pr value from a preset fine-tuned normal distribution. Qin[4] proposed SaDE algorithm which self-adapt suitable learning strategy according to the learning experience. Abbass[5].proposed a SPDE algorithm where Pr will be updated according to arithmetic combination of target vector and differential vector of Pr value. Salman [6] investigated and compared the above-mentioned algorithms empirically. This paper proposed a novel self-adaptive method for tuning the amplification parameters of DE dynamically. Inspired by Estimation of Distribution Algorithm approach[7],the proposed method sampled appropriate amplification factor value from a probabilistic model build on previous learning experience which accumulated periodically and we name the proposed self-adaptive learning algorithm My Self-adaptive Differential Evolution algorithm(referred to as MSDE in remainder of Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 424–430, 2011. © Springer-Verlag Berlin Heidelberg 2011
Adaptive Learning Differential Evolution for Numeric Optimization
425
paper).Preliminary test results show that MSDE algorithm has promising performance and is competitive to other well-known self-adaptive approaches. The reminder of the paper is organized as follows: Section 2 provides a brief description of DE. The proposed MSDE is given in Section 3. Results of the experiments are presented in Section 4. Finally, Section 5 concludes the paper.
2 Basic Differential Evolution Basic DE algorithm comprise of three major operators, namely mutation, crossover and selection. They are described briefly as followed: Mutation: According to the mutation operator of the most commonly used DE/rand/1/bin strategy [1], for each target individual xi(t), a mutant vector vi(t) is determined by the following equation,
vi (t ) = xi1 (t ) + F ( xi 2 (t ) − xi 3 (t )) .
(1)
Where i1, i2, i3 are index randomly selected from the set {1,2,…,NP}: Note that index must be mutually different from each other and from the running index i so that population size NP must be at least four. Crossover: DE follows a discrete recombination approach where elements from the parent vector xi(t) are combined with elements from the trial vector vi(t) to produce the offspring µ i(t) .Using the binomial crossover,
⎧⎪vi j (t ) if U (0,1) < Pr or j = r , ⎩⎪ xi j (t ) otherwise,
μij (t ) = ⎨
(2)
Even when Pr =0, at least one of the parameters of the offspring will differ from the parent(forced by the condition j=r). Selection: To decide whether the trial vector vi(t) should be a member of the population comprising the next generation, it is compared to the corresponding target vector xi(t); and the greedy selection strategy is adopted in DE. The selection operator is as following,
⎧μi (t ), f ( μi (t )) < f ( xi (t )) xi (t + 1) = ⎨ ⎩ xi (t ), otherwise
(3) The above 3 steps are repeated generation after generation until a pre-specified stopping criteria is satisfied.
3 My Self-adaptive Differential Evolution 3.1 Learning Strategy In this paper, we incorporated a learning frequency parameter L into proposed MSDE (Later experiment section show MSDE is insensitive to this parameter). L will determine the periodic learning span during the whole search. For every learning span
426
Y. Liu et al.
(L generations), the F value that successfully entering next generation will be collected in a F value pool. We pool all the successful F value together as a repository of learning sample and build a probabilistic model of its value distribution periodically. New F values will be generated according to this probabilistic model during the next L generation hence the value will adapt itself in accordance with different stages of search process. We assume F is normal distributed and the mean µ m and σm of this distribution is dependent on aggregated F value within pool. This normal distribution parameters will remain the same for several generations and then a new set of µ m and σm is recalibrated on update generation. An update generation is the generation where µ m and σm recalculation will be performed. In some rare case where F value pool is empty, F value will be generated according to initial distribution N(0.7, 0.3).After each update generation, the accumulated F value pool will be clear in case of previous outdated learning influence, consequently, fi,t will be generated for each individual i according to,
f i ,t = N ( μ m , σ m )
.
(4)
t denote tth generation, µ m, σm are mean and standard deviation of aggregated F value in previous L learning generations and the initial F value of every individual is generated from normal distribution N(0.7, 0.3). Parameter µ m, σm will be update at each update generation. The crossover probability Pr of MSDE will be generated according to
Pr ,i = N i (0.5,0.15)
.
(5)
the subscript i denote by Pr value is sampled anew for each individual and this will generate Pr values which fits well within the range [0,1) [6].
4 Experimental Comparison 4.1 Experimental Setting In this section, two well-known self-adaptive DE algorithm Barebones DE and Self-adaptive Pareto DE are chosen as competing candidate. No attempt was made to tune the MSDE parameters to each problem. The rationale behind this decision is the fact that in real-world applications the evaluation time is significant and as such parameter tuning is usually a time consuming process. 4 Multimodal functions and 1 unimodal functions are selected for performance assessment. Test function Rosenbrock,Ackey,Rastrigin, Griewank's function definition and variable X bounds were taken from [8],function F9's definition and X bounds came from [9]. Asymmetric Initialization method proposed by Angeline [10] is adopted in experiment to avoid accidently generating a near-optimum initial solution. The average results of 20 independent runs with different random seed are summarized in Table 1. For all the algorithms used in this section, population size NP=20. All functions were implemented in 20 dimensions except for the two-dimensional F9 function. All
Adaptive Learning Differential Evolution for Numeric Optimization
427
results are obtained through T=100000 function evaluations except for F9 function where T=100000. PC Configuration: AMD Phenom II X4 3Ghz processor with 2Gb memory and Visual C++ with boost library. Parameter Configuration: The learning frequency parameter L of msDE is fixed to 200 in all the function except for Function F9 where L=50. Pr, F in bbDE is generated according to [2]. spDE's parameter is set(all the operators dealing with multi-objective functions were removed) as to [5] accordingly. Table 1. Mean and standard deviation(±SD) of test function optimization result, upper row is mean value, lower row is standard deviation Fun. F9
Rastrigin
Rosenbrock
AckeyF1
Griewank
-0.9973
0.1492
4.0188
5.596e-015
0
0.0036
0.3553
1.4026
7.952e-015
0
-0.9979
6.631e-013
7.9386
3.109e-015
0.0023
0.0034
2.888e-012
1.4701
0
0.0045
-0.9961
0.049748
1.0734
9.681e-015
0
0.0043
0.216846
1.0147
7.476e-015
0
Algo. bbDE
msDE
spDE
Fig. 1. Function Rastrigin: fitness value comparison, averaged over 20 runs
428
Y. Liu et al.
Fig. 2. Function Rastrigin: F value comparison, averaged over 20 runs
Fig. 3. Function Rastrigin: Pr value comparison, averaged over 20 runs
Table 1 show that msDE outperform bbDE and spDE on 3 functions out of 5 total test functions. MSDE outperform bbDE and spDE on function Rastrigin significantly and it also has higher mutation rate than that of bbDE and spDE on the same function(Fig.3) while bbDE and spDE outperform msDE in unimodal function Rosenbrock and multimodal function Griewank.Since Griewank function with high dimensionality( ≥ 10 ) is unimodal function essentially,we may conclude that msDE's convergent rate is slower than that of bbDE and spDE but it has better performance on multimodal functions than bbDE and spDE . 4.2 Impact of Learning Frequency L In this section, F9 function and 5 different L values are chosen to illustrate the influence of learning frequency L on algorithm performance and the experimental results are listed below:
Adaptive Learning Differential Evolution for Numeric Optimization
429
Fig. 4. Generational comparison of different L value on Function F9 Table 2. Mean and standard deviation ( SD) of function F9 optimization result Value
Fitness mean std
F mean std
1
-0.9972 0.0036
0.6620 0.0235
25 50 100 250
-0.9982 0.0030 -0.9985 0.0022 -0.9968 0.0037 -0.9976 0.0028
0.6195 0.0450 0.6162 0.0549 0.6792 0.0084 0.6791 0.0093
L
Additional 1 degree freedom two-tailed t-test with confidence level 0.95 show that no statistically significant differences between all 5 L values as far as mean of fitness (list table above) is concerned. That means MSDE is insensitive to parameter L on function F9.Similar result can be observed on other 4 test functions(not listed due to space limit).Thus we can conclude that MSDE is relatively insensitive to its learning frequency parameter L.
5 Conclusion In this paper we proposed a self-learning MSDE algorithm which sampled appropriate F value from a probabilistic model build on previous learning experiences. The performance of proposed algorithm is investigated and compared with other well-known self-adaptive algorithms. Preliminary experimental results show MSDE is competitive to bbDE and spDE. Moreover, the influence of learning frequency L of MSDE is investigated. For future work, we intend to further examine convergence rate of MSDE algorithm and compared its various performance index to other EA algorithms.
430
Y. Liu et al.
Acknowledgements This work was supported in part by the National Science Foundation of China under grant no. 40971233.
References 1. Storn, R.: On the usage of differential evolution for function optimization. In: The North American Fuzzy Information Processing Society Conference, Berkeley, pp. 519–523 (1996) 2. Omran, M.G.H., Engelbrecht, A.P., Salman, A.: Differential Evolution Based Particle Swarm Optimization Swarm Intelligence Symposium, SIS 2007, pp. 112–119 (2007) 3. Omran, M.G.H., Salman, A., Engelbrecht, A.P.: Self-Adaptive Differential Evolution. In: Hao, Y., Liu, J., Wang, Y.-P., Cheung, Y.-m., Yin, H., Jiao, L., Ma, J., Jiao, Y.-C. (eds.) CIS 2005. LNCS (LNAI), vol. 3801, pp. 192–199. Springer, Heidelberg (2005) 4. Qin, A.: Self-adaptive Differential Evolution Algorithm for Numerical Optimization. In: IEEE Congress on Evolutionary Computation, vol. 2, pp. 1785–1791 (2005) 5. Abbass, H.: The self-adaptive pareto differential evolution algorithm. In: Proceedings of the IEEE Congress on Evolutionary Computation, pp. 831–836 (2002) 6. Omran, M.G.H., Engelbrecht, A.P., Salman, A.: Empirical Analysis of Self-Adaptive Differential Evolution. Accepted for European Journal of Operational Research (2006) 7. Sun, J., Zhang, Q., Tsang, E.: DE/EDA: New Evolutionary Algorithm for Global Optimisation. Information Sciences (169), 249–262 (2005) 8. Yao, X., Liu, Y., Lin, G.: Evolutionary programming made faster. IEEE Transactions on Evolutionary Computation 3(2), 82–102 (1999) 9. Whitley, Mathias, K., Rana, S.: Building better test functions. In: Proceedings of the Sixth Int. Conf. on Genetic Algorithms, pp. 239–246 (1995) 10. Angeline, P.: Evolutionary optimization versus particle swarm optimization: Philosophy and performance differences. In: Porto, V.W., Waagen, D. (eds.) EP 1998. LNCS, vol. 1447, pp. 601–610. Springer, Heidelberg (1998)
Differential Evolution with Improved Mutation Strategy Shuzhen Wan, Shengwu Xiong*, Jialiang Kou, and Yi Liu School of Computer Science and Technology, Wuhan University of Technology, Wuhan 430070, China [email protected]
Abstract. Differential evolution is a powerful evolution algorithm for optimization of real valued and multimodal functions. To accelerate its convergence rate and enhance its performance, this paper introduces a top-p-best trigonometric mutation strategy and a self-adaptation method for controlling the crossover rate ( CR ). The performance of the proposed algorithm is investigated on a comprehensive set of 13 benchmark functions. Numerical results and statistical analysis show that the proposed algorithm boosts the convergence rate yet maintaining the robustness of the DE algorithm. Keywords: trigonometric differential evolution, benchmark function, crossover operation.
differential
evolution,
1 Introduction Differential evolution[1] has become a popular algorithm for global optimization in various fields. It is a simple yet powerful population-based stochastic search technique which has shown superior performance not only in benchmark functions but also in real-world application[2]. It has been shown to perform better than genetic algorithm (GA)[3], and particle swarm algorithm (PSO)[4] over several benchmarks[5]. In DE, there exist many mutation strategies out of which a few can solve some particular problems. Moreover, three control parameters involved in DE, i.e., population size NP, scale factor F , crossover rate CR , will significantly influence the optimization performance of DE. A lot of research has been focused on these issues which can be found in [6]. Experimental parameter study and empirical parameters setting of DE have been carried out in [7]. The analysis of relationship between population diversity and control parameters have been investigated in [8]. In [9], Fan and Lampinen proposed a DE variant, namely trigonometric mutation differential evolution(TDE), in which, a new local search operation, trigonometric mutation, was proposed and embedded into DE. The trigonometric mutation is a rather greedy operator which can greatly speed up the convergence rate of DE. However, such an operator usually leads to a greedy algorithm prone to converging prematurely into local optima. In the TDE algorithm, the parameter M t (trigonometric mutation *
Corresponding author.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 431–438, 2011. © Springer-Verlag Berlin Heidelberg 2011
432
S. Wan et al.
probability) can maintain good balance between convergence rate and quality of solutions. Therefore, TDE has better convergence rate and can obtain an acceptable solution over some benchmark functions as well. Fan and Lampinen also point out that the trigonometric mutation operation biases the new trial individual strongly in the direction where the best one among three individuals chosen for the mutation is. In TDE, Whether the new trial individual will be prone to the best individual or to the poor individual depends on choosing of the donor individuals. If there one donor individual comes from the top p % of best individuals, the new trial individual will be prone to those individuals, and the population will converge to top p % of the best individuals. Thus, the convergence rate will be higher (proved in our experiments). But the modified trigonometric mutation operator has the danger of making the population converge to local optima. To avoid this phenomenon happening, a good number of techniques have been proposed to tune the mutation strategy and parameters such as population size NP [10] , the scale factor F , and the crossover rate CR [11, 12]. Brest et al. presented a variant of DE called JDE, using self-adaptive updating strategy of the parameter F and CR [13]. The simulation results show the JDE has better performance than some evolutionary algorithms, like FEP and CEP over 21 benchmark functions. In our paper, we introduce a top-p-best trigonometric mutation to DE to speed up the convergence process. In this method, one of the donor vectors comes from the top p % best individuals. In order to improve the population diversity and avoid trapping in local optima, we adopt the random self-adaptive parameter setting strategy of CR [13]. Computational experiments and comparisons show that the proposed algorithm performs better than TDE, standard DE and JDE[13], when applied to 13 well-known numerical benchmark functions. The rest of this paper is organized as follows: the conventional DE, TDE are reviewed in sections 2 and 3, respectively; section 4 describes the proposed algorithm; in section 5, experimental studies are present; in section 6, finally conclusions are drawn.
2 Differential Evolution There are several variants of DE[1]. In this paper, we shall follow the version of DE/rand/1/bin. This particular scheme is described as follows: Like any other evolutionary algorithm, DE starts with a population of NP candidate solutions which can be represented as the D-dimensional parameter, Xi ,G , i = 1, 2,3,..., NP , where i index denotes the i th individual of the population, G
denotes the generation to which the population belongs. NP is the number of members in a population. Successive populations are generated by adding the weighted difference of two randomly selected vectors to a third randomly selected vector. This operation is the mutation operator, and then crossover operator is employed to generate new candidate vectors. A selection scheme is employed to determine whether the offspring or the parent survives to the next generation. The process is repeated until a termination criterion is reached. The details are described as follows.
Differential Evolution with Improved Mutation Strategy
433
2.1 Mutation
The mutation operation of DE applies the vector differentials between the randomly selected vectors from the population for making a perturbation to the individual subject to the mutation operation. At generation G, for the i th target individual X i ,G , the perturbed individual Vi ,G is generated based on the three randomly selected individuals as follows: Vi ,G +1 = X r 3,G + F ∗ ( X r1,G − X r 2,G ) Where
i = 1,..., NP, r1 , r2 , r3 ∈ {1,..., NP}
are
randomly
(1)
selected
and
satisfy:
r1 ≠ r2 ≠ r3 ≠ i, F ∈ [0,1] , where F is the scale factor. 2.2 Crossover
The perturbed individual, Vi ,G +1 = ( v1,i ,G +1 ,..., vn ,i ,G +1 ) and the target population mem-
ber, X i ,G = ( x1,i ,G ,..., xn ,i ,G ) , are then subject to crossover operation to generate the
population of candidate or “trial” vectors, U i ,G +1 = ( u1,i ,G +1 ,..., un ,i ,G +1 ) , as follow: ⎧⎪v j ,i ,G +1 if rand j ≤ CR or j = k u j ,i ,G +1 = ⎨ ⎪⎩ x j ,i ,G otherwise
(2)
Where j = 1,..., n, k ∈ {1,..., n} is a random parameter’s index, chosen for each i , and the
crossover rate, CR ∈ [ 0,1] , the other control parameter is set by the user. 2.3 Selection
The selection operation selects, according to fitness value of the population vector and its corresponding trail vector, which vector will become a member of the next generation. If we have the minimization problem, the following selection rule is used: ⎧⎪U i ,G +1 if f (U i ,G +1 ) ≤ f ( X i ,G ) ⎫⎪ X i ,G +1 = ⎨ ⎬ ⎩⎪ X i ,G otherwise ⎭⎪
(3)
3 TDE In TDE algorithm[9], the trigonometric mutation operation is embedded into the basic DE to improve the convergence rate. The main difference between DE and TDE is the
434
S. Wan et al.
way the mutation operation is performed. The trigonometric mutation operation is performed according to the following formulation: Vi ,G +1 = ( X r 1,G + X r 2,G + X r 3,G ) 3 + ( p2 − p1 ) ( X r1,G − X r 2,G )
+ ( p3 − p2 ) ( X r 2,G − X r 3,G ) + ( p1 − p3 ) ( X r 3,G − X r 1,G )
(4)
Where for i = 1, 2,3 ,
pi =
f ( X i ,G ) f ( X 1, G ) + f ( X 2, G ) + f ( X 3,G )
Thus, the trigonometric mutation operation is a greedy operator that for three given points generates an offspring by exploiting the most promising directions. The performance of this operator can offer an exploitative alternative to DE. The trigonometric mutation biases the offspring strongly in the optimal directions, so the convergence rate will be accelerated. However, such an operator usually leads to the greedy algorithm prone to converge prematurely into a local optimum, there need some methods to avoid this happen. In TDE, the mutation probability M t is used for this purpose.
4 Modified Trigonometric DE It has shown that TDE has the rapid convergent process because the trigonometric mutation is a rather greedy operator, which biases the new trial solution in the direction of the best one among three donor individuals. Inspired from this, we assume that if one of donor individuals is come from the top p % best individuals within the population, the others are from 1- p % members of the population, the new trial vector will converge to top p % individuals, so the convergence rate will be higher. We call this DE variant as top-p-best TDE. The following experiments are partly proven our idea. But the experiments show that though top-p-best TDE accelerates the convergence rate, the population may prematurely lose diversity and converge to the local optima. The previous statements have been shown that JDE has very strong robustness because of its self-adaptive control parameter strategy. Compare with other self-adaptive scheme [14], this technique is simple yet effective. We apply this strategy into the crossover rate setting of our algorithm to increase the diversity of the population and avoid prematurity. For simplicity, we call our algorithm as WDE. The outline of our algorithm as follows: (1) Initialize the population, choose F and M t , and determine the initial CR . (2) Mutation operation: (2.1) Perform p-best-trigonometric mutation with Equation (4) with a probability M t (in which, one of the donor individual comes from the top p % best individuals of the population).
Differential Evolution with Improved Mutation Strategy
435
(2.2) Perform original DE’s mutation with Equation (1) with a probability (1- M t ). (3) Crossover operation: (3.1) update the crossover rate with Equation (6). (3.2) perform the crossover operation with the updated CR . (4) Evaluate the population with the object function. (5) Selection. (6) Repeat step (2) to (5) until the termination criterion is satisfied.
5 Experimental Studies 5.1 Experimental Setup
Experiments were conducted on a set of 13 benchmark functions which are detailed in literatures [13] to evaluate the proposed algorithm and three other DE algorithms. For functions f1 − f13 , 30-dimensional (30-D) were tested. The maximum number of function evaluations (FEs) is set to 150 000 for the functions f1 , f 6 , f10 , f12 , f13 , 200 000 for function f 2 , f11 , 300 000 for f 7 , 500 000 for f 3 , f 4 , f 9 , 900 000 for f8 and 2000 000 for f 5 . All experiments were run 30 times independently. The population size NP is set to 100 for all algorithms. The algorithms in the comparison are listed: Standard DE (DE/rand/1/bin): F = 0.5, CR = 0.9 ;TDE: F = 0.5 , CR = 0.9 , M t = 0.05 ; [9]Top-p-best TDE: F = 0.5, CR = 0.9, p = 1, M t = 0.05 ; Our algorithm: F = 0.5, CR = 0.9, p = 1, M t = 0.05 ; JDE[13]: F = 0.5 , CR = 0.9 , τ 1 = 0.1,τ 2 = 0.1 . 5.2 Comparison between WDE and Other DE Algorithms
Table 1 reports the results of 13 benchmark functions over 30 runs. However, it can be easily seen that on average the WDE algorithm outperforms all other compared algorithms. Table 1. Mean and standard deviation of 13 benchmark functions optimization results averaged over 30 runs, of WDE, top-p-best TDE, TDE, JDE and DE function 1 2 3 4 5 6 7 8 9 10 11 12 13
WDE Mean Best Std Dev
Top-p-best TDE Mean Best Std Dev
TDE Mean Best Std Dev
JDE Mean Best Std Dev
DE Mean Best Std Dev
6.60E-48 3.60E-40 5.70E-20 1.20E-17 0.00E+00 0.00E+00 1.80E-03 -1.30E+04 0.00E+00 7.40E-15 0.00E+00 1.60E-32 1.30E-32
2.40E-52 2.10E-32 3.30E-47 8.50E-04 8.00E-01 6.20E+00 4.10E-03 -1.10E+04 3.20E+01 1.90E+00 2.00E-02 4.10E-01 8.10E-02
2.70E-34 1.70E-28 9.90E-18 5.10E+00 6.60E-01 5.30E-01 2.10E-03 -1.20E+04 7.20E+00 1.90E-01 3.70E-03 3.50E-03 3.70E-04
2.70E-28 1.90E-23 3.90E-05 7.80E-10 2.50E-29 0.00E+00 3.00E-03 -1.30E+04 0.00E+00 8.30E-15 0.00E+00 8.60E-30 1.90E-28
1.20E-13 9.60E-10 5.40E-11 3.60E-01 3.30E-31 0.00E+00 4.70E-03 -1.20E+04 8.40E+01 1.10E-07 0.00E+00 1.30E-14 9.10E-14
1.00E-47 3.30E-40 8.70E-20 2.80E-17 0.00E+00 0.00E+00 4.20E-04 4.10E+01 0.00E+00 1.30E-15 0.00E+00 5.60E-48 1.30E-32
5.20E-52 1.10E-31 8.90E-47 2.20E-03 1.60E+00 7.10E+00 1.70E-03 4.30E+02 7.50E+00 6.00E-01 2.00E-02 5.50E-01 3.90E-01
5.90E-34 1.40E-28 3.30E-17 1.70E+00 1.50E+00 1.20E+00 7.30E-04 2.20E+02 3.10E+00 3.80E-01 6.40E-03 1.90E-02 2.00E-03
2.90E-28 1.30E-23 3.90E-05 4.00E-09 3.20E-29 0.00E+00 8.00E-04 1.90E-12 0.00E+00 1.10E-15 0.00E+00 6.00E-30 3.10E-28
1.50E-13 5.60E-10 5.20E-11 9.40E-01 1.80E-30 0.00E+00 1.20E-03 1.40E+02 3.60E+01 2.40E-08 0.00E+00 1.00E-14 7.00E-14
436
S. Wan et al.
For the unimodal functions f1 , f 3 , WDE is surpassed by top-p-best TDE, but performs much better than all other compared algorithms. This shows that top-p-best TDE has the faster convergence rate than WDE on some unimodal functions. The smallest values of functions f 2 , f 4 and f 5 are produced by WDE. On functions f 7 , f10 , f12 , f13 , the WDE algorithm is superior to all other algorithms. On functions f 6 , f8 , f9 , f11 , there is almost no significant difference between WDE and JDE, but WDE outperforms other compared algorithms. Best results yielded by WDE on functions f 7 , f10 , f12 , f13 . From Fig.2, we can observe that the proposed WDE algorithm also performs well on the convergence speed. Though the top-p-best TDE has rapid convergence rate on some unimodal test functions, it performs poorly on multimodal functions. 10
5
10
10 WDE top-p-best TDE TDE JDE DE
0
-10
10
-20
10
-30
-5
10
-10
10
-15
10
10
-40
10
WDE top-p-best TDE TDE JDE DE
0
10
Average Fitness
Average Fitness
10
-20
0
5
10
10
15
FES
0
0.5
1
1.5
4
x 10
f13
2.5 FES
3
3.5
4
4.5
5 5
x 10
f9
6
10
10
10 WDE top-p-best TDE TDE JDE DE
5
10
4
10
WDE top-p-best TDE TDE JDE DE
0
10
-10
10
3
10
Average Fitness
Average Fitness
2
2
10
1
10
-20
10
-30
10
-40
0
10
-1
10
10
-50
10
-2
10
-60
0
5
10 FES
f6
15 4
x 10
10
0
5
10 FES
15 4
x 10
f1
Fig. 1. Average Fitness comparison on functions f13 , f 9 , f 6 , f1 , over 30 runs
5.3 Discussion on Parameter p
The parameter p represents that one of donor individuals comes from top p % best individuals of population. In order to study this parameter, we set p to 1,5,10 for several benchmark functions. The Fig.2 shows that for test functions f 7 , f 2 , the mean best
Differential Evolution with Improved Mutation Strategy
437
values are smallest for p = 1 , and when p = 10 , the result is worst. However, for functions f10 , the values yielded by the proposed algorithm are no significant difference when p is set to 1,5,10. For function f 4 , when p is set to 1, 5, the fitness is almost the same, but it becomes worse when p is set to 10. It can be observed that WDE is sensitive to p for some unimodal functions, but insensitive to some multimodal functions. From our experiments, we suggest that the proposed algorithm WDE will produce the best fitness when p is set to 1. It means that all individuals will converge to the best one when using the trigonometric mutation operation. 2
10
10
10
p=1 p=5 p=10
0
10
Average Fitness
Average Fitness
10
-10
10
-20
10
0
10
-1
10
-2
-30
10
10
-3
-40
10
p=1 p=5 p=10
1
0
5
10
10
15
FES
0
0.5
1
1.5 FES
4
x 10
f12
2
2.5
3 5
x 10
f7
5
10
20
10
p=1 p=5 p=10
0
10
p=1 p=5 p=10
10
10
Average Fitness
Average Fitness
0
10
-5
10
-10
10
-10
10
-20
10 -15
10
-30
10
-20
10
-40
0
0.5
1
1.5
2
2.5 FES
f4
3
3.5
4
4.5
5 5
x 10
10
0
0.2
0.4
0.6
0.8
1 FES
1.2
1.4
1.6
1.8
2 5
x 10
f2
Fig. 2. Average Fitness when p is set to 1,5,10 respectively on functions f12 , f 7 , f 4 , f1 , over 30 runs
6 Conclusion In this paper, we proposed a new DE variant (WDE) which applied the top-p-best trigonometric mutation strategy and the self-adaptation control parameter strategy for the crossover rate (CR). The new mutation operation helps in accelerating the convergence rate of the proposed algorithm. And the crossover rate update scheme makes a trade-off between the fast convergence rate and trapping in local optima. The proposed
438
S. Wan et al.
algorithm (WDE) shows better convergence performance than other DE variants in our test over 13 benchmark functions, which are of low or high dimension, unimodal or multimodal, continuous or discontinuous.
References 1. Storn, R., Price, K.: Differential Evolution – A Simple and Efficient Heuristic for global Optimization over Continuous Spaces. J. Global Optim. 11, 341–359 (1997) 2. Babu, B.V., Angira, R.: Modified differential evolution (MDE) for optimization of non-linear chemical processes. Comput. Chem. Eng. 30, 989–1002 (2006) 3. Holland, J.H.: Adaptation in natural and artificial system: an introduction with application to biology, control and artificial intelligence. University of Michigan Press, Ann Arbor (1975) 4. Kennedy, J., Eberhart, R.: Particle swarm optimization. In: Proceedings of the 1995 IEEE International Conference on Neural Networks, pp. 1942–1948. IEEE, Perth (1995) 5. Vesterstrm, J., Thomsen, R.: A comparative study of differential evolution, particle swarm optimization, and evolutionary algorithms on numerical benchmark problems. In: Proceedings of the IEEE Congress on Evolutionary Computation, pp. 1980–1987. Electrical and Electronics Engineers Inc. (2004) 6. Neri, F., Tirronen, V.: Recent advances in differential evolution: a survey and experimental analysis. Artif. Intell. Rev. 33, 61–106 (2010) 7. Gamperle, R., Muller, S.D., Koumoutsakos, A.: A parameter study for differential evolution. Advances in Intelligent systems, Fuzzy systems, Evolutionary Computation 10,293–298 (2002) 8. Zaharie, C.: Critical values for the control parameters of differential evolution algorithms. In: 8th International Conference on Soft Computing, pp. 62–67 (2002) 9. Fan, H.Y., Lampinen, J.: A trigonometric mutation operation to differential evolution. J. Global Optim. 27, 105–129 (2003) 10. Teo, J.: Exploring dynamic self-adaptive populations in differential evolution. Soft Computing - A Fusion of Foundations, Methodologies and Applications 10, 673–686 (2006) 11. Gong, W., Fialho, L., Cai, Z.: Adaptive strategy selection in differential evolution. In: Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation, pp. 409–416. ACM, Portland (2010) 12. Pan, Q.K., Suganthan, P.N., Wang, L., Gao, L.A., Mallipeddi, R.: A differential evolution algorithm with self-adapting strategy and control parameters. Comput Oper. Res. 38, 394–408 (2011) 13. Brest, J., Greiner, S., Boskovic, B., Mernik, M., Zumer, V.: Self-adapting control parameters in differential evolution: A comparative study on numerical benchmark problems. IEEE T. Evolut. Comput. 10, 646–657 (2006) 14. Qin, A.K., Suganthan, P.N.: Self-adaptive differential evolution algorithm for numerical optimization. In: Proceedings of the IEEE Congress on Evolutionary Computation, pp. 1785–1791. IEEE, New York (2005)
Gaussian Particle Swarm Optimization with Differential Evolution Mutation Chunqiu Wan1 , Jun Wang2, , Geng Yang1 , and Xing Zhang3 1
2
Department of Automation, Tsinghua University, Beijing, China Dept. of Control Science & Engn., Tongji University, Shanghai, China 3 School of Aerospace, Tsinghua University, Beijing, China [email protected]
Abstract. During the past decade, the particle swarm optimization (PSO) with various versions showed competitiveness on the constrained optimization problems. In this paper, an improved Gaussian particle swarm optimization algorithm (GPSO) is proposed to improve the diversity and local search ability of the population. A mutation operator based on differential evolution (DE) is designed and employed to update the personal best position of the particle and the global best position of the population. The purpose is to improve the local search ability of GPSO and the probability to find the global optima. The regeneration strategy is employed to update the stagnated particle so as further to improve the diversity of GPSO. A simple feasibility-based method is employed to compare the performances of different particles. Simulation results of three constrained engineering optimization problems demonstrate the effectiveness of the proposed algorithm. Keywords: Gaussian particle swarm optimization, differential evolution, regeneration strategy, feasibility-based comparison method.
1
Introduction
Constrained optimization problems frequently appear in engineering optimization, economic, military, network and management science, etc. It is usually difficult or even impossible for the traditional methods to solve them because they could not provide the derivative information of the objective function and constraints. The evolutionary algorithms (EA) based on population have attracted much attention because they could find high quality solutions without the derivative information [1]. As a new branch of EA, the particle swarm optimization algorithm (PSO) has attracted much attention for its simpleness, efficiency and robustness [2][3]. There have been many studies for PSO on constrained optimization problems. Takahama [4][5] introduced the ε-constrained method into PSO so as to find much better solutions for constrained optimization problems and to improve
Corresponding author.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 439–446, 2011. c Springer-Verlag Berlin Heidelberg 2011
440
C. Wan et al.
the efficiency and stability of this algorithm. He [6] and Sun [7] suggested the hybrid PSO with a feasibility-based rule in order to guide the swarm to the feasible region quickly. Huang [8] and He [9] introduced the co-evolutionary mechanism into differential evolution (DE) and PSO so that the solutions and penalty coefficients could evolve interactively and self-adaptively. Liu [10] incorporated DE into PSO to force the population jump out of stagnation. Recently, Gaussian particle swarm optimization algorithm (GPSO) has shown promising results for solving constrained optimization problems [11]. However, GPSO is weak in the local searching while having high global search ability. The low local search ability may mislead the swarm from the promising region and weaken this algorithm’s optimization precision. In this paper, a mutation operator based on differential evolution (DE) is designed for the personal best solutions and the global best solution so as to improve the local search ability of GPSO and find much better solutions for constrained problems. The stagnated particle is regenerated in order to avoid getting trapped into a local optimum. The feasibility-based method is employed to compare the performances of different particles so as to find the feasible solution quickly and improve the optimization efficiency. The improved GPSO is employed to solve three engineering optimization problems to demonstrate its effectiveness. The remainder of this paper is organized as follows. Section 2 describes the improved GPSO approach. Section 3 presents the optimal results for three engineering problems to demonstrate the effectiveness of the proposed method. Section 4 makes concluding remarks and maps out the directions for future work.
2 2.1
The Improved Optimization Algorithm Gaussian Particle Swarm Optimization Algorithm
PSO is a population-based, global and stochastic optimization algorithm [12]. It T T T comprises of two parts: position matrix Z = [zT 1 , · · · , zi , · · · , zNp ] and velocity T T T matrix V = [vT 1 , · · · , vi , · · · , vNp ] . zi (i ∈ {1, · · · , Np }) represents a potential solution of the optimization problem. vi represents the modification to solution zi . “Np ” represents the population size. The position matrix Z and velocity matrix V are randomly initialized in the search space. The search for optimal position is carried out by moving toward both their own historical best positions Zp and the population’s historical best position zg . GPSO was proposed by Krohling with the purpose of improving the convergence ability of the algorithm and avoiding the necessity of tuning many parameters like the basic PSO [13][14]. The only parameter to be specified by the user was the number of particles. Each element of the velocity matrix and position matrix is usually updated by [13][14]: p (t) − zi,j (t) + |g2 | zjg (t) − zi,j (t) (1) vi,j (t + 1) = vi,j (t) + |g1 | zi,j zi,j (t + 1) = zi,j (t) + vi,j (t + 1)
(2)
GPSO with DE Mutation and Regeneration Strategy
441
where i ∈ {1, · · · , Np } is the particle index, j ∈ {1, · · · , n} is the dimension index, t ∈ {1, · · · , Tmax } is the iteration index, Tmax is the maximum number of iterations, |g1 | and |g2 | are the absolute values of random numbers generated according to the normalized Gaussian distribution N (0, 1). In this paper, if the variable value vi,j (t+1) and zi,j (t+1) generated by Eq. (1) and Eq. (2) violates the boundary constraints, they will be randomly regenerated in the search space of the corresponding variable so that the particles can avoid being concentrated on the boundary and find the global optimum more easily. 2.2
Differential Evolution Mutation
DE was introduced by Storn and Price to solve the optimization problems in continuous spaces [15][16]. This algorithm uses one main parent and two supportive parents to generate a new offspring. By linear combination of three individuals with certain probability, DE has strong local search ability. Though GPSO has strong global search ability, its local search ability is weak. In this paper, a mutation operator based on DE is designed and incorporated into GPSO to overcome its weakness so as to improve both the precision and robustness. DE is incorporated into GPSO in the following manner: In the process of optimization, if there is no improvement to the personal best zpi or the global best zg , mutation is applied to zpi or zg . As a result, a corresponding trail vector znew is yielded. Then, zpi or zg is compared with znew , and zpi or zg would be replaced by znew if znew wins. Assuming that zpi or zg is represented by zold , the rule of generation of the trial vector znew for DE mutation is as follows: znew = zpr1 + F (zpr2 − zpr3 ) zjnew
(3)
zjnew , if rcj ≤ Pm or j = rc zjold , otherwise ⎧ ⎨ zmin,j , if zjnew < zmin,j = zmax,j , if zjnew > zmax,j ⎩ new zj , otherwise
=
zjnew
(4)
(5)
where r1 = r2 = r3 = i ∈ {1, · · · , Np }(zold = zpi ) or r1 = r2 = r3 ∈ {1, · · · , Np }(zold = zg ) are three distinct random integers, F is a positive real number that represents the step length which controls the amplification of the difference vector (zpr2 − zpr3 ), j ∈ {1, · · · , n}, rcj is the uniformly distributed random number corresponding to the jth variable, Pm ∈ [0, 1] is the mutation probability which is determined by the user, rc ∈ {1, · · · , n} is a randomly chosen dimension index which ensures that at least one variable of zold is mutated. 2.3
Regeneration Strategy
In the process of optimization, if zi (t) = zpi (t) = zg (t), zi (t + 1) will be equal to zi (t). Then, particle i will stop evolving and we say that it has entered into
442
C. Wan et al.
stagnation state. In order to prevent this phenomenon and improve the probability of the algorithm to find the global optimum, the stagnated particle would be regenerated randomly in the search space by the following rule: zi,j (t) = zmin,j + rs (zmax,j − zmin,j )
(6)
where rs is the random number uniformly generated in the range of [0,1]. By this method, the stagnated particle will continue to evolve. Then, the diversity of the algorithm could be improved and the population will have more probability to find the global optimum. 2.4
Feasibility-Based Comparison Method
In this paper, the feasibility-based method is employed to compare the performances of different solutions. In this method, the objective function and constraints are treated separately, and the constraint violation precedes the objective function. The objective value and the constraints violation value of a potential solution z can be respectively represented by f (z) and ϕ(z). Supposing that f (z1 )(f (z2 )) and ϕ(z1 )(ϕ(z2 )) are the objective values and constraint violation values for two compared solutions, the comparison rules for minimization problems are – If ϕ(z1 ) = ϕ(z2 ) and f (z1 ) < f (z2 ), z1 is better than z2 . – If ϕ(z1 ) < ϕ(z2 ), z1 is better than z2 . Thus, the objective function needs to be evaluated only when the constraint violation value of solution z1 is equal to or lower than that of solution z2 . The evaluation of the objective function can often be omitted, and the computation time could be greatly cut down. The feasibility-based comparison method has the following features: – If both solutions are feasible, the one with lower objective value is better. – Feasible solution is better than infeasible one. – If both solutions are infeasible and have different constraint violation values, the one with lower constraint violation value is better. – If both solutions are infeasible and have equal constraint violation values, the one with lower objective value is better. Thus, the feasible solution will be found quickly. The feasible one with higher objective value will win in the end. 2.5
The Improved Gaussian Particle Swarm Optimization Algorithm
The framework of the improved GPSO based on DE mutation, the regeneration strategy and the feasibility-based comparison method (DGPSO) is described as Fig.1.
GPSO with DE Mutation and Regeneration Strategy
Fig. 1. The framework of DGPSO
443
444
3
C. Wan et al.
Simulation Results for Engineering Optimization Problems
In this paper, three constrained engineering problems are tested to demonstrate the effectiveness of the proposed DGPSO. These problems are Himmelblau’s problem, welded beam design problem and tension string design problem. The description of these problems were given in [1][6][9] and omitted here due to limited space. They have been used as benchmark problems for several population-based methods. Recently, Himmelblau’s problem has been solved by ε constrained particle swarm optimization (εPSO) [4], the hybrid algorithm of εPSO and εGA (εPSO-GA) [4], and εPSO with adaptive velocity limit control (adaptive εPSO) [5]. The welded beam design problem has been solved by εPSO[4], εPSO-GA [4], adaptive εPSO [5], the hybrid PSO with a feasibilitybased rule and simulation annealing (HPSO) [6], the co-evolutionary DE (CDE) [8], the co-evolutionary PSO (CPSO) [9], and the hybrid PSO with DE (PSODE) [10]. The tension string design problem has been solved by HPSO [6], CDE [8], CPSO [9], and PSO-DE [10]. In the present study, DGPSO is used to solve the above engineering problems. In the simulation, the population size is 30. The step length F is 0.8 [17], and the mutation rate Pm is 0.8. The maximum iteration Tmax is 2000. 30 independent runs are performed for each problem. Table 1∼Table 3 are the comparison of the optimal results. The columns label Best, Average, Worst and S.D. are the best value, the average value, the worst value and the standard deviation for the best particle of 30 runs. Table 1. Comparison of results for Himmelblau’s problem Algorithm εPSO εPSO-GA adaptive εPSO GPSO DGPSO
Best -31011.9988 -31016.8002 -31022.3463 -30960.692 -31025.560
Average -30947.3262 -30952.2531 -30990.3279 -30696.131 -31025.560
Worst -30762.8890 -30855.6951 -30873.6902 -30312.660 -31025.560
S.D. 55.8631 38.8166 55.8631 158.9262 0
Table 2. Comparison of results for welded beam design problem Algorithm εPSO εPSO-GA adaptive εPSO HPSO CDE CPSO PSO-DE GPSO DGPSO
Best 1.7258 1.7268 1.7249 1.724852 1.733461 1.724860 1.7248531 1.7539490 1.7248523
Average 1.8073 1.7635 1.7545 1.749040 1.768158 1.725015 1.7248579 2.5354191 1.7248523
Worst S.D. 2.1427 0.12 1.9173 0.0463 1.8558 0.0370 1.814295 0.040049 1.824105 0.022194 1.725254 1.1468e-004 1.7248881 4.1×10−6 3.6871943 0.4766 1.7248523 9.0649×10−16
GPSO with DE Mutation and Regeneration Strategy
445
Table 3. Comparison of results for tension string design problem Algorithm HPSO CDE CPSO PSO-DE GPSO DGPSO
Best 0.0126652 0.0126702 0.012681 0.0126652 0.0126822 0.0126652
Average 0.0127072 0.012703 0.012931 0.0126653 0.0146816 0.0126652
Worst 0.0127191 0.012790 0.013308 0.0126653 0.0177344 0.0126652
S.D. 1.5824×10−5 2.7×10−5 1.5667×10−4 1.2×10−8 1.7484×10−3 1.6457×10−18
Based on the above comparisons, DGPSO showed the best performance for these three engineering optimization problems. It finds not only the best optima for all three problems but also very low standard deviation for each problem. Among the 30 independent runs, the average number of objective function evaluations is 37149 with 119742 efficient particles movements for Himmelblau’s problem, 49285 with 117497 for welded beam design problem, and 49285 with 117497 for tension string design problem. It shows that DGPSO is an efficient method for locating the global optimum.
4
Conclusions and Future Works
In this paper, an improved Gaussian particle swarm optimization algorithm is proposed for constrained optimization problems. In order to demonstrate the effectiveness of the proposed method, it is applied to solve three engineering problems. Simulation results illustrate that the proposed method is more accurate and robust than the compared algorithms. The number of objective function evaluations by the proposed method is less than half of that of efficient particles movements. The computational execute time is greatly cut down, which is very important for complicated optimization problems. In the future, DGPSO will be applied to the wind farm micro-siting problem in a spatially- continuous manner. Selection of the mutation probability will be an important work for this complicated engineering problem.
Acknowledgment This work was supported in part by the National High Technology Research and Development Program of China (863 Program) under Grant No. 2007AA05Z426 and the National Natural Science Foundation of China under Grant No. 61075064.
References 1. Coello Coello, C.A.: Theoretical and numerical constraint-handling techniques used with evolutionary algorithms: a survey of the state of the art. Computer Methods in Applied Mechanics and Engineering 191(11-12), 1245–1287 (2002)
446
C. Wan et al.
2. Eberhart, R.C., Shi, Y.: Particle swarm optimization: developments, applications and resources. In: Congress on Evolutionary Computation, Kennedy (2001) 3. Schutte, J.F., Groenwold, A.A.: A study of global optimization using particle swarms. Global Optimization 31(1), 93–108 (2005) 4. Takahama, T., Sakai, S., Iwane, N.: Constrained optimization by the ε constrained hybrid algorithm of particle swarm optimization and genetic algorithm. In: Zhang, S., Jarvis, R.A. (eds.) AI 2005. LNCS (LNAI), vol. 3809, pp. 389–400. Springer, Heidelberg (2005) 5. Takahama, T., Sakai, S., Iwane, N.: Solving constrained optimization problems by the constrained particle swarm optimizer with adaptive velocity limit control. In: IEEE Conference on Cybernetics and Intelligent Systems, pp. 1–7 (2006) 6. He, Q., Wang, L.: A hybrid particle swarm optimization with a feasibility-based rule for constrained optimization. Applied Mathematics and Computation 186, 1407–1422 (2007) 7. Sun, C., Zeng, J., Pan, J.: An improved particle swarm optimization with feasibility-based rules for constrained optimization problems. In: Chien, B.-C., Hong, T.-P., Chen, S.-M., Ali, M. (eds.) IEA/AIE 2009. LNCS, vol. 5579, pp. 202–211. Springer, Heidelberg (2009) 8. Huang, F., Wang, L., He, Q.: An effective co-evolutionary differential evolution for constrained optimization. Applied Mathematics and Computation 186, 340–356 (2007) 9. He, Q., Wang, L., Huang, F.: Nonlinear constrained optimization by enhanced coevolutionary PSO. In: IEEE World Congress on Computational Intelligence, pp. 83–89 (2008) 10. Liu, H., Cai, Z., Wang, Y.: Hybridizing particle swarm optimization with differential evolution for constrained numerical and engineering optimization. Applied Soft Computation 10, 629–640 (2010) 11. Krohling, R.A., Coelho, L.D.S.: Coevolutionary particle swarm optimization using Gaussian distribution for solving constrained optimization problems. IEEE Transactions on Systems, Man, and Cybernetics-Part B: Cybernetics 36(6), 1407–1416 (2006) 12. Kennedy, J., Eberhart, R.C.: Particle swarm optimization. In: IEEE International Conference on Neural Networks, Perth, Australia, vol. 4(6), pp. 1942–1948 (1995) 13. Krohling, R.A.: Gaussian swarm: a novel particle swarm optimization algorithm. In: IEEE Conference on Cybernetics and Intelligence Systems, Singapore, pp. 372– 376 (2004) 14. Krohling, R.A., Hoffmann, F., Coelho, L.D.S.: Co-evolutionary particle swarm optimization for min-max problems using Gaussian distribution. In: Congress on Evolutionary Computation, vol. 1, pp. 959–964 (2004) 15. Storn, R., Price, K.: Differential evolution – a simple and efficient heuristic for global optimization over continuous spaces. Global Optimization 11, 341–359 (1997) 16. Das, S., Suganthan, P.N.: Differential evolution - a survey of the state-of-the-art. IEEE Transactions on Evolutionary Computation (2010) 17. Soliman, O.S., Bui, L.T., Abbass, H.A.: The effect of a stochastic step length on the performance of the differential evolution algorithm. In: IEEE Congress on Evolutionary Computation, pp. 2850–2857 (2007)
Evolving Neural Networks: A Comparison between Differential Evolution and Particle Swarm Optimization Beatriz A. Garro1, Humberto Sossa1, and Roberto A. Vázquez2 1
Centro de Investigación en Computación – IPN Av. Juan de Dios Bátiz, esquina con Miguel de Othón de Mendizábal Ciudad de México, 07738, México 2 Intelligent Systems Group, Facultad de Ingeniería – Universidad La Salle Benjamín Franklin 47 Col. Condesa CP 06140 México, D.F [email protected], [email protected], [email protected]
Abstract. Due to their efficiency and adaptability, bio-inspired algorithms have shown their usefulness in a wide range of different non-linear optimization problems. In this paper, we compare two ways of training an artificial neural network (ANN): Particle Swarm Optimization (PSO) and Differential Evolution (DE) algorithms. The main contribution of this paper is to show which of these two algorithms provides the best accuracy during the learning phase of an ANN. First of all, we explain how the ANN training phase could be seen as an optimization problem. Then, we explain how PSO and DE could be applied to find the best synaptic weights of the ANN. Finally, we perform a comparison between PSO and DE approaches when used to train an ANN applied to different non-linear problems.
1 Introduction A feed-forward artificial neural network (ANN) is a powerful tool widely used in the field of pattern recognition and time series analysis. However, despite their power in some practical problems, ANNs cannot reach an optimum performance in several non-linear problems. This fact is caused because the parameters, used during learning phase such as learning rate, momentum, among others, do not allow computing the best set of synaptic weights. In the field of the evolutionary computation, there are many algorithms that allow obtaining an optimum (or more) of a specific problem. One of these techniques is the Differential Evolution (DE) algorithm, based on the classical steps of the Evolutionary Computation. DE performs mutation based on the distribution of the solutions in the current population. In this way, search directions and possible step-sizes depend on the location of the individuals selected to calculate the mutation values. On the other hand, the Particle Swarm Optimization (PSO) algorithm is inspired by observations of social interaction. PSO operates on a population of particles (that are the individuals), evolving them over a number of iterations with the goal of finding a solution to an optimization function. This metaphor searches an optimum solution based on the self and social experience of the best particle of the population. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 447–454, 2011. © Springer-Verlag Berlin Heidelberg 2011
448
B.A. Garro, H. Sossa, and R.A. Vázquez
Several works that use evolutionary strategies for training ANNs have been reported in the literature. For example, in [1], the authors combine PSO and ANNs for function approximation. Another application presented in [2] is a PSO-based neural network in the analysis of outcomes of construction claims in Hong Kong. Other examples can be found in [3], [4], [5], [6], [7] and [8]. DE algorithm has been less used in this kind of work. For example, Ilonen et al [9], propose the learning of an ANN by finding the synaptic weighs through the classical DE. Other examples can be found in [10] and [11]. In [12], it shows a large literature review where the evolutionary algorithms are used to evolve the synaptic weights. In this paper, we compare the accuracy of PSO and DE algorithms during training the synaptic weights of ANN when applied to solve different classification problems. All of this, in order to determine which algorithm is better in the task of adjusting the synaptic weights of an ANN. This comparative is important because these two algorithms have got a different scheme each one. The way to manipulate the data for doing a new population is the key to find a good solution. The task of training a set of synaptic weights for an ANN is an essential aim and using these two algorithms when observing the ANN behavior. The aim of this paper is to explain how the neural network training phase could be seen as an optimization problem and how PSO and DE could be applied to find the best synaptic weights of the ANN. In the next section, we present a basic definition of an ANN. In section 3 basic PSO algorithm functioning is explained, while section 4 is devoted for DE algorithm. In section 5, we explain how PSO and DE could be applied to find the best synaptic weights of the ANN. In section 6 we perform a comparison between several ANNs trained by means of PSO and DE algorithms, when applied to solve different non-linear problems. In section 7, we finally give the conclusions of those experimental results.
2 Basics on Feed-Forward Neural Networks A basic description of an ANN can be: a massively parallel-distributed processor made up from simple processing units. This type of processing unit performs in two stages: weighted summation and some type of nonlinear function. Each value of an input pattern A ∈ N is associated with its weight value W ∈ N , which is normally between 0 and 1. Furthermore, the summation function often takes an extra input value θ with weight value of 1 to represent threshold or bias of a neuron. The summation function will be then performed as,
⎛ N ⎞ y = f ⎜ ∑ ai wi + θ ⎟ ⎝ i =1 ⎠
(1)
The sum-of-product value is then passed into the second stage to perform the activation function f ( x ) which generates the output from the neuron and determines the behavior of the neural model. In a multilayer structure the input nodes, which received the pattern x ∈ N , the units in the first hidden layer, then the outputs from the first hidden layer are passed to the next layer, and so on until they reach the output layer and produce an approximation of the desired output y ∈ M .
Evolving Neural Networks
449
Basically, learning is a process by which the free parameters (i.e., synaptic weights W and bias levels θ ) of an ANN are adapted through a continuous process using a labeled set of training data made up of p input-output samples:
Tξ =
{( x
ξ
∈
N
, dξ ∈
M
)} ∀ξ = 1,… , p
(2)
where x is the input pattern and d the desired response.
Tξ , compute the free parameters of the neural network ξ ξ so that the actual output y of the neural network due to x is close enough to dξ for all ξ in a statistical sense. In this sense, we might use the mean-square error Given the training sample
given in eq. 3 as the objective function to be minimized:
e=
1 p⋅M
( d ξ − yξ ) ∑∑ ξ p
M
=1 i =1
i
2
i
(3)
3 Basics on Particle Swarm Optimization PSO algorithm is a method for the optimization of continuous non-linear functions proposed by James Kennedy and Russell C. Eberhart. This algorithm is inspired on observations of social and collective behavior as well as fish schooling or bird flocking [13]. For example, a population or a flock could be considered as a cumulus of particles i where each particle represents the position xi of a particle in a multidimensional space. These particles (individuals) also represent a possible solution of a specific function optimization. According to a velocity function v i which takes into account the best position of a particle in a population p g (i.e., social component) as well as the own best position of the particle p i (i.e., cognitive component) the particles will move each iteration to a different position until they reach an optimum position. At each time step t , the velocity of a particle i is updated using
v i ( t + 1) = ω v i ( t ) + c1r1 ( pi ( t ) − xi ( t ) ) + c2 r2 ( p g ( t ) − xi ( t ) )
(4)
where ω is the inertia weight and typically setup to vary linearly from 1 to near 0 during the course of an iteration run; c1 and c2 are acceleration coefficients; r1 ∼ U ( 0,1) and r2 ∼ U ( 0,1) are uniformly distributed random numbers in the range ( 0,1) . The velocity
v i is limited to the range [ vmin , vmax ] . Updating the velocity in this way en-
ables the particle i to search around its individual best position p i , and the global best position p g . Based on the updated velocities, the new position of the particle i is computed using
xi ( t + 1) = xi ( t ) + v i ( t + 1) .
(5)
450
B.A. Garro, H. Sossa, and R.A. Vázquez
Finally, this optimum position will be the solution which maximizes or minimizes an objective function. The basic PSO algorithm for the real version could be performed as follows: Given a population of 1) 2)
xi ∈
D
, i = 1,…, M individuals
Initialize the population at random Until a stop criterion is reached: a) For each individual x i evaluate their fitness.
i , update its best position p i . i , update the best individual p g . d) For each individual i , compute the velocity update equation v i ( t + 1) and then compute the current position xi ( t + 1) . b)
For each individual
c)
From all individual
4 Basics on Differential Evolution In 1995 an adaptive and efficient scheme emerged: Differential Evolution algorithm, proposed by Kenneth Price and Rainer Storn, useful for Global Optimization over continuous spaces [14]. With this precedent, it was opened a new optimization technique in Evolutionary Computation. Due to its exploration capacity over a search space of a given problem, the DE algorithm avoids staying in a local optimum. It has few parameters and it converges to the optimum faster than others evolutionary techniques (the solution’s representation is given by vectors of real numbers). All these characteristics convert DE into an excellent optimization algorithm of a complex, non-differential and non-continuous problems. The pseudo code of “DE/rand/1/bin” is shown in the next algorithm adapted from [15]. 1. 2. 3. 4.
Randomly select two vectors from the current generation. Use these two vectors to compute a difference vector. Multiply the difference vector by weighting factor F. Form the new trial vector by adding the weighted difference vector to a third vector randomly selected from the current population.
5 Evolving the Synaptic Weights of an ANN Using PSO and DE In this section, we describe how given a set of patterns T , the synaptic weights of an ANN can be automatically adjusted by means of a basic PSO and DE. The architecture of the ANN has to be previously defined because we only evolve the synaptic weights and the architecture must be static. The synapses weights of the ANN are codified based on a vector that represents a graph x . The vector is a solution composed with the set of synaptic weights wik, j between neuron i and neuron j that belongs to the layer k , until a maximum number of neurons MNN. This vector represents an individual (particle or solution) of the population that will be evolved by PSO. The individual (see Fig. 1) has a set of values that change with respect to time and each
Evolving Neural Networks
451
individual is evaluated in the fitness function in order to calculate the minimum square error generated by the ANN which maximizes the performance. The individual whose weights provoke the minimum value of the MSE will be the best solution for the trained ANN. This individual’s representation is used by the two algorithms: PSO and DE.
Fig. 1. Representation of an individual composed of a set of synaptic weights
Due to we are working with predefined feed-forward architectures, the fitness function which measures the performance of an individual is given by eq. 3 where the output yi of the ANN is computed by means of equation 1.
6 Experimental Results In order to evaluate the accuracy of the PSO and DE algorithms, several experiments were performed. Three well-known data-sets were taken from the UCI machine learning benchmark repository [16] to test the algorithms: iris plant, wine and breast cancer datasets. Also a real object recognition problem composed of 100 images of five different objects was used. All datasets were randomly partitioned into two sets: 50% for the training data and 50% for the testing data. The input features of all data set were rescaled in a range between [ 0,1] and the outputs were encoded by a winner-take-all representation. There are two conditions for the algorithm to stop: when it achieves the total number of generations, and when the algorithm achieves a MSE = 1× 10−10 . This last condition can be replaced using a validation set. Before starting with the experiments, we defined the parameters of the three algorithms. For the case of the basic PSO algorithm, the population size M was set to 50, the number of generations was set to 4000, the initial position of the particles was in the range [ −40, 40] , velocity range [ −2, 2] , ω = 0.729 , c1 = c2 = 2 . For the case of the basic DE algorithm, the population size NP = 50 , number of generations was set to 4000, the population was initialized in the range [ −40, 40] , CR = 0.9 , and F = rand [0.3, 0.7] . These parameters were set to the same value for all the experiments according to the literature ( ω , c1 , c2 , F and CR ). The others were defined by means of our criteria
452
B.A. Garro, H. Sossa, and R.A. Vázquez
and considering the limits of the numeric representations in the computer. The velocity range is different from 0 and not so big, in order to obtain possible directions without big displacements that can affect particle’s movement. Before starting to evolve the synaptic weights, it was necessary to determine the architecture of the ANN. In this case, we decided to use an ANN with three layers: the input, the output and one hidden layer compose of five neurons. Ten experiments for each dataset were performed to measure the accuracy of the proposed method. Figs. 2 and 3 show the percentage of recognition achieved with the ANN applied to solve the four problems by means of PSO and DE. The two algorithms found the best sets of synaptic weights that minimized the MSE of the ANN. After that, the classification error (CER) was calculated. Fig. 2 shows the accuracy of the ANN trained with the PSO algorithm. As it can be observed from this figure, the best recognition percentages were achieved for the Iris plant and for the breast cancer data set, see Fig. 2 (a) and (c) respectively. For the case of the object recognition problem using PSO, the percentage of recognition was not as good as desired (Fig. 2 (d)). Furthermore, for the case of the wine data set, the percentage of recognition achieved by the ANN was the worst.
(a)
(b)
(c)
(d)
Fig. 2. Accuracy of the ANN using PSO algorithm. (a)Iris plant data set. (b)Wine data set. (c)Breast cancer data set. (d)Real object recognition data set.
Fig. 3 shows the accuracy of the ANN trained with the DE algorithm. Using this algorithm we can appreciate that the percentage of recognition for all the data sets was much better than the results obtained by PSO algorithm. Besides this, for the real object recognition problem, see Fig. 3(d), DE algorithm could obtain a percentage of recognition over the 90% in comparison with other results (Fig.3 (a), (b) and (c)). In addition to this, from Table 1 the reader can appreciate the average classification error (CER) for all experimental results just as the standard deviation for training phase and
Evolving Neural Networks
453
testing phase. The results show that the best technique for evolving the synaptic weights of an ANN was the DE algorithm. This could be due to PSO algorithm has more parameters to tune than DE algorithm.
(a)
(b)
(c)
(d)
Fig. 3. Accuracy of the ANN using DE algorithm. (a)Iris plant data set. (b)Wine data set. (c)Breast cancer data set. (d)Real object recognition data set. Table 1. Average and standard deviation applying the CER Data base Iris plant Wine Breast Cancer Object Recognition
PSO algorithm Tr. Er. 0.072 ± 0.124 0.589 ± 0.026 0.014 ± 0.026 0.424 ± 0.086
Te. Er. 0.116 ± 0.130 0.612 ± 0.026 0.037 ± 0.008 0.482 ± 0.094
DE algorithm Tr. Er. 0.004 ± 0.006 0±0 0.013 ± 0.015 0.156 ± 0.074
Te. Er. 0.058± 0.026 0.047 ± 0.021 0.032 ± 0.017 0.2 ± 0.092
Tr. Er = Training Error, Te. Er. = Testing Error.
7 Conclusions In this paper, we compared two powerful bio-inspired algorithms in order to determine which one is more suitable to train an ANN: PSO and DE. This is very important because the training of an ANN is one of the keys issues to obtain a good generalization, and it is necessary to know the behavior of the evolutionary algorithms in the basic design of an ANN. We explained in detail how the ANN’s training phase could be seen as an optimization problem. Then, it was explained how PSO and DE could be applied to find the optimal synaptic weights of the neural network. Finally, we performed a comparison between a neural network trained with the PSO and DE algorithms, when applied to solve different non-linear pattern classification problems.
454
B.A. Garro, H. Sossa, and R.A. Vázquez
Through several experiments, we observed that DE algorithm was better in searching the best set of synaptic weights. This does not mean that PSO is not useful in this task, but it requires to determine the best set of parameters that improve its performance. For future woks, we need to test the experimentation applying PSO algorithm with neighborhoods due to this improvement avoid to be trapped in a local minimums. Acknowledgements. H. Sossa thanks SIP-IPN, COTEPABE and DAADPROALMEX for economical support. Authors also thank the European Union, the European Commission and CONACYT for the economical support. This paper has been prepared by economical support of the European Commission under grant FONCICYT 93829. The content of this paper is an exclusive responsibility of the CIC-IPN and it cannot be considered that it reflects the position of the European Union.
References [1] Tejen, S., Jyunwei, J., Chengchih, H.: A Hybrid Artificial Neural Networks and Particle Swarm Optimization for Function Approximation. International Journal of Innovative Computing, Information and Control ICIC 4, 2363–2374 (2008) [2] Chau, K.W.: Application of a PSO-based neural network in analysis of outcomes of construction claims. Automation in Construction 16, 642–646 (2007) [3] Chatterjee, A., et al.: A Particle Swarm Optimized Fuzzy-Neural Network for Voice Controlled Robot Systems. IEEE Trans. on Ind. Elec. 52, 1478–1489 (2005) [4] Wang, Z., et al.: Particle Swarm Optimization and Neural Network Application for QSAR. In: Proceedings 18th Parallel and Distributed Processing Symposium (2004) [5] Zhao, L., Yang, Y.: PSO-Based Single Multiplicative Neuron Model for Time Series Prediction. Expert Systems with Applications 36, 2805–2812 (2009) [6] Da, Y., Ge, X.R.: An improved PSO–based ANN with simulated annealing technique. Neurocomput. Lett. 63, 527–533 (2005) [7] Yu, J., et al.: An Improved Particle Swarm Optimization for Evolving Feedforward Artificial Neural Networks. Neural Processing Letters 26, 217–231 (2007) [8] Mohaghegi, S., et al.: A comparison of PSO and backpropagation for training RBF neural networks for identification of a power system with STATCOM. In: Proceedings 2005 IEEE Swarm Intelligence Symposium on SIS 2005, pp. 381–384 (2005) [9] Ilonen, J., Kamarainen, J.-K., Lampinen, J.: Differential Evolution Training Algorithm for Feed-Forward Neural Networks. Neural Processing Letters 17(1), 93–105 (2003) [10] Castillo, P.A., Carpio, J., Merelo, J.J., Prieto, A., Rivas, V.: Evolving multilayer perceptrons. Neural Process. Lett. 12, 115–127 (2000) [11] Rivero, D., Rabuñal, J.R., Dorado, J., Pazos, A.: Automatic design of aNNs by means of GP for data mining tasks: Iris flower classification problem. In: Beliczynski, B., Dzielinski, A., Iwanowski, M., Ribeiro, B. (eds.) ICANNGA 2007. LNCS, vol. 4431, pp. 276–285. Springer, Heidelberg (2007) [12] Yao, X.: Evolving Artificial Neural Networks. Proc. of IEEE 87(9), 1423–1446 (1999) [13] Kennedy, J., Eberhart, R.C., Shi, Y.: Swarm Intelligence. Morgan Kaufmann Publishers, San Francisco (2001) [14] Storn, R., Price, K.: Differential Evolution - a Simple and Efficient Adaptive Scheme for Global Optimization over Continuous Spaces, TR-95-012, ICSI (1995) [15] Mezura-Montes, E., Velazquez-Reyes, J., Coello Coello, C.A.: A Comparative Study of Differential Evolution Variants for Global Optimization. In: GECCO (2006) [16] Murphy, P.M., Aha, D.W.: UCI repository of machine learning databases. Dept. Inf. Comput. Sci., Univ. California, Irvine, CA (1994)
Identification of Hindmarsh-Rose Neuron Networks Using GEO Metaheuristic Lihe Wang1, Genke Yang1, and Lam Fat Yeung2 1 Department of Automation, Shanghai Jiao Tong University, Key Laboratory of System Control and Information Processing, Ministry of Education of China, 200240, Shanghai, China 2 Department of Electronic Engineering, City University of Hong Kong, Hong Kong, China {lh.wang,gkyang}@sjtu.edu.cn
Abstract. In the last few years bio-inspired neural networks have interested an increasing number of researchers. In this paper, a novel approach is proposed to solve the problem of identifying the topology and parameters in HindmarshRose-neuron networks. The approach introduces generalized extremal optimization (GEO), a relatively new heuristic algorithm derived from co-evolution to solve the identification problem. Simulation results show that the proposed approach compares favorably with other heuristic algorithms based methods in existing literatures with smaller estimation errors. And it presents satisfying results even with noisy data. Keywords: biological neural network (BNN), identification, generalized extremal optimization (GEO), co-evolution method.
1 Introduction In recent years, biological neural network (BNN) has aroused increasing interests among researchers in various fields. One of the popular emulations of BNN gives birth to the well-known artificial neural network (ANN), with a mimic of neuron system consisted of individual neurons synaptically coupled, and its application in pattern recognition, artificial intelligence etc. is enormous. The complexity of BNN is governed by neural dynamics as well as network structure. For instance, the topology has an impact on network synchronization and learning dynamics [1], [2], [3], hence the identification of BNN is a challenging task that receives much attention. Among many neuron models present [4], this paper focuses on Hindmarsh-Rose (HR) neuron model for its popularity in researches [5]. Generally there are two major approaches under the framework of synchronization towards the identification of HR-neuron networks in the last few decades. In electrical coupling networks, adaptive observers are applied to identify the topology [6]. And in synaptic coupling networks, since the complexity of the problem lies in its non-linear nature of synaptic coupling dynamics, many heuristic-based optimization algorithms are applied. In previous literatures, genetic algorithm (GA), jumping gene GA (JGGA), simulated annealing (SA), and tabu search (TS) are used, where JGGA outperforms the other three with better estimation results [7], [8]. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 455–463, 2011. © Springer-Verlag Berlin Heidelberg 2011
456
L. Wang, G. Yang, and L.F. Yeung
In this paper, a novel approach is proposed to solve the identification problem in synaptic coupling HR-neuron networks. Firstly, a decoupled formation of the problem is given. And then it is solved by generalized extremal optimization (GEO) [9]. GEO is a method derived from co-evolution [10] and is inspired by Bak-Sneppen model that emulates natural selection mechanism [11]. The experimental results show that the proposed approach achieves better performance than those in previous literatures. The paper is organized as follows. In Section 2, the preliminaries and problem formation are introduced. In Section 3, the detailed application of GEO is explained. In Section 4, experimental results are presented. Finally, conclusions are given.
2 Problem Description 2.1 Preliminaries A neuron is an electric-excitable cell which transmits information via electrical and chemical signaling. The signaling process takes place in synapses, where signals from the axon of one neuron pass to a dendrite of another. When membrane potential changes, action potential travels along the axon of a neuron. The HR neuron model [5] was originally proposed to modify the membrane potential of a neuron. Fig.1 shows an example of membrane potential dynamics of HR neuron model. 2 1.5 1
x(t)
0.5 0 -0.5 -1 -1.5 -2
0
100
200
300
400 t
500
600
700
800
Fig. 1. Dynamics of membrane potential of HR-neuron model
Neurons coupled together to form neuron networks of different scales. In an Nneuron synaptic coupling network, the evolution dynamics of the i -th neuron is governed by a system of nonlinear ODEs [2], [7]:
⎧ xi (t ) = f x ( xi , yi , zi ) + g s ∑ Nj =1 hijσ Vs ( xi )γ v ,θ s ( x j ) ⎪ ⎨ yi (t ) = f y ( xi , yi , zi ) ⎪ ⎩ zi (t ) = f z ( xi , yi , zi )
(1)
Identification of Hindmarsh-Rose Neuron Networks Using GEO Metaheuristic
Where
457
xi (t ) is the variable for membrane potential, yi (t ) and zi (t ) are the spiking
and bursting variables measuring the rate of transportation in fast and slow ion channels respectively. g s is coupling strength, Vs , v and θ s are free parameters modifying synaptic coupling. And hij are binary elements of connectivity matrix H , with hii
= 0 ; hij = h ji = 1 indicating a coupling between neuron i and j , and 0
otherwise. Explicit expressions of those functions in (1) are shown in (2):
f x ( xi , yi , zi ) = ai xi2 − xi3 − yi − zi f y ( xi , yi , zi ) = (ai + α i ) xi2 − yi f z ( xi , yi , zi ) = μi (bi xi + ci − zi )
(2)
σ V ( xi ) = −( xi − Vs ) s
γ v,θ ( x j ) = 1/ (1 + e
− v ( x j −θ s )
s
)
2.2 Problem Formation As it is suggested [7], [8], assume that the time series of each neuron’s membrane potential {xi (t )} are available, and all other parameters are known except for connectivity matrix {hij } and
{α i } of each neuron. According to [6], [7], [8], a syn-
chronization-based observer is adopted for network identification, where feedback gain.
k is the
⎧ xˆi (t ) = ai xˆi2 − xˆi3 − yˆi − zˆi + g s ∑ Nj =1 hij*σ V ( xˆi )γ v ,θ ( xˆ j ) − k ( xˆi − xi ) s s ⎪⎪ yˆ (t ) = (a + α * ) xˆ 2 − yˆ ⎨ i i i i i ⎪ ⎪⎩ zˆi (t ) = μi (bi xˆi + ci − zˆi )
(3)
Therefore, the identification can be formed into a minimization problem [7], [8]:
min ( xi (t ) − xˆi (t )) 2 * * ∑∑ hij ,αi
i
(4)
t
If { xˆ j } is replaced by available data { x j (t )} and when objective function value
hij* = hij , α i* = α i , and the following decoupled optimization problem for each neuron i is also minimized to zero. reaches optima zero, it indicates
min ( xi (t ) − xˆi (t )) 2 * * ∑ hij ,α i
t
(5)
458
L. Wang, G. Yang, and L.F. Yeung
In order to evaluate optimization results, define topology estimation error etop , and parameter estimation error e par as suggested in [7], [8]. When correct topology and parameters are obtained, both of the errors are minimized and equal to zero.
etop = ∑∑ | hij − hij* |
(6)
e par = ∑ | α i − α i* |
(7)
i
j
i
3 Methodology 3.1 Solution Encoding The population of coded solution of the GEO metaheuristic to solve the N-neuron network identification problem is composed of N binary strings, each with m + N bits, where m bits is the differential encoding of
αi
meeting accuracy requirements,
and N bits is the encoding of hij with respect to neuron i , and
hii is fixed 0 . Fig.2
shows an example of solution encoding. PELWVIRUDOSKD
1ELWVIRUFRQQHFWLRQ
QHXURQ
QHXURQ
QHXURQ1
Fig. 2. Solution encoding
3.2 Identification Using GEO Metaheuristic Extremal optimization (EO) is inspired by biological evolutionary Bak-Sneppen model [10], [12], which mimics natural selection by assigning each species a ‘fitness’ for its adaptability, and mutating the one with the lowest ‘fitness’ at each update. The extension of EO proposed by de Sousa and Ramos [9] is called Generalized Extremal
Identification of Hindmarsh-Rose Neuron Networks Using GEO Metaheuristic
459
Optimization (GEO). Instead of always replacing the least-fit species, it generates a list of probabilities with power-law distribution, as the observed characteristics in selforganized criticality (SOC) in natural system [13], [14], to demonstrate the likelihood of mutation for each species. The power-law distribution has the following form.
Pi = mi −τ Where
(8)
Pi is the mutation probability for i -th species (bit), mi is the ranking of the
corresponding species (bit) related to ‘fitness’, the higher the ‘fitness’, the less probability of mutation, and τ is a positive adjustable parameter. Whenτ → ∞ , the algorithm performs a deterministic search. When τ → 0 , the algorithm conducts a random search [15]. The GEO algorithm is simple for it has only one parameter τ to adjust, yet very effective, for it exhibits strong search ability due to its non-equilibrium nature [13]. A step description of applying GEO heuristic to the problem is listed below.
N binary strings each with m + N bits randomly, where m bits N is the number of neurons in the network. 2. Set the current configuration C and its objective function value V as the best, Cbest and Vbest respectively. 3. For each binary string Si , do,
1. Initializing
should be the coding of α i , and
─ For every bit in the string, flip one bit at a time to acquire a new configuration Ctempi and assign its objective function value Vtempi to the bit according to (5), and flip it back as the original before flip anther. ─ Set fitness to each bit in the configuration
Ci
of string
Si with respect to its
objective function values. Lower fitness indicates a relative loss in the corresponding objective function value mutating the bit in a minimization problem. ─ Perform sorting according to bit fitness, the lower the fitness the higher the rank, the bits with equal fitness are ranked randomly. Then flip the corresponding bit with probability given by (8), and generate a new configuration Cnewi for string
Si and its objective function value Vnewi according to (5). ─ Update Ci = Cnewi , and Vi = Vnewi . ─ If Vnewi < Vi for minimization problem, update Cbesti = Cnewi , Vbesti = Vnewi . 4. Consolidate and
Ci and Vi of each binary string Si into C and V and update Cbest
Vbest accordingly.
5. If termination condition is not satisfied (e.g. maximum iteration is not reached), repeat step 3 and step 4. 6. Feasibility checks for output, if not feasible, discard it and go to step 1. 7. Output Cbest and Vbest .
460
L. Wang, G. Yang, and L.F. Yeung
4 Simulation 4.1 The Parameters In the simulation, we use the same parameters and test network as suggested in [7], [8]. The parameters are: a = 2.8 , b = 9 , c = 5 , α ∈ [0.35, 2.90] , μ = 0.001 ,
v = 10 , θ s = −0.25 , Vs = 2 , and g s = 0.34 . We set: m = 8 , N = 8 , and GEO algorithm parameters: τ = 1.5 , maximum iteration = 120 . The 8-HR-neuron test network is shown in Fig.3. 4.2 The Results In the simulation, the average results are given on the basis of 30 independent runs. In Fig.4, e par and etop against iteration by 30 independent runs are shown.
Fig. 3. An example of 8-HR-neuron network as test network 10 8
epar
6 4 2 0
0
20
40
60 iteration
80
100
120
0
20
40
60 iteration
80
100
120
40
etop
30 20 10 0
Fig. 4. Estimation errors
e par
and
etop
against iteration
Identification of Hindmarsh-Rose Neuron Networks Using GEO Metaheuristic
461
Fig.4. shows that at the beginning, some estimation errors exist because the initial configuration is random. And then the estimation errors converge to a relatively small value. Also, the parameter estimation errors present a slightly faster convergence than topology estimation errors. Overall, both of the parameter and topology estimation errors decrease against iteration, and the topology estimation errors of the 30 runs all converge to 0, indicating that correct topology can be found. However, small estimation errors e par may still occur in the final results, which are expected to be improved by increasing the number of iterations. In order to fully evaluate the performance of the proposed GEO-based method, a comparison with other heuristic-algorithm-based approaches to the same problem is presented in Tab.1, where those algorithms include GA, JGGA, SA and TS as suggested in [8]. Table 1. The performance comparision (The performance data of GA, JGGA,SA and TS are obtained from [8])
Algorithms
Average etop
Average e par
GEO based method GA JGGA SA TS
0 0 0 0 0
0.029 0.191 0.164 0.191 0.171
The results shown in Tab. 1 demonstrate a competitive performance of the proposed method with smaller e par , and all the methods can obtain the network topology correctly. The effectiveness of the proposed method is due to the combination of decoupled problem formation which reduces the searching space, and the strong search and hill-climbing ability of GEO algorithm. However, the GEO evaluate more candidate solutions, since it performs evaluation every time when assigns fitness to each bit in the configurations. While in most real life cases, the observable data {xi (t )} are usually acquired with noises. The noisy-data model is shown in (9), where noise,
xi′(t ) is the data without
xi (t ) is the data acquired, and ω (t ) is a zero-mean Gaussian White Noise. xi (t ) = xi′(t ) + ω (t )
(9)
The noisy-data model is used to evaluate the robustness of the proposed method. The performance of the method under different data noise levels are shown in Tab. 2. As it is shown in Tab. 2, the average parameter estimation error increases, as the data noise level increases, this indicates that data noises have some influence on the identification results. Intuitively, noise may contaminate data, which makes it hard to recover information from it. However, the average parameter estimation errors are still relatively small, and the topology of the network can be obtained.
462
L. Wang, G. Yang, and L.F. Yeung Table 2. The performance with noisy data
Signal to Noise Ratio (SNR)
Noise Level
Average etop
Average e par
100dB 26dB 20dB
~0% 5% 10%
0 0 0
0.029 0.045 0.117
5 Conclusions In this paper, a novel approach of identifying topology and parameters in HR-neuron networks is proposed. The approach incorporates GEO, a relatively new evolutionary metaheuristic, to solve the identification problem. By comparing with other heuristicbased approaches in recent literatures, the experiments demonstrate that the proposed approach presents more accurate results, and it performs well even if the observational data have up to 10% noise levels. Since in real cases, data are usually acquired with noises, therefore the robustness of the approach may lead it to more practical BNN-identification applications. Acknowledgments. The work of this paper was supported by National Natural Science Foundation of China, No.61074150, and No.60574063.
References 1. Belykh, I., Lange, E., Hasler, M.: Synchronization of Bursting Neurons: What Matters in the Network Topology. J. Phys. Rev. Lett. 94(18), 188101 (2005) 2. Checco, P., Righero, M., Biey, M., Kocarev, L.: Synchronization in Networks of Hindmarsh-Rose Neurons. J. IEEE Trans. on Circuits and Systems-II: Express Briefs 55(12), 1274–1278 (2008) 3. Streib, F.E.: Influence of the Neural Network Topology on the Learning Dynamics. J. Neurocomputing 69(10-12), 1170–1182 (2006) 4. Izhikevich, E.M.: Which Model to Use for Cortical Spiking Neurons. J. IEEE Trans. on Neural Network 15(5), 1063–1070 (2004) 5. Hindmarsh, J.L., Rose, R.M.: A Model of Neuronal Bursting Using Three Coupled First Order Differential Equations. J. Proc. R. Soc. Lond. B 221, 87–102 (1984) 6. Mao, Y., Tang, W., Liu, Y., Kocarev, L.: Identification of Biological Neurons Using Adaptive Observers. J. Cognitive Processing 10 (supplement 1), 41–53 (2009) 7. Yin, J.J., Tang, W., Man, K.F.: Identification of Biological Neural Network Using Jumping Gene Genetic Algorithm. In: 33rd Annual Conference of the IEEE Industrial Electronics Society (IECON), pp. 693–697. IEEE Press, Taipei (2007) 8. Yin, J.J., Tang, W., Man, K.F.: A Comparison of Optimization Algorithms for Biological Neural Network Identification. J. IEEE Trans. on Industrial Electronics 57(3), 1127–1131 (2010) 9. de Sousa, F.L., Ramos, F.M., Galski, R.L., Muraoka, I.: Generalized External Optimization: A New Meta-Heuristic Inspired by a Model of Natural Evolution. J. Recent Developments in Biologically Inspired Computing 13(10), 41–60 (2004)
Identification of Hindmarsh-Rose Neuron Networks Using GEO Metaheuristic
463
10. Boettcher, S., Percus, A.G.: Extremal Optimization: Methods derived from Co-Evolution. In: GECCO-1999: Proceedings of the Genetic and Evolutionary Computation Conference, pp. 825–832. Morgan Kaufmann, San Francisco (1999) 11. Flyvbjerg, H., Sneppen, K., Bak, P.: Mean Field Theory for a Simple Model of Evolution. J. Phys. Rev. Lett. 71(24), 4087–4090 (1993) 12. Boettcher, S., Percus, A.G.: Nature’s Way of Optimizing. J. Artificial Intelligence 119 (1-2), 275–286 (2000) 13. Lu, Y.Z., Chen, M.R., Chen, Y.W.: Studies on Extremal Optimization and Its Applications in Solving Real World Optimization Problems. In: Proceedings of the 2007 IEEE Symposium on Foundations of Computational Intelligence (FOCI 2007), pp. 162–168. IEEE Press, Honolulu (2007) 14. de Sousa, F.L., Vlassov, V., Ramos, F.M.: Generalized Extremal Optimization for solving complex optimal design problems. In: Cantú-Paz, E., Foster, J.A., Deb, K., Davis, L., Roy, R., O’Reilly, U.-M., Beyer, H.-G., Kendall, G., Wilson, S.W., Harman, M., Wegener, J., Dasgupta, D., Potter, M.A., Schultz, A., Dowsland, K.A., Jonoska, N., Miller, J., Standish, R.K. (eds.) GECCO 2003. LNCS, vol. 2723, pp. 375–376. Springer, Heidelberg (2003) 15. Randall, M., Lewis, A.: Intensification Strategies for Extremal Optimisation. In: Deb, K., Bhattacharya, A., Chakraborti, N., Chakroborty, P., Das, S., Dutta, J., Gupta, S.K., Jain, A., Aggarwal, V., Branke, J., Louis, S.J., Tan, K.C. (eds.) SEAL 2010. LNCS, vol. 6457, pp. 115–124. Springer, Heidelberg (2010)
Delay-Dependent Stability Criterion for Neural Networks of Neutral-Type with Interval Time-Varying Delays and Nonlinear Perturbations Guoquan Liu1, Simon X. Yang1,2, and Wei Fu1 1
College of Automation, Chongqing University, 400044 Chongqing, China [email protected] 2 School of Engineering, University of Guelph, Guelph,Ontario, Canada N1G2W1
Abstract. In this paper, the delay-dependent stability problem for a class of neural networks of neutral-type with interval time-varying delays and nonlinear perturbations is investigated. A novel stability criterion is obtained in terms of linear matrix inequality (LMI) by employing a Lyapunov-Krasovskii functional. The proposed criteria can be checked easily by the LMI Control Toolbox in Matlab. In addition, two examples are given to show the effectiveness of the obtained result. Keywords: Delay-dependent stability, Neural networks, Lyapunov-Krasovskii functional, Nonlinear perturbations.
Neutral-type,
1 Introduction Over the past decade, there has been a growing interest in the problem of exponential stability or asymptotic stability for neural networks with time delays. Time delays are often the sources of instability and encountered in various neural networks such as Hopfield neural networks, Cellular neural networks, Cohen-Grossberg neural networks. Therefore, stability criteria for neural networks with time delays have been attracted the attention of many researchers [1-12]. It is northing noting that the existing stability criteria can be classified into two categories: delay-independent stability and delaydependent stability, and the latter are less conservative than the former. In recent years, there are some research issues about neural networks of neutral-type with (or neutral type neural networks) time delays in [13-17], where [15-17] considered the delaydependent global stability results for neural networks of neutral-type with time delays. On the other hand, the range of time-varying delay for neural networks of neutraltype considered in [18-19] is from zero to an upper bound. In the real world, a time-varying interval delay is often encountered, that is, the range of delay varies in an interval for which the lower bound is not restricted to zero. For example, based on the Lyapunov-Krasovkii functional theory and the LMI method, a novel delay-dependent global asymptotic stability criterion neutral type neural networks with interval timevarying delays was studied in [19]. Very recently, the problem of robust stability analysis for uncertain neural networks of neutral-type is considered by some researchers. Some useful stability conditions have been established in [20-21]. However, most Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 464–471, 2011. © Springer-Verlag Berlin Heidelberg 2011
Delay-Dependent Stability Criterion for Neural Networks of Neutral-Type
465
of the obtained results are based on restricting norm-bounded for parameter uncertainties. So far, the robust asymptotic stability problem has not been touched for neural networks of neutral-type with nonlinear perturbations, which is still open problem. Based on the above discussion, the objective of this paper is to investigate the asymptotic stability criteria for neural networks of neutral-type with internal timevarying delays and nonlinear perturbations. For this purpose, the Lyapunov functional method is taken in our study. Finally, two numerical examples are given to demonstrate the applicability of the proposed stability criteria. Notations: The following notations will be used throughout this paper. For a real square matrix X , the notation X ≥ 0 (respectively, X > 0 ), means that X is positive semi-definite (respectively, positive definite); ℜ n and ℜ n× n denote the n-dimensional Euclidean space and the set of all n × n real matrices, respectively; The superscripts "T " and "-1" stand for matrix transposition and matrix inverse, respectively; The shorthand diag { X 1 , X 2 ,..., X n } denotes a block diagonal matrix with diagonal blocks
being the matrices X 1 , X 2 ,..., X n ; The notation ∗ always denotes the symmetric block in one symmetric matrix.
2 Problem Statement Consider the following neural networks of neutral-type with time-varying delays and
nonlinear perturbations: ⎧ x (t ) = − Ax(t ) + Bf ( x(t )) + Cf ( x (t − τ (t )) + Dx (t − τ (t )) ⎪ + f1 (t , x(t )) + f 2 (t , x(t − τ (t ))) + f3 (t , x (t − τ (t ))), ⎨ ⎪ x(θ ) = ϑ (θ ), x (θ ) = δ (θ ), ∀θ ∈ [−τ ,0], ⎩ 2
(1)
where x(t ) = [ x1 (t ), x2 (t ),..., xn (t )] ∈ ℜ n is the state vector, A, B, C , D ∈ ℜn× n are constant T
matrices with appropriate dimensions, f ( x(t )) = [ f1 ( x1 (t )), f 2 ( x2 (t )),..., f n ( xn (t ))] ∈ ℜn is T
the neuron activation function vector. τ (t ) is a time-varying delay, and it is assumed to satisfy (2) 0 ≤ τ 1 ≤ τ (t ) ≤ τ 2 ,τ(t ) ≤ τ d < 1, where τ 1 ,τ 2 and τ d are constants. ϑ (θ ) and δ (θ ) are the initial condition functions that are continuously differentiable of [ −τ 2 ,0] , f1 (t , x(t )), f 2 (t , x(t − τ (t ))), f 3 (t , x (t − τ (t ))), are unknown nonlinear perturbations. They satisfy that f1 (t ,0) = f 2 (t ,0) = f 3 (t ,0) = 0 , and f1T (t , x(t )) f1 (t , x(t )) ≤ α 2 xT (t ) x(t ), f 2T (t , x(t − τ (t ))) f 2 (t , x(t − τ (t ))) ≤ β 2 xT (t − τ (t )) x (t − τ (t )),
(3)
f 3T (t , x (t − τ (t ))) f 3 (t , x (t − τ (t ))) ≤ γ 2 xT (t − τ (t )) x (t − τ (t )),
where α ≥ 0, β ≥ 0 and γ ≥ 0 are given constants, for the sake of simplicity, the following notations are adopted: f1 := f1 (t , x(t )), f 2 := f (t , x(t − τ (t ))), f3 := f (t , x (t − τ (t ))).
Then, system (1) can be re-written as
466
G. Liu, S.X. Yang, and W. Fu ⎧ x (t ) = − Ax(t ) + Bf ( x(t )) + Cf ( x(t − τ (t )) + Dx (t − τ (t )) + f1 + f 2 + f 3 , ⎨ ⎩ x(θ ) = ϑ (θ ), x (θ ) = δ (θ ), ∀θ ∈ [−τ 2 ,0].
(4)
The following lemmas are useful in deriving the criterion. Lemma 1. For any constant matrix M > 0 , any scalars a and b with a < b , and a vector function x(t ) :[a, b] → ℜ n such that the integrals concerned as well defined, the following holds T
⎡ b x( s )ds ⎤ M ⎡ b x( s )ds ⎤ ≤ (b − a ) b xT ( s ) Mx( s )ds. ∫a ⎢⎣ ∫a ⎥⎦ ⎢⎣ ∫a ⎥⎦
(5)
Lemma 2(Schur complement). Given constant matrix M 1 , M 2 and M 3 with appropriate dimensions, where M1T = M1 and M 2T = M 2 > 0, then M 1 + M 3T M 2−1M 3 < 0 if and only if ⎡ M 1 M 3T ⎤ ⎡−M 2 ⎢ ⎥ < 0 or ⎢ ⎣ * ⎣ * −M 2 ⎦
M3 ⎤ < 0. M 1 ⎦⎥
(6)
3 Main Result and Its Proof In this section, a novel delay-dependent stability criterion for the system (4) is derived in terms of LMI. Theorem 1. For given scalars τ 1 ,τ 2 and τ d , system (4) is asymptotically stable, if there
exist matrices P > 0, Q j = QTj > 0, j = 1,2,3, R j = RTj > 0, j = 1, 2,3, Zi , i = 1, 2, a diagonal matrix K > 0, and positive scalars ε i > 0, i = 1, 2,3 such that the following LMI holds: ⎡ϕ1 ϕ 2 ⎢ ∗ −ϕ 5 Π=⎢ ⎢∗ ∗ ⎢ ∗ ⎣∗
ϕ3 0 −ϕ6 ∗
ϕ4 ⎤
0 ⎥⎥ < 0, 0 ⎥ ⎥ −ϕ7 ⎦
where 0 0 ϕ1,5 ϕ1,6 ϕ1,7 0 ϕ1,9 ϕ1,10 ϕ1,11 ⎤ ⎡ϕ1,1 ϕ1,2 ⎢∗ ϕ 0 0 0 ϕ ϕ 0 ϕ2,9 ϕ2,10 ϕ2,11 ⎥⎥ 2,2 2,6 2,7 ⎢ ⎢∗ ∗ ϕ3,3 0 0 0 0 0 0 0 0 ⎥ ⎢ ⎥ ∗ ∗ ϕ4,4 ϕ4,5 0 0 0 0 0 0 ⎥ ⎢∗ ⎢∗ ∗ ∗ ∗ ϕ5,5 0 0 0 0 0 0 ⎥ ⎢ ⎥ ∗ ∗ ∗ ∗ ϕ6,6 0 0 0 0 0 ⎥, ϕ1 = ⎢ ∗ ⎢∗ ∗ ∗ ∗ ∗ ∗ ϕ7,7 0 0 0 0 ⎥ ⎢ ⎥ ⎢∗ ∗ ∗ ∗ ∗ ∗ ∗ ϕ8,8 0 0 0 ⎥ ⎢ ⎥ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ϕ9,9 0 0 ⎥ ⎢∗ ⎢∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ϕ10,10 0 ⎥ ⎢ ⎥ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ϕ ⎥ 11,11 ⎦ ⎣⎢
(7)
Delay-Dependent Stability Criterion for Neural Networks of Neutral-Type
ϕ2 = [ − AQ3
BQ3
0 0 0 CQ3
467
0 0 0 0] , T
DQ3
ϕ3 = [ −τ 2 A τ 2 B 0 0 0 τ 2C τ 2 D 0 0 0 0] , T
ϕ4 = ⎡− ⎣ (τ 2 − τ 1 ) A (τ 2 − τ 1 ) B 0 0 0 ϕ5 = Q3 ,ϕ6 = Z1 ,ϕ7 = Z 2 ,
(τ 2 − τ1 ) C (τ 2 − τ1 ) D
T
0 0 0 0⎤⎦ ,
with ϕ1,1 = − PA − APT + Q1 + Q3 − Z1 + (τ 2 − τ 1 ) Z 2 + ε1α 2 ,ϕ1,2 = PB − AT K , 2
ϕ1,5 = Z1 ,ϕ1,6 = PC , ϕ1,7 = PD, ϕ1,9 = P, ϕ1,10 = P,ϕ1,11 = P, ϕ2,2 = KB + BT K , ϕ2,6 = KC , ϕ2,7 = KD, ϕ2,9 = P, ϕ2,10 = P, ϕ2,11 = P, ϕ3,3 = −(1 − τ d )Q1 + ε 2 β 2 ,ϕ4,4 = − R1 − Z 2 ,ϕ4,5 = Z 2 , ϕ5,5 = − R2 − Z1 − Z 2 ,ϕ 6,6 = −(1 − τ d )Q2 ,ϕ7,7 = −(1 − τ d )Q3 + ε 3γ 2 , ϕ8,8 = − R3 ,ϕ9,9 = −ε 1 ,ϕ10,10 = −ε 2 ,ϕ11,11 = −ε 3 .
Proof: Consider the following lyapunov-krasoskill functional for system (4) as follows (8) V (t ) = V1 (t ) + V2 (t ) + V3 (t ) + V4 (t ), where n
V1 (t ) = xT (t ) Px(t ) + 2∑ ki ∫ i =1
V2 (t ) = ∫
t
V3 (t ) = ∫
t
t −τ ( t )
t −τ1
V4 (t ) = τ 2 ∫
xi ( t )
f i ( s )ds,
0
xT ( s)Q1 x( s )ds + ∫
t
t −τ ( t )
xT ( s) R1 x( s)ds + ∫
t
t −τ 2
0
∫
t
−τ 2 t + δ
f T ( x( s))Q2 f ( x( s ))ds + ∫
t
t −τ ( t )
xT ( s ) R2 x( s )ds + (τ 2 − τ 1 ) ∫
−τ1
−τ 2
x T ( s ) Z1 x ( s )dsdδ + (τ 2 − τ 1 ) ∫
−τ1
−τ 2
∫
t
t +δ
∫
x T ( s )Q3 x ( s )ds,
t
t +δ
xT ( s ) R3 x( s)dsd δ ,
xT ( s ) Z 2 x ( s )dsdδ .
The time derivative of V (t ) along the trajectory of system (4) is V (t ) = V1 (t ) + V2 (t ) + V3 (t ) + V4 (t ),
(9)
where V1 (t ) = 2 xT (t ) P [ − Ax(t ) + Bf ( x(t )) + Cf ( x (t − τ (t )) + Dx (t − τ (t )) + f1 + f 2 + f3 ]
+ 2 f T ( x(t )) K [ − Ax(t ) + Bf ( x(t )) + Cf ( x(t − τ (t )) + Dx (t − τ (t )) + f1 + f 2 + f 3 ] ,
(10)
V2 (t ) = xT (t )Q1x (t ) − (1 − τ(t )) xT (t − τ (t ))Q1x(t − τ (t )) + f T ( x(t ))Q2 f ( x(t )) − (1 − τ(t )) f T ( x (t − τ (t )))Q2 f ( x(t − τ (t ))) + x T (t )Q3 x (t ) − (1 − τ(t )) x T (t − τ (t ))Q3 x (t − τ (t )) ≤ xT (t ) Z1x (t ) − (1 − τ d ) xT (t − τ (t ))Q1 x(t − τ (t )) + f T ( x(t ))Q2 f ( x(t )) − (1 − τ d ) f T ( x(t − τ (t )))Q2 f ( x(t − τ (t ))) + xT (t )Q3 x (t ) − (1 − τ d ) x T (t − τ (t ))Q3 x (t − τ (t ))
(11)
468
G. Liu, S.X. Yang, and W. Fu V3 (t ) = xT (t ) R1x (t ) − xT (t − τ 1 ) R1 x(t − τ 1 ) + xT (t ) R2 x(t ) − xT (t − τ 2 ) R2 x(t − τ 2 ) + (τ 2 − τ 1 ) xT (t ) R3 x(t ) − (τ 2 − τ 1 ) ∫ 2
t −τ1
t −τ 2
t V4 (t ) = τ 22 x T (t ) Z1 x (t ) − τ 2 ∫
t −τ 2
− (τ 2 − τ 1 ) ∫
t −τ1
t −τ 2
xT ( s) R3 x( s )ds,
xT ( s) Z1 x ( s) ds + (τ 2 − τ 1 ) x T (t ) Z 2 x (t )
(12)
2
(13)
xT ( s ) Z 2 x ( s ) ds.
By using Lemma 1, one can get −(τ 2 − τ 1 ) ∫
t −τ1
t −τ 2
T
t −τ1 t −τ 1 xT ( s ) R3 x( s )ds ≤ − ⎡ ∫ x( s )ds ⎤ R3 ⎡ ∫ x( s )ds ⎤ , ⎢⎣ t −τ 2 ⎣⎢ t −τ 2 ⎦⎥ ⎦⎥ T
t t xT ( s ) Z1 x ( s )ds ≤ − ⎡ ∫ x ( s )ds ⎤ Z1 ⎡ ∫ x ( s )ds ⎤ ⎢⎣ t −τ 2 t −τ 2 ⎣⎢ t −τ 2 ⎦⎥ ⎦⎥
−τ 2 ∫
(14)
t
= − [ x(t ) − x (t − τ 2 )] Z1 [ x (t ) − x(t − τ 2 )] ,
(15)
T
T
t −τ1 t −τ1 x T ( s ) Z 2 x ( s )ds ≤ − ⎡ ∫ x ( s) ds ⎤ Z 2 ⎡ ∫ x ( s )ds ⎤ ⎢⎣ t −τ 2 t −τ 2 ⎣⎢ t −τ 2 ⎦⎥ ⎦⎥
− (τ 2 − τ 1 ) ∫
t
= − [ x(t − τ 1 ) − x (t − τ 2 )] Z 2 [ x(t − τ 1 ) − x(t − τ 2 )].
(16)
T
From (3), one can obtain for any scalars ε1 > 0, ε 2 > 0 and ε 3 > 0. 0 ≤ ε1 ⎡⎣α 2 xT (t ) x(t ) − f1T f1 ⎤⎦ , 0 ≤ ε 2 ⎡⎣ β 2 xT (t − τ (t )) x(t − τ (t )) − f 2T f 2 ⎤⎦ ,
(17)
0 ≤ ε 3 ⎡⎣γ 2 x T (t − τ (t )) x (t − τ (t )) − f3T f 3 ⎤⎦ .
Then, combining (10)-(17), one can obtain that 2 V (t ) ≤ ξ T (t ) ⎡ϕ1 + Q3 + τ 22 Z1 + (τ 2 − τ 1 ) Z 2 ⎤ ξ (t ) = ξ T (t )Ωξ (t ), ⎣ ⎦
(18)
Ω = ϕ1 + Q3 + τ 22 Z1 + (τ 2 − τ 1 ) Z 2 ,
(19)
where 2
0 0 ϕ1,5 ϕ1,6 ϕ1,7 0 ϕ1,9 ϕ1,10 ϕ1,11 ⎤ ⎡ϕ1,1 ϕ1,2 ⎢ ∗ ϕ 0 0 0 ϕ ϕ 0 ϕ2,9 ϕ 2,10 ϕ2,11 ⎥⎥ 2,2 2,6 2,7 ⎢ ⎢ ∗ ∗ ϕ3,3 0 0 0 0 0 0 0 0 ⎥ ⎢ ⎥ ∗ ∗ ϕ 4,4 ϕ4,5 0 0 0 0 0 0 ⎥ ⎢ ∗ ⎢ ∗ ∗ ∗ ∗ ϕ5,5 0 0 0 0 0 0 ⎥ ⎢ ⎥ ∗ ∗ ∗ ∗ ϕ6,6 0 0 0 0 0 ⎥, ϕ1 = ⎢ ∗ ⎢ ∗ ∗ ∗ ∗ ∗ ∗ ϕ 7,7 0 0 0 0 ⎥ ⎢ ⎥ ⎢ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ϕ8,8 0 0 0 ⎥ ⎢ ⎥ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ϕ 9,9 0 0 ⎥ ⎢ ∗ ⎢ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ϕ10,10 0 ⎥ ⎢ ⎥ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ∗ ϕ11,11 ⎦⎥ ⎣⎢ ∗
Delay-Dependent Stability Criterion for Neural Networks of Neutral-Type
469
and ξ T (t ) = ⎡⎣ xT (t ), f T ( x(t )), xT (t − τ (t )), xT (t − τ 1 ), xT (t − τ 2 ), f T ( x (t − τ (t ))), x T (t − τ (t )),
(∫
t −τ 1
t −τ 2
)
T ⎤ x( s )ds , f1T , f 2T , f 3T ⎥ . ⎦
Notice the fact that Ω < 0 is equivalent to the LMI (7) by Lemma 2 (Schur complements). Thus, V (t ) < −λ x(t ) for a sufficiently small λ > 0 . This ensures the global 2
asymptotic stability of the considered system (4) with condition (2), which concludes the proof.
4 Numerical Examples To illustrate the effectiveness of the theory developed in this paper, two numerical examples are proposed as follows: Example 1. Consider a two-neuron neural network of neutral-type (4) with the following parameters: ⎡ 2 0.1⎤ ⎡ −0.7 −0.2⎤ ⎡ −1.2 1.1 ⎤ ⎡ 0.1 0 ⎤ A=⎢ ,B = ⎢ ,C = ⎢ ,D = ⎢ ⎥ ⎥ ⎥ ⎥, ⎣ 0.1 2 ⎦ ⎣ −0.2 −1.2 ⎦ ⎣ 0.1 −0.8⎦ ⎣ 0 0.1⎦ α = 0.1, β = 0.08, γ = 0.09.
By applying Theorem 1, one can see that the system (4) is asymptotically stable for 0 < τ (t ) ≤ τ 2 =0.7599. Let τ 1 =0,τ 2 =0.7599,τ d =0 , by applying Theorem 1, there exists a feasible solution which guarantees the asymptotic stability of system (4): ⎡ 1.5773 -0.0893⎤ ⎡ 2.4917 0.0483 ⎤ 3 P = 104 × ⎢ ⎥ , Q1 = 10 × ⎢ 0.0483 2.8230 ⎥ , ⎣-0.0893 1.1773 ⎦ ⎣ ⎦ ⎡ 2.8970 -0.2478⎤ ⎡ 1.9629 -0.1240 ⎤ 3 Q2 = 10 6 × ⎢ ⎥ , Q3 = 10 × ⎢ -0.1240 1.6420 ⎥ , -0.2478 1.9496 ⎣ ⎦ ⎣ ⎦ ⎡ 4.6971 -0.0975⎤ ⎡ 3.1083 -0.5813⎤ 6 5 R1 = 10 × ⎢ ⎥ , R2 = 10 × ⎢-0.5813 0.7606 ⎥ , . ⎣-0.0975 4.7900 ⎦ ⎣ ⎦ ⎡0.0635 0.1493 ⎤ ⎡ 2.2299 -0.3520 ⎤ 4 R3 = 103 × ⎢ ⎥ , Z1 = 10 × ⎢-0.3520 1.2061 ⎥ , 0.1493 1.0844 ⎣ ⎦ ⎣ ⎦ ⎡ 22.6386 42.7077 ⎤ 3 Z2 = ⎢ ⎥ , K = 10 × diag {8.3694 8.3694} , ⎣ 42.7077 317.3317 ⎦
ε1 = 3.0726e+005, ε 2 = 3.8574e+005, ε 3 = 1.5106e+005.
470
G. Liu, S.X. Yang, and W. Fu
Example 2. Consider the following three-neuron delayed neural network of neutraltype given in (4) with the following parameters: ⎡1.2 0.1 0.2 ⎤ ⎡-0.2 -0.1 A = ⎢⎢ 0.1 0.6 0.1⎥⎥ , B = ⎢⎢ 0.1 -0.3 ⎢⎣0.2 0.1 0.7 ⎥⎦ ⎢⎣-0.2 0.1 ⎡ −0.1 0.2 0.2 ⎤ ⎡ 0.04 ⎢ ⎥ C = ⎢ -0.1 -0.2 0 ⎥ , D = ⎢⎢ −0.01 ⎢⎣ -0.2 0.1 -0.2 ⎥⎦ ⎢⎣ −0.02
0 ⎤ -0.2 ⎥⎥ , -0.12 ⎥⎦ −0.01 −0.02 ⎤ 0.09 −0.05 ⎥⎥ , −0.05 0.04 ⎥⎦
α = 0.1, β = 0.1, γ = 0.2,τ (t ) = 0.14 + 0.14sin(t ).
Let τ 1 = 0.14,τ 2 = 0.28,τ d = 0.14 . By applying Theorem 1, there exists a feasible solution which guarantees the asymptotic stability of system (4) as follows: ⎡ 5.5361 3.3970 4.3560 ⎤ ⎡ 6.1664 0.0550 -0.2013⎤ P = 103 × ⎢⎢3.3970 6.3503 3.5571⎥⎥ , Q1 = 105 × ⎢⎢ 0.0550 5.9567 -0.0875⎥⎥ , ⎢⎣ 4.3560 3.5571 4.4275 ⎥⎦ ⎢⎣-0.2013 -0.0875 6.2016 ⎥⎦ ⎡ 3.3517 -0.1462 -1.4024 ⎤ ⎡ 5.1729 -0.3673 1.2301 ⎤ ⎢ ⎥ 6 5 Q2 = 10 × ⎢ -0.1462 0.9348 0.0384 ⎥ , Q3 = 10 × ⎢⎢-0.3673 6.2866 0.4043⎥⎥ , ⎢⎣ -1.4024 0.0384 2.0213 ⎥⎦ ⎢⎣ 1.2301 0.4043 4.9535⎥⎦ ⎡ 1.2630 -0.3464 0.8691⎤ ⎡ 0.9003 R1 = 105 × ⎢⎢-0.3464 2.6878 0.3975⎥⎥ , R2 = 106 × ⎢⎢ 0.1181 ⎢⎣ 0.8691 0.3975 1.1128 ⎥⎦ ⎣⎢0.1927 ⎡1.6774 0.4224 0.0368⎤ ⎡ 1.2030 R3 = 10 4 × ⎢⎢0.4224 1.4517 0.1573⎥⎥ , Z1 = 10 6 × ⎢⎢-0.2650 ⎢⎣0.0368 0.1573 1.4035 ⎥⎦ ⎢⎣ 0.1819 ⎡ 1.8099 -0.4013 Z 2 = 105 × ⎢⎢-0.4013 2.6669 ⎣⎢ 1.0528 0.4050
0.1181 0.1927 ⎤ 0.8527 0.1394 ⎥⎥ , 0.1394 1.6368 ⎥⎦ -0.2650 0.1819 ⎤ 1.0919 0.1541 ⎥⎥ , 0.1541 0.7136 ⎥⎦
1.0528 ⎤ 0.4050 ⎥⎥ , K = 104 × diag {4.1118 4.1118 4.1118} , 1.4461 ⎦⎥
ε1 = 5.5317e+005,ε 2 = 5.8422e+005,ε 3 = 3.9861e+004.
5 Conclusion A novel delay-dependent global asymptotic stability criterion for neural networks of neutral-type with interval time-varying delays and nonlinear perturbations has been provided. The new sufficient criterion has been presented in terms of LMI. The result is obtained based on the Lyapunov-Krasovskii method. The validity of the proposed approach has been demonstrated by two numerical examples.
Delay-Dependent Stability Criterion for Neural Networks of Neutral-Type
471
References 1. Sun, C.Y., Zhang, K.J., Fei, S.M., Feng, C.: On exponential stability of delayed neural networks with a general class of activation functions. Physics Letters A 298, 122–132 (2002) 2. Zhang, Q., Ma, R.N., Chao, W., Jin, X.: On the global stability of delayed neural networks. IEEE Trans on Automatic Control 48(5), 794–7973 (2003) 3. Sun, C.Y., Feng, C.B.: Exponential periodicity and stability of delayed neural networks. Mathematics and Computers in Simulation 66(6), 469–478 (2004) 4. Liao, X.F., Li, C.D.: An LMI approach to asymptotical stability of multi-delayed neural networks. Physica D-Nonlinear Phenomena 200, 139–155 (2005) 5. Zhang, Q., Wei, X.P., Xu, J.: On global exponential stability of nonautonomous delayed neural networks. Chaos Soliton Fract. 26(3), 965–970 (2005) 6. Shen, T., Zhang, Y.: Improved global robust stability criteria for delayed neural networks. IEEE Trans. on Circuits and Systems Ii-Express Briefs 54(8), 715–719 (2007) 7. Wu, W., Cui, B.T.: Improved sufficient conditions for global asymptotic stability of delayed neural networks. IEEE Trans. on Circuits and Systems Ii-Express Briefs 54(7), 626–630 (2007) 8. Zhang, Q., Wei, X.P., Xu, J.: A new global stability result for delayed neural networks. Nonlinear Anal.-Real. 8(3), 1024–1028 (2007) 9. Wu, W., Cui, B.T.: Global robust exponential stability of delayed neural networks. Chaos Soliton Fract. 35(4), 747–754 (2008) 10. Sun, Y.H., Cao, J.D.: Novel criteria for mean square stability of stochastic delayed neural networks. Neural Network World 18(3), 245–254 (2008) 11. Yucel, E., Arik, S.: Novel results for global robust stability of delayed neural networks. Chaos Soliton Fract. 39(4), 1604–1614 (2009) 12. Hu, C., Jiang, H.J., Teng, Z.D.: Globally Exponential Stability for Delayed Neural Networks under Impulsive Control. Neural Process. Lett. 31(2), 105–127 (2010) 13. Cheng, C.J., Liao, T.L., Yan, J.J., Hwang, C.C.: Globally asymptotic stability of a class of neutral-type neural networks with delays. IEEE Trans. Syst Man Cybern. B Cybern. 36(5), 1191–1195 (2006) 14. He, H.L., Liao, X.X.: Stability analysis of neutral neural networks with time delay. In: Wang, J., Yi, Z., Żurada, J.M., Lu, B.-L., Yin, H. (eds.) ISNN 2006. LNCS, vol. 3971, pp. 147–152. Springer, Heidelberg (2006) 15. Park, J.H., Kwon, O.M.: Further results on state estimation for neural networks of neutraltype with time-varying delay. Appl. Math. Comput. 208(1), 69–75 (2009) 16. Liu, J., Zong, G.D.: New delay-dependent asymptotic stability conditions concerning BAM neural networks of neutral type. Neurocomputing 72, 2549–2555 (2009) 17. Park, J.H., Kwon, O.M.: Design of state estimator for neural networks of neutral-type. Appl. Math. Comput. 202(1), 360–369 (2008) 18. Wu, H.L., Zhong, Y., Mai, H.H.: On Delay-dependent Exponential Stability of Neutraltype Neural Networks with Interval Time-varying Delays. In: Proceedings of 2009 International Conference on Artificial Intelligence and Computational Intelligence, vol. Ii, pp. 563–569 (2009) 19. Park, J.H., Kwon, O.M.: Global stability for neural networks of neutral-type with interval time-varying delays. Chaos Soliton Fract. 41(3), 1174–1181 (2009) 20. Lien, C.H., Yu, K.W., Lin, Y.F., Chung, Y.J., Chung, L.: Exponential convergence rate estimation for uncertain delayed neural networks of neutral type. Chaos Soliton Fract. 40(5), 2491–2499 (2009) 21. Mahmoud, M.S., Ismail, A.: Improved results on robust exponential stability criteria for neutral-type delayed neural networks. Appl. Math. Comput. 217(7), 3011–3019 (2010)
Application of Generalized Chebyshev Neural Network in Air Quality Prediction Fengjun Li School of Mathematics and Computer Science, Ningxia University, 750021 Yinchuan, P.R. China [email protected]
Abstract. Air pollution time series is often characterized as chaotic in nature. The prediction using traditional statistical techniques and artificial neural network with back-propagation (BP) algorithm, which is most widely applied, do not give reliable prediction results. The new algorithm is therefore proposed to predict the chaotic time series based on the generalized Chebyshev neural network technique. In addition, the new algorithm has no problems such as local minima, slow convergence arising from the steepest descent-like algorithm. Finally, to illustrate the power of the Chebyshev Neural Network (CNN), a simulation example is presented to show good performance that extracts useful information from the weight functions for understanding relations inherent in the given patterns, and the trained CNN has good performance both on generalization and calculating precision.
Keywords: artificial neural network, Chebyshev polynomial, air quality prediction.
1
Introduction
More and more people today are paying attention to environmental quality, and numerous air environment studies have been carried out in various countries([13]). As a result, the air environmental quality should become an important issue of public interest. The prediction of air quality has become an important task due to its impact on human health, vegetation and environment. The common techniques applied in the literature to predict the air pollutant concentration are Box-Tenkis methods, transfer function models, regression techniques and ANNs ([3-5]). These techniques are either univariate or multivariate in nature. If the data on input variables are not available, univariate techniques are most preferable. Recently, the air pollution time series is characterized as chaotic in several research studies ([6,7]). The chaotic behavior is observed due to the interaction of air pollutants with many external variables such as meteorology. A common practice to predict the chaotic time series is by reconstructing the phase space of the system using delay space embedding given as Xt = (xt , xt−τ , xt−2τ , · · · , xt−(n−1)τ ), Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 472–479, 2011. c Springer-Verlag Berlin Heidelberg 2011
(1)
Application of Generalized Chebyshev Neural Network
473
where Xt denotes the reconstructed state space vector for the tth state, xt , t = 1, 2, · · · , m is the observed time series, τ denotes the day time lag and n is the embedding dimension of the dynamical system. Takes (1981) using the embedded theorem showed that a functional map exist that provides the next step predictions using the nonlinear predictive model x(t + 1) = F (x(t)).
(2)
Due to the nonlinear mapping capabilities and generalization abilities, multilayer perceptrons (MLPs) seem to be the appropriate choice for approximating this function ([8]). Several studies contribute towards this aspect showing the capabilities of MLPs in predicting the chaotic time series ([8,9]). This generally happens due to the fact that two chaotic time series can be similar point wise, but be produced by the different dynamical system or vice versa ([9]). In this paper, a new technique is proposed to predict the chaotic time series using the artificial neural networks. This learning algorithm based on the generalized Chebyshev polynomial is introduced for training neural networks. As Chebyshev, the values of functions are found by the cubic spline interpolation for the given set of data point. The Chebyshev and the obtained value are the new training patterns of the networks. By using of the orthogonal property of Chebyshev polynomials, each weight function can be expressed as a generalized Chebyshev polynomial, therefore, the weight function is a optimal approximation polynomial in the least-squares sense.
2
Database
The proposed technique is used to model a well known chaotic time series based on Lorenz map. Lorenz attractor is given by the following equations: dx dy dz = a(y − x) = −xz + bx − y = xy − cz, dt dt dt
(3)
where the parameters a, b and c are assigned the values as a = 10, b = 28 and c = 83 . This differential equation can be solved numerically using fourth-order Runge-Kutta integrator with a time step 0.01. The first 1000 samples of Lorenz map are plotted in Fig. 1.
Fig. 1. NO2 : The first 1000 samples of Lorenz map
474
F. Li
To examine the efficiency of proposed techniques, the real data of NO2 concentration observed at a site in Ningdong Energy and Chemistry Industry Base are also used. Yinchuan is the big city of western China. It is capital of Ningxia Hui Autonomous Region, and locates on upstream of Yellow River and middle of Ningxia plain. Region scope is in north latitude, east longitude. At present, Yinchuan urban district area is 1.5 million people, and 1,482 square kilometers, including three districts (Xingqing, Jinfeng and Xixia). It’s also the most industrialized and populated district of Ningxia. Well known as ”a land of rice and fish” in west-north of China, the region enjoys some of the favorable physical conditions, with a diversity of in natural resources and the suitability for growing various crops ([2]). The yearly average of N OX has been substantially increased (about 3ug/m3 ), since the beginning of monitoring in 2003; in the Yinchuan area. Suspended N OX is mainly produced by chemical and physical mechanisms (about 66%), vehicular traffic (24%), moreover, a further significant part of N OX is produced in the atmosphere because of residential heating (especially in winter)([3]). Yinchuan is experiencing high levels of air pollution due to Chemistry Industry and coal fire. The distant has a arid climate with extreme weather conditions. Temperature inversion often occurs during winter months whereas during summer months, wind-blown dust covers the basin. this led to accumulation of air pollutants over the discrict. Many Chemistry Industries, power plants, coal mining also adds to increasing air pollution in the basin. The hourly data of nitrogen dioxide concentration observed at the Ningdong environmental center were obtained from continuous ambient air quality measurement analyzer. Fig. 2 shows the nitrogen dioxide time series observed during July and December 2008 in Ningdong Energy and Chemistry Industry Base. It can be seen that nitrogen dioxide concentration varies from 3 to 417 ug/m3 with an average of 63ug/m3. High levels were observed between 6 a.m. and 10 p.m.
Fig. 2. The nitrogen dioxide time series observed at the Ningdong environmental center
3
Methodology
The introduced technique is based on an artificial neural network that with generalized Chebyshev polynomial as active function. In the new scheme of prediction, the training of weights and testing procedure are to be dealt separately. The algorithm for both the cases is given as follows.
Application of Generalized Chebyshev Neural Network
3.1
475
Chebyshev Neural Network
CNN is a functional link network based on Chebyshev polynomials. One way to approximation a function by a polynomial is to use a truncated power series. The power series expansion represents the function with very small error near the point of expansion, but the error increases rapidly as we employ it at point farther away. The computational economy to be gained by chebyshev series increase when the power series is slowly convergent. Therefore, Chebyshev series are frequently used for approximations to functions and are much more efficient than other power series of the same degree. Among orthogonal polynomials, the Chebyshev polynomials occupy an important place, since, in the case of a broad class of functions, expansions in Chebyshev polynomials converge more rapidly than expansions in other set of polynomials. Hence, we consider the Chebyshev polynomials as basis function for the neural network. The Chebyshev polynomials can be generated by the following recursive formula ([7]): Ti+1 (x) = 2xTi (x) − Ti−1 (x), T0 (x) = 1. (4) For example, consider a two dimensional input patten X = (x1 , x2 )T . An enhanced pattern obtained by using Chebyshev function is given as: ϕ = (1, T1 (x1 )T2 (x1 ), · · · , T1 (x2 )T2 (x2 ), · · ·)T ,
(5)
where Ti (xj ) is a generalized Chebyshev polynomial, i the order of the polynomials chosen and j = 1, 2. The different choices of T1 (x) are x, 2x, 2x − 1 and 2x + 1. In this paper, T1 (x) is chosen as x. The output of the single layer neural network is given by: ˆ ϕ, yˆ = W
(6)
ˆ are the weights of the neural network given by W ˆ = (w1 , w2 , · · ·)T . where W 3.2
Learning Algorithm
The problem of identification consists in setting up a suitably parameterized identification model to optimize a performance function based on the error between the plant and identification model outputs. CNN, which is a single layered neural network is linear in the weights and nonlinear in the inputs is the identification model used in this paper. We shall use the recursive least squares method with forgetting factor as the learning algorithm for the purpose of on-line weight updation. The performance function to be minimized is given by: E=
n i=1
λn−i |e(i)|2 .
(7)
476
F. Li
The algorithm for the discrete time model is given by: ⎧ ˆ (t) = W ˆ (t − 1) + n(t)e(t), ⎪ W ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ λ−1 P (t−1)ϕ(t) ⎪ ⎨ n(t) = 1+λ−1 , ϕT (t)P (t−1)ϕ(t) ⎪ ⎪ ⎪ e(t) = y(t) − yˆ(t), ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ P (t) = λ−1 P (t − 1) − λ−1 n(t)ϕT (t)P (t − 1),
(8)
where λ is the forgetting factor and ϕ is the basis function formed by the functional expansion of the input and P (0) = cI, c is a positive constant, ||P (t)|| < M0 , M0 is a constant. All matrix and vectors are of compatible dimension for the purpose of computation. The next pattern is then presented to the network and the above exercise is repeated. This exercise is continued for all the patterns to be presented to the network. For each pattern and each iteration, the error can be computed as the difference of network output and desired output, so the network can be trained on the error minimization criteria. The weights for each layer associated with each pattern should be stored in the memory. Once the network is trained for all the patterns, the next step is to examine its generalization capabilities.
4
Results and Discussion
The application of an ANN to the urban context in Yinchuan, particularly for the area of the Ningdong Energy and Chemistry Industry Base, near the Yellow river, is presented. The experimental data were obtained from the monitoring units of the Ningdong environmental center since 2008. The neural network was trained, tested and validated for many specific input configurations to forecast the concentrations of the single pollutant by varying the available information. The computations were performed using MATLAB. For Lorenz map, the signal of first 1000 samples is obtained to consider as the training set, the next 250 samples are used as the testing set and subsequent 250 samples are considered as the prediction set. For nitrogen dioxide time series, the data available during November-December 2008 are divided into three parts. The data observed during November 2008 are considered for training, whereas next 15 days data are considered for testing and subsequent data are used for examining the prediction capabilities of the models. The next months data are divided equally in the testing and prediction sets. The testing and validation data should lie within the range of training data, which is evident from Fig. 2. The architecture of the CNN consist of two parts. namely numerical transformation part and learning part. Numerical transformation deals with the input to the hidden layer by approximate transformable method. The transformation is the functional expansion
Application of Generalized Chebyshev Neural Network
477
of the input patten comprising of a finite set of Chebyshev polynomials. As a results the Chebyshev polynomial basis can be viewed as a new input vector. The CNN finally converged with the topology 5-8-1 and 6-14-1 for Lorenz and nitrogen dioxide time series, respectively. For MLP with BP, the input to the network is the embedded space of time series with dimension and output is the next point in the time series. The network was trained with momentum constant and the learning rate was adoptive in this case. The number of hidden neurons was varied between 5 and 500. An error goal is specified as convergence criteria. With the variation in the number of hidden neurons and on convergence basis, the three-layer network with topology 5-10-1 and 6-15-1 is selected for Lorenz map and nitrogen dioxide time series prediction, respectively. The prediction results are plotted in Figs. 3 and 4.
Fig. 3. The observed and predicted time series of Lorenz map: a, b, and c are the training set , the testing set and the prediction set, respectively
478
F. Li
Fig. 4. The prediction of N O2 time series using BP and new scheme: a, b, and c are the training set , the testing set and the prediction set, respectively
5
Conclusions
The CNN technique is proposed to predict the chaotic time series of air pollutant concentrations based on the neural network modeling technique. The applicability of the proposed scheme is demonstrated using a chaotic Lorenz map and nitrogen dioxide concentration time series. Comparing the results of MLP with BP and CNN techniquei, it is observed that the new scheme provides better predictions than the standard one with relatively less prediction error. Also, the invariant measures computed for the predicted time series using new scheme are very similar to the original one, whereas the predicted time series using MLP with BP do not posses the similar dynamic measures as the original one. Having the knowledge of internal dynamics enables the new approach to provide the prediction with better accuracy than the MLP with BP of prediction. Considering the chaotic nature of air pollutant concentration time series, the approach
Application of Generalized Chebyshev Neural Network
479
seems to be very useful in predictions. Another advantage is the univariate nature of the approach, which takes into account the knowledge of embedding dimension. The scheme, however, requires more computational efforts in terms of computer memory and computational time. This result lead us to reduce the time requirements of the CNN in the future.
Acknowledgement This work was supported by NSFC (61063020), Ningxia Ziran (NZ0907) and 2009 Ningxia Gaoxiao Foundations.
References 1. Duenas, C., Fernandez, M.C., Canete, S., Carretero, J., Liger, E.: Stochastic model to forecast ground-level ozone concentration at urban and rural area. Chemosphere 61, 137–1389 (2005) 2. Comrie, A.C.: Comparing neural networks and regression models for ozone forecasting. Journal of Air and Waste Management Association 47, 653–663 (1997) 3. Gardner, M.W., Dorling, S.R.: Neural network modeling and prediction of hourly NOx and NO2 concentrations in urban air in London. Atmospheric Environment 33, 709–719 (1999) 4. Sun, Y.Q., Hui, Q., Wu, X.H.: Hydrogeochemical characteristics of groundwater depression cones in Yinchuan City. Northwest China, Chinese Journal of Geochemistry 26, 350–355 (2007) 5. Sun, Y.C., Miao, O.L., Li, Y.C.: Prediction result analysis of air quality dynamic prediction system in Yinchuan city. Arid Meteorology 24, 89–94 (2006) 6. Han, Y.W., Gao, J.X., Li, H.: Ecology suitability analysis on the industry overall arrangement plan of Ningdong Energy Sources and Chemical Industry Base. Environmental Science and Management 32, 143–147 (2007) 7. Bishop, A.: Neural Networks for Pattern Recognition. Oxford University Press, Oxford (1995) 8. Wang, Y.M., Zhao, Y.F.: Issues of environmental protection and ecological construction of Ningdong Energy and Chemistry Industry Base. Ningxia Engineering Technology 7, 190–193 (2008) (in Chinese with English abstract) 9. Chu, G., Mi, W.B.: An analysis to the ecological carrying capacity of Yinchuan city. Urban Problems 10, 39–42 (2008) (in Chinese with English abstract)
Financial Time Series Forecast Using Neural Network Ensembles Anupam Tarsauliya, Rahul Kala, Ritu Tiwari, and Anupam Shukla Soft Computing & Expert System Laboratory, ABV - IIITM, Gwalior-474010, India {anupam8391,rkala001,drritutiwari,dranupamshukla}@gmail.com
Abstract. Financial time series has been standard complex problem in the field of forecasting due to its non-linearity and high volatility. Though various neural networks such as backpropagation, radial basis, recurrent and evolutionary etc. can be used for time series forecasting, each of them suffer from some flaws. Performances are more varied for different time series with loss of generalization. Each of the method poses some pros and cons for it. In this paper, we use ensembles of neural networks to get better performance for the financial time series forecasting. For neural network ensemble four different modules has been used and results of them are finally integrated using integrator to get the final output. Gating has been used as integration techniques for the ensembles modules. Empirical results obtained from ensemble approach confirm the outperformance of forecast results than single module results. Keywords: Neural Network, Ensemble, BPA, RBF, RNN, Time Series.
1 Introduction Financial forecasting is a standard benchmark example of time series analysis problem which is challenging due to high noise, volatility, and non-linearity [1]. These characteristics suggest that there is no complete information that could be obtained from the past behavior of financial markets to fully capture the dependency between the future price and that of the past. The domain contains some linear and nonlinear characteristics [2], and thus need to build a model is required which contains linear and nonlinear characteristics. On the other hand, there is some risk to investment in the stock market due to its unpredictable behaviors. Thus, an intelligent prediction model for financial data would be of wider interest. ANNs are relatively recent method for business forecasting. The success of ANN applications can be qualified of their features and powerful pattern recognitions capability [3]. The use of ANN in this field has been growing due to their ability to model complex nonlinear systems on sample data. Back Propagation algorithm does the task of tuning of the ANN to enable it perform as desired [4]. Here the algorithm sets the various weights and biases of the ANN to their optimal values. The aim of training is to ensure that the network gives the closest desired outputs. The radial basis function network is another type of ANN that performs unsupervised or Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 480–488, 2011. © Springer-Verlag Berlin Heidelberg 2011
Financial Time Series Forecast Using Neural Network Ensembles
481
supervised learning. These networks, which are known for their ability to model complex scenarios in a very simple architecture, are used for classification, series prediction, control applications, and so forth. The radial basis function network uses radial basis functions as activation functions, which allows it to easily solve the problem or perform a mapping of the inputs to outputs [5]. Recurrent neural networks are a special type of ANN in which the output of one or more neurons is fed back into the network as inputs, forming the input for the next iteration. These networks offer a good means of machine learning in which past outputs may potentially affect the next outputs [6].The conventional training algorithms of the neural networks are prone to get struck at local minima. This is because of the gradient approaches, or similar approaches of tuning the parameters that they employ. Genetic Algorithms [7] use a variety of individuals, each of which presents an ANN. Each of the ANN or individual represents a point in the error space with some degree of performance or fitness value. These algorithms use the relative fitness or performance to generate or move the various individuals in this error space to finally enable convergence at the optimal value.
2 Algorithms and Methods 2.1 Backpropagation Algorithm General BPA Neural Network architecture shown in Fig. 1 includes input layer, hidden layer and output layer. Each neuron in input layers are interconnected with neurons in hidden layers with appropriate weights assigned to them. Similarly each neuron of hidden layer in interconnected with output layer neuron with weights assigned to the connection. On providing learning data to the network, the learning values are passed through input to hidden and finally to output layer where response for input data is obtained. For optimizing the error obtained, the error values are back propagated to make changes in weights of input to hidden layer and hidden to output layer. With error back propagation input response are made converged to desired response [4] [8]. A general structure of BPA neural network has been shown below.
Fig. 1. General architecture of a Backpropagation Neural Network
2.2 Radial Basis Neural Network Radial Basis Function Networks [5] has a simple 3 layer ANN architecture. The first layer is the input layer where the inputs are applied. The second layer is the hidden
482
A. Tarsauliya et al.
layer. The last layer is the output layer where the system delivers its output. These networks however differ in the manner in which they process information for the generation of the outputs from the inputs. Consider the input space of the problem being considered. Each neuron of the hidden layer in the RBN corresponds to a location in the input space. The various neurons are spread all round the input space. The input itself is a point in this input space consisting of some value of different attributes. At the time of processing of the inputs, each of these neurons calculates its distance from the input. The outputs of the various neurons of the hidden layer serve as the inputs of the output layer. This layer is a linear layer and simply computes the weighted sum of the various hidden layer neurons. Each connection of this layer corresponds to the weight that is multiplied by the associated hidden neuron. In this way the system generates the final output. 2.3 Recurrent Neural Network Recurrent Neural Networks architecture shown in Fig. 2 [6] are cyclic in nature unlike the other models that were arranged in a manner that cycles can never be formed. The conventional ANNs have a big limitation of their static nature. The information flow is only forward where the predeceasing layers process data and forward it to the next layers. These networks allow backward connections where every neuron gets the feedback from the forward layers as well as itself [11]. This allows the ANN to again process data and again transmit the output for further processing by the other layers in backward and forward direction to which it is connected. In this manner there is a lot of dynamism which drives these networks. Further the algorithm operates in timestamps or iterations where a unit processing is performed by each of the neurons in a single iteration. The output of the system continuously changes with time as the layers undergo changes driven by the feedback connections.
Fig. 2. General architecture of a Recurrent Neural Network
2.4 Evolutionary BPA Neural Network A genetic algorithm performs a parallel stochastic search. It is parallel in the sense that many solutions in the population are considered simultaneously and the fittest solutions are chosen for reproduction. It is stochastic in the sense that the solutions are randomly selected for refinement and the likelihood of a solution being selected is
Financial Time Series Forecast Using Neural Network Ensembles
483
enhanced by the quality of the solution or its fitness, and the search direction is also chosen randomly. Genetic Algorithm evolves ANNs by fixing the values and the weights and biases of the various nodes i.e. the GA optimizes the network parameters for better performance [13]. Steps followed for evolution of ANN [12][13] are problem encoding, creation of random initial state, fitness evaluation, and genetic operator including selection, crossover, mutation and elite, generate next generation, testing and verification.
Fig. 3. Flow Diagram for working of Genetic Algorithm
2.5 Ensembles Ensembles make use of multiple ANNs to solve the same problem. Each of the ANN is given the complete part of the problem input. Each ANN solves the problem using its own approach. All these ANNs or modules return a solution to the integrator which then computes the final output [14]. The input is given by the system to each of the modules. Each module is similar in regard to the inputs and the outputs. Each module represents an independent ANN of its own which is trained separately using the same training data. The training may hence be carried out in parallel among the various ANNs or modules. In this manner all the modules or ANN solve the same problem and make their distinct contributions. All the outputs are communicated to a central integrator that carries the next task of computing the final output of the system based on the system module outputs. Justification to ensembles revolve around the fact that they are more resistant to accidental under-training of a single ANN, or it being accidentally struck at a local minima, since the effect may be averaged by others. In gating as integration technique [15], we try to combine the various outputs of the modules and generate the final output of the system by a simple function. The easiest implementation of this is to make the integrating function take a weighted or simple mean of the various outputs of the modules. This gives the final system output of the system.
484
A. Tarsauliya et al.
Fig. 4. General Architecture of a Neural Network Ensemble
3 Experiment and Results 3.1 Research Data We have used two different data sets for our research. The data (un-normalized) have been collected from Prof. Rob J Hyndman’s website http://robjhyndman.com/TSDL/ . Data sets analyzed are as: Daily closing price of IBM stock, Jan. 01 1980 - Oct. 08 1992 [10], Daily S & P 500 index of stocks, Jan. 01 1980 - Oct. 08 1992 [10]. The first few data indexes of series are used for the research. For training, 80% of the data of the series has been used and remaining 20% is used for testing. Table 1. Time Series Data Sets Description Time Series Daily IBM
Standard Deviation 5.736916
Mean 60.89908
Count 500
Daily S&P
10.1308
123.3728
500
3.2 Methodology Time series dataset is divided into training and testing dataset. Dataset division carried out is based on the random probability followed which bifurcates the dataset into training and testing dataset. Training dataset which is 80% of the original dataset is used for defining and training of the neural network. Testing dataset which is remaining 20% of the original dataset is used for performance measure. Performance measurement carried out in the experiment is root mean square error. After dataset division, normalization followed by logarithmic scale conversion is carried out to draw better timely relation between index values. Thus processed training dataset is used for defining and supervised learning of the neural network. For whole experiment, total number of input neurons and total number of output neuron are kept 10 and 01 respectively. Neural Network training followed by testing is carried out one by one on all four modules to record the individual performance for the individuals. Corresponding graphs between actual and predicted values are plotted to analyze the performance graphically.
Financial Time Series Forecast Using Neural Network Ensembles
485
Fig. 5. Used Architecture of Neural Network Ensemble
For neural network ensemble used architecture as shown in figure 5, backpropagation, radial basis, recurrent and evolutionary neural networks are considered as individual modules of ensemble. Each modules gives output for given input to the ensemble system. Output of these modules as discussed is integrated by gating technique. In gating, weighted mean is followed for outcomes as final output result. Thus found outcome of the neural network ensemble is compared with the individual performance of standalone modules. Graph for actual and predicted values is also plotted for neural network ensemble for carrying out the graphical analysis of individual and ensemble performances. 3.3 Empirical Results Table 2 shown below represents the mean root mean square error for both of the time series Daily IBM and Daily S&P. Table 2. Results Obtained for Time Series Methodology BPA RBN RNN EANN-BPA Ensemble
Daily IBM (Mean RMSE) 1.9823 1.2261 0.9918 1.4725 0.9743
Daily S&P (Mean RMSE) 2.8913 1.5217 1.1371 2.1237 1.1261
3.4 Graphical Analysis
Fig. 6. Graphs for Actual and Predicted Values for Daily IBM and Daily S&P using traditional Backpropagation Algorithm with mean RMSE = 1.9823 and 2.8913 respectively
486
A. Tarsauliya et al.
Fig. 7. Graphs for Actual and Predicted Values for Daily IBM and Daily S&P using Radial Basis Network with mean RMSE = 1.2261 and 1.5217 respectively
Fig. 8. Graphs for Actual and Predicted Values for Daily IBM and Daily S&P using Recurrent Neural Network with mean RMSE = 0.9918 and 1.1371 respectively
Fig. 9. Graphs for Actual and Predicted Values for Daily IBM and Daily S&P using Evolutionary BPA Neural Network with mean RMSE = 1.4725 and 2.1237 respectively
Fig. 10. Graphs for Actual and Predicted Values for Daily IBM and Daily S&P using Neural Network Ensemble with mean RMSE = 0.9743 and 1.1261 respectively
Financial Time Series Forecast Using Neural Network Ensembles
487
4 Conclusions Neural network ensemble has been used in order to improve the financial forecasting performance. It is based on the taking different learning models as individual modules, where each module accounts for the performance of the final result of the system. Output values from the individual modules are integrated using gating as integration technique in order to have the final output results. Justification to ensembles revolve around the fact that they are more resistant to accidental under-training of a single ANN, or it being accidentally struck at a local minima, since the effect may be averaged by others. As a performance measurement root mean square error is used. Neural network ensembles are computationally efficient and it shows a very good behavior to estimation values. Accuracy results and comparison graph of actual and predicted index values shows the better performance of neural network ensemble over performances of individual module used. Order of performance on the basis of results can be adjudged as Ensembles > RNN > RBN > EANN-BPA > BPA.
References 1. Wang, D., Li, Y.: A novel nonlinear RBF neural network ensemble model for financial time series forecasting. In: 2010 Third International Workshop on Advanced Computational Intelligence (IWACI), August 25-27, pp. 86–90 (2010) 2. Zhou, H.-r., Wei, Y.-h.: Stocks market modeling and forecasting based on HGA and wavelet neural networks. In: 2010 Sixth International Conference on Natural Computation (ICNC), August 10-12, vol. 2, pp. 620–625 (2010) 3. Ning Y.-c., Zheng X.-x., Zhao, J., Jiang, G.-j.: Forecasting the natural forest stand age based on artificial neural network model. In: 2010 International Conference on Computer and Communication Technologies in Agriculture Engineering (CCTAE), June 12-13, vol. 3, pp. 536–539 (2010) 4. Zhai, F., Wen, Q., Yang, Z., Song, Y.: Hybrid forecasting model research on stock data mining. In: 4th International Conference on New Trends in Information Science and Service Science (NISS), May 11-13, pp. 630–633 (2010) 5. Karimi, B., Menhaj, M.B., Saboori, I.: Robust Adaptive Control of Nonaffine Nonlinear Systems Using Radial Basis Function Neural Networks. In: 32nd Annual Conference on IEEE Industrial Electronics, IECON 2006, November 6-10, pp. 495–500 (2006) 6. Gupta, L., McAvoy, M., Phegley, J.: Classification of temporal sequences via prediction using the simple recurrent neural network. Pattern Recognition 33(10), 1759–1770 (2000) ISSN 0031-3203 7. Shopova, E.G., Vaklieva-Bancheva, N.G.: BASIC–A genetic algorithm for engineering problems solution. Computers & Chemical Engineering 30(8), 1293–1309 (2006) ISSN 0098-1354 8. Lee, T.-L.: Back-propagation neural network for the prediction of the short-term storm surge in Taichung harbor. Engineering Applications of Artificial Intelligence 21(1), 63–72 (2008) ISSN 0952-1976 9. Casasent, D., Chen, X.-w.: Radial basis function neural networks for nonlinear Fisher discrimination and Neyman-Pearson classification, Neural Networks. In: Advances in Neural Networks Research: IJCNN 2003, June-July 2003, vol. 16(5-6), pp. 529–535 (2003) ISSN 0893-6080
488
A. Tarsauliya et al.
10. Hipel and McLeod Time Series Modelling of Water Resources and Environmental Systems. Elsevier, Amsterdam (1994) 11. Assaad, M., Bone, R., Cardot, H.: A new boosting algorithm for improved time-series forecasting with recurrent neural networks. Information Fusion, Special Issue on Applications of Ensemble Methods 9(1), 41–55 (2008) ISSN 1566-2535 12. Guo, Y., Kang, L., Liu, F., Sun, H., Mei, L.: Evolutionary Neural Networks Applied to Land-cover Classification in Zhaoyuan. In: IEEE Symposium on Computational Intelligence and Data Mining, CIDM 2007, March 1-April 5, pp. 499–503 (2007) 13. Sexton, R.S., Gupta, J.N.D.: Comparative evaluation of genetic algorithm and backpropagation for training neural networks. Information Sciences 129(1-4), 45–59 (2000) ISSN 0020-0255 14. Tsai, C.-F., Wu, J.-W.: Using neural network ensembles for bankruptcy prediction and credit scoring. Expert Systems with Applications 34(4), 2639–2649 (2008) ISSN 09574174 15. Oza, N.C., Tumer, K.: Classifier ensembles: Select real-world applications. Information Fusion, Special Issue on Applications of Ensemble Methods 9(1), 4–20 (2008) ISSN 1566-2535
Selection of Software Reliability Model Based on BP Neural Network Yingbo Wu1 and Xu Wang2 1 School of Software Engineering School of Mechanical Engineering, Chongqing University, Chongqing 400044, China [email protected], [email protected] 2
Abstract. Software reliability models are used for the estimation and prediction of software reliability. In a situation where reliability data is lacking and numerous models are available, the key to quantitative analysis of software reliability lies in the selection of an optimal model. This paper describes a model selection method which involves an encoding scheme with multiple evaluation metrics and uses back-propagation (BP) neural network to perform clustering algorithm. Finally, by utilizing 20 sets of failure data that are collected in actual software development projects, a simulation experiment is made. The result shows the method is both correct and feasible. Keywords: software reliability model, BP neural network, model selection.
1 Introduction Software quality refers to the totality of features and characteristics of a software product that bear on the ability to satisfy specific needs. Among them, the software reliability, as the inherent feature of software quality, has become an important parameter in software quality assessment because of its wide coverage, ready quantization and close association with other software quality features. Software reliability control and assessment must be implemented with a software reliability model. Since the initial model was introduced in 1970s, hundreds of models have been proposed. However, up until now, no general model has been confirmed that can be applied to all software products. The inconsistent results yielded by applying different software reliability models derive from the different assumptions underlying every model. Because each reliability model has its own specific theoretical basis, thus different models deduce and calculate reliability in different ways, which in turn produces different reliability assessment results. At the moment, it is difficult to put forward a universal model. Besides, the universal model only adds more complexity to inconsistency in model application. Therefore, the most feasible way to solve the inconsistency issue is to select optimal model and combine different models. As far as software technicians are concerned, in a situation where reliability data is lacking and numerous models are available, how to select appropriate model to better ensure software reliability has become a heated topic. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 489–496, 2011. © Springer-Verlag Berlin Heidelberg 2011
490
Y. Wu and X. Wang
Selecting a reliability model is a complex decision which should be based on multiple criteria [1]. [2] introduces the concept of expert system on reliability, and defined model selection as an optimization issue based on preliminary result from user’s software failure data and bound by preset optimization principles. Currently, the selection of software reliability model is primarily based on observer’s personal experience. By observing actual testing performance, modifications are made in software reliability growth model. [3] describes the unascertained-based software reliability model selection, and at this basis, an automated tool for selecting reliability model is proposed. [4] presents a meta-learning approach and describes experimental results from the use of a neural network meta classifier for selection among different kind of reliability models. [5] has offered a new insight into reliability model selection: it is generally considered appropriate to select the same model for similar failure data sets. To be specific, different software failure data are sent to a classifier where cluster takes place, and software thus classified into the same category adopt the same model. Inspired by clustering idea, a means to select reliability model has been proposed which takes advantage of classifying ability of BP (back propagation) neural network.
2 BP Neural Network Model 2.1 Mechanism of BP Neural Network Artificial neural network is a technological system which simulates the structure and functions of neural networks in human brain by using engineering technology. Numerous nodes are abstracted from human brain, which are termed as processing unit. These processing units connect with each other to form a neural network. Because of the particularity of neural network technology, it plays significant roles in the field of software reliability, and has broad prospects [6]. Mechanism of the neural network is illustrated in Figure 1.
∑
y
F (∑ WiXi
)
Fig. 1. Mechanism of the Neural Network
In Figure 1, X1, X2, Xn is the input neuron, which refers to the information from axons of n neurons at the early level. A is the threshold of i neurons; W1, W2, Wn i neurons express weight coefficient of neuron i to X1, X2, Xn, namely, the efficiency of synaptic transmission; Y1 is the output of i neurons; f [•] express an activation function which determines the manner of the output when i neurons reach its threshold by the concerted stimulation from Inputs X1, X2, and Xn. BP neural network adopted in this paper is a kind of forward neural network without feedback. It can establish the global nonlinear mapping between input and output variables through learning from certain samples. It is by far the most widely used
Selection of Software Reliability Model Based on BP Neural Network
491
neural network, which is so named because it adopts back propagation proposed in 1986 by Rumelhart et al. BP algorithm is a learning algorithm for feed-forward multilayer network which intends to solve weight coefficient optimization of multilayer forward neural network. Its network architecture is shown in Figure 2.
...
...
...
...
⊗ Fig. 2. Network Structure of BP
It contains the input layer, the output layer and the intermediate layer between the input and output layers. The intermediate layer is single-or multi-layered, which is also referred to as hidden layer because of its non direct contact with the outside world. By the same token, neurons in the hidden layer are known as hidden units. Although the hidden layer has no contact with the outside world, its state of affair will affect the relationship between input and output. In other words, weight coefficient changes in the hidden layer will result in changes in the overall performance of the multilayer neural network. Suppose there exists an M-layered neural network with Sample X at the input layer; the sum total of i neurons input at the k layer is expressed k
k
as U i , and the output is expressed as X i ; weight coefficient of j neurons at Layer k1 to i neurons at Layer k is referred to as Wij, and the activation function of each neuron is f, then the relationship between variables can be expressed in a mathematical formula as (1):
X ik = f (U ik ), U ik = ∑ WijX kj −1 j
(1)
Back-propagation algorithm involves two processes, namely, forward propagation and back propagation. These two processes are summarized as follows: 1) Forward propagation. Input samples are processed at hidden units at all hidden layers. After that, they are sent to the output layer. In the course of hierarchical
492
Y. Wu and X. Wang
processing, neurons at each layer only influence neurons at the next level. At the output layer, comparison is made between the actual output and the estimated output. If the actual output is inconsistent with the estimated output, then back propagation comes into play. 2) Back-propagation. In back propagation, error signal is transmitted in a way that is exactly opposite to the forward propagation. Adjustments are made to the weight coefficient of every neuron at every hidden layer so that error signals are reduced to the minimum. In essence, BP algorithm is to obtain the minimum value of error function. This algorithm adopts the steepest descent method in nonlinear programming and adjusts weight coefficient with gradient descent approach of error function. 2.2 Learning Steps in BP Algorithm
When back-propagation algorithm is applied to multiplayer feed forward network, the following steps can be taken to obtain the network weight coefficient by recursion. Note that for each layer with n neurons, and for Neuron i at Layer K, then n weight coefficients Wi1,Wi2,…,Win are available, a further Wi,n+1 expresses threshold θ i ; besides, when sample X is input, then x=(X1,X2,…,Xn,1). The algorithm takes the following steps: 1) 2) 3)
Set initial weight coefficient of Wij. Set a smaller non-zero random number for Wij at each layer, where Wi,n+1= −θ . Input a sample x=(X1,X2,…,Xn,1) and the corresponding estimated output Y=(Y1,Y2,…,Yn). Calculate the output at each layer. For the output of neuron i at Layer K, then n
U ki = ∑ WijX kj −1 , X nk+−11 = 1, Wi , n + 1 = −θ , X ik = f (U ik ) i =1
4)
(2)
k
Calculate the learning errors at all layers d i . For the output layer m then dim = X im (1 − X im )( X im − Yi )
(3)
while for the other layers, then
dik = X ik (1 − X ik )∑ Wijd kj +1 i
5)
(4)
Adjust weight coefficient Wij and the threshold θ . Then we get Wij (t + 1) = Wij (t ) − η ⋅ d kj ⋅ X
(5)
Selection of Software Reliability Model Based on BP Neural Network
493
Where ΔWij (t ) = −η ⋅ dik ⋅ X kj −1 + aΔWij (t − 1) = Wij (t ) − Wij (t − 1) 6)
(6)
When weight coefficient at each layer is obtained, judgment can be made on whether requirements are met based on given quality index. If met, the algorithm comes to an end; if not, return to step 3).
3 The Execution Process of Model Selection Based on BP Network It is inappropriate to directly use failure data as BP network input data, before failure data is encoded [7]. The encoded data are then clustered through a BP network which is stabilized by supervised learning. All these done, optimal model selection can be achieved. 3.1 Software Reliability Model
The three models proposed in [8] serve as the candidate model, referred to as JM, GO, and LV respectively. These three models are widely used in reliability analysis. In practice, candidate models can be any proposed reliability model. For sake of convenience, this paper employs the above-mentioned three models with data in [7] as comparison data. Among the three models, JM is a mathematical model of Markov process, which is the most representative among the first software reliability models; GO is the best-known NHPP process model; and LV is a typical Baysian model. These three models include both selective process model and non-selective process model. Thus, it can be drawn that they generally represent the features of most software reliability models and comparisons can be made between them. The encoded software failure data will be divided into three categories, with each category corresponding to these three models. 3.2 Encoding
In order to compare application ability among software reliability models, the researchers have put forward many evaluation metrics. This paper uses 5 mature ones, namely: GOF(good-of-fit), PL(prequential likelihood), MB(model bias), MBT(model bias trend), and MN(model noise). The definition and calculation method of these evaluation metrics can be found in [8]. This paper will not discuss them for lack of space. The three models are encoded with 1 for JM, 2 for GO, and 3 for LV. Coding steps as following: 1)
2) 3)
For given software failure data, GOF values of the three models are calculated. Based on GOF values, the models are arranged by voting. The model with the best GOF scores 3 points, the second best 2 points, and the worst 1 point. The model with the highest score is coded as x1; x2, x3, x4, x5 are obtained by calculating the values of the remaining evaluation metrics in the same way as step 1); The vector (x1, x2, x3, x4, x5) is the code that corresponds to specific software failure data.
494
Y. Wu and X. Wang
Table 1 illustrates Data Set J2 of Project JPL in [9], with numbers in brackets indicating the score, the encoding results are expressed as {1,3,3,3,2}. Table 1. Encoding of Data Set J2 Evaluation Principles Good-of-Fit Accuracy Model Bias Model Bias Trend Model Noise
JM Model
GO Model
LV Model
Scoring No.
0.162(3) 1074(2) 0.3378(2)
0.182(1) 1075(1) 0.3378(2)
0.17(2) 1051(3) 0.2592(3)
1 3 3
0.4952(2)
0.4954(1)
0.1082(3)
3
32607(2)
2539(3)
2333(1)
2
3.3 The Model Selection Process
Firstly, baseline data encoding offers learning module for BP network. This paper employs three models of JM, GO, and LV, thus the baseline data are encoded as {1,1,1,1,1}, {2,2,2,2,2} and {3,3,3,3,3} to represent respectively appropriate models of JM (1), GO (2), and LV (3). Obviously, if the first encoded vector is input, the estimated result by BP network computing should be 1. Similarly, the estimated output of second input vector should be 2. And the estimated output of the third vector should be 3. Based on learning algorithm stated in Section 2.2, calculations continue until the probability of getting correct (estimated) output stabilizes. With BP network being stable and weight coefficient value Wi being optimal, at this point, learning ends and actual calculations come into play. Next, encode the actual failure data. Then, the encoded data are input into the stabilized BP network to receive clustering algorithm. Finally, by referring to the above-mentioned model numbers of the three models, judgment can be made on which software reliability model is most suitable for the kind of software with given failure data.
4 Simulation Analysis We make the simulation by using 20 sets of failure data that are collected in actual software development projects. These 20 data sets originate from Data Set DACS published 1979 by Musa [7]. DACS are reasonable with good performance. The 20 data sets are encoded as Data1, Data2, ⋯, Data20. Among them, Data1, Data2 and Data3 are defined as baseline data, coded as {1,1,1,1,1}、{2,2,2,2,2} and {3,3,3,3,3}. Table 2 lists the results obtained by this approach and the cumulative ranking results commonly used in engineering. By comparison, it can be found that the results in Data7 and Data14 differ with each other. Therefore, the approach proposed in this paper has certain reliability. The use of Matlab neural network toolbox makes possible complex calculations in BP network, and ensures accuracy in calculation. Compared with Kohonen network-based approach in [7], BP network is advantageous in that it is a supervised learning approach, where empirical data are adopted as sample to guide network learning. It is more stable than unsupervised autonomous learning. Besides, the error ratio of this approach relative to cumulative ranking
Selection of Software Reliability Model Based on BP Neural Network
495
approach is 10%; while those of Gaussian Mixture Model as in [1] and comparative error coefficient as in [10] are 15% and 23% respectively. This also confirms the validity and accuracy of this approach. Table 2. Classification of Simulation Data Data No.
Coding Result
Accumulation Ordering
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
11111 22222 33333 33312 21131 21131 21121 23111 22221 33131 13233 21211 33322 22311 12311 12313 21213 23333 11123 13332
JM(1) GO(2) LV(3) LV(3) JM(1) JM(1) JM(1) JM(1) GO(2) LV(3) GO(3) JM(1) LV(3) GO(2) JM(1) JM(1) GO(2) LV(3) JM(1) LV(3)
Computing Result of Neural Network JM(1) GO(2) LV(3) LV(3) JM(1) JM(1) GO(2) JM(1) GO(2) LV(3) GO(3) JM(1) LV(3) JM(1) JM(1) JM(1) GO(2) LV(3) JM(1) LV(3)
5 Conclusions Extensive researches at home and abroad have indicated that several evaluation metrics should be taken into account in determining model application. This paper involves an encoding scheme with multiple evaluation metrics and uses neural network to perform clustering algorithm, thus offering new insights into model selection. This new approach is characterized by high precision, simple structure, and fast calculating speed. However, this approach is not without flaws. First of all, 17 failure data sets are used in this paper and baseline data have involved in supervised learning for nearly 80 times. Although the accuracy has somewhat been verified in simulation experiment, more failure data should be used and more learning be carried out to further enhance the accuracy of the network. Next, BP network learning is an important step, where learning sample is essential to model stability and accuracy. The essence of this approach is to automatically optimize standard weight coefficients through sample learning by BP network. Therefore, in order to strengthen the accuracy and stability of the network clustering, further study is needed on how to collect and select empirical data to supervise network learning. Finally, as model selection cannot be separated from model evaluation metrics, research on and advancement of more effective model evaluation metrics will further improve model selection approaches.
496
Y. Wu and X. Wang
References 1. Wang, H., Liu, C., Jin, M.: Software Reliability Growth Model Selection and Combination: A New Approach. Computer Engineering and Applications 21(4), 21–24 (2002) 2. Str Ingfellow, C., Andrew, S.A.: An Empirical Method for Selecting Software Reliability Growth Models. Journal of Empirical Software Engineering 7(4), 319–343 (2002) 3. Zhang, Y., Liu, Y.: Research on Software Reliability Model Selection Based on Unascertained Set. Systems Engineering Theory and Practice 26(8), 91–94 (2006) 4. Caiuta, R., Pozo, A., Emmendorfer, L., Vergilio, S.R.: Selecting software reliability models with a neural network meta classifier. In: IEEE International Joint Conference on Neural Networks(IJCNN 2008), pp. 3747–3754. IEEE Press, New York (2008) 5. Xie, M., Hong, G.Y., Wohlin: Software reliability prediction incorporating information from a similar project. Journal of System and Software 3(5), 43–48 (1999) 6. Karunanithi, N., Whitley, D., Malaiya, Y.K.: Using Neural Networks in Reliability Prediction. IEEE Trans. on Software Engineering 9(4), 53–59 (1992) 7. Wu, Q., Hou, C., Yuan, J.: Selection of software reliability model based on Kohonen network. Computer Applications 25(10), 2331–2333 (2005) 8. Michaelrl: Handbook of Software Reliability Engineering. IEEE Computer Society Press, New York (1996) 9. Mussa J.D.: Software Reliability Data. DACS, RADC, http://www.dacs.dtic. Mil/databases/sled/swrel.shtml 10. Song, X.: Software Reliability & Maintainability Evaluation Tool. Electronic Product Reliability and Environmental Testing 24(3), 16–21 (1999)
Atavistic Strategy for Genetic Algorithm Dongmei Lin1, Xiaodong Li2, and Dong Wang3 1
Center of Information and Education Technology, Foshan University, Foshan 528000, China 2 School of Computer Science and Information Technology, RMIT University, Melbourne, Australia 3 Department of Computer Science and Technology, Foshan University, Foshan 528000, China {dmlin,wdong}@fosu.edu.cn, [email protected]
Abstract. Atavistic evolutionary strategy for genetic algorithm is put forward according to the atavistic phenomena existing in the process of biological evolution, and the framework of the new strategy is given also. The effectiveness analysis of the new strategy is discussed by three characteristics of the reproduction operators. The introduction of atavistic evolutionary strategy is highly compatible with the minimum induction pattern, and increases the population diversity to a certain extent. The experimental results show that the new strategy improves the performance of genetic algorithm on convergence time and solution quality. Keywords: genetic algorithm; atavistic evolutionary strategy; atavistic operator; atavistic probability; premature convergence.
1 Introduction Genetic algorithm (GA) is a kind of stochastic search algorithm simulating the biological genetics and natural selection mechanism. Through studying the running mechanism of GA, Rudolph proved that GA does not necessarily converge only when reserving the best individuals [1]. From the perspective of mathematical analysis, the convergence process of GA can be viewed as an infinite approximation process, for example, the Markov process. When GA converges, the founded solutions are usually some approximate solutions or satisfactory solutions. The premature convergence phenomena of GA occur while the population evolves and reaches to a non-global optimal status. Under the status, the better solutions couldn't be found after more iteration operations. Xu etc. [2] put forward the concepts, premature set and population diversity, to analyze the causes and features that result in premature convergence, and illustrated that the maturation effect is the main cause which drives GA into premature convergence. Meanwhile, the premature convergence characteristic shows that the population diversity monotonically decreases. Accordingly, they established a new GA which could converge to the global optimal solutions with probability. Wang etc. [3] gave a new definition of premature convergence based on the fuzzy theory and method to establish the fuzzy model and measurement of population diversity, Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 497–505, 2011. © Springer-Verlag Berlin Heidelberg 2011
498
D. Lin, X. Li, and D. Wang
and designed a new strategy to prevent premature convergence in which the crossover and mutation probability could be self-adapt according to the population diversity. The new strategy could improve the performance of GA and prevent premature convergence. Fu etc. [4] put forward the definition of schema coefficient on the basis of the schema theorem to estimate the degree of schema monotonous. The new method, utilizing the schema coefficient to adjust the mutation probability, avoided the premature convergence due to schema monotonous when the algorithm converges. Zhou etc. [5] introduced the definition of life expectancy from the perspective recuperating losing schema and improving schema concentration. The population diversity was kept through controlling the schema diversity. Zhang etc. [6] put forward the ideal density model which guides the population searching toward to the chromosome family whose ancestral individuals are with higher fitness. Sultan etc. [7] introduced the time-table definition to control evolution strategy to keep the population diversity. Hrstka etc. [8] brought forward a targeted improved real encoding to control the premature convergence of GA. Many researchers introduced different encoding, evolutionary strategy, and diversity controlling method and so on, and these new methods prevent premature convergence to some extent. Above-mentioned researches show that the individuals with higher fitness could evolve adequately and the population would prematurely converge if the population does not have adequate diversity. In general GA, the genetic information will be changed when the number and structure of chromosome change, and this results in that the offspring characteristic changes also. To keep the population evolving and ultimately converging, the population must reserve the individual with best fitness [1]. The population scale must constrain in a certain number due to the constraint of computer storage space and computation time, so the individuals with better fitness replace those with worse fitness under the action of the selection operator, and these individuals will occupy the whole population after some evolution operations. Temporally, the algorithms fall into the premature convergence if it hadn't found the global optimal solution, and couldn't jump out the current search region which is reduced by this schema. There are two premature convergence features, the one is that the algorithm converged in the region not including the global optimal solutions; the other is that the algorithm fluctuated in the vicinity of the global optimal solution but couldn't find the global optimal solution. Fu etc. [9] found that the ability finding optimal solution will be enhanced if adding the atavistic operation into GA. Atavistic operation tries to help GA to break away the status of premature convergence. It might be a new effective method to retrain the premature convergence. Nevertheless, it isn’t given how to implement atavistic operation and related analysis in his work. In this paper, we demonstrate that the atavistic operation can be used to restrain the premature convergence for the traveling salesman problem (TSP).
2 Atavistic Evolutionary Strategies In biology, the population develops from simple to complex, from lower to higher according to the natural selection mechanism. Atavistic phenomena, as a kind of special genetic phenomena, provide the persuasive evidence for biological evolution. Atavism is that some organisms present one or more ancestral properties which had
Atavistic Strategy for Genetic Algorithm
499
disappeared for a long time, and is a kind of unusual biological degradation phenomena. When applying the phenomena to GA, the diversity would be increased to some extent, but the difficulty is how to judge which properties belong to atavism, and to control or induct these properties to increase the population diversity. For the above, the atavistic strategy for GA is put forward in this paper. The following briefly describes the process of GA, and then gives atavistic strategy on this basis. 2.1 Operation Process of GA Assumed that L is the encoding length, HL is the individual space, R0+ is the positive JJG N real set, F:Ω→ R0+ is the fitness function. Remarked X (t ) ⊂HL as tth generation Norder population. The operation process of general GA is as follow. Algorithm 1: Operation process of general GA First step (Initialization): Setting the population scale N, crossover probability Pc, mutation probability Pm and stop
JJG
condition; stochastically generating N individuals as the initial population X (0) ; t←0. Second step (Evaluating fitness):
JJG N
Computing all individual fitness in X (0) . Third step (Evolving):
JJG N
Selecting: Selecting M/2 pairs individuals as parents from X (t ) utilizing selection operator, M≥N. Crossover: Executing crossover operation on these parents according to Pc, and generating M candidate individuals. Mutation: Applying mutation operation to these new individuals according to Pm. Evaluating fitness: Computing all fitness of M new candidate individuals.
JJG N
Breeding: Selecting N individuals from X (t ) and M new candidate individuals
JJG N
to constitute new generation population X (t + 1) . Forth step (Checking stop condition):
JJG N
If satisfying stop condition, returning the individual with best fitness in X (t + 1) , otherwise setting t←t+1 and jumping to the third step.
In algorithm 1, the breeding operation in the third step is an important step to control the diversity, and to implement different evolution strategy also. In the process constituting next generation population, we could constitute next generation population whose diversity is more ideal by gene type, gene block, effective alleles, individual similarity and information entropy and so forth.
500
D. Lin, X. Li, and D. Wang
2.2 Atavistic Evolution Strategy
JJG M JJG M JJG N Assumed that X (t ) is the tth generation population, SE: X (t ) → X (t + 1) is the breeding operation. JJG N Definition 1 If ∃xi (t + 1) ∈ X (t + 1) , referring F [ xi (t + 1)] <
min
∀x j ( t )∈ X N ( t )
F [ x j (t )] as
degradation. Many researches pointed out that the degradation would restrain the absorption of high-fitness individuals to low-fitness individuals to some extent. It is beneficial to keeping the diversity, and then expanding the search space of GA [9]. The absorption will gradually assimilate the low-fitness individuals under the action of minimal induct schema. This is the root cause for premature phenomena of GA [2]. Above analysis is fit for new individuals, including the individuals generated during evolution, those individuals generated stochastically and those individuals from other populations in multi-population evolution. JJG Now assumed that the minimal induct schema in population is Lmin ( X ) , and if an JJG individual x∈HL includes the minimal induct schema, remarked as x ∝ Lmin ( X ) . Definition
F [ x (t + 1)] < i
2
If min
JJG N ∃xi (t + 1) ∈ X (t + 1) ,
∀x j ( t )∈ X N ( t )
referring
JJG x i (t + 1) ∝ Lmin ( X )
and
j
F [ x (t )] as atavism.
We could know that atavism is a special instance of degradation from definition 2. The minimal induct schema affects all individuals in population through-out the process of evolution, so it is generally implied in some individuals, but there isn't an effective model or method to judge it up to now. Therefore, the methods, stochastically generating individuals or selecting individuals from other populations, aren't fit for atavistic operation, because the probability which these new individuals include the minimal induct schema of current population is so low that these new individuals will be absorbed by the schema sooner or later. Although the atavism function could be implemented, the effect would be not very good. In the meanwhile, it will spend a large amount of storage space if reserving the populations through the generations, so the atavism strategy is reserving the initial population as a copy, and the copy provides all chromosomes for the strategy. New atavism strategy is as follow. JG 1. reserving the initial population as a chromosome copy P after initializing the population; 2. Executing the following process when selecting an individual from the candidate population: JJG N 1.1. Adding the individual into next generation population X (t + 1) if the fitness of the individual is higher or the highest;
Atavistic Strategy for Genetic Algorithm
501
1.2. If the individual couldn't be added into next generation according to the ataJG vistic probability, stochastically selecting a individual from P and adding into JJG N X (t + 1) . 2.3 Atavistic Evolution GA
The framework of new GA with atavistic operation is as algorithm 2. Algorithm 2: New GA with atavistic operation. First step (Initialization): Setting the population scale N, crossover probability Pc, mutation probability Pm, atavistic probability Pa and stop condition; stochastically generating N individuals as
JJG
JG
JJG
initial population X (0) ; t←0; P ← X (0) . Second step (Evaluating fitness):
JJG N
Computing all individual fitness in X (t ) . Third step (Evolving):
JJG N
Selecting: Selecting M/2 pairs individuals as parents from X (t ) utilizing selection operator, M≥N. Crossover: Executing crossover operation on these parents according to Pc, and generating M candidate individuals. Mutation: Applying mutation operation to these candidate individuals according to Pm. Evaluating fitness: Computing all fitness of M new candidate individuals. Atavistic breeding: Selecting N individuals from M new candidate individuals; Replacing the individuals whose fitness isn't the highest by the individuals selected sto-
JG
JJG N
chastically from P according to Pa; Constituting next generation X (t + 1) . Forth step (Checking stop condition):
JJG N
If satisfying stop condition, returning the individual with best fitness in X (t + 1) , otherwise setting t←t+1 and jumping to the third step.
The following is analyzing the effect of atavism to the algorithm convergence and the population diversity.
3 Effectiveness Analyzing of Atavistic Strategy Aggregating rate AE, scattering rate S Ek and stability rate STEk of abstract operators E in general GA are as follow [10]:
502
D. Lin, X. Li, and D. Wang
JJG JJG JJG ⎧ AE = min {P n[ E ( X )] ≥ 1}: n( X ) = 0, X ⊂ H L ⎪ JJG JJG JJG ⎪ k ⎨ S E = max {P n[ E ( X )] = 0}: n( X ) ≥ k , X ⊂ H L ⎪ JJG JJG JJG ⎪ STEk = min {P n[ E ( X )] ≥ k}: n( X ) ≥ k , X ⊂ H L ⎩
{ { {
} } }
(1)
n represents a kind of selection, crossover or mutation. According to above-mentioned settings, the GA with atavistic operation will add an atavistic operator SE. The operator has all of three above properties. In the meanwhile, its transition probability is JJG ⎧⎪ P{SE ( X )ij = 1 − xij } = PSE JJG (2) ⎨ ⎪⎩ P{SE ( X )ij = xij } = 1 − PSE PSE is a predetermined atavistic probability; xij represents the jth gene in individual Xi. if PSE≤1/2, the aggregating rate, scattering rate and stability rate of SE are ⎧ ASE = 1 − (1 − PSEL ) M ⎪ k L k L M −k ⎨ S SE = [1 − (1 − PSE ) ] (1 − PSE ) ⎪ k Lk ⎩ STSE = (1 − PSE )
(3)
If PSE≠0, the values of three properties are not zero. It represents that atavistic operator has better anti-absorption and scattering ability. On the premise of reserving the best individual, atavistic operator SE changes all locus of a chromosome, so the operator is just like the mutation operator. Therefore, the properties of GA with atavistic operator will change as follow. ⎧ A = 1 − ⎡1 − ( P + P ) L ⎤ M m SE ⎣ ⎦ ⎪ G ⎪⎪ S M = [1 − (1 − ( P + P )) L ]M G m SE ⎨ k ⎡ ⎪ k Lk ⎛ ( L − 1) Pc ⎞ ⎤ ST ≥ 1 − ⎪ G ⎢⎜ ⎟ ⎥ (1 − ( Pm + PSE ) ) L ⎠ ⎦⎥ ⎪⎩ ⎣⎢⎝
(4)
G is a term of the genetic operators as a group. If the GA with atavistic operator had been weak convergence with probability, the GA would be satisfied the following three conditions, because the atavistic operator doesn't change selection, crossover and mutation operators [10]. • The selection pressure of {St} has a consistent lower bound m0. There exists a positive integer m0 makes PS(t)≥m0. • The aggregating rate {AE(t)} of {Et} is satisfied
∞
∑A
E (t )
t
=∞.
{
}
• Selection intensity {αS(t)}, aggregating rate {AE(t)} and scattering rate S Em(0t ) are satisfied the following relationship
Atavistic Strategy for Genetic Algorithm
lim t →∞
1 − (1 − S Em(0t ) ) × α E ( t )
AE (t )
=0
503
(5)
For the above three conditions, the first condition is satisfied because atavistic operator has no effect on selection operator. When Pm+PSE<1, the second condition can be ⎡⎣1 − (1 − ( Pm + PSE ) L ) M ⎤⎦ > ⎡⎣1 − (1 − PmL ) M ⎤⎦ and apparently met. As M
M
⎡1 − (1 − ( Pm + PSE ) ) L ⎤ < ⎡1 − (1 − Pm ) L ⎤ , we can know that the GA also meet the ⎣ ⎦ ⎣ ⎦ third condition. Therefore, the atavistic operator doesn't damage the property of weak convergence with probability. Similar to the above process, if the original GA satisfies the strong convergence with probability, it will remain strong convergence with probability algorithm after being introduced the atavistic operator. This paper will not repeat them.
4 Experimental Simulation and Analysis The following experimental environment is Intel T8300 2.4GHz CPU, 2GB RAM, Microsoft Windows XP operating system. The primary parameters of GA are crossover probability 0.615, mutation probability 0.15, atavistic probability 0.025, population scale 50, maximum evolution generation 5 000. All algorithms will stop once finding the global optimal solution (GOS). The evolutionary rules are as follow: if the fitness of an offspring individual is higher than all fitness of parent individuals, replacing the parent individual whose fitness is lower than the fitness of the offspring individual with the offspring individual, and stopping this generation evolution. The local search algorithm is 2-Opt for better observing experimental situation. All experimental datasets are from TSPLIB95 and their scales are less than 100 cities. Table 1. Comparison Experiment on atavistic GA General GA GA with Atavistic Operator Global Dataset Average Times Average Times Cities Optimal Average Average Name Time finding Time finding Solution Length Length (s) GOS (s) GOS burma14 14 3 323 3 323 0.030 30 3 323 0.033 30 att48 48 10 628 10 628 2.174 30 10 628 1.976 30 eil51 51 426 427 38.389 16 427 7.765 20 berlin52 52 7 542 7 542 0.159 30 7 542 0.204 30 st70 70 675 675 1.358 30 675 1.463 30 eil76 76 538 538 3.661 30 538 3.178 30 pr76 76 108 159 108 159 1.420 30 108 159 1.558 30 rat99 99 1 211 1 211 2.665 30 1 211 3.221 30 kroa100 100 21 282 21 282 1.793 30 21 282 1.553 30 krob100 100 22 141 22 143 8.154 29 22 141 4.426 30 kroc100 100 20 749 20 749 2.551 30 20 749 2.641 30 krod100 100 21 294 21 306 113.485 6 21 303 19.075 13 kroe100 100 22 068 22 103 91.706 10 22 099 17.478 12 rd100 100 7 910 7 910 2.037 30 7 910 2.146 30
504
D. Lin, X. Li, and D. Wang
Each algorithm runs on a dataset for 30 times, and computing statistic data. The result is as table1. The convergence times recorded how many times the algorithm converges to the global optimal solution for 30 times repeated running. We could know from the experimental results: • For those datasets which could be found its global optimal solutions for 30 times, new GA spent a little more time than the general GA due to the scattering action of the atavistic operation. The convergence analysis figures of dataset eil51 and krob100 are given in figure 1.
(a) eil51
(b) krob100
Fig. 1. Convergence analysis for data set eil51 and krob100 from TSPLIB95
Average convergence speed of new GA is slow than general GA due to the scattering action of atavistic operator at initial phase of algorithm running, but the speed is fast than general GA at later phase of algorithm running because the diversity is better than general GA under the action of atavistic operator. • For those datasets which can't be found its global optimal solutions for each running, the times which new GA converges to the global optimal solutions is more than the general GA, and average convergence time is significantly shortened. • No large-scale datasets are used in our experiments because the ability searching optimal solutions of 2-Opt is so weak that it needs a long time to converge to optimal solutions, especially using the atavistic operation. If solving some large-scale datasets, some advanced local search algorithms can be employed, such as 2.5-Opt, 3-Opt or Lin-Kernighan and its variants. While employed these advanced local search algorithms, the problem when and how to select, establish or update the ancestral chromosome library will be discussed further more. • Atavistic probability must be introduced into the new GA because utilizing atavistic operator. The value of atavistic probability has a greater impact on GA. A larger probability will increase the scattering ability of atavistic operator. This will result in that the convergence speed slows down or GA converges to some worse optimal solutions. A smaller probability will decrease the ability, although this can accelerate search speed and shorten convergence time, but the diversity will be decreased also. Especially, the new GA will degrade to general GA while the value is zero. The suggested value is 0.025 in this paper.
Atavistic Strategy for Genetic Algorithm
505
5 Conclusions This paper brought forward the atavistic strategy for GA according to the inherent atavism phenomena existing in the process of biological evolution. New operation has the property of simplicity and effectiveness. In this paper, the effectiveness of new operation is analyzed through three characteristics of breeding operators in GA, and validated through experiments. Experimental results showed that the new operation can improve the performance of GA from convergence speed to solution quality. It is demonstrated also how to apply the new operator to solving some large-scale traveling salesman problems. Acknowledgments. This paper is supported by Natural Science Foundation of Guangdong Province (10152800001000029) and Natural Science Foundation of Guangdong Province (10252800001000001).
References 1. Rudolph, G.: Convergence Properties of Canonical Genetic Algorithms. IEEE Transactions on Neural Networks 5, 96–101 (1994) 2. Xu, Z.B., Gao, Y.: Analysis and prevention of the genetic algorithm premature characteristics. Science in China, Series E 26, 364 (1996) 3. Wang, M.L., Wang, X.G., Liu, G.: Quantitative analysis and prevention of genetic algorithm premature convergence. Systems Engineering and Electronics 28, 1249–1251 (2006) 4. Fu, X.H., Kang, L.: Study of the premature convergence of genetic algorithms. Journal of Huazhong University of Science and Technology (Nature Science) 31, 53–54 (2003) 5. Zhou, H.W., Yuan, J.H., Zhang, L.S.: Improved Politics of Genetic Algorithms for Premature. Computer Engineering 33, 201–203 (2007) 6. Zhang, L., Zhang, B.: Research on the Mechanism of Genetic Algorithms. Journal of Software 11, 945–952 (2000) 7. Sultan, B.M., Mahmud, R., Sulaiman, M.N.: Reducing Premature Convergence Problem through Numbers Structuring in Genetic Algorithm. International Journal of Computer Science and Network Security 7, 215–217 (2007) 8. Hrstka, A.L.: Improvements of real coded genetic algorithms based on differential operators preventing premature convergence. Advances in Engineering Software 35, 237–246 (2004) 9. Fu, X.F.: An Algebraic Model for State Space of GA. Mathematics in Practice and Theory 35, 119–123 (2005) 10. Xu, Z.B., Zhang, J.S., Zheng, Y.L.: The bionics in computation intelligence: theory and algorithm. Science Press, Beijing (2003)
An Improved Co-Evolution Genetic Algorithm for Combinatorial Optimization Problems Nan Li and Yi Luo School of Control and Computer Engineering, North China Electric Power University, Beijing, China [email protected], [email protected]
Abstract. This paper presents an improved co-evolution genetic algorithm (ICGA), which uses the methodology of game theory to solve the mode deception and premature convergence problem. In ICGA, groups become different players in the game. Mutation operator is designed to simulate the situation in the evolutionary stable strategy. Information transfer mode is added to ICGA to provide greater decision-making space. ICGA is used to solve large-scale deceptive problems and an optimal control problem. Results of numerical tests validate the algorithm’s excellent performance. Keywords: genetic algorithm; co-evolution; deceptive function; game theory; optimal control.
1 Introduction Since 1980s, researchers in different fields pay more attention to genetic algorithm. Nowadays, genetic algorithm has been made a wide range of applications in many areas. Holland proposed the building block hypothesis: short, highly fit combinations of bits can combine to form optima. This hypothesis, which provides the mathematics foundation to explain the mechanism of genetic algorithm, makes the quantity of the good schemas increasing exponentially [1]. In the later, Goldberg improved this hypothesis [2]. If the linkage between necessary bit combinations is too weak, in certain types of problems called deceptive problems, genetic algorithms will converge to suboptimal points [3]. Aiming at the weakness of building block hypothesis, Goldberg constructed the deceptive problem. In his opinion, it is very important to use deceptive problems as the test function to study genetic algorithm or other algorithm having the similar search mechanism. This paper presents an improved co-evolution genetic algorithm (ICGA) .ICGA uses thoughts of co-evolutionary to establish and maintain a number of different subgroups which are cooperative co-evolution and mutual influence [4] [5].There are great similarities between evolutionary game theory and evolutionary algorithm, such as evolutionary stable strategy and replicator dynamics [6]. The cheap talk can be Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 506–513, 2011. © Springer-Verlag Berlin Heidelberg 2011
An Improved Co-Evolution Genetic Algorithm for Combinatorial Optimization Problems
507
used to improve the information transfer mode among the subgroups [8], so ICGA redesigned the mutation operator and information transfer mode among the subgroups by using the ideas of the game theory.
2 The Improved Co-Evolution Genetic Algorithm (ICGA) 2.1 The Traditional Genetic Algorithm (GA) GA is originated from the computer simulation in the biological system. Simply stated, it’s a search procedure which based on the mechanics of natural selection and natural genetics: any initial population can create new individuals which adapt to the environment better, according to the random selection, crossover and mutation operation. 2.2 Mutation Suppose that a small group of mutants appears in a large population of individuals, all of whom are programmed to play the same incumbent strategy x .Suppose also that the mutants all are programmed to play some other mutant strategy y . Let the share of mutants in the population be ε , where ε ∈ (0,1) . Pairs of individuals in this biomorphic population are repeatedly drawn at random to play the game, each individual being drawn with equal probability. Hence, if an individual is drawn to play the game, then the probability that the opponent will play the mutant strategy y is ε , and the probability that the opponent will play the incumbent strategy x is 1 − ε .The payoff in a match in this biomorphic population is the same as in a match with an individual who plays the mixed strategy w = ε y + (1 − ε ) x .Biological intuition suggests that evolutionary forces select against the mutant strategy if and only if its payoff (fitness) is lower than that of the incumbent strategy. Let Pm be the mutation rate in ICGA and individuals represented as strategy. The incumbent strategy is
xij .The mutant strategy which bases on the incumbent
strategy is as follow: n
z j = (b − 1)∑ i =1
⎧ ⎪⎪ a (i ) = ⎨ ⎪ ⎪⎩
1 a(i ) x ijl bi
1, Pr ob{a(i ) = 1} =
(1) 1 n
0, Pr ob{a(i ) = 0} = 1 −
1 n
(2)
The mixed strategy is as follow: y ijl = (1 − Pm ) x ijl + Pm z j
(3)
508
N. Li and Y. Luo
2.3 Information Transfer Mode Battle of the sexes is one of a large class of games called coordination games, which share the common feature that the players need to coordinate on one of multiple Nash equilibriums. It is a conflict between a man who wants to go to a prize fight and a woman who wants to go to a ballet. The Battle of the Sexes has two Nash equilibriums, which is iterated dominance equilibrium. One of which is the strategy profile (Prize Fight, Prize Fight). And the strategy profile (Ballet, Ballet) is another Nash equilibrium. Each of the Nash equilibrium in the Battle of the Sexes is pareto-efficient; no other strategy profile increases the payoff of one player without decreasing that of the other. When the optimal problem has more than one minimal points, algorithms often converge to one of the points. It is similar with the situation which happens in the coordination game, so I think about using this method in game theory to solve this problem. Now set the number of subgroups be N and the number of the individual in any subgroup be
N1 .The ith subgroup represented as Ci = {x ij } , where xij is the jth j = 1, 2," , N1 .The fitness can be
element of the ith subgroup i = 1, 2," , N calculated by the formula as follow: Fitness( j ) =
N×X N
∑X
j −1 l −1
(4)
l =1
Let X be the root of the polynomial equation as follow:
∑
N −1 i =0
( sp − i) × X i = 0
(5)
Ci from large to small, the probability based on the individual fitness, for M = max{[ N1 δ ],1} , where δ belongs to natural number. Get
Sorting the elements of set
the sequence {m j } , for j = 1, 2," , M . i
Ci ’s information transmission be Si , let S0 = S N , S N +1 = S1 ; receiving information set is Gi .We can have the formulas as follow: Let the ith subgroup
Si = {m1i , m2i ," , mMi }
(6)
Gi = Si −1 ∪ Si +1
(7)
2.4 The Optimal Solution and Nash Equilibrium If the scale of the problem is very large, the precision of evolutionary algorithm (EA) will be badly affected. So, I think EA should represent as the Data Pre-processing, rather than an optimization procedure. It is important that EA provide a solution set of
An Improved Co-Evolution Genetic Algorithm for Combinatorial Optimization Problems
509
large-scale problems, which contains some satisfactory solutions. Expecting to find some favorable modes, I analysis the solution set by the principle of the game theory. In my opinion, one optimization procedure of ICGA represents as one game, the objective function represent as the utility function. The optimal solution, which resolves by ICGA, is the dominant strategy of the game. By Theorem 1, the game must have Nash equilibrium. Let the dominated strategy invade dominant strategy to find the Nash equilibrium. Theorem 1: Every finite strategic-form game has a mixed-strategy equilibrium [9].
3 Numerical Experiments on Deceptive Problems This part uses three kinds of small-scale deceptive functions, namely, sub functions to form the two types of large-scale deceptive problems: If all of the input variables of the sub functions are arrange side by side. The deceptive problem is strong-linkage. If the input variable of the sub functions is not neighboring. The deceptive problem is weak-linkage. These problems are used to test ICGA’s performance. In these problems, all of input variables take 0 or 1.u represented the number of the input variables taking 1. These three sub functions are as follows: Three-order deceptive function: ⎧ ⎪ 0 .9 , ⎪ 0 .8 , f d e c e p tiv e 3 ( a 1 , a 2 , a 3 ) = ⎨ ⎪0, ⎪ ⎩ 1,
u=0 u =1
.
(8)
.
(9)
u=2 u=3
Five-order trap function: ⎪⎧ 5 , f tra p 5 ( a1 , a 2 , a 3 , a 4 , a 5 ) = ⎨ ⎪⎩ 4 − u ,
u =5 o th erw ise
Six-order bipolar function: ⎧ ⎪ 0.9, u = 3 ⎪ ⎪ 0.8, u = 2 and u = 4 fbipolar 6 ( a1 , a 2 , a 3 , a 4 , a 5 , a 6 ) = ⎨ ⎪0 , u =1 and u = 5 ⎪ ⎪1, u = 0 and u = 6 ⎩
.
(10)
3.1 Strong-Linkage Deceptive Functions The three strong-linkage deceptive functions used as follows: f1 ( a ) =
f2 (a ) =
n 3
∑
f deceptive 3 ( a 3 i − 2 , a 3 i −1 , a 3 i )
(11)
f trap 5 ( a 5 i − 4 , a 5 i − 3 , a 5 i − 2 , a 5 i −1 , a 5 i )
(12)
i =1
n 5
∑ i =1
510
N. Li and Y. Luo
f3 (a ) =
n 6
∑ i =1
(13)
f bipolar 6 ( a 6 i − 5 , a 6 i − 4 , a 6 i − 3 , a 6 i − 2 , a 6 i −1 , a 6 i )
Table 1. ICGA’s average of function evaluations over 50 independent runs comparing with other algorithms for f1-f3
f1
f2
f3
n=30 n=60 n=90 n=30 n=60 n=90 n=30 n=60 n=90
ICGA 2550 3050 3550 2850 3150 6050 2800 11100 21600
[9] 842 3817 9790 869 4088 8956 2098 16099 50260
[10] 8500 27300 57000 14300 41250 75450 9000 36000 45900
[11] 6510 25200 45300 7150 39620 67620 3150 13010 24310
Table 2. ICGA’s average of function evaluations compared with other algorithms
f1
f2
n=60 n=240 n=510 n=810 n=990 n=100 n=250 n=510 n=810 n=990
ICGA 3050 52400 268400 856530 1064470 12100 15100 50200 265200 479600
[9] 3817 96061 516144 1470082 2244465 12514 99899 541398 1489900 2443265
[13] 28807 235126 — — — 97746 478410 — — —
Results of numerical tests are given in Table 1. These results, which compared with those in [9], [10] and [11], are the average number of function evaluations over 50 independent runs of ICGA when n = 30, 60, and 90.For f1, f2 and f3, When n=30, the computational cost of ICGA is bigger than MAGA in [9]. In the rest of the case, ICGA outperforms the other methods. As the scale of the problem increases, the number of local extreme become more and more, leading to the greater difficulty of the problem. To validate ICGA’s performance in the large-scale problems, Numerical tests are done: for f1, n increases from 60 to 990; for f2, n increases from 100 to 990. The results are given in Table 2. Compared with methods in [9] and [13], ICGA outperforms the other methods.
An Improved Co-Evolution Genetic Algorithm for Combinatorial Optimization Problems
511
3.2 Weak-Linkage Deceptive Functions The four weak-linkage deceptive functions used as follows: f4 (a) =
f5 (a ) =
n 3
∑
f d e c e p tiv e 3 ( a i , a i + n 3 , a i + 2 n 3 )
(14)
f tra p 5 ( a i , a i + n 5 , a i + 2 n 5 , a i + 3 n 5 , a i + 4 n 5 )
(15)
i =1
n 5
∑
i =1
n6
f 6 (a ) = ∑ fbipolar 6 ( ai , ai + n 6 , ai + 2 n 6 , ai +3 n 6 , ai + 4 n 6 , ai +5 n 6 )
(16)
i =1
Numerical tests are done: for f4, f5 and f6, n increases from 30 to 210 in steps of 30; these results are the average number of function evaluations over 50 independent runs of ICGA when n takes different values. As we can see in the Table 3, the computational cost of ICGA is smaller than MAGA. Table 3. ICGA’s average of function evaluations over 50 independent runs compared with other algorithms for f4-f6
f4
f5
f6
n=30 n=60 n=90 n=210 n=30 n=60 n=90 n=210 n=30 n=60 n=90 n=210
ICGA 21100 104200 412400 1656800 402800 4010400 7017000 10017000 50600 804400 3212800 10036000
[9] 69541 929707 2851883 47719535 455201 428605105 — — 60111 1578582 8027175 284445620
4 ICGA Applied in the Optimal Control The optimal control is the core of modern control theory. Its main problem is that finding the optimal control strategy to make the given performance meet the minimum or the maximum. Dynamic programming and the maximum principle are the main numerical methods to solve an optimal control problem. Because the traditional methods can’t solve the optimization problem of non-differentiability and high morbidity, researchers turn their attention to evolutionary algorithm. In this part, ICGA is applied to a discrete linear system’s optimal control problem to test algorithm's performance[14].
512
N. Li and Y. Luo
4.1 Discrete Linear System’s Optimal Control Problem
:
The discrete linear system as follows
⎧ x1 (k + 1) = x2 ( k ) ⎪ , k = 1, 2," , N ⎨ 1 ⎪⎩ x2 (k + 1) = 2 ∗ x2 ( k ) − x1 ( k ) + N 2 u (k )
(17)
In this problem, the objective function of the performance Index defined as follow: f ( x, u ) = − x1 ( N + 1) +
1 N 2 ∑ u (k ) 2 N k =1
(18)
Theoretical optimization of the discrete linear system is: 1 3N − 1 1 N −1 2 min f ( x, u ) = − + + ∑k 2 3 6N 2 N 3 k =1
(19)
4.2 Results Numerical tests are done: for the discrete linear system, N from 10 to 50 in the steps of 10. The results show the good global searching ability of this new algorithm. Table 4. Comparison between ICGA and GA
Algorithms N=10 N=20 N=30
GA ICGA GA ICGA GA ICGA
theory value -0.1425 -0.1544 -0.1584
Mean of optimal solution -0.1407 -0.1424 -0.1496 -0.1541 -0.1507 -0.1582
Average termination algebra 82 43 108 44 182 52
Error 0.0018 0.0001 0.0048 0.0003 0.0077 0.0002
5 Conclusion ICGA is an adaptive, robust optimal algorithm, which base on the thoughts of coevolutionary and the methodology in game theory .The mutation operation is redesigned and information transfer mode is added. In the experiments, strong-linkage and weak-linkage deceptive functions are used to test the performance of ICGA. The results show algorithms excellent performance. In the end, ICGA applied to an optimal control problem. The results verify the applicability of ICGA.
References 1. Holland, J.: Adaptation in Natural and Artificial Systems. The MIT Press, Cambridge (1992) 2. Goldberg, D.E.: Genetic Algorithm in Search, Optimization and Machine Learning. Addison-Wesley, Massachusetts (1998)
An Improved Co-Evolution Genetic Algorithm for Combinatorial Optimization Problems
513
3. Goldberg, D.E.: Messy Genetic Algorithms Revisited Studies in Mixed Size and Scale. Complex Systems 4, 415–444 (1990) 4. Ye, J., Liu, X., Lu, H.: An Evolutionary Algorithm based on Stochastic Weighted Learning for Continuous Optimization. In: 2003 IEEE International Conference on Neural Networks & Signal Processing, Nanjing, China, pp. 14–17 (2003) 5. Liu, J., Zhong, W., Jiao, L., Liu, F.: Multiobjective optimization based on coevolutionary algorithm. In: Tsumoto, S., Słowiński, R., Komorowski, J., Grzymała-Busse, J.W. (eds.) RSCTC 2004. LNCS (LNAI), vol. 3066, pp. 774–779. Springer, Heidelberg (2004) 6. Weibull, J.W.: Evolutionary Game Theory. The MIT Press, Cambridge (1996) 7. Li, Y., Liu, Y., Liu, X.: Active Vibration Control of a Modular Robot Combining a BP Neural Network with a Genetic Algorithm. Journal of Vibration and Control 11(1), 3–17 (2005) 8. Rasmusen, E.: Games and information. Basil Blackwell, Oxford (2006) 9. Liu, J., Zhong, W., Jiao, L.: A multiagent evolutionary algorithm for combinatorial optimization problems. IEEE Trans. on Systems, Man, and Cybernetics, Part B (2009) (in press) 10. Pelikan, M., Goldberg, D.E.: BOA: The Bayesian optimization Algorithm. IlliGAL Report. 98013. Illinois Genetic Algorithms Lab., Univ. Illinois, Urbana-Champaign, Urbana, IL (1998) 11. Lin, Y., Yang, X.: Research on fast evolutionary algorithms based on probabilistic models. Acta Electronica Sinica 29(2), 178–181 (2001) (in Chinese) 12. Wu, S., Zhang, Q., Chen, H.: A new evolutionary algorithm based on family eugenics. J. Softw. 8(2), 137–144 (1997) (in Chinese) 13. Pelikan, M.: Bayesian Optimization Algorithm: From Single Level to Hierarchy. Illinois Genetic Algorithms Lab., Univ. Illinois, Urbana-Champaign, Urbana, IL (2002) 14. Li, Y., Leong, S.H.: Kinematics Control of Redundant Manipulators Using CMAC Neural Network Combined with Genetic Algorithm. Robotica 22(6), 611–621 (2004)
Recursive Structure Element Decomposition Using Migration Fitness Scaling Genetic Algorithm Yudong Zhang and Lenan Wu* School of Information Science and Engineering, Southeast University, Nanjing, China [email protected], [email protected]
Abstract. This paper proposed an improved decomposition approach for structuring elements of arbitrary shape. For the model of this method, we use the recursive model which decomposes a given structuring element into a variablesize matrix dilated by a fixed-size matrix and with union of a residue component, such procedures repeated until the variable-size matrix is smaller than a predefined threshold. For the algorithm of our method, we proposed an improved GA based on the ring topology of migration model and the power-rank fitness scaling strategy. The experiments demonstrate that our method is more robust than Park’s method, Anelli’s method, and Shih’s method, and gave the final decomposition tree of different SE shapes such as the letter “V”, heart, and umbrella. Keywords: mathematical morphology, structuring element decomposition, genetic algorithm, migration model, fitness scaling.
1 Introduction Mathematical morphology (MM) is a theory and technique for the analysis and processing of geometrical structures, based on set theory, lattice theory, topology, and random functions. The basic idea in MM is to probe an image with a simple, predefined shape, drawing conclusions on how this shape fits or misses the shapes in the image. This simple probe is called structuring element (SE), and is itself a binary image. However, implementation becomes difficult when the size of SE is large [1]. Hence, the techniques for decomposing a large SE into combined small SEs are extremely important. Many techniques have been proposed for the decomposition of SE, but they are complicated and appear indecomposable cases [2]. Hashimoto indicated that traditional algorithms have the disadvantage of being unable to decompose many simply connected decomposable SEs [3]. Shih [4] developed a method for decomposing arbitrarily shaped binary SEs using canonical genetic algorithm (CGA). The algorithm performs an iterative process to create new ones that minimize a given fitness function. After a sufficient number of iterations, the algorithm tends to converge toward the optimal solution [5]. *
Corresponding author.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 514–521, 2011. © Springer-Verlag Berlin Heidelberg 2011
Recursive Structure Element Decomposition
515
However, the algorithm suffers from two disadvantages since it takes too much time and the success rate is not satisfying. In this study, we present an improved genetic algorithm for decomposing arbitrary SEs. The rest of the paper is organized as follows. In Section 2 we introduced the basic principles of SE decomposition. Section 3 describes the recursive model. In Section 4 we transfer the recursive model to an optimization problem which is suitable for GA. In Section 5 we propose a new migration fitness scaling GA. Section 6 compare our method with Park’s, Shih’s, and Anelli’s method. Final Section 7 is devoted to conclusion.
2 Background Let A denotes a binary image and S denotes a SE. If we decompose S into S1 ⊕ S2 ⊕ … ⊕ Sk, the dilation and erosion will become as follows according to associative law
A ⊕ S = A ⊕ ( S1 ⊕ S2 ⊕
A – S = A – ( S1 ⊕ S2 ⊕
⊕ S k ) = ((( A ⊕ S1 ) ⊕ S 2 ) ⊕ S k ) = ((( A – S1 ) – S2 )
⊕ Sk ) – Sk )
(1) (2)
The advantage of SE decomposition is that the time complexity for the morphological operations will be reduced extremely. The time complexity for dilation (erosion) operators is proportional to the number of nonzero element of S. Fig. 1(a-b) shows two examples. The first is to decompose a square SE of size 5×5 into two row vectors of size 1×3 and two column vectors of size 3×1, and the computation time will decrease from 25 to 3+2+3+2=10. The second example is to decompose a diamond SE of diameter 7 into three small SEs, and the time will decrease from 25 to 5+4+4=13.
)(
*
Fig. 1. Examples of SE Decomposition: (a) 7×7 Square; (b) 7×7 Diamond; (c) 5×5 Rand
516
Y. Zhang and L. Wu
For parallel pipelined architecture, we decompose the SE using both dilation and union operator. The cost time of the union operator is the maximum of the number of nonzero element of both operands. Fig. 1(c) gives an example, here the subscript (-1,-1) denotes this square matrix should be translated -1 at both x-axis and y-axis. The parallel computation time after decomposition will decrease from 14 to max(3+4,2) = 7.
3 Recursive Model Let SNN denote a SE of size N×N. The first decomposition can be written as S NN = V( N − 2)( N − 2) ⊕ F33PC ∪ RNN
(3)
Here we use the dilation and union model: the V denotes the variable-size matrix of SE, the FPC denotes the fixed-size prime component, and R denotes the residue component. The R can be easily decomposed into union of factors of size 3×3 because the size 3×3 is often used as the elementary structuring component for decomposition in literature. 1 S NN = V( N − 2)( N − 2) ⊕ F33PC ∪ ⎡⎢( R33 )( x1, y1) ∪ ( R332 )( x 2, y 2) ∪ ⎣
∪ ( R33n )
( xn, yn )
⎤ ⎥⎦
(4)
Here n denotes the number of 3-by-3 residual matrix. The subscript (xi, yi) denotes that the Ri should be translated by (xi, yi). Therefore, the iteration continues to V(N-2)(N2) until the size is smaller or equal to 3×3. The flow of the recursive decomposition model is depicted in Fig. 2.
S NN = V( N −2)( N −2) ⊕ F33PC ∪ RNN 1 RNN = ( R33 )
( x1, y1)
∪ ( R332 )
( x 2, y 2)
∪
∪ ( R33nk )
( xnk , ynk )
Fig. 2. Flow of Recursive Decomposition Model
Recursive Structure Element Decomposition
517
Fig. 2 indicates we record 4 variables (Vk, Fk, Rk, and Pk) at each iteration level k, and the decomposition tree can be depicted via those variables. Our task is to develop an effective method to decompose formula (3).
4 Optimization Problem GA simulates the process of natural selection, and is well suited to optimize solutions over large combinatorial spaces [6]. To apply GA in decomposition model, the encoding strategy and the fitness function should be determined first, which are presented in the following. For the encoding strategy, we encoded the variable Fk and straighten it into a onedimensional string of chromosome. For any SE at any iteration, the Fk is a 3-by-3 two-value image, therefore, the chromosome can be written as
ξ
straighten( F ) = f1 f 2 ... f 9
(5)
Here ξ denotes the chromosome and fi denotes the locus. Fig. 3(a) illustrates the numbering scheme for ξ. Two examples are shown in Fig. 3(b-c), and their 1D string of chromosomes are “100101011” and “011001101” respectively. 1
2
3
1
0
0
0
1
1
4
5
6
1
0
1
0
0
1
7
8
9
0
1
1
1
0
1
Fig. 3. (a) Index of gene positions with two examples: (b) “100101011”; (c) “011001101”.
For the fitness function, the prime component F is encoded, therefore, variable matrix of SE V and residual matrix R can be obtained through following formulas V =S – F
(6)
R = S −V ⊕ F
(7)
Then, we can extract two different types of costs. One is serial computation cost JS, and the other is parallel computation cost JP. Note that those variables satisfy the equality of S = V ⊕ F ∪ R , the costs are written as J S = ∑V + ∑ F + ∑ R
(8)
JP = ∑ R
(9)
In this paper, we combine those two costs with a weight factor ω, viz. J = ω JS +(1-ω) JP. For simplicity, ω=0.5.
518
Y. Zhang and L. Wu
5 Migration Fitness Scaling GA GA is efficient and has the ability of jumping out of local minima, but some times it spends excessive time on redundant iteration [7]. To overcome this problem, we proposed a novel migration fitness-scaling GA (MFSGA) which combines the migration model and the fitness scaling strategy. The migration model takes the idea of separately evolving subpopulations and extends it by adding a means of selectively sharing genetic information between them. Migration may occur in a variety of ways. Two parameters associated with the migration algorithm [8] are extremely important: the migration interval and the migration rate. The migration interval is the number of generations between each migration, and the migration rate is the number of individuals selected for migration. For each subpopulation in the distributed GA, migration is accomplished as follows. Every migration interval, the best individuals from one subpopulation replace the worst individuals in its neighbor. Individuals that migrate from one subpopulation to another are copied. They are not removed from the source subpopulation. As with multiple elitist selection, migration represents a tradeoff between exploration of new designs and exploitation of highly fit designs which have already been found. The physical relationship between subpopulations imposed by the topology of the distributed system has an effect on this tradeoff as well. The ring topology used for the proposed migration model ensures local communications between subpopulations. The benefit of this design is that migration occurs locally between adjacent populations on the ring. This yields local exploitation of fit designs, while globally the separate subpopulations are free to explore different types of designs independently [9]. Fitness scaling is the other improvement, which converts the raw fitness scores that are returned by the fitness function to values in a range that is suitable for the selection function [10]. The selection function uses the scaled fitness values to select the particles of the next generation. Then, the selection function assigns a higher probability of selection to particles with higher scaled values. There exist bundles of fitness scaling methods. The most common scaling techniques include traditional linear scaling, rank scaling, power scaling, and top scaling. Among those fitness scaling methods, the power scaling finds a solution nearly the most quickly due to improvement of diversity but it suffers from unstability [11], meanwhile, the rank scaling show stability on different types of tests. Therefore, a new power-rank scaling method was proposed combing both power and rank strategies as follows
fiti = ri k / ∑ i =1 ri k N
(10)
where ri is the rank of ith individual, N is the number of population. Our strategy contains a three-step process. First, all individuals are sorted to obtain the ranks. Second, powers are computed for exponential values k. Third, the scaled values are normalized by dividing the sum of the scaled values over the entire population.
Recursive Structure Element Decomposition
519
6 Experiments The experiments were carried out on the platform of P4 IBM with 3GHz processor and 2GB memory, running under Windows XP operating system. The algorithm was developed via the global optimization toolbox of Matlab 2010b. The SE shown in Fig. 4 is indecomposable by Park’s algorithm [3]. However, a successful decomposition can be found via our algorithm as shown in Fig. 4(a). The serial computation cost is 10 and the parallel computation cost is 1. We run both our proposed improved GA and the CGA in Shih’s method 20 times [4] without using Park’s 13 prime factor as initialization population. Our method all finds the global best result, while three runs of CGA finds a failed result as shown in Fig. 4(b) with serial computation cost of 11 and parallel computation cost of 2. Therefore, the proposed improved GA is more robust than the CGA algorithm of Shih’s algorithm.
(
)⊕
(
⊕
)⊕
⊕
∪
∪ (1,-1)
(-1,-2)
Fig. 4. A typical decomposition tree: (a) A success run; (b) A failed run
=
(
)⊕
(
)⊕
∪
∪ (-2,2)
⊕
∪
∪ (0,-2)
(2,2)
∪ (-1,1)
(0,-1)
Fig. 5. Decomposition tree of Anelli’s SE Fig. 5 shows the decomposition tree of Anelli’s SE. We compared our method with Anelli’s paper [12]. The serial computation cost of our algorithm is 18, and the parallel computation cost of our algorithm is 6. Conversely, the serial and parallel computation costs of Anelli’s method are 22 and 10, respectively. The decomposition tree of Anelli can be seen in Ref. [12]. We use 4 examples of 15-by-15 different shapes including the letter “V”, heart, and umbrella. Tab. 1 lists their original SE shape, the decomposition tree, the serial computation cost, and the parallel computation cost. For the V-shaped SE, the original points are 94, the serial and parallel computation cost after decomposition is only 94 and 13, respectively. For the heart, the points of original SE, JS, and JP are 142, 32, and 8, respectively. For the umbrella, the points of original SE, JS, and JP are 94, 44, and 27, respectively.
520
Y. Zhang and L. Wu Table 1. Three Decomposition Examples (black denotes 0 & white denotes 1) Original SE & its points
Decomposition Tree (
)⊕
∪
)⊕
∪
)⊕
32
8
44
27
(2,1)
∪
)⊕
∪
∪ (-3,0)
(
13
∪ (1,-2)
(-4,4) (
29
(6,6)
∪ (0,-5)
(
JP
∪ (-6,6)
(
JS
(-3,-3)
)⊕
(94) ⊕
∪ (1,1)
(
)⊕
∪
(
)⊕
∪
(
)⊕
(
)⊕
(-1,-5)
(-1,-3)
∪
∪ (-3,3)
(
)⊕
(3,3)
∪ (-2,2)
(142) ⊕
∪
∪ (-1,1)
(
)⊕
∪
∪ (-3,-6)
(
)⊕
∪
(
)⊕
∪
∪ (-4,4)
)⊕
∪ (-6,3)
(-2,-6)
∪ (-5,4)
(
(1,1)
(5,4)
∪ (-2,-4)
(2,4)
∪ (-2,-3)
(
)⊕
∪
∪ (-2,2)
(94) ⊕
∪
(-1,-2)
∪ (1,1)
(-1,1)
7 Conclusions In this paper, a decomposition method for arbitrarily-shaped structuring elements is proposed based on recursive model and migration fitness scaling genetic algorithm. The MFSGA method uses the ring topology of the migration model and the powerrank scaling strategy. Compared to Park’s method [3], Anellie’s method [12], and Shih’s method [4], our method is more robust and have higher rate to find global minima. The future work will focus on applying the proposed MFSGA method to various industrial fields including image classification [13], pattern recognition [14], and weights optimization [15].
Recursive Structure Element Decomposition
521
References 1. Burgeth, B., Bruhn, A., Papenberg, N., Welk, M., Weickert, J.: Mathematical morphology for matrix fields induced by the Loewner ordering in higher dimensions. Signal Processing 87, 277–290 (2007) 2. Park, H., Yoo, J.: Structuring element decomposition for efficient implementation of morphological filters. In: IEE Proceedings of Vision, Image and Signal Processing, vol. 148, pp. 31–35 (2001) 3. Hashimoto, R.F., Barrera, J.: A note on Park and Chin’s algorithm [structuring element decomposition]. IEEE Transactions on Pattern Analysis and Machine Intelligence 24, 139– 144 (2002) 4. Shih, F.Y., Wu, Y.-T.: Decomposition of binary morphological structuring elements based on genetic algorithms. Computer Vision and Image Understanding 99, 291–302 (2005) 5. Zhang, Y., Wu, L.: Stock Market Prediction of S&P 500 via combination of improved BCO Approach and BP Neural Network. Expert Systems with Applications 36, 8849–8854 (2009) 6. Zhang, Y., Yan, J., Wei, G., Wu, L.: Find multi-objective paths in stochastic networks via chaotic immune PSO. Expert Systems with Applications 37, 1911–1919 (2010) 7. Rausch, T., Thomas, A., Camp, N.J., Cannon-Albright, L.A., Facelli, J.C.: A parallel genetic algorithm to discover patterns in genetic markers that indicate predisposition to multifactorial disease. Computers in Biology and Medicine 38, 826–836 (2008) 8. Rom, W.O., Slotnick, S.A.: Order acceptance using genetic algorithms. Computers & Operations Research 36, 1758–1767 (2009) 9. Omara, F.A., Arafa, M.M.: Genetic algorithms for task scheduling problem. Journal of Parallel and Distributed Computing 70, 13–22 (2010) 10. Tkaczyk, E.R., Mauring, K., Tkaczyk, A.H., Krasnenko, V., Ye, J.Y., Baker Jr, J.R., Norris, T.B.: Control of the blue fluorescent protein with advanced evolutionary pulse shaping. Biochemical and Biophysical Research Communications 376, 733–737 (2008) 11. Korsunsky, A.M., Constantinescu, A.: Work of indentation approach to the analysis of hardness and modulus of thin coatings. Materials Science and Engineering: A 423, 28–35 (2006) 12. Anelli, G., Broggi, A., Destri, G.: Decomposition of arbitrarily shaped binary morphological structuring elements using genetic algorithms. IEEE Transactions on Pattern Analysis and Machine Intelligence 20, 217–224 (1998) 13. Zhang, Y., Wang, S., Wu, L.: A Novel Method for Magnetic Resonance Brain Image Classification based on Adaptive Chaotic PSO. Progress in Electromagnetics Research 109, 325–343 (2010) 14. Zhang, Y., Wu, L.: Pattern recognition via PCNN and Tsallis entropy. Sensors 8, 7518– 7529 (2008) 15. Zhang, Y., Wu, L.: Weights optimization of neural network via improved BCO approach. Progress in Electromagnetics Research 83, 185–198 (2008)
A Shadow Price Guided Genetic Algorithm for Energy Aware Task Scheduling on Cloud Computers Gang Shen and Yan-Qing Zhang Department of Computer Science, Georgia State University P.O. Box 3994, Atlanta, GA 30302-3994, USA [email protected], [email protected]
Abstract. Minimizing computing energy consumption has many benefits, such as environment protection, cost savings, etc. An important research problem is the energy aware task scheduling for cloud computing. For many diverse computers in a typical cloud computing system, great energy reduction can be achieved by smart optimization methods. The objective of energy aware task scheduling is to efficiently complete all assigned tasks to minimize energy consumption with various constraints. Genetic Algorithm (GA) is a popular and effective optimization algorithm. However, it is much slower than other traditional search algorithms such as heuristic algorithm. In this paper, we propose a shadow price guided algorithm (SGA) to improve the performance of energy aware task scheduling. Experiment results have shown that our energy aware task scheduling algorithm using the new SGA is more effective and faster than the standard GA. Keywords: Energy Aware Task Scheduling, Genetic Algorithm, Green Computing, Cloud Computing, Optimization, Shadow Price.
1 Introduction Computer has significantly boosted modern technology development and revolutionized people’s lifestyle. Energy used by computers is roughly equivalent to that in aviation industry. It accounts for 2% of anthropogenic CO2 from its share of energy consumption [8]. Cloud computing needs huge amount of energy [9][10]. It is estimated that US servers and data centers consumed about 61 billion kilowatt-hours (kWh) in 2006 (1.5 percent of total U.S. electricity consumption) for a total electricity cost of about $4.5 billion [7]. To protect environment, it is necessary to schedule tasks more efficient for cloud computing. The objective is to use the least amount of energy to complete computing tasks under various constraints. The energy aware task scheduling methodologies can be categorized as heuristic algorithms [10][17][19], bio-inspired search algorithms [13][16], and hybrid algorithms [14][15]. Heuristic algorithms can find good solutions among all possible ones, but they do not guarantee that the best or the near optimal solution will be found. Bio-inspired search Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 522–529, 2011. © Springer-Verlag Berlin Heidelberg 2011
A Shadow Price Guided Genetic Algorithm for Energy Aware Task Scheduling
523
algorithms find excellent solutions by simulating nature. The typical algorithms are Genetic Algorithm (GA), Particle Swarm Optimization (PSO), etc. They can find optimal or near optimal solutions. They are less efficient than heuristic algorithms. This paper uses the shadow price based GA [4][11][12] to solve the energy aware task scheduling problem.
2 Energy Aware Task Scheduling The amount of power a processor consumes is the product of voltage and current it draws. Increasing voltage can increase the processor’s speed. Thus, the power consumption of a processor is directly linked to its running speed. It is a combinatorial optimization problem to achieve the most efficient balance between the processor voltage and its running speed for a target problem. Li established the theories on efficient energy aware task scheduling for multi-processor or multicomputer [1]. The problem can be defined as: n cloud computers in a cloud computing system are used to finish m tasks by the deadline time T. Assume that mi tasks Pki for k=1, 2, …, mi are executed on comn
puter i for m = ∑ mi . A changeable speed for task Pki is denoted as Ski for i=1, 2, …, i =1
n, and k=1, 2, …, mi . The speed is defined as the number of instructions per second. The number of instructions of task Pki is denoted as Rki . The execution time for task Pki on computer i is mi
is defined as Ti = ∑ k =1
Rki S ki
Rki . The total execution time for mi tasks Pki on computer i S ki
.
According to [1], the energy for Pki on computer i is
Eki = Ci Rki [ Ski ]α −1 where Ci is a constant, α i = 1 + i
2
φi
≥ 3 for 0 < φi ≤ 1 , i=1, 2, …, n,
n mi
and k=1, 2, …, mi . The total energy is E = ∑ ∑ Ci Rki [ S ki ]αi −1 . i =1k =1
The optimization problem is [19]: n mi
n
i =1k =1
i =1
Minimize E = ∑ ∑ Ci Rki [ S ki ]αi −1 with constraints: 1 ≤ mi ≤ m − n + 1 , m = ∑ mi , Ri m > n , ∑ ki ≤ T and a i ≤ S ki ≤ bi where ai is the minimum speed and bi is the k =1 S k mi
maximum speed of computer i, respectively, for i=1, 2, …, n, and k=1, 2, …, mi . The goal is to design a new energy aware task scheduling algorithm that can find an optimal or near optimal schedule to compete all m tasks on n computers using minimum or near minimum energy E by the deadline time T. It’s a complex integer combinatorial optimization problem. It is a NP hard problem.
524
G. Shen and Y.-Q. Zhang
3 Shadow Price Guided Genetic Task Scheduling Algorithm Genetic Algorithm [2][3] is a reward based multi solution search algorithm. It is a branch of bio inspired evolution algorithm (EA). It has been applied to many applications successfully [18]. There are primary three operations in GA. The crossover operator mimics two parents producing a child in nature. The child shall have some characteristics of both parent and different from both parents. The unary mutation operator modifies the component(s) of a solution. Often times, the newly generated solution is much different than the original and may not even be valid. New solutions are randomly generated to further broaden the search space. There are two major challenges in the GA search process, solution quality and search speed. All three GA operations heavily rely on randomness. Although the randomness is necessary in GA, it introduces many unnecessary and worse solutions. It slows down the search process and results low quality solution. 3.1 Shadow Price
GA operates on the components of the solution(s). It uses randomness to select component(s) to participate operation and evolve them into random directions. The result can be highly diverse. This directly impacts the algorithm’s results and generates a lot of unnecessary calculations. To add some intelligence into GA operations, a method is needed to evaluate and compare components. Without a unified means to evaluate components, it is difficult for GA operators to select and work on high potential component(s) for generating better solutions. Since the fitness function can only evaluate the overall solution, GA does not provide a method to intelligently select components and guide evolution. Our research did not locate any direct attempt to address this challenge. We define the shadow price in GA as the relative potential improvement to the solution’s (chromosome) fitness value with a change of a component (gene). It’s a relative potential improvement since the concept is defined on a single component and a component change may force other components’ change to maintain solution’s feasibility. The improvement may or may not be realizable. A change of component states the fact that component change can be a value change, a position change, or other applicable changes. We use shadow price to directly compare components, their relationships, and their contributions toward a better solution. Based on different problems, shadow prices can take on different meanings or values. In the traveling salesman problem, it can simply be the possible distance reductions from changing the next visiting city [4]. In manufacture, shadow price can be the cost of material, time, etc. [11][12]. The definition has to be clear and comparable among components. Here are a few guidelines for selecting shadow price. • •
The shadow price shall enable comparison among components. Precise values are preferred over fuzzy values. The shadow price shall reflect the attribute of a component such as price, cost, material, etc. The attribute shall directly or indirectly impact the solution quality (fitness value).
A Shadow Price Guided Genetic Algorithm for Energy Aware Task Scheduling
•
•
525
The shadow price for the solution (sum of shadow prices from all components) shall change with the quality of the solution (fitness value). There is no need to define a math function to associate them. The only requirement is to ensure that the shadow price is consistent with the search process. The shadow price calculation shall be simple and fast.
There is no direct relationship between a solution’s fitness value and its components’ shadow prices. The fitness value represents the current solution’s position in the search space. The shadow prices represent potential improvements and directions to evolve. The shadow prices are only meaningful in the search process. 3.2 Shadow Price Guided Genetic Algorithm
The objectives of our new shadow price guided GA are to find better solutions and use less time than the standard GA. When search time is not restricted, our new SGA shall find optimal solutions faster. When search time is limited, our new SGA shall find better solutions. We use shadow price to generate many better solutions and reduce the amount of unnecessary calculations. The new SGA can find better solution and find it fast. We establish a two-measurement system in our new SGA: fitness values are used to evaluate overall solutions and shadow prices are used to evaluate components. We use shadow prices to guide the evolution operations. The goal of mutation is to improve solution by changing a component’s state. Selecting component is the key. Changing a component from a good state to a less quality state is counterproductive. Standard GA provides no help. We use shadow price to define the potential contribution of a component. The component with high potential has high shadow price. We can intelligently select a component with high shadow price to mutate and try to change its state to a lower shadow priced state. That is, we try to realize the component’s potential. In order to avoid local optimal trap, component is selected from a pool of high shadow priced components. The new mutation increases the chance of generating better solutions and reduces calculations. The crossover operator tries to generate a better child by inheriting components from both parents. This can only happen when good attributes are passed down. Standard GA relies on randomness and generates a lot of calculations. We use shadow price to evaluate components’ quality and try to pass good components (low shadow priced) to the child. To avoid local trap, randomness are also used to select good components from a pool of low shadow priced components. Our new SGA still uses the standard GA’s framework. We enhance the GA operators with shadow price information. Randomness is used to ensure a global search and avoid local optimal trap. The contribution is that we use shadow price to influence the GA operators to increase the odds of generating better solutions. 3.3 Energy Aware Shadow Price Guided Genetic Task Scheduling Algorithm
There are two optimizations in the energy aware task scheduling problem, assigning tasks to processors and minimizing each processor’s energy. Li proved that the total energy consumption is minimized when all tasks are executed with the same power (speed) on a uniprocessor computer [1] (theorem 3). This solves the second optimization
526
G. Shen and Y.-Q. Zhang
sub problem. In our new algorithm (as shown below), all assigned tasks for a processor are combined to calculate the minimal energy consumption. Begin 1. Validate there is at least one feasible solution. 2. Build initial population. 3. While stop criteria has not met 3.1 Select a sub population to randomly apply one of the following operations • Classic mutation operation (Move). Randomly select two processors and move one randomly selected task from one processor the other. • Classic mutation operation (Exchange). Exchange two randomly selected tasks between two randomly selected processors. • Shadow priced guided mutation operation (Move). (a) Calculate shadow prices for all processors. (b) Establish a pool of high shadow priced processors and random select one processor (Pa). (c) Establish a pool of low shadow priced processors and random select one processor (Pb). (d) Random select one task from Pa and move it to Pb. • Shadow priced guided mutation operation (Exchange). (a) Calculate shadow prices for all processors. (b) Establish a pool of high shadow priced processors and random select one processor (Pa). (c) Establish a pool of low shadow priced processors and random select one processor (Pb). (d) Sort Pa and Pb’s tasks based on their instruction count. (e) Establish a task pool from Pa’s tasks whose instruction count are more than average and random select one task. (f) Establish a task pool from Pb’s tasks whose instruction count are less than average and random select one task. (g) Exchange the selected tasks between Pa and Pb. 3.2 Add random solutions 3.3 Filter and build next generation End While End The shadow price SPi is the average energy consumption per instruction for the processor i. The evolution direction is to reduce processor’s shadow price by moving tasks among them. The four mutation operations have equal opportunities to be used when algorithm starts and the odds change with the search progression. The two new shadow price guided operations can greatly improve the GA’s performance. mi
SP i =
∑E k =1 mi
i k
∑P k =1
i k
A Shadow Price Guided Genetic Algorithm for Energy Aware Task Scheduling
527
4 Experiment To evaluate our new algorithm, we conducted a comparative study between GA and our new shadow price guided SGA. Both algorithms followed the same framework and were identical except the mutation operations. SGA used all four mutation operations and standard GA used two. Same calculations were used to optimize the processor’s power consumption after tasks have been assigned. We implemented both algorithms in Microsoft C#. Tests were run on a Lenovo Thinkpad T410 with Intel Core i5-M520 2.4 GHz CPU and 4 GB of memory running Windows 7. Each test was run at least 10 times. Results were averaged and reported. We selected the latest commercial released CPUs [5] for our experiments. We used published speed as the processor’s minimum speed. A random number between 5% and 25% was used as the speed improvement to define the processor’s maximum speed. Constants C and Φ were randomly generated. Instruction counts for tasks were also randomly generated between 500 and 100,000. To improve quality, we used a public available true random number generating services [6] instead of C# library. Table 1. Energy Saving using SGA (Ega-Esga) Cp
Gmax
Ct=500
Ct=1000
Ct=1500
Ct=2000
Ct=3000
Ct=5000
10
500
3.90E+19
7.31E+20
2.10E+21
1.59E+21
1.40E+21
4.00E+21
10
1000
4.90E+15
6.05E+19
8.59E+20
8.00E+20
7.51E+20
2.06E+21
10
2000
4.51E+15
1.46E+16
2.10E+18
1.46E+20
3.65E+20
1.21E+21
20
500
2.22E+19
6.29E+20
4.81E+21
6.41E+21
9.28E+20
1.17E+21
20
1000
6.79E+18
1.42E+20
6.35E+20
1.22E+21
3.27E+20
1.07E+21
20
2000
8.00E+16
2.05E+19
9.83E+19
1.54E+20
2.20E+20
8.36E+20
30
500
5.97E+18
4.85E+19
1.31E+20
1.48E+20
7.94E+19
1.65E+20
30
1000
1.37E+18
1.76E+19
4.85E+19
5.17E+19
4.82E+19
1.35E+20
30
2000
1.24E+17
3.85E+18
1.60E+19
1.89E+19
2.24E+19
6.44E+19
40
500
2.65E+18
1.71E+19
7.28E+19
7.36E+19
3.22E+19
2.85E+19
40
1000
8.39E+17
8.20E+18
2.48E+19
3.30E+19
2.74E+19
5.96E+19
40
2000
9.97E+16
1.58E+18
6.73E+18
8.71E+18
1.34E+19
3.85E+19
50
500
1.60E+18
1.06E+19
1.97E+19
2.02E+19
1.39E+19
1.34E+19
50
1000
3.58E+17
3.45E+18
8.18E+18
8.74E+18
1.18E+19
1.77E+19
50
2000
5.15E+16
8.74E+17
3.07E+18
3.62E+18
4.53E+18
1.59E+19
5.41E+18
1.13E+20
5.88E+20
7.12E+20
2.83E+20
7.25E+20
Average
Experiment cases were created using different combination of processors and tasks. Time constraint for each experiment case was randomly created, validated and shortened to ensure that very few processors can be idle in the optimal solutions. The first test was to compare solution quality between two algorithms. Each test case is a combination of CPU counts (Cp), task counts (Ct), and max generations (Gmax). Table 1 lists the SGA energy (Esga) savings over GA (Ega). It is Ega-Esga. A positive value states SGA used less energy than GA. In all test cases, Table 1 shows SGA used less energy than standard GA. SGA achieved better solutions. Next, we conducted speed test between the two algorithms. For each test case, we used the average energy consumption from above test as the stopping criteria. Algorithm only stops when the solution is equal or better than the target energy value.
528
G. Shen and Y.-Q. Zhang Table 2. SGA Speed Improvement in Generations, Gga-Gsga Cp
Ct=500
Ct=1000
Ct=1500
Ct=2000
Ct=3000
Ct=5000
10
230
214
221
284
305
217
20
291
145
120
141
221
190
30
333
258
207
241
252
211
40
313
228
223
234
282
306
50
351
260
295
202
231
260
303.6
221
213.2
220.4
258.2
236.8
Average
Table 2 lists the generation savings from SGA (Gsga) over GA (Gga), Gga-Gsga. All positive values show SGA used fewer generations than GA. Table 3 lists the time savings from SGA (Tsga) over GA (Tga), Tga-Tsga. Again, all positive values show SGA is faster than GA to reach the target. Both tables show SGA is faster than GA. Table 3. SGA Speed Improvement in Time (second), Tga-Tsga Cp
Ct=500
Ct=1000
Ct=1500
Ct=2000
Ct=3000
Ct=5000
10
0.463
1.066
2.313
3.826
7.836
14.876
20
0.561
0.626
0.812
1.292
3.357
7.872
30
0.573
0.778
1.166
1.799
3.458
5.873
40
0.584
0.799
0.882
1.71
2.626
6.296
50
0.681
0.804
1.302
1.209
2.28
4.468
0.5724
0.8146
1.295
1.9672
3.9114
7.877
Average
Our experiment results demonstrated that our new shadow price guided GA can find better solutions than standard GA. SGA is also faster than GA. The experiments validated our design and the effectiveness of our new algorithm.
5 Conclusion GA is an effective global search algorithm and has been used widely in solving many optimization problems. But GA can take a very long time to solve large complex problems and may provide sub optimal solutions. We propose a new shadow price guided GA in this paper to improve GA’s performance. We add a new component measurement method to the search. We propose a two-measurement system: fitness values are used to evaluate overall solutions and shadow prices are used to evaluate components. We use shadow prices to guide the evolution operations. Our new SGA improves the result qualityand the search speed. We applied our new SGA to solve the energy aware task scheduling problem and delivered very good results. Experiments showed that our new algorithm achieved better results than the standard GA and used less time.
References 1. Li, K.: Performance Analysis of Power-Aware Task Scheduling Algorithms on Multiprocessor Computers with Dynamic Voltage and Speed. IEEE Trans. on Parallel and Distributed Systems 19(11), 1484–1497 (2008), doi:10.1109/TPDS.2008.122
A Shadow Price Guided Genetic Algorithm for Energy Aware Task Scheduling
529
2. Holland, J.H.: Adaptation in Natural and Artificial Systems. University of Michigan Press, Ann Arbor (1975) 3. Holland, J.H.: daptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence. The MIT Press, Cambridge (1992) 4. Shen, G., Zhang, Y.Q.: A New Evolutionary Algorithm Using Shadow Price Guided Operators. Applied Soft Computing 11(2), 1983–1992 (2011) 5. Wikipedia, Instructions Per Second (2010), http://en.wikipedia.org/wiki/Instructions_per_second (accessed October 2010) 6. Random.org (2010), http://www.random.org (accessed October 2010) 7. US Environmental Protection Agency. EPA Report on Server and Data Center Energy Efficiency (August 2007), http://www.energystar.gov/ia/partners/prod_development/ downloads/EPA_Datacenter_Report_Congress_Final1.pdf (accessed October 2010) 8. Consortium for School Networking Initiative, Some Facts About Computer Energy Use (2010), http://www.cosn.org/Initiatives/GreenComputing/InterestingFa cts/tabid/4639/Default.asp (accessed October 2010) 9. von Laszewski, G., Wang, L., Younge, A.J., He, X.: Power-aware scheduling of virtual machines in DVFS-enabled clusters. In: IEEE Intl. Conf. on Cluster Computing and Workshops, 2009, pp. 1–10 (2009), doi:10.1109/CLUSTR.2009.5289182 10. Wang, L., von Laszewski, G., Dayal, J., He, X., Furlani, T.R.: Thermal Aware Workload Scheduling with Backfilling for Green Data Centers. In: The 28th IEEE Intl. Conf. on Performance Computing and Communications (December 2009), doi:10.1109/PCCC.2009.5403821 11. Shen, G., Zhang, Y.Q.: A Novel Genetic Algorithm. In: The 9th International FLINS Conf. on Foundations and Applications of Computational Intelligence (FLINS 2010) (2010) 12. Shen, G., Zhang, Y.Q.: Solving the Stock Reduction Problem with the Genetic Linear Programming Algorithm. In: The 2010 International Conference on Computational and Information Sciences, ICCIS 2010 (2010) 13. Tian, L., Arslan, T.: A genetic algorithm for energy efficient device scheduling in real-time systems. In: 2003 Congress on Evolutionary Computation, pp. 242–247 (2003) 14. Miao, L., Qi, Y., Hou, D., Dai, Y.H., Shi, Y.: A multi-objective hybrid genetic algorithm for energy saving task scheduling in CMP system. In: IEEE Intl. Conf. on Systems, Man and Cybernetics, 2008, pp. 197–201 (2008), doi:10.1109/ICSMC.2008.4811274 15. Liu, Y., Yang, H., Luo, R., Wang, H.: Combining Genetic Algorithms Based Task Mapping and Optimal Voltage Selection for Energy-Efficient Distributed System Synthesis. In: 2006 Intl. Conf. on Communications, Circuits and System, vol. 3, pp. 2074–2078 (2006), doi:10.1109/ICCCAS.2006.285087 16. Chang, P.C., Wu, I.W., Shann, J.J., Chung, C.P.: ETAHM: An energy-aware task allocation algorithm for heterogeneous multiprocessor. In: 45th ACM/IEEE Design Automation Conference, 2008, pp. 776–779 (2008) 17. Li, Y., Liu, Y., Qian, D.: A Heuristic Energy-aware Scheduling Algorithm for Heterogeneous Clusters. In: 2009 15th Intl. Conf. on Parallel and Distributed Systems (ICPADS), pp. 407–413 (2009), doi:10.1109/ICPADS.2009.33 18. Koza, J.R., Keane, M.A., Streeter, M.J., Mydlowec, W., Yu, J., Lanza, G.: Genetic Programming IV: Routine Human-Competitive Machine Intelligence. Springer, Heidelberg (2005) 19. Zhang, L.M., Li, K., Zhang, Y.Q.: Green Task Scheduling Algorithms with Speeds Optimization on Heterogeneous Cloud Servers. In: 2010 IEEE/ACM Intl. Conf. on Green Computing and Communications (GreenCom 2010), pp. 76–80 (2010)
A Solution to Bipartite Drawing Problem Using Genetic Algorithm Salabat Khan, Mohsin Bilal, Muhammad Sharif, and Farrukh Aslam Khan Department of Computer Science, National University of Computer and Emerging Sciences, A.K. Brohi Road, H-11/4, Islamabad, Pakistan [email protected]
Abstract. Crossing minimization problem in a bipartite graph is a well-known NP-Complete problem. Drawing the directed/undirected graphs such that they are easy to understand and remember requires some drawing aesthetics and crossing minimization is one of them. In this paper, we investigate an intelligent evolutionary technique i.e. Genetic Algorithm (GA) for bipartite drawing problem (BDP). Two techniques GA1 and GA2 are proposed based on Genetic Algorithm. It is shown that these techniques outperform previously known heuristics e.g., MinSort (M-Sort) and BaryCenter (BC) as well as a genetic algorithm based level permutation problem (LPP), especially when applied to low density graphs. The solution is tested over various parameter values of genetic bipartite drawing problem. Experimental results show the promising capability of the proposed solution over previously known heuristics. Keywords: Crossing Minimization, Bipartite Graph, Genetic Algorithm, Bipartite Drawing Problem (BDP), Crossing Minimization Heuristics (CMH)
1 Introduction In the context of graph theory, bipartite graph ‘G’ is a graph whose set of vertices can be partitioned into two non-empty sets or layers; e.g., ‘V1’ & ‘V2’ such that the edges only connect the vertices in different layers. Alternatively, ‘V1’ and ‘V2’ are also known as the upper and the lower layers of bipartite graph respectively. The edge connectivity may introduce crossings in the bipartite graph. Drawing a graph with as few edge crossings as possible is a well-known NP-Complete problem of graph theory [1, 2, 3, 4]. A more detailed description about bipartite graph may be found in [5, 8, 10, 15]. Watkins [8] restricted the edge crossing minimization problem to the bipartite graphs. Crossing minimization in a bipartite graph has several applications in various graph drawing systems [9], most notably in those based on the Sugiyama’s algorithm [11] and is also used in VLSI design [10], bi-clustering [12], networking, and information engineering. Stallmann et al. [15] described the importance of crossing minimization based on two motivational factors; a) it improves the appearance of a graph, and b) it reduces the wiring congestion and crosstalk in VLSI circuits, which in turn may reduce the total wire length and the layout area.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 530–538, 2011. © Springer-Verlag Berlin Heidelberg 2011
A Solution to Bipartite Drawing Problem Using Genetic Algorithm
531
There are two main problems discussed regarding the bipartite graphs. First, the level permutation problem (LPP) where the order of nodes in one layer is kept fixed, and second, the bipartite drawing problem (BDP) where both layers of the bipartite graph can be subject to permutation. In both of these problems, the objective is to minimize the number of crossings in the bipartite graph. Researchers have carried out a fair amount of work on this problem including Catarci [13], Camel and Irene [14], Stallmann et al. [15] and Zheng et al. [16]. Zoheir Ezziane [17] has used an Evolutionary Algorithm (EA) for BDP and compared the results with BaryCenter (BC). There is no crossover operator used in [17] and the experiments are done over very small sizes (10-17) of the bipartite graph. In Laguna et al. [18], the application of tabu search for Arc crossing minimization in hierarchal digraphs is analyzed. Martí [19] used GRASP (Greedy Randomized Adaptive Search Procedure) for Arc crossing minimization problem. In most of these approaches, researchers have tried to permute single layer of the bipartite graph (keeping the second layer fixed i.e. LPP) with the condition that the bipartite graph will have same cardinality of vertices in both layers. In this paper, we use Genetic Algorithm (GA) for the bipartite drawing problem and propose two techniques i.e., GA1 and GA2. It is shown that these techniques outperform previously known heuristics such as MinSort (M-Sort) [12] and BaryCenter (BC) [11] as well as a Genetic Algorithm based level permutation problem (LPP) especially when applied to low density graphs. In our techniques, we use the X_Order1 crossover operator and experiments are carried over large sizes (15-100) of the bipartite graph that gives a better estimation of the approach based on its performance and scalability. Moreover, both the layers of the bipartite graph are considered to be rearranged during searching or learning, so it is essentially the bipartite drawing problem (BDP). Thus, the intention is to find certain permutation on both the layers of the bipartite graph such that the crossing count is minimized. Moreover, the restriction that the vertices in both the layers must have the same cardinality as imposed in [1] is also compromised. In our experiments, we consider two well-known crossing minimization heuristics i.e. MinSort and BaryCenter and the solution proposed in [1] as the basis of comparisons. In addition, the relationship between M-Sort and BC is also elaborated and their difference is noted for graphs with different densities. Results are compared upon input of variant density graphs. The rest of the paper is organized as follows: In Section 2, Genetic Algorithm is discussed. The proposed solution is explained in Section 3. Experimental results and analysis are shown in Section 4. Finally, Section 5 concludes the paper.
2 Genetic Algorithm Genetic Algorithm (GA) is a computational model of intelligence inspired by evolution introduced by John Holland in 1975 [6] [7]. The algorithm encodes a potential solution to a specific problem on a simple chromosome-like data structure and applies recombination operators to these structures [6]. The problems are not solved by reasoning logically about them, rather the populations of competing candidate solutions are spawned and then evolved to become better solutions through a process patterned after biological evolution [7]. Thus, increasingly powerful solutions emerge in a
532
S. Khan et al.
Darwinian universe. Learning is viewed as a competition among a population of evolving candidate problem solutions [7].
3 Proposed Techniques Two GA based techniques i.e., GA1 and GA2 are proposed. The main difference between these two techniques is the initialization step in the algorithm. The details are explained as follows: 3.1 Chromosome Representation The implementation of a GA begins with a population of (typically random) chromosomes [6]. Chromosome is a string of genes and represents an individual i.e. a possible solution to a problem. A Gene is a basic unit which represents one characteristic of the individual. The value of each gene is called an allele. Each chromosome represents a point in the search space. A population is a collection of chromosomes. An appropriate chromosome representation is important for efficiency and reducing the complexity of the GA [7]. A chromosome for this problem is composed of permutations of two layers of bipartite graph as shown in Fig. 1. Upper Layer Vertices [0, 2, 1, 3, 4] [0, 3, 2, 1] Lower Layer Vertices Fig. 1. Chromosome representation
3.2 Initialization Based on different initialization strategies, two techniques are presented i.e., GA1 and GA2. In GA1, during initialization, the chromosomes in the population are created randomly i.e. both layers’ permutations of bipartite graph are randomly enumerated; thus the initialization does not use any intelligence. The GA2 is a meta-heuristic in the sense that it uses M-Sort and BC during initialization phase. Instead of creating all the chromosomes randomly, the state of the bipartite graph in different iterations of MSort and BC is used to initialize/create a few chromosomes intelligently. The state means the permutations of vertices labels in both the layers where connectivity does not change. It takes usually several iterations to minimize the crossings in a bipartite graph using M-Sort and BC. In each iteration of M-Sort and BC, the permutation of the layers would change and thus may be used to create a new chromosome. In order to understand this, let us discuss an example for creating chromosomes using M-Sort as shown in Fig. 2. In this example, we create three chromosomes to be used in GA2. The format of the input data is also shown. The bipartite graph contains three vertices in both the layers having labels 0, 1 and 2 as highlighted in the input data.
A Solution to Bipartite Drawing Problem Using Genetic Algorithm
533
The remaining data not highlighted contains ‘0’ and ‘1’; where ‘0’ indicates no edge and ‘1’ indicates an edge between two vertices. The steps for crossing minimization under M-Sort are shown in Fig. 2.
Fig. 2. Chromosome creation using MinSort
3.3 Stochastic Operator GA evaluates the chromosomes and allocates reproductive opportunities in such a way that those chromosomes which represent a better solution to the target problem are given more chances to “reproduce” than those chromosomes which are poorer solutions [7]. For this, GA makes use of some stochastic operators mainly mutation and crossover. Both of these operators are used and the detail is given below: Crossover: In our experiments, the X_Order1 method is used and the crossover rate is chosen equal to 1. In the X_Order1 method, the offspring inherits the elements between the two crossover points, inclusive, from the selected parent in the same order and position as they appear in that parent. The remaining elements are inherited from the alternate parent in the same order as they appear in that parent, beginning with the first position following the second crossover point and skipping over all elements already present in the offspring. In our approach, the chromosome is composed of two layer permutations of the bipartite graph thus X_Order1 crossover method is first applied on the upper layer and then on the lower layer between two selected parent chromosomes. Mutation: The probability of mutation operator is kept constant to 0.03 which is found better experimentally. A swap method is used for mutation. In this method, two genes positions e.g. ‘i’ & ‘j’ from the parent are selected randomly and then swapped to form a new offspring. Selection: The selection policy of individuals for the next generation is based on the survival of the fittest. New offspring are created equal to the size of the population. Population and offspring are sorted out on the basis of their relative fitness and best
534
S. Khan et al.
individuals are selected to form the new population. For significant improvements in the results, duplicate chromosomes in the population are disallowed which definitely increases the computational effort but it encourages the new areas of the search space to be explored. As discussed, a chromosome is a search point in the search space and thus disallowing the duplicate search points means new search points to be examined or explored. 3.4 Fitness Function Fitness function determines how much an individual is valuable to the problem at hand. In our case, crossing count is the basic criterion that can be used for indicating the value of an individual/chromosome. So, in order to evaluate the individual solution, the crossing count is used as a fitness function value, therefore, higher the fitness value, low valuable is the individual solution. Crossing count algorithms for bipartite graphs are very slow w.r.t. their time complexity. So, this would deteriorate the performance of GA due to multiple crossing counts of individuals in a population for multiple generations. Therefore, as a remedy, a fast O(|E|.log|Vsmall|) algorithm presented in [5] is used which overcomes this deterioration effect.
4 Experimental Results The proposed techniques i.e., GA1 and GA2 are implemented in Visual Studio 2008 C# and run on Intel P-IV processor with 1 GB of RAM. The comparison among different techniques is done on the basis of various parameters. Each subsection below compares the techniques with respect to these parameters.
Fig. 3. GA vs Minsort and BC based on population size
A Solution to Bipartite Drawing Problem Using Genetic Algorithm
535
4.1 Population Size A random graph is generated with the size of 15 vertices on both the layers and the density is kept 20% as used in [1]. GA1 is run 50 times over the test graph and the average fitness gain is used for comparison with M-Sort and BC heuristics. Note that in Fig. 3, one curve depicts the GA’s best result and the second and the third curves depict the number of iterations required to reach the results of M-Sort and BC heuristics, respectively. The result of GA1 is considered best when it does not improve in next twenty consecutive generations. Another interesting finding is the relationship between M-Sort and BC heuristics. It is found that BC outperforms the M-Sort heuristic with respect to minimizing the number of crossings, especially for high density graphs but it takes more iterations as compared to M-Sort. 4.1.1 GA1 vs. Minsort and BaryCenter Fig. 3 shows the results of GA1 in comparison to MinSort and BC and the points in the graph are sprinkled based on different population sizes. On y-axis the numbers of iterations required are presented. For instance, our technique takes 30 iterations to reach MinSort results when population size is set to 10 and we get 107 crossings count as the best result after 80 iterations. We find no improvement in next twenty consecutive iterations after the completion of 80 iterations, thus consider best result of GA1 at this point. The working nature of the genetic algorithm is apparent that if population size is increased then the iterations required to acquire certain result are decreased. The population size ‘40’ is found best during experiments as after that we find no significant improvement in the results, so considering it a saturation point in terms of performance gain. In general, we find that it requires large number of generations using GA1 to reach the results of BaryCenter as compared to the MinSort. 4.2 Graph Density The known heuristics for LPP have the property of making larger relative error with low density graphs than with high density graphs [1]. We, therefore, test the effect of graph density in order to compare our technique with M-Sort and BC heuristics. For this purpose, we use random graphs of size 15, population size of 30 and mutation rate of 0.03. Graph size 15 means that there are 15 vertices in the upper layer as well as in the lower layer. This is just to compare our results with the one presented in [1], otherwise, this restriction is not relevant as evident from the representation of the chromosome. Moreover, even though the approach presented in [1] is based on GA and is used for crossing minimization, the solution presented in [1] is for a level permutation problem (LPP), whereas our proposed approach is a solution for the bipartite drawing problem (BDP). Therefore, it may be considered unfair to compare our approach with the one presented in [1], however, these comparisons are performed in order to show that rearranging both the layers of vertices of bipartite graph performs better (for crossing minimization) than just considering a single layer for possible rearrangements.
536
S. Khan et al.
Fig. 4. Iterations to acquire the results of MinSort and BC with variant graph densities
The GA1 results for this experiment are calculated as the average of 50 runs for different values of graph densities as shown in Fig. 4 for M-Sort and BC. Graph density represents the number of edges in the graph. For example, if we have total (n=30) vertices (15 vertices in each layer) in the bipartite graph and the graph density is (d=20%) then there will be 45 edges ((n*n)*d/ 100) in total. 4.2.1 GA1 vs. Minsort and BaryCenter Fig. 4 shows the graphical representation of the results obtained for the comparison of GA1 with MinSort and BaryCenter based on different graph densities. We can see from the results in Fig. 4 that we need small number of iterations of GA1 to reach the MinSort results for highly dense graphs as we have observed that MinSort makes relatively large error in case of highly dense graphs. BaryCenter has the property of making larger relative error with low-density graphs than with high-density graphs [1]. So, based on this observation, we can see in Fig. 4 that GA1 needs large number of iterations to reach BaryCenter results in case of highly dense graphs. 4.3 Crossing Minimization We compare GA1 with MinSort and BaryCenter such that we allow a total of 500 generations for GA1 and analyze possible average crossing minimizations using GA1. We generate a random bipartite graph with the size of 15 vertices on both the layers and density is kept 20%. We calculate the average crossing count after running the GA1 50 times with the mutation rate of 0.03 and the population size of 40. From experiments, we show that GA1 performs much better than M-Sort and B-Center with average crossing count of 77 as compared to M-Sort (166) & B-Center (123) where the original crossing count are 460.
A Solution to Bipartite Drawing Problem Using Genetic Algorithm
537
4.4 Comparison of GA1 with GA2 We now present the comparison of GA1 and GA2 based on different graph densities and different sizes of bipartite graphs generated randomly. The comparison based on different graph densities is shown in Table 1. The constant parameters during these experiments are given as: (Graph Size = 15*15, Generations = 200, Mutation rate = 0.03, Crossover rate = 1 and Total Runs = 50). The comparison of GA1 and GA2 for different graph sizes generated randomly is shown in Table 2. The constant parameters during these experiments are given as: (Graph Density = 30%, Population Size = 40, Generations = 500, Mutation rate = 0.03, Crossover rate = 1 and Total Runs = 50). It is clear from Table 1 and Table 2 that GA2 is able to minimize the crossings in the bipartite graph much better than GA1 since GA2 uses an intelligent initialization scheme as discussed in Section 3.2. Table 1. Comparison of GA1 and GA2 based on graph densities and population size (O.C = Original Crossings and A.C.C = Average Crossing Count) 10% (O.C = 123)
20% (O.C = 460)
30% (O.C = 918)
Population
GA2 A.C.C
GA1 A.C.C
GA2 A.C.C
GA1 A.C.C
GA2 A.C.C
GA1 A.C.C
10 20 30 40 50
10 4 3 3 3
16 15 10 9 6
110 106 105 103 95
159 148 125 120 121
359 352 329 327 321
363 362 352 339 323
Density = >
Table 2. GA1 vs GA2 (different graph Sizes) (A.C.C = Average Crossing Count)
Graph Size 20*20 30*30 40*40 50*50 100*100
GA2 A.C.C 1173 8291 26040 85824 905916
GA1 A.C.C 1346 8309 26081 86089 905966
Original Crossing Count 3634 16697 55557 136542 2197974
5 Conclusion In this paper, we proposed two techniques i.e., GA1 and GA2 based on genetic algorithm for the bipartite drawing problem (BDP). The proposed techniques are also compared with previously known heuristics such as MinSort and BaryCenter as well as a genetic algorithm based level permutation problem (LPP). We have found that on average, the proposed techniques always outperform BaryCenter on low-density graphs and MinSort on high-density graphs. The behavior shown during experiments by the genetic algorithm in our techniques is quite good with respect to average number of crossing minimization. There is, of course, a saturation point especially in evolutionary computing based techniques such as GA where the improvement in the results stops or improves very slowly. The parameters we used in our experiments for
538
S. Khan et al.
GA1 and GA2 are; population size of 10-50, elitism is at least one individual, crossover rate is 1 and mutation rate is 0.03.
References 1. Mäkinen, E., Sieranta, M.: Genetic Algorithms for Drawing Bipartite Graphs. International Journal of Computer Mathematics 53(3&4), 157–166 (1994) 2. Bienstock, D.: Some provably hard crossing number problems. In: Proc. 8th Annual ACM Symposium on Computational Geometry, pp. 253–260 (1990) 3. Garey, M.R., Johnson, D.S.: Crossing number is NP-complete. SIAM J. Algebraic Discrete Methods 4, 312–316 (1983) 4. Tutte, W.T.: Toward a Theory of Crossing Numbers. J. Comb. Theory 8(1), 45–53 (1970) 5. Barth, W., Mutzel, P., Junger, M.: Simple and Efficient Bilayer Cross Counting. Journal of Graph Algorithms and Applications (JGAA) 8(2), 179–194 (2004) 6. Whitley D.: A Genetic Algorithm Tutorial, http://www.cs.uga.edu/~potter/CompIntell/ga_tutorial.pdf 7. Engelbrecht, A.P.: Computational Intelligence: An Introduction. J. Wiley & Sons, Chichester (2007) 8. Watkins, M.E.: A special crossing number for bipartite graphs: a research problem. Ann. New York Acad. Sci. 175, 405–410 (1970) 9. Battista, G.D., Eades, P., Tamassia, R., Tollis, I.: Algorithms for drawing graphs: an annotated bibliography. Comp. Geometry: Theory and Applications 4, 235–282 (1994) 10. Koebe, M., Knöchel, J.: On the block alignment problem. J. Inf. Process. Cybern. EIK 26, 377–387 (1990) 11. Sugiyama, K., Tagawa, S., Toda, M.: Methods for visual understanding of hierarchical system structures. IEEE Trans. Syst. Man Cybern. SMC-11, 109–125 (1981) 12. Abdullah, A.: “Data Mining Using the Crossing Minimization Paradigm,” –Ph.D. Thesis, University of Stirling (2007) 13. Catarci, T.: The Assignment Heuristic for Crossing Reduction. IEEE Transactions on Systems, Man and Cybernetics 21, 515–521 (1995) 14. Camel, D., Irene, F.: Breaking Cycles for Minimizing Crossings. Journal of Experimental Algorithmics (JEA) 6 (2001) 15. Stallmann, M., Brglez, F., Ghosh, D.: Heuristics, Experimental Subjects, and Treatment Evaluation in Bigraph Crossing Minimization. J. Exp. Algorithmics 6 (2001) 16. Zheng, L., Song, L., Eades, P.: Crossing Minimization Problems of Drawing Bipartite Graphs in Two Clusters. In: ACM Asia-Pacific Symposium on Information Visualization, vol. 109, pp. 33–37 (2005) 17. Ezziane, Z.: Experimental Comparison between Evolutionary Algorithm and Barycenter Heuristic for the Bipartite Drawing Problem. J. Computer Science 3(9), 717–722 (2007) 18. Laguna, M., Marti, R., Vails, V.: Arc Crossing Minimization in Hierarchical Digraphs with Tabu Search. Computers and Op. Research 24(12), 1175–1186 (1997) 19. Martí, R.: Arc Crossing Minimization in Graphs with GRASP. IIE Transactions 33, 913– 919 (2004)
Evaluation of Two-Stage Ensemble Evolutionary Algorithm for Numerical Optimization Yu Wang, Bin Li, Kaibo Zhang, and Zhen He Natural Inspired Computation and Application Laboratory (NICAL) Department of Electronic Science and Technology University of Science and Technology of China (USTC) Tel.: +86-551-3601802 [email protected]
Abstract. In many challenging numerical optimization problems, the conflict between exploitation and exploration abilities of EAs must be balanced in an effective and efficient way. In the previous research, in order to address this issue, the Two-Stage ensemble Evolutionary Algorithm (TSEA) was originally proposed for engineering application. In TSEA, the optimization is divided into two relatively separate stages, which aims at handling the exploitation and exploration in a more reasonable way. In this paper, we try to extend the application area of TSEA from specific engineering problems to general numerical optimization problems by altering its sub-optimizers. The experimental studies presented in this paper contain three aspects: (1) The benefits of the TSEA framework are experimentally investigated by comparing TSEA with its sub-optimizers on 26 test functions; then (2) TSEA is compared with diverse state-of-the-art evolutionary algorithms (EAs) to comprehensively show its advantages; (3) To benchmark the performance of TSEA further, we compare it with 4 classical memetic algorithms (MAs) on CEC05 test functions. The experimental results definitely demonstrate the excellent effectiveness, efficiency and reliability of TSEA.
1 Introduction Numerical optimization problems widely exist in scientific and engineering applications [1]. Since the competition of searching for optimal working conditions in engineering application has become much more furious, the development of the optimization methods always lead to rapid improvement of the competitive strength [2,3,4]. However, these problems always have different characteristics and rise more and more challenges to the optimization methods [5,6]. Among these challenges, the balance between exploitation and exploration is an important one that has attracted public attention. In the previous research, many attempts have been carried out to synthesize diverse kinds of merits from different optimization techniques, which surely strengthens the universality in one algorithmic framework. Among these attempts, memetic algorithm (MA) is a typical example [7,8,9]. The major idea of MAs is to make up the demerit of less exploration ability of global search algorithms by embedding efficient local search techniques, which can more easily obtain a near optimal solution. Another important way is to combine numbers of new offspring generating strategies from one or multiple evolutionary algorithms (EAs) in a parallel way [4,10,11,12,13,14]. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 539–548, 2011. c Springer-Verlag Berlin Heidelberg 2011
540
Y. Wang et al.
Different from the above works, an Estimation of Distribution and Differential Evolution cooperation (ED-DE), which adopt a serial algorithmic framework to extract the merits from both estimation of distribution and differential evolution, is originally proposed in [2]. At each iteration, ED-DE only utilizes self-adaptive mixed distribution based univariate estimation of distribution algorithm (MUEDA) [6] or modified differential evolution (MDE). In ED-DE, the whole optimization procedure is divided into two relatively separate stages, which mainly focus on exploitation and exploration respectively. The essence of ED-DE is to completely solve the simple problems in the first stage, and obtain a good initial status for the second stage when the problems are too hard to solve by only implementation of MUEDA. Following the similar line of thinking, Wang and Li [5] extend the two-stage search idea to large scale global optimization. It can be observed that the two-stage search idea has just been applied to specific optimization problems, while inevitably ignores some requirements of general usage, such as rotation. In this paper, we try to extend the application area of TSEA from specific engineering problems to general numerical optimization problems by altering its suboptimizers. The sub-optimizers used in TSEA are the Covariance Matrix Adaptation Evolution Strategy (CMAES) [15] and Self-adaptive Learning based Particle Swarm Optimization (SLPSO) [4]. The reasons of implementing these two algorithms can be summarized as follows: – (1) CMAES shows particularly reliable and excellent performance for local optimization. In the Matlab source code of CMA-ES, it is stated that its convergence speed is ten times slower than the mathematical local search Davidon, Fletcher and Powell Strategy (DFP) [16], but its robustness for difficult problems is far more excellent. Given an initial individual, CMA-ES performs iterative self-adaptive Gaussian-based mutation and recombination. Especially, for the rotated problems, CMA-ES can effectively handle them by adapting a covariant matrix during the optimization procedure [17,18]. – (2) SLPSO simultaneously applies four PSO based search strategies, whose associated probabilities of using different strategies are self-adaptively learnt by considering the ability of generating better quality solutions in the past generations. In this case, the robustness and universality of SLPSO can be highly improved. Especially, the effectiveness of SLPSO, which is the main requirement of the second optimization stage in TSEA, has been experimentally verified in [4]. In order to fully show the advantages of TSEA, we design three experimental studies: (1) The benefits of the TSEA framework are experimentally investigated by comparing TSEA with its sub-optimizers on 26 test functions; then (2) TSEA is compared with diverse state-of-the-art evolutionary algorithms (EAs) to comprehensively show its advantages; (3) To benchmark the performance of TSEA further, we compare it with 4 classical memetic algorithms (MAs) on CEC05 test functions. The remainder of this paper is structured as follows: In the next section, the TSEA framework is depicted. Experimental comparison between TSEA and its sub-optimizers is shown and discussed in the Section III and in Section IV, further experimental studies are presented. Finally, the contributions of this paper are summarized and the future work is outlined in Section V.
Evaluation of Two-Stage Ensemble Evolutionary Algorithm
541
Table 1. Procedure of TSEA TSEA Input: – Optimization task ; – a transformation criterion (trigger) (it depends on different algorithms used in the first stage); – a termination condition; Output: The best solution found. Step 0) Initialization: Randomly initialize the population Xt . Set t = 0. Step 1) The first optimization stage: Perform new offspring generating strategy 1 for one iteration to update Xt . Set t = t + 1. Step 2) Trigger Determine whether to trigger the second optimization stage or continue the first optimization stage. In case of former, go to step 3), otherwise, go back to step 2). Step 3) The second optimization stage:Perform iterative new offspring generating strategy 2. Step 4) Terminate and output.
2 Algorithm As introduced in Section I, TSEA combines two EAs to form a new serial cooperative optimizer. More promising results are expected when the characteristic merits of both EAs are successfully united in the cooperative optimizer. Generally speaking, the motivation of combining two perspective EAs in a successive manner are: – When a new black-box problem is given, its properties are completely unknown. Therefore, the choice of the optimization maybe sightless for users. To address this issue, TSEA adopts an efficient algorithm to accomplish the pre-trial. If the problem is simple, TSEA can completely solve it in the first stage. Contrary, when the problem is too hard, e.g. the problem contains too many local optima, the first stage can also achieve a good initial status for the second stage within a limited computational cost. – The situation that the problem cannot be solved in the first stage implies that it is a hard task. The second stage, which implements an effective algorithm, is launched with the initial status inherited from the first stage. The effective algorithm, which mainly focuses on exploration, always consumes larger computational cost in accomplishing one search procedure. If we directly use this algorithm in the first stage, much computational cost may be wasted for the easy problems. The detailed procedure of the TSEA is illustrated in Table 1, where the new offspring generating strategies 1 and 2 are CMAES and SLPSO respectively.
3 Experiment Comparison between TSEA and Its Sub-optimizers In order to demonstrate the benefits of TSEA framework over its sub-optimizers, we perform TSEA versions and its sub-optimizers on the test suit shown in Table 2. The first two groups contain separable problems. Test functions of group 2 have mis-scaled variables or noisy landscapes, which are much more challenging for optimization. For group 3 problems, the classical test functions are rotated by z = M (x − o), where M
542
Y. Wang et al. Table 2. Classical benchmark problems to be minimized Group 1: Classical test functions (non-linear, separable, scalable) (z = x − o)
Num S R √ fun1 √ fun2 √ fun3 √ fun4 √ fun5 √ fun6 √ fun7 fun8 fun9 fun10
fun11
√ √ √ √
Problems
Objective function n 2 Shifted Sphere f1 (x) = i=1 zi + fbias n i 2 Shifted Schwefel 1.2 f2 (x) = ( i=1 j=1 zj ) + fbias n n Shifted Schwefel 2.22 f3 (x) = i=1 |zi | + i=1 |zi | + fbias Shifted Schwefel 2.21 f4 (x) = max |zi | + fbias D 2 2 2 Shifted Rochenbrock f5 (x) = i=1 (100(zi −zi+1 ) + (zi − 1) ) + fbias n n Shifted Ackley f6 (x) = −20 · exp(−0.2 1 z 2 ) + e − exp( 1 i=1 cos(2πzi )) + 20 + fbias i=1 i n n n z 1 2 + 1 − n √i ) + fbias Shifted Griewank f7 (x) = z cos( i=1 i i=1 4000 i n 2 Shifted Rastrigin f8 (x) = i=1 (zi ) − 10cos(2πzi ) + 10 + fbias ⎧ ⎨ z , if |z | < 1/2 n i i 2 Noncontinues Rastrigin f9 (x) = i=1 (yi ) − 10cos(2πyi ) + 10, yi+1 = ⎩ round(2 ∗ zi )/2, otherwise, 2 2 2 2 π Shifted Penalized 1 f10 = {10 sin + i=1 9(yi − 1) · [1 + 10 sin (πyi+1 + (yn − 1)2 )] 30 + 30 u(x i , 10, 100, 4)}, u and y is shown in Appendix i=1 2 2 2 2 Shifted Penalized 2 f11 = 0.1{sin2 (π3x1 ) + i=1 9(xi − 1) · [1 + sin (3πxi+1 )] + (xn − 1) } 30 2 ·[1 + sin (2πx3 0)] + i=1 u(xi , 5, 100, 4)}, u and y is shown in Appendix Group 2: Test functions that are mis-scaled or with noise (z = x − o)
fun12 fun13 fun14 fun15
√ √ √ √
i−1 D 2 2 2 D−1 i=1 (100((ai zi ) − (ai+1 zi+1 )) + ((ai zi ) − 1) ) + fbias , ai = 10 i−1 n 2 D−1 f13 (x) = i=1 ((ai zi ) ) − 10cos(2π(ai zi )) + 10 + fbias , ai = 10 i−1 n 2 D−1 f14 (x) = i=1 ((ai zi ) ) − 10cos(2π(ai zi )) + 10 + fbias , ai = 1000 n i 2 f15 (x) = ( i=1 ( j=1 zj ))(1 + 0.4|N (0, 1)|) + fbias
Shifted Rochenbrock100 f12 (x) = Shifted Rastrigin10 Shifted Rastrigin1000 Noise Schwefel 1.2
Group 3: Rotated test functions (non-linear, non-separable, scalable) (z = M (x − o)) Num S R √ √ fun16 √ √ fun17 fun18 fun19 fun20 fun21 fun22 fun23 fun24 fun25 fun26
√ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √ √
Problems Rotated Sphere Rotated Tablet Rotated Ellipse
Objective function D 2 f16 (x) = i=1 zi + fbias D 2 f17 (x) = (1000x1 )2 + i=2 zi + fbias i−1 D 2 D−1 f18 (x) = zi ) + fbias i=1 (20
Rotated diff pow
f19 (x) =
Rotated Schwefel 2.21
f20 (x) =
Rotated Rochenbrock
f21 (x) =
Rotated Ackley
f22 (x) =
Rotated Griewank
f23 (x) =
Rotated Rastrigin
f24 (x) =
Noise Schwefel 1.2
f25 (x) =
Noise Quadric
f26 (x) =
i−1 D 2+ai + fbias , ai = 10 D−1 i=1 zi max |zi | + fbias D 2 2 2 i=1 (100(zi −zi+1 ) + (zi − 1) ) + fbias n n −20 · exp(−0.2 1 z 2 ) + e − exp( 1 i=1 cos(2πzi )) + 20 + fbias i=1 i n n n z 2 + 1 − n 1 √i ) + fbias z cos( i=1 i i=1 4000 i n 2 i=1 (zi ) − 10cos(2πzi ) + 10 + fbias i 2 ( n i=1 ( j=1 zj ))(1 + 0.4|N (0, 1)|) + fbias n 4 i=1 izi + random[0, 1) + fbias
is an orthogonal rotation matrix, to avoid local optima lying along the coordinate axes while retaining the properties of the test functions. Before presenting the experiment, we first define the comparison criterion: the ranking of the algorithms is based on the success performance SP [17], which is defined as follows: SP = mean(function evaluations of successful runs) all runs (1) number of successful runs Small values of SP are preferable. As shown in [4,11,14,17], the empirical cumulative distribution of normalized SP can strongly benchmark the performance of multiple algorithms. ×
Evaluation of Two-Stage Ensemble Evolutionary Algorithm
543
Comparison between TSMA and its sub-optimizers 1
Empirical cumulative distributions
0.9 0.8 0.7 0.6 0.5 0.4
CMAES
0.3
SLPSO 0.2
TSEA(CMAES-SLPSO)
0.1 0 0 10
1
10
2
FES/FESbest
10
3
10
Fig. 1. Empirical distribution of normalized success performance of TSEA and its sub-optimizers
In this experiment, we set the dimension size of all test functions to be 30 and the maximum number of function evaluations to be 300000. For all test functions, we perform 30 independent runs with each algorithm. A run is considered to be successful if at least one solution was discovered during its course whose fitness value is not worse than (f it(x∗ ) + 1e − 5). It is observed from Fig. 1 that CMA-ES provides top convergence speed for almost 50% problems. However, for over 30% problems, it fails completely, which implies that it is not sufficient to implement only once for reliably solving diverse tasks. This viewpoint is the main reason of applying restart strategy in [17,18]. SLPSO can solve more problems than CMAES, however, its convergence speed is relatively lower. With the good cooperation of the both techniques, the overall performance curves of TSEA is the highest, which means TSEA has the best universality and excellent efficiency.
4 Experiment Comparison between TSEA and State-of-the-Art EAs and MAs 4.1 Experiment Comparison with State-of-the-Art EAs In order to show the superiority of TSEA over the effective global search methods, we compared it with eight recently proposed state-of-the-art EAs: – – – – –
SaDE: self-adaptive differential evolution [14]; jDE: differential evolution with parameter adaption [19]. MUEDA: self-adaptive mixed distribution based univariate EDA [6]; CLPSO: comprehensive learning particle swarm optimizer [20]; FIPS-PSO: fully informed PSO [21];
544
Y. Wang et al.
Comparison between TSEA with the global search methods 1
Empirical cumulative distributions
0.9
0.8
0.7
0.6
0.5 SaDE
0.4
jDE MUEDA
0.3
CLPSO FDR-PSO
0.2
wFIPS-PSO IPOP-CMAES
0.1
Restart-L-CMAES TSEA
0 0 10
1
10
2
10
3
10
FES/FESbest
4
10
5
10
Fig. 2. Comparison between TSEA and state-of-the-art EAs
– FDR-PSO: Fitness-distance-ratio based PSO [22]; – IPOP-CMAES: global CMAES variant with increasing population size and restart strategy [18]; – Restart-L-CMAES: local CMAES variant with restart strategy [17]; Especially, the self-adaptively utilize offspring generating strategies to strengthen the robustness. CLPSO has exhibited the top capability of handling multi-modal problems [20] among the PSO variants. IPOP-CMAES showed top performance in function optimization competition of IEEE Congress of Evolutionary Computation 2005 (CEC05). The essential of IPOP-CMAES and Restart-L-CMAES is to restart CMA-ES version when the search fails. Therefore, their searches are made of multiple runs of CMA-ES on many problems. Fig. 2 depicts the comparison between TSEA and eight state-of-the-art EAs. The superior capacity in universality of SaDE compared the other DE variants has been experimentally verified in [14]. It is observed that SaDE significantly outperform jDE, MUEDA and the other PSOs. Among all the algorithms, only IPOP-CMAES and Restart-L-CMAES use the restart strategy, which can highly improve their performance. However, when the problems contain too many local optima, it is still too hard to locate the initial individuals to an area near the global optimum for them. Therefore, they just can provide a comparable overall result compared with SaDE without restart strategy. It is interesting to see that TSEA has significantly better convergence speed and universality in Fig. 1. For almost 30% problems, TSEA provides the fastest optimization speed. Furthermore, when its empirical cumulative distribution curve reaches the top, the normalized SP value is still small. In Fig. 3, the comparison of optimization curves of algorithms without restart strategy on four representative problems again confirms
Evaluation of Two-Stage Ensemble Evolutionary Algorithm Function 1
6
10
10
Function 4
2
SLPSO
SLPSO CLPSO
CLPSO
5
10
FDR-PSO 4
10
wFIPS-PSO
10
FDR-PSO
1
wFIPS-PSO SaDE
SaDE 3
TSEA
2
f(x)-f(x*)
f(x)-f(x*)
jDE
jDE
10
545
10
1
10
10
10
0
TSEA
−1
0
10
−1
10
10
−2
−2
10
−3
10
10
0
2
4
6
8
FES
10
12
14
10
16
Function 5
12
−3
0
0.5
1
1.5
FES
4
x 10
10
2
2.5
3 5
x 10
Function 8
4
SLPSO 10
10
CLPSO
10
10
FDR-PSO
3
wFIPS-PSO
8
SaDE
10
2
10
10
6
TSEA
f(x)-f(x*)
f(x)-f(x*)
jDE 10
4
10
10
0
SLPSO CLPSO
2
10 10
1
−1
FDR-PSO wFIPS-PSO
0
10
SaDE
−2
jDE
−2
10
0
0.5
1
1.5
FES
2
2.5
3
10
TSEA
−3
0
0.5
5
x 10
1
FES
1.5
2 5
x 10
Fig. 3. Optimization curves of function optimization with 30 D. (Sphere, Schwefel 2.21, Rochenbrock and Rastrigin).
this viewpoint. Therefore, the advantages of the TSEA compared with effective EAs are definitely verified. 4.2 Experiment Comparison with State-of-the-Art MAs To demonstrate the advantages of TSMA over the other MAs, we compare TSMA with three MA versions from CEC05 function optimization competition and another recently proposed MA for general problems: – SaDE-L: self-adaptive differential evolution with local search DFP [23]; – DMS-L-PSO: dynamic multi-swarm particle swarm optimizer with local search [25]; – BLX-MA: real-coded memetic algorithm with adaptive local-search probability and local search length [26]. – APrMA: adaptive probabilistic memetic algorithm [8]; In general, they have different strengthes. APrMA is specially proposed for general problems, and has shown distinct progress compared with diverse MAs. In this experiment, a run is considered to be successful if at least one solution was discovered during its course whose fitness value is not worse than (f it(x∗ ) + 1e − 6) for the functions 1 to 5 and (f it(x∗ ) + 1e − 2) for the other functions. The overall performance on the first 16 problems in empirical accumulative distribution of normalized SP is described in Fig. 4.
546
Y. Wang et al.
Overall performance on 10D CEC05 Problems 1
Empirical cumulative distributions
0.9 0.8 0.7 0.6 0.5 0.4 SaDE-L 0.3
DMS-L-PSO BLX-MA
0.2
APrMF TSEA
0.1 0 0 10
10
1
FES/FESbest
10
2
10
3
Fig. 4. Empirical distribution of normalized success performance on CEC05 function optimization tasks
From Fig. 4, we can observe that TSEA is definitely the best, because of the higher optimization speed and the higher number of solved problems. For the other algorithms, the performance of APrMA, SaDE-L and DMS-L-PSO is similar and cannot solve no more than 80% of the problems that can be solved by TSEA.
5 Conclusion In the previous research, the idea of two-stage search has shown promising performance on specific engineering applications. This paper extends its application to general numerical optimization. The experimental results definitely verify the superior performance of TSEA over its sub-optimizers, state-of-the-art EAs and MAs. In the recent future, we expect to apply it to solve more engineering optimization problems.
Acknowledgment The authors would like to thank Prof. P. N. Suganthan, Mr. Nikolaus Hansen and Prof. Y. S. Ong for providing the codes of their research group. This work was partially supported by the National Natural Science Foundation of China (No. 61071024, U0835002), the Chinese Academy of Science (CAS) Special Grant for Postgraduate Research, Innovation and Practice, and Graduate Innovation Fund of University of Science and Technology of China, the USTC Innovation Fund for Young Researchers.
Evaluation of Two-Stage Ensemble Evolutionary Algorithm
547
References 1. Yao, X., Liu, Y., Lin, G.: Evolutionary programming made faster. IEEE Trans. Evol. Comput. 3(2), 82–102 (1999) 2. Wang, Y., Li, B., Weise, T.: Estimation of distribution and differential evolution cooperation for large scale economic load dispatch optimization of power systems. Information Sciences 180, 2405–2420 (2010) 3. Wang, Y., Li, B., Chen, Y.B.: Digital IIR filter design using multi-objective optimization evolutionary algorithm. Appl. Soft Comput. J. (2010), doi:10.1016/j.asoc, 05.034 4. Wang, Y., Li, B., Weise, T., Wang, J., Yuan, B., Tian, Q.: Self-Adaptive Learning based Particle Swarm Optimization. Information Sciences (accepted in press) 5. Wang, Y., Li, B.: Two-stage based Ensemble Optimization for Large-Scale Global Optimization. In: Proc. the IEEE Congress on Evolutionary Computation (CEC 2010), Barcelona, Spain, pp. 4488–4495 (July 2010) 6. Wang, Y., Li, B.: A Self-adaptive Mixed Distribution Based Uni-variate Estimation of Distribution Algorithm for Large Scale Global Optimization. In: Chiong, R. (ed.) Nature-Inspired Algorithms for Optimization, Hardcover. Studies in Computational Intelligence, vol. 193, pp. 171–198. Springer, Heidelberg ISBN: 978-3-642-00266-3 7. Ong, Y.S., Keane, A.J.: Meta-Lamarckian Learning in Memetic Algorithms. IEEE Trans. Evol. Comput. 8(2), 99–110 (2004) 8. Nguyen, Q.H., Ong, Y.-S., Lim, M.H.: A Probabilistic Memetic Framework. IEEE Trans. Evol. Comput. 13(3), 604–623 (2009) 9. Ong, Y.S., Lim, M.H., Chen, X.S.: Research Frontier: Memetic Computation - Past, Present & Future. IEEE Computational Intelligence Magazine 5(2), 24–36 (2010) 10. Sun, J., Zhang, Q.F., Tsang, E.: DE/EDA: A new evolutionary algorithm for global optimization. Information Sciences 169, 249–262 (2005) 11. Vrugt, J.A., Robinson, B.A., Hyman, J.M.: Self-Adaptive Multimethod Search for Global Optimization in Real-Parameter Spaces. IEEE Trans. Evol. Comput. 13(2), 243–259 (2009) 12. Pe˜na, J.M., Robles, V., Larra˜naga, P., Herves, V., Rosales, F., P´erez, M.S.: GA-EDA: Hybrid evolutionary algorithm using genetic and estimation of distribution algorithms. In: Orchard, B., Yang, C., Ali, M. (eds.) IEA/AIE 2004. LNCS (LNAI), vol. 3029, pp. 361–371. Springer, Heidelberg (2004) 13. Pe˜na, J.M., Robles, V., Larra˜naga, P., Herves, V., Rosales, F., P´erez, M.S.: GA-EDA: Hybrid evolutionary algorithm using genetic and estimation of distribution algorithms. In: Orchard, B., Yang, C., Ali, M. (eds.) IEA/AIE 2004. LNCS (LNAI), vol. 3029, pp. 361–371. Springer, Heidelberg (2004) 14. Qin, A.K., Huang, V.L., Suganthan, P.N.: Differential Evolution Algorithm With Strategy Adaptation for Global Numerical Optimization. IEEE Trans. Evol. Comput. 13(2), 398–417 (2009) 15. Hansen, Ostermeier: Completely Derandomized Self-Adaptation in Evolution Strategies. Evolutionary Computation 9(2), 159–195 (2001) 16. Powell, M.J.D.: An efficient method for finding the minimum of a function of several variables without calculating derivatives. Computer Journal 7(4), 303–307 (1964) 17. Auger, A., Hansen, N.: Performance Evaluation of an Advanced Local Search Evolutionary Algorithm. In: Proc. IEEE Congress on Evolutionary Computation, pp. 1777–1784 (2005) 18. Auger, A., Hansen, N.: A restart CMA evolution strategy with increasing population size. In: Proc. IEEE Congress on Evolutionary Computation, pp. 1769–1776 (2005) 19. Brest, J., Greiner, S., Boskovic, B., Mernik, M., Zumer, V.: Self-Adapting Control Parameters in Differential Evolution: A Comparative Study on Numerical Benchmark Problems. IEEE Trans. Evol. Comput. 10(6), 646–657 (2006)
548
Y. Wang et al.
20. Liang, J.J., Qin, A.K., Suganthan, P.N., Baskar, S.: Comprehensive Learning Particle Swarm Optimizer for Global Optimization of Multimodal Functions. IEEE Trans. Evol. Comput. 10(3), 281–295 (2006) 21. Mendes, R., Kennedy, J., Neves, J.: The fully informed particle swarm: Simpler, maybe better. IEEE Trans. Evol. Comput. 8(3), 204–210 (2004) 22. Peram, T., Veeramachaneni, K., Mohan, C.K.: Fitness-distance-ratio based particle swarm optimization. In: Proc. Swarm Intelligence Symp., pp. 174–181 (2003) 23. Qin, A.K., Suganthan, P.N.: Self-adaptive Differential Evolution Algorithm for Numerical Optimization. In: Proc. IEEE Congress on Evolutionary Computation (CEC), pp. 1785–1791 (2005) 24. R¨okk¨onen, J., Kukkonen, S., Price, K.V.: Real-parameter optimization with differential evolution. In: Proc. IEEE Congress on Evolutionary Computation (CEC), pp. 506– 513 (2005) 25. Liang, J.J., Suganthan, P.N.: Dynamic Multi-Swarm Particle Swarm Optimizer with Local Search. In: Proc. IEEE Congress on Evolutionary Computation, pp. 522–528 (2005) 26. Molina, D., Herrera, F., Lozano, M.: Adaptive Local Search Parameters for Real-Coded Memetic Algorithms. In: Proc. IEEE Congress on Evolutionary Computation, pp. 888–895 (2005)
A Novel Genetic Programming Algorithm for Designing Morphological Image Analysis Method Jun Wang and Ying Tan Key Laboratory of Machine Perception (Ministry of Education), Peking University Department of Machine Intelligence, School of EECS, Peking University, P.R. China [email protected] [email protected]
Abstract. In this paper, we propose an applicable genetic programming approach to solve the problems of binary image analysis and gray scale image enhancement. Given a section of original image and the corresponding goal image, the proposed algorithm evolves for generations and produces a mathematic morphological operation sequence, and the result performed by which is close to the goal. When the operation sequence is applied to the whole image, the objective of image analysis is achieved. In this sequence, only basic morphological operations— erosion and dilation, and logical operations are used. The well-defined chromosome structure leads brings about more complex morphological operations can be composed in a short sequence. Because of a reasonable evolution strategy, the evolution effectiveness of this algorithm is guaranteed. Tested by the binary image features analysis, this algorithm runs faster and is more accurate and intelligible than previous works. In addition, when this algorithm is applied to infrared finger vein gray scale images to enhance the region of interest, more accurate features are extracted and the accuracy of discrimination is promoted.
1 Introduction Digital images processing on computers have been applied to many fields like pattern recognition, robotic vision, biomedical image analysis, and biometrics, etc [10][12][16]. Recent years, a variety of evolutionary methods are used to solve the problem of discovering algorithm for image processing [2][7][11][13]. Most of them concentrate on that the image analysis problems can be re-framed as filtering problems, and use genetic algorithm (GA) and genetic programming (GP) to produce a set of standard filters [7][11][12]. However, all these filter-based GA(GP) methods need complicated formulations which require a large amount of analysis and computation [11]. Mathematic morphological is a powerful non-linear tool for extracting image components, which is useful in the representation and description of region shape, such as boundaries, skeletons, and the convex hulls [5]. Morphological operators aim at
This work is supported by National Natural Science Foundation of China (NSFC), under grant number 60875080 and 60673020, and partly supported by the National High Technology Research and Development Program of China (863 Program), with grant number 2007AA01Z453. Corresponding author. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 549–558, 2011. c Springer-Verlag Berlin Heidelberg 2011
550
J. Wang and Y. Tan
extracting relevant structures of the image considered as a set through its sub graph representation, which is achieved by probing the image with another set of the known shapes called structural element (SE) [15]. Searching suitable morphological operation sequence and corresponding SEs in a big searching space is suited to the genetic programming [13]. Some researchers use an evolutionary morphological approach to analyze image. Yoda et al. explore the possibility of obtaining mathematic morphological algorithm for binary images by means of GA [18]. Harvey et al. describe a technique by GA for the optimization of multidimensional gray scale soft morphological filters [6]. They use this technique in the spatiotemporal domain for applications in automatic film restoration. Quintana et al. propose an approach of morphological binary image analysis based on GP [13][14]. Their algorithm is constructed by logic operators and the basic morphological operators — erosion and dilation — with a group of manually chosen SEs. This algorithm evolves to generate morphological operation sequence which converts a binary image into the target image contained just a particular feature of interest. Additional, they prove that it is possible to evolve good morphological methods by using GP. Ballerini et al. propose a GP method without a goal image and the morphological operations are not used for noise reduction or segmentation, but for image classification [1]. In this paper, we propose a applicable genetic programming algorithm to automatic generate methods for binary image analysis and gray scale image enhancement. Given a section of original image and the corresponding goal image, this algorithm automatically produces a mathematic morphological operation sequence, and the result by which is close to the goal. Afterwards, when the operation sequence is applied to the whole image, the objective of image analysis is achieved. This paper is organized as follows. Section 2 presents a novel genetic programming algorithm with mathematic morphological operations. The experimental results of binary images analysis and gray scale image enhancement are reported in Section 3. Finally, Section 4 gives the concluding remarks of this paper.
2 Proposed GP Algorithm 2.1 Definition of GP Algorithm The genetic programming provides an approach to the problem of finding a computer program to solve a problem [9]. In our problem, by giving an original image and a learning target— goal image, the GP algorithm automatically produces a sequence of operations, which is applied to the original image and the obtained result is very close to the goal. Definition of Chromosome. A chromosome in this algorithm is an individual, i.e., a method, which is composed by a sequence of genes, illustrated in Fig 1. We use gene to express the primitive operation set. One single gene is a primitive unit of morphological operation accompanied with logical operations. The number of genes in each chromosome may be different while each gene has a fixed length. And two processing sequences are kept in one chromosome, which are connected by logical operations.
A Novel Genetic Programming Algorithm
551
Fig. 1. Chromosome definition
2.2 Definition of Gene The gene structure is shown in Table 1. Each gene has 16 bits and only 14 bits have real meanings since the first two bits are used for alignment. All these bits are classified into two parts: one part expresses logical operation and the control flow, and the other part expresses morphological operation. Table 1. The meaning of each bit in a gene Index Meaning 1 null Unused 2 null 3 switch 4 storage flag logical and control 5 direct/difference flag 6 logical operation flag 7-8 logical operator 9 erosion/dilation flag 10-11 SEs size morphological operation 12 SE class 13-16 SEs index
Direct/Difference flag. The direct/difference flag means which one will be chosen as current output, the morphological operation result directly or the arithmetic difference between the result and the input. This operation brought forward will improve the morphological expression of this algorithm. In the morphological meanings, the arithmetic difference devotes to morphological gradient [15]. Storage flag. The storage operation was firstly introduced in [14] represents whether the result of this gene should be stored or not. When the finite automaton parses a chromosome, the input of current gene is the previous one’s result and the output is the input of next one. Therefore, the intermediate result is abandoned. The storage operation means whether memorizes the intermediate result, which can be used in subsequent logical operations. Logical operation. The logical operator flag represents which logical operation will be applied to current gene. Four logical operations are defined in this algorithm, AND, OR, NOT and XOR. Some logical operations need two operands: one operand is current morphological operation result, and the other one is the stored intermediate result mentioned above. When being applied on the binary images, the logical operations are bitwise. There are some changes when the logical operations are applied to gray scale images [15].
552
J. Wang and Y. Tan
Switch operation. In this paper, we bring forward a new operation— “switch”, which helps to keep two operation sequences in one chromosome. When the automaton parses a chromosome, there is a register named “backup”, which is initiated with the source image and changed by the switch flag. If the switch flag is true, the input of current gene is exchanged with the backup. Therefore, the backup is brought foreground to be processed in this section, and the current input is stored as the backup. The switch operation accompanied with storage operation can express two operation sequences in one chromosome. Actually, many morphological operations are hardly realized in one process [15]. Because of two operation processes contained in one chromosome, this algorithm can express most of the morphological operations with basic erosion and dilation [15]. Pattern of structural elements. Erosion and dilation are basic morphological operations [5][15], which depend on the pattern of SE. The pattern space of SE is exponentially increased along with its size . For example, a SE whose size is n × n has 2n×n type of patterns. Therefore, we define the patterns manually. We use the concept of regular and irregular SEs same as [13], but with some differences: regular(irregular) SEs are defined which are all symmetrical(asymmetrical, vice versa). Three sizes of SEs are used in our algorithm, 3 × 3, 5 × 5 and 7 × 7. Each size has two styles, regular and irregular, and each style has 16 patterns. Patterns of 3 × 3 SEs are shown in Fig 2.
Fig. 2. Patterns of 3 × 3 regular & irregular structural elements
Fitness function. The objective fitness function F(0 F 1) is known as similarity as the correlation coefficient between a processed image and the goal [18], (f · g) F = (g · g) × (f · f ) where f and g are two binary images of size M × N and (f · g) =
M N 1 f (i, j) · g(i, j), M × N i=1 j=1
image f is the processed result, and image g is the goal. Since in a binary image the white pixels represent objects, this is a reasonable choice of fitness function. The optimum is F = 1 when all the pixels match. The worst case is F = 0 when none of the pixels match [18].
A Novel Genetic Programming Algorithm
553
2.3 Evolution Strategy We define a structural evolution strategy in this algorithm. This algorithm initiates 1024 chromosomes at the beginning which are all single genes. The chromosome will grow in evolution and its length is limited to no more than 20 genes. The selection rate is 0.3, the mutation rate is 0.3, the crossover rate is 0.4, max generations is 300. Structural mutation. Each gene has 14 valid bits and the random variant range is 214 = 16348. Therefore, it is hard to evolve effectively if the gene are mutated randomly. We bring forward a structural mutation strategy. All these 14 bits in one gene are divided into three parts according to their function: flow control, logical operation and morphological operation. These three parts are mutated separately, which makes the mutation position well–distributed.
Fig. 3. Crossover
Structural crossover. The genetic operation of crossover(sexual recombination) allows new individuals to be created [9]. We use a structural crossover in this algorithm. The basic unit of crossover is gene and crossover in the middle of a gene is not allowed. The goal of the structural crossover is to exchange a bunch of genes of two participated chromosomes. The crossover generates new individuals which may have different lengths from their parents. There are two random variants in each chromosome which participate crossover, the start position and the end position (Fig. 3). And these variants result in three different meanings: – If the amount of one of the switched parts is zero, this means that a section of the counterpart should be inserted in it. – If both amounts of switched parts are not zero, this means to switch sections of two chromosomes, as shown in Fig 3(b). – If the insert position is the beginning or the end of a chromosome, this means to extend this chromosome.
3 Experimental Results We conduct three experiments to verify our algorithm. First, we apply this algorithm to two binary image analysis experiments: artificial objects extraction and OCR music sheet analysis. These tests have been used by former researchers and we compare the effectiveness of our algorithm with other other works. Next, we apply this algorithm to gray scale image enhancement to check the effects.
554
J. Wang and Y. Tan
3.1 Experiment on Artificial Binary Images We use this algorithm to obtain valid objects in an artificial image composed by four features: squares, disks, rings and stars, same as Quintana et al. in [13]. Each target image has one type of the four features with randomly distributed position with size of 640 × 480. All four target images are overlaid to obtain the source image(Fig 4). The features randomly distributed in the source image may overlap, which makes their detection more difficult.
Fig. 4. Source image of artificial dataset
Training course. We select a small area from the source image which contains all four features as the source of the training set. The same areas on the target images are also selected as target images in the training set, as shown in Fig 5.
Fig. 5. Selected area of source and target images. a: source image, b c d e: target images
Testing course. The methods of four features detection are obtained in the training course by our algorithm. We apply them on the whole image, and four features are extracted separately. Executing these procedures for 10 times, we get the mean performance of our algorithm (Table. 2). The criterion is the fitness values of processed results and the target images. Except the extraction of rings, our algorithm is better than Quintana’s on squares, disks and stars. Furthermore, Quintana et al. use a Linux cluster with one master node (CPU dual Intel Xeon 2 GHz, 2 GB Memory) and 22 client nodes (CPU Dual Athlon MP 1900+, 1.6 GHz, 1 GB Memory) in their experiments [13]. Our algorithm performs on a PC (CPU Intel Core Duo T9400 2.53 GHz, 4 GB Memory). Even on the most time consuming training of star, our algorithm get the result in a few minutes. This indicates our algorithm is more effective and fewer computational load.
A Novel Genetic Programming Algorithm
555
Table 2. Performance comparison of our GP algorithm with Quintana et al.’s Feature Our algorithm Quintana et al.’s Disks 0.9822 0.868 Rings 0.8583 0.906 Squares 0.9900 0.870 Stars 0.9590 0.922
3.2 Experiment on OCR Music Sheet We apply our GP algorithm to another type of binary image — the OCR music sheet, which was used by Yoda et al. in [18] to explore the automatic acquisition of morphological procedures by GA. We capture this music sheet from the original paper. The object of this test is to extract the four features, heads, hooks, staff lines and stems from the music sheet. Similarly, a small typical area is selected from the original image as the source image which contains all the four features. Four target images are obtained by manually calibrating, and each of which only contains one feature of four types. In the training cource of heads detection, Yoda et al. get the final fitness value of 0.963 [18], and our algorithm gets 0.9662— more accurate. The best fitness values of heads, staffs lines and stems all converge fast and stable. The best fitness value of hooks goes through a longer period, and converges to 0.9780. When we apply the methods obtained to whole music sheet, all four features are detected accurately. Experimental results also support that the efficiency and effectiveness of our algorithm are all better than Yoda et al.’s. 3.3 Experiment on Gray Scale Image In this process, we apply this algorithm to the enhancement of gray scale image. There are more 2000 low quality finger vein images collected by an infrared CCD device, which contains 400 fingers, and each finger has 4 to 6 images. We want to use this algorithm to enhance these images and expect to extract more accurate vein features. We randomly choose four images from data set as learning samples and manually calibrate the corresponding feature images as learning goals, and all these images compose four pair of “training set”. It is difficult to evaluate the effects of gray scale image enhancement. Because of the purpose of image enhancement is to get more accurate finger vein features, we use an threshold and thinning method to get the skeleton feature results of enhanced images which will be used in the evaluation. The GP algorithm runs for four times with these training set, each time with a pair of source and target, and produces four methods. We get four operation sequences in the training course, namely morphological image analysis method(MAIM 1 ∼ 4 , corresponding to four pairs of training set). Fig. 6 illustrates the four pairs of training set and the training results, images in column a are original images, in b are corresponding learning goals, in c are the learning results followed by threshold and thinning, and in d are the results by using the contrastive method which is processed by mean filtering with threshold and thinning. From the comparison, the generated methods enhance the images and more accurate features are extracted.
556
J. Wang and Y. Tan
Fig. 6. Visual effect comparison for different learning pairs: (a) four original learning samples; (b) corresponding learning goals; (c) learning results of MAIM 1 ∼ 4 with threshold and thinning;(d) results obtained by mean filter with threshold and thinning
After, the obtained methods are applied to the whole data set and we examine the effects of the enhancement and verify the features obtained from enhanced images in the application of identity authentication. We test this process with combination of different number and order of MAIMes. We use the false acceptance rate (FAR) to evaluate our proposed algorithm, which is the most commonly used measure of identity authentication, the fraction of access attempts by an un–enrolled individual that are nevertheless deemed a match [17]. The classifier is Nearest Neighbor [4] and the experimental strategy is Leave–One–Out. We use the Modified Hausdorff Distance(MHD) [3][8] to measure the similarity of two images. The results are shown in Fig. 7. Bar 1 is FAR result of the contrastive method and the others are FARs of different combined MAIMes. 0.1 0.09 0.08
FAR(%)
0.07 0.06 0.05 0.04 0.03 0.02 0.01 0
1
2
3
4 Test Groups
5
6
7
Fig. 7. Comparison of false acceptance rate for test groups and the control group. Bar 1, FAR result of control group. Bar 2, FAR result of MAIM-1,2,3,4. Bar 3, FAR result of MAIM-4,3,2,1. Bar 4, FAR result of MAIM-1,2,3. Bar 5, FAR result of MAIM-1,3,4. Bar 6, FAR result of MAIM-1,2,4. Bar 7, FAR result of MAIM-4,2,1.
A Novel Genetic Programming Algorithm
557
Fig. 7 indicates that the enhancement methods produced by our algorithm all decrease the FARs. The most remarkable is the Bar 2 which FAR result of images are enhanced by MAIM-1,2,3,4(sequence-dependent) reduces the FAR by about 8%.
4 Conclusion For a long time, researchers explore GA and GP approach in searching automatically produce morphological image processing methods. But the heavy computational load of evolution prevents the application of this approach. In this paper, we propose an applicable genetic programming approach to solve the problems of binary image analysis and gray scale image enhancement. It has strong ability of generalization, and shows robustness in experiments.
References 1. Ballerini, L., Franz´en, L.: Genetic optimization of morphological filters with applications in breast cancer detection. In: Raidl, G.R., Cagnoni, S., Branke, J., Corne, D., Drechsler, R., Jin, Y., Johnson, C.G., Machado, P., Marchiori, E., Rothlauf, F., Smith, G.D., Squillero, G. (eds.) EvoWorkshops 2004. LNCS, vol. 3005, pp. 250–259. Springer, Heidelberg (2004) 2. Daida, J.M., Hommes, J.D., Bersano-Begey, T.F., Ross, S.J., Vesecky, J.F.: Algorithm discovery using the genetic programming paradigm: extracting low-contrast curvilinear features from sar images of arctic ice, pp. 417–442 (1996) 3. Dubuisson, M.-P., Jain, A.: A modified hausdorff distance for object matching. In: Proceedings of the 12th IAPR International Conference on Pattern Recognition, vol. 1, pp. 566–568 (October 1994) 4. Duda, R.O., Hart, P.E., Stork, D.G.: Pattern Classification, 2nd edn. Wiley-Interscience, Hoboken (2000) 5. Gonzalez, R.C., Woods, R.E.: Digital Image Processing. Addison-Wesley Longman Publishing Co., Inc., Boston (2001) 6. Harvey, N., Marshall, S.: The use of genetic algorithms in morphological filter design. Signal Processing: Image Communication 8(17), 55–71 (1996) 7. Hong, J.-H., Cho, S.-B., Cho, U.-K.: A novel evolutionary approach to image enhancement filter design: Method and applications. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics 39(6), 1446–1457 (2009) 8. Huttenlocher, D., Klanderman, G., Rucklidge, W.: Comparing images using the hausdorff distance. IEEE Transactions on Pattern Analysis and Machine Intelligence 15(9), 850–863 (1993) 9. Koza, J.R.: Genetic programming: on the programming of computers by means of natural selection. MIT Press, Cambridge (1992) 10. Langdon, W.B., Poli, R., McPhee, N.F., Koza, J.R.: Genetic programming: An introduction and tutorial, with a survey of techniques and applications. In: Fulcher, J., Jain, L.C. (eds.) Computational Intelligence: A Compendium. Studies in Computational Intelligence, vol. 115, pp. 927–1028. Springer, Heidelberg (2008) 11. Munteanu, C., Rosa, A.: Gray-scale image enhancement as an automatic process driven by evolution. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics 34(2), 1292–1298 (2004) 12. Poli, R.: Genetic programming for image analysis. In: GECCO 1996: Proceedings of the First Annual Conference on Genetic Programming, pp. 363–368. MIT Press, Cambridge (1996)
558
J. Wang and Y. Tan
13. Quintana, M.I., Poli, R., Claridge, E.: On two approaches to image processing algorithm design for binary images using GP. In: Raidl, G.R., Cagnoni, S., Cardalda, J.J.R., Corne, D.W., Gottlieb, J., Guillot, A., Hart, E., Johnson, C.G., Marchiori, E., Meyer, J.-A., Middendorf, M. (eds.) EvoWorkshops 2003. LNCS, vol. 2611, pp. 422–431. Springer, Heidelberg (2003) 14. Quintana, M.I., Poli, R., Claridge, E.: Morphological algorithm design for binary images using genetic programming. Genetic Programming and Evolvable Machines 7(1), 81–102 (2006) 15. Soille, P.: Morphological Image Analysis: Principles and Applications. Springer-Verlag New York, Inc., Secaucus (2003) 16. Tackett, W.A.: Genetic programming for feature discovery and image discrimination. In: Proceedings of the 5th International Conference on Genetic Algorithms, pp. 303–311. Morgan Kaufmann Publishers Inc., San Francisco (1993) 17. Weaver, A.: Biometric authentication. Computer 39(2), 96–97 (2006) 18. Yoda, I., Yamamoto, K., Yamada, H.: Automatic acquisition of hierarchical mathematical morphology procedures by genetic algorithms. Image Vision Comput. 17(10), 749–760 (1999)
Optimizing Single-Source Capacitated FLP in Fuzzy Decision Systems Liwei Zhang, Yankui Liu , and Xiaoqing Wang College of Mathematics & Computer Science, Hebei University Baoding 071002, Hebei, China [email protected], yliu@hbu,edu.cn, [email protected]
Abstract. This work develops a new fuzzy version of single-source capacitated facility location problem (FLP), in which a set of capacitated facilities is selected to provide service to demand points with possibility distributions at the minimal total cost. Since the proposed FLP includes credibility service level constraints and 0–1 decision variables, its solution method is a challenge issue for research, and usually relies on metaheuristics and approximation approach. However, for frequently used trapezoidal, Gamma and Normal fuzzy demands, the FLPs are equivalent to deterministic 0-1 programming problems. As a consequence, the equivalent 0-1 programming problems can be solved by general purpose software or conventional optimization algorithms. At the end of this paper, we demonstrate the developed modeling idea via numerical experiments. Keywords: Capacitated facility location problem, Fuzzy programming, Credibility service level, Integer programming.
1
Introduction
The single-source capacitated facility location problem (FLP) studies an FLP and a generalized assignment problem between a set of demand points and a set of capacitated facilities via some decision criterion. In the literature, most research focused on deterministic single-source capacitated FLPs, which are also related to uncapacitated FLPs. The interested reader may refer to the review on FLPs [1]. As for the successful solution approaches to deterministic singlesource capacitated FLPs, Ahujia et al. [2] proposed a multi-exchange search with heuristic on specially designed dynamic single-source capacitated FLP networks; Holmberg [3] designed an exact branch-and-bound method with a Lagrangian heuristic to solve single-source capacitated FLP; Tragantalerngsak [4] developed a Lagrangian relaxation-based branch-and-bound algorithm for twoechelon FLP; Cortinhal and Captivo [5] applied a tabu search with classical shift and swap moves for single-source capacitated FLP, and Korupolu, Plaxton and Rajaraman [6] suggested a simple local search heuristic for the capacitated FLP in which the service costs obey triangular inequality.
Corresponding author.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 559–567, 2011. c Springer-Verlag Berlin Heidelberg 2011
560
L. Zhang, Y. Liu, and X. Wang
Recently, some researchers have paid their attention to stochastic singlesource FLPs. For example, Zhou and Liu [7] presented expected value model, chance-constrained programming and dependent-chance programming for capacitated FLP with stochastic demands, and integrated network simplex algorithm, stochastic simulation and genetic algorithm for solving these stochastic models; Lin [8] considered a stochastic single-source capacitated FLP, and designed a hybrid heuristic of Lagrangean relaxation within a branch-and-bound framework to find upper and lower bounds for this problem. With the development of fuzzy set and uncertainty theories [9,10,11,12,13], some researchers realized the importance of fuzzy uncertainty in decision systems, and applied fuzzy theory to FLPs. Zhou and Liu [14] proposed fuzzy expected cost minimization model, fuzzy α-cost minimization model, and credibility maximization model according to different decision criteria, and designed some hybrid intelligent algorithms for solving these models; Wen and Iwamura [15] considered the FLP with uncertainties, presented an α-cost model under the Hurwicz criterion with fuzzy demands, and integrated the simplex algorithm, fuzzy simulation and genetic algorithm to solve this model. As for two-stage fuzzy FLPs, Liu and Zhu [16], Liu and Tian [17], Shen and Liu [18] developed three classes of two-stage models based on minimum-risk and value-at-risk decision criteria, and discussed their approximation methods as well as the convergence of the methods about optimal solutions and optimal objective values, and Liu [19] presented a new class of two-stage fuzzy random minimum risk problem based on mean chance theory [12], and applied the developed optimization method to the capacitated FLP with fuzzy random demands. In this paper, we consider a new fuzzy version of single-source capacitated FLP, in which a set of capacitated facilities is selected to provide service to demand points with possibility distributions at the minimal total cost. The plan of this paper is as follows. In Section 2, we formulate a new fuzzy single-source capacitated FLP with service level requirements. In Section 3, we discuss the equivalent programming problems when demands are characterized by trapezoidal, Gamma and Normal fuzzy variables. In Section 4, we present one numerical example to illustrate the developed modeling idea and effectiveness of the proposed methods. Section 5 concludes the paper.
2
Problem Formulation
In this section, we will present a new fuzzy single-source capacitated FLP with service level requirements. The model attempts to minimize the total system costs, including the fixed cost of facilities and the transportation cost. To model the problem, we adopt the following indices and parameters. Indices: I is the index set of facilities, i = 1, 2, . . . , m, and J is the index set of customers, j = 1, 2, . . . , n.
Optimizing Single-Source Capacitated FLP
561
1, if the facility i is opened 0, otherwise,
(1)
Decision variables: yi =
and Xij =
1, if the customer j is served by facility i 0, otherwise.
(2)
Parameters: fi is the fixed cost of facility i; cij is the transportation cost from facility i to customer j; ξj is the fuzzy demand for customer j; Qi is the maximum capacity of facility i, and αi is the prescribed credibility service level of facility i. Using the notation above, we present a new fuzzy single-source capacitated FLP, which is formally built as follows: ⎧ m n min Z = m ⎪ i=1 fi yi + i=1 j=1 cij Xij ⎪ ⎪ m ⎪ s.t. X = 1, j = 1, 2, . . . ,n ⎪ ij i=1 ⎨ Xij≤ yi , i = 1, 2, . . . , m; j = 1, 2, . . . , n (3) n ⎪ ⎪ ξj Xij ≤ Qi yi ≥ αi , i = 1, 2, . . . , m Cr ⎪ j=1 ⎪ ⎪ ⎩ yi , Xij = 0, 1, i = 1, 2, . . . , m; j = 1, 2, . . . , n, where Cr is the credibility measure defined in [20]. The objective of problem m (3) includes the fixed cost i=1 fi yi that facilities are opened, and the transm n portation cost i=1 j=1 cij Xij from opened facilities to customers. As a consequence, the objective is to minimize the following total cost: m m n (4) i=1 fi yi + i=1 j=1 cij Xij . The constraints of problem (3) consist of the following several items: I: The constraints
m i=1
Xij = 1, j = 1, 2, . . . , m
(5)
ensure that each customer is served by a single facility. II: The constraints Xij ≤ yi , i = 1, 2, . . . , m; j = 1, 2, . . . , n
(6)
indicate a facility must be set up if a demand node is assigned. III: The quantity Qi in (3) is the maximum service ability of facility i, and αi (0 < αi ≤ 1) is a prescribed credibility service level. The credibility service level to the ith customer is n ξ X ≤ Q y (7) Cr ≥ αi , i = 1, 2, . . . , m. j ij i i j=1 The constraints impose the credibility of fuzzy event that the demands of all customers are less than the maximal service ability at each facility i is more than the predetermined service level requirement.
562
3
L. Zhang, Y. Liu, and X. Wang
Handling Credibility Service Level Constraints
Problem (3) is a 0-1 programming subject to credibility constraints. To solve problem (3) effectively, this section will discuss how to turn the credibility service level constraints into their equivalent deterministic forms. First, we consider the case of trapezoidal fuzzy demand. Let ξj be mutually independent trapezoidal fuzzy variables (rj1 , rj2 , rj3 , rj4 ). According to the independence of the fuzzy variables [21], one has
n n n n n (8) j=1 ξj Xij = j=1 rj1 Xij , j=1 rj2 Xij , j=1 rj3 Xij , j=1 rj4 Xij , which is also a trapezoidal fuzzy variable. In this case, the credibility service n level constraint Cr{ j=1 ξj Xij ≤ Qi yi } can be transformed into an equivalent deterministic constraint, which is stated in the following theorem. Theorem 1. For any given αi ∈ (0, 1], we have: (i) When αi ≥ 0.5, the constraint Cr{ nj=1 ξj Xij ≤ Qi yi } ≥ αi if and only if (2 − 2αi )
n
rj3 Xij + (2αi − 1)
j=1
n
rj4 Xij − Qi yi ≤ 0.
(9)
j=1
(ii) When αi < 0.5, the constraint Cr{ (1 − 2αi )
n
n
j=1 ξj Xij
rj1 Xij + 2αi
j=1
n
≤ Qi yi } ≥ αi if and only if
rj2 Xij − Qi yi ≤ 0.
(10)
j=1
Proof. On the basis of the possibility distribution of fuzzy variable and the definition of credibility function Cr{ξ ≤ x}, one has n Cr{ j=1 ξj Xij ≤ Qi yi } n ⎧ 1, if j=1 rj4 Xij ⎪ ⎪ n ⎪ n −Qi yi ⎪ j=1 rj4 Xij ⎪ ⎪ ⎨ 1 − 2( nj=1 rj4 Xij − nj=1 rj3 Xij ) , if j=1 rj3 Xij if nj=1 rj2 Xij = 12 , ⎪ n n ⎪ −Qi yi j=1 rj1 Xij ⎪ n ⎪ , if j=1 rj1 Xij ⎪ 2( n ⎪ j=1 rj1 Xij − j=1 rj2 Xij ) ⎩ 0, otherwise.
≤ Qi y i ≤ Qi y i ≤ ≤ Qi y i ≤ ≤ Qi y i ≤
n
n
j=1 n
j=1 ξj Xij ,
rj4 Xij
j=1 rj3 Xij
n
j=1 rj2 Xij
Hence, if αi ≥ 0.5 for i = 1, 2, . . . , m, then Cr{ nj=1 ξj Xij ≤ Qi yi } ≥ αi is equivalent to n j=1 rj4 Xij − Qi yi 1− ≥ αi , n n 2( rj4 Xij − j=1 rj3 Xij ) i.e., (2 − 2αi )
n
j=1 rj3 Xij
j=1
+ (2αi − 1)
n
j=1 rj4 Xij
− Qi yi ≤ 0.
Optimizing Single-Source Capacitated FLP
563
On nthe other hand, when αi < 0.5 for i = 1, . . . , m, the service level constraint Cr{ j=1 ξj Xij ≤ Qi yi } ≥ αi is equivalent to n rj1 Xij − Qi yi n j=1 n ≥ αi , 2( j=1 rj1 Xij − j=1 rj2 Xij ) n n i.e., (1 − 2αi ) j=1 rj1 + 2αi j=1 rj2 Xij − Qi yi ≤ 0. The proof of the theorem is complete. In practical decision problem, the facilities with large capacities are always required to have high service levels. As a consequence, problem (3) can be converted into the following programming problem: ⎧ m m n min Z = i=1 fi yi + i=1 j=1 cij Xij ⎪ ⎪ ⎪ m ⎪ s.t. ⎪ i=1 Xij = 1, j = 1, 2, . . . , n ⎪ ⎨ Xij ≤ yi , i = 1, 2, . . . , m; j = 1, 2, ...,n (11) n n (2 − 2α ) r X + (2α − 1) ⎪ i j3 ij i j=1 j=1 rj4 Xij − Qi yi ≤ 0, ⎪ ⎪ ⎪ ⎪ i = 1, 2, . . . , m ⎪ ⎩ yi , Xij = 0, 1, i = 1, 2, . . . , m; j = 1, 2, . . . , n. We now consider the case of Gamma fuzzy demand. Let ξj ’s be Gamma fuzzy variables with parameters λj such that their possibility distributions are μξj (x) = (x/λj r))r exp(r − x/r), where x ≥ 0, λj ∈ R, and r is a fixed constant. When these Gamma fuzzy variables are mutually independent, their sums nj=1 ξj Xij n are also Gamma fuzzy variables with parameters j=1 λj Xij , i = 1, . . . , m. In this case, we have the following results about credibility service level constraints. Theorem 2. For any given αi ∈ (0, 1], we have: n (i) When αi ≥ 0.5, the constraint Cr{ j=1 ξj Xij ≤ Qi yi } ≥ αi if and only if ln 2(1 − αi ) − r ln Qi yi + r ln
n
λj Xij r + Qi yi /
j=2
(ii) When αi < 0.5, the constraint Cr{ ln 2αi − r ln Qi yi + r ln
n j=1
n
j=1 ξj Xij
n
λj Xij − r ≤ 0. (12)
j=1
≤ Qi yi } ≥ αi if and only if
λj Xij r + Qi yi /
n
λj Xij − r ≤ 0.
(13)
j=1
According to Theorem 2, if service level αi ≥ 0.5, then problem (3) can be turned into the following deterministic equivalent 0–1 programming problem: m m n ⎧ min Z = i=1 fi yi + i=1 j=1 cij Xij ⎪ ⎪ ⎪ m ⎪ s.t. ⎪ i=1 Xij = 1, j = 1, 2, . . . , n ⎪ ⎨ Xij ≤ yi , i = 1, 2, . . . , m; j = 2, . . . , n 1, (14) n ln 2(1 − α ) − r ln Q y + r ln ⎪ i i i j=2 λj Xij r ⎪ n ⎪ ⎪ +Qi yi / j=1 λj Xij − r ≤ 0, i = 1, 2, . . . , m ⎪ ⎪ ⎩ yi , Xij = 0, 1, i = 1, 2, . . . , m; j = 1, 2, . . . , n.
564
L. Zhang, Y. Liu, and X. Wang
Before ending this section, we discuss the case when Normal possibility distributions included in credibility constraints. Let ξj ’s be Normal fuzzy variables with possibility distributions μξj (x) = exp(−(x − aj )2 /σj2 ), aj ∈ R, σj > 0. Note that the sum of mutually Normal fuzzy variables is also a Normal independent n fuzzy variable. That is, j=1 ξj Xij is a Normal fuzzy variable with parameter n n ( j=1 aj Xij , j=1 σj Xij ), which leads to the following result: Theorem 3. For any given αi ∈ (0, 1], we have: n (i) When αi ≥ 0.5, the constraint Cr{ j=1 ξj Xij ≤ Qi yi } ≥ αi if and only if
n n 2 Qi yi − aj Xij − − σj ln 2(1 − αi ) ≥ 0. (15) j=1
n
j=1
j=1 ξj Xij ≤ Qi yi } ≥ αi if and only if
n n 2 Qi yi − aj Xij + − σj ln 2αi ≥ 0. (16)
(ii) When αi < 0.5, the constraint Cr{
j=1
j=1
Therefore, in the case when credibility service level αi ≥ 0.5, problem (3) can be turned into the following equivalent 0–1 programming problem: ⎧ m m n min Z = i=1 fi yi + i=1 j=1 cij Xij ⎪ ⎪ ⎪ m ⎪ ⎪ i=1 Xij = 1, j = 1, 2, . . . , n ⎨ s.t. Xij ≤ yi , i = 1, 2, . . . , m; j = 1, 2, . . . , n (17) n n ⎪ 2 ⎪ Q y − a X − − σ ln 2(1 − α ) ≥ 0, 1 ≤ i ≤ m ⎪ i i j ij i j=1 j=1 j ⎪ ⎪ ⎩ yi , Xij = 0, 1, i = 1, 2, . . . , m; j = 1, 2, . . . , n. So far, we have discussed the issue about handling credibility service level constraints. In the cases when the demands are mutually independent trapezoidal, Gamma and Normal fuzzy variables, problem (3) can be turned into its equivalent 0–1 programming problem (11), (14), and (17), respectively. Therefore, conventional optimization method like branch-and-bound, or general purpose software can be employed to solve the equivalent 0–1 programming problems (11), (14), and (17). In the next section, we will perform numerical experiments to demonstrate the developed modeling idea. For general problem (3), the demands included are not necessarily independent fuzzy variables, or they have general possibility distributions instead of the special cases discussed above. To handle the general cases, we may combine approximation method [22] and conventional optimization methods to solve problem (3).
4
Numerical Experiments
To illustrate the developed modeling idea and effectiveness of the proposed methods, we have performed a number of numerical experiments. For the sake of presentation, this section provides some of them via one numerical example about
Optimizing Single-Source Capacitated FLP
565
fuzzy single-source capacitated FLP with 10 facilities and 20 customers. The set of data in this problem is collected in Table 1 including the generalized credibility service level αi , the maximum capacities of facilities Qi , the fixed opened costs fi , and the demands of customers ξj ; while transportation costs from facility i to customer j are provided in Table 2. Table 1. The Set of Data in Numerical Experiments m×n i fi Qi αi j
ξj
10 × 20 1 6 10 14 80 89 0.85 0.85 1 6 11 16 (16,18,19,25) (19,23,26,29) (22,24,26,29) (20,22,26,29)
2 7 12 12 90 94 0.85 0.85 2 7 12 17 (12,13,23,29) (23,24,32,41) (16,21,32,40) (27,31,32,40)
3 8 12 16 95 92 0.85 0.85 3 8 13 18 (10,11,12,13) (17,20,24,34) (18,22,24,35) (17,22,24,35)
4 9 10 12 90 91 0.85 0.85 4 9 14 19 (18,20,23,25) (18,21,46,52) (28,32,46,49) (28,31,46,49)
5 10 14 15 92 96 0.85 0.85 5 10 15 20 (11,13,24,37) (12,24,39,41) (12,24,30,41) (12,24,27,47)
Table 2. Transportation Costs from Facility i to Customer j cij j i=1 2 3 4 5 6 7 8 9 10
=1 24 25 16 33 41 32 26 19 19 29
2 35 31 37 32 42 31 22 31 19 22
3 18 26 41 32 43 41 32 41 31 31
4 19 41 18 42 42 19 23 21 41 43
5 11 34 24 25 42 18 24 19 21 31
6 23 25 26 26 32 18 24 19 11 36
7 29 27 18 24 26 19 26 18 31 41
8 23 28 22 23 27 41 26 17 41 48
9 28 32 38 18 28 28 28 18 28 38
10 26 33 27 28 36 18 35 19 39 29
11 24 25 16 33 41 32 26 19 19 29
12 35 31 37 32 42 31 22 31 19 22
13 18 26 41 32 43 41 32 41 31 31
14 19 41 18 42 42 19 23 21 41 43
15 11 34 24 25 42 18 24 19 21 31
16 23 25 26 26 32 18 24 19 11 36
17 29 27 18 24 26 19 26 18 31 41
18 23 28 22 23 27 41 26 17 41 48
19 28 32 38 18 28 28 28 18 28 38
20 26 33 27 28 36 18 35 19 39 29
Using the given sets of data in Tables 1 and 2, we employ LINGO 8.0 software to solve the equivalent mathematical programming problem (11) with m = 10, n = 20, and credibility service level αi = 0.80. In this case, the minimum cost is 478.0000 with the following optimal solution X13 = X15 = X1,13 = X34 = X3,11 = X3,17 = X49 = X4,15 = X57 = X5,19 = X6,10 = X6,20 = X7,12 = X7,14 = X81 = X88 = X8,18 = X92 = X96 = X9,16 = 1, and y1 = y3 = y4 = y5 = y6 = y7 = y8 = y9 = 1.
566
L. Zhang, Y. Liu, and X. Wang
Furthermore, in order to demonstrate the influence of service level parameter to solution quality, we also compare solutions with different values of credibility level αi . The computational results are reported in Table 3. Table 3. Comparison of Solutions with Different Service Levels m×n 10 × 20 10 × 20 10 × 20 10 × 20
5
αi 0.80 0.85 0.90 0.95
Max-Iter 830 830 941 25319
Optimal Objective Values 478.0000 481.0000 481.0000 493.0000
Time (sec) 1 1 2 5
Conclusions
As demand is usually uncertain in reality, this paper attempts to deal with single-source capacitated FLP with fuzzy demands and credibility service level requirements. Our main results are summarized as follows. First, we developed a new fuzzy version of single-source capacitated FLP, in which a set of capacitated facilities is selected to provide credibility service to demand points with possibility distributions at the minimal total cost. Second, we handled the credibility service level constraints in the cases when the demands are characterized by frequently used trapezoidal, Gamma and Normal fuzzy demands, and turned the original FLPs into their equivalent deterministic 0-1 linear or nonlinear programming problems. Third, some numerical experiments have been performed via one numerical example to demonstrate the developed modeling idea. This paper studied a new fuzzy single-source FLP. The focus is on special cases when demands are trapezoidal, Gamma and Normal fuzzy variables. While some issues have been resolved, some new ones have been exposed. For general problem (3), the demands included are not necessarily independent fuzzy variables, or they have general possibility distributions. To handle the general cases, we may combine approximation method and conventional optimization methods to solve general FLP (3). So the fuzzy single-source FLP is a fertile field for research.
Acknowledgments This work was supported by the National Natural Science Foundation of China under Grant No.60974134, the Natural Science Foundation of Hebei Province (No.A2011201007), and the Scientific Research and Development Program of Baoding (No.10ZR002).
References 1. Klose, A., Drexl, A.: Facility Location Models for Distribution System Design. Eur. J. Oper. Res. 162(1), 4–29 (2005) 2. Ahujia, R.K., Orlin, J.B., Pallottinao, S., Scaparra, M.P., Scutella, M.G.: A MultiExchange Heuristic for the Single-Source Capacitated Facility Location Problem. Manag. Sci. 50(6), 749–760 (2004)
Optimizing Single-Source Capacitated FLP
567
3. Homberg, K., Hellstrand, J.: Solving the Uncapacitated Network Design Problem by a Lagrangean Heuristic and Branch-and-Bound. Oper. Res. 46(2), 247–259 (1998) 4. Tragantalerngsak, S., Holt, J., Ronnqvist, M.: An Exact Method for the TwoEchelon, Single-Source, Capacitated Facility Location Problem. Eur. J. Oper. Res. 123(3), 473–489 (2000) 5. Cortinhal, M.J., Captivo, M.: Upper and Lower Bounds for the Single Source Capacitated Location Problem. Eur. J. Oper. Res. 151(2), 333–351 (2003) 6. Korupolu, M., Plaxton, C., Rajaraman, R.: Analysis of a Local Search Heuristic for Facility Location Problems. J. Algorithms 37(1), 146–188 (2000) 7. Zhou, J., Liu, B.: New Stochastic Models for Capacitated Location-Allocation Problem. Comput. Ind. Eng. 45(1), 111–125 (2003) 8. Lin, C.K.: Stochastic Single-Source Capacitated Facility Location Model with Service Level Requirements. Int. J. Prod. Econ. 117(2), 439–451 (2009) 9. Zadeh, L.A.: Fuzzy Sets. Inf. Control 8(3), 338–353 (1965) 10. Zadeh, L.A.: Fuzzy Sets As a Basis for a Theory of Possibility. Fuzzy Sets Syst 1(1), 3–28 (1978) 11. Liu, B.: Uncertainty Theory. Springer, Berlin (2004) 12. Liu, Y.K., Liu, Z., Gao, J.: The Modes of Convergence in the Approximation of Fuzzy Random Optimization Problems. Soft Comput. 13(2), 117–125 (2009) 13. Liu, Z., Liu, Y.K.: Type-2 Fuzzy Variables and Their Arithmetic. Soft Comput. 14(7), 729–747 (2010) 14. Zhou, J., Liu, B.: Modeling Capacitated Location-Allocation Problem with Fuzzy Demands. Comput. Ind. Eng. 53(3), 454–468 (2007) 15. Wen, M., Iwamura, K.: Fuzzy Facility Location-Allocation Problem under the Hurwicz Criterion. Eur. J. Oper. Res. 184(2), 627–635 (2008) 16. Liu, Y.K., Zhu, X.: Capacitated Fuzzy Two-Stage Location-Allocation Problem. Int. J. Innov. Comput. Inf. Control 3(4), 987–999 (2007) 17. Liu, Y.K., Tian, M.: Convergence of Optimal Solutions About Approximation Scheme for Fuzzy Programming with Minimum-Risk Criteria. Comput. Math. Appl. 57(6), 867–884 (2009) 18. Shen, S., Liu, Y.K.: A New Class of Fuzzy Location-Allocation Problems and Its Approximation Method. Information 13(3A), 577–591 (2010) 19. Liu, Y.K.: The Convergent Results About Approximating Fuzzy Random Minimum Risk Problems. Appl. Math. Comput. 205(2), 608–621 (2008) 20. Liu, B., Liu, Y.K.: Expected Value of Fuzzy Variable and Fuzzy Expected Value Models. IEEE Trans. Fuzzy Syst. 10(4), 445–450 (2002) 21. Liu, Y.K., Gao, J.: The Independence of Fuzzy Variables with Applications to Fuzzy Random Optimization. Int. J. Uncertain. Fuzz. Knowl.-Based Syst. 15(suppl.2), 1–20 (2007) 22. Liu, Y.K.: Convergent Results About the Use of Fuzzy Simulation in Fuzzy Optimization Problems. IEEE Trans. Fuzzy Syst. 14(2), 295–304 (2006)
New Results on a Fuzzy Granular Space Xu-Qing Tang and Kun Zhang School of Science, Jiangnan University Wuxi214122, Jiangsu Province, China [email protected], [email protected]
Abstract. Based on granular spaces, some relational problems with fuzzy equivalence relations is studied, and three results are obtained as follows. Firstly, the dynamic property of a fuzzy equivalence relation on its granular space is discussed. Secondly, the ordering relationship between fuzzy equivalence relations and their granular spaces is researched, and they are order-preserving. Furthermore, the collaborative clustering of fuzzy equivalence relations on granular spaces by their intersection operation is given, which the collaborative clustering derived from the fuzzy equivalence relations obtained by the intersection operation is a thinner or more precise consistent cluster. These conclusions will help us pursue an even deeper understanding of the essence of granular computing. Keywords: Granular Computing, Fuzzy Equivalence Relation, Fuzzy Granular Space, Ordering Relationship, Collaborative Clustering.
1
Introduction
Clustering and in particular, fuzzy clustering occupy an important role in understanding data revealing their underlying structures and offering some useful insights into the general tendencies, associations and dependencies manifesting therein [1]. With the development of relationship between information granules regarded as fuzzy sets [2,3,4,5,6], the structural analysis of fuzzy sets and fuzzy clusterings on information granules have addressed, these researches help us pursue an even deeper understanding of the essence of fuzzy sets and clustering procedures. During the past few years, a considerable number of studies have been conducted fuzzy collaborative clustering, and together with a rapid growth in the variety of applications [7,8,9,10,11,12,13]. How is to establish a collaborative clustering method? Recently, an important extension of clustering leads to the concepts of combination of several clustering results, which it is used on several differential clusterings for the same data set or clustering for several data sets. With a growing diversity of problems in which we traverse a path from data to knowledge, we encounter information processing tasks in which a vital interest is in a multifaceted perspective. In Refs.[1,2,8,9], Pedrycz et al conducted research on collaborative fuzzy clustering based on FCM, which it mainly concentrate on
The research was supported in part by the Program for Innovative Research Team of Jiangnan University.
Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 568–577, 2011. c Springer-Verlag Berlin Heidelberg 2011
New Results on a Fuzzy Granular Space
569
some essential algorithmic facets of processing data. In Ref.[14], Chen and Yao proposed a multiview collaborative approach based on data operators. Besides, Miyamoto studied information fusion based on fuzzy multi-sets [15]. Esnaf et al proposed a fuzzy clustering-based hybrid method for a multi-facility location problem [16], and Shuu also presented the fusion problem based on fuzzy multi-attribute group decision-making with multi-granularity linguistic information [17]. These collaborative methods of structural clusters were developed to address a common problem, i.e., for given several clusterings on the same data set, how to obtain a more perfect (or better) cluster. Recently, We also presented cluster analysis based on fuzzy quotient spaces [18], reported a direct method for solving clustering problems based on normalized metric. To better analyze clustering structures, we proposed the research on fuzzy granular spaces [19,20] based on the fuzzy quotient space theory [5,6]. In Ref.[21], we introduced granular spaces into fuzzy proximity relations, proposed the research on structural clusters of a fuzzy proximity relation, and researched the structural clustering characteristic based on a fuzzy granular space. In Ref.[22], we also presented the research on structural clustering and analysis of metric based on a granular space. In this paper, we study some relational problems on a fuzzy granular space. It is organized as follows: in Section 2, some preliminaries on fuzzy granular space derived from a fuzzy equivalence relation are introduced; in Section 3, the dynamic property of a fuzzy equivalence relation on its granular space is discussed; in Section 4, the ordering relationship between fuzzy equivalence relations and their granular spaces is researched; in Section 5, the collaborative clustering of fuzzy equivalence relations on granular spaces is presented; Conclusions are included in Section 6.
2
Preliminaries on Fuzzy Granular Space
We will first introduce some basic concepts and lemmas, as follows. If R is a fuzzy equivalence relation (abbreviated “FE relation”) on X and satisfies the separability (i.e., ∀x, y ∈ X, R(x, y) = 1 ↔ x = y), then R is called a separable FE relation on X [19]. Let SF E(X) and F E(X) stand for the set of separable FE relations and the set of FE relations on X, respectively. Given R ∈ F E(X) and ∀λ ∈ [0, 1], define a relation Rλ : (x, y) ∈ Rλ ↔ R(x, y) ≥ λ (note: Rλ is the cut equivalence relation of R on X. The set of all cut equivalence relations of R is denoted by R (X), i.e., R (X) = {Rλ | λ ∈ [0, 1]}. R (X) is also called the equivalence relations set derived from R. The equivalence classes of Rλ is denoted by [x]λ = {y | R(x, y) ≥ λ, y ∈ X}, and X(λ) = {[x]λ | x ∈ X} is called a granulation corresponding to λ derived from R. The set {X(λ) | λ ∈ [0, 1]} is called a granular space on X derived by R and it is denoted by ℵR (X). In fact, a granulation just stands for a partition of X here. Definition 1. Let (X, d) be a metric space. If d satisfies: (1) ∀x, y ∈ X, 0 ≤ d(x, y) ≤ 1;(2) ∀x, y, z ∈ X, there does not exist any number
570
X.-Q. Tang and K. Zhang
within the array {d(x, y), d(y, z), d(z, x)} such that it is greater than the maximum of the other two numbers. Then d is called a normalized ultrametric distance (NU metric) on X. The first above-mentioned condition (1) is also called the normalized condition, and the second above-mentioned condition (2) is called the ultrametric condition. If d : X × X → R+ , and d satisfies the symmetry, triangle inequality and ∀x ∈ X, d(x, x) = 0, then d is called a natural pseudo-distance on X [23]. If d is a natural pseudo-distance satisfying the normalized condition and the ultrametric condition, then d is also called a normalized and natural pseudo-ultrametric (abbreviated “NPU metric”) on X. Let N U (X) and N P U (X) stand for the set of normalized and ultrametrics and the one of normalized and natural pseudoultrametrics on X, respectively. Definition 2. Let X(λ1 ) and X(λ2 ) be two granulations on X. (1) If ∀x ∈ X, [x]λ1 ⊆ [x]λ2 , then granulation X(λ2 ) is deemed to be less fine than X(λ1 ) and it is denoted by X(λ2 ) ≤ X(λ1 ). (2) If X(λ2 ) ≤ X(λ1 ) and there exists x0 ∈ X such that [x0 ]λ1 ⊂ [x0 ]λ2 , then X(λ1 ) is deemed to be more fine than X(λ2 ) and it is denoted as X(λ2 ) < X(λ1 ). If R ∈ SF E(X), then ∀x ∈ X, [x]1 = {x}, i.e., X(1) = {{x} | x ∈ X} = X. ∀λ ∈ [0, 1], X(λ) ≤ X(1), i.e., X(1) (or X) is the finest granulation of X. Lemma 1. If R ∈ F E(X), then the deriving fuzzy granular space ℵR (X) is an ordered set, and it satisfies ∀λ1 , λ2 ∈ [0, 1], λ1 ≤ λ2 → X(λ1 ) ≤ X(λ2 ). Particularly, ∀λ1 , λ2 ∈ D, λ1 < λ2 → X(λ1 ) < X(λ2 ), where D = {R(x, y) | x, y ∈ X}. Proof. The proof is similar to the one of Proposition 3.2 in Ref.[19], here we omitted it. In Lemma 1, ℵR (X) is also called the ordered fuzzy granular space derived from R. In Ref.[21], we discussed the theory of ordered fuzzy granular spaces derived from F E(X), studied relationships between FE relations on X and NPU metrics on X, and given the following result. Lemma 2. Assume that R ∈ F E(X) (or R ∈ SF E(X)), and there exists an one-to-one and strictly increasing mapping g satisfying g(0) = 0 on [0, 1] → [0, 1]. Define d on X: ∀x, y ∈ X, d(x, y) = g(1 − R(x, y)). Then d ∈ N P U (X) (or d ∈ N U (X)). In Lemma 2, the d is called a NPU (or NU) metric on X derived by R. Lemma 3. Assume that R ∈ F E(X), that ℵR (X) denotes the derived granular space from R and that d stands for the a NPU metric derived from R. ∀X(λ) ∈ ℵR (X), define dλ : ∀a, b ∈ X(λ), dλ (a, b) = inf{d(x, y)|x ∈ a, y ∈ b}. If X(λ) < X(1), then, dλ is a NU metric on X(λ). In Ref.[21], we have discussed the relationship between the consistent clustering and the fuzzy granular spaces, and get the result that a consistent clustering of X is given for given a FE relation on X, and its granular space is just a consistent clustering of X.
New Results on a Fuzzy Granular Space
3
571
The Dynamic Property of a FE Relation on Its Granular Space
Theorem 1. Assume that R ∈ F E(X), ℵR (X) is the derived granular space from R on X. For any granulation X(λ) ∈ ℵR (X), define a fuzzy relation Rλ∗ on X(λ): ∀a, b ∈ X(λ), Rλ∗ (a, b) = sup{R(x, y)|x ∈ a, y ∈ b}. If X(λ) > X(1), then Rλ∗ ∈ SF E(X(λ)). If the theorem holds, then Rλ∗ is called the projecting FE relation of R to X(λ). Proof. By R ∈ F E(X), taking d(x, y) = 1 − R(x, y), d ∈ N P U (X) and dλ ∈ N U (X(λ)) from Lemma 2 and 3, where dλ (a, b) = inf{d(x, y)|x ∈ a, y ∈ b} = 1 − sup{R(x, y)|x ∈ a, y ∈ b} = 1 − R(a, b), a, b ∈ X(λ). Rλ∗ obviously satisfies the symmetry and ∀a, b ∈ X(λ), 0 ≤ Rλ∗ (x, y) ≤ 1 from the definition of R∗ , and (1) ∀a ∈ X(λ), Rλ∗ (a, a) = sup{R(x, y)|x, y ∈ a} = 1. (2)∀a, b ∈ X(λ), Rλ∗ (a, b) = 1 ↔ dλ (a, b) = 0 ↔ a = b from dλ ∈ N U (X(λ)), i.e., Rλ∗ satisfies the separability on X(λ); (3) ∀a, b, c ∈ X(λ), Rλ∗ (a, b) = 1 − dλ (a, b) ≥ min{1 − dλ (a, c), 1 − dλ (c, b)} = min{Rλ∗ (a, c), Rλ∗ (c, b)}. So Rλ∗ (a, b) ≥ supc∈X(λ) {min{Rλ∗ (a, c), Rλ∗ (c, b)}}. Therefore, Rλ∗ ∈ SF E(X(λ)). In Theorem 1, the Rλ∗ is also called as the projective SFE relation on X(λ) by R. Given a FE relation R, Theorem 1 states that we can get a FE relation Rλ∗ on X(λ) of X derived from R according to the projective FE relation. Theorem 2. Assume that X(λ) is a granulation of X, and that Rλ ∈ F E(X(λ)) (or Rλ ∈ SF E(X(λ))). Define a fuzzy relation Rλ on X: ∀x, y ∈ X, Rλ (x, y) = Rλ (a, b), where x ∈ a, y ∈ b, a, b ∈ X(λ). Then, Rλ ∈ F E(X). Proof. When R ∈ F E(X(λ)), Rλ obviously satisfies the symmetry and ∀x, y ∈ X, 0 ≤ Rλ (x, y) ≤ 1 from the definition of Rλ . In addition, (1) ∀x ∈ X, Rλ (x, x) = Rλ (a, a) = 1, where x ∈ a ∈ X(λ); (2) ∀x, y, z ∈ X, Rλ (x, y) = R(a, b) ≥ supc∈X(λ) {min{Rλ (a, c), Rλ (c, b)}} = supz∈X {min{Rλ (x, z), Rλ (z, y)}}, where x ∈ a, y ∈ b, z ∈ c, a, b, c ∈ X(λ). So Rλ (x, y) = R(a, b) ≥ supz∈X {min{Rλ (x, y), Rλ (z, y)}}. Therefore, Rλ ∈ F E(X). As in the above proof, it also holds when Rλ ∈ SF E(X(λ)). In Theorem 2, Rλ is also called the extending FE relation on X from the R on X(λ). Theorem 2 shows that we can get a FE relation Rλ on X by the extending FE relation for given a FE relation Rλ ∈ F E(X(λ)). Remark 1. From Theorem 1 and 2, the dynamic property of FE relations on an ordered granular space is given, i.e., given a (separable) FE relation on a granulation X(λ), we can determine a separable FE relation on any granulation that is more coarse than X(λ) by its projective FE relation; we can also define the FE relation on any granulation that is finer than X(λ) by its extending FE relation.
572
X.-Q. Tang and K. Zhang
For a given FE relation R on X, its granular space is denoted by ℵR (X) = {X(λ)|λ ∈ [0, 1]}. The set, which is all extending FE relations of projective FE relations on all granulations X(λ) (Note: it is called the extending FE relations set ), is denoted by R (ℵ), i.e., R (ℵ) = {Rλ∗ |0 ≤ λ ≤ 1}. Definition 3. Let ℵ1 (X) and ℵ2 (X) be two ordered granular spaces on X, and their granulations are marked as X1 (λ) and X2 (λ) (λ ∈ [0, 1]), respectively. (1) If ∀λ ∈ [0, 1], X1(λ) ≤ X2 (λ), then the granular space ℵ1 (X) is deemed to be less fine than ℵ2 (X) and it is denoted as ℵ1 (X) ≤ ℵ2 (X); (2) If ℵ1 (X) ≤ ℵ2 (X) and there exists λ0 ∈ [0, 1] such that X1 (λ0 ) < X2 (λ0 ), then ℵ2 (X) is deemed to be more fine than ℵ1 (X) and it is marked as ℵ1 (X) < ℵ2 (X). Theorem 3. Suppose that R ∈ F E(X), and that its granular space is denoted by ℵR (X) = {X(λ)|λ ∈ [0, 1]}. ∀λ ∈ [0, 1], Rλ∗ stands for the projective FE relation derived from R on the granulation X(λ), and Rλ∗ is the extending FE relation of Rλ∗ on X. ℵR∗λ (X(λ)) and ℵR∗ (X) is the granular space derived by λ
Rλ∗ (on X(λ)) and Rλ∗ (on X), respectively; their granulations are marked as Xλ (μ) and Xλ∗ (μ), respectively (μ ∈ [0, 1]). Then, ∀μ ∈ [0, 1], Xλ (μ) = Xλ∗ (μ).
Proof. ∀λ ∈ [0, 1], μ ∈ [0, 1], [x]λ,μ and [x]∗λ,μ stands for the equivalence class corresponding to x of Xλ (μ) and one of Xλ∗ (μ), respectively. By Theorem 2 and Definition 2, ∀x ∈ a ∈ Xλ (μ) ↔ a = [x]λ,μ = {y|Rλ∗ ([x]λ,μ , [y]λ,μ ) ≥ μ} = {y|Rλ∗ (x, y) ≥ μ} = [x]∗λ,μ ↔ a ∈ Xλ∗ (μ), therefore, Xλ (μ) = Xλ∗ (μ). Theorem 3 shown that the ordered granular space derived from Rλ∗ is the same as the one derived from its extending FE relation.
4
The Ordering Relationship between FE Relations and Their Granular Spaces
Definition 4. Let R1 , R2 ∈ F E(X). (1) If ∀x, y ∈ X, R1 (x, y) ≤ R2 (x, y), then R2 is deemed to be less fine than R1 and is denoted as R2 ≤ R1 ; (2) If R2 ≤ R1 , and there exists x0 , y0 ∈ X such that R1 (x0 , y0 ) < R2 (x0 , y0 ), then R1 is deemed to be more fine than R2 and is denoted as R2 < R1 . Like an amplifying or reducing scale, the “coarse-fine” relation among FE relations shows a basic property of fuzzy relations. For any two given FE relations on a universe, the smaller the relation value, the finer the fuzzy relation. Theorem 4. Assume that R ∈ F E(X) (or R ∈ SF E(X)), then the extending FE relations set R (ℵ) = {R∗ λ |0 ≤ λ ≤ 1} is an ordered set, satisfying ∀λ1 , λ2 ∈ [0, 1], λ1 ≤ λ2 → Rλ∗ 1 ≤ Rλ∗ 2 . Proof. Let X(λ) be the granulation derived from R on X to λ, i.e., let X(λ) = {[x]λ |x ∈ X}. For any λ1 , λ2 ∈ [0, 1], λ1 ≤ λ2 . Then we get X(λ1 ) ≤ X(λ2 )
New Results on a Fuzzy Granular Space
573
from Lemma 1, so ∀x, y ∈ X, [x]λ2 ⊆ [x]λ1 , [y]λ2 ⊆ [y]λ1 . According to Theorem 1 and 2, Rλ∗ 1 (x, y) = Rλ∗ 1 ([x]λ1 , [y]λ1 ) = sup{R(x1 , y1 )|x1 ∈ [x]λ1 , y1 ∈ [y]λ1 } ≥ sup{R(x1 , y1 )|x1 ∈ [x]λ2 , y1 ∈ [y]λ2 } = Rλ∗ 2 (x, y). Therefore, Rλ∗ 1 ≤ Rλ∗ 2 by Definition 4. Theorem 5. Suppose that R1 , R2 ∈ F E(X) and that their deriving granular spaces are ℵR1 (X) and ℵR2 (X). Then, R1 ≤ R2 ⇐⇒ ℵR1 (X) ≤ ℵR2 (X). Particularly, when R1 , R2 ∈ SF E(X), we have R1 < R2 ⇐⇒ ℵR1 (X) < ℵR2 (X). Proof. From R1 , R2 ∈ F E(X), we denoted ℵRi (X) = {Xi (λ)|λ ∈ [0, 1]}, where Xi (λ) = {[x]iλ |x ∈ X}, i = 1, 2. “=⇒”. ∀λ ∈ [0, 1], x, y ∈ X, by the condition R1 ≤ R2 ↔ R2 (x, y) ≤ R1 (x, y), i.e., ∀x ∈ X, [x]2λ = {y|R2 (x, y) ≥ λ} ⊆ {y|R1 (x, y) ≥ λ} = [x]1λ ∈ X1 (λ). Therefore, ℵR1 (X) ≤ ℵR2 (X) by Definition 3. “⇐=”. ∀λ ∈ [0, 1], X1 (λ) ≤ X2 (λ), i.e., ∀x ∈ X, [x]2λ ⊆ [x]1λ . By the extending principle of fuzzy sets, ∀x, y ∈ X, R1 (x, y) = supλ∈[0,1] {λ | y ∈ [x]1λ } ≥ supλ∈[0,1] {λ | y ∈ [x]2λ } = R2 (x, y), that is R1 ≤ R2 . As in the above proof, it is easy to get R1 < R2 ⇐⇒ ℵR1 (X) < ℵR2 (X) when R1 , R2 ∈ SF E(X), and the details are omitted here. Theorem 5 shown that the order of F E(X) (or SF E(X)) relations on universe X is the same as the one of their deriving granular spaces, i.e., they are orderpreserving.
5
The Collaborative Clustering of FE Relations on Granular Space
Lemma 4. F E(X) (or SF E(X)) composes a perfect semi-order lattice under the relation “≤” as defined by Definition 4. And for a given {Rα , α ∈ I} ⊆ F E(X) (or ⊆ SF E(X)), define R and R: R(x, y) = inf α∈I {Rα (x, y)}, R(x, y) = supα∈I {Rα (x, y)}, then R and R is the superior and inferior of {Rα , α ∈ I}, respectively. Proof. The proof is similar to the one of Theorem 3.1 in [6], so we have omitted it here. In Lemma 4, the R is just a FE relation on X by a crisp fuzzy intersection operation with {Rα , α ∈ I}, and it is denoted as R = ∩α∈I Rα . Theorem 6. Suppose that X1 and X2 are granulations on X and that Ri ∈ EF (Xi ) (or ∈ SF E(Xi )), i = 1, 2. X1 ∩ X2 = {a ∩ b | a ∈ X1 , b ∈ X2 }, define R : ∀a, b ∈ X1 ∩ X2 , R(a, b) = min{R1 (a1 , b1 ), R2 (a2 , b2 )} (1) where a ⊆ ai ∈ Xi , b ⊆ bi ∈ Xi , i = 1, 2. Then, R ∈ F E(X1 ∩ X2 ) (or R ∈ SF E(X1 ∩ X2 )). If the theorem holds, R is also called a FE relation on X1 ∩X2 by the intersection operation with R1 (on X1 ) and d2 (on X2 ), and it is also denoted as R = R1 ∩R2 .
574
X.-Q. Tang and K. Zhang
Proof. When Ri ∈ SF E(Xi ) (i = 1, 2), it is obvious that R satisfies the symmetry and ∀a, b ∈ X1 ∩ X2 , 0 ≤ R(a, b) ≤ 1 by the definition of R. (1) ∀a ∈ X1 ∩ X2 , a ⊆ ai ∈ Xi , i = 1, 2, R(a, a) = 1; (2) ∀a, b ∈ X1 ∩ X2 , R(a, b) = min{R1 (a1 , b1 ), R2 (a2 , b2 )} = 1 ↔ a1 = b1 , a2 = b2 ↔ a = b, i.e., R satisfies the separability on X1 ∩ X2 ; (3) ∀a, b, c ∈ X1 ∩ X2 , a ⊆ ai ∈ Xi , b ⊆ bi ∈ Xi , c ⊆ ci ∈ Xi (i = 1, 2). We have 1 − Ri ∈ D(Xi ) by Lemma 3 (i = 1, 2). So, 1 − R1 (a1 , b1 ) ≤ max{1 − R1 (a1 , c1 ), 1 − R1 (c1 , b1 )} = 1 − min{R1 (a1 , c1 ), R1 (c1 , b1 )}, i.e., R1 (a1 , b1 ) ≥ min{R1 (a1 , c1 ), R1 (c1 , b1 )}. Similarly, R2 (a2 , b2 ) ≥ min{R2 (a2 , c2 ), R2 (c2 , b2 )}. Therefore, R(a, b) = min{R1 (a1 , b1 ), R2 (a2 , b2 )} ≥ min{min{R1 (a1 , c1 ), R2 (a2 , c2 )}, min{R1 (c1 , b1 ), R2 (c2 , b2 )}} ≥ min{R(a, c), R(c, b)}. Furthermore, we have R(a, b) ≥ supc∈X1 ∩X2 {min{R(a, c), R(c, b)}}. Form (1)-(3), we have R ∈ SF E(X1 ∩ X2 ). As in the above proof, this proof also holds when Ri ∈ F E(Xi ) (i = 1, 2). Remark 2. The intersection operation in Theorem 6 is different from the crisp fuzzy intersection operation. The former is defined on different granulations of a universe, the latter is defined on the same granulation. Theorem 7. Suppose that X1 and X2 are two granulations on X and that Ri ∈ F E(Xi ) (i = 1, 2). R1∗ , R2∗ stands for the extending FE relation derived from R1 and R2 on X1 ∩X2 , respectively. Then R1∗ ∩R2∗ = R1 ∩R2 , where the intersection operation of R1∗ ∩ R2∗ is defined by the crisp fuzzy intersection operation and the intersection operation of R1 ∩ R2 is seen in Theorem 6. Proof. ∀c1 , c2 ∈ X1 ∩ X2 , c1 ⊆ ai ∈ Xi , c2 ⊆ bi ∈ Xi , i = 1, 2, we have R1∗ ∩ R2∗ (c1 , c2 ) = inf{R1∗ (c1 , c2 ), R2∗ (c1 , c2 )} = inf{R1 (a1 , b1 ), R2 (a2 , b2 )} = R1 ∩ R2 (c1 , c2 ). Therefore, R1∗ ∩ R2∗ = R1 ∩ R2 . Although the intersection operation in Theorem 6 is different from the crisp fuzzy intersection operation, Theorem 7 shown that their deriving FE relations on X1 ∩ X2 are the same. Furthermore, their deriving granular spaces are also the same, so they have the same consistent clusterings. From Theorem 6, 7 and Definition 4, we directly obtain the following corollary. Corollary 1. In Theorem 7, Ri∗ ≤ R1 ∩ R2 (i = 1, 2). Theorem 8. Suppose that X1 and X2 are two granulations on X, and that Ri ∈ F E(Xi ), i = 1, 2, R = R1 ∩ R2 . Then, ℵRi (Xi ) ≤ ℵR (X1 ∩ X2 ), where ℵRi (Xi ) and ℵR (X1 ∩ X2 ) stand for the granular space derived from Ri on Xi (i = 1, 2) and R (on X1 ∩ X2 ), respectively. Proof. Based on Corollary 1, Theorem 4 and 5, we may easily give the proof, and we have omitted it here. Theorem 9. Suppose that X1 and X2 are two granulations on X, and that Ri ∈ F E(Xi ), i = 1, 2. R ∈ F E(X1 ∩ X2 ), ℵR1 (X1 ), ℵR2 (X2 ) and ℵR (X1 ∩ X2 ) stands for the deriving granular space by R1 (on X1 ), R2 (on X2 ) and R (on X1 ∩ X2 ), respectively. If ℵRi (Xi ) ≤ ℵR (X1 ∩ X2 ) (i = 1, 2), then R1 ∩ R2 ≤ R.
New Results on a Fuzzy Granular Space
575
Proof. The denoted R1∗ and R2∗ stand for the extending FE relation derived from R1 and R2 on X1 ∩ X2 , respectively. ℵR∗1 (X1 ∩ X2 ) and ℵR∗2 (X1 ∩ X2 ) is the granular space derived from R1∗ and R2∗ on X1 ∩ X2 , respectively. By Theorem 3 and 8, ℵR∗i (X1 ∩ X2 ) = ℵRi (Xi ) ≤ ℵR (X1 ∩ X2 ), i = 1, 2. Furthermore, we can derive Ri∗ ≤ R, i = 1, 2 from Theorem 5. Therefore, R1 ∩ R2 = R1∗ ∩ R2∗ ≤ R according to Theorem 7. We get the following corollary directly from Theorem 7 and 9. Corollary 2. In Theorem 6, R = R1 ∩ R2 is the superior of R1 and R2 on X1 ∩ X 2 . Theorem 9 shown that a new structural cluster (i.e.,ℵR (X1 ∩ X2 )) may be obtained by Theorem 6 for the given two structural clusters (i.e.,ℵR1 (X1 ) and ℵR2 (X2 )). This new structural cluster is expected to satisfy ℵRi (Xi ) ≤ ℵR (X1 ∩ X2 ) (i = 1, 2), where it shows that the new structural cluster is finer than ℵR1 (X1 ) or ℵR2 (X2 ). By Corollary 2, the granular space ℵR (X1 ∩ X2 ) derived from R is the finest obtained from R1 (on X1 ) and R2 (on X2 ) on X1 ∩ X2 , and it satisfies R1 ∩ R2 = R1∗ ∩ R2∗ by Theorem 7. We also gave the construction method of R in Theorem 6 and 7, where it was derived through the intersection operation of the extending FE relation R1∗ and R1∗ on X1 ∩ X2 , which was in turn derived from R1 and R1 , respectively. In fact, the results obtained above can be generalized to the collaborative clustering of an arbitrary number of clusters on universe X by Lemma 4 and Theorem 7, i.e., the following result also holds. Theorem 10. Assume that {Xα | α ∈ I} is a granulations set on X, that Rα is ∗ a FE relation on Xα and that Rα is the extending FE relation of Rα on ∩α∈I Xα . Then ∗ (1) R = ∩α∈I Rα ∈ F E(∩α∈I Xα ), and ∩α∈I Rα = ∩α∈I Rα ; (2) R = ∩α∈I Rα is the superior of {Xα | α ∈ I} on ∩α∈I Xα ; (3) ℵRα (Xα ) ≤ ℵR (∩α∈I Xα ) (α ∈ I), where ℵRα (Xα ) and ℵR (∩α∈I Xα ) stand for the deriving granular space by Rα (on Xα ) and R (on ∩α∈I Xα ), respectively. Below is an example to illustrate the above theoretical results. Example 1. Let X1 = {a1 = {1, 2}, a2 = {3, 4}, a3 = {5, 6}, a4 = {7, 8}} and X2 = {b1 = {1, 2}, b2 = {3, 4, 5}, b3 = {6, 7, 8}} are two granulations on X = {1, 2, · · · , 8}. Ri ∈ SF E(Xi ), i = 1, 2, where R1 : R1 (ai , ai ) = 1, i = 1, 2, 3, 4, R1(a1 , a2 ) = R1 (a1 , a3 ) = R1 (a1 , a4 ) = 0.3, R1 (a2 , a3 ) = R1 (a2 , a4 ) = 0.5, R1 (a3 , a4 ) = 0.7; R2 : R2 (bi , bi ) = 1, i = 1, 2, 3, R2(b1 , b2 ) = 0.8, R2 (b1 , b3 ) = R2 (b2 , b3 ) = 0.2. The respective granular spaces of R1 and R2 are as follows: ℵR1 (X1 ) = {X1 (1) = X1 , X1 (0.7) = {{a1 }, {a2 }, {a3 , a4 }}, X1 (0.5) = {{a1 }, {a2 , a3 , a4 }}, X1 (0.3) = {X1 }}; ℵR2 (X2 ) = {X2 (1) = X2 , X2 (0.8) = {{b1 , b2 }, {b3}}, X2 (0.2) = {X2 }}. By Theorem 6, we get X1 ∩ X2 = {c1 = {1, 2}, c2 = {3, 4}, c3 = {5}, c4 = {6}, c5 = {7, 8}}. Furthermore, we get a FE relation R = R1 ∩ R2 on X1 ∩ X2 by formula (1), i.e., R : R(ci , ci ) = 1, i = 1, 2, 3, 4, 5, R(c1, c4 ) = R(c1 , c5 ) =
576
X.-Q. Tang and K. Zhang
R(c2 , c4 ) = R(c2 , c5 ) = R(c3 , c4 ) = R(c3 , c5 ) = 0.2, R(c1 , c2 ) = d(c1 , c3 ) = 0.3, d(c2 , c3 ) = 0.5, R(c4 , c5 ) = 0.7. Its deriving granular space is ℵR (X1 ∩ X2 ) = {X(1) = X1 ∩ X2 , X(0.7) = {{c1 }, {c2 }, {c3 }, {c4 , c5 }}, X(0.5) = {{c1 }, {c2 , c3 }, {c4 , c5 }}, X(0.3) = {{c1 , c2 , c3 }, {c4 , c5 }}X(0.2) = {X1 ∩ X2 }}, and the comparison graph of corresponding dendrogram of R1 , R2 and R in Example 1 is shown in Fig.1, where (a), (b) and (c) stands for their dendrogram of R1 , R2 and R, respectively. From Fig.1, we obviously have ℵRi (Xi ) ≤ ℵR (X1 ∩ X2 ) (i = 1, 2). a1 a2 a3 a4 b1 b2 b3 c1 c2 c3 c4 c5 ∼ ∼
1.0 0.8 0.7 0.5
0.3 0.2 (a) Remoteness levels
(b)
(c)
?
Fig. 1. The comparison graph of corresponding dendrograms in Example 1
6
Conclusions
Based on granular spaces, we study some relational problems with FE relation, and obtained results as follows: (1)The dynamic property of a FE relation on its granular space is discussed, i.e., i.e., given a (separable) FE relation on a granulation X(λ) of X, we can determine a separable FE relation on any granulation that is more coarse than X(λ) by its projective FE relation; we can also define the FE relation on any granulation which is finer than X(λ) by its extending FE relation. (2)The ordering relationship between FE relations and their granular spaces is researched, and they are order-preserving. (3)The fusion on structural clusters of FE relations on granular spaces by their intersection operation is given, which the consistent cluster derived from the FE relation obtained by the intersection operation is a thinner or more precise consistent cluster. These conclusions will help us pursue an even deeper understanding of the essence of granular computing.
References 1. Pedrycz, W., Rai, P.: Collaborative clustering with the use of Fuzzy C-Means and its quantification. Fuzzy Sets and Systems 159, 2399–2427 (2008) 2. Pedrycz, W., Rai, P.: A multifaceted perspective at data analysis: a study in collaborative intelligent agents. IEEE Trans. Systems. Man and Cybernetics-Part B: Cybernetics 38, 1062–1072 (2008)
New Results on a Fuzzy Granular Space
577
3. Kwak, K.C., Pedrycz, W.: A design of genetically oriented linguistic model with the aid of fuzzy granulation. In: 2010 IEEE International Conference on Fuzzy Systems, July 18-23, pp. 1–6 (2010) 4. Zadeh, L.A.: Fuzzy logic = computing with words. IEEE Transactions on Fuzzy Systems 2, 103–111 (1996) 5. Zhang, B., Zhang, L.: Theory of Problem Solving and Its Applications–The theory and methods of quotient granular computing, 2nd edn. Tsinghua University Press, Beijing (2007) (in Chinese) 6. Zhang, L., Zhang, B.: The structure analysis of fuzzy sets. International Journal of Approximate Reasoning 40, 92–108 (2005) 7. Frey, B.J., Dueck, D.: Clustering by Passing messages between data points. Science 315, 972–976 (2007) 8. Devillez, A., Billaudel, P., Lecolier, G.V.: A fuzzy hybrid hierarchical clustering method with a new criterion able to find the optimal partition. Fuzzy Sets and Systems 128, 323–338 (2002) 9. Pedrycz, W.: Collaborative fuzzy clustering. Pattern Recognition Letters 23, 1675– 1686 (2002) 10. Piangkh, O.S.: Analytically traceable case of fuzzy C-means clustering. Pattern Recognition 39, 35–46 (2006) 11. Tsekouras, G., Sarimreis, H., et al.: A hierarchical fuzzy clustering approach to fuzzy modeling. Fuzzy Sets and Systems 150, 246–266 (2005) 12. Sledge, I.J., Bezdek, J.C.: Relational generalizations of cluster validity indexes. IEEE Trans. Fuzzy Systems 18, 771–786 (2010) 13. Pedrycz, W., Loia, V., Senatore, S.: Fuzzy clustering with viewpoints. IEEE Trans. Fuzzy Systems 18, 274–284 (2010) 14. Chen, Y., Yao, Y.Y.: A multiview approach for intelligent data analysis based on data operators. Inf. Sci. 178, 1–20 (2008) 15. Miyamoto, S.: Information clustering based on fuzzy multi-sets. Information and Management 39, 195–213 (2003) 16. Esnaf, S., K¨ uc¨ ukdeniz, T.: A fuzzy Clustering based hybrid method for a multifacility location problem. J. Intell. Manuf. 20, 259–265 (2009) 17. Shuu, S.J.: Evaluating the flexibility in a manufacturing system using fuzzy multiattribute group decision-making with multi-granularity linguistic information. Int. J. Adv. Manuf. Technol. 32, 409–421 (2007) 18. Tang, X.-Q., Zhu, P., Cheng, J.-X.: Cluster analysis based on fuzzy quotient space. Chinese Journal of Software 19, 861–868 (2008) 19. Tang, X.-Q., Zhu, P., Cheng, J.-X.: Study on fuzzy granular space based on normalized equicrural metric. Computer Science 35(4), 142–145 (2008) (in Chinese) 20. Tang, X.-Q., Zhao, J.-J., Fang, X.-S.: Research on properties of fuzzy granular space. Fuzzy Sestems and Mathematics 23(5), 70–78 (2009) (in Chinese) 21. Tang, X.-Q., Fang, X.-S., Zhu, P.: Structural clusters based on fuzzy proximity relations. Systems Engineering-Theory & Practice 30(11), 1987–1997 (2010) (in Chinese) 22. Tang, X.-Q., Zhu, P., Cheng, J.-X.: The structural clustering and analysis of metric based on granular space. Pattern Recognition 43, 3768–3786 (2010) 23. d’Amico, M., Frosini, P., Landi, C.: Natural pseudo-distance and optimal matching between reduced size function. Acta Appl. Math. 109, 527–554 (2010)
Fuzzy Integral Based Data Fusion for Protein Function Prediction Yinan Lu, Yan Zhao, Xiaoni Liu, and Yong Quan College of Computer Science and Technology, Jilin University 130012 Changchun, China {luyn,quanyong}@jlu.edu.cn
Abstract. Data fusion using diverse biological data has been applied to predict the protein function in recent years. In this paper, fuzzy integral fusion based on fuzzy measure is used to integrate the probabilistic outputs of different classifiers. Support vector machines as base learners are applied to predict the functions of examples from each data source. Fuzzy density values are determined by Particle Swarm Algorithm and an improved λ-measure is used. We compare our improved fuzzy measure to typical one. The experimental results show that our method has the better results. Keywords: Fuzzy measure; Particle Swarm Algorithm; Data fusion; Protein function prediction.
1 Introduction Protein function prediction has become one of the main challenges in post-genome era. With the development of technology, there are large amounts of functional genomic data available, including protein-protein interaction, expression, phylogenetic profiles data, etc. How to use them becomes a major problem. Because of noise in a data set, the protein function prediction using the single source is often ineffective. Moreover, a data set can usually provide useful information only for a subset of function classes, while for others may be substantially uninformative [1]. This leads to the excellent performance in prediction of some function classes, but the poor one in others. So in recent years there have been many protein function prediction methods based on data fusion, such as Classifiers Ensemble [2][3], Artificial Neural Networks [4], Markov Random Field [5], Fusion Kernels [6], Integrated Weighted Averaging [7], Hopfield Network [8] and Simulated Annealing [9]. The weighted average is a common method in the field of information fusion. The weights in this method reflect the importance of different objects, but they can’t reflect the interactions among objects. When there are interactions, the weighted average method will inevitably lead to loss of interactions information. Because of the non-additive property, fuzzy measure can reflect both of the importance of different objects and the interactions among objects. So we use Choquet fuzzy integral based on our improved λ-measure to perform the data fusion and use probabilistic support vector machines (SVM) as base learners to predict the functions of examples from each data source. The Particle Swarm Algorithm is adopted to search the optimized values of fuzzy density. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 578–586, 2011. © Springer-Verlag Berlin Heidelberg 2011
Fuzzy Integral Based Data Fusion for protein Function Prediction
579
Currently, there are two main protein function taxonomies. One is the Functional Catalogue (FunCat) based on the Munich Information Center for Protein Sequences (MIPS) [10], the other is Gene Ontology (GO) [11]. The structure of FunCat is a tree forest and GO is a directed acyclic graph. Both of them are hierarchical. In this paper, we use FunCat to define the functions of protein. The paper is organized as follows. In section 2, we present some definitions, the detailed description of our improved Sugeno λ-measure and how to use the Particle Swarm Algorithm to determine the fuzzy density. In section 3, we use five data sets to predict protein functions and analysis the results. The conclusions end the paper.
2 Methods 2.1 Fuzzy Measures and Choquet Integral Definition 1. [12] Let X is a non-empty finite set X={x1, x2,…, xn}, and P(X) indicates the power set of X. A set function g: P(X) → [0, 1] is called a fuzzy measure g on X, if it satisfying the following axioms: (i) g (φ ) = 0, g ( X ) = 1 .
(ii) ∀A, B ∈ P ( X ), A ⊆ B ⇒ g ( A) ≤ g ( B ) . From the above we can see that the fuzzy measures are normal and monotone. From this definition, Sugeno introduced the λ-fuzzy measure satisfying the following property: g ( A ∪ B ) = g ( A) + g ( A) + λ g ( A) g ( B ) .
(1)
n
λ + 1 = ∏ [1 + λ g ({xi })] , for λ >-1, xi ∈ X . i =1
(2)
For all A, B∈ P(X) and A ∩ B= φ . In equation (2), g ({ xi }) is called fuzzy density. It i
can be simply denoted by g . Definition 2. [13] Let g be a fuzzy measure on X and X={ x1, x2,…, xn }. Without loss of generality we assume that 0 = f ( x0 ) ≤ f ( x1 ) ≤ " ≤ f ( xn ) ≤ 1 and Ai ={xi, xi+1…xn}, An +1 = φ . The Choquet integral of f with respect to g is defined by n
C g ( f ) = ∫ fd g = ∑ ( f ( xi ) − f ( xi −1 )) g ( Ai ) . i =1
(3)
Note that when g is a Sugeno λ-measure, the values of g ( Ai ) can be determined recursively by the following equation [14]. g ( An ) = g ({ xn }) = g . n
g ( Ai ) = g + g ( Ai +1 ) + λ g g ( Ai +1 ) , for 1 ≤ i < n . i
i
(4) (5)
580
Y. Lu et al.
2.2 Our Improved Sugeno λ-Measure
We can calculate the value of λ by the equation (2), but the problem is that the value of λ is just only determined by the fuzzy density. So it cannot reflect the real relationship among the objects. In order to resolve this problem, we use Pearson correlation coefficient r instead of λ. The improved Sugeno λ-measure can be expressed as follow. For simplicity we let s = g ( A) + g ( B ) − rA, B g ( A) g ( B ) .
if s < 1
s
g ( A ∪ B) =
(6)
max( g ( A), g ( B )) if
s ≥1
For all A, B∈ P(X) and A ∩ B= φ . If |A|=|B|=1, we assume that A= {xa} and B= {xb}, then the value of rA, B is the Pearson correlation coefficient of xa and xb. If |A|=1 and |B|>1, we assume that A={xa} and B={xb1, xb2,
…, x
bn},
then rA, B can be estimated
using the following equation (7).
rA, B = 2 × ∏ xi ∈B
Where rx
a , xi
(1 + rxa , xi ) 2
−1 .
(7)
is the Pearson correlation coefficient of xa and xi. Then we can recur-
sively calculate our improved Sugeno λ-measure using the equations (4) and (6). Because the range of rA,B is -1 to 1, it is easy to know that our improved Sugeno λmeasure is normal and monotone. 2.3 Determine Fuzzy Measure Based on Particle Swarm Algorithm
If the fuzzy measures are obtained, the Choquet integral is used to combine the probabilistic outputs of different support vector machines to give the final prediction. Because we use Sugeno λ-measure, it is just need to determine the fuzzy density. In this paper, the Particle Swarm Algorithm is adopted to search the optimized values of fuzzy density. Particle Swarm Algorithm is originally attributed to Kennedy and Eberhart [15] in 1995. It has fewer parameters and it is easy to implement this algorithm. Considering a swarm of N particles, each particle’s position X i = ( xi1 , xi 2 ,..., xid ) represents a possible solution point in d-dimensional problem space. In this paper, the particle can i
be treated as fuzzy density g corresponding to the ith data set. In every iteration, the fitness value will be calculated when the particle flies to a new position. The iterative process will continue until the program finds the optimal solution or meets the end condition. We use the method in [16] as the update mode of the particle’s flying velocity and position. The details about Particle Swarm Algorithm can be seen in [15] and [16].
Fuzzy Integral Based Data Fusion for protein Function Prediction
581
Most fitness functions used to determine the fuzzy density are based on the difference of ideal integral value and the actual of integral value. But this kind of fitness function is not suitable for the problem containing the extremely unbalance between positive and negative samples (In our experiment, all of the classes have more negative samples than positive samples). When the sum of absolute differences is used as the fitness function, the particles will be extremely close to zero. Even in some classes the fuzzy density are all of zero, such as classes “30”, “32” and “42”. So in this paper, we use the Area Under ROC Curve (AUC) as the fitness function. Receiver Operating Characteristic (ROC) Curve is a graphical plot of the true positive rate vs. false positive rate [17]. The AUC is equal to the probability that a classifier will rank a randomly chosen positive instance higher than a randomly chosen negative one [18]. The range of AUC is 0.5 to 1. The more AUC gets close to 1, the better classification is. The fitness function AUC can be calculated as follow. N
fitness=AUC =
∑ RANK( Ri ) −
N × ( N + 1)
i =1
2
.
N×M
(8)
Where N is the number of positive samples, M is the number of negative samples. RANK( Ri ) is the order number of Sample i after all the samples are ranked in the increasing order of probability. Moreover, because the outputs of SVM and the results of data fusion are probabilistic, the threshold t is needed to determine the samples’ class. We calculate Fmeasure by varying the value of t between 0 and 1 and the value of t which makes the biggest F-measure will be the value of threshold. The F-measure can be obtained by the follow equation. F-measure =
2 × TP 2 × TP + FP + FN
.
(9)
Where TP, FP and FN are the number of true positive, false positive and false negative, respectively.
3 Experimental Results and Analysis 3.1 Data Sets and Functional Classes of Protein
The above approach is applied to predict the protein function of yeast and we chose five different types of data. Their main characteristics used in the experiments are summarized in Table 1. For the data of Domain, we use the Pfam (protein families version 24.0) [19] official software toolkit (pfam_scan.pl) to search against the HMM (Hidden Markov Models) library of Pfam-A.hmm and Pfam-B.hmm. For each sample the presence or absence of the protein domains is stored as a binary vector.
582
Y. Lu et al. Table 1. Data sets used in the experiments Data set Domain HMM-logE Blast STRING Exp
Number of samples 5030 5885 5885 4683 6108
Number of features 4046 3260 6101 6100 244
HMM-logE data are obtained by using the software toolkit HMMER [20] to calculate the log E-values of each sample against Pfam-A.hmm. Blast data are obtained through GABLAM (Global Alignment from BLAST Local AlignMent) [21], which returns a set of pair wise sequence similarity statistics using the results from a basic BLAST search [22]. Each sample sequence is aligned with all other sequences using GABLAM. Then the negative log E-value is calculated as the score. STRING (Search Tool for the Retrieval of Interacting Genes/Proteins version 8.3) [23] data are downloaded from STRING database. STRING is a database of known and predicted protein interactions of very high quality. For each protein pair, it has an interactive combined score S that ranges from 0 to 1. We extract the yeast data from the database and let one of the interactive protein pair as sample, the other one as the feature. Then we can get the STRING data used in our experiments. We merge the gene expression microarray data from [24] and [25] to obtain the gene expression (Exp) data set, and select the root classes of FunCat with at least 200 positive samples (The “99 UNCLASSIFIED PROTEINS” class does not include.). We thus have 15 functional classes in our analysis. The details about the classes and the positive samples are seen in [26]. 3.2 Experimental Setup and Results
The base learner of our approach is the SVM classifier. We use LIBSVM [27] software toolkit in our paper and modify the source code of LIBSVM, so that it can meet the requirements of our experiments. First of all, we scale all the data to [0, 1] by svm-scale program in LIBSVM and find out that the performance of the classification can be improved and the computing time can be also reduced. The parameters of SVM are optimized by the modificatory grid.py in LIBSVM. Then we applied 10-fold cross-validation method to each data set. Except for the Gaussian kernel on Exp data, all others used a linear kernel. We use particle swarm optimization toolbox [28] in MATLAB developed by Prof Brian Birge to optimize the fuzzy density. The goal of PSO is to maximize the value of the fitness function until the value is convergent. We set the number of particle swarm is 24, the number of the particle dimension is 5, the flying range of particle is [0, 1] and the maximum speed of the particle is 0.2. The other parameters are the default values of Brian Birge’s program. The 10-fold cross-validation method is also used in the two data fusion methods. Fig. 1 shows that both of the two Choquet integral fusion methods based on the typical Sugeno λ-measure and our improved Sugeno λ-measure can significantly improve the performance of the prediction. We can also find out that the performance of
Fuzzy Integral Based Data Fusion for protein Function Prediction
583
the prediction based on STRING data is very good (Thirteen of the fifteen classes’ AUC values ranked first in the five independent predictions.), but the performance of the prediction based on the Exp data is very poor (All of the fifteen classes’ AUC values ranked last). On one hand this can prove the high quality of the STING database; on the other hand this can be a proof that the high-throughput data Exp has very high degree of noise.
Fig. 1. Scatter-plot of AUCs of the fusion methods versus SVM predictions of five different data sets. The figure on the left is the comparison of the Choquet integral based on the traditional λ-measure and the five different SVM predictions with each data set. The right one is the comparison of the Choquet integral based on our improved λ-measure and the five different SVM predictions with each data set. The different colors mean different data sets.
Fig. 2. Scatter-plot of AUCs after versus before our improved Sugeno λ-measure. Points above the diagonal correspond to accuracy improvements by our method. The points represent the AUC of the classes.
584
Y. Lu et al.
It can be seen in Fig. 2 that our improved approach increases AUC for 14 of the 15 classes, comparing with the method based on the traditional Sugeno λ-measure. Just only the AUC of class “32” is less than the latter. It can be seen that the performance of our improved approach is better from the overall perspective. We also calculate the variances of the fuzzy density determined by the PSO in the two fusion methods’ 10-fold cross-validation (shown in Table 2). With the limitation of the space, we just list three classes. We find our improved method can achieve more stable values of fuzzy density using an improved fuzzy measure. This maybe one reason our improved method can get a better result. Table 2. The variances of the fuzzy density determined by the PSO in the two fusion methods’ 10-fold cross-validation method Traditional Choquet Improved Choquet
class 01 02 10 01 02 10
HMM-logE 0.001651 0.009529 0.000653 0.000133 0.000201 0.000371
Blast 0.00513 0.03821 0.00193 9.13e-05 0.00163 0.00085
STRING 0.002102 0.069212 0.001528 2.4e-05 0.018385 0.001376
Exp 0.005376 0.003016 0.001796 0.000108 0.008513 0.000269
Domain 0.006567 0.011522 0.001526 4.69e-05 0.000256 0.000571
4 Conclusions In this paper, we use Choquet integral methods to integrate five different data sets. The results of our experiment show that the fusion method can significantly improve the performance of the prediction. The key of the Choquet integral fusion method is the determination of the fuzzy density. We use PSO to resolve this problem. The typical fitness function may make the particles extremely close to zero, so AUC as the fitness function can avoid the problem and achieve a better result. We also find that scaling the data can get a better result and reduce the computing time when the SVM is used. How to calculate the fuzzy measure in a more feasible way in predicting the protein functions will be our further research. Acknowledgements. This work was supported by the Science and Technology Development Plan Project of Jilin Province (No. 20070703, No. 20090501).
References 1. Valentini, G.: True Path Rule Hierarchical Ensembles. In: Benediktsson, J.A., Kittler, J., Roli, F. (eds.) MCS 2009. LNCS, vol. 5519, pp. 232–241. Springer, Heidelberg (2009) 2. Guan, Y., Myers, C.L., Hess, D.C., Barutcuoglu, Z., Caudy, A.A., Troyanskaya, O.G.: Predicting gene function in a hierarchical context with an ensemble of classifiers. Genome Biol. 9(Suppl 1), S3 (2008) 3. Barutcuoglu, Z., Schapire, R., Troyanskaya, O.: Hierarchical multi-label prediction of gene function. Bioinformatics 22(7), 830–836 (2006)
Fuzzy Integral Based Data Fusion for protein Function Prediction
585
4. Xiong, J., Rayner, S., Luo, K., Li, Y., Chen, S.: Genome wide prediction of protein function via a generic knowledge discovery approach based on evidence integration. BMC Bioinformatics 7, 268 (2006) 5. Deng, M., Chen, T., Sun, F.: An integrated probabilistic model for functional prediction of proteins. J. Comput. Biol. 11, 463–475 (2004) 6. Lanckriet, G., Deng, M., Cristianini, N., Jordan, M.I., Noble, W.S.: Kernel-based data fusion and its application to protein function prediction in yeast. Pac. Symp. Biocomput. 9, 300–311 (2004) 7. Chua, H., Sung, W., Wong, L.: An efficient strategy for extensive integration of diverse biological data for protein function prediction. Bioinformatics 23(24), 3364–3373 (2007) 8. Karaoz, U., Murali, T.M., Letovsky, S., Zheng, Y., Ding, C., Cantor, C.R., Kasif, S.: Whole genome annotation using evidence integration in functional linkage networks. Proc. Natl. Acad. Sci. USA 101, 2888–2893 (2004) 9. Chen, Y., Dong, X.: Global protein function annotation through mining genome-scale data in yeast Saccharomyces cerevisiae. Nucleic Acids Res. 32, 6414–6424 (2004) 10. Ruepp, A., Zollner, A., Maier, D., Albermann, K., Hani, J., Mokrejs, M., Tetko, I., Güldener, U., Mannhaupt, G., Münsterkötter, M., Mewes, H.W.: The FunCat, a functional annotation scheme for systematic classification of proteins from whole genomes. Nucleic Acids Res. 32, 5539–5545 (2004) 11. Ashburner, M., Ball, C.A., et al.: Gene Ontology: tool for the unification of biology. The Gene Ontology Consortium. Nat. Genet. 25, 25–29 (2000) 12. Sugeno, M.: Theory of fuzzy integrals and its applications. PhD thesis, Tokyo Institute of Technology, Tokyo, Japan (1974) 13. Choquet, G.: Theory of capacities. Annales de l’Institut Fourier 5, 131–295 (1953) 14. Cho, S.B., Jin, H.K.: Multiple network fusion using fuzzy logic. IEEE Transactions on Neural Networks 6(2), 497–501 (1995) 15. Kennedy, J., Eberhart, R.: Particle swarm optimization. In: Proceedings of the 4th IEEE International Conference on Neural Networks, pp. 1942–1948. IEEE Service Center, Australia (1995) 16. Shi, Y.H., Eberhart, R.C.: A modified particle swarm optimizer. In: IEEE International Conference on Evolutionary Computation, pp. 69–73. IEEE Press, Anchorage (1998) 17. John, A.S.: Signal detection theory and ROC analysis in psychology and diagnostics: collected papers. Lawrence Erlbaum Associates, Mahwah (1996) 18. Fawcett, T.: An introduction to ROC analysis. Pattern Recognition Letters 27, 861–874 (2006) 19. Robert, D., Jaina, M., John, T., Penny, C., Andreas, H., Joanne, E., Pollington, O., et al.: The Pfam protein families database. Nucleic Acids Res. 38, 211–222 (2010) 20. Eddy, S.R.: Profile hidden markov models. Bioinformatics 14(9), 755–763 (1998) 21. Davey, N.E., Shields, D.C., Edwards, R.J.: SLiMDisc: short, linear motif discovery, correcting for common evolutionary descent. Nucleic Acids Res. 34(12), 3546–3554 (2006) 22. Altschul, S.F., Madden, T.L., Schaffer, A.A., Zhang, J., Zhang, Z., Miller, W., Lipman, D.J.: Gapped BLAST and PSI-BLAST: A new generation of protein database search programs. Nucleic Acids Res. 25, 3389–3402 (1997) 23. Jensen, L.J., Kuhn, M., Stark, M., Chaffron, S., Creevey, C., et al.: STRING 8- a global view on proteins and their functional interactions in 630 organisms. Nucleic Acids Res. 37, 412–416 (2009)
586
Y. Lu et al.
24. Spellman, P., et al.: Comprehensive identification of cell cycle-regulated genes of the yeast Saccharomices cerevisiae by microarray hybridization. Mol. Biol. Cell 9, 3273–3297 (1998) 25. Gasch, P., et al.: Genomic expression programs in the response of yeast cells to environmental changes. Mol. Biol. Cell 11, 4241–4257 (2000) 26. MIPS Comprehensive Yeast Genome Database (CYGD) (2011), http://mips.helmholtz-muenchen.de/genre/proj/yeast/ 27. Chang, C.C., Lin, C.J.: LIBSVM: a library for support vector machines (2001), software http://www.csie.ntu.edu.tw/~cjlin/libsvm 28. Birge, B.: PSOt, A Particle Swarm Optimization Toolbox for Matlab. In: Proceedings of IEEE Swarm Intelligence Symposium, pp. 24–26 (2003)
Gene Clustering Using Particle Swarm Optimizer Based Memetic Algorithm Zhen Ji , Wenmin Liu, and Zexuan Zhu Shenzhen City Key Laboratory of Embedded System Design, College of Computer Science and Software Engineering, Shenzhen University, Shenzhen, 518060, China
Abstract. K-means is one of the most commonly used clustering methods for analyzing gene expression data, where it is sensitive to the choice of initial clustering centroids and tends to be trapped in local optima. To overcome these problems, a memetic K-means (MKMA) algorithm, which is a hybridization of particle swarm optimizer (PSO) based memetic algorithm (MA) and K-means, is proposed in this paper. In particular, the PSO based MA is used to minimize the within-cluster sum of squares and the K-means is used to iteratively fine-tune the locations of the centers. The experimental results on two gene expression datasets indicate that MKMA is capable of obtaining more compact clusters than K-means, Fuzzy K-means, and the other PSO based K-means namely PK-means. MKMA is also demonstrated to attain faster convergence rate and more robustness against the random choice of initial centroids.
1 Introduction DNA microarray is a high-throughput technology that gives biologists a large amount of gene expression data for studying the cellular gene expression patterns [1]. Gene expression data is normally arranged as a matrix E = [eij ] of size G × C, where G is the number of genes and C denotes the number of experimental conditions. An element eij represents the corresponding expression level of the i-th gene at the j-th experimental condition. One of the main tasks of microarray data analysis is to identify the co-expressed genes that are likely to have similar biological functions or involve in the same biological process. Clustering techniques are commonly used to fulfil the task by grouping the co-expressed genes into the same cluster. There have existed numerous clustering methods for the analysis of the gene expression data. Hierarchical clustering [2], one of the earliest cluster methods applied on gene expression data, organizes gene in a hierarchical tree using either bottom-up or top-down approach. In bottom-up approach, hierarchical clustering successively merges pairs of clusters together into a single cluster. On the contrary, the top-down approach starts from
This work is sponsored by National Natural Science Foundation of China (60872125 & 61001185), Program for New Century Excellent Talents in University, Fok Ying Tung Education Foundation, Guangdong Natural Science Foundation (10151806001000002) and Shenzhen City Funds for Distinguished Young Scientists. Corresponding author. Tel.: +86 755 26557413, [email protected] Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 587–594, 2011. c Springer-Verlag Berlin Heidelberg 2011
588
Z. Ji, W. Liu, and Z. Zhu
the whole set as a single cluster and successively splits it into small clusters. Hierarchical clustering has achieved promising results on gene clustering yet its hierarchy is greatly affected by minor perturbations of the input data. Self-organizing map (SOM) [3], a kind of artificial neural network, is another widely used clustering algorithm for gene clustering. SOM is a unsupervised learning method based on a mapping from high-dimensional data to a two-dimensional representation space. It is robust against minor changes on the input data. However, it has trouble with identifying clear-cut clusters. K-means [4], one of the simplest partition clustering methods, categories genes into k groups based on inter-gene similarity/distance. The clustering proceeds to minimize the sum of squared distance between genes and the corresponding cluster centroid. K-means tends to obtain better performance and robustness than hierarchical clustering and SOM on gene expression data [5]. However, the performance of K-means is sensitive to the choice of initial clustering centroids and it could easily result in local minima. In this paper, we propose a particle swarm optimizer (PSO) [9] based memetic algorithm (MA) [10] to solve the optimization problem involved in K-means, i.e., the minimization of the sum of squared distances. The new algorithms is named as memetic K-means algorithm (MKMA). MA is a newly proposed synergy of evolutionary population-based global search approaches with local refinement heuristic. It always converges to high-quality solutions more efficiently than its conventional counterpart thanks to the advantage of using both global search and local search. MKMA evolves a particle swarm of candidate clustering solutions rather than concerning only one solution in global search to reduce the dependency of the performance on the initial centroids and avoid being trapped in local optimal. A local search is applied on each particle to refine the solution and accelerate convergence in local region. The experimental results on two gene expression datasets indicate that MKMA is capable of handling high-dimensional multi-modal optimization problems efficiently. The remainder of this paper is organized as follows. Section 2 describes the details of the proposed MKMA. Section 3 presents the experimental design and Section 4 shows the experimental results of the new algorithm on two gene expressing datasets. Finally, Section 5 concludes this study with a short discussion.
2 Methods MA is a framework of combining global search and local search to take the advantage of both. The main inspiration of MA is Dawkins’ notion of “meme”, which defines a unit of cultural evolution and represents the evolution law of human beings. In this study, a MA based K-means clustering method is proposed to accelerate the search convergence of the cluster centroids and increase the possibility of identifying global optima. The procedure of MKMA is outlined in Algorithm 1. 2.1 Particle Encoding and Fitness Calculation In MKMA, each particle is designed to encode candidate positions of K cluster centroids. Each particle is presented as a vector of K × L elements, where L denotes the dimension of a gene. A shortened K-means is performed using the initial centroid
Gene Clustering Using Particle Swarm Optimizer Based Memetic Algorithm
589
Algorithm 1. The procedure of MKMA 1. 2. 3. 4. 5. 6. 7. 8.
Initialize the position and velocity of each particle in the swarm; Update the velocity and position according to Eq.(2); Evaluate the fitness of the particles; Identify the leader and populace particles; Perform local search on the leader particles; Update on the populace particles using three updating strategies; Evaluate the fitness of the particles; Go to step 2 if the stopping criterion is not satisfied.
positions encoded in each particle. The centroids are refined with only three updating iterations as follows: Algorithm 2. A shortened K-means 1. Assign each gene to the closest centroid encoded in the particle; 2. Update the centroid by calculating the new means of the genes in the cluster; 3. Repeat steps 1 and 2 for three times.
More iterations could be applied, whereas our empirical studies show that the performance of MKMA does not improve too much with more than three iterations. Therefore, the number of the iterations is set to three in this study to avoid wasting computational efforts. Once the shortened K-means outlined in Algorithm 2 is finished, the fitness of the renewed particle can be calculated based on the mean square error (MSE): M ˜ = 1 D [d min (xi )]2 M i=1
(1)
where dmin (xi ) denotes the Euclidean distance between genes xi to its closest centroid and M is the total number of genes. 2.2 Global Search The global search in MKMA is conducted with the comprehensive learning particle swarm optimizer (CLPSO) [11]. Using a novel learning strategy whereby all other particles’ historical best information is used to update a particle’s velocity, CLPSO maintains the diversity of the swarm to improve the exploration efficiency of global search. The velocity update equations of CLPSO are defined as: Vik+1 = ωVik + crk (pbest (fi )k − Pik ) Pik+1 = Pik + Vik+1
(2)
where Vik+1 and Pik+1 denote the i-th particle’s velocity and position in iteration k + 1, respectively. Variable ω is an additional inertia weight for balancing the exploration and exploitation on the search space, c is a constant learning factor, r is a random number
590
Z. Ji, W. Liu, and Z. Zhu
in [0,1], and pbest(fi ) represents the the best previous position of particle fi where fid is set to i in a learning probability of Pc , otherwise, two particles are randomly selected from the swarm using tournament selection and fi is assigned the one with better fitness. 2.3 Local Search In each iteration of CLPSO, the particle swarm is partitioned into a leader and a populace group based on fitness value. One third of the best particles in the swarm are considered as leader particles. The remainder particles in the swarm form the populace group. The leader particles are assumed to be closer to the optimal solutions and they are worth spending local refinement to reach the optima. For the conventional PSO [9] has strong ability of exploitation in local region, the local search of MKMA fine-tunes the leader particles based on the updating rules of PSO: Vik+1 = ωVik + c1 r1k (pbestik − Pik ) + c2 r2k (gbest k − Pik ) Pik+1 = Pik + Vik+1
(3)
where c1 and c2 are the learning factors, r1 and r2 are the random values [0, 1], pbesti represents the previous best position of particle i, and gbest denotes the best position of all particles. For the populace particles, they each adopts one of the following three strategies based on the performance improvement of gbest. – Approaching strategy: In this strategy, particle is moved toward gbest based on the updating equation: Pik+1 = Pik + r(gbest k − Pik )
(4)
– Random strategy: In this strategy, particle updates its position randomly to increase the diversity of swarm. The updating equation is defined as follows: Pik+1 = rand (Pmin , Pmax )
(5)
where [Pmin , Pmax ] is the range of particle’s position. – Dispersal strategy: By performing this strategy, the particles push away gbest according to the equation: Pik+1 = Pik − r(gbest k − Pik )
(6)
Let the performance improvement of gbest be δ: δ=
(lastvalue − fitness(gbest )) lastvalue
(7)
where lastvalue denotes the previous fitness value of gbest. The fitness value f itness (gbest) is considered as decreasing fast if δ ≥ 0.01. In that case gbest is probably
Gene Clustering Using Particle Swarm Optimizer Based Memetic Algorithm
591
located in a promising region that is worth more exploration, hence populace particles will adopt approaching strategy and move toward gbest. If δ < 0.001, f itness(gbest) is stagnant, which suggests gbest could be trapped in a local optima, therefore the dispersal strategy is applied to keep the populace particles away from the local optima and search a larger region in the solution space. Otherwise, when δ ∈ [0.001, 0.01), the random strategy is used to increase the diversity of the swarm.
3 Experimental Design To evaluate the performance of MKMA, comparison study to other K-means based algorithms including the conventional K-means, Fuzzy K-Means (FKM) [6] and PKmeans [7] is conducted on two gene expression datasets. FKM extends K-means by assigning each point to more than one clusters in terms of the degree of membership. FKM is less sensitive to the initial partitions but it is much more time-consuming than K-means. PK-means is a newly proposed PSO based K-means for gene clustering. It bridges particle-pair optimizer [8] and K-means to outperform K-means and FKM in terms of convergence rate and computational time. Two datasets are used to evaluate the performance of the clustering algorithms: – Yeast cell-cycle data [12] consists of 6179 genes and 77 dimensions. Genes missing more than 20% were deleted and 5571 genes are obtained after processing and filtering. For the genes retained for analysis, missing values were imputed by KNN algorithm [13]. – Sporulation data [14] contains 6120 genes with 7 dimensions. It assays nearly every yeast gene changes in gene expression during sporulation. After processing and filtering procedure, there are 6039 genes retained for analysis. The number of clusters K for all clustering algorithms is set to 256 on each dataset. The parameters of PK-means are set according to [7]. For K-means, FKM, and MKMA the iterations are terminated if the following condition holds. ˜ (k−1) − D ˜ (k) ) (D ≤ε ˜ (k) D
(8)
where D˜k is the mean square error (defined in Eq. 1) in iteration k. The key parameter values used in K-means, FKM, PK-means and MKMA are listed in Table 1. The other parameters of CLPSO are set according to [11].
4 Results 4.1 Mean Square Error, Homogeneity and Separation ˜ , the other two indices, homogeneity(D1) and separation(D2), In addition to MSE D are also introduced for measuring the clustering performance. Homogeneity calculates the average distance between each gene expression profile and its closest controid as follows: 1 D1 = d(xi , c(xi )) (9) M i
592
Z. Ji, W. Liu, and Z. Zhu Table 1. Parameter values Algorithms
ε
K-means FKM PK-means MKMA
0.001 – 0.001 10 – – 0.001 –
λ
ω
c
c1
c2
– – 0.1 0.1
– – – 0.3
– – 0.3 0.3
– – 0.5 0.5
where xi is the i-th gene, c(xi ) is the i-th center of the cluster, and d is the Euclidean distance function. Separation is calculated as the weighted average distance between cluster centers: 1 D2 = NCi NCj d(Ci , Cj ) (10) i=j NCi NCj i=j
where Ci and Cj represent the centers of the i-th and j-th clusters, respectively. NCi and NCj denote the number of genes in the i-th and j-th clusters, respectively. D1 reflects the compactness of the clusters while D2 reflects the overall distance ˜ or increasing D2 suggests an improvement in between clusters. Decreasing D1 and D the clustering results. Table 2. MSE, homogeneity and separation Dataset Yeast cell-cycle
Lymphoma
˜ Algorithm D
D1
D2
K-means FKM PK-means MKMA
5.73 6.58 5.52 5.48
2.30 2.44 2.29 2.28
3.16 2.77 3.20 3.22
K-means FKM PK-means MKMA
23.38 24.39 21.44 21.21
4.59 4.66 4.47 4.45
7.49 7.11 7.62 7.66
The average MSE, homogeneity and separation values over 10 random runs of the four comparing clustering algorithms are summarized in Table 2. It is shown that MKMA attains competitive or better performance than K-means, FKM, and PK-means in terms of inter- and intra-cluster distance. 4.2 Sensitivity to the Choice of Initial Centroids To evaluate the sensitive of the final clustering performance to the choice of initial centroids. The four algorithms are randomly run 10 times with different initial centroids. The results shown in Fig.1 indicate that the performance of both PK-means and MKMA is less sensitive to different selections of initial clustering centroids than K-means and FKM. MKMA is observed to obtain smaller MSN than other three clustering methods.
Gene Clustering Using Particle Swarm Optimizer Based Memetic Algorithm
593
26.5
7.2
K−means FKM PK−means MKMA
7
FKM PK−means MKMA
6.8
25
6.6
24.5
MSE(dB)
MSE(dB)
K−means
26 25.5
6.4
6.2
24 23.5 23
6 22.5
5.8 22
5.6
5.4
21.5 21
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
Number of runs(10 runs)
Number of runs(10 runs)
(a) MSE plots on yeast cell-cycle data (b) MSE plots on lymphoma data Fig. 1. MSE plots by 10 randomly runs on (a) yeast cell-cycle data (b) lymphoma data
4.3 Convergence Rate The convergence trace of all algorithms is depicted in Fig.2, where MSE value is plotted against the number of iterations on updating the centroid positions. It can be seen that MKMA converges faster to better MSE values than the other three clustering algorithms on the two datasets. 37
21.5
K−means
K−means
21
36
FKM 20.5
FKM PK−means
PK−means MKMA
MKMA
35
19.5
MSE(dB)
MSE(dB)
20
19
34
33
18.5
18
32
17.5
31 17
16.5
0
5
10
15
20
25
30
Number of iterations
35
30
0
5
10
15
20
25
30
35
Number of iterations
(a) MSE plots on yeast cell-cycle data (b) MSE plots on lymphoma data Fig. 2. MSE plots by iterations on (a) yeast cell-cycle data (b) lymphoma data
5 Conclusion and Discussion This paper presented a novel memetic K-means algorithm (MKMA) for gene expression data. MKMA applies particle swarm optimized based memetic algorithm to solve the optimization problem of K-means. The experimental results on two gene expression datasets suggest that MKMA consistently attain competitive or better performance than K-means, FKM, and PK-means. MKMA is demonstrated to be less sensitive to the initial clustering centroids, and it has fast convergence rate.
594
Z. Ji, W. Liu, and Z. Zhu
References 1. Schena, M., Shalon, D., Davis, R.W., et al.: Quantitative Monitoring of Gene Expression Patterns with a Complementary DNA Microarray. Science 270(5235), 467–470 (1995) 2. Milligan, G.W., Cooper, M.C.: A Study of the Comparability of External Criteria for Hierarchical Cluster Analysis. Multivariate Behavioral Research 21, 441–458 (1986) 3. Fritzke, B.: Growing Cell Structures-a Self-organizing Network for Unsupervised and Supervised Learning. Networks 7, 1141–1160 (1994) 4. MacQueen, J.B.: Some Methods for Classification and Analysis of Multivariate Observations. In: Proceedings of 5th Berkeley Symposium on Mathematical Statistics and Probability, pp. 271–297. University of California Press, Berkeley (1967) 5. Thalamuthu, A., Mukhopadhyay, I., Tseng, G.C.: Evaluation and Comparison of Gene Clustering Methods in Microarray Analysis. Bioinformatics 22(8), 2405–2412 (2006) 6. Gasch, A.P., Eisen, M.B.: Exploring the Conditional Coregulation of Yeast Gene Expression through Fuzzy K-means Clustering. Genome Biology 3(11), 1–22 (2002) 7. Du, Z.H., Wang, Y.W., Ji, Z.: PK-means:a New Algorithm for Gene Clustering. Computatoinal Biology and Chemistry 32, 243–247 (2008) 8. Ji, Z., Liao, H.L., Xu, W., Jiang, L.: A Strategy of Particle-pair for Vector Quantization in Image Coding. Acta Electron. Sin. 35(7), 86–89 (2007) 9. Kennedy, J., Eberhart, R.C.: Particle Swarm Optimization. In: Proceedings of IEEE International Conference on Neural Network, pp. 1942–1948. IEEE Service Center, Piscataway (1995) 10. Moscato, P.: Memetic Algorithm: a Short Introduction. McGraw-Hill, London (1999) 11. Liang, J.J., Qin, A.K., et al.: Comprehensive Learing Particle Swarm Optimizer for Global Optimization of Multimodal Functions. IEEE Transactions on Evolutionary Computation 10(3), 281–295 (2006) 12. Spellman, P.T., et al.: Comprehensive Identification of Cell Cycle-regulated Genes of the Yeast Saccharomyces Cerevisine by Microarray Hybridization. Mol. Biol. Cell 9, 3273–3297 (1998) 13. Troyanskaya, O., Cantor, M., Sherlock, G., Brown, P., Hastie, T., Tibshirani, R., Bostein, D., Altman, R.B.: Missing Value Estimation Methods for DNA Microarrays. Bioinformatics 17, 520–525 (2001) 14. Chu, S., et al.: The Transcriptional Program of Sporulation in Budding Yeast. Science 282, 699–705 (1998) 15. Alizadeh, A.A., et al.: Distinct Types of Diffuse Large B-cell Lymphoma Identified by Gene Expression Profiling. Nature 403, 503–511 (2000)
Hybrid Particle Swarm Optimization with Biased Mutation Applied to Load Flow Computation in Electrical Power Systems Camila Paes Salomon, Maurilio Pereira Coutinho, Germano Lambert-Torres, and Cláudio Ferreira Federal University of Itajuba, Av. BPS, 1303, Pinheirinho, 37.500-503, Itajuba, MG, Brazil {camsalomon,maurilio.coutinho,germanoltorres}@gmail.com, [email protected]
Abstract. This paper presents the implementation of a Hybrid Particle Swarm Optimization with Biased Mutation (HPSOBM) algorithm to solve the load flow computation in electrical power systems. The load flow study obtains the system status in the steady-state and it is widely used in the power system operation, planning and control. The proposed methodology is applied in a different computational model, which is based on the minimization of the power mismatches in the system buses. This new model searches for a greater convergence, and also a larger application in comparison with traditional numerical methods. In order to illustrate the proposed algorithm some simulations were conducted using the IEEE 14 bus system. Keywords: Particle Swarm Optimization, Load Flow, Computation, Artificial Intelligence, Electrical Power Systems.
Evolutionary
1 Introduction Modern operation centers have managed electrical power systems remotely and automatically, accomplishing functions such as automatic generation control, state estimation, topology analysis, etc [1]. The load flow studies are required by most of these functions. Load flow is an electrical engineering known problem which determines the power system operation point in the steady-state [2]. The load flow – or power flow – algorithm calculates the buses voltages and the amount of power in the system generation buses as well as the power flow in the system branches. A set of non-linear equations is applied to model this kind of problem, which is commonly solved using numerical methods [3]. Among the traditional numerical methods used for load flow computation the Newton-Raphson approach has a better and a faster convergence. However, such method has some difficulties because of the complex Jacobian matrix calculation and inversion and also the dependence on good initial estimated values to guarantee the convergence. Moreover, some present changes in the power system characteristics, such as an occurrence of a higher R/X ratio, may Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 595–605, 2011. © Springer-Verlag Berlin Heidelberg 2011
596
C.P. Salomon et al.
complicate the load flow convergence [6]. Thus these difficulties have been inducing the researches to concentrate efforts in order to develop alternative methods to solve the load flow equations. These new methods look for an easier and a more efficient implementation and less computational time, as well as overcoming some possible limitations and convergence problems. Many of these new methods have applied artificial intelligence techniques. Many researchers in the area of artificial intelligence have been putting their attentions in the computational intelligence algorithms, and Particle Swarm Optimization (PSO) is pointed out among these techniques. PSO algorithms are applied in function optimization and they are based on the behavior of birds’ flocks searching for food [10]. PSO has been applied in several themes related to electrical power systems and they have provided good convergence properties, ease of implementation and good computational time [5]. In [7] the author approaches the PSO to the load flow calculation in shipboard systems. In [5,8,14] the authors propose the PSO application to the optimal power flow (OPF) problem. In [11] the author proposes a PSO methodology applied to power system restoration. In [12] it is presented the PSO applied to voltage and reactive power control. Besides PSO application, many researches have been implementing hybrid models, joining PSO with other techniques, for instance the Genetic Algorithm (GA) operators. In [4] it is proposed a Hybrid PSO with Mutation applied to loss power minimization, and in [6] it is presented a chaotic PSO algorithm with local search to the load flow calculation, overcoming some limitations found in the traditional methods. The paper proposes the application of a Hybrid Particle Swarm Optimization with Biased Mutation (HPSOBM) algorithm to the load flow computation. This methodology is based on the minimization of the apparent power mismatches in the system buses. The involved variables are continuous and must remain within the specified boundaries in the system input data. Experiments for the proposed methodology were accomplished using the IEEE 14-bus system using the software implemented.
2 Power System Load Flow Analysis The power flow study provides the system status in the steady-state; it consists in the determination of the possible power system operational states through the previous knowledge of some variables of the system buses. This study aims to obtain the system buses voltages in order to determine later the power adjustments in the generation buses and the power flow in the system branches [3]. After the system steady-state is calculated, it is possible to obtain the amount of power generation necessary to supply the power demand plus the power losses in the system branches. Besides, the voltage levels must remain within the boundaries and overloaded operations added to those in the stability limit must be prevented [3]. The general form of the Static Load Flow Equations (SLFE) is given by (1): Pi − jQi − yi1V1Vi * − yi 2V2Vi * −...− yinVnVi * = 0 .
(1)
Hybrid Particle Swarm Optimization with Biased Mutation
597
where: i = 1,..., n, bus number; Pi = active power generated or injected in the bus i; Qi = reactive power generated or injected in the bus i; |Vi| = voltage module of the bus i; δi = voltage angle of the bus i; Vi = |Vi|ejδi, i. e., the voltage in the polar form; Vi* = |Vi|e-jδi, i. e., the conjugate voltage; yik = element of the nodal admittance matrix Ybus. The nodal admittance matrix can be computed as follows: if i = k, yik is the sum of the admittances that come out from the bus i; else yik is the admittance between the buses i and k, multiplied by -1. The power system buses are classified according to the variables previously known and to the variables that will be calculated later through the SLFE. Type 1 Bus or PQ Bus: Pi and Qi are specified and |Vi| and δi are calculated; Type 2 Bus or PV Bus: Pi and |Vi| are specified and Qi and δi are calculated; Type 3 Bus or Vδ Bus (“Slack Bus”): |Vi| and δi are specified and Pi and Qi are calculated. A complex and non-linear equations system is represented by (1), so its solution is obtained through approximations using numeric methods. These methods make the assumption of the initial estimate values to the bus voltages and in the application of the SLFE in successive iterations, looking for better approximations. The required accuracy determines the stop criterion.
3 Hybrid Particle Swarm Optimization with Biased Mutation Applied to Load Flow Computation Swarm Intelligence is a kind of Artificial Intelligence based on social behavior, i. e., the behavior of the animals living in groups and having some ability to interact among each other as well as with the environment in which they are inserted [10,15]. PSO is an optimization algorithm developed through the simulation of simplified social models as bird flocks flying randomly in search for food [10,15]. PSO is applied to function optimization and it uses a population of individuals, i. e., a set of particles, where each particle is a candidate to the solution of the problem. These particles are distributed in the search space, each one having a determined position and velocity at each time instant. Moreover, such particles have knowledge about their performances and also about their neighbors’ performances. The best individual position of a particle is called personal best, and the best position of all the particles is called global best. The rule function is the evaluation function which performs the interaction between the particles and the environment in which they are inserted, and it is related to the problem modeling [10,15]. The PSO algorithm analyzes, at each time step, the displacement of each particle in search for the best position and updating its velocity and position through defined equations. This process is iterative and it proceeds until all the particles converge to the achieved global best, which is adopted as the problem solution. 3.1 Mutation Operation in Genetic Algorithms Genetic Algorithm (GA) is a search heuristic iterative procedure that uses a population of individuals, in which each one represents a possible solution to the treated
598
C.P. Salomon et al.
problem [16,17]. It is based on Darwin’s natural selection, inspired by the evolution process [18]. The GA accumulated information is applied to decrease the search space and create new good solutions to the problem domain [19]. The GA mutation operation is used in order to cover better the state space and also to prevent the GA from converging to a local best. The mutation is performed by mutating the individual gene value in a random way with a determined probability, i. e., some individuals of the new population may have one of their genes – or nature – randomly modified [19]. 3.2 Definition of the Proposed Algorithm The presented HPSOBM (Hybrid Particle Swarm Optimization with Biased Mutation) algorithm is based on the minimization of the power mismatches in the system buses. The methodology consists in the adoption of initial estimated values for the particles positions, which are defined as the buses voltages, and updating them at each process’ iteration using the HPSOBM equations. Once particles are defined as the buses voltages, they assume continuing values within the boundaries specified in the input data. The rule function parameters are defined as grades and they must be minimized in the HPSOBM algorithm. The grades are computed as the arithmetic mean of the buses apparent power. Each particle has a personal grade, i. e., the value obtained by its personal best. The global grade is the grade associated to the global best. The current grade is the grade obtained by a particle at the current iteration of the process. The algorithm begins generating the initial estimate value to the position of the particles, velocities, personal best values and global best values. The voltage angle begins with a random initial value within the specified boundary. In the case of a PQ bus, the voltage module begins with a random value within the specified boundary; for a PV bus, the voltage module receives the related value specified in the input data. The initial velocities are null. The personal best parameters start with the position of the particle values and the global best parameter starts with an arbitrary particle value. The grades begin with high values in order to be minimized later. Thus the iterations are initialized. The procedure explained as follows is executed for each particle of the population, which was fixed in 15 particles. Firstly the buses voltages start with the position of the particle. Thus the reactive power of the PV buses is computed using equation (1), then the active and reactive power of the Vδ bus are also computed using (1). The power flow in the system branches is calculated using the equation (2).
Sij = Pij + jQij = Vi (Vi * −Vj*)Yij * +ViVi * Ysh,i .
(2)
where: Sij = complex apparent power between the buses i and j; Pij = active power between the buses i and j; Qij = reactive power between the buses i and j; Vi = bus i voltage; Vj = bus j voltage; Vi* = |Vi|e-jδi, i. e., the conjugate voltage; Vj* = |Vj|e-jδj, i. e., the conjugate voltage; Yij = admittance between the buses i and j; Ysh,i = shunt admittance of the bus i.
Hybrid Particle Swarm Optimization with Biased Mutation
599
The active and reactive power mismatches of each bus are calculated as the sum of the injected power in the approached bus and the apparent power mismatches arithmetic mean is obtained. It is also obtained the particle position which has the worst – the biggest – power mismatch until now. This particle index is kept and it is used in the mutation operation. The personal best updating verification is made. After all the particles pass through the described routine, it is made the global best updating verification. The velocities as well as the position of the particles are updated according to the equations (3), (4) and (5); which are, respectively: velocities equation, positions equation and inertia weight equation, applied to each particle [4,9-11].
v(t + 1) = w.v(t ) + c1 .r1 .( p(t ) − x(t )) + c 2 .r2 .( g (t ) − x(t )) .
(3)
x( t + 1 ) = x( t ) + v( t + 1 ) .
(4)
w = wmax
( w − wmin ).t − max . ni
(5)
where: i = particle index; t = iterations counter; ni = total number of iterations; v(t) = particle i velocity at iteration t; x(t) = particle i position at iteration t; r1, r2 = random numbers between 0 and 1; c1, c2 = acceleration coefficients, both set to a value of 2.0; p(t) = particle i personal best found at iteration t; g(t) = global best found at iteration t; w = velocity equation’s inertia weight, wmax = inertia weight maximum value, set to a value of 0.7; wmin = inertia weight minimum value, set to a value of 0.2. Then, the mutation operation is applied. This operation aims to coverage better the problem domain and to obtain a new particle, avoiding a premature convergence to a local best point. The mutation is applied to the worst particle of the current iteration, i. e., the particle which has the bigger power mismatch value, and because of this philosophy it is called Biased Mutation. The procedure consists in adding a random value to the particle voltage module and angle, according to (6).
mx(k) = x(k) + 0.1.[(xmax − xmin ).r + xmin ] .
(6)
where: k = mutated particle index; x(k) = particle position before the mutation operation; mx(k) = particle position after the mutation operation; r = random number between 0 and 1; xmax = maximum value of the position, related to the specified boundary in the input data; xmin = minimum value of the position, related to the specified boundary in the input data. Finally, in the end of the iterations, it is obtained the final global best, which is adopted as the load flow solution. It is important to notice that the HPSOBM methodology can achieve several acceptable results for the same load flow study, depending on the simulation. It occurs because each particle has a random initial estimate value and the HPSOBM equations also make use of random values, so several solutions can
600
C.P. Salomon et al.
be achieved for the same initial estimative. However, numeric traditional methods start with the same initial estimative values and achieve the same final results, regardless of the program simulation.
4 Numerical Results The results obtained through the proposed HPSOBM algorithm are presented in this section. The IEEE 14 bus test system, Fig. 1, is used for this purpose. The transformers taps were kept in the rated positions. The implemented version of this algorithm obtains the power flow solution based on the minimization of the power mismatches in the system buses. Tables 1 and 2 present the power flow results for the test system, obtained through a conventional program applying the Newton-Raphson method. Two different and arbitrary simulations were accomplished using the proposed methodology, simulation 1 and simulation 2. Tables 3 and 4 present the results related to the simulation 1 and Tables 5 and 6 are related to the simulation 2. Each simulation has a different solution for the power flow due to the HPSOBM algorithm nature. The solutions are valid because the values are still within the permitted limits.
Fig. 1. IEEE 14-bus test system, with all system buses, branches and elements
The odd-numbered tables contain the results related to the system buses. The three last columns of the table represent the active, reactive and apparent power mismatches, respectively. The even-numbered tables represent the results related to the system branches. These tables show the power flow in the system lines computed for the voltage solutions found in each simulation.
Hybrid Particle Swarm Optimization with Biased Mutation
601
Table 1. Simulation using Newton-Raphson method: buses parameters results. k = bus index, Vk = bus voltage module k, δk = bus voltage angle k, Pk = active power generated at bus k, Qk = reactive power generated at bus k, ΔPk = active power mismatch at bus k, ΔQk = reactive power mismatch at bus k, ΔSk = apparent power mismatch at bus k. k 1
Vk 1,060000
δk 0,000000
Pk 2,304174
Qk -0,222584
ΔPk -5,551115E-16
ΔQk 1,856154E-15
ΔSk 1,937384E-15
2 3 4
1,045000 1,010000 1,026000
-0,085521 -0,219911 -0,181514
0,183000 -0,942000 -0,478000
0,169491 0,009071 0,039000
-2,771615E-02 -4,235448E-03 6,141135E-02
-3,025358E-15 1,000935E-15 -2,113986E-03
2,771615E-02 4,235448E-03 6,144773E-02
5 6 7
1,033000 1,070000 1,045000
-0,155334 -0,260054 -0,233874
-0,076000 -0,112000 0,000000
-0,016000 0,422322 0,000000
-4,482804E-02 1,697325E-02 -4,328546E-03
-6,610994E-03 4,607426E-15 -3,045509E-04
4,531290E-02 1,697325E-02 4,339247E-03
8 9 10
1,090000 1,028000 1,028000
-0,233874 -0,261799 -0,267035
0,000000 -0,295000 -0,090000
0,278456 -0,166000 -0,058000
2,954397E-17 -2,019721E-02 8,420636E-03
1,887379E-15 5,011505E-03 -6,329197E-03
1,887610E-15 2,080968E-02 1,053403E-02
11 12 13
1,045000 1,053000 1,046000
-0,265290 -0,274017 -0,274017
-0,035000 -0,061000 -0,135000
-0,018000 -0,016000 -0,058000
-1,657940E-03 -2,235718E-03 -7,457740E-03
2,750084E-03 -1,006758E-04 9,407115E-03
3,211188E-03 2,237984E-03 1,200465E-02
14
1,018000
-0,286234
-0,149000
-0,050000
4,933314E-03
-5,509430E-03
7,395364E-03
Table 2. Simulation using Newton-Raphson method: power flow in the system lines. Pij (ji) = active power in the line composed by the buses i-j (j-i), Qij (ji) = reactive power in the line composed by the buses i-j (j-i). i 1 1 2 2 2 3 4 4 4 5 6 6 6 7 7 9 9 10 12 13
j 2 5 3 4 5 4 5 7 9 6 11 12 13 8 9 10 14 11 13 14
Pij 1,543861 0,760313 0,728546 0,567517 0,416914 -0,232213 -0,645319 0,268329 0,152088 0,458441 0,076296 0,077887 0,175285 0,000000 0,272658 0,057411 0,092532 -0,041123 0,018347 0,063506
Qij -0,198190 -0,024394 0,035980 -0,064999 -0,068200 -0,005567 0,042655 -0,086193 0,002419 -0,127633 0,098133 0,034114 0,108958 -0,266960 0,165293 -0,021441 -0,004325 -0,073412 0,016599 0,053193
Pji -1,502260 -0,732515 -0,705552 -0,550264 -0,407722 0,235755 0,650624 -0,268329 -0,152088 -0,458441 -0,075014 -0,077111 -0,172824 0,000000 -0,272658 -0,057298 -0,091499 0,041672 -0,018225 -0,062434
Qji 0,266711 0,085256 0,014638 0,080890 0,058911 0,001343 -0,025924 0,101972 0,009805 0,181117 -0,095449 -0,032499 -0,104112 0,278456 -0,155051 0,021741 0,006520 0,074699 -0,016489 -0,051011
602
C.P. Salomon et al.
Table 3. Simulation 1 using the proposed HPSOBM algorithm: buses parameters results k 1
Vk 1.060000
δk 0.000000
Pk 2.325316
Qk -0.225075
ΔPk -5.551115E-16
ΔQk 1.162265E-15
ΔSk 1.288025E-15
2 3 4
1.045000 1.010000 1.026096
-0.086509 -0.220486 -0.180923
0.183000 -0.942000 -0.478000
0.180537 0.010455 0.039000
-5.203014E-09 -3.729702E-09 -3.670963E-08
2.414735E-15 1.306247E-15 -4.293257E-08
5.203014E-09 3.729702E-09 5.648719E-08
5 6 7
1.032600 1.070000 1.044823
-0.156152 -0.259695 -0.234759
-0.076000 -0.112000 0.000000
-0.016000 0.416080 0.000000
-1.587668E-06 8.960580E-09 3.180789E-08
-2.858496E-06 -4.996004E-16 -1.617875E-07
3.269815E-06 8.960580E-09 1.648847E-07
8 9 10
1.090000 1.027653 1.027578
-0.234759 -0.263027 -0.267366
0.000000 -0.295000 -0.090000
0.279552 -0.166000 -0.058000
8.644264E-10 2.065322E-07 2.813536E-05
2.220446E-15 -3.049806E-06 -2.468896E-04
8.644264E-10 3.056791E-06 2.484876E-04
11 12 13
1.044961 1.053019 1.046237
-0.265533 -0.274361 -0.274686
-0.035000 -0.061000 -0.135000
-0.018000 -0.016000 -0.058000
1.956981E-08 5.053687E-08 3.074048E-08
-3.222618E-08 -3.887773E-08 -6.885231E-08
3.770284E-08 6.376090E-08 7.540304E-08
14
1.017448
-0.286134
-0.149000
-0.050000
6.936667E-07
-3.002547E-06
3.081633E-06
Table 4. Simulation 1 using the proposed HPSOBM algorithm: power flow in the system lines i 1 1 2 2 2 3 4 4 4 5 6 6 6 7 7 9 9 10 12 13
j 2 5 3 4 5 4 5 7 9 6 11 12 13 8 9 10 14 11 13 14
Pij 1.560964 0.764352 0.726414 0.558508 0.416501 -0.238447 -0.609731 0.275863 0.155486 0.453131 0.079140 0.080392 0.181599 0.000000 0.275863 0.047841 0.088508 -0.042265 0.018582 0.062537
Qij -0.202203 -0.022872 0.036191 -0.063507 -0.065740 -0.003414 0.042531 -0.084462 0.003514 -0.129759 0.097005 0.032875 0.103930 -0.267966 0.166972 -0.016977 -0.001790 -0.074936 0.015190 0.056035
Pji -1.518423 -0.736257 -0.703553 -0.541802 -0.407340 0.242183 0.614468 -0.275863 -0.155486 -0.453131 -0.077840 -0.079582 -0.179070 0.000000 -0.275863 -0.047764 -0.087565 0.042840 -0.018467 -0.061436
Qji 0.273593 0.084979 0.013869 0.077735 0.056373 -0.000318 -0.027590 0.100993 0.009264 0.182269 -0.094283 -0.031190 -0.098949 0.279552 -0.156494 0.017183 0.003796 0.076283 -0.015086 -0.053793
Hybrid Particle Swarm Optimization with Biased Mutation
603
Table 5. Simulation 2 applying the HPSOBM algorithm: buses parameters results k 1 2 3 4 5 6 7 8 9 10 11 12 13 14
Vk 1.060000 1.045000 1.010000 1.026146 1.032639 1.070000 1.044870 1.090000 1.027724 1.027643 1.044996 1.053017 1.046248 1.017493
δk 0.000000 -0.086423 -0.220338 -0.180739 -0.155997 -0.259436 -0.234460 -0.234460 -0.262667 -0.266990 -0.265215 -0.274104 -0.274417 -0.285812
Pk 2.323085 0.183000 -0.942000 -0.478000 -0.076000 -0.112000 0.000000 0.000000 -0.295000 -0.090000 -0.035000 -0.061000 -0.135000 -0.149000
Qk -0.224850 0.179706 0.010169 0.039000 -0.016000 0.415807 0.000000 0.279258 -0.166000 -0.058000 -0.018000 -0.016000 -0.058000 -0.050000
ΔPk -2.220446E-16 1.146248E-09 2.729703E-09 -7.088421E-04 3.467779E-08 3.487077E-07 -9.817892E-07 -4.714854E-08 -8.835327E-04 -4.628260E-04 -7.659737E-09 7.420782E-05 3.224100E-06 8.714802E-09
ΔQk 3.132911E-15 -3.330669E-16 1.042569E-15 -1.718341E-04 -7.061203E-09 -2.331468E-15 -2.709120E-07 8.881784E-16 -3.555616E-04 -1.307619E-04 -2.820208E-10 -4.456680E-06 -2.196902E-07 -2.711772E-08
ΔSk 3.140769E-15 1.146248E-09 2.729703E-09 7.293724E-04 3.538940E-08 3.487077E-07 1.018481E-06 4.714854E-08 9.523938E-04 4.809434E-04 7.664927E-09 7.434153E-05 3.231576E-06 2.848366E-08
Table 6. Simulation 2 applying the HPSOBM algorithm: power flow in the system lines i 1 1
j 2 5
Pij 1.559486 0.763599
Qij -0.201857 -0.022993
Pji -1.517027 -0.735560
Qji 0.272997 0.084870
2 2 2
3 4 5
0.726093 0.557887 0.416047
0.036223 -0.063657 -0.065857
-0.703251 -0.541217 -0.406905
0.013754 0.077773 0.056430
3 4 4
4 5 7
-0.238749 -0.609044 0.275302
-0.003585 0.042557 -0.084483
0.242494 0.613770 -0.275302
-0.000125 -0.027650 0.100953
4 5 6
9 6 11
0.155173 0.452695 0.078798
0.003450 -0.129649 0.096978
-0.155173 -0.452695 -0.077503
0.009275 0.182056 -0.094265
6 6 7
12 13 8
0.080403 0.181494 0.000000
0.032877 0.103896 -0.267695
-0.079593 -0.178967 0.000000
-0.031191 -0.098920 0.279258
7 9 9
9 10 14
0.275303 0.047684 0.088676
0.166743 -0.016850 -0.001765
-0.275303 -0.047607 -0.087730
-0.156304 0.017055 0.003779
10 12 13
11 13 14
-0.041930 0.018518 0.062368
-0.074924 0.015196 0.056013
0.042503 -0.018404 -0.061270
0.076265 -0.015092 -0.053779
It is possible to test the effectiveness of the proposed methodology analyzing the obtained power mismatches, which must be as small as possible. The voltage modules obtained through the Newton-Raphson based program have accuracy until the third decimal place, so it obscures a direct comparison between the power mismatches obtained through conventional method and through the proposed methodology, because the power mismatches accuracy also depends on the voltage modules accuracy. The HPSOBM proposed algorithm presents voltage modules and angles very close to those found using the Newton-Raphson method and the power mismatches are well
604
C.P. Salomon et al.
minimized, most of the obtained values are smaller than the tolerance usually accepted, which is about 10-4. Therefore, the proposed methodology efficacy is proved, because it provides results that are better or as good as those obtained using the Newton-Raphson based program.
5 Conclusion The paper presents a load flow solution methodology based on a Hybrid Particle Swarm Optimization with Biased Mutation (HPSOBM) algorithm. The methodology was tested for the IEEE 14-bus system through the developed computational program. The main advantages of the proposed methodology are the flexibility of implementation and its better convergence. Analyzing the results for the simulations, it is possible to conclude that the proposed methodology presents acceptable solutions for the buses power mismatches and the results are also better or as good as those obtained through Newton-Raphson method. The proposed methodology computational implementation is simpler than the Newton-Raphson method computational implementation. It is proposed for the future works an improvement in the proposed algorithm in order to achieve lower mismatches in the cases which they were about 10-3 or 10-4 and also to evaluate its applicability in cases where the traditional methods fail or have difficult convergence. Acknowledgments. The authors would like to thank CNPq, CAPES, and FAPEMIG Brazilian research funding agencies, for the research scholarships, which supported this work.
References 1. Paucar, V.L., Rider, M.J.: On The Use of Artificial Neural Networks for Enhanced Convergence of the Load Flow Problem in Power Systems. In: Proceedings of Intelligent Systems Applications to Power Systems, ISAP 2001, vol. 1, pp. 153–158 (2001) 2. Stott, B.: Review of Load Flow Calculation Methods. IEEE Proceedings 62, 916–929 (1974) 3. Elgerd, O.I.: Electric Energy Systems Theory: An Introduction. McGraw-Hill Publishing Co. Ltd, New York (1975) 4. Esmin, A.A.A., Lambert-Torres, G., Zambroni de Souza, A.C.: A Hybrid Particle Swarm Optimization Applied to Loss Power minimization. IEEE Transactions on Power Systems 20(2), 859–866 (2005) 5. Swarup, K.S.: Swarm Intelligence Approach to the Solution of Optimal Power Flow. J. Indian Inst. Sci. 86, 439–455 (2006) 6. Acharjee, P., Goswami, S.K.: Chaotic Particle Swarm Optimization Based Reliable Algorithm to Overcome the Limitations of Conventional Power Flow Methods. In: Proceedings of Power Systems Conference and Exposition, Digital Object Identifier: 10.1109/PSCE.2009.4839945 (2009) 7. Wang, C., Liu, Y., Pan, X.X.: Load Flow Calculation of Integrated Shipboard Power System Based on Particle Swarm Optimization Algorithm. In: Proceedings of the International Conference on Test and Measurement, ICTM 2009 (2009)
Hybrid Particle Swarm Optimization with Biased Mutation
605
8. Oumarou, I., Jiang, D., Yijia, C.: Particle Swarm Optimization Applied to Optimal Power Flow Solution. In: Proceedings of 2009 Fifth Conference on Natural Computation, vol. 3, pp. 284–288 (2009) 9. Lambert-Torres, G., Martins, H.G., Coutinho, M.P., Salomon, C.P., Matsunaga, F.M., Carminati, R.A.: Comparison between PSO and GA in System Restoration Solution. In: Proceedings of 15th Conference on Intelligent System Applications to Power Systems, ISAP 2009, pp. 1–6. IEEE Press, Curitiba (2009) 10. Kennedy, J., Eberhart, R.: Swarm Intelligence. Morgan Kaufmann Publishers, San Francisco (2001) 11. Lambert-Torres, G., Martins, H.G., Coutinho, M.P., Salomon, C.P., Filgueiras, L.S.: Particle Swarm Optimization Applied to Restoration of Electrical Energy Distribution Systems. In: Kang, L., Cai, Z., Yan, X., Liu, Y. (eds.) ISICA 2008. LNCS, vol. 5370, pp. 228–238. Springer, Heidelberg (2008) 12. Yoshida, H., Kawata, K., Fukuyama, Y., Takayama, S., Nakanishi, Y.: A Particle Swarm Optimization for Reactive Power and Voltage Control in Electric Power Systems Considering Voltage Security Assesment. IEEE Transactions on Power Systems 15(4), 1232– 1239 (2001) 13. Wood, A.J., Wollenberg, B.F.: Power Generation, Operation and Control, 2nd edn. John Wiley & Sons Ltd, Chichester (1996) 14. Onate, P.E., Ramirez, J.M.: Optimal Power Flow Solution with Security Constraints by a Modified PSO, Power Engineering Society General Meeting. In: 2007 IEEE, Digital Object Identifier: 10.1109/PES.2007.386005 (2007) 15. Kennedy, J., Eberhart, R.: The Particle Swarm: Social Adaptation of Knowledge. In: Proc. IEEE International Evolutionary Computation ICEC 1997, Indianapolis, USA, pp. 303– 308 (1997) 16. Beasley, D., Bull, D., Martin, R.: An Overview of Genetic Algorithms: Part 1, Fundamentals, Technical Report, Inter-University Committee on Computing (1993) 17. Goldberg, D.E., Holland, J.H.: Genetic Algorithms and Machine Learning: Introduction to the Special Issue on Genetic Algorithms. Machine Learning 3 (1988) 18. Davies, L.: Handbook of Genetic Algorithms. Van Nostrand Reinhold, New York (1991) 19. Lambert-Torres, G., Martins, H.G., Coutinho, M.P., Borges da Silva, L.E., Matsunaga, F.M., Carminati, R.A., Cabral Neto, J.: Genetic Algorithm to System Restoration. In: 2009 World Congress on Electronics and Electrical Engineering, WCEEENG 2009, Cairo, Egypt (2009)
Simulation of Routing in Nano-Manipulation for Creating Pattern with Atomic Force Microscopy Using Hybrid GA and PSO-AS Algorithms Ahmad Naebi1, Moharam Habibnejad Korayem2, Farhoud Hoseinpour3, Sureswaran Ramadass3, and Mojtaba Hoseinzadeh1 1
Qazvin Islamic Azad University, Qazvin, Iran College of Mechanical Engineering, Iran University of Science & Technology,Tehran, Iran 3 National Advanced IPv6 Centre, Universiti Sains Malaysia, Penang, Malaysia [email protected], [email protected], [email protected], [email protected], [email protected] 2
Abstract. Avoiding collision of nano-particles during manipulation operations and selecting the best route and lowest Atomic Force Microscopy (AFM) movement are major concerns in the area of nano-space. To apply the lowest force on the cantilever from fluid environment forces, we try to minimize AFM movements. Our proposed method calculates the optimum routing for AFM probe movement for nano-particles transmission using hybrid GA (Genetic algorithm) and PSO-AS (Particle Swarm Optimization- Ant System) simulates it in various type of medium. We consider the collision of the probe with minor barriers. An optimized AFM path minimizes the time and energy required for nano-particle manipulation. For movement of the nano-particles, we seek an efficient probe pattern. A second goal is to transfer the nano-particles without undesired collision. The optimum routing method will increase the speed of the process. Our proposed model, utilizes both Mathematical and Matlab software to simulate the process. Keywords: Simulation, Routing, Nano-manipulation, GA and PSO-AS, Creating Pattern, Atomic Force Microscopy.
1 Introduction Nanoparticles are suitable units to be used in nano-structures. Also, we can use AFM manipulator in order to create patterns of nano-particles. Furthermore, AFM capability in imaging of the surfaces and in nano-particle manipulation makes it an effective tool to be exploited in creating nano-particles patterns [1]. AFM is used as a simple nano-manipulator for guiding nano-particles movement on surfaces. In this study, we have defined nano-particles as having a radius RP and with the capability of being absorbed in substrate and ridden by an AFM probe under particular liquid environmental conditions. In order to ride the particles, the tip of the probe must be in contact with the particle. So, for the safety of this contact under particular conditions, a basic jump, ZP0, should be verified through system feedback. Different steps of nanomanipulation of a particle movement are shown in Figure.1 [2, 3]. Figure 1 shows states of manipulation using probe of AFM in contact mode. Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 606–615, 2011. © Springer-Verlag Berlin Heidelberg 2011
Simulation of Routing in Nano-manipulation for Creating Pattern
607
Using an optimal routing algorithm, we can manipulate nano-particles quickly and, without any collision, can create patterns in various types of environments. In this article, we'll focus on creating patterns in almost any environment. At first nanoparticles are randomly distributed in the environments. Creating patterns for routing is performed by using hybrid GA and PSO-AS without any collision, hence no nano-particle collides with another.
Fig. 1. The strategy of pushing with AFM in Contact model[3]
2 View of Dynamic Modeling In nano-manipulation processes, the probe is considered to be a cylinder [4]. The involved forces between probe and cantilever and also between probe and nanoparticle are illustrated in Figures 2 respectively. As displayed in these figures, there are 3 forces applied on the cantilever and the probe: Fx, Fy, and Fz.
Fig. 2. Cantilever and probe bending along y-z axes (right) and x-z axes (left) during pushing nano objects in air [4]
608
A. Naebi et al.
Dynamic equations are developed based on the free body diagram (FOB) of pushing system, including AFM cantilever and probe, nano-particle and substrate. Fig. 3 presents the FOB of probe of AFM in contact with particle. Total steps of manipulation under fluid conditions are illustrated in figure 3 All of the forces including fluid, frictional, and adhesive forces on the tip of the cantilever are calculated [5, 6].
Fig. 3. Flowchart of dynamic modelling algorithm in pushing nano-particle [3]
3 GA and PSO Algorithms PSO is an optimization algorithm innovated by Kennedy and Eberhart in 1995 and inspired by swarm intelligence. A swarm is a group of particles with each particle containing position and velocity vectors [7, 8, 9]. The “basical” PSO equation, where the position and velocity represent physical attributes of the particles, is represented
Simulation of Routing in Nano-manipulation for Creating Pattern
609
by (1) and (2) [9]. Calculating a single Particle’s New Velocity (1) and Moving of a single Particle in a swarm (2) Vt+1 =C1Vt+C2(Pig-Xt)+C3(P∀g -Xt) Xt+1 =Xt+Vt+1
(1) (2)
The Genetic Algorithm (GA) has been suggested using Darwin’s evolution theory and a searching process based on the natural selection and genetics lows. GA is considered as one of the best algorithms for optimization problems. [10, 11]. Often, all of simple GA consists of three operations: Selection, Genetic Operation, and Replacement [10]. The operations which are used in genetic algorithm are crossover and mutation. 3.1 Description of Hybrid Algorithms Expressing a route: Any-member of the population could be considered as a route. A route consists of a set of nano-particles which forms our patch. These nano-particles are to migrate from their current location to another destination. A group of nanoparticles in a patch form a route between the source and destination, instead of transferring only one nano-particle through a route. In fact instead of covering the patch by nano-particles, probe of AFM routes all through the patch. Some of the nano-particles and nodes are the destinations of other nano-particles. Figure 4.A shows an example of members used in this method, which included information of nano-particle’s position and their potential destination.
Fig. 4. An example of member (including nano-particles with yellow color and place for transfer nano-particles with green color)
Coding members: Assume an environment with 5 nodes to detect the environment. First five nodes are used for nano-particles position and five next nodes are used as their destinations. For example nano-particles has been transferred as following (4 to 5,1 to 2, 3 to 1, 2 to 5,5 to 3). As it is shown in figure 4.B, red lines are nano-particle positions and blue lines are their destinations. Structure of PSO-AS [9]: When a connection request arrives at the ingress node, a predetermined number of particles are created. Each particle in the algorithm contains a random general route that presents the location of the nano-particle using a specific route from source to destination. So, after initial random assignment of the routes, each particle will have a position. Equation 2 is used to update the fitness value of all the particles. The particle
610
A. Naebi et al.
with the lowest fitness value in the current iteration is marked as global best. The lowest value met by the particle through its travel from start to current iteration is marked as a local best [9]. Every particle will then have its new velocity calculated. This will take it to the new position (i.e. establish a new route with new source and its potential destination) given by equation 3. The velocity is represented as a sequence of nodes in a particular order, and is calculated according to equations 3 and 4, in a step-by-step manner as in Ant Systems. Equation 3 will find just one member (next node to go) of the new velocity sequence, in a single step [9]. Vt+1 =Nk+1+Nk+2
∀k = 1 to D-2 where N=Source Node and N=Destination Node. if η ≤ C ⎧ P∀ g , t − ω t 3 ⎪ ⎪ if η > C & η ≤ C + C ⎪ Pi g , t − ω t 3 2 3 ⎪ N = ⎨ a Selection if η > C +C & η ≤ C +C +C ⎪ Rand 2 3 1 2 3 ⎪ where C + C + C = 100 % ⎪ 1 2 3 ⎪ ⎩ where ...
(3)
(4)
a = k + 1, k + 2
After calculating the new velocity Vt+1, each particle will update its current position Xt by using (2). When the particle has moved to a new position, the fitness value of the particle is updated according to (5) [9]. F(x) =β*(hop-count)+(1-β)(Fw/W)
(5)
β is an algorithm parameter. Fw is the number of free nano-particles and distances available on the route. W is the calculated total number of nano-particle distances. Table I summarizes all of parameters used in PSO-AS [9]. Describing the algorithm[12]: We select first node of the member as first node of the route. Then we create a random number for selecting destination node. If the random number be less than C3, we'll select destination node of the global best. A destination node will be selected from global best (best member) which is existed in the global best (have not selected before, and are peer to peer). If the random number is more than C3 and less than C2+C3, we will select destination node of the local best. A destination node will be selected from the local best which is existed in the local best (have not selected before, and are peer to peer). If destination have not selected in above conditions, we will randomly select a destination node which have not selected before. For the next node above steps will be repeated but source and destination positions will be changed. This method will be used for all of nodes including nano-particle positions and destinations.
Simulation of Routing in Nano-manipulation for Creating Pattern
611
Structure of Genetic: Crossover: First, we select a random number. If it be less than a const, Crossover will done in left portion of selected position in a chromosome. If it be more than const, Crossover will done in right portion of selected position in a chromosome. Crossover in left portion of a member don’t use nodes of same member that are in right portion of it, only the nodes are exchanged that are in left portion. Crossover in right portion of a member don’t use nodes of same member that are in left portion it, only the nodes are exchanged that are in right portion (Fig. 5.A) . Crossover was done for position and destination of members. Position and destination of member is showed with yellow and blue color in figure 5.A.
Fig. 5. A) Crossover of self-left nano-particles (nodes of yellow color). B) Mutation do in a member(in position and destination ).
Mutation: First, we select a random number. If, it be less than 5%, mutation will be done. In mutation, we select two number as random and exchange them. We do the mutation separately for position and destination nano-particles. (Fig.5.B) Four parts in both algorithms are identical: 1. Route length: In this step route length is calculated for each member. Then all of them will be saved in 1st column of the fitness array. 2. Total collisions: If a nano-particle is too close to another nano-particle moving route and the distance is less than a certain value, collision will be occurred. For each member total collisions are calculated. Then all of them will be saved in 2nd column of the fitness array. 3. Selecting the global best of current state: If two or more of members have equal number of collisions and number of collisions is the lowest among other members, we will select the route with minimum route length. But, if we have just one member with fewer collisions, we will select it, because having fewer collisions has high priority of less route length (Fig. 6.Left). 4. Selecting global best: We have the global best which is the best member till former stage. If the best member of this stage is better than the global best, we will replace the global best with it. There are three cases for this replacement you can see in fig. 7.
612
A. Naebi et al.
Fig. 6. Select best member of fitness in a stage and Change local best if possible
Fig. 7. Select best global best
Simulation of Routing in Nano-manipulation for Creating Pattern
613
Selecting the local best: If the local best of each member is worse than the created route for each member in this stage, we will replace the local best with created route as shown in fig. 6.right. Collision detection: Shorter path between two nanoparticles is obtained from the following equation: Dic _ Crash =
( Y CrashPo
int
− Y otherparti
cle
)2 + ( X
CrashPo
int
− X
otherparti
cle
)2
(6)
4 Simulation in Mathematical We have designed a simulation model for transferring nano-particles in nano-scale in Mathematica software. This simulation covers all parts of Figure 1 and all formulas of section 2 used in the simulation.Figures 8 and 9 are a view of this simulation. At first we locate the probe of AFM in (20μm,20μm,20μm). Then it is moved to first nanoparticle. After creating the pattern the prove go back back to First place.
Fig. 8. Veiw of simulation in micro-scale in water
Fig. 9. Veiw of simulation in nano-scale in air and water
614
A. Naebi et al.
5 Simulation of Creating Pattern First, we distributed 15 nano-particles in small range of a 1000×1000 nm environment. Nano-particles were created in Mathematica and the routing algorithm was simulated in a Matlab environment. We manipulated nano-particles to create a pattern. You can see a pattern with shape of (A) as well as the state of routing in Figure 10. Secod, we distributed 10 nano-particles in the same environment. You can see a pattern with shape of (B) as well as the state of routing in Figure 11. For finding best routing, we have run 100 iteratoin with 200 member for 10 nano-particles and have run 500 iteratoin with 200 member for 15 nano-particles. But
Fig. 10. manipulation nanoparticles for creating pattern(A)
Fig. 11. manipulation nanoparticles for creating pattern(B)
Simulation of Routing in Nano-manipulation for Creating Pattern
615
when nano-particles of a pattern are more than 15 nano particle, total iteration will be more. In fact total iteration with different nano particle is different. In this study, we have run once GA and once PSO-AS until finished total iterations.
6 Conclusions Using our model, transferring of nano-particles for creating the patterns is performed faster using optimized routes for the nano-particles. The advantage of our method is collision avoidance, so AFM doesn’t need to image again. In this manner, we further reduce the time required for creating patterns. The simulation also helps us in understanding the pattern creation process and, therefore, the micro and nano-scale. This method of creating patterns is performed in less time and with less applied force. Nano-particles will find best location for transfer. Future work will be done this way: Also in order to create the new nano-instrument in air or fluid environments, our simulation models can be used to facilitate the experiment and their functionality without damaging the real instruments.
References 1. Fotiadis, D., Scheuring, S., Muller, S.A.: Imaging and Manipulation of Biological Structures with the AFM. Micron 33, 385–397 (2002) 2. Sitti, M., Hashimoto, H.: Force Controlled pushing of nano particles: modeling and experiments. IEEE/ASME Trans. on Mechatronics 5, 199–211 (2000) 3. Korayem, M.H., Naebi, A., Esmaeilzadeha, S., Shahri, A.M.: Tele-operated Nanomanipulation in Liquid Environment with Atomic Force Microscopy. In: Proceedings of the 4th Asia International Symposium on Mechatronics (AISM 2010), AISM 2010 Organizers (2010) ISBN: 978-981-08-7723-1 4. Sitti, M., Tafazzoli, A.: Dynamic Behavior And Simulation Of Nanoparticle Sliding During Nanoprobe-Based Positioning. In: Proceedings Of IMECE 2004 ASME International Mechanical Engineering Congress Anaheim, CA, November 13-19 (2004) 5. Dr Erts. Study of the nano scale contacts with the help of combine TEM-AFM technique and theoretical MD-TM calculation. Department of Engineering, Physics, and Mathematics, Mid Sweden University 6. Sitti, M., Hashimoto, H.: Force controlled pu shing of nanoparticles: modeling and experiments. IEEE/ASME Trans on Mechatronics (2000) 7. Eberhart, R.C., Kennedy, J.: A new optimizer using particle swarm theory. In: Proceedings of the Sixth International Symposium on Micromachine and Human Science, Nagoya, Japan, pp. 39–43 (1995) 8. Eberhart, R.C., Kennedy, J.: A new optimizer using particle swarm theory. In: Proceedings of the Sixth International Symposium on Micromachine and Human Science, Nagoya, Japan, pp. 39–43 (1995) 9. Hassan, A., Phillips, C., Pitts, J.: Dynamic Routing and Wavelength Assignment using Hybrid Particle Swarm Optimization for WDM Networks, © PGNet (2007) ISBN: 1-90256016-7 10. Tang, K.S., Man, K.F., Kwong, S., He, Q.: Genetic Algorithms and their Applicaition. IEEE Signal Processing Magazine (1996) 11. Nagib, G., Ali, W.G.: Network Routing Protocol using Genetic Algorithms. International Journal of Electrical & Computer Sciences IJECS-IJENS 10(02)
Neural Fuzzy Forecasting of the China Yuan to US Dollar Exchange Rate ⎯ A Swarm Intelligence Approach Chunshien Li1, Chuan Wei Lin1, and Hongming Huang2 Laboratory of Intelligent Systems and Applications 1 Department of Information Management 2 Department of Financial Economics National Central University, Taiwan, R.O.C. [email protected]
Abstract. Exchange rate fluctuation has a significant effect on the risk of marketing business, economic development and financial stability. Accurate prediction for exchange rate may reduce commercial and economic risk arisen by exchange rate fluctuation. In this study, we propose an intelligent approach to the forecasting problem of the CNY-USD exchange rate, where a neurofuzzy self-organizing system is used as the intelligent predictor. For learning purpose, a novel hybrid learning method is devised for the intelligent predictor, where the well-known particle swarm optimization (PSO) algorithm and the recursive least squares estimator (RLSE) algorithm are involved. The proposed learning method is called the PSO-RLSE-PSO method. Experiments for time series forecasting of the CNY-USD exchange rate are conducted. For performance, the intelligent predictor is trained by several different methods. The experimental results show that the proposed approach has excellent forecasting performance. Keywords: time series forecasting, neuro-fuzzy system (NFS), particle swarm optimization (PSO), recursive least-squares estimator (RLSE), hybrid learning, self-organization.
1 Introduction Exchange rate systems can be divided into the categories of floating rate and fixed rate. Before the collapse of Bretton Wood System [1], banks adopted the fixed exchange rate system. After 1973, many countries have turned to adopt floating exchange rate. Since the floating exchange rate is changeably fluctuated, it may induce impact and risk on international trade, economic investment, and financial stability. Changes of exchange rate may come up with opportunity and risk. How to reduce the risk is a very interesting research topic. Many factors can affect exchange rates, for example, inflation rates, government intervention and economic growth [2]. The historical records in time sequential order of an exchange rate can be viewed as a time series [3]. Based on a prediction model, time series forecasting is to forecast future trend or change, based on past known observations. Several approaches have been presented to predict exchange rate in literature [4]-[7]. Neural fuzzy system (NFS) approach [8] is one of the major methods. Many machineY. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 616–625, 2011. © Springer-Verlag Berlin Heidelberg 2011
Neural Fuzzy Forecasting of the China Yuan to US Dollar Exchange Rate
617
learning algorithms can be used to adjust the parameters of a NFS for application, such as, particle swarm optimization (PSO) [9] [10] [11], genetic algorithm (GA) [12], simulated annealing [13], simplex method [14], and downhill climbing method [15]. In this study, we use the theory of neuro-fuzzy system (NFS) to design an intelligent predictor for the time series forecasting problem of the CNY-USD exchange rate. In the NFS-based intelligent predictor, there are several fuzzy If-Then rules. The fuzzy rule can be divided into the Mamdani type and the Takagi-Sugeno (T-S) type [16] [17]. The difference between them lies on the Then-parts of the fuzzy rules. The Then-part of a TS fuzzy rule is a function of inputs while a Mamdani fuzzy rule has a fuzzy set for its Then-part. Because T-S fuzzy rules possess greater capability of nonlinear functional mapping for applications than Mamdani fuzzy rules, we use T-S fuzzy rules for the NFS-based predicting approach in this study. For the formation of the NFS-based predictor in the study, there are two learning stages, the structure learning stage and the parameter learning stage. For the structure learning stage, we use a Fuzzy C-Means (FCM) based clustering method [18] to automatically determine the optimal number of fuzzy rules for the NFS-based predictor. Note that clusters generated the clustering method are regarded as fuzzy rules, based on the concept of input space partition. For the parameter learning stage, we develop a hybrid learning method, called the PSORLSE-PSO method, to fine-tune the parameters of the predictor. The hybrid learning method includes the well-known particle swarm optimization (PSO) algorithm and the recursive least squares estimator (RLSE) algorithm [16] [19]. In a hybrid way, the PSO algorithm updates the premise parameters of If-Then fuzzy rules, and the RLSE algorithm adjusts the consequent parameters. Afterward, the premise parameters are fixed, and the PSO algorithm is used again to update the consequent parameters, based on the result by the RLSE. With the PSO-RLSE-PSO hybrid learning algorithm, the intelligent can make better prediction accuracy. In Section 2, the proposed methodology is specified, including the theory of NFS, the hybrid learning method and the FCM-based clustering algorithm for selforganization of the NFS-based predictor. In Section 3, experiments for the China Yuan (CNY) to US Dollar (USD) exchange rate forecasting by the proposed approach and the compared approaches are conducted, and the experimental results are given. Finally, a discussion is given is given and the paper is concluded.
2 Methodology of the Proposed Approach 2.1 Theory of Neuro-Fuzzy System (NFS) The theory of fuzzy sets and fuzzy logic can be used to transform the experience of experts and knowledge into fuzzy If-Then rules, which are usually with uncertain information and imprecise expression. Fuzzy systems using this excellent property are usually known as an excellent problem-solving paradigm. Artificial neural networks have strong learning capability and they can adaptively learn to find hidden information and they have made great progress for extreme learning machines [20] [21]. Both of fuzzy systems and neural networks are universal approximator, by which any function can be approximated to any accuracy theoretically [22] [23].Integrating the advantages of fuzzy system and neural network, a NFS [10] [16]
618
C. Li, C.W. Lin, and H. Huang
is a fuzzy inferential neural system, which can handle with complex issues. Suppose that there are K Takagi-Sugeno (T-S) type fuzzy rules [17] in a NFS. The ith fuzzy IfThen rule can be expressed as follows. Rule i:
IF
and … and
is
Then
is
(1)
for i=1,2,…,K, where H(t)=[h1(t) h2(t) … hM(t)]T is the crisp input vector to the NFS at time t, {xi, i=1,2,…,M} are the input linguistic variables, { , j=1,2,…,M} are the premise fuzzy sets of the ith fuzzy rule, is the output, and { , j=0,1,…,M } are the consequent parameters. Note that in the study the inputs are from historical data of exchange rate time series. The fuzzy inference of fuzzy system can be cast into neural-net structure with five layers to become the NFS [10] [16] [24] [25]. The explanation for the structure of NFS layer by layer is specified as follows. Layer 1: This layer is called the fuzzy-set layer. There are several nodes in the layer. Each node of the layer represents a fuzzy set in an input universe, by which the measured crisp input is transformed into fuzzy value. Each node output is a membership degree. In the study, fuzzy sets are designed using the Gaussian type membership function, given below. Gaussian
exp
1 2
(2)
where h is a base variable, {m, } are the mean and spread. Layer 2: This layer is called the firing-strength layer. The premise parts of fuzzy rules are formed in this layer. The nodes of the layer perform product operation (for t-norm operation) to calculate the firing strengths of the fuzzy rules, which are written as ∏ , i=1,2,…,K. Note that { , j=1,2,…,M} are the premise fuzzy sets of the i-th fuzzy rule specified in (1) and designed in (2) in the study. Layer 3: This layer is normalization layer. The nodes in the layer perform the process of normalization for the firing strengths of the fuzzy rules, given below. ∑
(3)
Layer 4: This layer is called the consequent layer. The nodes perform normalized consequents of all the fuzzy rules. Each node output represents a normalized consequent of fuzzy rule, given below. t
(4)
for i=1,2,…,K. Layer 5: This layer is called the output layer. The number of nodes is equal to that of the NFS outputs. In the study, we need one node only, which combines the node outputs of Layer 4 to produce the forecast for the CNY-USD exchange rate by the NFS output below.
Neural Fuzzy Forecasting of the China Yuan to US Dollar Exchange Rate
619
∏ ∑
(5)
∏
2.2 Clustering for Self-organization of the NFS Predictor A Fuzzy C-means (FCM) based clustering method is used the self-organization of the intelligent NFS based predictor, by which the optimal number of fuzzy rules are automatically determined. The FCM algorithm, derived from K-means algorithm, was first proposed by Dunn and Bezdek [26]. Although FCM is better than K-means, but it still needs to enter a preset number of clusters for clustering. Haojun et al. improved this drawback and proposed the FCM-based splitting algorithm (FBSA) [18], which is based on the FCM method and a cluster validity index [27]. The FBSA can select the optimal number of clusters in between two preset positive integers, Cmin and Cmax which are the minimal and maximal numbers of clusters for the algorithm. The FBSA algorithm is given below. Step1: Preset Cmin and Cmax. Step 2: initialize Cmin cluster centers (V). Step 3: Do for-loop c = Cmin to Cmax; 3.1: apply the FCM algorithm to update the membership matrix U and the cluster centers, , , , , , , , is the j-th cluster center; 3.2: test for convergence; if where , , , no, go to 3.1; 3.3: compute a validity value Vd(c); 3.4: compute a score S(i) for each cluster; split the worst cluster. Step 4: Compute the optimal number cf such that the cluster validity index Vd(cf) is optimal. The validity index Vd(.) is defined as follows. , ,
(6a) 1
∑
(6b)
(6c)
where
,
,
,
,
∑
,
,
,
, and n is the total number of data vectors in a given data set. Note that Scat(c) represents the compactness among obtained clusters, whose range is between 0 and 1, and Sep(c) represents the separation among the clusters. 2.3 Parameter Learning with PSO-RLSE-PSO Hybrid Learning Method Particle Swarm Optimization (PSO) [9] is a swarm-based optimization algorithm, motivated by the food searching behavior by bird flocking or fish schooling in a society-oriented pattern. For a bird swarm, each bird is regarded as a particle whose location is viewed as a candidate solution to the problem. The search movement of the ith particle of the swarm is affected by two factors, the particle’s best location in its
620
C. Li, C.W. Lin, and H. Huang
experience and the swarm’s best location during the search, denoted by Pbesti and Gbest, respectively. Assume that the search space is with Q dimensions. The location and velocity of the ith particle at time t are denoted as Xi(t) and ψi(t), respectively. The PSO algorithm is given by the following equations. 1
(7a) 1
(7b)
where w in the inertia factor, {c1,c2} are the learning rates, { , } are random uniformly between 0 and 1. The procedure of PSO algorithm is given as follows. Step 1: initialize the position and velocity of particles. Step 2: calculate fitness for current position with fitness function f(.). Step 3: update position and velocity of each particle. Step 4: If f(Pbesti) gets improved, then update Pbesti. Step 5: If f(Pbesti) < f(Gbest), then update Gbest. Step 6: If termination condition is met, stop. Otherwise, go to Step 3 and the procedure continues. In the general least squares estimation (LSE) problem, a linear model can be described as follows [19]. (8) where , , , is the Q-dimensional input to the model, y is the observed data corresponding to the input u, { , , , are known functions of u, , , , are the parameter vector to be estimated, and ε is the model error. Note that the contents of the vector can be viewed as the consequent parameters of the NFS predictor for the problem of time series forecasting. Observed data can be collected and used as training data for the proposed NFS predictor. The training data set with m data pairs is denoted as {(uj, yj), j=1,2,…,m}, where (uj, yj) is the j-th data pair in the form of (input, target). With the training data set, the LSE problem can be written in matrix form, given below. (9) , , , , , , , and A is the matrix formed by , 1,2, … , and 1,2, … , . We denote the kth row of A and Y as [akT,yk]. Recursively, the optimal estimation for can be obtained by the method of recursive least squares estimator (RLSE) [16], given below.
where
1
(10a) (10b)
for k=0,1,…,m-1. Initially, we set to zero vector and , where α is a large positive number and I is the identity matrix. The optimal estimator for is obtained after the last pair of training data (um, ym) is done.
Neural Fuzzy Forecasting of the China Yuan to US Dollar Exchange Rate
621
Table 1. Settings for PSO and RLSE PSO Swarm size Initial particle position Initial particle velocity {w, c1, c2}
125 Random in [0, 1] Random in [0, 1] {0.8, 2, 2}
RLSE Consequent parameters 12 12×1 zero vector , I
10
Identity matrix
In the study, a hybrid learning method is devised for the parameter learning of the proposed NFS predictor, based on the result of self-organization by the FBSA clustering method to determine the optimal number of fuzzy rules for the intelligent predictor. There are two stages for the parameter learning. In stage 1, the PSO method is used to adapt the premise parameters of the NFS predictor and the RLSE method is use to update the consequent parameters. Both methods cooperate in hybrid way for fast learning purpose in the first stage. In stage 2, based on the result of the PSORLSE learning in the first stage, the PSO method is used again in the second stage to update the consequent parameters while the premise parameters are kept fixed. This two-stage learning method is called the PSO-RLSE-PSO method, for which the procedure is arranged below. Step 1. Step 2. Step 3. Step 4. Step 5.
Initialize necessary settings for the PSO and RLSE methods (in stage 1). Adapt the premise parameters of the NFS predictor by the PSO algorithm Update the consequent parameters by the RLSE algorithm. Calculate forecast error , where is the observed at time t and is the forecast by the NFS predictor. Calculate root mean squared error (RMSE), based on {e(t), t=1,2,…m}, as follows.
RMSE
Step 6. Step 7.
Step 8. Step 9.
∑
(11)
Update Pbest (for each particle) and Gbest for PSO. If termination condition for the PSO-RLSE learning (stage 1) is met, go to Step 8 to proceed to stage 2 of the parameter learning. Otherwise, go back to Step 3. Adapt the consequent parameters by the PSO (in stage 2). Calculate RMSE for all particles of the PSO. Update Pbest and Gbest. If termination condition for the PSO (stage 2) is met, then stop. Otherwise, go back to Step 8 and the procedure continues.
622
C. Li, C.W. Lin, and H. Huang
3 CNY-USD Exchange Rate Forecasting by the Proposed Approach The dataset recording the daily exchange rate of China Yuan (CNY) to US Dollar (USD) from 2006/01/01 to 2007/12/31 are obtained [28]. The dataset is normalized to [0, 1], from which the first 730 data are used as the training data and the rest 365 data are for testing purpose. For the proposed NFS predictor, the input vector is arranged as H(t)=[y(t-1), y(t-2)]T and the target is y(t), where t is the time index. The FBSA clustering method is used for self-organization of the predictor to automatically determine the optimal number of fuzzy rules. Each cluster generated by the clustering method corresponds to a fuzzy If-Then rule. For the generated clusters, the cluster centers and their spreads in standard deviation are used for the initial settings of the premise fuzzy sets of the fuzzy rues. For parameter learning, the RMSE is used for the cost function. For the FBSA clustering method, the Cmin and Cmax are given as 2 and 10, respectively. After clustering, the curve of validity index versus cluster number is shown in Fig. 1, by which the optimal number of clusters is six. Thus, there are six rules generated automatically for the NFS predictor. The settings for PSO and RLSE are given in Table 1 and the parameters of the proposed PSO-RLSE-PSO are shown in Table 2. For the CYN-USD exchange rate forecasting, the NFS predictor with four PSO Prediction curve 1.5 Test predict series fact series 1
0.8
Exchange rate
validity index
1
0.6
0.4
0.5
0.2
0
2
3
4
5
6
7
8
9
10
0
486
Number of Clusters
Iteration
Fig. 1. Validity index versus cluster number by Fig. 2. Predicting response by the NFS the FBSA clustering method predictor with six fuzzy rules (with PSO learning method only) PSO-RLSE-PSO Prediction curve
PSO-RLSE Prediction curve
1
1 Test predict series fact series
Training
Test predict series fact series
Testing
0.8
0.8
0.7
0.7
Exchange rate
Exchange rate
Training
Testing
0.9
0.9
0.6
0.5
0.4
0.6
0.5
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
486
Iteration
0
486
Iteration
Fig. 3. Predicting response by the NFS Fig. 4. Predicting response by the NFS predictor with six fuzzy rules (with PSO- predictor with six fuzzy rules (with PSORLSE learning method) RLSE-PSO learning method)
Neural Fuzzy Forecasting of the China Yuan to US Dollar Exchange Rate
623
rules is trained by the PSO method only, the PSO-RLSE method, and the PSO-RLSEPSO method, respectively. Ten trials are conducted for each experiment. The learning iterations for PSO and PSO-RLSE are set to 1000 and 500, respectively. The forecasting accuracy in RMSE for the training and testing are summarized in Table 2 for performance comparison. Table 2. Parameters after learning by the PSO-RLSE-PSO Premise-part = is m σ
Parameter Rule 1 Rule 2 Rule 3 Rule 4 Rule 5 Rule 6
0.7273
Parameter Rule 1 Rule 2 Rule 3 Rule 4 Rule 5 Rule 6
is
and
-6.5392
m
σ
-3.006
-1.0228
2.32606
-9.0054
-4.2367
-1.5436
-9.3967
-3.1629
5.4079
3.5961
-3.4467
1.1636
3.3745
2.8554
-10.5639
2.5563
9.2401
0.3268
7.9862
1.6916
-10.4697
-3.3565
a0
Consequent-part = a0+a1h1(t)+ a2h2(t) a1
a2
-0.2478
-0.0592
0.9167
-0.0371
0.1809
0.6538
0.5980
0.1124
0.6040
0.2942
0.5874
0.5094
-9.0993e-06
-0.0438
-0.0010
0.9698
0.0017
0.0003
Table 3. Forecasting performance comparison in RMSE (mean/std) Method
PSO
PSO-RLSE
PSO-RLSE-PSO
Training phase
0.1036/0.0696
0.0509/0.0484
0.0397/0.0126
Testing phase
0.1434/0.3048
0.0333/0.0316
0.0277/0.0022
Note that above results are based on ten trials.
4 Discussion and Conclusion The self-organization neural fuzzy approach to the forecasting problem of the CNYUSD exchange rate has been presented. The design of the NFS-based predictor includes the structure-learning (self-organization) phase and the parameter learning phase. In the structure learning phase, there are no fuzzy rules at beginning. The NFSbased predictor is formed by the FBSA clustering method to automatically determine the optimal number of fuzzy If-Then rules and their complexity. After this, the parameter learning phase follows to fine-tune the predictor for good forecasting performance. There are three machine-learning methods used for parameter learning,
624
C. Li, C.W. Lin, and H. Huang
Which are the PSO method, the PSO-RLSE method and the PSO-RLSE-PSO method. Although the PSO learning algorithm can adapt the predictor for the problem, the forecasting performance is merely plain. This could be because the parameter space was large, formed by the premise parts and the consequent parts, and the PSO might not easy to find the optimal or near-optimal solution. We further devised the PSORLSE hybrid learning method to train the NFS predictor and found the forecasting performance in accuracy got much improved, as shown in Table 3. The forecasting improvement may thank to the divide-and-conquer concept, based on which the PSORLSE method is devised. The parameter space was divided into two subspaces, the subspace of the premise parameters and the subspace of the consequent parameters. The PSO and the RLSE were used in hybrid way to search for the optimal solution, as stated previously. The PSO-RLSE method adapted the NFS predictor for forecasting not only in performance improvement but also in fast learning convergence. For this study, we further proposed the PSO-RLSE-PSO method to train the predictor to further improve the forecasting performance, and it worked, as shown in Table 3. The idea for the method is that based on the result by the PSO-RLSE, the PSO is used to further update the consequent parameters for better performance, while the premise parameters are fixed. Although the RLSE is good for linear regression model, it may not be good enough for the nonlinear forecasting problem, such as the CNY-USD exchange rate, which is usually fluctuated constantly and sometimes vibrated radically. This motivates the further use of PSO to the improvement search for the consequent parameters. Thus, the proposed PSO-RLSE-PSO method not only can preserve the merit of the PSO-RLSE method but also can deal with nonlinear forecasting problem with better performance. The contribution of this research is three-fold. Firstly, the structure of the knowledge base in terms of fuzzy If-Then rules for the NFS-based intelligent predictor is automatically determined by the FBSA clustering method. Secondly, the innovation of the swarm-intelligence-based PSO-RLSE-PSO method is devised and applied successfully to the intelligent predictor for the nonlinear forecasting problem of the CNY-USD exchange rate. Thirdly, through performance comparison, excellent performance by the proposed approach has been shown. Acknowledgment. This research work is supported by the National Science Council, Taiwan, ROC, under the Grant contract no. NSC99-2221-E-008-088.
References 1. Bordo, M.D., Eichengreen, B.J.: A retrospective on the Bretton Woods system: lessons for international monetary reform. University of Chicago Press, USA (1993) 2. Bodie, Z., Kane, A., Marcus, A.J.: Essentials of Investments. McGraw-Hill/Irwin, Boston (2004) 3. Hong, Y., Lee, T.H.: Inference on predictability of foreign exchange rates via generalized spectrum and nonlinear time series models. The Review of Economics and Statistics 85, 1048–1062 (2003) 4. Molodtsova, T., Papell, D.H.: Out-of-sample exchange rate predictability with Taylor rule fundamentals. Journal of International Economics 77, 167–180 (2009) 5. Leu, Y., Lee, C.P., Jou, Y.Z.: A distance-based fuzzy time series model for exchange rates forecasting. Expert Systems with Applications 36, 8107–8114 (2009)
Neural Fuzzy Forecasting of the China Yuan to US Dollar Exchange Rate
625
6. Goldberg, E.: Optimal signal multi-resolution by genetic algorithms to support artificial neural networks for exchange-rate forecasting. Journal of Political Economy 104, 510–541 (1996) 7. Zhang, G., Hu, M.Y.: Neural network forecasting of the British pound/US dollar exchange rate. Omega 26, 495–506 (1998) 8. Jang, S.R.: ANFIS: adaptive-network-based fuzzy inference system. IEEE Transactions on System, Man, and Cybernetics 23, 665–685 (1993) 9. Kennedy, J., Eberhart, R.: Particle swarm optimization. In: IEEE International Conference on Neuro Network Proceedings, vol. 4, pp. 1942–1948 (1995) 10. Chang, J.F., Chu, S.C., Roddick, J.F., Pan, J.S.: A parallel particle swarm optimization algorithm with communication strategies. Journal of Information Science and Engineering 21(4), 809–818 (2005) 11. Huang, H.C., Chen, Y.H., Abraham, A.: Optimized watermarking using swarm-based bacterial foraging. Journal of Information Hiding and Multimedia Signal Processing 1(1), 51–58 (2010) 12. Holland, J.H.: Adaptation in natural and artificial systems: An introductory analysis with applications to biology, control, and artificial intelligence. University of Michigan Press, Ann Arbor (1975) 13. Kirkpatrick, S., Gelatt, C.D., Vecchi, M.P.: Optimization by simulated annealing. Science 220, 671–680 (1983) 14. Nelder, J.A., Mead, R.: A simplex method for function minimization. The Computer Journal 7, 308–313 (1965) 15. Storey, C.: Applications of a hill climbing method of optimization. Chemical Engineering Science 17, 45–52 (1962) 16. Jang, J.S.R., Sun, C.T., Mizutani, E.: Neuro-Fuzzy and Soft Computing: a computational approach to learning and machine intelligence. Prentice Hall, USA (1997) 17. Xiu, Z.H., Ren, G.: Stability analysis and systematic design of Takagi-Sugeno fuzzy control systems. Fuzzy Sets and Systems 151, 119–138 (2005) 18. Sun, H., Wang, S., Jiang, Q.: FCM-based model selection algorithms for determining the number of clusters. Pattern Recognition 37, 2027–2037 (2004) 19. Goodwin, G.C., Sin, K.S.: Adaptive filtering prediction and control. Dover Publications, Inc., New York (2009) 20. Huang, G.B., Zhu, Q.Y., Siew, C.K.: Extreme learning machine: a new learning scheme of feedforward neural networks. In: Proceedings of International Joint Conference on Neural Networks (IJCNN 2004), Budapest, Hungary) (2004) 21. Huang, G.B., Liang, N.Y., Rong, H.J., Saratchandran, P., Sundararajan, N.: On-line sequential extreme learning machine. In: The IASTED International Conference on Computational Intelligence (CI 2005), Calgary, Canada (2005) 22. Nauck, D., Kruse, R.: Neuro-fuzzy systems for function approximation. Fuzzy Sets and Systems 101, 261–271 (1999) 23. Ying, H.: General interval type-2 Mamdani fuzzy systems are universal approximators. In: Fuzzy Information Processing Society, NAFIPS 2008, Annual Meeting of the North American, pp. 1–6 (2008) 24. Li, C., Lee, C.Y., Cheng, K.H.: Pseudo-error-based self-organizing neuro-fuzzy system. IEEE Transactions on Fuzzy Systems 12, 812–819 (2004) 25. Li, C., Lee, C.Y.: Self-organizing neuro-fuzzy system for control of unknown plants. IEEE Transactions on Fuzzy Systems 11, 135–150 (2003) 26. Dunn, J.C.: A fuzzy relative of the ISODATA process and its use in detecting compact well-separated clusters. Cybernetics and Systems 3, 32–57 (1973) 27. Ramze, R.M., Lelieveldt, B.P.F., Reiber, J.H.C.: A new cluster validity index for the fuzzy c-mean. Pattern Recognition Letters 19, 237–246 (1997) 28. OANDA, http://www.oanda.com/currency/historical-rates
A Hybrid Model for Credit Evaluation Problem Hui Fu and Xiaoyong Liu Department of Computer Science, Guangdong Polytechnic Normal University, Guangzhou, Guangdong, 510665, China [email protected]
Abstract. This paper provides a novel hybrid model to solve credit scoring problems. This model is based on RBF neural network with genetic algorithm and its principal character is that Central position, center spread and weights of RBF neural network are encode as genes of Chromosome in genetic algorithm. And then using genetic algorithm trains RBF neural network circularly. A real world credit dataset in the University of California Irvine Machine Learning Repository are selected for the experiment. Numerical experiment shows that the model possesses fast learning ability and excellent generalization ability, and verifies that the novel model has better preference. Keywords: Credit scoring; RBF neural network; Genetic Algorithm.
1 Introduction Recently, credit scoring has become widely used in issuing credit cards and in other types of consumer lending, such as auto loans and home equity loans. Credit scoring is a method of evaluating the credit risk of loan applications. The method produces a “score” that a bank can use to rank its loan applicants or borrowers in terms of risk. A better model should give a higher percentage of high scores to borrowers whose loans will perform well and a lesser percentage of low scores to borrowers whose loans won’t perform well. Even a good scoring system won’t predict with certainty any individual loan’s performance, but it should give a fairly accurate prediction of the likelihood that a loan applicant with certain characteristics will default. To build a good scoring model, developers need sufficient historical data, which reflect loan performance in periods of both good and bad economic conditions.[1][2] There are mainly two types of credit scoring models, statistical methods and machine learning methods. Several statistical methods, such as linear probability models, logistic models and probabilistic models, are used to develop credit scoring systems. They are standard statistical techniques for estimating the probability based on historical data on loan performance and characteristics of the borrower [1]. The second method is based on machine learning (examples of machine learning techniques used to solve the above financial decision-making problems are Atiya[3]; Huang, Chen, Hsu, Chen, & Wu[4]; Lee, Chiu, Chou, & Lu[5]) use the multi-layer perceptron (MLP) as classifier. Other tested classifiers are the Decision Tree and the Support Vector Machine [6-8]. We want to stress that these studies show that the machine learning based systems are better than the traditional (statistical) methods for bankruptcy Y. Tan et al. (Eds.): ICSI 2011, Part I, LNCS 6728, pp. 626–634, 2011. © Springer-Verlag Berlin Heidelberg 2011
A Hybrid Model for Credit Evaluation Problem
627
prediction and credit scoring problems (Huang et al.[4]; Ong, Huang, & Tzeng[9]; Vellido, Lisboa, & Vaughan[10]; Wong & Selvi[11]). In Tsai and Wu[12] the authors compare a single MLP classifier with multiple classifiers and diversified multiple classifiers on three datasets. Artificial neural network models are used to solve credit evaluation problem. However, neural network has some shortcomings, such as slow training speed and local optimum. This paper presents a new model, which combines artificial neural network and genetic algorithm and trains neural network circularly using genetic algorithm.
2 RBF Neural Network and Genetic Algorithm 2.1 RBF Neural Network Radial basis function neural network is different from classic BP neural network. Design of RBF is seen as a curve fitting problem in high-dimensional space, so the network learning is equivalent to the multidimensional space to find a surface to fit the given dataset. Although theory of RBF neural network and BP neural network is different, RBF neural network, like BP neural network, can approximate any nonlinear functions. In addition, RBF neural network is better than BP neural network in the generalization ability. And more, RBF neural network converges faster than BP neural network. From network structure, RBF neural network has also three layers, the input layer, hidden layer and output layer, but hidden layer has only one layer, while the BP neural network have two or more layers, The structure of RBF neural network is shown in Fig.1 as follow. The output of RBF neural network is according to expression as follows:
y = f (x ) = ∑ wk ⋅ ϕ ( x, ck ) = ∑ wk ⋅ ϕ ( x − ck
)
(1)
is an input vector, is a processing function for the hidden layer. In this paper,
ϕ
is the Gaussian
n
n
k =1
k =1
Where,
x ϕ
function . denotes the Euclidean norm, wk is weight value of the output layer weights, n is the number of neurons in hidden layer, ck is RBF centers. Different with BP, neurons in hidden layer of RBF neural network is the RBF center, whose role is to calculate the distance between the center and the network input, and then transmit to output layer for processing. RBF output function, ϕ ,is defined as follows:
⎛
ϕ ( x, t k ) = exp⎜ −
L
⎜ d2 x−t k max ⎝
2
⎞ ⎟ ⎟ ⎠
(2)
628
H. Fu and X. Liu
Input layer
Hidden layer
Output layer
Fig. 1. The structure of RBF neural network
2.2 Genetic Algorithm Genetic algorithm (GA) is an adaptive global optimization statistical search algorithm, which simulate biological evolution process in natural environment. GA was provided by Professor Holland in 1970’s, and then, De Jong carried out several numerical experiments to verify its preference. Goldberg summarized related study and formed the basic framework of genetic algorithm in 1980’s. Based on some common features, Goldberg summarized a basic genetic algorithm (Simple Genetic Algorithms, SGA for short). Simple genetic algorithm included three basic genetic operators, selection, crossover and mutation. Select operator can exclude worst individuals, and improve the global convergence and computational efficiency. In biological evolution process, crossover is a major component and can produce new individuals or species. Genetic algorithm uses this feature to produce a new generation with character of parents individual. Mutation operator can generate individuals with new features.
3 GA-RBF Neural Network Model This section will describe the process that using genetic algorithm and RBF neural network construct personal credit assessment model. This model applies genetic algorithm to establish the overall framework and merges RBF neural networks to the framework. Central position, center spread and weights of RBF neural network can be improved iteratively and increase predictive rate. In each iterations, there are three major steps, select operation, crossover operation and mutation operation. Select operation will retain excellent individuals and eliminate negative individuals. Crossover operation and mutation operation are able to reproduce a new individual. This model process is in detail as follows:
A Hybrid Model for Credit Evaluation Problem
629
Step 1: Parameter settings. Setting the population size M, crossover probability Pc, mutation probability Pm,. Step 2: Set the fitness function. Fitness function is the optimization goal, where is denoted by predictive rate. Step 3 : Population initialization. Each individuals within the population M is initialized, viz, establish M different RBF neural network model. Step 4: Individual assessment. Verify whether all of the individual to achieve the desired results according to the group fitness function, and if so, input the best individual parameters. Step 5: Select operation. Calculate all the individuals’ fitness Fi ,in population M. F i is predictive rate for the unknown data. Select probability, pi, can be defined as follows,
pi =
Fi M
∑F i =1
i = 1,2,3, " M
(3)
i
According pi, calculate the next generation population. Step 6: Chromosome encoding. Weights of each individual correspond to genes of a chromosome, as shown in Fig.2. Population will produce M chromosomes. Step 7: Crossover operation. The group of M chromosomes make pairs randomly and form M / 2 pairs of chromosomes for crossover operation. This paper uses double-point crossover. Step 8: Mutation operation. Each gene of chromosomes can mutate randomly according to the probability Pm.
630
H. Fu and X. Liu
Input layer
Hidden layer
Output layer
Fig. 2. Central position, center spread and weights of RBF neural network and weights transfer Chromosome encoding
Fig. 3. The flow chart of GA-RBFNN
A Hybrid Model for Credit Evaluation Problem
631
Step 9: Training neural network. The new generation of chromosomes correspond to the RBF neural network and training it. Step 10: Recalculate fitness values of M individuals and go back to step 4. The flow chart of GA-RBFNN is shown in fig.3.
4 GA-RBF Neural Network Model to Evaluate the Application of Personal Credit 4.1 Dataset and Pretreatment Test dataset is personal credit assessment data of Germany Bank from the University of California Irvine Machine Learning Repository. German credit card dataset has 1000 Instances. There are twenty-four numerical attributes in this dataset. Number of customers as “good” is 700, and number of customers as “bad” is 300. In the dataset, “0” denotes a customer as “bad”, and “1” denotes a customer as “good”. 80% of the dataset is used for training, and the rest is used for validating. In German credit card dataset, data of different attribute has different range. The largest range is between 0 and 184, while the smallest range is 0 to 1. Because learning rate of the weights in neural network is uniform, it will be instability for data of attribute with larger range, and simultaneously speed lower time to training for data of attribute with smaller range. In a word, it is necessary to implement the normalization operation as preprocessing before training. In this paper, the goal of pretreatment is that data of different attribute has same range, which is 0 to 1. Pretreatment process is denoted for normalized as follows: Step 1: Calculate maximum and minimum values with the same attribute. Step 2: Normalize the given data with the same attribute according to expression as follow,
Di =
d i − d min d max − d min
Where, Di is data that has been processed,
d i is data that will be processed,
i = 1,2,3, " , m
(4)
632
H. Fu and X. Liu
d max is the maximum value in the given attribute,
d min is the minimum value in the given attribute. 4.2 Parameters Setting and Experiment Results After the preliminary design model, this paper uses Visual Studio 2005 as development platform. Related parameters are set as follows: Number of neurons in Input layer : 24 Number of neurons in Hidden layer: 10 Learning rate of weights: 0.02 Learning rate of Center position: 0.01 Learning rate of Center spread: 0.03 Population size: M = 30 Crossover probability: 0.002 Mutation probability: 0.001 The prediction rate is shown in fig.4.
Fig. 4. The Change of prediction rate for personal credit data by GA-RBF
Prediction rate of GA-RBF can achieve 81.0 % at best. The same parameter settings compared RBF neural networks: Number of neurons in Input layer : 24 Number of neurons in Hidden layer: 10 Learning rate of weights: 0.02 Learning rate of Center position: 0.01 Learning rate of Center spread: 0.03
A Hybrid Model for Credit Evaluation Problem
633
The prediction rate is shown as follows.
Fig. 5. The Change of prediction rate for personal credit data by RBF
It’s obviously seen that GA-RBF can get higher prediction rate than RBF, increase about 5%.
5 Conclusion This paper constructs a new hybrid personal credit scoring model by combining RBF neural network with genetic algorithm. The new model uses genetic algorithm to optimize weights, the centers position and the centers spread of RBF neural network, so that convergence of the model is rapid and has excellent generalization in numerical experiments.
Acknowledgement The author would like to thank anonymous reviewers for their constructive and enlightening comments, which improved the manuscript. This work has been supported by grants from Program for Excellent and Creative Young Talents in Universities of Guangdong Province (LYM09097 and LYM10097), and Guangdong Polytechnic Normal University (No.10kjy02).
References 1. McAllister, P.H., Mingo, J.J.: Commercial Loan Risk Management, Credit-Scoring, and Pricing: The Need for a New Shared Database. Journal of Commercial Lending, 6–22 (1994) 2. Mester, L.: What’s the point of credit scoring? Business review (3), 3–16 (1997)
634
H. Fu and X. Liu
3. Atiya, A.F.: Bankruptcy prediction for credit risk using neural networks: a survey and new results. IEEE Transactions on Neural Networks 12(4), 929–935 (2001) 4. Huang, Z., Chen, H., Hsu, C.-J., Chen, W.-H., Wu, S.: Credit rating analysis with support vector machines and neural networks: A market comparative study. Decision Support Systems (37), 543–558 (2004) 5. Lee, T.-S., Chiu, C.-C., Chou, Y.-C., Lu, C.-J.: Mining the customer credit using classification and regression tree and multivariate adaptive regression splines. Computational Statistics and Data Analysis (50), 1113–1130 (2006) 6. Stecking, R., Schebesch, K.B.: Combining Support Vector Machines for Credit Scoring. In: Proceedings of Operations Research, pp. 135–140 (2006) 7. Martens, D., Baesens, B., Van Gestel, T., et al.: Comprehensible credit scoring models using rule extraction from support vector machines. European Journal of Operational Research 183(3), 1466–1476 (2007) 8. Luo, S., Cheng, B., Hsieh, C.: Prediction model building with clustering-launched classification and support vector machines in credit scoring. Expert Systems with Applications 36(4), 7562–7566 (2009) 9. Ong, C.-S., Huang, J.-J., Tzeng, G.-H.: Building credit scoring models using genetic programming. Expert Systems with Applications (29), 41–47 (2005) 10. Vellido, A., Lisboa, P.J.G., Vaughan, J.: Neural networks in business: a survey of applications (1992–1998). Expert Systems with Applications 17, 51–70 (1999) 11. Wong, B.K., Selvi, Y.: Neural network applications in finance: A review and analysis of literature (1990–1996). Information and Management 34, 129–139 (1998) 12. Tsai, C., Wu, J.: Using neural network ensembles for bankruptcy prediction and credit scoring. Expert Systems with Applications 34(4), 2639–2649 (2008)
Author Index
Adams, Martin II-519 Aiping, Zhang I-347 Amin-Naseri, Mohammad Reza An, Jinung II-91, II-99 Ariffin, Junaidah I-182
II-252
Bai, Jie I-64, I-355 Bastos-Filho, Carmelo Jos´e Albanez II-543, II-563 Batouche, Mohamed I-221 Belaton, Bahari II-173 Ben-Abdallah, Hanˆene I-250 Bilal, Mohsin I-530 Breedon, Philip I-19 Castro, Rodrigo M.C.S. II-543 Cavalcanti-J´ unior, George M. II-543 Chai, Yi I-260 Chao, Chih-Chiang II-66 Chen, Chien-Hsing II-236, II-269 Chen, JenLian I-28 Chen, Lei II-411 Chen, Min-you I-165 Chen, Powen I-56 Chen, Qinglan II-502 Chen, Walter I-56 Chen, Wei II-465 Chen, Weili II-164 Chen, Weirong I-310, I-338 Chen, Xue-bo II-82, II-449 Chen, Xue-jun II-441 Chen, Yanju I-329 Chen, Yingge II-317 Chen, Zhenmin II-434 Cheng, Shi I-38 Chhabra, Jitender Kumar I-147, II-146 Chiang, Ya-Tzu II-66 Choi, Kyung-Sik II-91 Chou, PenChen I-28 Chunguo, Wu II-275 Chuyi, Song II-275 Coelho, Andr´e L.V. II-573 Dahiya, Surender Singh Dai, Chaohua I-310
I-147
De Giusti, Armando I-111 de Lima-Neto, Fernando Buarque II-543, II-563 Deng, Changshou I-416 Deng, Zhi I-277, I-285 Dieck Kattas, Graciano I-9 Di-Ming, Ai II-10 Ding, Yongsheng I-130 Djerou, Leila I-221 Du, Yu I-310 Duan, Pengfei I-234, II-200 Elek, Istv´ an II-291, II-299 Elkamel, Akil I-250 Fang, Gang II-157 Fang, Lijing II-457 Fei, MinRui I-93, II-74 Fekete, Istv´ an II-299 Feng, Haizhou I-285 Feng, Pan II-10 Feng, Yuanjing I-267 Fern´ andez-Mart´ınez, Juan Luis Ferreira, Cl´ audio I-595 Fu, Bo II-327 Fu, Hui I-626 Fu, Wei I-464 Fu, Xiping I-93, II-41 Gao, Liang II-1 Gao, Yuelin I-101 Garc´ıa-Gonzalo, Esperanza I-1 Garro, Beatriz A. I-242, I-447 Ge, Hong I-408 Ghedira, Khaled II-283 Gin, Yue I-347 Grissa Touzi, Amel II-191 Gu, Huaxi I-277, I-285 Gu, Yu II-529 Guang, Ren I-347 Guo, Fenhong II-395 Guo, Weidong II-411 Guo, Yun-fei II-419 Gzara, Mariem I-250, II-136
I-1
636
Author Index
Habibnejad Korayem, Moharam Han, Fengling II-348 Han, Peng I-86 He, Wei I-165, II-441 He, Zhen I-539 Holban, S ¸ tefan I-46 Hoseinnezhad, Reza II-509 Hoseinpour, Farhoud I-606 Hoseinzadeh, Mojtaba I-606 Hou, Guolian II-379 Hsu, Chung-Chian II-236 Hu, Gang I-165 Huang, Hongming I-616 Huang, Li II-340 Huang, Tian-yun II-82 Huang, Yizhou II-118
I-606
jalali, Mohammad jafarpour II-371 Janecek, Andreas II-307, II-553 Jernigan, Robert I-1 Ji, Zhen I-587 Jia, Liyuan II-340 Jia, Yutian I-172 Jianda, Han II-108 Jiang, Shouda I-400 Jin, Linpeng I-374 Jingqing, Jiang II-275 Kala, Rahul I-480 Khan, Farrukh Aslam I-530 Khan, Salabat I-530 Khelil, Naceur I-221 Khereddine, Besma II-136 Kim, Kyoung-Dong II-99 Kim, Yoon-Gu II-91, II-99 King, David I-19 Kloczkowski, Andrzej I-1 Kou, Jialiang I-234, I-431, II-200 Kulworawanichpong, Thanatchai II-403 Kumar, Shakti I-147 Kwon, Jaerock I-203 Lai, Mao-sheng II-419 Lambert-Torres, Germano I-595 Lanzarini, Laura I-111 Lee, Suk-Gyu II-91, II-99 Leeton, Uthen II-403 Lei, Fanfan I-101 Leow, Amy II-173 Li, Bin I-539
Li, Chaoyang II-474 Li, Chunshien I-616 Li, Fengjun I-472 Li, Hailing II-457 Li, Haiyuan II-118 Li, Hui I-234, I-424, II-200 Li, Huirong I-101 Li, Jianbiao II-474 Li, Jie I-260 Li, Jimin I-101 Li, Junli I-374 Li, Lei II-340 Li, Lingyan II-465 Li, Nan I-506 Li, Ning II-434 Li, Peigen II-1 Li, Penghua I-260 Li, Wenhui II-327 Li, Wenqi I-194, I-227 Li, Xiaodong I-497 Li, Ying II-379 Liang, Xinyuan I-157 Liao, Wudai I-80 Lihu, Andrei I-46 Lin, Chuan Wei I-616 Lin, Dongmei I-497 Lin, Feng II-419 Lin, Kunming II-348 Lin, Yifeng II-327 Lin, Yun II-479 Ling, Haifeng II-57 Liu, Guoquan I-464 Liu, Hongbing I-234, II-363 Liu, Jian II-183 Liu, Jianming II-434 Liu, Ju II-411 Liu, Qun II-17, II-207 Liu, Susu II-356 Liu, Tingzhan II-183 Liu, Weifeng II-486 Liu, Wenmin I-587 Liu, Xiangkai II-387 Liu, Xiaoni I-578 Liu, Xiaoyong I-626 Liu, Yankui I-559, II-164 Liu, Yi I-234, I-424, I-431, II-200 Liu, Ying I-329 Liu, Yuxi II-411 L´ opez, Javier I-111 Lou, Yang I-374
Author Index Lu, Xinzhong II-427 Lu, Yinan I-578 Luo, Yi I-506 Madeiro, Salom˜ ao Sampaio II-563 Mansouri, Mohammad I-321 Mao, Yunfei II-74 Mao, Yu-xing II-441 M´ arton, M´ aty´ as II-291 Maulini, Juan Andr´es I-111 Menezes, Lara II-573 Meng, Jixian II-427 Menhas, Muhammad Ilyas II-41 Menhas, Muhammd Ilyas I-93 Mesghouni, Nadia II-283 Meybodi, Mohammad Reza I-120 Mo, Hongwei I-390, I-400 Mohamed, Azlinah I-182 Mullane, John II-519 Naebi, Ahmad I-120, I-606 Nascimento Figueiredo, Elliackin Messias do II-563 Neshat, Najmeh II-252 Nie, Li II-1 Ningning, Liu II-34 Niu, Qun II-74 Orouskhani, Maysam I-321 Ouyang, Xin-yu II-449 Paes Salomon, Camila I-595 Pan, Chang chun I-64, I-355 Pang, Shanchen II-228 Parashar, Anshu II-146 Peng, Dong-liang II-529 Peng, Hu I-416 Pereira Coutinho, Maurilio I-595 Qi, Jie I-130 Qian, Tao I-364 Qiu, Yiming I-194, I-227 Qu, Zheng I-390 Quan, Yong I-578 Rabevohitra, Feno Heriniaina I-212 Ramadass, Sureswaran I-606 Ran, Lili I-310 Ren, Xue II-474 rezaee, Alireza II-371
637
Rezazadeh, Iman I-120 Rui, Zhang II-10 Sang, Jun I-212 Saraswathi, Saras I-1 Sassi, Minyar II-191 Sharif, Muhammad I-530 Shen, Gang I-522 Shen, Yuanxia II-17 Shi, Yuhui I-38, I-71, I-303, I-374 Shu, Baojian I-285 Shukla, Anupam I-480 Small, Michael I-9 Song, Yong Duan I-86 Sossa, Humberto I-447 Sun, Limin II-356 Sun, Mingfang II-333 Sun, Zhibin II-395 Szendrei, Rudolf II-291, II-299 Tahooneh, Amin I-293 Tajudin Khader, Ahamad II-173 Tan, Jindong II-118 Tan, Ying I-382, I-549, II-218, II-307, II-553 Tang, Ke Ming II-260 Tang, Lixin II-26 Tang, Shi Xi II-260 Tang, Xu-Qing I-568 Tarsauliya, Anupam I-480 Temani, Moncef II-283 Teshnehlab, Mohammad I-321 Tewolde, Girma S. I-203 Thabet, Aicha II-191 Thomas, J. Joshua II-173 Tiwari, Ritu I-480 V´ azquez, Roberto A. I-242, I-447 Vo, Ba-Ngu II-509, II-519 Vo, Ba-Tuong II-519 Vu, Truong Nguyen II-509 Wan, Chunqiu I-439 Wan, Shuzhen I-234, I-424, I-431 Wang, Chao I-157 Wang, Dong I-497 Wang, Fei II-537 Wang, Guoyin II-17 Wang, Jiangfeng I-80 Wang, Jilin II-395
638
Author Index
Wang, Jiye II-434 Wang, Jun I-439, I-549 Wang, Junhui I-277 Wang, Junyan I-80 Wang, Kebin II-218 Wang, Lei I-138, I-194, I-227 Wang, Lihe I-455 Wang, Ling I-93, II-41, II-74 Wang, Qiquan II-537 Wang, Sujing II-333 Wang, Wei II-82 Wang, Xianpeng II-26 Wang, Xiaojuan II-1 Wang, Xiaoqing I-559 Wang, Xiaoying II-317 Wang, Xin I-157 Wang, Xu I-489, II-479 Wang, Yu I-539 Wang, Zhejin I-267 Wei, Hongxing II-118 Wei, Qiming I-416 Wen, Chenglin II-486 Wu, Chang-an II-363 Wu, Jianping I-172 Wu, Lenan I-514 Wu, Qi di I-138, I-194, I-227 Wu, Quanjun II-128 Wu, Tao II-207 Wu, Xiaoli II-164 Wu, Yali II-49 Wu, Yingbo I-489, II-479 Wu, Yuheng I-364 Xian, Xingping II-207 Xiao, Yu II-387 Xiaowei, Qi I-347 Xiong, Jiang II-157 Xiong, Shengwu I-234, I-424, I-431, II-200 Xiong, Yan II-363 Xu, Baoguo II-494 Xu, Benlian II-494, II-502, II-537 Xu, Li II-128 Xu, Lifang I-400 Xu, Liqing II-49 Xu, Qingshan I-157 Xu, Sai II-474 Xu, Wang-bao II-82 Xu, Yanxin I-64 Xu, Yayi II-34
Xu, Zhi-Guang II-91, II-99 Xue, Jingqian II-49 Yan, XueMing I-408 Yanchun, Liang II-275 Yang, Dongsheng I-227 Yang, Geng I-439 Yang, Gen Ke I-64, I-355, I-455 Yang, Liying II-244 Yang, Shenghui II-387 Yang, Simon X. I-464 Yang, Xiaoyun II-387 Yang, Yanling I-416 Yang, Yintang I-277 Yang, Yong-ming II-348, II-441 Yao, Gang I-157 Ye, Wei II-41 Yeung, Lam Fat I-455 Yin, Hongpeng I-260 Yin, Peng-Yeng II-66 Yin, Zhe II-419 Ying, Hong II-157 Yu, Zhonglei II-228 Yuqing, He II-108 Yusoff, Marina I-182 Zhai, Jin-qian I-165 Zhang, Hong II-465 Zhang, Hua II-128 Zhang, Jianhong II-395 Zhang, Jianhua II-379 Zhang, Jie II-465 Zhang, Kaibo I-539 Zhang, Kun I-568 Zhang, Liwei I-559 Zhang, Lu I-86 Zhang, Na II-333 Zhang, Wenfang II-379 Zhang, Xing I-439 Zhang, Xuexia I-338 Zhang, Yan-Qing I-522 Zhang, Yi I-310 Zhang, Yongguo II-34 Zhang, Yong-wei I-138 Zhang, Yudong I-514 Zhang, Zili I-364 Zhang, Ziqiu II-57 Zhang, Zulong II-348 Zhao, Bingyan I-416 Zhao, Jing II-457
Author Index Zhao, Ling II-183 Zhao, Yan I-578 Zhao, Yong-jian II-157 Zhe, Zhang II-10 Zheng, Dong II-411 Zheng, Mingfa II-34 Zheng, Wang II-108 Zheng, Yihui I-157 Zheng, Yujun II-57 Zhou, Chunguang II-333 Zhou, Huan I-364 Zhou, Jin II-128
Zhou, Lidan I-157 Zhou, Wenyong II-363 Zhou, Xianzhong II-57 Zhou, Zheng I-71 Zhu, Jihong II-502, II-537 Zhu, Jun I-355 Zhu, Peiyi II-494 Zhu, Yuanchun I-382 Zhu, Zexuan I-587 Ziarati, Koorush I-293 Zong, Xinlu I-234 Zuo, Xingquan I-172
639