18
* This monograph will be also published in Spanish (full version printed; summary, abstracts, and some articles online) by Novática, journal of the Spanish CEPIS society ATI (Asociación de Técnicos de Informática) at <http://www.ati.es/novatica/>, and in Italian (online edition only, containing summary, abstracts, and some articles) by the Italian CEPIS society ALSI (Associazione nazionale Laureati in Scienze dell’informazione e Informatica) and the Italian IT portal Tecnoteca at <http://www.tecnoteca.it>. Vol. VI, issue No. 3, June 2005 UPGRADE is the European Journal for the Informatics Professional, published bimonthly at <http://www.upgrade-cepis.org/> UPGRADE is the anchor point for UPENET (UPGRADE European NETwork), the network of CEPIS member societies’ publications, that currently includes the following ones: Mondo Digitale, digital journal from the Italian CEPIS society AICA Novática, journal from the Spanish CEPIS society ATI OCG Journal, journal from the Austrian CEPIS society OCG Pliroforiki, journal from the Cyprus CEPIS society CCS Pro Dialog, journal from the Polish CEPIS society PTI-PIPS Publisher UPGRADE is published on behalf of CEPIS (Council of European Professional Informatics Societies, <http://www.cepis.org/>) by Novática <http://www.ati.es/novatica/>, journal of the Spanish CEPIS society ATI (Asociación de Técnicos de Informática, <http://www.ati.es/>) UPGRADE monographs are also published in Spanish (full version printed; summary, abstracts and some articles online) by Novática, and in Italian (summary, abstracts and some articles online) by the Italian CEPIS society ALSI (Associazione nazionale Laureati in Scienze dell’informazione e Informatica, <http://www.alsi.it>) and the Italian IT portal Tecnoteca <http://www.tecnoteca.it/> UPGRADE was created in October 2000 by CEPIS and was first published by Novática and INFORMATIK/INFORMATIQUE, bimonthly journal of SVI/FSI (Swiss Federation of Professional Informatics Societies, <http://www.svifsi.ch/>) Editorial Team Chief Editor: Rafael Fernández Calvo, Spain, <[email protected]> Associate Editors: François Louis Nicolet, Switzerland, <[email protected]> Roberto Carniel, Italy, <[email protected]> Zakaria Maamar, Arab Emirates, <Zakaria. Maamar@ zu.ac.ae> Soraya Kouadri Mostéfaoui, Switzerland, <[email protected]> Editorial Board Prof. Wolffried Stucky, CEPIS Past President Prof. Nello Scarabottolo, CEPIS Vice President Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca (Italy) UPENET Advisory Board Franco Filippazzi (Mondo Digitale, Italy) Rafael Fernández Calvo (Novática, Spain) Veith Risak (OCG Journal, Austria) Panicos Masouras (Pliroforiki, Cyprus) Andrzej Marciniak (Pro Dialog, Poland) English Editors: Mike Andersson, Richard Butchart, David Cash, Arthur Cook, Tracey Darch, Laura Davies, Nick Dunn, Rodney Fennemore, Hilary Green, Roger Harris, Michael Hird, Jim Holder, Alasdair MacLeod, Pat Moody, Adam David Moss, Phil Parkin, Brian Robson Cover page designed by Antonio Crespo Foix, © ATI 2005 Layout Design: François Louis Nicolet Composition: Jorge Llácer-Gil de Ramales Editorial correspondence: Rafael Fernández Calvo <[email protected]> Advertising correspondence: <[email protected]> UPGRADE Newslist available at <http://www.upgrade-cepis.org/pages/editinfo.html#newslist> Copyright © Novática 2005 (for the monograph and the cover page) © CEPIS 2005 (for the sections MOSAIC and UPENET) All rights reserved. Abstracting is permitted with credit to the source. For copying, reprint, or republication permission, contact the Editorial Team The opinions expressed by the authors are their exclusive responsibility ISSN 1684-5285 Monograph of next issue (August 2005): "Normalisation & Standardisation in IT Security" (The full schedule of UPGRADE is available at our website) Monograph: Libre Software as A Field of Study (published jointly with Novática*, in cooperation with the European project CALIBRE) Guest Editors: Jesús M. González-Barahona and Stefan Koch 2 Presentation Libre Software under The Microscope — Jesús M. González-Barahona and Stefan Koch 5 CALIBRE at The Crest of European Open Source Software Wave — Andrea Deverell and Par Agerfalk 6 Libre Software Movement: The Next Evolution of The IT Production Organization? — Nicolas Jullien 13 Measuring Libre Software Using Debian 3.1 (Sarge) as A Case Study: Preliminary Results — Juan-José Amor-Iglesias, Jesús M. González- Barahona, Gregorio Robles-Martínez, and Israel Herráiz-Tabernero 17 An Institutional Analysis Approach to Studying Libre Software ‘Commons’ — Charles M. Schweik 28 About Closed-door Free/Libre/Open Source (FLOSS) Projects: Lessons from the Mozilla Firefox Developer Recruitment Approach — Sandeep Krishnamurthy 33 Agility and Libre Software Development — Alberto Sillitti and Giancarlo Succi 38 The Challenges of Using Open Source Software as A Reuse Strategy — Christian Neumann and Christoph Breidert 43 Computational Linguistics Multilingual Approaches to Text Categorisation — Juan-José García- Adeva, Rafael A. Calvo, and Diego López de Ipiña 52 Software Engineering A Two Parameter Software Reliability Growth Model with An Im- plicit Adjustment Factor for Better Software Failure Prediction — S. Venkateswaran, K. Ekambavanan, and P. Vivekanandan 59 News & Events: Proposal of Directive on Software Patents Rejected by The European Parliament 61 From Pliroforiki (CCS, Cyprus) Informatics Law Security, Surveillance and Monitoring of Electronic Communications at The Workplace — Olga Georgiades-Van der Pol 66 From Mondo Digitale (AICA, Italy) Evolutionary Computation Evolutionary Algorithms: Concepts and Applications — Andrea G. B. Tettamanzi UPENET (UPGRADE European NETwork) MOSAIC

Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

* This monograph will be also published in Spanish (full version printed; summary, abstracts, and somearticles online) by Novática, journal of the Spanish CEPIS society ATI (Asociación de Técnicos deInformática) at <http://www.ati.es/novatica/>, and in Italian (online edition only, containing summary,abstracts, and some articles) by the Italian CEPIS society ALSI (Associazione nazionale Laureati in Scienzedell’informazione e Informatica) and the Italian IT portal Tecnoteca at <http://www.tecnoteca.it>.

Vol. VI, issue No. 3, June 2005

UPGRADE is the European Journal for theInformatics Professional, published bimonthly

at <http://www.upgrade-cepis.org/>

UPGRADE is the anchor point for UPENET (UPGRADE EuropeanNETwork), the network of CEPIS member societies’ publications, thatcurrently includes the following ones:• Mondo Digitale, digital journal from the Italian CEPIS society AICA• Novática, journal from the Spanish CEPIS society ATI• OCG Journal, journal from the Austrian CEPIS society OCG• Pliroforiki, journal from the Cyprus CEPIS society CCS• Pro Dialog, journal from the Polish CEPIS society PTI-PIPS

