SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Downloaden Sie, um offline zu lesen
Genetic Algorithms
George Bora
UTCN
April 13, 2014
George Bora (UTCN) Genetic Algorithms April 13, 2014 1 / 17
Computer Science to Evolutionary Computation
Within the vast field of computer science under it’s vast array of potential
applications there exists the branch of artificial intelligence.
George Bora (UTCN) Genetic Algorithms April 13, 2014 2 / 17
Computer Science to Evolutionary Computation
Within the vast field of computer science under it’s vast array of potential
applications there exists the branch of artificial intelligence.
One of the sub-branches of artificial intelligence is evolutionary
computation which seeks to achieve continuous optimization and
combinatorial optimization by incorporating knowledge of natural evolution
processes.
George Bora (UTCN) Genetic Algorithms April 13, 2014 2 / 17
Basic Concepts from Biology
The basic building blocks for evolutionary computation, which have kept
their names from their native science, are as follows:
genes
allele
chromosome
individual
mapping
mutation and crossover
fitness function
George Bora (UTCN) Genetic Algorithms April 13, 2014 3 / 17
Genes
The element from which this method derives it name, as genes are the
basic building blocks of life.
George Bora (UTCN) Genetic Algorithms April 13, 2014 4 / 17
Genes
The element from which this method derives it name, as genes are the
basic building blocks of life.
So too in our search for the solution for various problems, genes are the
basic elements we switch around and juggle with in order to arrive at a
more optimum solution.
George Bora (UTCN) Genetic Algorithms April 13, 2014 4 / 17
Allele
If genes are the basics of the solution in theory, alleles are the values
encoded in genes are the ones we use in practice, when developing
software which uses genetic programming.
George Bora (UTCN) Genetic Algorithms April 13, 2014 5 / 17
Allele
If genes are the basics of the solution in theory, alleles are the values
encoded in genes are the ones we use in practice, when developing
software which uses genetic programming.
When the time has passed and the solution must effectively be built or
instantiated it is the allele which forms the blue print we go by.
George Bora (UTCN) Genetic Algorithms April 13, 2014 5 / 17
Allele
If genes are the basics of the solution in theory, alleles are the values
encoded in genes are the ones we use in practice, when developing
software which uses genetic programming.
When the time has passed and the solution must effectively be built or
instantiated it is the allele which forms the blue print we go by.
In the original vision for genetic algorithms there was only 1 allele per
gene, which was a binary value and was stored in a 1 bit, as the field
progressed all of those constrictions have been lifted.
George Bora (UTCN) Genetic Algorithms April 13, 2014 5 / 17
Chromosome and Individual
As in nature an animal can not have it’s information encoded in a single
gene, in programming a solution which warrants genetic algorithms is not
simple enough as to be composed on 1 gene.
George Bora (UTCN) Genetic Algorithms April 13, 2014 6 / 17
Chromosome and Individual
As in nature an animal can not have it’s information encoded in a single
gene, in programming a solution which warrants genetic algorithms is not
simple enough as to be composed on 1 gene.
Chromosomes are the collection of genes, which make up the blueprint
from which we will map our solution and create the individual.
George Bora (UTCN) Genetic Algorithms April 13, 2014 6 / 17
Chromosome and Individual
As in nature an animal can not have it’s information encoded in a single
gene, in programming a solution which warrants genetic algorithms is not
simple enough as to be composed on 1 gene.
Chromosomes are the collection of genes, which make up the blueprint
from which we will map our solution and create the individual.
If the chromosomes are the blue prints the individual is the ”end product”,
to make an analogy with software engineering, and individual is to a class
what a instance is to a object.
George Bora (UTCN) Genetic Algorithms April 13, 2014 6 / 17
Mapping
The process by which we construct a individual from the chromosome we
have generated is called mapping, it is one of the important elements
(alongside chromosome structure and fitness functions) we must consider
before we implement our design.
George Bora (UTCN) Genetic Algorithms April 13, 2014 7 / 17
Mapping
The process by which we construct a individual from the chromosome we
have generated is called mapping, it is one of the important elements
(alongside chromosome structure and fitness functions) we must consider
before we implement our design. Mapping and it’s complexity is often tied
with how we define our alleles,genes and chromosome as well as our
genetic operations, a great deal of planning being required in order to
produce the best possible algorithm.
George Bora (UTCN) Genetic Algorithms April 13, 2014 7 / 17
Crossover
Crossover is one of the fundamental operations within the toolbox of
genetic algorithms, and one of the most important methods by which we
can combine existing chromosomes to form new ones in the search for a
fit enough solution.
George Bora (UTCN) Genetic Algorithms April 13, 2014 8 / 17
Crossover
Crossover is one of the fundamental operations within the toolbox of
genetic algorithms, and one of the most important methods by which we
can combine existing chromosomes to form new ones in the search for a
fit enough solution. It involves separating each chromosome which takes
part into two parts, and then recombining parts from the different old
chromosomes to form the new set of chromosomes.
George Bora (UTCN) Genetic Algorithms April 13, 2014 8 / 17
Mutation
Mutation is the changing of the allele of a gene to another one of it’s
possible values.
George Bora (UTCN) Genetic Algorithms April 13, 2014 9 / 17
Mutation
Mutation is the changing of the allele of a gene to another one of it’s
possible values. This operation permits genetic algorithms to potentially
escape from local optimum solutions, a very important characteristic in the
field of artificial intelligence.
George Bora (UTCN) Genetic Algorithms April 13, 2014 9 / 17
Fitness Function
Via crossover and mutation we can create whole populations of
individuals, potential solutions, and so the question arises when do we
stop the evolutionary cycle?
George Bora (UTCN) Genetic Algorithms April 13, 2014 10 / 17
Fitness Function
Via crossover and mutation we can create whole populations of
individuals, potential solutions, and so the question arises when do we
stop the evolutionary cycle? The answer being when we have reached a
certain vicinity of an ideal solution, but for this we need to evaluate how
close is any one individual to satisfying our demands and being the sought
after solution.
George Bora (UTCN) Genetic Algorithms April 13, 2014 10 / 17
Fitness Function II
The implementation of the fitness function changes from one class of
problems to another, standardization being much more difficult than with
genes, and is one of the most time consuming elements of genetic
programming.
George Bora (UTCN) Genetic Algorithms April 13, 2014 11 / 17
Fitness Function II
The implementation of the fitness function changes from one class of
problems to another, standardization being much more difficult than with
genes, and is one of the most time consuming elements of genetic
programming.
Writing the fitness function, which when given a chromosome will return
how fit or close to the ideal it is, is one of the hardest yet essential tasks in
developing a solution with genetic programming as it is the only way to
close the loop and choose a final solution.
George Bora (UTCN) Genetic Algorithms April 13, 2014 11 / 17
Genetic Algorithms vs Genetic Programming
Within this field there exist two very different paradigms, genetic
algorithms and genetic programming the most visible difference between
them being the structure of the chromosomes they produce.
George Bora (UTCN) Genetic Algorithms April 13, 2014 12 / 17
Genetic Algorithms vs Genetic Programming
Within this field there exist two very different paradigms, genetic
algorithms and genetic programming the most visible difference between
them being the structure of the chromosomes they produce.
Genetic algorithms work with a chromosome which is linear and often fixed
in length, making them ideal for tunning the behavior of various solutions.
George Bora (UTCN) Genetic Algorithms April 13, 2014 12 / 17
Genetic Algorithms vs Genetic Programming
Within this field there exist two very different paradigms, genetic
algorithms and genetic programming the most visible difference between
them being the structure of the chromosomes they produce.
Genetic algorithms work with a chromosome which is linear and often fixed
in length, making them ideal for tunning the behavior of various solutions.
Genetic programming instead uses a tree-structured chromosome variable
in size, which allows it to generate the structure of the solution as well as
the behaviour.
George Bora (UTCN) Genetic Algorithms April 13, 2014 12 / 17
The problem
Automatically generate a VHDL program for simple signal processing.
George Bora (UTCN) Genetic Algorithms April 13, 2014 13 / 17
The problem
Automatically generate a VHDL program for simple signal processing.
Our solution, create a chromosome structure, crossover and related
operations as well as a fitness fitness which will write the program for us.
George Bora (UTCN) Genetic Algorithms April 13, 2014 13 / 17
The problem
Automatically generate a VHDL program for simple signal processing.
Our solution, create a chromosome structure, crossover and related
operations as well as a fitness fitness which will write the program for us.
George Bora (UTCN) Genetic Algorithms April 13, 2014 13 / 17
VHDL
VHDL is a hardware description language used in electronic design
automation to describe digital and mixed signal systems, it is most often
used with FPGA and integrated circuits.
George Bora (UTCN) Genetic Algorithms April 13, 2014 14 / 17
VHDL
VHDL is a hardware description language used in electronic design
automation to describe digital and mixed signal systems, it is most often
used with FPGA and integrated circuits.
Initially it was designed for simulation of electronic designs but it soon
came to be used as well for implementing those designs in FPGA and
ASIC.
George Bora (UTCN) Genetic Algorithms April 13, 2014 14 / 17
VHDL
VHDL is a hardware description language used in electronic design
automation to describe digital and mixed signal systems, it is most often
used with FPGA and integrated circuits.
Initially it was designed for simulation of electronic designs but it soon
came to be used as well for implementing those designs in FPGA and
ASIC.
Another possible use of VHDL, which we will not use in this presentation,
is as a general purpose parallel programming language.?
George Bora (UTCN) Genetic Algorithms April 13, 2014 14 / 17
VHDL Designs
A design, the primary goal of VHDL, will always be formed out of two parts:
George Bora (UTCN) Genetic Algorithms April 13, 2014 15 / 17
VHDL Designs
A design, the primary goal of VHDL, will always be formed out of two parts:
The entity, or structure which contains the input ports as well as the output
ports.
George Bora (UTCN) Genetic Algorithms April 13, 2014 15 / 17
VHDL Designs
A design, the primary goal of VHDL, will always be formed out of two parts:
The entity, or structure which contains the input ports as well as the output
ports.
The architecture in which the behavior of the design is described by using
VHDL’s operators.
George Bora (UTCN) Genetic Algorithms April 13, 2014 15 / 17
A possible implementation
For a possible implementation we can start from these basics:
genes and alleles :: either the ports, as leafs, or the operations of
VHDL, as nodes.
chromosome :: the entity combined with the architecture thus the
sought after design.
mapping :: loading the design into a VHDL simulator and later on
standard VHDL mapping
fitness function :: the performance of the chromosomes design in a
BHDL simulator
George Bora (UTCN) Genetic Algorithms April 13, 2014 16 / 17
The End
Thank your for your attention !
George Bora (UTCN) Genetic Algorithms April 13, 2014 17 / 17
The End
Thank your for your attention !
Any questions ?
George Bora (UTCN) Genetic Algorithms April 13, 2014 17 / 17

