Inter
national
J
our
nal
of
Electrical
and
Computer
Engineering
(IJECE)
V
ol.
9,
No.
5,
October
2019,
pp.
4336
4343
ISSN:
2088-8708,
DOI:
10.11591/ijece.v9i5.pp4336-4343
r
4336
Optimizing
r
equir
ement
analysis
by
the
use
of
meta-heuristic
in
Sear
ch
Based
Softwar
e
Engineering
Rajesh
K
umar
1
,
Rak
esh
K
umar
2
1
Department
of
Computer
Science
&
Applications,
CRM
Jat
Colle
ge,
Hisar
,
Haryana,
India
2
Department
of
Computer
Science
&
Applications,
K
urukshetra,
Uni
v
ersity
,
K
urukshetra,
Haryana,
India
Article
Inf
o
Article
history:
Recei
v
ed
Oct
16,
2018
Re
vised
Apr
17,
2019
Accepted
Apr
22,
2019
K
eyw
ords:
Genetic
algorithm
Human
based
computation
Optimization
Requirement
selection
Search
Base
Softw
are
Engineering
ABSTRA
CT
Requirements
analysis
is
the
first
phase
of
softw
are
de
v
elopment
process
and
it
is
one
of
the
main
concerns
of
softw
are
engineers.
The
sele
ction
of
requirements
is
a
comple
x
problem
caused
by
the
heterogeneity
of
the
users
and
their
v
aried
interests
and
demands.
In
this
paper
,
it
is
justified
that
their
is
a
strong
need
of
optimization
in
requirement
anal
ysis.
The
paper
ar
gues
that
requirement
selection
can
be
vie
wed
as
an
application
area
of
Search-Based
Softw
are
Engineering(SBSE).
The
aim
is
to
justify
the
claim
that
requirement
engineering
can
be
re-formulated
as
search
problem
to
which
meta-heuristic
technique
can
be
applied.
Copyright
c
2019
Insitute
of
Advanced
Engineeering
and
Science
.
All
rights
r
eserved.
Corresponding
A
uthor:
Rajesh
K
umar
,
CRM
Jat
Colle
ge,
Hisar
,
Haryana,
India.
T
el:
+919896402345
Email:
lsntl@ccu.edu.tw
1.
INTR
ODUCTION
Requirement
analysis
is
an
important
part
of
the
softw
are
engineering
process.
The
process
of
require-
ment
engineering
is
described
as
a
series
of
acti
vities
including
elicitati
on,
modeling
&
analysis,
specification
and
v
alidation
&
v
erification.
In
a
problem,
sometimes
the
size
of
requirements
is
huge
and
it
is
v
ery
dif
ficult
to
implement
all
the
requirements.
It
is
also
observ
ed
that
the
requirements
g
athered
from
heterogeneous
users
are
of
v
arying
size.
A
k
e
y
aspect
in
an
y
successful
project
is
to
determine
an
appropriate
set
of
requirements
for
implementation.
The
requirements
selection
needs
to
be
optimized
to
limit
the
infinite
flo
w
of
demands
posed
by
the
users.
Requirements
selection
is
an
engineering
process
to
select
an
optimal
set
of
requirements
out
of
all
the
require-
ments
proposed
by
the
customers.
The
objecti
v
e
of
requirement
analysis
is
to
address
the
question:
”What
do
you
w
ant
to
achie
v
e
in
a
product
or
service?”,
which
ho
we
v
er
is
a
subtle
task
in
the
praxis.
Hence,
a
formalized
representation
technique
is
required
to
optimize
the
requirement
selection
pro-
cess.
Thus
,
it
is
a
big
challenge
to
represent
these
requirements
in
a
formali
zed
w
ay
.
This
justify
that
Re-
quirements
selection
can
be
vie
wed
as
an
application
area
of
Search-Based
Softw
are
Engineering
(SBSE).
Search
based
Softw
are
Engineering
(SBSE)
seeks
to
reformulate
Softw
are
Engineering
problems
as
search
problems.There
is
a
need
of
optimization
to
find
out
the
perfect
requirement
set
using
some
metaheuristics.
Harman[1,
2]
coined
a
term
Search
Based
Softw
are
Engineering
(SBSE)
in
which
Search
Based
Optimisation
is
applied
to
Softw
are
Engineering.
The
first
objecti
v
e
of
this
paper
is
to
reformulate
the
requirement
selection
as
a
search
based
problem.
J
ournal
homepage:
http://iaescor
e
.com/journals/inde
x.php/IJECE
Evaluation Warning : The document was created with Spire.PDF for Python.
Int
J
Elec
&
Comp
Eng
ISSN:
2088-8708
r
4337
2.
REQ
UIREMENT
SELECTION:
A
SEARCH
PR
OBLEM
It
is
assumed
that
an
initial
set
of
requirements
has
been
collected
and
the
requirements
ha
v
e
been
identified
using
a
requirements
elicitation
process.
The
task
of
optimizing
requirements
is
usually
re
g
arded
to
be
a
challenging
and
hard
problem
in
itself[3,
4,
5]
Ne
v
erthel
ess,
there
are
still
se
v
eral
feasible
approaches
in
pre
vious
w
orks
that
address
the
solution
of
this
problem[6,
7,
8]
b
ut
none
is
absolute.
So,
in
softw
are
en-
gineering,
determining
the
set
of
requirements
is
a
critical
foundation
for
the
success
of
a
project.
Including
or
e
xcluding
requirements
inappropriately
may
result
in
the
emer
gence
of
products
that
f
ail
to
satisfy
stak
e-
holders’
needs
and
might
cause
a
huge
loss
of
re
v
enue.
Ho
we
v
er
,
uncertainty
is
ine
vitable
in
the
early
phase
of
requirements
engineering
and
could
lead
to
unsound
requirement
decisions.
So,
requirement
engineering
needs
some
intelligent
techniques
to
o
v
ercome
these
type
of
problems.
So,
first
objecti
v
e
is
to
represent
the
problem
in
the
form
of
search
space.
Then
selection
will
be
performed
on
using
some
fitness
function
follo
wed
by
encoding
scheme.
Then
crosso
v
er
,
mutation
and
replacement
will
be
tak
e
place
and
repeat
these
steps
until
the
terminating
criteria
reached.
The
frame
w
ork
proposed
in
the
paper
is
w
orking
in
the
conte
xt
of
requirement
representation
in
the
form
of
state
space.
The
emphasis
of
the
frame
w
ork
is
to
pro
vide
a
systematic
method
which
uses
the
search-
based
opt
imization
approach
to
solv
e
the
computational
and
cogniti
v
e
comple
xity
of
the
requirement
selection.
3.
SEARCH
B
ASED
SOFTW
ARE
ENGINEERING
Search
Based
Softw
are
Engineering
is
the
name
gi
v
en
by
Harman[1]
to
a
oeuvre
in
which
Search
Based
Optimization
is
applied
to
Softw
are
Engineering.
Optimization
approaches
ha
v
e
been
applied
to
solv
e
softw
are
engineering
problems
since
the
1970s
decade[9].
There
are
dif
ferent
solutions
to
optimization
problem
and
one
solution
is
searching.
According
to
Harman[10]
there
are
three
aspects
for
formulating
softw
are
engineering
problem
as
search
based
Optimization
problem.
(a)
Problem
Representation
T
echnique
(b)
Selection
of
Fitness
Function
(c)
Choice
of
Search-Based
T
echnique
3.1.
Pr
oblem
r
epr
esentation
Problem
representation
should
be
in
the
form
of
state
space.
Choosing
a
proper
problem
represent
ation
technique
is
essential
for
re
constructing
a
problem
into
a
search-based
optimization
problem.
T
o
represent
the
problem
in
the
form
of
state
space
firstly
state
space
need
to
be
define.
3.1.1.
State
space
r
epr
esentation
Search-based
requirements
selection
and
optimization
lies
within
the
general
SBSE
frame
w
ork[11].
SBSE
is
concerned
with
the
application
of
search-based
algorithms
to
softw
are
engineering
topics
such
as
Requirement
analysis.
The
purpose
of
all
search
algorithms
is
to
e
xplore
the
optimal,
near
-optimal
or
“good
enough”
s
olutions
among
a
number
of
possible
solutions
in
a
search
space.
Search/state
space
search
is
formally
describes
a
search
problem.
A
search
problem
consists
of
the
follo
wing:
(a)
S:
the
non
empty
set
of
states.
(b)
S
0
:
the
initial
state
where
s
0
S.
(c)
S
)
S
is
a
set
of
operator
.
(d)
G
is
the
set
of
final
state.
Note
that
G
S.
3.2.
Use
of
meta-heuristic
Dif
ferent
meta-heuristic
technique
are
a
v
aila
b
l
e
such
as
Genetic
Algorithms
(GA)
[12],
Sim
ulated
Annealing
(SA)[13]
and
Hill
Climbing
(HC)[14].
In
this
paper
Genetic
Algorithm
has
been
proposed
to
search
the
state
space.
3.2.1.
Genetic
algorithms
GA
is
a
generalized
search
and
optimization
technique.
It
w
orks
with
populations
(chromosomes)
of
indi
viduals,
each
representing
a
possible
solution
to
a
gi
v
en
problem.
Each
indi
vidual
is
e
v
aluated
to
gi
v
e
some
measure
of
its
fitness
to
the
problem
from
the
object
i
v
e
functions.
Algorithm
applies
the
principle
of
survi
v
al
of
fittest
to
find
better
approximations.
At
each
generation,
a
ne
w
set
of
approximation
is
created
by
the
process
of
select
ing
indi
vidual
potential
solutions
according
to
their
le
v
el
of
fitness
in
the
problem
domain
and
breeding
Optimizing
r
equir
ement
analysis
by
the
use
of
...
(Rajesh
K
umar)
Evaluation Warning : The document was created with Spire.PDF for Python.
4338
r
ISSN:
2088-8708
them
together
using
operators
borro
wed
from
natural
genetics.
A
simple
GA
that
yields
good
results
in
man
y
practical
problems
is
composed
of
follo
wing
operators[15]:
(a)
Encoding
(b)
Selection
(c)
Crosso
v
er
(d)
Reproduction
3.2.2.
Encoding
schemes-categorization
Depending
on
the
structure
of
encoding,
it
can
be
classified
into
tw
o
groups,
namely
,
one
dimensional
and
tw
o-dimensional.
Binary
,
V
alue
and
Permutation
encoding
is
one
dimensional
and
T
ree
encoding
is
tw
o
dimensional
encoding
schemes[6].
Studying
these
encoding
schemes,
one
can
infer
that
characters
represented
by
permutation
encoding
are
position
dependent.
In
Binary
encoding,
real
v
alue
encoding,
the
characters
are
v
alue
oriented.
The
tw
o
f
actors
identified
by
studying
dif
ferent
encoding
schemes
are
locus
and
v
alue
of
character
in
the
chromosome.
So,
f
actors
lik
e
locus
and
v
alue
should
be
k
ept
in
mind
while
encoding
a
solution
for
a
particular
problem.
3.3.
Goldber
g’
s
classification
of
encoding
techniques
Goldber
g
has
declared
in
his
w
ork
that
fitness
function
for
a
specific
encoding
scheme
is
dependent
on
tw
o
f
actors-
v
alue
and
order[8].
Three
dif
ferent
cate
gories
of
encoding
can
be
grouped
depending
on
fitness
e
v
aluation
f
actors
such
as:
(a)
Encoding
schemes
where
fitness
depends
on
v
alue
only:
f(v).
Eg:
V
alue
encoding
(b)
Encoding
schemes
where
fitness
depends
on
v
alue
and
order:
f(v
,o).
Eg:
Binary
Encoding
(c)
Encoding
schemes
where
fitness
depends
on
order
only:
f(o).
Eg:
Permutation
encoding.
4.
NEED
OF
NO
VEL
ENCODING
It
can
be
stated
that
the
e
xisting
encoding
schemes
f
all
under
the
three
cate
gories
mentioned
abo
v
e
and
the
y
are
dependent
on
v
alue
or
order
or
both
f
actors
for
assessment
of
fitness
function.
These
e
xisting
encoding
schemes
are
not
suitable
for
the
representation
of
the
requirements
because
there
is
no
mathematical
w
ay
to
represent
all
the
requirements
in
the
form
of
state
space.
Consequently
,
there
arises
a
need
to
unearth
a
ne
w
encoding
scheme
that
is
independent
of
these
tw
o
f
actors.
It
is
a
big
challenge
for
the
researchers
to
represent
the
requirements,
g
athered
from
the
dif
ferent
users,
in
the
form
of
a
chromosome.
The
size
o
f
the
requirements
is
not
fix
ed.
In
this
purposed
encoding
scheme,
requirements
are
stored
in
the
form
of
a
SET
.
4.1.
Pr
er
equisites
f
or
pur
posed
encoding
scheme
It
is
assumed
that
there
are
N
users
and
M
possible
syst
em
requirements
are
g
athered
from
users,
out
of
these
M
requirements
some
are
common
and
some
are
altogether
dif
ferent.
Ev
ery
requirement
is
assign
a
unique
number
on
the
basic
of
their
uniqueness.
It
is
assumed
that
there
is
a
SET
of
us
ers,
N=
f
N
1
;
N
2
;
::::;
N
n
g
and
a
SET
of
possible
system
requirements,
R
=
f
R
1
;
R
2
;
::::;
R
M
g
.
In
this
ne
w
Encoding
scheme
all
the
requirements
g
athered
from
a
user
are
represented
as
a
chromo-
somes
i
n
ra
w
form.
In
figure
1,
chromosome
1
represent
the
requirements
g
athered
from
user
1
and
so
on.
Chromosome
1:
R
1
;
R
3
;
R
6
;
R
8
;
R
9
;
R
12
;
R
15
Chromosome
2:
R
1
;
R
3
;
R
4
;
R
6
;
R
7
;
R
12
Chromosome
3:
R
1
;
R
2
;
R
5
;
R
8
;
R
10
;
R
16
;
R
20
;
R
23
Figure
1.
Representation
of
the
requirements
as
chromosome
Int
J
Elec
&
Comp
Eng,
V
ol.
9,
No.
5,
October
2019
:
4336
–
4343
Evaluation Warning : The document was created with Spire.PDF for Python.
Int
J
Elec
&
Comp
Eng
ISSN:
2088-8708
r
4339
5.
FITNESS
FUNCTION
It
can
not
be
denied
that
there
is
uncertainty
,
inconsistenc
y
and
ambiguity
in
the
requirement
analysi
s
phase.
Requirement
selection
is
a
comple
x
task
as
it
is
dif
ficult
to
select
t
h
e
fitness
function
for
requirements.
No
mathem
atical
function
is
applicable
to
measure
the
fitness
v
alue
of
a
particular
requirement
[16].
Thus,
in
this
se
ction,
the
author
tries
to
justify
that
Human
Based
Computation
can
be
used
as
a
fitness
function
for
the
genetic
algorithm.
Human-based
computation
is
a
technique
in
which
human
computational
po
wer
is
utilized
to
solv
e
the
problems
that
computers
cannot
yet
solv
e[17].
Ale
x
K
osoruk
of
f[18],
who
coined
the
term,
designed
a
genetic
algorithm
that
allo
ws
humans
to
suggest
solutions
that
might
impro
v
e
e
v
olutionary
processes.
Since
the
e
v
olution
of
Artificial
Intelligence(AI)
research
in
the
1950s,
computer
scienti
sts
ha
v
e
been
trying
to
imitate
human-lik
e
capabilities,
such
as
visual
processing,
language
and
reasoning.
Alan
T
uring
wrote
in
1949:The
idea
behind
computers
may
be
e
xplained
by
saying
that
these
machines
are
intended
to
carry
out
an
y
operations
which
could
be
done
by
a
human
mind
using
mathematical
model.
[19]
The
idea
of
using
human
ef
fort
to
perform
tasks
that
computers
cannot
yet
perform[20]
is
called
Hum
an-based
computation.
It
is
a
technique
that
mak
es
use
of
human
abilities
f
o
r
computation
to
solv
e
comple
x
problems[21].
The
thesis
”Human
Computation”
[17]
defines
the
term
as:
A
paradigm
for
utilizing
human
processing
po
wer
to
solv
e
problems
that
computers
cannot
yet
solv
e.
Both
CAPTCHA
(whi
ch
stands
for
Completely
Automated
Public
T
uring
T
est
to
T
ell
Computers
and
Humans
Apart)
and
reCAPTCHA
are
the
in
v
ention
of
Luis
v
on
Ahn,
a
Carne
gie
Mellon
computer
scientist
and
MacArthur
”genius
grant”
recipient.
”A
couple
hundred
million
CAPTCHAs
are
typed
daily
around
the
w
orld,
”
v
on
Ahn
tells
NEWSWEEK.
”The
first
time
I
did
t
h
e
calculations,
I
felt
quite
proud.
And
then
I
felt
bad
because
people
really
find
thes
e
anno
ying.
”
The
y’
re
also
w
asteful.
It
tak
es
about
8
to
10
seconds
to
type
a
CAPTCHA
more,
ob
viously
,
if
you
err
and
ha
v
e
to
start
o
v
er
meaning
a
total
of
some
400,000
human
hours
per
day
are
spent
typing
them
in.
As
a
point
of
comparison,
according
to
v
on
Ahn,
the
Empire
State
Building
took
7.5
million
human
hours
to
b
uild.
”Life
is
only
lik
e
750,000
hours,
”
The
Author
says.
”It’
s
almost
the
equi
v
alent
of
a
life.
One
thought,
is
there
an
y
w
ay
oneself
can
use
this
human
ef
fort
in
a
w
ay
that’
s
good
for
humanity?”
Recognizing
distorted
w
ords
is
one
of
the
things
that
the
human
mind
can
still
do
better
than
comput-
ers.
In
order
to
mak
e
old
ne
wspaper
,
books
and
other
te
xts
searchable,
pages
are
scanned
and
fed
into
optical
character
recognition
softw
are.
Because
ink
and
paper
de
grade
o
v
er
time,
some
w
ords
remain
incomprehensi-
ble.
The
reCAPTCHA
system
presents
W
eb
users
with
tw
o
w
ords:
one
w
ord
that
computers
can
not
read,
and
one
that
the
y
can.
So
long
as
you
type
the
kno
wn
w
ord
in
correctly
,
and
a
fe
w
other
people
agree
with
you
on
the
unkno
wn
w
ord,
you
ha
v
e
helped
digitize
an
archi
v
al
page.
And,
V
on
Ahn
says,
typing
in
tw
o
w
ords
instead
of
one
does
not
cost
you
a
significant
amount
of
e
xtra
time.
It
has
been
said
that
by
oneself
should
not
ask
what
is
ne
xt
in
terms
of
what
the
technology
and
Internet
will
be
able
to
do
b
ut
instead
try
to
understand
what
society
already
got
and
figure
out
ho
w
to
put
it
to
good
use.
V
on
Ahn’
s
ef
forts
surely
pro
v
e
that
point.
The
y
also
sho
w
that
in
some
w
ays,
peoples
can
help
computers
as
much
as
the
y
help
society
.
Another
e
xample
of
human
based
computation
is
Duolingo.
Duolingo
is
a
free-w
are
language
learning
platform.
It
includes
a
language
learning
website
and
application,
as
well
as
a
digital
language
competence
assessment
e
xam.
As
of
Aug.,
2018,
the
language
learning
website
and
application
of
fer
81
dif
ferent
language
courses
across
36
languages.
The
application
has
about
350
million
re
gistered
users
across
the
w
orld.
Duolingo
wins
Apple’
s
iPhone
App
of
the
Y
ear
a
w
ard
in
2013.
On
the
basis
of
abo
v
e
instances,
it
is
concluded
that
human
based
computation
is
a
compelling
fitness
function
in
requirement
selection.
W
ith
the
e
v
er
-increasing
number
of
Internet
users,
the
rele
v
ance
of
man
based
computation
becomes
all
the
more
prominent.
It
is
a
potential
medium
to
procure
the
fitness
v
alue
of
requirements.
6.
SELECTION
Selection
is
the
first
genetic
operation
in
the
reproducti
v
e
phase
of
genetic
algorithm.
The
objecti
v
e
of
selection
is
to
choose
the
fitter
indi
viduals
in
the
population
that
will
create
of
fsprings
for
the
ne
xt
generation,
commonly
kno
wn
as
mating
pool.
The
mating
pool
thus
selected
tak
es
part
in
further
genetic
operations,
adv
ancing
the
population
to
the
ne
xt
generation
and
hopefully
close
to
the
optimal
soluti
o
n.
In
other
w
ords,
Selection
is
the
process
of
choosing
breeding
stock
or
pare
n
t
s
from
a
population.
As
the
generations
pass,
the
Optimizing
r
equir
ement
analysis
by
the
use
of
...
(Rajesh
K
umar)
Evaluation Warning : The document was created with Spire.PDF for Python.
4340
r
ISSN:
2088-8708
members
of
population
should
get
fitter
and
fitter
.
Indi
viduals
from
the
mating
pool
are
used
to
generate
ne
w
of
fsprings,
with
the
resulting
of
fspring
forming
the
basis
of
ne
xt
generation.
So
it
i
s
desirable
that
the
mating
pool
should
ha
v
e
good
indi
viduals.
Selection
operator
w
orks
at
the
le
v
el
of
chromosomes.
The
k
e
y
idea
of
selection
operator
is
to
gi
v
e
pre
ference
to
bet
ter
indi
viduals
by
allo
wing
them
to
pass
on
their
genes
to
the
ne
xt
generation
and
prohibit
the
entrance
of
w
orst
fit
indi
viduals
into
the
ne
xt
generation.
The
goodness
of
each
indi
vidual
depends
on
its
fitness.
Fitness
v
alue
is
determined
by
an
objecti
v
e
function
[21].
Selection
of
indi
viduals
in
the
population
is
fitness
dependent
and
is
done
using
dif
ferent
algorithms[8].
Some
are
roulette
wheel
selection,
rank
s
election,
tournament,
steady
state
selection
and
man
y
more.
Selection
acts
as
acti
v
e
force
in
a
genetic
algorithm
by
re
gulate
the
genetic
search
t
o
w
ards
f
a
v
orable
domain
in
the
search
space.
Selection
operator
emulate
phenomena
and
processes
in
nature.
Selection
chooses
more
fit
indi
viduals
in
analogy
to
Darwin’
s
theory
of
e
v
olution
–
survi
v
al
of
fittest[22].
All
the
indi
vi
duals
ha
v
e
a
chance
of
being
selected
into
the
mating
pool,
b
ut
there
are
chances
that
an
indi
vidual
in
the
population
can
be
selected
more
than
once
depending
upon
its
fitness.
Selection
schemes
are
characterised
by
selection
pressure,
selection
v
ariance
and
loss
of
di
v
ersity
.
The
y
primarily
determine
the
con
v
er
gence
characteristics
of
genetic
algorithms.
Selection
has
to
be
balanced.
T
oo
strong
selection
means
suboptimal
highly
fit
indi
viduals
will
tak
e
o
v
er
the
population
reducing
the
di
v
ersity
and
too
weak
selection
will
result
in
too
slo
w
e
v
olution[23].
Goldber
g
and
Deb
grouped
selection
methods
in
to
four
cate
gories:
Proportionate,
Ranking,
T
ournament
and
Steady
state
selection.
(a)
Roulette
Wheel
Selection
(b)
Rank
Selection
(c)
T
ournament
selection
(d)
Steady
State
Selection
6.0.1.
Rank
selection
Rank
selection
is
used
in
this
paper
for
selection.
Rank
Selection
sorts
the
population
first
according
to
fitness
v
alue
and
ranks
them.
Rank
N
is
assigned
to
the
best
indi
vidual
and
rank
1
to
the
w
orst
indi
vidual.
Then
e
v
ery
chromosome
is
allocated
se
lection
probability
with
respect
to
its
rank[24].
Indi
viduals
are
selected
as
per
their
selection
probability
.
Rank
selection
is
an
e
xplorati
v
e
technique
of
selection.
Rank
selection
pre
v
ents
too
quick
con
v
er
gence
and
dif
fers
from
roulette
wheel
se
lection
in
terms
of
selection
pressure.
Rank
selection
o
v
ercomes
the
scaling
problems
lik
e
stagnation
or
premature
con
v
er
gence.
Ranking
controls
selecti
v
e
pressure
by
uniform
method
of
scaling
across
the
population.
Rank
selection
beha
v
es
in
a
more
rob
ust
manner
than
other
methods[25,
26].
7.
CR
OSSO
VER
Genetic
algorithms
are
optimization
algorithms
and
mimic
the
natural
process
of
e
v
olution.
Im
portant
operators
used
in
genetic
algorithms
are
selection,
crosso
v
er
and
mutation.
In
the
pre
vious
chapters,
dif
ferent
forms
of
selections
ha
v
e
been
discussed.
Crosso
v
er
and
mutation
operators
are
used
to
introduce
di
v
ersity
in
the
population.
T
ype
of
crosso
v
er
and
mutation
operator
used
for
a
problem
depends
on
the
type
of
encoding
used.
Dif
ferent
crosso
v
er
operators
are
described
in
this
section.
In
natural
systems,
crossing-o
v
er
is
a
comple
x
process
that
occurs
between
pairs
of
chromosomes.
T
w
o
chromosomes
are
ph
ysically
aligned,
breakage
occurs
at
one
or
more
corresponding
locations
on
each
chromosome,
and
homologous
chromosome
fragments
are
e
xchanged
before
the
breaks
are
repaired.
This
results
in
a
recombination
of
genetic
material
that
contrib
utes
to
v
ariability
in
the
population.
In
genetic
algorithms,
crosso
v
er
operator
e
xchanges
substrings
between
chro-
mosomes
represented
as
linear
strings
of
symbols.
The
basic
crosso
v
er
operation
is
a
three-step
procedure[27].
First,
tw
o
indi
viduals
are
chosen
at
random
from
the
population
of
’parent’
strings
generated
by
the
selection
operator
.
Second,
one
or
more
string
locations
are
chosen
as
breakpoints
or
crosso
v
er
points
delineating
the
string
se
gments
to
e
xchange.
Finally
,
parent
string
se
gments
are
e
xchanged
and
then
combined
to
produce
tw
o
resultant
of
fspring
indi
viduals.
Crosso
v
er
operates
on
selected
genes
from
parent
chromosomes
and
creates
ne
w
of
fspring.
Simplest
crosso
v
er
may
be
e
xchanging
genetic
material
of
tw
o
strings
with
respect
to
single
crosso
v
er
point.
Crosso
v
er
can
be
quite
complicated
and
depends
mainly
on
the
encoding
of
chromosomes.
Specific
crosso
v
er
made
for
a
specific
problem
can
impro
v
e
performance
of
the
genetic
algorithm.
Crosso
v
er
combines
parental
solutions
to
form
of
fspring
with
a
hope
to
produce
better
solutions.
Crosso
v
er
operators
are
critical
in
ensuring
good
mixing
of
b
uilding
blocks[28].
Int
J
Elec
&
Comp
Eng,
V
ol.
9,
No.
5,
October
2019
:
4336
–
4343
Evaluation Warning : The document was created with Spire.PDF for Python.
Int
J
Elec
&
Comp
Eng
ISSN:
2088-8708
r
4341
7.1.
Unif
orm
cr
osso
v
er
Uniform
crosso
v
er
operator
does
not
di
vide
the
parent
chromosome
into
se
gments
for
recom
bination.
Rather
,
it
treats
each
gene
of
the
chrom
osome
independently
to
choose
for
the
of
fspring.
In
Uniform
crosso
v
er
,
number
of
crosso
v
er
points
is
not
fix
ed
initially
.
It
recombines
genes
of
parent
chromosomes
on
the
basis
of
crosso
v
er
mask.
It
selects
x
number
of
crosso
v
er
points
in
the
chromosome
where
the
v
alue
of
x
is
a
random
v
alue
less
than
the
length
of
the
chromosome.
Crosso
v
er
mask
is
generated
according
to
this
random
v
alue.
In
this
crosso
v
er
,
each
gene
in
the
of
fspring
i
s
created
by
cop
ying
the
corresponding
gene
from
one
of
the
parents.
The
selection
of
the
corresponding
parent
is
undertak
en
via
a
randomly
generated
crosso
v
er
mask[29,
30,
31]
.
At
each
inde
x,
the
of
fspring
gene
is
tak
en
from
the
first
parent
if
there
is
a
1
in
the
mask
at
this
inde
x,
and
if
there
is
a
0
in
the
mask
at
this
inde
x,
the
gene
is
tak
en
from
the
second
parent.
Due
to
this
construction
principle
uniform
crosso
v
er
does
not
support
the
e
v
olv
ement
of
higher
order
b
uilding
blocks.
Uniform
crosso
v
er
does
not
e
xhibit
positional
bias
b
ut
do
e
xhibit
distrib
utional
bias
due
to
which
uniform
crosso
v
er
has
a
strong
tendenc
y
to
w
ards
transmitting
50%
of
t
he
genes
from
each
parent
and
ag
ainst
transmitting
an
of
fspring
a
lar
ge
number
of
co-adapted
genes
from
one
parent.
T
able
1.
Uniform
Crosso
v
er
P
arent
1
R
1
;
R
2
;
R
8
;
R
4
;
R
9
;
R
6
;
R
7
P
arent
2
R
4
;
R
2
;
R
6
;
R
3
;
R
5
;
R
7
;
R
1
;
R
8
Mask
1
1
0
1
0
1
1
0
Child
1
R
1
;
R
2
;
R
6
;
R
4
;
R
5
;
R
6
;
R
7
;
R
8
Child
2
R
4
;
R
2
;
R
8
;
R
3
;
R
9
;
R
7
;
R
1
8.
CONCLUSION
AND
FUTURE
W
ORK
The
application
of
me
taheuristics
to
resolv
e
Softw
are
Engineering
problems
is
part
of
a
nearly
ne
w
field
called
Search
Based
Softw
are
Engineering
(SBSE).
In
this
paper
,
the
aut
hor
justified
the
claim
that
re-
quirement
engineering
can
be
re-formulated
as
a
search
problem.
This
paper
has
presented
the
no
v
el
encoding
technique
for
requirement
optimization.
The
author
us
ed
the
idea
of
harnessing
human
computation
po
wer
in
order
to
solv
e
a
problem
that
computers
cannot
yet
solv
e.
People
eng
age
in
computation
not
because
the
y
w
ant
to
do
a
good
deed
b
ut
because
the
y
enjo
y
it.
The
future
of
SBSE
is
a
luminous
one.
There
are
man
y
areas
to
which
the
techniques
associated
with
SBSE
surely
apply
,
b
ut
ha
v
e
yet
to
be
fully
considered.
In
e
xisting
fields
of
application,
the
results
are
already
v
ery
encouraging.
REFERENCES
[1]
Mark
Harman
and
Bryan
F
.
Jones.
Search-based
soft
w
are
engineering.
Information
and
Softwar
e
T
ec
h-
nolo
gy
,
43(14):833–839,
December
2001.
[2]
Sarro,
Federica
and
K
essentini,
Marouane
and
Deb,
Kalayanmo
y
Guest
Editorial
Special
Issue
on
Search-
Based
Softw
are
Engineering.
IEEE
T
r
ansactions
on
Evolutionary
Computation
,
3(22):333–333,
2018.
[3]
T
om
T
ourw
´
e,
W
im
Codenie,
Nick
Boucart,
and
Vladimir
Blagoje
vi
´
c.
Demys
tifying
release
definition:
from
requirements
prioritization
to
collaborati
v
e
v
alue
quantification.
In
International
W
orking
Confer
-
ence
on
Requir
ements
Engineering:
F
oundation
for
Softwar
e
Quality
,
pages
37–44.
Springer
,
2009.
[4]
Thakurta,
Rahul
Understanding
requirement
prioritization
artif
acts:
a
systematic
mapping
study
.
Re-
quir
ements
engineering
,
4(22):491–495,
2017.
[5]
Joachim
Karlsson
and
K
e
vin
Ryan.
A
cost-v
alue
approach
for
prioritizing
requirements.
IEEE
Softw
.
,
14(5):67–74,
September
1997.
[6]
Franz
Rothlauf
and
Da
vid
E.
Goldber
g.
Repr
esentations
for
Genetic
and
Evolutionary
Algorithms
.
Ph
ysica-V
erlag,
2002.
[7]
P
al,
Sankar
K
and
W
ang,
P
aul
P
Genetic
algorithms
for
pattern
recognition.
CRC
pr
ess
,
4(20):499–510,
2017.
[8]
T
.
Gilb
.
Competitive
Engineering:
A
Handbook
F
or
Systems
Engineering
,
Requir
ements
Engineering
,
and
Softwar
e
Engineering
Using
Plangua
g
e
.
Else
vier
Science,
2005.
[9]
W
.
Miller
and
D.
L.
Spooner
.
Automatic
generation
of
floating-point
test
data.
IEEE
T
r
ans.
Softw
.
Eng
.
,
2(3):223–226,
May
1976.
Optimizing
r
equir
ement
analysis
by
the
use
of
...
(Rajesh
K
umar)
Evaluation Warning : The document was created with Spire.PDF for Python.
4342
r
ISSN:
2088-8708
[10]
Mark
Harman,
S.
Afshin
M
ansouri,
and
Y
uan
yuan
Zhang.
Search-based
softw
are
engineering:
T
rends,
techniques
and
applications.
A
CM
Comput.
Surv
.
,
45(1):11:1–11:61,
December
2012.
[11]
Mark
Harman.umbarkar2015crosso
v
er
The
current
state
and
future
of
search
based
softw
are
engineering.
In
2007
Futur
e
of
Softwar
e
Engineering
,
FOSE
’07,
pages
342–357,
W
ashington,
DC,
USA,
2007.
IEEE
Computer
Society
.
[12]
John
H.
Holland.
Adaptation
in
Natur
al
and
Artificial
Systems
.
Uni
v
ersity
of
Michig
an
Press,
Ann
Arbor
,
MI,
1975.
second
edition,
1992.
[13]
S.
Kirkpatrick,
C.
D.
Gelatt,
and
M.
P
.
V
ecchi.
Optimization
by
simulated
annealing.
SCIENCE
,
220(4598):671–680,
1983.
[14]
Sheldon
H.
Jacobson
and
En
v
er
Y
¨
ucesan.
Analyzing
the
performance
of
generalized
hill
climbing
algo-
rithms.
J
ournal
of
Heuristics
,
10(4):387–405,
July
2004.
[15]
K.A.
De
Jong.
An
Analysis
of
the
Behaviour
of
a
Class
of
Genetic
Adaptive
Systems
.
PhD
thesis,
Uni
v
er
-
sity
of
Michig
an,
1975.
[16]
John
J.
Grefenstette.
Genetic
algorithms
and
machine
learning.
In
Pr
oceedings
of
the
Sixth
Annual
Confer
ence
on
Computational
Learning
Theory
,
COL
T
’93,
pages
3–4,
Ne
w
Y
ork,
NY
,
USA,
1993.
A
CM.
[17]
Luis
V
on
Ahn.
Human
Computation
.
PhD
thesis,
Pittsb
ur
gh,
P
A,
USA,
2005.
AAI3205378.
[18]
A.
K
osoruk
of
f.
Human
based
genet
ic
algorithm.
In
2001
IEEE
International
Confer
ence
on
Systems,
Man
and
Cybernetics.
e-Systems
and
e-Man
for
Cybernet
ics
in
Cyber
space
(Cat.No.01CH37236)
,
v
o
l
ume
5,
pages
3464–3469
v
ol.5,
Oct
2001.
[19]
A.
M.
T
uring.
Computers
&
thought.
chapter
Com
pu
t
ing
Machinery
and
Intelligence,
pages
11–35.
MIT
Press,
Cambridge,
MA,
USA,
1995.
[20]
Edith
La
w
and
Luis
v
on
Ahn.
Input-agreement:
A
ne
w
mechanism
for
collecting
data
using
human
computation
g
ames.
In
Pr
oceedings
of
the
SIGCHI
Confer
ence
on
Human
F
actor
s
in
Computing
Systems
,
CHI
’09,
pages
1197–1206,
Ne
w
Y
ork,
NY
,
USA,
2009.
A
CM.
[21]
Man-Ching
Y
uen,
Ling-Jyh
Chen,
and
Irwin
King.
A
surv
e
y
of
human
computation
systems.
2009
International
Confer
ence
on
Computational
Science
and
Engineering
,
4:723–728,
2009.
[22]
Da
vid
B.
F
ogel.
Evolutionary
Computation:
T
owar
d
a
Ne
w
Phil
osophy
of
Mac
hine
Intellig
ence
.
IEEE
Press,
Piscata
w
ay
,
NJ,
USA,
1995.
[23]
Melanie
Mitchell.
An
Intr
oduction
to
Genetic
Algorithms
.
MIT
Press,
Cambridge,
MA,
USA,
1998.
[24]
James
E.
Bak
er
.
Adapti
v
e
selection
methods
for
ge
n
e
tic
algorithms.
In
Pr
oceedings
of
the
1st
Interna-
tional
Confer
ence
on
Genetic
Algorithms
,
pages
101–111,
Hillsdale,
NJ,
USA,
1985.
L.
Erlbaum
Asso-
ciates
Inc.
[25]
Darrell
Whitle
y
.
The
genitor
algorithm
and
selection
pressure:
Wh
y
rank-based
allocation
of
reproducti
v
e
trials
is
best.
In
Pr
oceedings
of
the
Thir
d
International
Confer
ence
on
Genetic
Algorithms
,
pages
116–
121,
San
Francisco,
CA,
USA,
1989.
Mor
g
an
Kaufmann
Publishers
Inc.
[26]
Thomas
B
¨
ack.
Ev
olutionary
algorithms.
SIGBIO
Ne
wsl.
,
12(2):26–31,
June
1992.
[27]
Conor
Ryan,
Arthur
H.M.
v
an
Roermund,
and
Christina
Johanna
Maria
V
erhoe
v
en.
A
utomatic
Re-
engineering
of
Softwar
e
Using
Genetic
Pr
o
gr
amming
.
Kluwer
Academic
Publishers,
Norwell,
MA,
USA,
1999.
[28]
T
.
Baeck,
D.B.
F
ogel,
and
Z.
Michale
wicz.
Evolutionary
Computation
1:
Basic
Algorithms
and
Oper
a-
tor
s
.
Basic
algorithms
and
operators.
T
aylor
&
Francis,
2000.
[29]
D.H
Ackle
y
.
A
Connectionist
Mac
hine
for
Genetic
Hillclimbing
,
v
olume
SECS28
of
The
Kluwer
Inter
-
national
Series
in
Engineering
and
Computer
Science
.
Kluwer
Academic
Publishers,
Boston,
1987.
[30]
Umbarkar
,
AJ
and
Sheth,
PD
CR
OSSO
VER
OPERA
T
ORS
IN
GENETIC
ALGORITHMS:
A
REVIEW
..
ICT
A
CT
journal
on
soft
computing
,
6(1):299–301,
2015.
[31]
Gilbert
Syswerda.
Uniform
crosso
v
er
in
genetic
algorithms.
In
Pr
oceedings
of
the
3r
d
International
Con-
fer
ence
on
Genetic
Algorithms
,
pages
2–9,
San
Fra
ncisco,
CA,
USA,
1989.
Mor
g
an
Kaufmann
Publishers
Inc.
Int
J
Elec
&
Comp
Eng,
V
ol.
9,
No.
5,
October
2019
:
4336
–
4343
Evaluation Warning : The document was created with Spire.PDF for Python.
Int
J
Elec
&
Comp
Eng
ISSN:
2088-8708
r
4343
BIOGRAPHIES
OF
A
UTHORS
Rajesh
K
umar
obtained
his
B.Sc.
De
gree,
Master’
s
De
gree
(Master
of
Computer
Applications)
from
K
urukshetra
Uni
v
ersity
,
K
urukshetra.
Currently
,
He
is
an
Assistant
Professor
in
t
he
Depart-
ment
of
Computer
Science
and
Applic
ation’
s,
Chhaju
Ram
M
emorial
Jat
Colle
ge,
Hisar
,
Haryana,
INDIA.
His
research
interests
are
in
Genetic
Algorithm,
Theory
of
Automata,
Softw
are
Engineering,
Artificial
Intelligence,
Design
and
Analysis
of
Algorithm
and
Linux.
Pr
of
.
Rak
esh
K
umar
obtained
his
B.Sc.
De
gree,
Master’
s
De
gree
–
Gold
Medalist
(Master
of
Computer
Applications)
and
PhD
(Comput
er
Science
&
Applications)
from
K
urukshetra
Uni
v
ersity
,
K
urukshetra.
Currently
,
He
is
Professor
&
Chairperson
in
the
Department
of
Computer
Science
and
Applications,
K
urukshetra,
Uni
v
ersity
,
K
urukshetra,
Haryana,
INDIA.
His
research
interests
are
in
Genetic
Algorithm,
Softw
are
T
esting,
Artificial
Intelligence,
and
Netw
orking.
He
is
a
senior
member
of
International
Association
of
Computer
Science
and
Information
T
echnology
(IA
CSIT).
Optimizing
r
equir
ement
analysis
by
the
use
of
...
(Rajesh
K
umar)
Evaluation Warning : The document was created with Spire.PDF for Python.