PublisherUPGRADE is published on behalf of CEPIS (Council of European ProfessionalInformatics Societies, <http://www.cepis.org/>) by Novática<http://www.ati.es/novatica/>, journal of the Spanish CEPIS society ATI(Asociación de Técnicos de Informática, <http://www.ati.es/>)

UPGRADE monographs are also published in Spanish (full version printed; summary,abstracts and some articles online) by Novática, and in Italian (summary, abstracts andsome articles online) by the Italian CEPIS society ALSI (Associazione nazionaleLaureati in Scienze dell’informazione e Informatica, <http://www.alsi.it>) and theItalian IT portal Tecnoteca <http://www.tecnoteca.it/>

UPGRADE was created in October 2000 by CEPIS and was first published byNovática and INFORMATIK/INFORMATIQUE, bimonthly journal of SVI/FSI (SwissFederation of Professional Informatics Societies, <http://www.svifsi.ch/>)

Editorial TeamChief Editor: Rafael Fernández Calvo, Spain, <[email protected]>Associate Editors:François Louis Nicolet, Switzerland, <[email protected]>Roberto Carniel, Italy, <[email protected]>Zakaria Maamar, Arab Emirates, <Zakaria. Maamar@ zu.ac.ae>Soraya Kouadri Mostéfaoui, Switzerland,<[email protected]>

Editorial BoardProf. Wolffried Stucky, CEPIS Past PresidentProf. Nello Scarabottolo, CEPIS Vice PresidentFernando Piera Gómez andRafael Fernández Calvo, ATI (Spain)François Louis Nicolet, SI (Switzerland)Roberto Carniel, ALSI – Tecnoteca (Italy)

UPENET Advisory BoardFranco Filippazzi (Mondo Digitale, Italy)Rafael Fernández Calvo (Novática, Spain)Veith Risak (OCG Journal, Austria)Panicos Masouras (Pliroforiki, Cyprus)Andrzej Marciniak (Pro Dialog, Poland)

English Editors: Mike Andersson, Richard Butchart, David Cash, Arthur Cook,Tracey Darch, Laura Davies, Nick Dunn, Rodney Fennemore, Hilary Green,Roger Harris, Michael Hird, Jim Holder, Alasdair MacLeod, Pat Moody, AdamDavid Moss, Phil Parkin, Brian Robson

Cover page designed by Antonio Crespo Foix, © ATI 2005Layout Design: François Louis NicoletComposition: Jorge Llácer-Gil de Ramales

Editorial correspondence: Rafael Fernández Calvo <[email protected]>Advertising correspondence: <[email protected]>

UPGRADE Newslist available at<http://www.upgrade-cepis.org/pages/editinfo.html#newslist>

Copyright© Novática 2005 (for the monograph and the cover page)© CEPIS 2005 (for the sections MOSAIC and UPENET)All rights reserved. Abstracting is permitted with credit to the source. For copying,reprint, or republication permission, contact the Editorial Team

The opinions expressed by the authors are their exclusive responsibility

ISSN 1684-5285

Monograph of next issue (August 2005):"Normalisation & Standardisation

in IT Security"(The full schedule of UPGRADE

is available at our website)

Monograph: Libre Software as A Field of Study (published jointly with Novática*, in cooperation with the

European project CALIBRE)Guest Editors: Jesús M. González-Barahona and Stefan Koch

2 PresentationLibre Software under The Microscope — Jesús M. González-Barahonaand Stefan Koch

5 CALIBRE at The Crest of European Open Source Software Wave —Andrea Deverell and Par Agerfalk

6 Libre Software Movement: The Next Evolution of The IT ProductionOrganization? — Nicolas Jullien

13 Measuring Libre Software Using Debian 3.1 (Sarge) as A Case Study:Preliminary Results — Juan-José Amor-Iglesias, Jesús M. González-Barahona, Gregorio Robles-Martínez, and Israel Herráiz-Tabernero

17 An Institutional Analysis Approach to Studying Libre Software‘Commons’ — Charles M. Schweik

28 About Closed-door Free/Libre/Open Source (FLOSS) Projects: Lessonsfrom the Mozilla Firefox Developer Recruitment Approach — SandeepKrishnamurthy

33 Agility and Libre Software Development — Alberto Sillitti and GiancarloSucci

38 The Challenges of Using Open Source Software as A Reuse Strategy —Christian Neumann and Christoph Breidert

43 Computational LinguisticsMultilingual Approaches to Text Categorisation — Juan-José García-Adeva, Rafael A. Calvo, and Diego López de Ipiña

52 Software EngineeringA Two Parameter Software Reliability Growth Model with An Im-plicit Adjustment Factor for Better Software Failure Prediction — S.Venkateswaran, K. Ekambavanan, and P. Vivekanandan

59 News & Events: Proposal of Directive on Software Patents Rejectedby The European Parliament

61 From Pliroforiki (CCS, Cyprus)Informatics LawSecurity, Surveillance and Monitoring of Electronic Communicationsat The Workplace — Olga Georgiades-Van der Pol

66 From Mondo Digitale (AICA, Italy)Evolutionary ComputationEvolutionary Algorithms: Concepts and Applications — Andrea G. B.Tettamanzi

UPENET (UPGRADE European NETwork)

MOSAIC

Page 2: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

* This monograph will be also published in Spanish (full version printed; summary, abstracts, and somearticles online) by Novática, journal of the Spanish CEPIS society ATI (Asociación de Técnicos deInformática) at <http://www.ati.es/novatica/>, and in Italian (online edition only, containing summary,abstracts, and some articles) by the Italian CEPIS society ALSI (Associazione nazionale Laureati in Scienzedell’informazione e Informatica) and the Italian IT portal Tecnoteca at <http://www.tecnoteca.it>.

Vol. VI, issue No. 3, June 2005

UPGRADE is the European Journal for theInformatics Professional, published bimonthly

at <http://www.upgrade-cepis.org/>

UPGRADE is the anchor point for UPENET (UPGRADE EuropeanNETwork), the network of CEPIS member societies’ publications, thatcurrently includes the following ones:• Mondo Digitale, digital journal from the Italian CEPIS society AICA• Novática, journal from the Spanish CEPIS society ATI• OCG Journal, journal from the Austrian CEPIS society OCG• Pliroforiki, journal from the Cyprus CEPIS society CCS• Pro Dialog, journal from the Polish CEPIS society PTI-PIPS

PublisherUPGRADE is published on behalf of CEPIS (Council of European ProfessionalInformatics Societies, <http://www.cepis.org/>) by Novática<http://www.ati.es/novatica/>, journal of the Spanish CEPIS society ATI(Asociación de Técnicos de Informática, <http://www.ati.es/>)

UPGRADE monographs are also published in Spanish (full version printed; summary,abstracts and some articles online) by Novática, and in Italian (summary, abstracts andsome articles online) by the Italian CEPIS society ALSI (Associazione nazionaleLaureati in Scienze dell’informazione e Informatica, <http://www.alsi.it>) and theItalian IT portal Tecnoteca <http://www.tecnoteca.it/>

UPGRADE was created in October 2000 by CEPIS and was first published byNovática and INFORMATIK/INFORMATIQUE, bimonthly journal of SVI/FSI (SwissFederation of Professional Informatics Societies, <http://www.svifsi.ch/>)

Editorial TeamChief Editor: Rafael Fernández Calvo, Spain, <[email protected]>Associate Editors:François Louis Nicolet, Switzerland, <[email protected]>Roberto Carniel, Italy, <[email protected]>Zakaria Maamar, Arab Emirates, <Zakaria. Maamar@ zu.ac.ae>Soraya Kouadri Mostéfaoui, Switzerland,<[email protected]>

Editorial BoardProf. Wolffried Stucky, CEPIS Past PresidentProf. Nello Scarabottolo, CEPIS Vice PresidentFernando Piera Gómez andRafael Fernández Calvo, ATI (Spain)François Louis Nicolet, SI (Switzerland)Roberto Carniel, ALSI – Tecnoteca (Italy)

UPENET Advisory BoardFranco Filippazzi (Mondo Digitale, Italy)Rafael Fernández Calvo (Novática, Spain)Veith Risak (OCG Journal, Austria)Panicos Masouras (Pliroforiki, Cyprus)Andrzej Marciniak (Pro Dialog, Poland)

English Editors: Mike Andersson, Richard Butchart, David Cash, Arthur Cook,Tracey Darch, Laura Davies, Nick Dunn, Rodney Fennemore, Hilary Green,Roger Harris, Michael Hird, Jim Holder, Alasdair MacLeod, Pat Moody, AdamDavid Moss, Phil Parkin, Brian Robson

Cover page designed by Antonio Crespo Foix, © ATI 2005Layout Design: François Louis NicoletComposition: Jorge Llácer-Gil de Ramales

Editorial correspondence: Rafael Fernández Calvo <[email protected]>Advertising correspondence: <[email protected]>

UPGRADE Newslist available at<http://www.upgrade-cepis.org/pages/editinfo.html#newslist>

Copyright© Novática 2005 (for the monograph and the cover page)© CEPIS 2005 (for the sections MOSAIC and UPENET)All rights reserved. Abstracting is permitted with credit to the source. For copying,reprint, or republication permission, contact the Editorial Team

The opinions expressed by the authors are their exclusive responsibility

ISSN 1684-5285

Monograph of next issue (August 2005):"Normalisation & Standardisation

in IT Security"(The full schedule of UPGRADE

is available at our website)

Monograph: Libre Software as A Field of Study (published jointly with Novática*, in cooperation with the

European project CALIBRE)Guest Editors: Jesús M. González-Barahona and Stefan Koch

2 PresentationLibre Software under The Microscope — Jesús M. González-Barahonaand Stefan Koch

5 CALIBRE at The Crest of European Open Source Software Wave —Andrea Deverell and Par Agerfalk

6 Libre Software Movement: The Next Evolution of The IT ProductionOrganization? — Nicolas Jullien

13 Measuring Libre Software Using Debian 3.1 (Sarge) as A Case Study:Preliminary Results — Juan-José Amor-Iglesias, Jesús M. González-Barahona, Gregorio Robles-Martínez, and Israel Herráiz-Tabernero

17 An Institutional Analysis Approach to Studying Libre Software‘Commons’ — Charles M. Schweik

28 About Closed-door Free/Libre/Open Source (FLOSS) Projects: Lessonsfrom the Mozilla Firefox Developer Recruitment Approach — SandeepKrishnamurthy

33 Agility and Libre Software Development — Alberto Sillitti and GiancarloSucci

38 The Challenges of Using Open Source Software as A Reuse Strategy —Christian Neumann and Christoph Breidert

43 Computational LinguisticsMultilingual Approaches to Text Categorisation — Juan-José García-Adeva, Rafael A. Calvo, and Diego López de Ipiña

52 Software EngineeringA Two Parameter Software Reliability Growth Model with An Im-plicit Adjustment Factor for Better Software Failure Prediction — S.Venkateswaran, K. Ekambavanan, and P. Vivekanandan

59 News & Events: Proposal of Directive on Software Patents Rejectedby The European Parliament

61 From Pliroforiki (CCS, Cyprus)Informatics LawSecurity, Surveillance and Monitoring of Electronic Communicationsat The Workplace — Olga Georgiades-Van der Pol

66 From Mondo Digitale (AICA, Italy)Evolutionary ComputationEvolutionary Algorithms: Concepts and Applications — Andrea G. B.Tettamanzi

UPENET (UPGRADE European NETwork)

MOSAIC

Page 3: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

UPGRADE Vol. VI, No., June 2005 61© CEPIS

UPENET

Informatics Law

Security, Surveillance and Monitoring ofElectronic Communications at The Workplace

Olga Georgiades-Van der Pol

© Pliroforiki 2005This paper was first published, in English, by Pliroforiki (issue no. 11, June 2005, pp. 10-16). Pliroforiki, (“Informatics” in Greek), a founding memberof UPENET (Upgrade European Network), is a journal published, in Greek or English, by the Cyprus CEPIS society CCS (Cyprus Computer Society,<http://www.ccs.org.cy/about/>)

This article, which is an extract from the author’s book "PRIVACY: Processing of Personal Data, Obligations of Compa-nies, Surveillance of Employees, Privacy on the Internet", has as its main objective to offer a first approach to the securityobligations of companies in relation to the personal information they hold about their employees. It also gives an overviewof the rights and obligations of the company when monitoring its employees for the purpose of ensuring the security of itssystems.

This section includes articles published by the journals that make part of UPENET.For further information see <http://www.upgrade-cepis.org/pages/upenet.html>.

Keywords: Electronic Communica-tions, Monitoring, Privacy, Security,Surveillance, Workers’s Rights,Workplace.

1 IntroductionThe vast majority of the population

will either permanently or at varioustimes find itself in an employment re-lationship in the public or private sec-tor. The availability and use of manynew monitoring technical methodsavailable to the company is raising newissues such as the extent of monitor-ing workers’ communications (e-mailand telephone calls), workplace super-

Olga Georgiades-Van der Pol is theholder of a Bachelor of Laws (LLB) inEnglish Law and French Law from theUniversity of East Anglia, UK, and of aMasters’ in Laws (LLM) in EuropeanLaw with Telecommunications Lawfrom the University College London(UCL), UK. She is also a holder of aDiploma of French higher legal studiesfrom the University of RobertSchumann, Strasbourg, France. Olga hastrained in the European Commission, atthe Information Society Directorate.Since she has been admitted as a Lawyer,she has worked as an Advocate at Lellos

P. Demetriades Law Office in Nicosia,Cyprus, heading the European and I.T.Law department, where she specialisesin European Law, Internet Law,Telecommunications Law andCompetition Law. She is the author ofvarious books and reports concentratingon Privacy, Processing of Personal Data,Surveillance of Employees, Privacy onthe Internet & Obligations ofCompanies, Financial Assistance forCyprus under EU programs andCompetition Law in Cyprus especiallyin the field of Telecommunications.<[email protected]>

vision, workers’ data transfer to thirdparties, use of biometric methods forcontrolling access in the workplace,etc.

2 Security Issues in KeepingEmployee Data2.1 Main PrinciplesBy virtue of the Cyprus Data Pro-

tection Law1, the employer must takethe appropriate organizational andtechnical measures for the security ofworker’s personal data and their pro-tection against accidental or unlawfuldestruction, accidental loss, alteration,unauthorised dissemination or accessand any other form of unlawfulprocessing. Such measures must en-

1 S.10 of the Processing of Personal Data (pro-tection of the Person) Law of 2001, LawN.138(I)/2001 as amended. (Available at <http:// w w w. m o h . g o v . c y / m o h / m o h . n s f / 0 /9267FFD2810B177EC2256D49003 E D1FC?OpenDocument>.)

(Keywords and section numbering added by the Editor of UPGRADE.)

Page 4: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

62 UPGRADE Vol. VI, No., June 2005 © CEPIS

UPENET

2. Personal data should, in principle,be used only for the purposes for whichthey were originally collected.3. If personal data are to be processedfor purposes other than those for whichthey were collected, the employershould ensure that they are not used ina manner incompatible with the origi-nal purpose, and should take the nec-essary measures to avoid any misinter-pretation caused by a change of con-text.4. Personal data collected in connec-tion with technical or organisationalmeasures to ensure the security andproper operation of automated infor-mation systems should not be used tocontrol the behaviour of workers.5. Decisions concerning a workershould not be based solely on the au-tomated processing of that worker’spersonal data.

3 Security Issues in Monitor-ing Employee Electronic Com-munications

3.1 Main PrinciplesThis issue concerns the question

what are the acceptable limits of moni-toring by the company of e-mail andInternet use by employees and whatconstitutes legitimate monitoring ac-tivities.

The basic principle is that workersdo not abandon their right to privacyand data protection every morning atthe doors of the workplace3. They dohave a legitimate expectation of a cer-tain degree of privacy in the workplaceas they develop a significant part oftheir relationships with other humanbeings within the workplace. Their fun-damental right of privacy is safe-guarded by Article 15 of the Constitu-tion of the Republic of Cyprus, by Ar-ticle 8 of the Convention for the Pro-

tection of Human Rights and Funda-mental Freedoms and by other Euro-pean and international legislative in-struments.

While new technologies constitutea positive development of the resourcesavailable to employers, tools of elec-tronic surveillance present the possi-bility of being used in such a way soas to intrude upon the fundamentalrights and freedoms of workers. Itshould not be forgotten that with thecoming of the information technolo-gies it is vital that workers should en-joy the same rights whether they workon-line or off-line.

However, companies should notpanic. While workers have a right to acertain degree of privacy in the work-place, this right must be balanced withother legitimate rights and interests ofthe company as employer, in particu-lar:

The need to ensure the security ofthe system.

The employer’s right to run and con-trol the functioning of his business ef-ficiently.

The right to protect his legitimateinterests from the liability or the harmthat workers’ actions may create, forexample the employer’s liability for theaction of their workers, i.e. from crimi-nal activities.

The need of the employer to protecthis business from significant threats,such as to prevent transmission of con-fidential information to a competitor.

These rights and interests constitutelegitimate grounds that may justifyappropriate measures to limit the work-er’s right to privacy.4

Nevertheless, balancing differentrights and interests requires taking anumber of principles into account, inparticular proportionality. The simplefact that a monitoring activity or sur-

sure a level of security which is pro-portionate to the risks involved in theprocessing and the nature of the dataprocessed. As a result, employee per-sonal data must remain safe from thecuriosity of other workers or third par-ties not employed by the company.Within this context, employers mustuse appropriate technological meansfor preventing such unauthorised ac-cess or disclosure, allowing in any casethe identification of the staff access-ing the files.

Where an external data processoris used by the company, there must bea contract between him and the em-ployer, providing security guaranteesand ensuring that the processor actsonly according to the employer’s in-structions. The European Union2 rec-ommends that the following securitymeasures be used at the workplace:

Password/identification systems foraccess to computerised employmentrecords;

Login and tracing of access and dis-closures;

Backup copies;Encryption of messages, in particu-

lar when the data is transferred outsidethe company.

2.2 Code of Practice of TheInternational Labour Office on TheProtection of Workers’ PersonalData

In the field of employment, theData Protection Commissioner maytake into account the Code of Practiceof the International Labour Office onthe protection of workers’ personaldata which establishes the followinggeneral principles:1. Personal data should be processedlawfully and fairly, and only for rea-sons directly relevant to the employ-ment of the worker.

2 Article 29 Data Protection Working Party,Opinion 8/2001 on the processing of personaldata in the employment context, 5062/01/EN/Final, WP 48, 13 September 2001. (The Article29 Working Party is an advisory group composedby representatives of the data protection authori-ties of the European Union member States.)

3 Article 29 Data Protection Working Party,Working document on the surveillance of elec-tronic communications in the workplace, 5401/01/EN/Final, WP 55.

4 Article 29 Data Protection Working Party,Working document on the surveillance of elec-tronic communications in the workplace, 5401/01/EN/Final WP 55, 29 May 2002.

Page 5: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

UPGRADE Vol. VI, No., June 2005 63© CEPIS

UPENET

veillance is considered convenient toserve the employer’s interest, wouldnot solely justify any intrusion in work-er’s privacy. In this respect, where theobjective identified can be achieved ina less intrusive way, the employershould consider this option. For exam-ple, the employer should avoid systemsthat monitor the worker automaticallyand continuously.

3.2 The Constitution of TheRepublic of Cyprus

The Right of Privacy is safeguardedby Article 15.1 of the Constitution ofCyprus, that reads:

"1. Every person has the right torespect for his private and family life.

2. There shall be no interference withthe exercise of this right except such asis in accordance with the law and is nec-essary only in the interests of the secu-rity of the Republic or the constitutionalorder or the public safety or the publicorder or the public health or the publicmorals or for the protection of the rightsand liberties guaranteed by this Consti-tution to any person."

3.3 The European Convention forThe Protection of Human Rights

Article 15.1 of the Constitution ofCyprus is modelled on Article 8 of theEuropean Convention of HumanRights which has been ratified by theEuropean Convention on HumanRights (Ratification) Law of 19625.Article 8 reads:

"1. Everyone has the right to re-spect for his private and family life, hishome and his correspondence.

2. There shall be no interference bya public authority with the exercise ofthis right except such as is in accord-ance with the law and is necessary ina democratic society in the interests ofnational security, public safety or theeconomic well-being of the country, forthe prevention of disorder or crime, forthe protection of health or morals, orfor the protection of the rights andfreedoms of others."

3.3 Case Law of The EuropeanCourt of Human Rights

The position of the European Courtof Human Rights is that the protectionof "private life" enshrined in Article 8does not exclude the professional lifeas a worker and is not limited to lifewithin home.

In the case of Niemitz v. Germany6

that concerned the search by a govern-ment authority of the complainant’soffice, the Court stated that respect forprivate life must also comprise to acertain degree the right to establish anddevelop relationships with other hu-man beings. There appears, further-more, to be no reason of principle whythis understanding of the notion of "pri-vate life" should be taken to excludeactivities of a professional or businessnature since it is, after all, in the courseof their working lives that the major-ity of people have a significant, if notthe greatest, opportunity of develop-ing relationships with the outsideworld. This view is supported by thefact that it is not always possible to dis-tinguish clearly, which of an individu-al’s activities form part of his profes-sional or business life and which donot.

3.4 Code of Practice of TheInternational Labour Office on TheProtection of Workers’ PersonalData

The Code of Practice of the Inter-national Labour Office (ILO) estab-lishes the following general principleswith regards to monitoring of employ-ees:

"1. If workers are monitored, theyshould be informed in advance of thereasons for monitoring, the time sched-ule, the method and techniques usedand the data to be collected, i.e. byestablishing an e-policy."

2. Secret monitoring should bepermitted only:

(a) if it is in conformity with na-tional legislation, i.e. in accordancewith section 5 of the Data Protection

Law, it is necessary for safeguardingthe legitimate interests pursued by thecompany, on condition that such inter-ests override the rights, interests andfundamental freedoms of the employee.One such legitimate purpose is safe-guarding the security of the company;or

(b) if there is suspicion on reason-able grounds of criminal activity orother serious wrongdoing by the em-ployee.

3. Continuous monitoring shouldbe permitted only if required for healthand security or the protection of prop-erty, i.e. from theft.

4. Workers’ representatives, wherethey exist, and in conformity with na-tional law and practice, should be in-formed and consulted:

(a) concerning the introduction ormodification of automated systems thatprocess worker’s personal data,

(b) before the introduction of anyelectronic monitoring of workers’ be-haviour in the workplace,

(c) about the purpose, contents andthe manner of administering and in-terpreting any questionnaires and testsconcerning the personal data of theworkers."

3.5 Position of The Article 29Data Protection Working Party ofThe European Community

According to the Article 29 DataProtection Working Party of the Euro-pean Community, prevention shouldbe more important than detection.In other words, the interest of the em-ployer is better served in preventingInternet misuse rather than in detect-ing such misuse. In this context, tech-nological solutions are particularly use-ful. A ban on personal use of theInternet by employees does not appearto be reasonable and fails to reflect thedegree to which the Internet can assistemployees in their daily lives.

3.6 Obligation to Inform TheWorker - Transparency

An employer must be clear andopen about his activities and should notengage in covert e-mail monitoringexcept where specific criminal activ-ity or security breach has been identi-

5 Cyprus Law No. 39/1962. 6 23 November 1992, Series A n° 251/B, par.29. Available at <http://www. worldlii. org/eu/cases/ECHR/1992/80.html>.

Page 6: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

64 UPGRADE Vol. VI, No., June 2005 © CEPIS

UPENET

fied. The Data Protection Commission-er’s authorisation should be requestedfor this.

The employer has to provide hisworkers with a readily accessible, clearand accurate statement of his policywith regard to e-mail and Internetmonitoring. Elements of this informa-tion should be: E-mail/Internet policy within the

company describing in detail the ex-tent to which communication facilitiesowned by the company may be usedfor personal/private communicationsby the employees (e.g. limitation ontime and duration of use). Reasons and purposes for which

surveillance, if any, is being carriedout. Where the employer has allowedthe use of the company’s communica-tion facilities for express private pur-poses, such private communicationsmay under very limited circumstancesbe subject to surveillance, e.g. to en-sure the security of the informationsystem and virus checking. The details of surveillance meas-

ures taken, i.e. by whom, for what pur-pose, how and when. Details of any enforcement proce-

dures outlining how and when work-ers will be notified of breaches of in-ternal policies and be given the oppor-tunity to respond to any such claimsagainst them.

It is essential that the employer alsoinform the worker of: The presence, use and purpose of

any detection equipment and/or appa-ratus activated with regards to his/herworking station; and Any misuse of the electronic com-

munications detected (e-mail or theInternet), unless important reasons jus-tify the continuation of the secret sur-veillance.

The employer should immediatelyinform the worker of any misuse of theelectronic communications detected,unless important reasons justify thecontinuation of the surveillance.Prompt information can be easily de-livered by software such as warningwindows, which pop up and alert theworker that the system has detectedand/or has taken steps to prevent anunauthorised use of the network.

3.7 Necessity of MonitoringThe employer must check if any

form of monitoring is absolutely nec-essary for a specified purpose beforeproceeding to engage in any such ac-tivity. Traditional methods of supervi-sion that are less intrusive for the pri-vacy of individuals should be preferredbefore engaging in any monitoring ofelectronic communications.

It would only be in exceptional cir-cumstances that the monitoring of aworkers mail or Internet use would beconsidered necessary. For instance,monitoring of a worker’s e-mail maybecome necessary in order to obtainconfirmation or proof of certain actionson his part.

Such actions would include crimi-nal activity on the part of the workerinsofar as it is necessary for the em-ployer to defend his own interests, forexample, where he is vicariously liablefor the actions of the worker. Theseactivities would also include detectionof viruses and in general terms any ac-tivity carried out by the employer toguarantee the security of the system.

It should be mentioned that open-ing an employee’s e-mail may also benecessary for reasons other than moni-toring or surveillance, for example inorder to maintain correspondence incase the employee is out of office (e.g.sickness or holidays) and correspond-ence cannot be guaranteed otherwise(e.g. via auto reply or automatic for-warding).

3.8 ProportionalityThe monitoring of e-mails should,

if possible, be limited to traffic data onthe participants and time of a commu-nication rather than the contents ofcommunications.

If access to the e-mail’s content isabsolutely necessary, account shouldbe taken of the privacy of those out-side the organisation receiving them aswell as those inside. The employer, forinstance, cannot obtain the consent ofthose outside the company sending e-mails to his workers. The employershould make reasonable efforts to in-form those outside the organisation ofthe existence of monitoring activitiesto the extent that people outside the

organisation could be affected by them.A practical example could be the in-sertion of warning notices regardingthe existence of the monitoring sys-tems, which may be added to all out-bound messages from the company (e-mail notices).

Since technology gives the em-ployer much opportunity to assess theuse of e-mail by his workers by check-ing, for example, the number of mailssent or received or the format of anyattachments, as a result the actual open-ing of mails would be considered dis-proportionate.

Technology can further be used toensure that the measures taken by anemployer to safeguard the Internet ac-cess he provides to his workers fromabuse are proportionate by utilisingblocking, as opposed to monitoring,mechanisms:

(a) In the case of the Internet, com-panies could use, for example, softwaretools that can be configured in orderto block any connection to predeter-mined categories of websites. The em-ployer can, after consultation of theaggregated list of websites visited byhis employees, decide to add somewebsites to the list of those alreadyblocked (possibly after notice to theemployees that connection to such sitewill be blocked except if the need toconnect to that site is demonstrated byan employee).

(b) In the case of e-mail, companiescould use, for example, an automaticredirect facility to an isolated server,for all e-mails exceeding a certain size.The intended recipient is automaticallyinformed that a suspect e-mail has beenredirected to that server and can beconsulted there.

3.9 Two E-mail Accounts /Web-mail

The Article 29 Data ProtectionWorking Party recommends that, as apragmatic solution of the problem atissue and for the purpose of reducingthe possibility of employers invading

7 Webmail is a web e-mail system, which pro-vides web based e-mail from any POP or IMAPserver, which is generally user name and pass-word protected.

Page 7: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

UPGRADE Vol. VI, No., June 2005 65© CEPIS

UPENET

their workers’ privacy, employersshould adopt a policy providing work-ers with two e-mail accounts or web-mail:7

one for only professional purposes,in which monitoring within thelimits of this working documentwould be possible,another account only for purelyprivate purposes (or authorisationfor the use of web mail), whichwould only be subject to securitymeasures and would be checkedfor abuse in exceptional cases.If an employer adopts such a policy

then it would be possible, in specificcases where there is a serious suspi-cion about the behaviour of a worker,to monitor the extent to which thatworker is using their PC for personalpurposes by noting the time spent inweb-mail accounts. In this way theemployer’s interests would be servedwithout any possibility of worker’spersonal data being disclosed.

Furthermore such a policy may beof benefit to workers as it would pro-vide certainty for them as to level ofprivacy they can expect which may belacking in more complex and confus-ing codes of conduct.

3.10 Company Internet PoliciesThe employer must set out clearly

to workers the conditions on whichprivate use of the Internet is permittedas well as specifying material, whichcannot be viewed or copied. Theseconditions and limitations have to beexplained to the workers.

In addition, workers need to be in-formed about the systems imple-mented both to prevent access to cer-tain sites and to detect misuse.

The extent of such monitoringshould be specified, for instance,whether such monitoring relates to in-dividuals or particular sections of thecompany or whether the content of thesites visited is viewed or recorded bythe employer in particular circum-stances.

Furthermore, the policy shouldspecify what use, if any, will be madeof any data collected in relation to whovisited what sites.

Employers should finally inform

workers about the involvement of theirrepresentatives, both in the implemen-tation of this policy and in the investi-gation of alleged breaches.

4 Conclusions - Recommenda-tionsSurveillance of workers is not a

new issue. In the past, companies mayhave gone about monitoring their em-ployees without giving much thoughtof the legal implications, mainly be-cause little legislation existed regulat-ing such monitoring.

However, this is not the case today.With the enactment of the Data Pro-tection Law in 2001 for the purpose ofharmonising Cypriot legislation withEuropean Union Directives on the pro-tection of individuals with regard to theprocessing of personal data, specificrules have been imposed on companieswhen monitoring e-mail communica-tions and surveillance of Internet ac-cess of employees.

Companies should not be alarmedby the rules set out in the law and de-scribed in this article. On the contrary,these rules should serve as a guidelinefor the legitimate surveillance of theiremployees and for avoiding any legalliability and fines.

Companies do have a right to moni-tor their employees but this right mustbe exercised with due care and for spe-cific purposes, i.e. for ensuring the se-curity of their systems, for running andcontrolling the functioning of theirbusiness efficiently, for protecting theirbusiness from significant threats, suchas to prevent transmission of confiden-tial information to a competitor or foravoiding liability from their employ-ees criminal activities.

In order to avoid any legal prob-lems, the author strongly recommendsto companies that need to monitor theiremployees to set up an e-policy docu-ment setting out clearly to workers theconditions on which such monitoringor surveillance will be carried out.

Page 8: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

66 UPGRADE Vol. VI, No., June 2005 © CEPIS

UPENET

Evolutionary Algorithms: Concepts and Applications

Andrea G. B. Tettamanzi

Evolutionary Computation

© Mondo Digitale, 2005This paper was first published, in its original Italian version, under the title “Algoritmi evolutivi: concetti e applicazioni”, by MondoDigitale (issue no. 3, March 2005, pp. 3-17, available at <http://www.mondodigitale.net/>). Mondo Digitale, a founding member ofUPENET, is the digital journal of the CEPIS Italian society AICA (Associazione Italiana per l’Informatica ed il Calcolo Automatico,<http://www.aicanet.it/>.)

Evolutionary algorithms are a family of stochastic problem-solving techniques, within the broader category of what wemight call “natural-metaphor models”, together with neural networks, ant systems, etc. They find their inspiration inbiology and, in particular, they are based on mimicking the mechanisms of what we know as “natural evolution”. Duringthe last twenty-five years these techniques have been applied to a large number of problems of great practical and eco-nomic importance with excellent results. This paper presents a survey of these techniques and a few sample applications.

Andrea Tettamanzi is an AssociateProfessor at the Information TechnologyDept. of the University of Milan, Italy.He received his M.Sc. in ComputerScience in 1991, and a Ph.D. inComputational Mathematics andOperations Research in 1995. In thesame year he founded Genetica S.r.l., aMilan-based company specialising inindustrial applications for evolutionaryalgorithms and soft computing. He isactive in research into evolutionaryalgorithms and soft computing, where hehas always striven to bridge the gapbetween theoretical aspects and practicaland applicational aspects.<[email protected]>

Keywords: Evolutionary Algorithms,Evolutionary Computation, Natural-metaphor Models.

1 What Are Evolutionary Algo-rithms?If we think about living beings, in-

cluding humans, and their organs, theircomplexity, and their perfection, wecannot help but wonder how it waspossible for such sophisticated solu-tions to have evolved autonomously.Yet there is a theory, initially proposedby Charles Darwin and later refined bymany other natural scientists, biolo-gists and geneticists, which provides asatisfactory explanation for most ofthese biological phenomena by study-ing the mechanisms which enable spe-cies to adapt to mutable and complexenvironments. This theory is supportedby a considerable body of evidence andhas yet to be refuted by any experimen-tal data. According to Darwin’s theory,these wonderful creations are simplythe result of a purposeless evolution-ary process, driven on the one hand byrandomness and on the other hand bythe law of the survival of the fittest.Such is natural evolution.

If such a process has been capableof producing something as sophisti-cated as the eye, the immune system,

and even our brain, it would seem onlylogical to try and do the same by simu-lating the process on computers to at-tempt to solve complicated problemsin the real world. This is the idea be-hind the development of evolutionaryalgorithms (see the box entitled "SomeHistory" for the birth and evolution ofthese algorithms).

1.1 The Underlying MetaphorEvolutionary algorithms are thus

bio-inspired computer-science tech-niques based on a metaphor which isschematically outlined in Table 1. Justas an individual in a population of or-ganisms must adapt to its surroundingenvironment to survive and reproduce,so a candidate solution must be adaptedto solving its particular problem. Theproblem is the environment in which asolution lives within a population ofother candidate solutions. Solutionsdiffer from one another in terms of theirquality, i.e., their cost or merit, re-flected by the evaluation of the objec-tive function, in the same way as theindividuals of a population of organ-isms differ from one another in termsof their degree of adaptation to the en-vironment; what biologists refer to asfitness. If natural selection allows apopulation of organisms to adapt to its

surrounding environment, when ap-plied to a population of solutions to aproblem, it should also be able to bringabout the evolution of better and bet-ter, and eventually, given enough time,optimal solutions.

Based on this metaphor, the com-putational model borrows a number ofconcepts and their relevant terms frombiology: every solution is coded bymeans of one or more chromosomes;the genes are the pieces of encodingresponsible for one or more traits of asolution; the alleles are the possibleconfigurations a gene can take on; the

(Keywords added by the Editor of UPGRADE.)

Page 9: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

UPGRADE Vol. VI, No., June 2005 67© CEPIS

UPENET

Some History

The idea of using selection and random mutation for optimisation tasksgoes back to the fifties at least and the work of the statistician George E. P.Box, the man who famously said "all models are wrong, but some are useful".Box, however, did not make use of computers, though he did manage to for-mulate a statistical methodology that would become widely used in industry,which he called evolutionary operation [1]. At around the same time, otherscholars conceived the idea of simulating evolution on computers: Barricelliand Fraser used computer simulations to study the mechanisms of naturalevolution, while the bio-mathematician Hans J. Bremermann is credited asbeing the first person to recognise an optimisation process in biological evolu-tion [2].

As often happens with pioneering ideas, these early efforts met with con-siderable scepticism. Nevertheless, the time was evidently ripe for those ideas,in an embryonic stage at that point, to be developed. A decisive factor behindtheir development was the fact that the computational power available at thattime in major universities broke through a critical threshold, allowing evolu-tionary computation to be put into practice at last. What we recognise today asthe original varieties of evolutionary algorithms were invented independentlyand practically simultaneously in the mid sixties by three separate researchgroups. In America, Lawrence Fogel and colleagues at the University of Cali-fornia in San Diego laid down the foundations of evolutionary programming[3], while at the University of Michigan in Ann Arbor John Holland proposed hisfirst genetic algorithms [4]. In Europe, Ingo Rechenberg and colleagues, thenstudents at the Technical University of Berlin, created what they called "evolutionstrategies" (Evolutionsstrategien) [5]. During the following 25 years, each of thesethree threads developed essentially on its own, until in 1990 there was a con-certed effort to bring about their convergence. The first edition of the PPSN(Parallel Problem Solving from Nature) conference was held that year in Dort-mund. Since then, researchers interested in evolutionary computation form asingle, albeit articulated, scientific

exchange of genetic material betweentwo chromosomes is called crossover,whereas a perturbation to the code ofa solution is termed mutation (see thebox entitled "A Genetic Algorithm atWork" for an example).

Although the computational modelinvolves drastic simpli-fications com-pared to the natural world, evolution-ary algorithms have proved capable ofcausing surprisingly complex and in-teresting structures to emerge. Givenappropriate encoding, any individual

can be the representation of a particu-lar solution to a problem, the strategyfor a game, a plan, a picture, or even asimple computer program.

1.2 The Ingredients of AnEvolutionary Algorithm

Now we have introduced the con-cepts, let us take a look at what an evo-lutionary algorithm consists of in prac-tice.

An evolutionary algorithm is astochastic optimisation technique that

proceeds in an iterative way. An evo-lutionary algorithms maintains a popu-lation (which in this context means amultiset or bag, i.e., a collection of el-ements not necessarily all distinct fromone another) of individuals represent-ing candidate solutions for the prob-lem at hand (the object problem), andmakes it evolve by applying a (usuallyquite small) number of stochastic op-erators: mutation, recombination, andselection.

Mutation can be any operator thatrandomly perturbs a solution. Recom-bination operators decompose two ormore distinct individuals and thencombine their constituent parts to forma number of new individuals. Selectioncreates copies of those individuals thatrepresent the best solutions within thepopulation at a rate proportional totheir fitness.

The initial population may origi-nate from a random sampling of thesolution space or from a set of initialsolutions found by simple local searchprocedures, if available, or determinedby a human expert.

Stochastic operators, applied andcomposed according to the rules de-fining a specific evolutionary algo-rithm, determine a stochastic popula-tion-transforming operator. Based onthat operator, it is possible to model theworkings of an evolutionary algorithmas a Markov chain whose states arepopulations. It is possible to prove that,given some entirely reasonable as-sumptions, such a stochastic processwill converge to the global optimumof the problem [16].

When talking about evolutionaryalgorithms, we often hear the phraseimplicit parallelism. This term refersto the fact that each individual can bethought of as a representative of amultitude of solution schemata, i.e., ofpartially specified solutions, such that,while processing a single individual,the evolutionary algorithm will in factbe implicitly processing at the sametime (i.e., in parallel) all the solutionschemata of which that individual is arepresentative. This concept should notbe confused with the inherent paral-lelism of evolutionary algorithms. Thisrefers to the fact that they carry out a

EVOLUTION PROBLEMSOLVING

Environment Object problemIndividual Candidate solutionFitness Solution quality

Table 1: A Schematic Illustration of The Metaphor UnderlyingEvolutionary Algorithms.

Page 10: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

68 UPGRADE Vol. VI, No., June 2005 © CEPIS

UPENET

A Genetic Algorithm at Work

We can take a close look at how a genetic algorithm works by using an example. Let us assume we have to solve aproblem, called maxone, which consists of searching for all binary strings of length l for the string containing the maxi-mum number of ones. At first sight this might seem to be a trivial problem, as we know the solution beforehand: it will bethe string made up entirely of ones. However, if we were to suppose that we had to make l binary choices to solve aproblem, and that the quality of the solution were proportional to the number of correct choices we made, then we wouldhave a problem of equivalent difficulty, by no means easy to solve. In this example we assume that all correct choicescorrespond to a one merely to make the example easier to follow. We can therefore define the fitness of a solution as thenumber of ones in its binary coding, set l = 10, which is a number small enough to make things manageable, and try toapply the genetic algorithm to this problem.

First of all, we have to establish the size of the population. A sensiblechoice to begin with might be 6 individuals. At this point, we need togenerate an initial population: we will do this by tossing a fair coin 60times (6 individuals times 10 binary digits) and writing 0 if the out-come is 'heads' and 1 if the outcome is 'tails'. The initial populationthus obtained is shown in Table A. Note that the average fitness inthe initial population is 5.67.

The evolutionary cycle can now begin. To use fitness-proportionateselection, the simplest method is to simulate throwing a ball into aspecial roulette wheel which has as many slots as individuals in thepopulation (6 in this case). Each slot has a width that is to the cir-cumference of the wheel as the fitness of the corresponding indi-vidual is to the sum of the fitness of all the individuals in the popula-tion (36 in this case). Therefore, when we spin the wheel, the ball willhave a 7/34 probability of coming to rest in the individual 1 slot, 5/34of landing in the individual 2 slot, and so on. We will have to throw the ball exactly 6 times in order to put together anintermediate population of 6 strings for reproduction. Let us assume the outcomes are: 1, 3, 5, 2, 4, and 5 again. Thismeans two copies of individual 5 and a single copy of the other individuals with the exception of individual 6 will be usedfor reproduction. Individual 6 will not leave descendants. The next operator to be applied is recombination. Couples areformed, the first individual extracted with the second, the third with the fourth, and so forth. For each couple, we decidewith a given probability, say 0.6, whether to perform crossover. Let us assume that we perform crossover with only thefirst and the last couple, with cutting points randomly chosen after the second digit and after the fifth digit respectively.For the first couple, we will have

11.11010101 becoming 11.1011010111.10110101 " 11.11010101.

We observe that, since the parts to the left of the cutting point are identical, this crossover will have no effect. Thiscontingency is more common than you might imagine, especially when, after many generations, the population is full ofequally good and nearly identical individuals. For the third couple we will have instead

01000.10011 becoming 01000.1110111101.11101 " 11101.10011.

All that remains is to apply mutation to the six strings resultingfrom recombination by deciding with a probability of, say, 1/10 foreach digit whether to invert it. As there are 60 binary digits in total,we would expect an average of 6 mutations randomly distributedover the whole population. After applying all the genetic operators,the new population might be the one shown in Table B, where themutated binary digits have been highlighted in bold type.

In one generation, the average fitness in the population haschanged from 5.67 to 6.17, with an 8.8% increase. By iterating thesame process again and again, very quickly we reach a point atwhich an individual made entirely of ones appears, the optimalsolution to our problem.

NO. INDIVIDUAL FITNESS

1) 1111010101 72) 0111000101 53) 1110110101 74) 0100010011 45) 1110111101 86) 0100110000 3

Table A: The Initial Population of The GeneticAlgorithm to Solve The maxone Problem,Showing The Fitness for All Individuals.

NO. INDIVIDUAL FITNESS

1) 1110100101 62) 1111110100 73) 1110101111 84) 0111000101 55) 0100011101 56) 1110110001 6