Weitere ähnliche Inhalte

Andere mochten auch

VLSI Experiments I
VLSI Experiments IVLSI Experiments I
VLSI Experiments I
Gouthaman V
 
Experiment write-vhdl-code-for-realize-all-logic-gates
Experiment write-vhdl-code-for-realize-all-logic-gatesExperiment write-vhdl-code-for-realize-all-logic-gates
Experiment write-vhdl-code-for-realize-all-logic-gates
Ricardo Castro
 
All VLSI programs
All VLSI programsAll VLSI programs
All VLSI programs
Gouthaman V
 
Basic structures in vhdl
Basic structures in vhdlBasic structures in vhdl
Basic structures in vhdl
Raj Mohan
 

Andere mochten auch (18)

verilog code for logic gates
verilog code for logic gatesverilog code for logic gates
verilog code for logic gates
 
Vlsi & embedded systems
Vlsi & embedded systemsVlsi & embedded systems
Vlsi & embedded systems
 
Vhdl
VhdlVhdl
Vhdl
 
VLSI Experiments I
VLSI Experiments IVLSI Experiments I
VLSI Experiments I
 
Vlsi design-manual
Vlsi design-manualVlsi design-manual
Vlsi design-manual
 
Verilog tutorial
Verilog tutorialVerilog tutorial
Verilog tutorial
 
