The aim of this project is to analyze the parameter, for the inputs to find an optimization problem than the candidate solution we have. This will help us to find more accurate knowledge level of user, using Genetic Algorithm (GA). In this algorithm a population of candidate solutions (called individuals, creatures, or phenotypes) to an optimization problem is evolved toward better solutions.
Analysis of Parameter using Fuzzy Genetic Algorithm in E-learning System
1. Analysis of Parameter usingFuzzyGenetic
Algorithmin E-learningSystem
Name of Student - Harshal Jain (10103538)
Name of Supervisor - Ms. Mukta Goel
2. A Genetic Algorithm (or GA) is a search technique used in computing to find true
or approximate solutions to optimization and search problems. Genetic
algorithms are categorized as global search heuristics. GA are a particular class
of evolutionary algorithms that use techniques inspired by evolutionary biology
such as inheritance, mutation, selection, and crossover (also called
recombination).
The most common type of genetic algorithm works like this:
ï A population is created with a group of individuals created randomly.
ï The individuals in the population are then evaluated.
ï The evaluation function is provided by the programmer and gives the
individuals a score based on how well they perform at the given task.
ï Two individuals are then selected based on their fitness, the higher the
fitness, higher the chance of being selected.
ï These individuals then "reproduce" to create one or more offspring, after
which the offspring are mutated randomly.
ï This continues until a suitable solution has been found or a certain number
of generations have passed, depending on the needs of the programmer.
3.
4. ï§ Initialization
Initially many individual solutions are randomly generated to form an initial population.
The population size depends on the nature of the problem, but typically contains several
hundreds or thousands of possible solutions. Traditionally, the population is generated
randomly, covering the entire range of possible solutions (the search space).
Occasionally, the solutions may be "seeded" in areas where optimal solutions are likely to
be found.
5. ï§ Selection
During each successive generation, a proportion of the existing
population is selected to breed a new generation. Individual solutions are
selected through a fitness-based process, where fitter solutions (as
measured by a fitness function) are typically more likely to be selected.
Certain selection methods rate the fitness of each solution and
preferentially select the best solutions. Other methods rate only a random
sample of the population, as this process may be very time-consuming.
Most functions are stochastic and designed so that a small proportion of
less fit solutions are selected. This helps keep the diversity of the
population large, preventing premature convergence on poor solutions.
Popular and well-studied selection methods include roulette wheel
selection and tournament selection.
In roulette wheel selection, individuals are given a probability of being
selected that is directly proportionate to their fitness.
Two individuals are then chosen randomly based on these probabilities
and produce offspring.
6. ï§ Crossover
The most common type is single point crossover. In single point crossover, you choose a locus
at which you swap the remaining alleles from on parent to the other. This is complex and is
best understood visually. As you can see, the children take one section of the chromosome
from each parent. The point at which the chromosome is broken depends on the randomly
selected crossover point.
This particular method is called single point crossover because only one crossover point
exists. Sometimes only child 1 or child 2 is created, but oftentimes both offspring are created
and put into the new population. Crossover does not always occur, however. Sometimes,
based on a set probability, no crossover occurs and the parents are copied directly to the
new population. The probability of crossover occurring is usually 60% to 70%.
7. ï§ Mutation
After selection and crossover, you now have a new population full of individuals. Some
are directly copied, and others are produced by crossover. In order to ensure that the
individuals are not all exactly the same, you allow for a small chance of mutation.
You loop through all the alleles of all the individuals, and if that allele is selected for
mutation, you can either change it by a small amount or replace it with a new value. The
probability of mutation is usually between 1 and 2 tenths of a percent.
Mutation is fairly simple. You just change the selected alleles based on what you feel is
necessary and move on. Mutation is, however, vital to ensuring genetic diversity within
the population.
8. ï§ Termination
This generational process is repeated until a termination condition has been reached.
Common terminating conditions are:
A solution is found that satisfies minimum criteria
Fixed number of generations reached
Allocated budget (computation time/money) reached
The highest ranking solution's fitness is reaching or has reached a plateau such
that successive iterations no longer produce better results
Manual inspection
Any Combinations of the above
9. ProblemStatement
The aim of this project is to analyze the parameter, for the
inputs to find an optimization problem than the candidate
solution we have. This will help us to find more accurate
knowledge level of user, using Genetic Algorithm (GA). In
this algorithm a population of candidate solutions (called
individuals, creatures, or phenotypes) to an optimization
problem is evolved toward better solutions.
10. Solution Approach
The solution approach is to find an optimized approach of
knowledge level of user by finding the appropriate weight
to power up the input value. This will tell us that whether
the knowledge level is very low, low, medium, or high.
11. Support for Novelty
Here, the problem signifies that we have a candidate
solution which is a member of a set of possible solutions to
a given problem (a candidate solution does not have to be
a likely or reasonable solution to the problemâit is simply
in the set that satisfies all constraints; that is, it is in the set
of feasible solutions.). So, in a genetic algorithm,
a population of candidate solutions (called individuals,
creatures, or phenotypes) to an optimization problem is
evolved toward better solutions. Each candidate solution
has a set of properties (its chromosomes or genotype)
which can be mutated and altered; traditionally, solutions
are represented in binary as strings of 0s and 1s, but other
encodings are also possible.
12. Product Perspective
System interfaces: The genetic algorithms ensures efficient output and subsequent visual access for ease-of-use.
User interfaces: The integrated graphs formed the output values shows the knowledge level and make it easy to
decide for every user. The designed genetic algorithm allows the user to see the parameter to use for finding
the knowledge level it, then proceeds to yield the output on the screen.
Hardware interfaces: The system does not have any hardware requirements.
Software interfaces: As the system is coded upon eclipse SDK, the system must require eclipse.
Title: Eclipse Classic 4.2.2 (32-bit)
Author: The Eclipse Foundation (www.eclipse.org)
Communications interfaces: The system does not require any network tools or interfaces.
Memory: A minimum of 180 MB is required by the eclipse SDK. The device must also have adequate memory
for training data, test data and code files.
Operations: The user needs to have the degrees of the user as an input to find the parameter and user will be
given the final result thereafter for the further decisions.
Site adaptation requirements: The file must be compatible and size must not be greater than 30 MB.
Overall Description:
13. Product Functions
Take the degrees of the users
Randomly generate a variable form 0.1 to 0.9 which will used as to
generate the power the degrees. There are 5 inputs in each row now the
generated value is âwâ and input is âpâ now it finds p^w, where for each
and every p there is distinct value of w.
Then the selection process will select two chromosomes which will used
for crossover and generates the 2 children of those two parents. The
cross over will occur for 80% of population.
After that in mutation we will randomly change the value of any âwâ
which will lead us to termination.
User Characteristics
Any entity can be a user if they have the degree or anything for which
they have to find out the appropriate solution.
14. Constraints
Reliability requirements: The algorithm designed is reliable for the user though it
sometimes may deviate only a little from the original but then also it can be
considered for the desired output.
Assumption and Dependencies
Basic computer skills are assumed on the part of user.
The user must have basic knowledge of Mysql.
There must be a fully appropriate input, the inputs must not be hypothetical or
assumed only by a small survey.
Apportioning of Requirements
Only one selection method is yet to be considered totally appropriate which may
help finding the solution to this types of problem.
15. Functional Requirements:
There is no authentication to any user because it is a simple code
which requires a candidate solution to perform its feature.
In this project there is a huge use of random values. There are 7 to 8
random values generated in the code according to their use.
User Interface is simply the output of the project which shows the
user an optimized way to its solution.
Data to be used as input cannot be manipulated because a small
difference in any value which is the part of the input will change the
whole solution of the project.
16. Non-Functional Requirements:
ï Reliability - The system shall be able to provide a level of
precision.
ï System Requirements â The system requires Eclipse software,
php designer, wampp server.
ï Database - The database must be regularly updated.
ï Availability â In case of a crash, the system must be restarted.
ï Portability â Java, the language the algorithm employs, is
platform independent and php is platform dependent.
ï There is a need of external interface for the algorithm.
17. Implementation
Take the degrees of the users in the database.
Randomly generate a variable form 0.1 to 0.9 which will used as to
generate the power the degrees. There are 5 inputs in each row now the
generated value is âwâ and input is âpâ now it finds p^w, where for each
and every p there is distinct value of w.
It forms chromosomes of the population.
Then we use the fitness function to find the fitness values of the
chromosomes.
Then the selection process will select two chromosomes which will be
used for crossover and generates the 2 children of those two parents.
The cross over will occur for 80% of population.
After that in mutation we will randomly change the value of any âwâ
which will lead us to termination.
18. Findings
The following are the key findings during the course of this
project:
The main finding was that the selection process has been used
two times â 1) to choose randomly any two chromosomes from
population and 2) to choose the chromosomes to be used in the
population after crossover by fitness function.
It is sometimes difficult to find the right parameter to get our
output, it may take many generations to find that which would
take time.
19. Conclusion
Here we conclude that the optimized solution of the candidate
solution may come in the starting generations only or it will take
many generations to come to that solution which is time
consuming. But we will definitely find more accurate solution
which will help us to achieve our aim and using this Genetic
Algorithm for it.
20. Future Work
In the future work this project will be very useful to find the
predicted values according to the field in which this project can be
helpful.
Genetic Algorithm implementation cannot be easily found in java
language for future which may become helpful to anyone needed in
specific language.
Genetic algorithms can be applied to a wide range of problems
which are NP (Nondeterministic ally Polynomial) complete.
GA future work is most useful in travelling salesperson problem,
where a salesperson must find the shortest route through a number
of cities starting and ending at a base city. However more practical
applications include strategy planning, scheduling / time tabling and
machine learning.
21. References
Published Papers:
[1] âMarketing a web-site using a fuzzy logic approachâ by IOAN
CONSTANTIN ENACHE
[2] âTen years of genetic fuzzy systems: current framework and new
trendsâ by O. Cordon, F. Gomide, F. Herrera, F. Hoffmann, L. Magdalena
[3] Tuning Of Fuzzy Systems Using Genetic Algorithms by Ulrich
Bodenhofer
[4] Solving an aggregate production planning problem by using multi-
objective genetic algorithm - (MOGA) approach by Md. A. Akhtar Hasin