Table B: The Population of The GeneticAlgorithm to Solve The maxone Problem afterOne Generation, Showing The Fitness for AllIndividuals.

Page 11: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

UPGRADE Vol. VI, No., June 2005 69© CEPIS

UPENET

population-based search, which meansthat, although for the sake of conven-ience they are usually expressed bymeans of a sequential description, theyare particularly useful and easy to im-plement on parallel hardware.

1.3 Genetic AlgorithmsThe best way to understand how

evolutionary algorithms work is to con-sider one of their simplest versions,namely genetic algorithms [6]. In ge-netic algorithms, solutions are repre-sented as fixed-length binary strings.This type of representation is by far themost general, although, as we shall seebelow, not always the most convenient,although the fact is that any data struc-ture, no matter how complex and ar-ticulated, will always be encoded inbinary in a computer’s memory. A se-quence of two symbols, 0 and 1, fromwhich it is possible to reconstruct asolution, is very reminiscent of a DNAthread made up of a sequence of fourbases, A, C, G, and T, from which it ispossible to reconstruct a living organ-ism! In other words, we can consider abinary string as the DNA of a solutionto the object problem.

A genetic algorithm consists of twoparts:1. a routine that generates (randomlyor by using heuristics) the initial popu-lation;2. an evolutionary cycle, which at eachiteration (or generation), creates a newpopulation by applying the geneticoperators to the previous population.