VHDL
VHDLVHDL
VHDL
 
Experiment write-vhdl-code-for-realize-all-logic-gates
Experiment write-vhdl-code-for-realize-all-logic-gatesExperiment write-vhdl-code-for-realize-all-logic-gates
Experiment write-vhdl-code-for-realize-all-logic-gates
 
How to design Programs using VHDL
How to design Programs using VHDLHow to design Programs using VHDL
How to design Programs using VHDL
 
VTU ECE 7th sem VLSI lab manual
VTU ECE 7th sem VLSI lab manualVTU ECE 7th sem VLSI lab manual
VTU ECE 7th sem VLSI lab manual
 
VERILOG CODE
VERILOG CODEVERILOG CODE
VERILOG CODE
 
vlsi projects using verilog code 2014-2015
vlsi projects using verilog code 2014-2015vlsi projects using verilog code 2014-2015
vlsi projects using verilog code 2014-2015
 
All VLSI programs
All VLSI programsAll VLSI programs
All VLSI programs
 
Programs of VHDL
Programs of VHDLPrograms of VHDL
Programs of VHDL
 
VLSI Lab manual PDF
VLSI Lab manual PDFVLSI Lab manual PDF
VLSI Lab manual PDF
 
Basic structures in vhdl
Basic structures in vhdlBasic structures in vhdl
Basic structures in vhdl
 
