Download Dr. Ahmed Hessein Kamel - Abstract

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Lateral computing wikipedia , lookup

Theoretical computer science wikipedia , lookup

Algorithm characterizations wikipedia , lookup

Mathematical optimization wikipedia , lookup

Factorization of polynomials over finite fields wikipedia , lookup

Natural computing wikipedia , lookup

Algorithm wikipedia , lookup

Genetic algorithm wikipedia , lookup

Transcript
Genetic Algorithm The Dawn of a New Revolution in Computer
Science
Fatma Abdalla Mabrouk Kheiralla
Dr Mudawi Mukhtar Elmusharaf
The National Ribat University
Faculty Computer studies
Khartoum ,Sudan
[email protected]
[email protected]
Abstract
With the rapid technological developments, the world needed to be more accurate and speedy
decision making and in reducing errors as much as possible. This paper discusses a
transudate genetic algorithm as one of the technical tools that feature natural technique and
efficiency in completing and putting many solutions for issues concerning technological
development,it is a technique based on mimicking natural evolution similar to the chains of
chromosomes.
The important feature of the genetic algorithm is its adaptive nature, which makes it less
demanding to figure out the equation for genetics.The idea of genetic algorithms lies in the
generation of some solutions for the problem randomly, then scan these solutions and
compare them with some of the standard solutions set by the designer algorithm, and only the
best solutions will remain.
This paper is a trial to know and understand the algorithm technology and genetic studies
and its implemented applications.
Keywords: Genetic Algorithm , mimicking natural,encryption
algorithms is based on randomly generating a
group of solutions to a specific problem, then
scan these solutions and compare them with
the criteria that have been set by the designer
algorithm, and only the best solutions are
going to remain, while the least efficient
solutions will be ignored. These promising
solutions will be allowed to reproduce
generating
multiple
copies,
random
modifications are going to take place during
this copying procedure leading to creation of
new generation of digital offsprings which are
going to be subjected to another fitness
evaluation process[3], and by chance the
random changes in the new generation will
introduce better and more efficient
solutions.Again these new solution are going
to be transferred into next generation, this
process is going to be repeated leading to
creation of the best and most suitable solutions
1. Introduction
A Genetic algorithm is a programming
technique based on the creation of optimal
solutions for any specific problem[1], these
solutions simulate natural biological evolution
through the creation of a set of possible
solutions in the form of chains similar to
chromosome sequences, called fitness
function, which allow to evaluate each
solution individually, and then some of the
random biological processes will take place to
produce the optimal solution[13]. The most
important feature in the genetic algorithm is
the adaptive nature[2], which minimize its
need to know the most suitable equation in
order to put it down. The method of genetic
algorithm is quite similar the natural process
of proliferation and modification of living
organisms. The main idea of genetic
1
that can achieve
optimization[16].
the
most
perfect
allowed to reproduce, and on average the fitter
chromosomes produce more offspring than the
less fit ones. Crossover exchanges subparts of
two chromosomes, roughly mimicking
biological recombination between two
single−chromosome ("haploid") organisms;
mutation randomly changes the allele values
of some locations in the chromosome; and the
inversion reverses the order of a contiguous
section of the chromosome, thus rearranging
the order in which genes are arrayed.
Holland’s introduction of a population−based
algorithm with crossover, inversion, and the
mutation was a major innovation.
2. Evolutionary Programming
In the 1950s and the 1960s, several computer
scientists independently studied evolutionary
systems with the idea that evolution could be
used as an optimization tool for engineering
problems[13]. The idea in all these systems
was to evolve a population of candidate
solutions to a given problem, using operators
inspired by natural genetic variation and
natural selection. The field of evolutionary
strategies has remained an active area of
research, mostly developing independently
from the field of genetic algorithms.
Developed "evolutionary programming," a
technique in which candidate solutions to
given tasks were represented as finite−state
machines, which were evolved by randomly
mutating their state−transition diagrams and
selecting the fittest.
4. Genetic algorithms are
evolutionary algorithms
part
of
Evolutionary computing is a rapidly growing
area of artificial intelligence[12]. There are
population based meta heuristic optimization
algorithms
that
use
biology-inspired
mechanisms and survival of the fittest theory
in order to refine a set of solution iteratively.
(GAs) are subclasses of (EAs) where the
elements of the search space are binary strings
or arrays of other element types[14].
3. History of Genetic algorithms
The history of Genetic algorithms (GAs) was
invented by John Holland in the 1960s and
was developed by Holland and his students
and colleagues at the University of Michigan
in the 1960s and the 1970s[13]. In contrast
with evolution strategies and evolutionary
programming, Holland's original goal was not
to design algorithms to solve specific
problems, but rather to formally study the
phenomenon of adaptation as it occurs in
nature and to develop ways in which the
mechanisms of natural adaptation might be
imported into computer systems[4].
(GAs) are computer based search techniques
patterned after the genetic mechanisms of
biological organisms that have adapted and
flourished in changing highly competitive
environment[2]. The last decade has witnessed
many exciting advances in the use of genetic
algorithms to solve optimization problems in
process control systems (GAs) are the solution
for optimization of hard problems quickly,
reliably and accurately[7]. As the complexity
of the real-time controller increases, the (GAs)
applications have grown in more than equal
measure.
Holland's GA is a method for moving from
one population of "chromosomes" (e.g. Strings
of ones and zeros, or "bits") to a new
population by using a kind of "natural
selection" together with the genetics−inspired
operators of crossover, mutation, and
inversion. Each chromosome consists of
"genes" (e.g. Bits), each gene being an
instance of a particular "allele" (e.g., 0 or
1)[14]. The selection operator chooses those
chromosomes in the population that will be
The figure below outlines the situation of
natural techniques among other well known
search procedures.
2
makeup involves unique representation, which
maintained a generation of individuals at each
point in the search process. It is important that
the initial population has a perfect variety of
individuals,[5] because they learn from each
other. The first order of diversity is by
configuration of network and random
uniformity, this diversity is not related to local
optimization methods or assembly and lack of
this diversity will lead to suboptimal solutions.
Step 2 Evaluatation of Fitness
The main function of fitness is to measure the
obtained object, it is optimized by applying a
genetic process and evaluation of each
solution to identify whether it will assist in the
solutions of the second generation. In the
process of evaluation for each chromosome
[6]the value is set to return to its full fitness,
depending to its proximity to solve the
problem. It is perfectly designed because it
selects the individual which produces and
creates the next generation of population[15].
Figure 2.2: the block situation of natural
search techniques
Step3 New population:
5. The steps of general Genetic Algorithm:
It is composed of the following processes:
Selection,
Crossover,
Mutation
and
Acceptance.
Genetic algorithms (GAs) are mainly inspired
by the famous Darwinian’s theory of survival
of the fittest. It is fundamentally based on a
group
of
solutions
represented
by
chromosomes, called a population. A group of
solutions is extracted from one population and
used to create a new population, with the
motivation that the new population of
chromosomes can be better than the old ones,
and the solutions are selected according to
their suitability to form new solutions. This
process is repeated until a satisfying condition
is reached[5].
A) Selection
Two parents of chromosomes are selected
from a population according to their fitness,
thus better fitness of the parent will lead the
bigger chance of selection. The function of
evaluation mainly controls the selection of
individuals for the coming generation to
reproduce or to live. Chromosomes with a
greater fitness value are more likely to
reproduce offspring[10].
The main outlines of genetic algorithm are as
below[18]:
B) Crossover
As the offspring is the product of parent
chromosomes, the crossover is the formation
of a new chromosome through the
combination of two portions of a two good
parent chromosome[19]. It consists of a
Step 1 Generation of random population
It is a random group of solutions formed
among the initial population. Its genetic
3
combination of genes, including configuration.
A crossover point in the parent chromosomes
is randomly chosen. Then, the two different
portions of each chromosome are swapped
with other portion of chromosomes to form
two new chromosomes.
Step4 Replacement
Applying new solutions (population) to run
more of the process of Genetic Algorithm.
Step 5 Testing and Termination
There are many types of crossover, the typical
type of crossover in binary representation is
the one-point and the two-point crossover. In
almost all types of crossover operators pick
from the mating pool at random and some
portions of the strings are exchanged between
the strings to create two new strings.
Solutions are examined, if they satisfied the
end of the case, as the fitness value of the best
solution is met or the maximum number of
generations is achieved, the process is
terminated and we return to the best solutions
in the current population.
Step 6 Looping of GA
C) Mutation
Genetic algorithm performance is affected by
operators crossover and mutation. If the
solutions of the new generation produced one
output that is equal or close to the required
answer, so the issue is resolved. If the output
was not equal to the required answer, then the
same process will be repeated for the next
generation as their parents did until a solution
is found.
Mutation is a mandatory operation in GA, it is
the most fundamental way to modify a
solution for the next generation. Mutation
takes place by changing the value of allele
randomly to a slight change. It improves the
general performance of chromosomes and
protects the searching process of premature
convergence. It also keeps the diversity in the
population. The mutation point is randomly
chosen and the allele associated with the
mutation point is changed. Not all alleles are
mutated but depend on the mutation
probability. The mutation operation alters the
strings to hopefully create a better string.
Since this operation is stochastically
performed, the claim is not guaranteed[11].
Elitism
Elitism is the mechanism that maintains a
number of the best solutions in GA. It can be
done in many different ways, it can be
introduced in a simple mechanism in the
steady state, genetic operators are used to
create two offsprings, they are then compared
to their parents, and the best two are selected
among the four solutions as the next
generation[17]. Elitism can be applied
universally in the generation sense, in this case
when the offspring population is formed it is
combined with the current population and the
next generation is selected from the best
solutions.
Figure 2.3: A diagram for a The steps of
general Genetic Algorithm
4
6. Genetic Algorithm’s Techniques
Coding techniques in genetic algorithms are
specific problem that transforms to solve the
problem in the chromosomes. There are
various coding techniques used in genetic
algorithms. Binary encoding, Permutation
encoding, Value encoding and Tree encoding.
The most common form of encoding is Binary
encoding,
it
gives
many
possible
chromosomes.
7. Performance Analysis of Methods in
Genetic Algorithm Literature
Miss. Komal R. Hole1 and Prof. Vijay S et
al.[1] Giving a brief overview of the canonical
genetic algorithm and reviewing the tasks of
image pre-processing. The result The need of
Image Enhancement and the genetic algorithm
image can be enhanced using the Genetic
Algorithm .
Rajesh Kumar et al. [2] Comparing the normal
techniques of image fusion with genetic
algorithms based techniques.The result The
plans for image fusion based GA better
performance than existing schemes.
Raj Kumar Mohanta1[3] Reviewing the
applications of genetic algorithms for image
segmentation.The result Genetic algorithms
have many advantages in obtaining the
optimal solution. Optimal result depends on
the encoding and the involvement of
chromosome genetic system operators.
Surekha1 and S. Sumathi2[4] Proposing a new
method to improve digital images in a
Separate
Wavelet
Transform
(DWT)
domain.The result Proving to be safe and
strong attacks filtering, additive noise,
rotation, scaling, cropping and compression
JPEG. Peak Signal to Noise Ratio (PSNR),
Mean Square Error (MSE), and is evaluating
computational time for group photos.
T. R. Gopalakrishnan Nair and Suma V,
Manas S[5] Proposing a steganography
method using genetic algorithm to protect
against The Retention of Secrecy (RS) attacks
in color images. the result It is difficult to
detect the existence of the secret message by
the RS analysis, implementation of this
approach enhances the visual quality of the
stego image. The length of the secret message
increases, the probability of detection of secret
message by RS analysis also increases.
Shen Wang, Bian Yang and Xiamu Niu [7]
Presenting a new steganography based on
genetic algorithm. The result Demonstrate the
proposed algorithm's activeness in resistance
to steganalysis with better visual quality. The
embedding capacity is 90%.
Amrita Khamrui Enrolled Scholar [8]
Authenticated the image to ensure the security
Binary encoding is often not natural for many
problems and sometimes corrections must be
made after crossover and mutation. The best
one that suits with the request queue or coding
problems are permutations. Where coding is
used flip. In flipping encoding, each
chromosome is a series of numbers in
sequence.
Value coding is a technique in which each
chromosome is a series of some of the values,
it is used where require some more complex
values. It is more necessary to develop some
new crossover and mutation specific for the
problem. Tree encoding is used mainly for
evolving programs or advanced expressions
for genetic programming, where the crossover
and mutation can be done relatively easily.
Figure 2.4: a Genetic Algorithm’s
Techniques
5
against the Retention of Secrecy (RS) analysis.
The resulting Comparative study of Peak
Signal to Noise Ratio (PSNR) has been made
between various techniques. It has been that
PSNR is in between 35 to 50 (approx) which
is satisfied as the better value of PSNR
improves image quality. It has been noticed
that PSNR is gradually increasing which
indicates an improvement of different
techniques.
Elham Ghasemi et al .[9] Proposing a method
embeds the message in (DWT) coefficients
based on GA and the Optimal Pixel
Adjustment Process (OPAP) algorithm and
then applies to the obtained embedded image.
The result The simulation results showed that
capacity and imperceptibility of the image had
increased simultaneously.
environmental engineering, medical imaging
system and image processing.
9. CONCLUSION
Genetic algorithms have proven to be the most
successful problem-solving method, inspired
by natural evolutionary biology, it showed the
strength of evolutionary basics, and it proved
that it can come up with solutions that was not
expected even by the programmers who
initialized the algorithms.
It is not necessary for Genetic Algorithm to
find the best solution, but it can find a group
of solutions that are very close to the best one,
that is why Genetic Algorithm is characterized
by polynomial complexity, where it can
always be applied to solve complicated
problems.
It became quite obvious that Genetic
Algorithm is going to create a great number of
promising
methods
to
solve
many
technological difficulties and machinery
problems. And it is going to raise a dawn of a
new revolution in computer science, that will
help in the creation of new effective forms of
computing systems, which are capable of
dealing with different types of complexities,
and can always learn new methods of problem
solving, similar to the evolutionary nature of
biological systems. Those systems are
supposed to be ideal models rather than
perfect, in an attempt to match the real world
data.
Santi P. Maity, and Malay K. Kundu [10]
Proposed two algorithms to investigate the
scope of usage of GA for optimality of data
hiding in digital images. The result That
parabolic function offers higher visual and
statistical invisibility and reasonably good
robustness, the linear function offers a higher
robustness with reasonably good Invisibility
Christine K. Mulunda[11] Proposing a secure
text Steganography algorithm based on the
genetic method. The result Achieving effective
optimization, security, and robustness.
8. Applications of Genetic Algorithms
10. REFERENCES
Scientists have found that Genetic Algorithm
technology is faster and stronger than all other
traditional methods because of its special
properties that have already been mentioned
before, and because it needs minimal
information for effective searching process
compared to other methods which require rich
information and because the genetic searching
process pass through a group of points rather
than a single point, which are very effective in
nonlinear problems. That is why Gernetic
Algorithm can be applied to a wide range of
different fields such as Economics, production
planning, aviation, vehicles, signal processing,
communication networks, Neural networks,
[1]Miss. Komal R. Hole1, Prof. Vijay S.
Gulhane2, Prof. Nitin D. Shellokar3."
Application of Genetic Algorithm for Image
Enhancement and Segmentation", 2013.
[2] Rajesh V Jyothi 1, B Rajesh Kumar 1 , P
Krishna Rao 2, D V Rama Koti Reddy 2
."Image Fusion Using Evolutionary Algorithm
(GA)".V
Jyothi
1,
by
GITAM
University,VJyothi,B.Rajesh Kumar,P.Krishna
Rao,D.V.Rama Koti Reddy, Int. J. Comp.
Tech.Appl.,Vol.2, 322-326 Visakhapatnam,
6
AP,India,2Andhra University, Visakhapatnam,
AP, India, 2011.
Algorithm
Based
Model
in
Text
Steganography". The African Journal of
Information Systems, Vol.5 Issue 4, 10-12013.
Miss. Komal R. Hole1, Prof. Vijay S.
Gulhane2, Prof. Nitin D. Shellokar3."
[12]Application of Genetic Algorithm for
Image
Enhancement
and
Segmentation".International
Journal
of
Advanced Research in Computer Engineering
& Technology (IJARCET) Vol.2, Issue.4, 4,
2013.
[3 ]Raj Kumar Mohanta1,Binapani Sethi2." A
Review of Genetic Algorithm application for
Image Segmentation ",Vol.3 (2), 720723,2012.
[4]P.Surekha1 and S.umathi2."Implementation
Of Genetic Algorithm For A Dwt Based
Image Watermarking Scheme".2011.
[5] Mantas Paulinas, Andrius Ušinskas
."Survey Of Genetic Algorithms Applications
For
Image
Enhancement
And
Segmentation".ISSN
1392
–
124X
INFORMATION TECHNOLOGY AND
CONTROL, Vol.36, No.3,2007.
[13]Mitchell Melani."An Introduction to
Genetic Algorithms".A Bradford Book The
MIT PressCambridge, Massachusetts ,
London, England Fifth printing, 1999.
[14]S.N.Sivanandam·S.N.Deepa."Introduction
to Genetic Algorithms". ISBN 978-3-54073189-4 Springer Berlin Heidelberg New
York,2007.
[6] T. R. Gopalakrishnan Nair#1, Suma V#2,
Manas S#3."Genetic Algorithm to Make
Persistent Security and Quality of Image in
Steganography
from
RS
Analysis".
1,2Research and Industry Incubation Center,
Dayananda Sagar Institutions, Bengaluru,
India.2012.
[15]Fleming, Peter and R.C. Purshouse.
"Evolutionary algorithms in control systems
engineering: a survey." Control Engineering
Practice, vol.10, p.1223-1241 (2002).
[7] Shen Wang, Bian Yang and Xiamu Niu."A
Secure Steganography Method based on
Genetic Algorithm". Journal of Information
Hiding and Multimedia Signal Processing,
2073-4212,Ubiquitous International Vol.1,
No.1, 1, 2010.
[16] Goldberg, David. Genetic Algorithms in
Search, Optimization, and Machine Learning.
Addison-Wesley, 1989.
[17] K. Deb, "An efficient constraint-handling
method for genetic algorithms", Comput.
Methods Appl. Mech. Eng., vol. 186, no.
2&ndash,4, pp.311 -338 2000.
[8] Amrita Khamrui Enrolled Scholar."Report
on Genetic Algorithm based Steganography
for Image Authentication".2014.
[9] Elham Ghasemi, Jamshid Shanbehzadeh,
and Nima Fassihi."High Capacity Image
Steganography Based on Genetic Algorithm
and Wavelet Transform". Chapter 30,2012.
[18]Rahul Malhotra, Narinder Singh &
Yaduvir
Singh.
"Genetic
Algorithms:
Concepts, Design for Optimization of Process
Controllers".Vol. 4, No. 2; March 2011.
[10]
Santi
P.
Maity1,
Malay
K.
Kundu2."Genetic Algorithms for Optimality
of Data Hiding in Digital Images". Received:
30.1.2008 / Revised version: 31.03.2008.
[11] Christine K.
Wagacha,
Alfayo
[19] Fonseca, Carlos and Peter Fleming. "An
overview of evolutionary algorithms in
multiobjective optimization." Evolutionary
Computation, vol.3, no.1, p.1-16 (1995).
Mulunda, Peter W.
O.
Adede."Genetic
7