The evolutionary cycle of the ge-netic algorithms can be representedusing the pseudocode in Table 2. Eachindividual is assigned a particular fit-ness value, which depends on the qual-ity of the solution it represents. Thefirst operator to be applied is selection,whose purpose is to simulate the Dar-winian law of the survival of the fit-test. In the original version of geneticalgorithms, that law is implemented bymeans of what is known as the fitness-proportionate selection: to create a newintermediate population of n ‘parent’individuals, n independent extractionsof an individual from the existingpopulation are carried out, where theprobability for each individual to beextracted is directly proportional to its

fitness. As a consequence, above-av-erage individuals will be extractedmore than once on average, whereasbelow-average individuals will faceextinction.

Once n parents are extracted as de-scribed, the individuals of the next gen-eration will be produced by applying anumber of reproduction operators,which may involve one parent only(thus simulating a sort of asexual re-production) in which case we speak ofmutation, or more than one parent, usu-ally two (sexual reproduction), inwhich case we speak of recombination.In genetic algorithms, two reproduc-tion operators are used: crossover andmutation.

To apply crossover, the parent in-dividuals are mated two by two. Then,with a certain probability pcross, calledthe "crossover rate", which is a param-eter of the algorithm, each couple un-dergoes crossover itself. This is doneby lining up the two binary strings,cutting them at a randomly chosenpoint, and swapping the right-handhalves, thus yielding two new individu-als, which inherit part of their charac-ters from one parent and part from theother.