Introduction to FPGA, VHDL
Introduction to FPGA, VHDL  Introduction to FPGA, VHDL
Introduction to FPGA, VHDL
 
Microelectronic Circuits (10EC63) Notes for Visvesvaraya Technological Univer...
Microelectronic Circuits (10EC63) Notes for Visvesvaraya Technological Univer...Microelectronic Circuits (10EC63) Notes for Visvesvaraya Technological Univer...
Microelectronic Circuits (10EC63) Notes for Visvesvaraya Technological Univer...
 

Ähnlich wie Proposed genome for creating VHDL programs with genetic algorithms

Swarm intelligence pso and aco
Swarm intelligence pso and acoSwarm intelligence pso and aco
Swarm intelligence pso and aco
satish561
 
Three's a crowd-source: Observations on Collaborative Genome Annotation
Three's a crowd-source: Observations on Collaborative Genome AnnotationThree's a crowd-source: Observations on Collaborative Genome Annotation
Three's a crowd-source: Observations on Collaborative Genome Annotation
Monica Munoz-Torres
 
Interpret gene expression results 2013
Interpret gene expression results 2013Interpret gene expression results 2013
Interpret gene expression results 2013
Elsa von Licy
 

Ähnlich wie Proposed genome for creating VHDL programs with genetic algorithms (18)

Genetic Algorithms and Image Classification
Genetic Algorithms and Image ClassificationGenetic Algorithms and Image Classification
Genetic Algorithms and Image Classification
 
Pathogen Genome Data
Pathogen Genome DataPathogen Genome Data
Pathogen Genome Data
 
Demonstration1 G As
Demonstration1   G AsDemonstration1   G As
Demonstration1 G As
 
A Review On Genetic Algorithm And Its Applications
A Review On Genetic Algorithm And Its ApplicationsA Review On Genetic Algorithm And Its Applications
A Review On Genetic Algorithm And Its Applications
 
Roeland Dietvorst - Alpha.One: The brain science behind effective marketing
Roeland Dietvorst - Alpha.One: The brain science behind effective marketingRoeland Dietvorst - Alpha.One: The brain science behind effective marketing
Roeland Dietvorst - Alpha.One: The brain science behind effective marketing
 
Presentation
PresentationPresentation
Presentation
 
nature inspired algorithms
nature inspired algorithmsnature inspired algorithms
nature inspired algorithms
 
Introduction to Optimization with Genetic Algorithm (GA)
Introduction to Optimization with Genetic Algorithm (GA)Introduction to Optimization with Genetic Algorithm (GA)
Introduction to Optimization with Genetic Algorithm (GA)
 
Final ppt
Final pptFinal ppt
Final ppt
 
M017127578
M017127578M017127578
M017127578
 
Application of Genetic Algorithm and Particle Swarm Optimization in Software ...
Application of Genetic Algorithm and Particle Swarm Optimization in Software ...Application of Genetic Algorithm and Particle Swarm Optimization in Software ...
Application of Genetic Algorithm and Particle Swarm Optimization in Software ...
 