After crossover, all individuals un-dergo mutation, whose purpose is tosimulate the effect of random transcrip-tion errors that can happen with a verylow probability pmut every time a chro-mosome is duplicated. Mutationamounts to deciding whether to inverteach binary digit, independently of theothers, with probability pmut. In otherwords, every zero has probability pmutof becoming a one and vice versa.

The evolutionary cycle, accordingto how it is conceived, could go onforever. In practice, however, one has

to decide when to halt it, based on someuser-specified termination criterion.Examples of termination criteria are:· a fixed number of generations or acertain elapsed time;· a satisfactory solution, according tosome particular criterion, has beenfound;· no improvement has taken place fora given number of generations.

1.4 Evolution StrategiesEvolution strategies approach the

optimisation of a real-valued objectivefunction of real variables in an l-dimen-sional space. The most direct represen-tation is used for the independent vari-ables of the function (the solution),namely a vector of real numbers. Be-sides encoding the independent vari-ables, however, evolution strategiesgive the individual additional informa-tion on the probability distribution tobe used for its perturbation (mutationoperator). Depending on the version,this information may range from justthe variance, valid for all independentvariables, to the entire variance-covariance matrix C of a joint normaldistribution; in other words, the size ofan individual can range from l + 1 tol(l + 1) real numbers.

In its most general form, the muta-tion operator perturbs an individual intwo steps:1. It perturbs the C matrix (or, moreexactly, an equivalent matrix of rota-tion angles from which the C matrixcan be easily calculated) with the sameprobability distribution for all individu-als;2. It perturbs the parameter vector rep-resenting the solution to theoptimisation problem according to ajoint normal probability distribution

generation = 0Initialize populationwhile not <termination condition> do

generation = generation + 1Compute the fitness of all individualsSelectionCrossover(p

cross)

Mutation(pmut)

end while

Table 2: Pseudocode Illustrating A Typical Simple Genetic Algorithm.

Page 12: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

70 UPGRADE Vol. VI, No., June 2005 © CEPIS

UPENET

having mean 0 and the perturbed C asits variance-covariance matrix.

This mutation mechanism allowsthe algorithm to evolve the parametersof its search strategy autonomouslywhile it is searching for the optimalsolution. The resulting process, calledself-adaptation, is one of the mostpowerful and interesting features ofthis type of evolutionary algorithm.

Recombination in evolution strat-egies can take different forms. Themost frequently used are discrete andintermediate recombination. In dis-crete recombination, each componentof the offspring individuals is takenfrom one of the parents at random,while in intermediate recombinationeach component is obtained by linearcombination of the correspondingcomponents in the parents with a ran-dom parameter.

There are two alternative selectionschemes defining two classes of evo-lution strategies: (n, m) and (n + m). In(n, m) strategies, starting from a popu-lation of n individuals, m > n offspringare produced and the n best of themare selected to form the population ofthe next generation. In (n + m) strate-gies, on the other hand, the n parentindividuals participate in selection aswell. Of those n + m individuals, onlythe best n make it to the population ofthe next generation. Note that, in bothcases, selection is deterministic andworks "by truncation", i.e., by discard-ing the worst individuals. In this way,it is not necessary to define a non-nega-tive fitness, and optimisation can con-sider the objective function, which canbe maximised or minimised accordingto individual cases, directly.

1.5 Evolutionary ProgrammingEvolution, whether natural or arti-

ficial, has nothing ‘intelligent’ about it,in the literal sense of the term: it doesnot understand what it is doing, nor isit supposed to. Intelligence, assumingsuch a thing can be defined, is ratheran ‘emergent’ phenomenon of evolu-tion, in the sense that evolution maymanage to produce organisms or solu-tions endowed with some form of ‘in-telligence’.

Evolutionary programming is in-tended as an approach to artificial in-

telligence, as an alternative to symbolicreasoning techniques. Its goal is toevolve intelligent behaviours repre-sented through finite-state machinesrather than define them a priori. Inevolutionary programming, therefore,the object problem determines the in-put and output alphabet of a family offinite-state machines, and individualsare appropriate representations of fi-nite-states machines operating on thosealphabets. The natural representationof a finite-state machine is the matrixthat defines its state-transition and out-put functions. The definition of themutation and recombination operatorsis slightly more complex than in thecase of genetic algorithms or evolutionstrategies, as it has to take into accountthe structure of the objects those op-erators have to manipulate. The fitnessof an individual can be computed bytesting the finite-state machine it rep-resents on a set of instances of the prob-lem. For example, if we wish to evolveindividuals capable of modelling a his-torical series, we need to select anumber of pieces from the previousseries and feed them into an individual.We can then interpret the symbols pro-duced by the individual as predictionsand compare them with the actual datato measure their accuracy.

1.6 Genetic ProgrammingGenetic programming [7] is a rela-

tively new branch of evolutionary al-gorithms, whose goal is an old dreamof artificial intelligence: automatic pro-gramming. In a programming problem,a solution is a program in a given pro-

gramming language. In genetic pro-gramming, therefore, individuals rep-resent computer programs.

Any programming language can beused, at least in principle. However, thesyntax of most languages would makethe definition of the genetic operatorsthat preserve it particularly awkwardand burdensome. This is why early ef-forts in that direction found a sort ofrestricted LISP to be an ideal expres-sion medium of expression. LISP hasthe advantage of possessing a particu-larly simple syntax. Furthermore, itallows us to manipulate data and pro-grams in a uniform fashion. In prac-tice, approaching a programming prob-lem calls for the definition of a suit-able set of variables, constants, andprimitive functions, thus limiting thesearch space which would otherwisebe unwieldy. The functions chosen willbe those that a priori are deemed use-ful for the purpose. It is also custom-ary to try and arrange things so that allfunctions accept the results returned byall others as arguments, as well as allvariables and predefined constants. Asa consequence, the space of all possi-ble programs from which the programthat will solve the problem is to befound will contain all possible compo-sitions of functions that can be formedrecursively from the set of primitivefunctions, variables, and predefinedconstants.

For the sake of simplicity, and with-out loss of generality, a genetic pro-gramming individual can be regardedas the parse tree of the correspondingprogram, as illustrated in Figure 1. The

Figure 1: A Sample LISP Program with Its Associated Parse Tree.

rafa
Placed Image
Page 13: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

UPGRADE Vol. VI, No., June 2005 71© CEPIS

UPENET

recombination of two programs is car-ried out by randomly selecting a nodein the tree of both parents and by swap-ping the subtrees rooted in the selectednodes, as illustrated in Figure 2. Theimportance of the mutation operator islimited in genetic programming, forrecombination alone is capable creat-ing enough diversity to allow evolu-tion to work.

Computing the fitness of an indi-vidual is not so different from testinga program. A set of test cases must begiven as an integral part of the descrip-tion of the object problem. A test caseis a pair (input data, desired output).The test cases are used to test the pro-gram as follows: for each case, the pro-gram is executed with the relevant in-put data; the actual output is comparedwith the desired output; and the erroris measured. Finally, fitness is obtainedas a function of the accumulated totalerror over the whole test set.

An even more recent approach togenetic programming is what is knownas grammatical evolution [8], whosebasic idea is simple but powerful: giventhe grammar of a programming lan-guage (in this case completely arbi-trary, without limitations deriving fromits particular syntax), consisting of anumber of production rules, a programin this language is represented bymeans of a string of binary digits. Thisrepresentation is decoded by startingfrom the target non-terminal symbol ofthe grammar and reading the binarydigits from left to right – enough dig-its each time to be able to decide whichof the applicable production rulesshould actually be applied. The produc-tion rule is then applied and the decod-

ing continues. The string is consideredto be circular, so that the decodingprocess never runs out of digits. Theprocess finishes when no productionrule is applicable and a well-formedprogram has therefore been produced,which can be compiled and executedin a controlled environment.

2 ‘Modern’ Evolutionary Algo-rithmsSince the early eighties, evolution-

ary algorithms have been successfullyapplied to many real-world problemswhich are difficult or impossible tosolve with exact methods and are ofgreat interest to operations researchers.Evolutionary algorithms have gaineda respectable place in the problem solv-er’s toolbox, and this last quarter of acentury has witnessed the coming ofage of the various evolutionary tech-niques and their cross-fertilisation aswell as progressive hybridisation withother technologies.

If there is one major trend line inthis development process, it is the pro-gressive separation from elegant rep-resentations, based on binary strings,of the early genetic algorithms, so sug-gestively close to their biologicalsource of inspiration, and an increas-ing propensity for adopting represen-tations closer to the nature of the ob-ject problem, ones which map moredirectly onto the elements of a solu-tion, thus allowing all available infor-mation to be exploited to ‘help’, as itwere, the evolutionary process to findits way to the optimum [9].

Adopting representations closer tothe problem also necessarily impliesdesigning mutation and recombination

operators that manipulate the elementsof a solution in an explicit, informedmanner. On the one hand, those opera-tors end up being less general, but onthe other hand, the advantages in termsof performance are often remarkableand compensate for the increased de-sign effort.

Clearly, the demand for efficientsolutions has prompted a shift awayfrom the coherence of the geneticmodel.

2.1 Handling ConstraintsReal-world problems, encountered

in industry, business, finance and thepublic sector, whose solution often hasa significant economical impact andwhich constitute the main target ofoperations research, all share a com-mon feature: they have complex andhard to handle constraints. In earlywork on evolutionary computation, thebest way to approach constraint han-dling was not clear. Over time, evolu-tionary algorithms began to be appre-ciated as approximate methods for op-erations research and they have beenable to take advantage of techniquesand expedients devised within theframework of operations research forother approximate methods. Threemain techniques emerged from thiscross-fertilisation, which can be com-bined if needed, that enable nontrivialconstraints to be taken into account inan evolutionary algorithm:· the use of penalty functions;· the use of decoders or repair algo-rithms;· the design of specialised encodingsand genetic operators.

Penalty functions are functions as-sociated with each problem constraintthat measure the degree to which a so-lution violates its relevant constraint.As the name suggests, these functionsare combined with the objective func-tion in order to penalise the fitness ofindividuals that do not respect certainconstraints. Although the penalty func-tion approach is a very general one,easy to apply to all kinds of problems,its use is not without pitfalls. If pen-alty functions are not accuratelyweighted, the algorithm can waste a

Figure 2: Schematic Illustration of Recombination in Genetic Programming.

OROR

ANDANDNOTNOT

d0d0 d0d0 d1d1

OROR

OROR ANDAND

d1d1 NOTNOT NOTNOT NOTNOT

d0d0 d0d0 d1d1

OROR

ANDAND NOTNOT

d0d0d0d0 d1d1

OROR

ORORANDAND

d1d1 NOTNOTNOTNOT NOTNOT

d0d0d0d0 d1d1

Page 14: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

72 UPGRADE Vol. VI, No., June 2005 © CEPIS

UPENET

great deal of time processing infeasi-ble solutions, or it might even end upconverging to an apparent optimumwhich is actually impossible to imple-ment. For instance, in a transportationproblem, described by n factories andm customers to which a given quantityof a commodity has to be delivered,where the cost of transporting a unitof the commodity from every factoryto any of the customers, a solutions thatminimises the overall cost in an unbeat-able way is the solution where abso-lutely nothing is transported! If the vio-lation of the constraints imposing thatthe ordered quantity of the commodityis delivered to each customer is notpenalised to a sufficient extent, theabsurd solution of not delivering any-thing could come out as better than anysolution that actually meets customers’orders. For some problems, called fea-sibility problems, finding a solutionthat doe not violate any constraint isalmost as difficult as finding the opti-mum solution. For this kind of prob-lems, penalty functions have to be de-signed with care or else the evolutionmay never succeed in finding any fea-sible solution.

Decoders are algorithms based ona parameterised heuristics, which aimto construct an optimal solution fromscratch by making a number of choices.When such an algorithm is available,the idea is to encode the parameters ofthe heuristics into the individuals proc-essed by the evolutionary algorithms,rather than the solution directly, and touse the decoder to reconstruct the cor-responding solution from the param-eter values. We have thus what wemight call an indirect representation ofsolutions.

Repair algorithms are operatorsthat, based on some heuristics, take aninfeasible solution and ‘repair’ it byenforcing the satisfaction of one vio-lated constraint, then of another, andso on, until they obtain a feasible solu-tion. When applied to the outcome ofgenetic operators of mutation and re-combination, repair algorithms canensure that the evolutionary algorithmis at all times only processing feasiblesolutions. Nevertheless, the applicabil-ity of this technique is limited, sincefor many problems the computational

complexity of the repair algorithm faroutweighs any advantages to be gainedfrom its use.

Designing specialised encodingsand genetic operators would be theideal technique, but also the most com-plicated to apply in all cases. The un-derlying idea is to try and design a so-lutions representation that, by its con-struction, is capable of encoding all andonly feasible solutions, and to designspecific mutation and recombinationoperators alongside it that preserve thefeasibility of the solutions they are ap-plied to. Unsurprisingly, as the com-plexity and number of constraints in-creases, this exercise soon becomesformidable and eventually impossible.However, when possible, this is theoptimal way to go, for it guarantees theevolutionary algorithm processes fea-sible solutions only and therefore re-duces the search space to the absoluteminimum.