algo presentation.pptx
algo presentation.pptxalgo presentation.pptx
algo presentation.pptx
 
Swarm intelligence pso and aco
Swarm intelligence pso and acoSwarm intelligence pso and aco
Swarm intelligence pso and aco
 
IonGAP - Uni of Westminster 23-10-2015
IonGAP - Uni of Westminster 23-10-2015IonGAP - Uni of Westminster 23-10-2015
IonGAP - Uni of Westminster 23-10-2015
 
Three's a crowd-source: Observations on Collaborative Genome Annotation
Three's a crowd-source: Observations on Collaborative Genome AnnotationThree's a crowd-source: Observations on Collaborative Genome Annotation
Three's a crowd-source: Observations on Collaborative Genome Annotation
 
Web Science, SADI, and the Singularity
Web Science, SADI, and the SingularityWeb Science, SADI, and the Singularity
Web Science, SADI, and the Singularity
 
Interpret gene expression results 2013
Interpret gene expression results 2013Interpret gene expression results 2013
Interpret gene expression results 2013
 
Genome annotation with open source software: Apollo, Jbrowse and the GO in Ga...
Genome annotation with open source software: Apollo, Jbrowse and the GO in Ga...Genome annotation with open source software: Apollo, Jbrowse and the GO in Ga...
Genome annotation with open source software: Apollo, Jbrowse and the GO in Ga...
 

Kürzlich hochgeladen

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Kürzlich hochgeladen (20)

Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 