2.2 Combinations with OtherSoft-Computing Techniques

Evolutionary algorithms, togetherwith fuzzy logic and neural network,are part of what we might call soft com-puting, as opposed to traditional orhard computing, which is based on cri-teria like precision, determinism, andthe limitation of complexity. Soft com-puting differs from hard computing inthat it is tolerant of imprecision, un-certainty, and partial truth. Its guidingprinciple is to exploit that tolerance toobtain tractability, robustness, andlower solution costs.

Soft computing is not just a mix-ture of its ingredients, but a disciplinein which each constituent contributesa distinct methodology for addressingproblems in its domain, in a comple-mentary rather than competitive way[10]. Thus evolutionary algorithms canbe employed not only to design andoptimise fuzzy systems, such as fuzzyrule bases or fuzzy decision trees, butalso to improve the learning character-istics of neural networks, or even de-termine their optimal topology. Fuzzylogic can also be used to control theevolutionary process by acting dy-namically on the algorithm parameters,to speed up convergence to the globaloptimum and escape from local optima,

and to fuzzify, as it were, some ele-ments of the algorithm, such as the fit-ness of individuals or their encoding.Meanwhile neural networks can helpan evolutionary algorithm obtain anapproximate estimate of the fitness ofindividuals for problems where fitnesscalculation requires computationallyheavy simulations, thus reducing CPUtime and improving overall perform-ance.

The combination of evolutionaryalgorithms with other soft computingtechniques is a fascinating researchfield and one of the most promising ofthis group of computing techniques.

3 ApplicationsEvolutionary algorithms have been

successfully applied to a large numberof domains. For purely illustrative pur-poses, and while this is not intended tobe a meaningful classification, wecould divide the field of application ofthese techniques into five broad do-mains: Planning, including all problems

that require choosing the most eco-nomical and best performing way touse a finite set of resources. Among theproblems in this domain are vehiclerouting, transport problems, robot tra-jectory planning, production schedul-ing in an industrial plant, timetabling,determining the optimal load of a trans-port, etc. Design, including all those prob-

lem that require determining an opti-mal layout of elements (electronic ormechanic components, architectural el-ements, etc.) with the aim of meetinga set of functional, aesthetic, and ro-bustness requirements. Among theproblems in this domain are electroniccircuit design, engineering structuredesign, information system design, etc. Simulation and identification,

which requires determining how agiven design or model of a system willbehave. In some cases this needs to bedone because we are not sure abouthow the system behaves, while in oth-ers its behaviour is known but the ac-curacy of a model has to be assessed.Systems under scrutiny may be chemi-cal (determining the 3D structure of aprotein, the equilibrium of a chemicalreaction), economical (simulating the

Page 15: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

UPGRADE Vol. VI, No., June 2005 73© CEPIS

UPENET

dynamics of competition in a marketeconomy), medical, etc. Control, including all problems that

require a control strategy to be estab-lished for a given system; Classification, modelling and ma-

chine learning, whereby a model of theunderlying phenomenon needs to bebuilt based on a set of observations.Depending on the circumstances, sucha model may consist of simply deter-mining which of a number of classesan observation belongs to, or building(or learning) a more or less complexmodel, often used for prediction pur-poses. Among the problems in this do-main is data mining, which consists ofdiscovering regularities in hugeamounts of data that are difficult to spot"with the naked eye".

Of course the boundaries betweenthese five application domains are notclearly defined and the domains them-selves may in some cases overlap tosome extent. However, it is clear thattogether they make up a set of prob-lems of great economic importance andenormous complexity.

In the following sections we willtry to give an idea of what it means toapply evolutionary algorithms to prob-lems of practical importance, by de-scribing three sample applications indomains that differ greatly from oneanother, namely school timetabling,electronic circuit design, and behav-ioural customer modelling.

3.1 School TimetablingThe timetable problem consists of

planning a number of meetings (e.g.,exams, lessons, matches) involving agroup of people (e.g., students, teach-ers, players) for a given period and re-quiring given resources (e.g., rooms,laboratories, sports facilities) accord-ing to their availability and respectingsome other constraints. This problemis known to be NP-complete: that is the

main reason why it cannot be ap-proached in a satisfactory way (fromthe viewpoint of performance) withexact algorithms, and for a long timeit has been a testbed for alternativetechniques, such as evolutionary algo-rithms. The problem of designing time-tables, in particular for Italian highschools, many of which are distributedover several buildings, is further com-plicated by the presence of very strictconstraints, which makes it very mucha feasibility problem.

An instance of this problem con-sists of the following entities and theirrelations: rooms, defined by their type, ca-

pacity, and location; subjects, identified by their required

room type; teachers, characterised by the sub-

jects they teach and their availability; classes, i.e., groups of students fol-

lowing the same curriculum, assignedto a given location, with a timetableduring which they have to be at school; lessons, meaning the relation <t, s,

c, l>, where t is a teacher, s is a sub-ject, c is a class and l is its durationexpressed in periods (for example,hours); in some cases, more than oneteacher and more than one class canparticipate in a lesson, in which casewe speak of grouping.

This problem involves a great manyconstraints, both hard and soft, toomany for us to go into now in this arti-cle. Fortunately, anybody who hasgone to a high school in Europe shouldat least have some idea of what thoseconstraints might be.

This problem has been approachedby means of an evolutionary algorithm,which is the heart of a commercialproduct, EvoSchool [11]. The algo-rithm adopts a ‘direct’ solution repre-sentation, which is a vector whosecomponents correspond to the lessonsthat have to be scheduled, while the(integer) value of a component indi-cates the period in which the corre-sponding lesson is to begin. The func-tion that associates a fitness to eachtimetable, one of the critical points ofthe algorithm, is in practice a combi-nation of penalty functions with theform

where hi is the penalty associatedwith the violation of the ith hard con-straint, sj is the penalty associated withthe violation of the jth soft constraint,and parameters ai and bj are appropri-ate weightings associated with eachconstraint. Finally, g is an indicatorwhose value is 1 when all hard con-

II DD <<2<<2 ++ DD+–+–II DD <<2<<2 ++ DD+–+–

Figure 3: A Schematic Diagram of A Sample Circuit Obtained by Composition of 6 Primitive Operations.

Table 3: Primitive Operations for The Representation of Digital Filters. (The formatof the primitives is fixed, with two operands, of which only the required operandsare used. The integers n and m refer to the inputs at cycles t – n and t – mrespectively.)

Operation Code operand 1 operand 2 Description

Input I not used not used Copy inputDelay D n not used Delay n cyclesLeft shift L n p multiply by 2p

Right shift R n p divide by 2p

Add A n m addSubtract S n m subtractComplement C n not used complement input

rafa
Placed Image
rafa
Placed Image
rafa
Placed Image
Page 16: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

74 UPGRADE Vol. VI, No., June 2005 © CEPIS

UPENET

straints are satisfied and zero other-wise. In effect, this means that softconstraints are taken into considerationonly after all hard constraints havebeen satisfied.

All other ingredients of the evolu-tionary algorithm are fairly standard,with the exception of the presence oftwo mutually exclusive perturbationoperators, called by the mutation op-erator, each with its own probability:· intelligent mutation;· improvement.

Intelligent mutation, while preserv-ing its random nature, is aimed at per-forming changes that do not decreasethe fitness of the timetable to which itis applied. In particular, if the operatoraffects the ith lesson, it will propagateits action to all the other lessons involv-ing the same class, teacher or room.The choice of the "action range" of thisoperator is random with any givenprobability distribution. In practice, theeffect of this operator is to randomlymove some interconnected lessons insuch a way as to decrease the numberof constraint violations.

Improvement, in contrast, restruc-tures an individual to a major extent.Restructuring commences by randomlyselecting a lesson and concentrates onthe partial timetables for the relevantclass, teacher, or room. It compacts theexisting lessons to free up enoughspace to arrange the selected lessonwithout conflicts.

A precisely balanced interactionbetween these two operators is the se-cret behind the efficiency of this evo-lutionary algorithm, which has provencapable of generating high qualitytimetables for schools with thousandsof lessons to schedule over differentbuildings scattered over several sites.A typical run takes a few hours on anot so powerful PC of the kind to befound in high schools.

3.2 Digital Electronic CircuitDesign

One of the problems that has re-ceived considerable attention from theinternational evolutionary computationcommunity is the design of finite im-pulse response digital filters. This in-terest is due to their presence in a large

number of electronic devices that formpart of many consumer products, suchas cellular telephones, network de-vices, etc.

The main criterion of traditionalelectronic circuit design methodologiesis minimising the number of transis-tors used and, consequently, produc-tion costs. However, another very sig-nificant criterion is power absorption,which is a function of the number oflogic transitions affecting the nodes ofa circuit. The design of minimumpower absorption digital filters hasbeen successfully approached bymeans of an evolutionary algorithm[12].

A digital filter can be representedas a composition of a very smallnumber of elementary operations, likethe primitives listed in Table 3. Eachelementary operation is encoded bymeans of its own code (one character)and two integers, which represent therelative offset (calculated backwardsfrom the current position) of the twooperands. When all offsets are positive,the circuit does not contain any feed-back and the resulting structure is thatof a finite impulse response filter. Forexample, the individual (I 0 2) (D 1 3) (L 2 2) (A 2 1) (D 1 0) (S 1 5)

corresponds to the schematic dia-gram in Figure 3.

The fitness function has two stages.In the first stage, it penalises violationsof the filter frequency response speci-fications, represented by means of a‘mask’ in the graph of frequency re-sponse. In the second stage, which isactivated when the frequency responseis within the mask, fitness is inverselyproportional to the circuit activity,which in turn is directly proportionalto power absorption.

The evolutionary algorithm whichsolves this problem requires a greatdeal of computing power. For this rea-son, it has been implemented as a dis-tributed system, running on a clusterof computers according to an islandmodel, whereby the population is di-vided into a number of islands, resid-ing on distinct machines, which evolveindependently, except that, every nowand then, they exchange ‘migrant’ in-dividuals, which allow genetic mate-

rial to circulate while at the same timekeeping the required communicationbandwidth as small as we wish.

A surprising result of the aboveevolutionary approach to electroniccircuit design has been that the digitalfilters discovered by evolution, besideshaving a much lower power absorptionin comparison with the correspondingfilters obtained using traditional designtechniques, as was intended, they alsobring about a 40% to 60% reductionin the number of logic elements and,as a consequence, in area and speed aswell. In other words, the decrease inconsumption has not been achieved atthe expense of production cost andspeed. On the contrary, it has broughtabout an overall increase in efficiencyin comparison with traditional designmethods.

3.3 Data MiningA critical success factor for any

business today is its ability to use in-formation (and knowledge that can beextracted from information) effec-tively. This strategic use of data canresult in opportunities presented bydiscovering hidden, previously unde-tected, and frequently extremely valu-able facts about consumers, retailers,and suppliers, and business trends ingeneral. Knowing this information, anorganisation can formulate effectivebusiness, marketing, and sales strate-gies; precisely target promotional ac-tivity; discover and penetrate new mar-kets; and successfully compete in themarketplace from a position of in-formed strength. The task of siftinginformation with the aim of obtainingsuch a competitive advantage is knownas data mining [13]. From a technicalpoint of view, data mining can be de-fined as the search for correlations,trends, and patterns that are difficultto perceive "ith the naked eye" by dig-ging into large amounts of data storedin warehouses and large databases,using statistical, artificial intelligence,machine learning, and soft computingtechniques. Many large companies andorganisations, such as banks, insurancecompanies, large retailers, etc., have ahuge amount of information about theircustomers’ behaviour. The possibility