Proposed genome for creating VHDL programs with genetic algorithms

  • 1. Genetic Algorithms George Bora UTCN April 13, 2014 George Bora (UTCN) Genetic Algorithms April 13, 2014 1 / 17
  • 2. Computer Science to Evolutionary Computation Within the vast field of computer science under it’s vast array of potential applications there exists the branch of artificial intelligence. George Bora (UTCN) Genetic Algorithms April 13, 2014 2 / 17
  • 3. Computer Science to Evolutionary Computation Within the vast field of computer science under it’s vast array of potential applications there exists the branch of artificial intelligence. One of the sub-branches of artificial intelligence is evolutionary computation which seeks to achieve continuous optimization and combinatorial optimization by incorporating knowledge of natural evolution processes. George Bora (UTCN) Genetic Algorithms April 13, 2014 2 / 17
  • 4. Basic Concepts from Biology The basic building blocks for evolutionary computation, which have kept their names from their native science, are as follows: genes allele chromosome individual mapping mutation and crossover fitness function George Bora (UTCN) Genetic Algorithms April 13, 2014 3 / 17
  • 5. Genes The element from which this method derives it name, as genes are the basic building blocks of life. George Bora (UTCN) Genetic Algorithms April 13, 2014 4 / 17
  • 6. Genes The element from which this method derives it name, as genes are the basic building blocks of life. So too in our search for the solution for various problems, genes are the basic elements we switch around and juggle with in order to arrive at a more optimum solution. George Bora (UTCN) Genetic Algorithms April 13, 2014 4 / 17
  • 7. Allele If genes are the basics of the solution in theory, alleles are the values encoded in genes are the ones we use in practice, when developing software which uses genetic programming. George Bora (UTCN) Genetic Algorithms April 13, 2014 5 / 17
  • 8. Allele If genes are the basics of the solution in theory, alleles are the values encoded in genes are the ones we use in practice, when developing software which uses genetic programming. When the time has passed and the solution must effectively be built or instantiated it is the allele which forms the blue print we go by. George Bora (UTCN) Genetic Algorithms April 13, 2014 5 / 17
  • 9. Allele If genes are the basics of the solution in theory, alleles are the values encoded in genes are the ones we use in practice, when developing software which uses genetic programming. When the time has passed and the solution must effectively be built or instantiated it is the allele which forms the blue print we go by. In the original vision for genetic algorithms there was only 1 allele per gene, which was a binary value and was stored in a 1 bit, as the field progressed all of those constrictions have been lifted. George Bora (UTCN) Genetic Algorithms April 13, 2014 5 / 17
  • 10. Chromosome and Individual As in nature an animal can not have it’s information encoded in a single gene, in programming a solution which warrants genetic algorithms is not simple enough as to be composed on 1 gene. George Bora (UTCN) Genetic Algorithms April 13, 2014 6 / 17
  • 11. Chromosome and Individual As in nature an animal can not have it’s information encoded in a single gene, in programming a solution which warrants genetic algorithms is not simple enough as to be composed on 1 gene. Chromosomes are the collection of genes, which make up the blueprint from which we will map our solution and create the individual. George Bora (UTCN) Genetic Algorithms April 13, 2014 6 / 17
  • 12. Chromosome and Individual As in nature an animal can not have it’s information encoded in a single gene, in programming a solution which warrants genetic algorithms is not simple enough as to be composed on 1 gene. Chromosomes are the collection of genes, which make up the blueprint from which we will map our solution and create the individual. If the chromosomes are the blue prints the individual is the ”end product”, to make an analogy with software engineering, and individual is to a class what a instance is to a object. George Bora (UTCN) Genetic Algorithms April 13, 2014 6 / 17
  • 13. Mapping The process by which we construct a individual from the chromosome we have generated is called mapping, it is one of the important elements (alongside chromosome structure and fitness functions) we must consider before we implement our design. George Bora (UTCN) Genetic Algorithms April 13, 2014 7 / 17
  • 14. Mapping The process by which we construct a individual from the chromosome we have generated is called mapping, it is one of the important elements (alongside chromosome structure and fitness functions) we must consider before we implement our design. Mapping and it’s complexity is often tied with how we define our alleles,genes and chromosome as well as our genetic operations, a great deal of planning being required in order to produce the best possible algorithm. George Bora (UTCN) Genetic Algorithms April 13, 2014 7 / 17
  • 15. Crossover Crossover is one of the fundamental operations within the toolbox of genetic algorithms, and one of the most important methods by which we can combine existing chromosomes to form new ones in the search for a fit enough solution. George Bora (UTCN) Genetic Algorithms April 13, 2014 8 / 17
  • 16. Crossover Crossover is one of the fundamental operations within the toolbox of genetic algorithms, and one of the most important methods by which we can combine existing chromosomes to form new ones in the search for a fit enough solution. It involves separating each chromosome which takes part into two parts, and then recombining parts from the different old chromosomes to form the new set of chromosomes. George Bora (UTCN) Genetic Algorithms April 13, 2014 8 / 17
  • 17. Mutation Mutation is the changing of the allele of a gene to another one of it’s possible values. George Bora (UTCN) Genetic Algorithms April 13, 2014 9 / 17
  • 18. Mutation Mutation is the changing of the allele of a gene to another one of it’s possible values. This operation permits genetic algorithms to potentially escape from local optimum solutions, a very important characteristic in the field of artificial intelligence. George Bora (UTCN) Genetic Algorithms April 13, 2014 9 / 17
  • 19. Fitness Function Via crossover and mutation we can create whole populations of individuals, potential solutions, and so the question arises when do we stop the evolutionary cycle? George Bora (UTCN) Genetic Algorithms April 13, 2014 10 / 17
  • 20. Fitness Function Via crossover and mutation we can create whole populations of individuals, potential solutions, and so the question arises when do we stop the evolutionary cycle? The answer being when we have reached a certain vicinity of an ideal solution, but for this we need to evaluate how close is any one individual to satisfying our demands and being the sought after solution. George Bora (UTCN) Genetic Algorithms April 13, 2014 10 / 17
  • 21. Fitness Function II The implementation of the fitness function changes from one class of problems to another, standardization being much more difficult than with genes, and is one of the most time consuming elements of genetic programming. George Bora (UTCN) Genetic Algorithms April 13, 2014 11 / 17
  • 22. Fitness Function II The implementation of the fitness function changes from one class of problems to another, standardization being much more difficult than with genes, and is one of the most time consuming elements of genetic programming. Writing the fitness function, which when given a chromosome will return how fit or close to the ideal it is, is one of the hardest yet essential tasks in developing a solution with genetic programming as it is the only way to close the loop and choose a final solution. George Bora (UTCN) Genetic Algorithms April 13, 2014 11 / 17
  • 23. Genetic Algorithms vs Genetic Programming Within this field there exist two very different paradigms, genetic algorithms and genetic programming the most visible difference between them being the structure of the chromosomes they produce. George Bora (UTCN) Genetic Algorithms April 13, 2014 12 / 17
  • 24. Genetic Algorithms vs Genetic Programming Within this field there exist two very different paradigms, genetic algorithms and genetic programming the most visible difference between them being the structure of the chromosomes they produce. Genetic algorithms work with a chromosome which is linear and often fixed in length, making them ideal for tunning the behavior of various solutions. George Bora (UTCN) Genetic Algorithms April 13, 2014 12 / 17
  • 25. Genetic Algorithms vs Genetic Programming Within this field there exist two very different paradigms, genetic algorithms and genetic programming the most visible difference between them being the structure of the chromosomes they produce. Genetic algorithms work with a chromosome which is linear and often fixed in length, making them ideal for tunning the behavior of various solutions. Genetic programming instead uses a tree-structured chromosome variable in size, which allows it to generate the structure of the solution as well as the behaviour. George Bora (UTCN) Genetic Algorithms April 13, 2014 12 / 17
  • 26. The problem Automatically generate a VHDL program for simple signal processing. George Bora (UTCN) Genetic Algorithms April 13, 2014 13 / 17
  • 27. The problem Automatically generate a VHDL program for simple signal processing. Our solution, create a chromosome structure, crossover and related operations as well as a fitness fitness which will write the program for us. George Bora (UTCN) Genetic Algorithms April 13, 2014 13 / 17
  • 28. The problem Automatically generate a VHDL program for simple signal processing. Our solution, create a chromosome structure, crossover and related operations as well as a fitness fitness which will write the program for us. George Bora (UTCN) Genetic Algorithms April 13, 2014 13 / 17
  • 29. VHDL VHDL is a hardware description language used in electronic design automation to describe digital and mixed signal systems, it is most often used with FPGA and integrated circuits. George Bora (UTCN) Genetic Algorithms April 13, 2014 14 / 17
  • 30. VHDL VHDL is a hardware description language used in electronic design automation to describe digital and mixed signal systems, it is most often used with FPGA and integrated circuits. Initially it was designed for simulation of electronic designs but it soon came to be used as well for implementing those designs in FPGA and ASIC. George Bora (UTCN) Genetic Algorithms April 13, 2014 14 / 17
  • 31. VHDL VHDL is a hardware description language used in electronic design automation to describe digital and mixed signal systems, it is most often used with FPGA and integrated circuits. Initially it was designed for simulation of electronic designs but it soon came to be used as well for implementing those designs in FPGA and ASIC. Another possible use of VHDL, which we will not use in this presentation, is as a general purpose parallel programming language.? George Bora (UTCN) Genetic Algorithms April 13, 2014 14 / 17
  • 32. VHDL Designs A design, the primary goal of VHDL, will always be formed out of two parts: George Bora (UTCN) Genetic Algorithms April 13, 2014 15 / 17
  • 33. VHDL Designs A design, the primary goal of VHDL, will always be formed out of two parts: The entity, or structure which contains the input ports as well as the output ports. George Bora (UTCN) Genetic Algorithms April 13, 2014 15 / 17
  • 34. VHDL Designs A design, the primary goal of VHDL, will always be formed out of two parts: The entity, or structure which contains the input ports as well as the output ports. The architecture in which the behavior of the design is described by using VHDL’s operators. George Bora (UTCN) Genetic Algorithms April 13, 2014 15 / 17
  • 35. A possible implementation For a possible implementation we can start from these basics: genes and alleles :: either the ports, as leafs, or the operations of VHDL, as nodes. chromosome :: the entity combined with the architecture thus the sought after design. mapping :: loading the design into a VHDL simulator and later on standard VHDL mapping fitness function :: the performance of the chromosomes design in a BHDL simulator George Bora (UTCN) Genetic Algorithms April 13, 2014 16 / 17
  • 36. The End Thank your for your attention ! George Bora (UTCN) Genetic Algorithms April 13, 2014 17 / 17
  • 37. The End Thank your for your attention ! Any questions ? George Bora (UTCN) Genetic Algorithms April 13, 2014 17 / 17