Page 17: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

UPGRADE Vol. VI, No., June 2005 75© CEPIS

UPENET

of exploiting such information to inferbehaviour models of their current andprospective customers with regard tospecific products or classes of productsis a very attractive proposition for or-ganisations. If the models thus obtainedare accurate, intelligible, and informa-tive, they can later be used for deci-sion making and to improve the focusof marketing actions,.

For the last five years the authorhas participated in the design, tuning,and validation of a powerful data min-ing engine, developed by GeneticaS.r.l. and Nomos Sistema S.p.A (nowan Accenture company) in collabora-tion with the University of Milan, aspart of two Eureka projects funded bythe Italian Ministry of Education andUniversity.

The engine is based on a geneticalgorithm for the synthesis of predic-tive models of customer behaviour,expressed by means of sets of fuzzyIF-THEN rules. This approach is aclear example of the advantages thatcan be achieved by combining evolu-tionary algorithms and fuzzy logic.

The approach assumes a data set isavailable: that is, a set as large as welike of records representing observa-tions or recordings of past customerbehaviour. The field of applicabilitycould be even wider: the records couldbe observations of some phenomenon,not necessarily related to economy orbusiness, such as the measurement offree electrons in the ionosphere [14].

A record consists of m attributes,i.e., values of variables describing thecustomer. Among these attributes, weassume that there is an attribute meas-uring the aspect of customer behaviourwe are interested in modelling. With-out loss of generality, we can assumethere is just one attribute of this kind— if we were interested in modellingmore than one aspect of behaviour, wecould develop distinct models for eachaspect. We could call this attribute ‘pre-dictive’, as it is used to predict a cus-tomer’s behaviour. Within this concep-tual framework, a model is a functionof m – 1 variables which returns thevalue of the predictive attribute de-pending on the value of the other at-tributes.

The way we choose to represent

this function is critical. Experienceproves that the usefulness and accept-ability of a model does not derive fromits accuracy alone.

Accuracy is certainly a necessarycondition, but more important is themodel’s intelligibility for the expertwho will have to evaluate it before au-thorising its use. A neural network or aLISP program, to mention just two al-ternative ‘languages’ that others havechosen to express their models, mayprovide killer results when it comes toaccuracy. However, organisations willbe reluctant to ‘trust’ the results of themodel unless they can understand andexplain how the results have been ob-tained.

This is the main reason for usingsets of fuzzy IF-THEN rules as the lan-guage for expressing models. FuzzyIF-THEN rules are probably the near-est thing to the intuitive way expertsexpress their knowledge, due to the useof rules that express relationships be-tween linguistic variables (which takeon linguistic values of the type LOW,MEDIUM, HIGH). Also, fuzzy ruleshave the desirable property of behav-ing in an interpolative way, i.e., theydo not jump from one conclusion to theopposite because of a slight change inthe value of a condition, as is the casewith crisp rules.

The encoding used to represent amodel in the genetic algorithm is quitecomplicated, but it closely reflects thelogical structure of a fuzzy rule base.It allows specific mutation and recom-bination operators to be designedwhich operate in an informed way ontheir constituent blocks. In particular,the recombination operator is designedin such a way as to preserve the syn-tactic correctness of the models. A childmodel is obtained by combining therules of two parent models: every rulein the child model may be inheritedfrom either parent with equal probabil-ity. Once inherited, a rule takes on allthe definitions of the linguistic values(fuzzy sets) of the source parent modelthat contribute to determining its se-mantics.

Models are evaluated by applyingthem to a portion of the data set. Thisyields a fitness value gauging their ac-curacy. As is customary in machine

learning, the remaining portion of thedata set is used to monitor the gener-alisation capability of the models andavoid overfitting, which happens whena model learns one by one the exam-ples it has seen, instead of capturingthe general rules which can be appliedto cases never seen before.

The engine based on this approachhas been successfully applied to creditscoring in the banking environment, toestimating customer lifetime value inthe insurance world [15], and to thecollection of consumer credit receiva-bles.

4 ConclusionsWith this short survey on evolution-

ary algorithms we have tried to pro-vide a complete, if not exhaustive - forobvious reasons of space -, overviewof the various branches into which theyare traditionally divided (genetic algo-rithms, evolution strategies, evolution-ary programming and genetic program-ming). We have gone on to providesome information about the most sig-nificant issues concerning the practi-cal application of evolutionary comput-ing to problems of industrial and eco-nomic importance, such as solutionrepresentation and constraint handling,issues in which research has made sub-stantial progress in the last few years.Finally, we have completed the picturewith a more in-depth, but concise, il-lustration of three sample applicationsto "real-world" problems, chosen forbeing in domains which are as differ-ent from one another as possible, withthe idea of providing three complemen-tary views on the criticalities and theissues that can be encountered whenimplementing a software system thatworks. Readers should appreciate theversatility and the enormous potentialof these techniques which are still com-ing of age almost forty years after theirintroduction. Unfortunately, this sur-vey necessarily lacks an illustration ofthe theoretical foundations of evolu-tionary computing, which includes theschema theorem (with its so-calledbuilding block hypothesis) and the con-vergence theory. These topics havebeen omitted on purpose, since theywould have required a level of formal-ity unsuited to a survey. Interested

Page 18: Vol. VI, issue No. 3, June 2005 at < ... · Fernando Piera Gómez and Rafael Fernández Calvo, ATI (Spain) François Louis Nicolet, SI (Switzerland) Roberto Carniel, ALSI – Tecnoteca

76 UPGRADE Vol. VI, No., June 2005 © CEPIS

UPENET

readers can fill this gap by referring tothe bibliography below. Another aspectthat has been overlooked because it isnot really an ‘application’, although itis of great scientific interest, is the im-pact that evolutionary computation hashad on the study of evolution itself andof complex systems in general (for anexample, see the work by Axelrod onspontaneous evolution of co-operativebehaviours in a world of selfish agents[18]).

Readers wishing to look into thefield of evolutionary computation arereferred to some excellent introductorybooks [6][9][17][19] or more in-depthtreatises [20][21], or can browse theInternet sites mentioned in the box"Evolutionary Algorithms on theInternet".

References[1] George E. P. Box, N. R. Draper. Evolu-

tionary Operation: Statistical Methodfor Process Improvement. John Wiley& Sons, 1969.

[2] Hans J. Bremermann. "Optimizationthrough Evolution and Recombina-tion". In M. C. Yovits, G. T. Jacobi andG. D. Goldstein (editors), Self-Organ-izing Systems 1962, Spartan Books,Washington D. C., 1962.

[3] Lawrence J. Fogel, A. J. Owens, M. J.Walsh. Artificial Intelligence throughSimulated Evolution. John Wiley &Sons, New York, 1966.

[4] John H. Holland. Adaptation in Natu-ral and Artificial Systems. Universityof Michigan Press, Ann Arbor, 1975.

[5] Ingo Rechenberg. Evolutions strategie:Optimierung technischer Systemenach Prinzipien der biologischen Evo-lution. Frommann-Holzboog, Stutt-gart, 1973.

[6] David E. Goldberg. Genetic Algorithmsin Search, Optimization, and Machine

Learning. Addison-Wesley, 1989.[7] John R. Koza. Genetic Programming.

MIT Press, Cambridge, Massachu-setts, 1992.

[8] Michael O’Neill, Conor Ryan. Gram-matical Evolution. Evolutionary au-tomatic programming in an arbitrarylanguage. Kluwer, 2003.

[9] Zbigniew Michalewicz. Genetic Algo-rithms + Data Structures = EvolutionPrograms, 3rd Edition. Springer, Ber-lin, 1996.

[10] Andrea G. B. Tettamanzi, MarcoTomassini. Soft Computing. Integrat-ing evolutionary, neural, and fuzzysystems. Springer, Berlin, 2001.

[11] Calogero Di Stefano, Andrea G. B.Tettamanzi. " An Evolutionary Algo-rithm for Solving the School Time-Tabling Problem". In E. Boers et al.,Applications of Evolutionary Comput-ing. EvoWorkshops 2001, Springer,2001. Pages 452–462.

[12] Massimiliano Erba, Roberto Rossi,Valentino Liberali, Andrea G. B.Tettamanzi. "Digital Filter DesignThrough Simulated Evolution". Pro-ceedings of ECCTD’01 - EuropeanConference on Circuit Theory and De-sign, August 28-31, 2001, Espoo, Fin-land.

[13] Alex Berson, Stephen J. Smith. DataWarehousing, Data Mining & OLAP,McGraw Hill, New York, 1997.

[14] Mauro Beretta, Andrea G. B.Tettamanzi. "Learning Fuzzy Classi-fiers with Evolutionary Algorithms".In A. Bonarini, F. Masulli, G. Pasi (edi-tors), Advances in Soft Computing,Physica-Verlag, Heidelberg, 2003.Pagg. 1–10.

[15] Andrea G. B. Tettamanzi et al. "Learn-ing Environment for Life-Time ValueCalculation of Customers in InsuranceDomain". In K. Deb et al. (editors),Proceedings of the Genetic and Evo-lutionary Computation Congress(GECCO 2004), Seattle, June 26–30,

2004. Pages II-1251–1262.[16] Günter Rudolph. Finite Markov Chain

Results in Evolutionary Computation:A Tour d’Horizon . FundamentaInformaticae, vol. 35, 1998. Pages67–89.

[17] Melanie Mitchell. An Introduction toGenetic Algorithms. Bradford, 1996.

[18] Robert Axelrod. The Evolution ofCooperation. Basic Books, 1985.

[19] David B. Fogel. Evolutionary Com-putation: Toward a new philosophy ofmachine intelligence, 2nd Edition.Wiley-IEEE Press, 1999.

[20] Thomas Bäck. Evolutionary Algo-rithms in Theory and Practice: Evo-lution Strategies, Evolutionary Pro-gramming, Genetic Algorithms. Ox-ford University Press, 1996.

[21] Thomas Bäck, David B. Fogel,Zbigniew Michalewicz (editors). Evo-lutionary Computation (2 volumes).IoP, 2000.

Evolutionary Algorithms on The Internet

Below are a few selected websites where the reader can find introductory or ad-vanced information about evolutionary algorithms:· <http://www.isgec.org/>: the portal of the International Society for Genetic and

Evolutionary Computation;· <http://evonet.lri.fr/>: the portal of the European network of excellence on evolu-

tionary algorithms;· <http://www.aic.nrl.navy.mil/galist/>: the GA Archives, originally the "GA-List" mail-

ing list archives, now called the "EC Digest"; it contains up-to-date informationon major events in the field plus links to other related web pages;

· <http://www.fmi.uni-stuttgart.de/fk/evolalg/index.html>: the EC Repository, main-tained at Stuttgart University.