SlideShare a Scribd company logo
ISSN: 1694-2507 (Print)
ISSN: 1694-2108 (Online)
International Journal of Computer Science
and Business Informatics
(IJCSBI.ORG)
VOL 3, NO 1
JULY 2013
Table of Contents VOL 3, NO 1 JULY 2013
Comparative Analysis of Job Scheduling for Grid Environment ............................................................1
Neeraj Pandey, Ashish Arya and Nitin Kumar Agrawal
Hackers Portfolio and its Impact on Society ........................................................................................1
Dr. Adnan Omar and Terrance Sanchez, M.S.
Ontology Based Multi-Viewed Approach for Requirements Engineering..............................................1
R. Subha and S. Palaniswami
Modified Colonial Competitive Algorithm: An Approach for Graph Coloring Problem ..........................1
Hojjat Emami and Parvaneh Hasanzadeh
Security and Privacy in E-Passport Scheme using Authentication Protocols and Multiple Biometrics
Technology........................................................................................................................................1
V. K. Narendira Kumar and B. Srinivasan
Comparative Study of WLAN, WPAN, WiMAX Technologies ................................................................1
Prof. Mangesh M. Ghonge and Prof. Suraj G. Gupta
A New Method for Web Development using Search Engine Optimization............................................1
Chutisant Kerdvibulvech and Kittidech Impaiboon
A New Design to Improve the Security Aspects of RSA Cryptosystem ..................................................1
Sushma Pradhan and Birendra Kumar Sharma
A Hybrid Model of Multimodal Approach for Multiple Biometrics Recognition ...................................1
P. Prabhusundhar, V.K. Narendira Kumar and B. Srinivasan
IJCSBI.ORG
CBR Based Performance Analysis of OLSR Routing Protocol in MANETs ...............................................1
Jogendra Kumar
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 1
Comparative Analysis of Job
Scheduling for Grid Environment
Neeraj Pandey
Department of Computer Science & Engineering
G. B. Pant Engineering College Ghurdauri
Uttarakhand, India.
Ashish Arya
Department of Computer Science & Engineering
G. B. Pant Engineering College Ghurdauri
Uttarakhand, India
Nitin Kumar Agrawal
Department of Computer Science & Engineering
G. B. Pant Engineering College Ghurdauri
Uttarakhand, India
ABSTRACT
Grid computing is a continuous growing technology that alleviates the executions of large-
scale resource intensive applications on geographically distributed computing resources.
For a computational grid environment, there are number of scheduling policies available to
address the scheduling and load balancing problem. Scheduling techniques applied in grid
systems are primarily based on the concept of queuing systems, and deals with the
allocation of job to computing node. The scheduler, that schedules the incoming job can be
based on global vs. local i.e. what information will be used to make a load balancing
decision, centralized vs. de-centralized i.e. where load balancing decisions are made, and
static vs. dynamic i.e. when the distribution of load is made. The primary objective of all
load balancing algorithm is minimization of the makespan value, maximum load balanced
and to gain more desirable performance. In this paper, we present the various load
balancing strategies of job scheduling for grid computing environment. We also analyze the
efficiency and limitations of the various approaches
Keywords
Computing, Load Balancing, Scheduling, Genetic Algorithm, Fuzzy logic, Job Replication.
1. INTRODUCTION
In the last several years grid computing has emerged as an weighty field,
distinguished from conventional distributed computing by its focus on large-
scale resource sharing, innovative applications, and in some cases, high-
performance orientation [1]. These enable sharing, selection and aggregation
of suitable computational and data resources for solving large-scale data
intensive problems in science, engineering, and commerce [5]. A grid
computing environment comprises combination of various homogeneous
and heterogeneous resources such as computing nodes, and workstations
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 2
which are virtually aggregated to serve as a unified computing resource.
Grid middleware provide users with seamless computing ability and
uniform access to resources in the heterogeneous grid environment. In order
to provide user with a seamless computing environment, the Grid
middleware system need to solve several challenges originating from the
inherent features of the grid [2].
In distributed systems, every node has different processing speed and
system resources, so in order to enhance the utilization of each node and
shorten the consumption of time, “Load Balancing” will play a critical role
[15]. The performance of load balancing algorithms is strongly related to the
number of computing node. Since each computing node has its own
inimitable computing capabilities and the pattern of the job arrival to the
computing node is imbalanced, thus the grid system may be overloaded. The
main objective of load balancing is improved the performance of grid
system through its distribution of load among the computing nodes, and
minimize the execution time of job. In general, load-balancing algorithms
can be categorized as centralized or decentralized in terms of where the load
balancing decisions are made. A centralized load balancing approach can
function either based on averages scheme or instantaneous scheme
according to the type of information on which the load balancing decisions
are made [4].
The rest of paper is organized into 6 sections. Section 2 presents the
overview of the system model including the grid and mathematical model
with load balancing architecture Section. The load balancing approaches for
grid system are presented in Section 3. The analysis and comparisons of
some grid load balancing algorithms are described in section 4. Section 5
presents some challenges and key issues related to load balancing And
finally, the conclusion is given in section 6.
2. SYSTEM MODEL
2.1 Grid Model
The grid under study consist a central resource management unit (RMU), to
which every computing node (CN) connects and grid clients send their job
to RMU for further processing. The RMU is responsible for scheduling jobs
among CN. The role of dispatcher is the job management, including
maintenance of the load balancing, monitoring node status, node selection,
execution, and assignment of jobs for each node. An agent provides a
simple and uniform abstraction of the functions in the grid management.
The CNs in the grid can be either homogeneous or heterogeneous and a
queue is associated with every computing node. The arrived jobs will be
placed in a job queue in the RMU from which they are assigned to CNs. The
grid agent monitors the waiting job. Upon arrival, jobs must be assigned
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 3
either to exactly one CN for processing immediately by the instantaneous
scheduling or wait to be scheduled by the averages-based scheme [4]. In a
Grid system, the composition of nodes is dynamic, every node is likely to
enter a busy state at any time and thus lower its performance, so in selecting
nodes, all factors should be considered. At the global grid level, each agent
is a representative of a grid resource and acts as a service provider of high
performance computing power [14].
2.2 Mathematical Model
A computational grid system model [21] consisting p set of the CNs, is
shown in figure 1. It consists of Ni computing nodes (CNs) such that:
i 1 2 3 n 1 n
N { (N ,N ,N , ................ ,N ,N ), | N| n }
  (1)
The nodes are connected to each other via a communication network. The
nodes of grid system possibly could be either an individual machine or a
cluster. The nature of the node is combination of both homogeneous and
heterogeneous, and modeled as M/M/1 queuing system. The inter arrival
time and service time of the system follows exponentially distributed. The
notations and assumptions used are as follows:
 ∅i : External job arrival rate at node i.
 μi : Mean service rate of node i.
 𝜆 : Total traffic through the network.
A job arriving at node i may be either processed at node i or transferred to
another node j through the communication network for computation. The
performance of load balancing policies are closely related to the number of
node involves in a computational grid system.
Figure 1. Grid System Model
 Φ : Total external job arrival rate of the system and given as:
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 4
1
Φ   
n
i
i
  (2)
 ri : Mean service time of a job at node i (i.e. the average time to
service (process) a job at node i).
 βi : Mean job processing rate (load) at node i (i.e. the average
number of jobs processed at node i per unit interval of time). This is
the load for node i assigned by the job allocation scheme.
 t : Mean communication time for sending or/and receiving a job
from one node to another node.
 ρ : Utilization of the communication network and given as:
*t  (3)
3. GRID LOAD BALANCING APPROACH
In this section, four algorithms are considered for grid load balancing. A
grid is a huge collection of multiple grid resources (local or global) that are
distributed geographically in a wide area. Load balancing is an important
system function destined to distribute the workload among available
computing nodes to improve throughput and/or execution times of parallel
computer programs either uniform or non-uniformly [19]. There are various
load balancing algorithms are projected in past several years. Various
approaches such as fuzzy logic, genetic algorithm, and job replication are
used to implement load balancing algorithms.
3.1 FCFS Approach
The FCFS algorithm [4,14] is proved to be efficient under some conditions.
Consider a grid environment G with n CNs as given in equation 1, where
each CNs Ni has its own capability to process the job. Let m be the total
number of job J, which is considered to be run on G.
1 2 3 1
J {J , J ,J , ................., J , J }i m m
 (4)
The arrival time of each job Jj is tj and execution time is txj. Each job has
two scheduled attributes: a start time and an end time denoted by ts, te,
respectively. Upon arrival, jobs are allocated to a certain CN Nx ∈ N by the
central resource management unit using first-come-first-served algorithm.
The function of the agent is to find the earliest possible time for each job to
complete, according to the sequence of the job arrivals. A job probably
allocated to any of the CN. So, the function of FCFS to consider all these
possibilities and identify which CN will finish the job earliest. Therefore,
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 5
( )j jtx min tx (5)
The completion time of jobs is always equal to the earliest possible start
time plus the execution time, which is described as:
j j jtc ts tx  (6)
The earliest possible start time for Job Jj on a CN is the latest free time of
the chosen CN if there are still jobs running on it. if there is no job running
on the chosen CN ahead of job Jj's arrival. Jj can be executed on this CN
immediately.
  { , , , ( ) ( ), }j j p
ts max t max te p P p P j p j    (7)
3.2 Job Replication Approach
Menno Dobber et al. [11] analyze and compare the effectiveness of the
dynamic load balancing and job replication approach. The two main
techniques that are most suitable with the dynamic nature of the grid are
Dynamic Load Balancing (DLB) and job replication (JR) [11]. Consider a
grid system P with n computing node; a set J of jobs Ji (as given in equation
1, and 8) is considered to be run on P. As the name implies a JR scheme
creates several replica of an individual job and schedule them to run into
different nodes. The node that finish the job first, send a message to other
node involve in a grid system to finish the execution of current job and start
the execution of next job available in the queue.
Figure 2. Job Replication (2JR) Scheme
A m-JR scheme creates m-1 precise copies of each job and these jobs are
considered to be run on P. The same data set and the parameters are
provided to the two copies of a job, to perform exactly the same
computation so the calculations are completely the same. The JR approach
consists of I iteration and one iteration takes total R-steps. N copies of all
jobs have been spread out to P. As soon as the computing node finished one
of the copies of the job, it sends a message to other computing nodes to kill
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 6
the current job execution and start the processing of the next job. A 2-JR
scheme is show in fig. 2, consisting 4 CN and 4 jobs. Firstly 2 copies of
each job each job is created after then each job with its copy are distributed
to n =2 CN. In figure 3, one copy (A2) of job A1 is created and then
distributed to CN1 and CN2. CN1 finished job A1 first, so it send a finalize
message “fin” to CN2. Sending a message between CN take some network
delay, therefore scheduling of next job by a CN can takes some time.
Duration of a specific job is defined as:
Job-Time = min {all its job time} + possible send time (8)
3.3 Genetic algorithm Based Approach
Genetic algorithms (GA) [4, 7, 8, 22] are increasingly popular for solving
optimization, search and machine learning problems. It is basically a well-
known and robust search heuristics. It search optimal solution from entire
search space In grid environment scheduling is a type of be NP complete
problem, i.e. there is no known polynomial time algorithm to optimally
solve this problem. The main objective to use GA for load balancing is to
achieve the minimum of makespan (the latest completion time among all the
jobs processed in CN), maximum node utilization and a well-balanced load
across all the CNs. Genetic algorithms are well suited to solving scheduling
problems, because unlike heuristic methods GA operate on a population of
solutions rather than a single solution. A combination of intelligent agents
and multi-agent approaches is applied to both local grid resource scheduling
and global grid load balancing. GA is basically used to generate solutions
related to optimization problems using various techniques such as selection,
mutation, and crossover. Let P be a set, then the cost function CF, is given
as:
: P IRCF  (9)
GA start with an initial set of random solutions called population. Each
individual in a population is called a chromosome, represents a solution to
the problem. The evaluation of chromosomes is done through generations.
During each generation, the chromosomes are evaluated, using some fitness
function. For creation of the next generation, new chromosomes, called
offspring, are formed. The offspring is created by either using a crossover
operator or using a mutation operator. The new generation is formed by
selecting the individual using fitness values. After several generations, best
chromosome is chooses, which represents the optimum or suboptimal
solution to the problem [4]. The GA concentrates on an overall performance
over a list of jobs and aims at a more desirable load balance across all the
nodes in a computational grid.
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 7
3.4 Fuzzy Based Approach
This section introduces the fuzzy method used in the fuzzy load balancing
algorithm. Fuzzy logic [9, 10, 12, 13, 23] deals with reasoning that is
approximate rather than fixed and precise. It is a superset of conventional
Boolean logic that has been extended to handle the concept of partial truth-
values between “completely-truth”, and “completely-false”. In a more
extensive sense, fuzzy logic is associated with the concept of fuzzy sets.
Terms in the fuzzy set are given linguistic variables. Using fuzzy logic, one
can specify the degrees of overload or otherwise with linguistic labels such
as lightly loaded, normal, overloaded, heavily overloaded etc.. The fig 3(a)
Show the use of fuzzy logic to represent degree of truth. The fuzzy expert
system makes scheduling decisions based on a fuzzy logic. As shown in fig
3(b), if processor load is regarded as a linguistic variable, it may have the
following terms as its values: light, moderate, and heavy. If „light‟ is
interpreted as a load below about one job, „moderate‟ as a load between
about 3 and 5 jobs and „heavy„ as a load above about 7 jobs, these terms
may be described as fuzzy sets, where p represents the grade of membership
[9]. A given fuzzy rule Ri consists of two differentiated parts, namely,
antecedent and consequent parts, related to fuzzy concepts [12]. Rules
activation conditions are reflected in the antecedent part of the rule. A rule
within this is represented by the following expression:
1 1
R if ω  is A  and / or . . .ω  is A then y is Bi n m mn n
 (14)
Where ωm represents a system feature, y depicts the output variable and Amn
and Bn correspond to the fuzzy sets associated to feature m and output,
respectively.
Processor Load
Light Moderate Heavy
Load Status
Load
OverloadNot Overload
1
0
1.0 1 3 5 7
Figure 3. (a) Degree of truth representation (b) A linguistic variable, processor load
4. COMPARATIVE ANALYSIS
This section This section examine various characteristic of load balancing
policies. Genetic algorithms are applicable to a wide variety of application
[8]. It works better when we have to schedule a large number of jobs. The
sliding windows technique [4,7] is generally used to trigger the GA. Sliding
window consist a series of job for node assignment to schedule. The main
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 8
focused is about the size of sliding window and when these jobs have been
assigned to appropriate node, the update of window is take place.
Table 1. Comparative analysis of load balancing policies
Approach Factors to consideration Advantages
Genetic
Algorithm
1. Windows size and their
update.
2. String selection for search
node in search space.
3. Fitness function for
measure the performance of
string.
4. Population Size.
5. Processing overhead.
1. Minimum execution
time.
2. Minimize
Communication cost.
3. Maximum utilization of
node.
4. Maximum throughput
value.
5. Minimize makespan
value.
Fuzzy Logic
1. Interference Engine.
2. Decision Making
3. Load Assignment.
4. State Update Decision.
1. Better Performance and
throughput.
2. Response time is
significantly better.
Job
Replication
1. No. of copies of Job.
2. Communication between
Nodes.
3. Processing overhead.
1. Consistently perform
better when measure
statistic is less than
threshold value.
FCFS
1. Instantaneous decision.
2. Sequence of Job arrival.
1. Reduce the system
response time.
2. Shorter Makespan.
Table 1 shows the comparative analysis of some load balancing policies.
The measurement of GA is based on the quality of solution it produced after
several generations. The measurements of input variables of a fuzzy
controller must be properly combined with relevant fuzzy information rules
to make inferences regarding the system Load State. The job replication
scheme consist multiple copies of each job so it gives extra overhead to the
computing node. To make an instantaneous decision, the FCFS approach is
preferred. The primary focus of all the load balancing approaches is spread
the workload to each node in such a manner that, the makespan is
minimized and a well-balanced load among all the nodes in grid system
therefore the current workload in the system must be considered to schedule
the job to appropriate node.
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 9
5. CHALLENGES AND KEY ISSUE
5.1 Challenges in Load Balancing
There are various strategies have been developed for solving load balancing
problem but it is not yet solved completely. Data partitioning and load
balancing are weighty components of parallel computations. For static and
dynamic load balancing various strategies have been developed, such as
recursive bisection (RB) methods, space-filling curve (SFC) partitioning and
graph partitioning [20]. A computation grid system consists of various
components such as computing node and workstations, etc. There exist a
heterogeneity between the various factors of a node such hardware
architecture, physical memory, CPU speed and node capacity which affect
the processing result. The dynamic behavior, and node failure can decrease
the performance of grid, while the selection of resources (or node) for jobs
could also be a factor.
5.2 Key Issues in Load Balancing
Load balancing is very crucial issue for the efficient operation of
computational grid environments for sharing of heterogeneous resources,
hence affect quality of service and scheduling. In dynamic load balancing,
load sharing and task migration are some of the widely researched issues
[7]. In a networked environment, interoperability (common protocols) is the
central issue to be addressed. How to select efficient nodes is one of the
issues of further investigation. As Grid is a distributed system utilizing idle
nodes scattered in every region, the most critical issue pertaining to
distributed systems is how to integrate and apply every computer resource
(node) into a distributed system, so as to achieve the goals of enhancing
performance, resource sharing, extensibility, and increase availability [15].
In order to make optimal balancing and work distribution decisions in Grid
environment, a load balancer needs to take some or all of the following
information into consideration:
 The capacity on each node (CPU, memory, and disk space, etc.)
 Current workload of each node
 Required capacity for each task
 Network connectivity and delay
 The assignment of processes to processors
 The use of multiprogramming on individual processors
 The actual dispatching of a process.
The choice of parameter and state information should also be considered.
For various software engineering related issues, there are some software
toolkit exists to provide effective solution. The distribution of load among
the CN in an optimal way is not easy task, as it requires complete analysis
of available resources and job. A load balancing policy can either be static
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 10
or dynamic. The major concern in static load balancing policy is to
determine the execution time of the job, communication delays, and the
resources used by computing node. Since an accurate estimation is not
possible earlier in time, so emphasis can be done on to estimation of such
quantities closer to accurate values.
6. CONCLUSIONS
In this paper, we discussed few contemporary load balancing strategies
based on various approaches for computational grid environment. With the
rapid development of technology, grid computing have increasingly
becomes an attractive computing platform for a variety of applications. In a
computational grid environment, load balancing is the process of improving
the performance of system through re-distribution of load among the
computing nodes. When the newly created jobs arbitrary arrive into the
system, the node can become heavily loaded while other become either ideal
or lightly loaded, therefore the job assignment and load sharing must be
done carefully. The problem of load balancing is closely related to
scheduling and allocation of job to computing node. For efficient utilization
of grid resource and maximum node utilization, special scheduling policy is
needed. Load balancing methods will vary greatly between different grid
environment depending on the needs and the availability of computing node
to perform the task. There are various factors which affects the performance
of grid application such as load balancing, resource sharing, and resource
heterogeneity therefore it must be considered for making decision.
REFERENCES
[1] I. Foster, C. Kesselman, and S. Tuecke, The anatomy of the grid: Enabling scalable
virtual organizations, The International Journal of High Performance Computing
Applications, 15 (3) (2001) 200-222.
[2] Rajkumar Buyya, and Srikumar Venugopal, A Gentle Introduction to Grid Computing
and Technologies, Computer Socity of India, CSI Communication, July (2005).
[3] C. Gary Rommel, The Probability of Load Balancing Success in a Homogeneous
Network, IEEE transactions on Software Engineering, 17(9), Sept. (1991) 922-933.
[4] Yajun Li, Yuhang Yang, Maode Ma, and Liang Zhoy, A hybrid load balancing
strategy of sequential tasks for grid computing environments, Future Generation
Computer Systems, 25 (2009) 819-828.
[5] Rajkumar Buyya and Manzur Murshed, GridSim: A Toolkit for the Modeling and
Simulation of Distributed Resource Management and Scheduling for Grid Computing,
The Journal of Concurrency and Computation: Practice and Experience (CCPE),
Volume 14, Issue 13-15, Wiley Press, Nov.-Dec., (2002).
[6] Vandy Berten, Joel Goossens, and Emmanuel Jeannot, On the Distribution of
Sequential Jobs in Random Brokering for Heterogeneous Computational Grids, IEEE
Transections on Parallel and Distributed System 17 (2) (2006) 1-12.
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 11
[7] Albert Y. Zomaya, Yee-Hwei Teh, Observations on Using Genetic Algorithms for
Dynamic Load-Balancing, IEEE Transections on Parallel and Distributed System,
12(9), Sept. (2001) 899-911.
[8] Carlos Alberto Gonzalez Pico, Roger L. Wainwright, Dynamic Scheduling of
Computer Tasks Using Genetic Algorithms, Proc. of the First IEEE Conference on
Evolutionary Computation - IEEE World Congress on Computational Intelligence,
Orlando, Florida June, (1994) 829-833.
[9] Chulhye Park, Jon G. Kuhl, A Fuzzy-Based Distributed Load Balancing Algorithm for
Large Distributed Systems, IEEE (1995) 266-273.
[10]Kaveh Abani, Kiumi Akingbehh, Adnan Shaout, Fuzzy Decision Making for Load
Balancing in a Distributed System, IEEE, (1993) 500-502.
[11]Menno Dobber, Rob van der Mei, Ger Koole, Dynamic Load Balancing and Job
Replication in a Global-Scale Grid Environment: A Comparison, IEEE Transections
on Parallel and Distributed System, 20( 2), Feb. (2009) 207-218.
[12]Yu-Kwong Kwok, Lap-Sun Cheung, A new fuzzy-decision based load balancing
system for distributed object computing, Journal of Parallel and Distributed
Computing, 64 (2004) 238–253.
[13]Mika Rantonen, Tapio Frantti, Kauko Leiviska, Fuzzy expert system for load balancing
in symmetric multiprocessor systems, Expert Systems with Applications, 37 (2010)
8711–8720.
[14]Junwei Caoa, Daniel P. Spooner, Stephen A. Jarvis and Graham R. Nudd, Grid load
balancing using intelligent agents, Future Generation Computer Systems, 21 (2005).
[15]K.Q. Yan, S.C. Wang, C.P. Chang, J.S. Lin, A hybrid load balancing policy underlying
grid computing environment, Computer Standards & Interfaces 29 (2007) 161–173.
[16]Jun Wang, Jian-Wen Chen, Yong-Liang Wang, Di Zheng, Intelligent Load Balancing
Strategies for Complex Distributed Simulation Applications, 2009 International
Conference on Computational Intelligence and Security, 2009 (182-186).
[17]Kuo-Qin Yan, Shun-Sheng Wang, Shu-Ching Wang, Chiu-Ping Chang, Towards a
hybrid load balancing policy in grid computing system, Expert Systems with
Applications 36 (2009), 12054–12064.
[18]Brighten Godfrey, Karthik Lakshminarayanan, Sonesh Surana, Richard Karp, Ion
Stoica, Load Balancing in Dynamic Structured P2P Systems, IEEE INFOCOM (2004).
[19]Luis Miguel Campos, Isaac D. Scherson, Rate of change load balancing in distributed
and parallel systems, Parallel Computing 26 (2000), 1213-1230.
[20]Karen D. Devine, Erik G.Boman, Robert T. Heaphy, Bruce A. Hendrickson, James D.
Teresco, Jamal Faik, Joseph E. Flaherty, Luis G. Gervasio, New challenges in dynamic
load balancing, Applied Numerical Mathematics 52 (2005) 133–152.
[21]Satish Penmatsa, and Anthony T. Chronopoulos, Comparison of Price-based Static
and Dynamic Job Allocation Schemes for Grid Computing Systems, Eighth IEEE
International Symposium on Network Computing and Applications, (2009) 66-73.
[22]In Lee, Riyaz Sikora, and Michael J. Shaw, A Genetic Algorithm-Based Approach to
Flexible Flow-Line Scheduling with Variable Lot Sizes, IEEE Transactions On
Systems, Man, a Cybernetics-Part B: Cybernetics, 27(1), Feb. (1997).
[23]S.Salleh, and A.Y.Zomaya, Using Fuzzy Logic for Task Scheduling in Multiprocessor
Systems, Proc. 8th ISCA International Conference on Parallel and Distributed
Computing Systems, Orlando, Florida, (1995) 45-51.
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 1
Hackers Portfolio and its Impact on
Society
Dr. Adnan Omar & Terrance Sanchez, M.S.
6400 Press Drive
Southern University at New Orleans
ABSTRACT
Currently, a hacker is defined as a person using computers to explore a network to which he
or she did not belong. Hackers find new ways to harass people, defraud corporations, steal
information and maybe even destroy valuable information by infiltrating private and non-
private organizations. According to recent research, bad hackers make up only a small
minority of the hacker community. In today’s society, we depend on more technology than
ever and that increases the likelihood of hackers having more control over cyberspace.
Hackers work by collecting information on the intended target, figuring out the best plan of
attack and then exploiting vulnerabilities in the system. Programs such as Trojan horses and
Flame viruses are designed and used by hackers to get access to computer networks. This
paper describes how hacker behavior is aimed at information security and what measures
are being taken to combat them.
Keywords
Types of Hacker, Security, Technology, Cyberspace.
1. INTRODUCTION
Hacking is a very serious problem that can severely compromise your
computer. If your computer is connected to the Internet, you are vulnerable
to cyber-attacks from viruses and spyware. It is virtually impossible to stop
a determined and skilled hacker from breaching most home network
security measures commercially available [1]. The primary objective of
hacking is to gather information and documents that could compromise the
security of governments, corporations or other organizations and agencies.
In addition to focusing on diplomatic and governmental agencies around the
world, the hackers also attack individuals as well as groups.
The computer term “hacker” can refer to a good or bad reputation according
to the mass media. Hackers have developed new ways to use computers
since their invention, and create programs that no one else can, to utilize
their potential. Hackers are motivated by various reasons which may range
from bold ideas, lofty goals, great expectations or simple deviation from the
norm as well as the excitement of intrusion into a complicated computer
system. In the past, hacking has been used to hassle an intended victim, steal
information, or spread viruses. Not all hacking results from premeditated
malicious intent. Most hackers are interested in how computer networks
function and barriers between them and that knowledge is considered a
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 2
challenge to their intelligence. However, some use their knowledge to help
corporations and governments construct better security measures. Although
we have heard about mischievous hackers sabotaging computers, networks,
and spreading viruses, most of the time hackers are just driven by the
curiosity they have about how different systems and programs work.
Although malicious and intrusive methods may be representative of what
hackers do, many of the methods and tools used by them are constructive in
fixing glitches in software as well as focusing on the vulnerability of
computer technology. It is through exposure of these vulnerabilities that
new ideas and better security measures are created.
When someone hears the word "hacker" one might immediately conjure
images in the mind’s eye of a criminal; more specifically, a criminal sitting
at a computer typing away with a screen reading "Access Denied." That
image in mind, one has the mainstream image of a modern day hacker. In
today’s society, hacking is just as prevalent as it has been in years past.
Viruses are still coded every day, worms still crawl the internet, and Trojan
horses continue to allow back door access into computer systems [2].
Even within hacker society, the definitions range from socially very positive
to criminal. In [3], there are two basic principles hackers live by: first, is
that information sharing is a powerful good and that it is the ethical duty of
hackers to share their expertise by writing free software and facilitating
access to information and to computing resources whenever possible.
Second, is that system cracking for fun and exploitation is ethically OK as
long as the cracker commits no theft, vandalism or breach of confidentiality.
It differentiates between benign and malicious hackers based on whether
damage is performed, though in reality all hacking involves intrusion and a
disregard for the efforts, works and property of others.
This research has reviewed the literature on hackers and it identifies
countries, reasoning, and type of penalties that are most likely to be
involved in hacking activities. In addition, it will address the steps that are
needed to put in place in order to reduce hacking and the type of penalties.
2. LITERATURE REVIEW
Electronic information is a critical part of our culture. Yet no matter where
the technology has taken us, the fact remains that what happens in
cyberspace has tangible impacts on each of our lives. Therefore, it is as
important for us to be secure in cyberspace as it is in our physical world [4].
According to a report from McAfee based on a survey conducted globally
on more than 800 IT company CEO's in 2009, data hacking and related
cybercrimes have cost multinational companies one trillion U.S. dollars [5].
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 3
The media often presents hackers as having a thrilling reputation.
Adolescents who are lacking the social skills required to be accepted by
others may fantasize about their degree of technological skills, and move
online in search of those who profess to have technological skills the student
desires. A simple search using the term "hacker" with any search engine,
results in hundreds of links to illegal serial numbers, ways to download and
pirate commercial software, etc. Showing this information off to others may
result in the students being considered a "hacker" by their less
technologically savvy friends, further reinforcing antisocial behavior. In
some cases, individuals move on to programming and destruction of other
individuals programs through the writing of computer viruses and Trojan
horses; programs which include computer instructions to execute a hacker's
attack. If individuals can successfully enter computers via a network, they
may be able to impersonate an individual with high level security clearance
access to files, modifying or deleting them or introducing computer viruses
or Trojan horses. As hackers become more sophisticated, they may begin
using sniffers to steal large amounts of confidential information, become
involved in burglary of technical manuals, larceny or espionage [6].
The British government released evidence that foreign intelligence agencies,
possibly in China, Korea and some former Soviet states, were hacking
computers in the United Kingdom. "Economic espionage" was believed to
be one reason behind the attacks. Economic espionage involves attempting
to undermine the economic activity of other countries, sometimes by
passing on stolen industry and trade secrets to friendly or state-owned
companies. Key employees; those who have access to sensitive information
or government secrets, can be targeted through virus-laden e-mails, infected
CD-ROMS or memory sticks, or by hacking their computers. To respond to
these threats, the European Union, G8 and many other organizations have
set up cybercrime task forces. In the United States, some local law
enforcement organizations have electronic crime units and the FBI shares
information with these units through its InfraGard program [7].
Cyber security is becoming an important issue, as emphasized in an article
by Jacob Silverman titled “Could hackers devastate the U.S. economy?”
He discloses the fact that many media organizations and government
officials rank it just as grave a threat as terrorist attacks, nuclear
proliferation and global warming. With so many commercial, government
and private systems connected to the Internet, the concern seems warranted.
To add to the concern, consider that today's hackers are more organized and
powerful than ever. Many of them work in groups; and networks of black-
market sites exist where hackers exchange stolen information and illicit
programs. Credit-card data is sold in bulk by "carders" and phishing scams
are a growing concern. Malware -- viruses, Trojan horse programs and
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 4
worms -- generates more money than the entire computer security industry,
according to some experts. He further reveals that hackers are also
distributed all over the world, many in countries like Romania that have lots
of Internet connectivity and loose enforcement of laws [8].
In 2008 Security experts said Chinese hackers began targeting Western
journalists as part of an effort to identify and intimidate their sources and
contacts, and to anticipate stories that might damage the reputations of
Chinese leaders. In a December 2012 over the course of several
investigations it found evidence that Chinese hackers had stolen e-mails,
contacts and files from more than 30 journalists and executives at Western
news organizations, and had maintained a “short list” of journalists whose
accounts they repeatedly attack. Based on a forensic analysis, it appears the
hackers broke into New York Times computers on Sept. 13, when the
reporting for the Wen articles was nearing completion. They set up at least
three back doors into users’ machines that they used as a digital base camp.
From there they snooped around New York Times‟ systems for at least two
weeks before they identified the domain controller that contains user names
and hashed, or scrambled, passwords for every Times employee [9].
In 2009, dubbed, “Operation: Aurora” by security firm McAfee,
sophisticated hackers based in China breached the corporate networks of
Google, Yahoo! Juniper Networks, Adobe Systems, and dozens of other
prominent technology companies and tried to access their source codes.
China's hackers seemed narrowly focused on military technology and
telecommunications companies as early as 2000. In 2011 Wiley Rein, a
prominent Washington Law firm working on a trade case against China was
hacked, and the White House was targeted last year. The hackers also
breached the website of the Council on Foreign Relations and rigged it to
deliver malware to anyone who visited it. Hacking groups with ties to the
Chinese government have also aggressively targeted Western oil and gas
companies and their law firms and investment banks [10].
In 2011, U.S. computer security firm McAfee reported that hackers
operating from China stole sensitive information from Western oil
companies in the United States, Taiwan, Greece and Kazakhstan, beginning
in November 2009. Citizen Lab and the SecDev Group discovered
computers at embassies and government departments in 103 countries,
including the Dalai Lama's office and India, were compromised by an attack
originating from servers in China. They dub the network involved
"GhostNet". Google claims cyber-attacks from China have hit it and at least
20 other companies. Google shut down its China operations. A top-secret
memo by the Canadian Security Intelligence Service warns that cyber-
attacks on government, university and industry computers have been
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 5
growing "substantially. Quebec provincial police say they dismantled a
computer hacking network that targeted unprotected computers around the
world, including government computers [11].
In 2011, NASA reported it was the victim of 47 APT attacks, 13 of which
successfully compromised Agency computers. In one of the successful
attacks, intruders stole user credentials for more than 150 NASA employees
– credentials that could have been used to gain unauthorized access to
NASA systems. An ongoing investigation of another such attack at Jet
Propulsion Laboratories JPL involving Chinese-based Internet protocol (IP)
addresses has confirmed that the intruders gained full access to key JPL
systems and sensitive user accounts. With full system access the intruders
could: (1) modify, copy, or delete sensitive files; (2) add, modify, or delete
user accounts for mission-critical JPL systems; (3) upload hacking tools to
steal user credentials and compromise other NASA systems; and (4) modify
system logs to conceal their actions. In other words, the attackers had full
functional control over these networks [12].
NASA is a prestigious target for hackers because of its seat atop the United
States' broader technology incubation apparatus, and because of that
position it is also a strategic target for foreign state actors and
cybercriminals looking to steal information they can profit from. And while
the agency reportedly spends about a third of its $1.5 billion IT budget on
security, things aren’t looking so secure. Securing a huge bureaucracy like
NASA is difficult, no doubt. But according to Martin’s testimony, as of
February 2012 only one percent of NASA’s portable devices and laptops
were encrypted [12].
According to Bloomberg BusinessWeek, the executive order called for the
U.S. Department of Homeland Security to identify which critical
infrastructure is vulnerable to a cyber-attack that would be catastrophic to
the economy and public safety. According to Apple a week after Obama
issued the order, Apple’s employees computers were attacked by malicious
software after they visited a website aimed at iPhone developers. Shortly
afterward Microsoft announced that similar malware has infected some of
his company computers. According to trade groups representing tech
manufacturers and Web companies, the cables and fibers that information
travels over are more critical than the devices and programs their members
make, although Tech Companies argue other countries might take a cue
from the U.S. and set up their own cyber security guidelines. Multiple sets
of regulations might mean manufacturers and Web companies would have
to create different products and services for different countries, for further
increasing cost [13].
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 6
Security experts hired by the New York Times to detect and block the
computer attacks gathered digital evidence that Chinese hackers, using
methods that some consultants have associated with the Chinese military in
the past, breached The Times’ network. They broke into the e-mail accounts
of its Shanghai bureau chief, David Barboza, who wrote the reports on Mr.
Wen’s relatives, and Jim Yardley, The Times’ South Asia bureau chief in
India, who previously worked as bureau chief in Beijing. Security experts
found evidence that the hackers stole the corporate passwords for every
Times employee and used those to gain access to the personal computers of
53 employees, most of them outside New York Times’ newsroom [9].
For three straight years, a group of Chinese hackers waged a cyber-war
against a family-owned, eight-person software firm in California, according
to court records. It started when Solid Oak Inc. founder Brian Milburn
claims he discovered that China was stealing his company's parental
filtering software, CYBERsitter. The theft hurt their business and sales,
which was bad enough. But twelve days after he publicly accused Chinese
hackers, he says he was inundated by attempts to bring down his Santa
Barbara-based business. Hackers broke into the company's system, shut
down its email and web servers, spied on employees using their own
webcams and gained access to sensitive company files, according to court
records. Apple Inc. reported it was hacked by the same group that hit social-
networking monster Facebook in January 2013. The security breaches are
the latest in a string of high-profile attacks on companies including The
Wall Street Journal and New York Times. Cyber security firm Mandiant
also came out with a report in early 2013 that accused a secret Chinese
military unit in Shanghai of years of systematic cyber-espionage against
more than 140 U.S. companies. Adam Levin, co-founder and chairman of
Identity Theft 911, says that for most companies it's not a matter of if they
will have a breach but when Levin told FoxBusiness.com that no company
is ultimately immune to this [14].
Members of Congress have published proposals that could result in longer
prison sentences for hackers. The House Judiciary committee is looking to
expand the Computer Fraud and Abuse Act (CFAA), an anti-hacking bill
dating back to 1984. Under the new proposals, damaging a computer after
accessing it without authorization would carry a maximum 10-year prison
term, double the current punishment. "Trafficking" passwords would also
carry a 10-year penalty. Hacking and damaging a "critical infrastructure
computer" would become the most serious crime, with a maximum 30-year
sentence. That would cover any machine that plays a vital role in areas such
as power, transportation, and finance [15].
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 7
3.METHODOLOGY
Developing a psychological profile of a likely attacker is an attractive goal.
Because of variation among human motivations, and limitations in the
knowledge of psychology, such a profile may prove elusive [16]. There are
a number of recent and growing trends in the hacking activity landscape that
were observed by the Cybercrime division in the past decade dealing with
not only the state and local government aspects but with other national
governments across the world. Recently, cyber-attacks have no details given
to the attackers’ identity.
3.1 Data Gathering
In this research study, data was collected from several Department of Justice
(DOJ) Cybercrime press releases. However, the bulk of the data was
extracted from their department since 2009. DOJ generates reports from
cybercrime activity and people across the world. In the United States, more
than 35 million dollars in damage has been done to targeted companies.
Table 1 consists of 97 hackers listed by nationality, age, job status, reasons
for hacking, damage to company, money to judicial system, and punishment
from the DOJ for a period of 4 years. A shortlist of hackers is shown in
Table 1 as an example. Tables 2 through 4 were constructed from the data
collected from the aforementioned references.
Table 1. Computer Cybercrime Portfolio 2009-2013
Source: U.S. Department of Justice (2009-2012). Computer Crime and
Intellectual Property Section Press Releases [17].
National Age
Job
Status Reason for Hacking
Damage
to
Business
Money to
Judicial
Sys. Punish
Sweden 37 N/A Steal info N/A $650,000 Pending
Malaysia N/A N/A Bank fraud N/A N/A 10 Y
Romania N/A N/A Steal info N/A N/A 7 Y
Russia 55 N/A Steal info N/A $1,000,000 3 Y
America 46 N/A Personal gain N/A N/A 18 Y
America 36 N/A Destroy company data N/A N/A 10 Y
America 49 N/A Personal gain $100,000 $250,000 10 Y
America N/A Emp Steal info $5,000 N/A 40 Y
America 45 N/A Confidential info N/A $1,000,000 15 Y
America 22 N/A Confidential info N/A $350,000 21 Y
America 27 N/A Personal gain $9,481.03 $187,659 17 Y
America 28 N/A Confidential info N/A $500,000 5 Y/ 1 Y Pro
Russia 29 N/A N/A N/A $3.5 million
dollarsMoldova 29 N/A N/A N/A
America 25 N/A Steal info N/A 171.6 mil 2Y
20 Y
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 8
Table 2 represents the percentage of the number of hackers by nationality.
Table 2. Hacking by Nationality
Nationality % Nationality %
Unknown 30 Malaysian 2
Russian 3 American 34
Latvian 1 Estonian 11
Romanian 9 Venezuelan 1
Sweden 1 Moldova 1
Albanian 1 Dublin 1
Hungarian 1 Blaine 1
Table 3 indicates the percentage of the type of motivation behind hacking.
Table 3. Motivation behind Hacking
Reasoning %
Steal Information 34
Intentional Damage to
Companies 11
Bank fraud 25
Need employment 1
Personal gain 11
Steal Money 3
Commit Multiple Fraud 7
Steal Intellectual Property 5
Table 4 shows the percentage of the type of penalties applied to hackers by
the judicial system.
Table 4. Type of Penalty
Category %
Pending 42
Probation 3
Supervised release 2
Cyber warfare 15
Prison 41
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 9
3.2 Ways to Minimize Potential for Hacking
In order to minimize hacking, several techniques are required. The
following procedures need to be implemented to help limit the possibility of
hacking:
 It is quite essential that organizations proactively introduce
guidelines of standard use and outline the consequences for
inappropriate actions.
 People should be informed and have adequate knowledge of
hacking. They must be educated of certain commonalities and
characteristics connected with this activity, as well as the
significant penalties for hacking and the repercussions online
networking with other characters claiming to be skillful in
raiding others.
 Outside the business perspective, people need to be educated as
to not post any sensitive information on social networks such as
Facebook, Twitter, YouTube, etc.
 The organizations can use filters which can prohibit its
members from accessing unauthorized software serial numbers,
hacking-related materials such as newsgroups, chat-rooms and
hacking organizations.
 Organizational staff should monitor activities in the working
environment and be proactive when information is obtained
about hacking activities.
 There is a need for cooperation between private, public, as well
as governments to reduce hacking activities.
 Recognizing good hackers that report vulnerable security
weaknesses to companies.
 Lawmakers need to address the seriousness of cyber hacking by
establishing several special centers across the nation where they
can recruit the minds of our skilled youth as early as 15 years of
age and provide them the proper training, financial means, and
support them through college to those who have the passion and
commitment to continue in the field of cyber security.
 Global corporations between nations are needed to reduce
hacking.
In summary, people need to be aware of incidents regarding hacking, the
mentality associated with it, the consequences of various hacking actions
and possible consequences of interacting and forming online relationships
with anonymous individuals who claim to be proficient in invading others'
privacy. Many organizations have engaged in enabling employees to
collaborate with technology-oriented staffs who demonstrate several
physiognomies that can result in hacking activities.
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 10
4. FINDINGS
The hacking became more serious beyond the extent of individual/groups
and it is now at a government level between nations. From the data
collected, Tables 2-4 have been analyzed and illustrated as a graphical
representation shown in Figure 1-3.
Figure 1 illustrates the number of hacking by nationality. The highest
percentage comes from America (35%) and second to it is unknown (31%).
Thirdly, it is Estonian (12%).
Figure 1. Hacking by Nationality
Figure 2 represents the drive behind hacking; 35% would steal information,
26% is Bank Fraud, and 12% is intentional damage to companies.
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 11
Figure 2. Motivation behind Hacking
Figure 3 shows that 41% of their penalties are still pending which states that
their punishments have yet been decided by the courts and 40% are serving
a prison sentence. However, 14% are included in cyber warfare which
means that their punishment has not been published due to their crime
involving the government. Monitoring behavior and motivation of hackers
can help improve awareness of their danger and underscores the importance
of maintaining robust security, including up-to-date cyber security and anti-
virus software.
Figure 3. Types of Penalty
Figure 4 shows an example illustrating the seriousness of cyber-attacks in
today’s society. Chevron, the U.S. headquartered international oil and gas
company, has admitted that Stuxnet infected its IT network. Stuxnet is
known for destroying centrifuges used in Iran uranium enrichment program.
It was designed by a nation state with the intention of targeting Siemens
supervisory control and data acquisition systems (SCADA) which
controlled the industrial processes inside the enrichment facilities. Industrial
Safety and Security Source is reporting that the Stuxnet virus was planted
by an Iranian double agent via a memory stick. The Stuxnet malware is
widely believed to have caused damage to Iran nuclear program by breaking
the motors on 1,000 centrifuges at the Natanz uranium enrichment facility.
Kaspersky Lab reported that a new virus dubbed Gauss has attacked
computers in the Middle East spying on financial transactions, emails and
picking passwords to all kind of pages. The virus resembles Stuxnet and
Flame malware which was used to target Iran. Gauss has infected hundreds
of personal computers across the Middle East – most of them in Lebanon,
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 12
but also in Israel and Palestinian territories. Kaspersky Lab has classified
the virus, named after one of its major components, as “a cyber-espionage
toolkit” [18].
Figure 4. Flame Wars
Source: Cyber Security Helping secure one network at a time, 2013
Recent hacker IT attacks could be catastrophic for global business and even
cost lives. According to Alicia Buller [19], the three points to note in cyber
war are: Companies could become collateral victims in the war between
superpowers. Ideas from state nation cyber weapons could be repurposed
and copied by amateurs. Cyber criminals may start using weapons gleaned
from governments and nation states. Depending on the severity of the latest
hacks, establishing a framework to protect the country becomes top priority
of the Obama Administration as well as other countries around the world.
5. CONCLUSION
While computer hackers constitute a major security concern for individuals,
businesses, and governments across the globe, hacking and hackers’
underground culture remains secretive and difficult to identify for both
lawmakers and those vulnerable to hacker attacks. The mystery that
surrounds much of hacking prevents us from arriving at definitive solutions
to the security problem it poses; but our analysis provides at least tentative
insights for dealing with this problem. Hacking became a serious problem
affecting all levels of business activities from individuals, corporations, as
well as governmental agencies. The bulk of the hacking is initiated from
Americans about 35%. The type of penalty ranges from jail time to
monetary fines. Although there are laws against hacking, the courts cannot
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 13
persecute these crimes fast enough to deter people from committing them.
From the literature review, the maximum jail penalty is 62 years and fines
are $171.6 million dollars.
Results show that hackers continue to engage in illegal hacking activities
despite the perception of severe judicial punishment. A closer look shows
that hackers perceive a high utility value from hacking, little informal
sanctions, and a low likelihood of punishment. These observations
combined with their disengagement from society, partially explains the
hacker's illegal behavior. Whatever their reason, it is a learning experience
through which they hope to gain anonymity. Future effort to minimize
hacking will undoubtedly include a combination of aggressive legislation,
new technological solutions, and increased public awareness and education.
Existing laws should be reviewed and amended periodically to allow for
appropriate evolution. The international community for online security
should respond with collaborative efforts globally towards this terrorist act
of hacking in order to manage this predicament.
6. REFERENCES
[1] Callwood, K. (2013). “How to Reduce Hacking” eHow.com Retrieved from:
http://www.ehow.com/how_8663856_reduce-hacking.html#ixzz2Of7JZqMC
[2] Wooten, D. (2009). “Hacking: modern day threat or hobby? (pt. 1)”. Retrieved from:
http://www.examiner.com/x-13831-Computer-Security-Examiner~y2009m6d22-
Hacking-modern-day-threat-or-hobby-pt-1#
[3] Parker, D. (1998). “Fighting Computer Crime: A New Framework for Protecting
Information” Retrieved from: http://education.illinois.edu/wp/crime/hacking.htm
[4] Shoemaker, D. & Conklin A. (2012). “Cyber security: The Essential Body of
Knowledge 1st
edition” Cengage Learning.
[5] Loganathan, M. & Kirubakaran, E. (2011). “A Study on Cyber Crimes and protection”
IJCSI International Journal of Computer Science Issues, Vol. 8, Issue 5, No 1.
[6] Stone, D. (1999). “Computer Hacking”, University Laboratory High School,
Retrieved from: http://www.ed.uiuc.edu/wp/crime/hacking.htm
[7] Computer Weekly (2006). “Act on foreign spy risk, firms urged” Retrieved from:
http://www.computerweekly.com/articles/2006/12/01/220307/act-on-foreign-spy-risk
firms-urged.htm
[8] Silverman, J. (2007). "Could hackers devastate the
U.S.economy?” HowStuffWorks.com. Retrieved from:
http://computer.howstuffworks.com/die-hard-hacker.htm
[9] Perlroth, N. (2013). “Hacker in China Attacked the Times for last 4 months” The New
York Times. Retrieved from:
http://www.nytimes.com/2013/01/31/technology/chinese- hackers- infiltrate-new-york-
times-computers.html?pagewanted=all&_r=0
[10]Canter, D. (2013). “Fighting an Order to fight cybercrime” Bloomberg BusinessWeek.
March 11-17, 2013.
[11]New Orleans Business News (2011). “Hackers in China hit Western oil companies,
security firm reports” The Associated Press. Retrieved from:
http://www.nola.com/business/index.ssf/2011/02/hackers_in_china_hit_
western_o.html
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 14
[12]Dillow, C. (2012). “In the last year, hackers gained „Full Functional Control‟ of NASA
networks, stole the control codes for the is” POPSCI. Retrieved from:
http://www.popsci.com/technology/article/2012-03/hackers-gained-full-functional-
control-nasa-networks-stole-control-codes-iss-last-year
[13]Engleman, E. (2013).“Hacked? Who Ya Gonna Call?” Bloomberg Business Week.
February 11- February 17, 2013.
[14]Chakraborty, B. (2013). “Small firm hit by 3-year hacking campaign puts face on
growing cyber problem” Foxnews.com Retrieved from:
http://www.foxnews.com/politics/2013/02/22/small-businesses-big-targets-for-cyber-
snoops/#ixzz2Ngj7XMli
[15]Peters, J. (2013). “America's Awful Computer-Crime Law Might Be Getting a Whole
LotWorse” Retrieved from:
http://www.slate.com/blogs/crime/2013/03/25/computer_fraud_and_abuse_act_the_cfa
a_america_s_awful_computer_crime_law.html
[16]Stolfo, S. (2008) “Insider Attack and Cyber Security: Beyond the Hacker” Vol.39,
Springer.
[17]U.S. Department of Justice (2009-2012). Computer Crime and Intellectual Property
Section Press Releases. Retrieved from:
http://www.justice.gov/criminal/cybercrime/pr.html
[18]Hatcher, W. (2013). “Cyber Security helping secure one network at a time”
Information Systems Audit and Control Association – Greater New Orleans Chapter –
2013.
[19]Buller, A. (2013). “The Coming of Cyber War I” Retrieved from:
http://gulfbusiness.com/2013/03/the-coming-of-cyber-world-war-i/
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 1
Ontology Based Multi-Viewed
Approach for Requirements
Engineering
R. Subha
Assistant Professor
Sri Krishna College of Technology,
Kovaipudur, Coimbatore-641 042,
Tamil Nadu, India
S. Palaniswami
Principal
Government College of Engineering,
Bodinayakanur,
Tamil Nadu, India
ABSTRACT
Software requirement engineering is an important process in software development. When
considered software development as a whole, 75% of software failures are due to impaired
software requirements. The proposed technique involves a multi viewed approach
comprising of Controlled Natural language and ontologies that can be used for representing
the requirements. Ontology is an explicit information modelling method which can be used
to model applications and their interactions. Controlled natural languages are subsets of
natural languages, obtained by restricting the grammar and vocabulary in order to reduce or
eliminate ambiguity and complexity that enable reliable automatic semantic analysis of a
language. The ontologies are constructed based upon the semantic similarities between the
domain and requirement models. The CNL is developed by restricting the vocabulary based
on certain rules. The similarity between the two representations can be defined by a
program that extracts the extracts the objects and relationship between them. Tool based
verification of the similarities is performed. This approach is applicable in software
development areas and many official applications such as banking system, currency
conversion, weather reports, transport, and sports.
Keywords
Requirements Engineering , Ontology , Controlled Natural Language
1. INTRODUCTION
Software engineering (SE) is the engineering discipline through which
software is developed. Commonly the process involves finding out what the
client wants, composing this in a list of requirements, designing an
architecture capable of supporting all of the requirements, designing,
coding, testing and integrating the separate parts, testing the whole,
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 2
deploying and maintaining the software. Programming is only a small part
of software engineering.
Requirements engineering (RE) being the first phase of software
engineering deals with the process of discovering, eliciting, documenting
and maintaining the requirements for a particular computer-based system.
Computer systems are designed, and anything that is designed has an
intended purpose. If a computer system is unsatisfactory, it is because the
system was designed without an adequate understanding of its purpose, or
the purpose is deviated from the intended one. Both problems can be
mitigated by careful analysis of purpose throughout a system’s life.
Requirements Engineering provides a framework for understanding the
purpose of a system and the contexts in which it will be used. The
requirements engineering bridges the gap between an initial vague
recognition that there is some problem to which there is a computer
technology, and the task of building a system to address the problem.
Ontology formally represents knowledge as a set of concepts within
a domain, and the relationships between pairs of concepts[3]. It can be used
to model a domain and support reasoning about entities. An ontology
renders shared vocabulary and taxonomy which models a domain with the
definition of objects/concepts, as well as their properties and relations.
Ontologies are the structural frameworks for organizing information and are
used in artificial intelligence, the Semantic Web, systems
engineering, software engineering, informatics, library, enterprise
bookmarking, and information architecture as a form of knowledge
representation about the world or some part of it [5]. The creation of domain
ontologies is also fundamental to the definition and use of an enterprise
architecture framework. Model for describing the world that consists of a set
of types, properties, and relationship types. There is also generally a view
that the feature of the model in an ontology closely resembles the real world.
There are many problems associated with requirements engineering. The
nature of problems includes defining the system scope, problems of
understanding and problems of volatility. The major problems are sharing
equal understanding among the different communities involved in the
development of a given system, and problems in dealing with the volatile
nature of requirements. Problems of understanding during elicitation can
lead to requirements which are ambiguous, incomplete, inconsistent, and
even incorrect .If changes are not accommodated, the original requirements
set will become incomplete, inconsistent with the new situation, and
potentially unusable because they capture information that has since become
obsolete. The requirement traceability issue is also a major factor concerned
with the requirement engineering. These problems may lead to poor
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 3
requirements and the cancellation of system development, or else the
development of a system that is later judged unsatisfactory or unacceptable,
has high maintenance costs, or undergoes frequent changes. By improving
requirements elicitation, the requirements engineering process can be
improved, resulting in enhanced system requirements and potentially a
much better system. In order to overcome these issues, a model integrating
controlled natural language and ontology providing a multi-viewed
approach is proposed to represent requirements from different perspectives
of all the stakeholders and the development team.
2. RELATED WORK
2.1 A scenario-driven approach to trace dependency analysis
Egyed et al. proposed an approach to trace dependency analysis. Software
development artifacts such as model descriptions, diagrammatic languages,
abstract (formal) specifications, and source code are highly interrelated
where changes in some of them affect others [2]. Trace dependencies
characterize such relationships abstractly. The research area focused on an
automated approach to generating and validating trace dependencies. The
research addressed the severe problem that the absence of trace information
or the uncertainty of its correctness limits the usefulness of software models
during software development. This is considered to be an important issue
affecting requirements engineering. This approach also proposed a method
that automates what is normally a time consuming and costly activity due to
the quadratic explosion of potential trace dependencies between
development artifacts.
2.2 Issues in requirement elicitation
Christel M and Kang k, in their research paper titled “Issues in requirements
elicitation”, clearly listed all the issues that affect the requirement elicitation
phase of software development. According to their research, the requirement
elicitation phase suffers from issues dealing with the improper detailing of
scope of the system. The communication between the various people
involved in developing the system also is causing major problems, since
requirement elicitation highly involves with collection of information
related to the system. The next major issue listed deals with the volatile
nature of the requirements. The paper implies that if these problems are not
taken seriously, it might lead to a poor requirement and also the end result
may be a failure.
2.3 Communication problems in requirements engineering
Al-Rawas et al. explains about the problems of communication between
disparate communities involved in the requirements specification activities
[1]. The requirements engineering phase of software development projects is
characterized by the intensity and importance of communication activities.
During this phase, the various stakeholders must be able to communicate
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 4
their requirements to the analysts, and the analysts need to be able to
communicate the specifications they generate back to the stakeholders for
validation. The results of this study are discussed in terms of their relation to
three major communication barriers ineffectiveness of the current
communication channels, restrictions on expressiveness imposed by
notations, social and organizational barriers. The results confirm that
organizational and social issues have great influence on the effectiveness of
communication. They also show that in general, end-users find the notations
used by software practitioners to model their requirements difficult to
understand and validate.
2.4 Revisiting ontology-based requirements engineering in the age of
the semantic web systems
Dobson G, Sawyer P , in “Revisiting ontology-based requirements
engineering in the age of the semantic web”, propose usage of
dependability ontology compliant with the IFIP Working Group 10.4
taxonomy and discuss how this, and other ontologies, must interact in the
course of Dependability Requirements Engineering. In particular usage of
the links between the dependability ontology, ontology for requirements and
domain ontologies, identifying the advantages and difficulties involved are
discussed in detail. Ontology is generally based upon some logical
formalism, and has the benefits for requirements of explicitly modeling
domain knowledge in a machine interpretable way, e.g. allowing
requirements to be traced and checked for consistency by an inference
engine, and software specifications to be derived. With the emergence of the
semantic web, the interest in ontologies for Requirements Engineering is on
the increase. Lots of research has been concentrated upon re-interpreting
software engineering techniques for the semantic web. Usage of ontology is
proved to be highly beneficial for requirement engineering processes.
3. METHODOLOGY
In software development requirement refinement is an important process. It
has a tremendous impact on all its software development phases. Though a
lot of research is involved in the area of solving the various issues affecting
the requirement engineering, few issues remain unsolved. The common
issues that haunt the requirement elicitation phase include problems
concerned with areas of scope, volatility, communication, traceability [4].
Defining the scope of the system plays the major role in developing any new
system. Hence solving the scope issues is highly necessary. The
requirements of the customers are prone to changes throughout the
development of the system which is generally referred as the volatility issue.
Developing a system involves a wide class of people and hence
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 5
communication plays a major role. Any fault that arises in developing the
system as a result of mistaken communication is referred as communication
issues. Any issues that affect describing and following a requirement in both
forward and backward direction are referred as traceability issues. In order
to overcome these issues a system consisting of a multi-viewed approach is
proposed. The system integrates two views for representing the perspective
of different stakeholders. Ontologies and controlled natural languages are
used for this purpose. Thus, the proposed technique provides a way for
dealing with the various issues affecting requirement engineering.
In this paper , we propose a comprehensive approach for dealing with the
various issues affecting the requirement elicitation process. The requirement
document is analyzed and split in to individual tokens. The tokens are used
to extract only the required relevant terms involved in the document. The
tokens are used as a base for construction of the ontology. The requirement
document is next represented in terms of controlled natural language .The
controlled natural language representation also extracts only the key terms
involved. Both the representations show the relationship among the objects
that are extracted. The similarities between the two representations are
measured to verify the level of accuracy.
Figure 1. Overall process of integrating ontology and CNL
Figure 1 represents the process involved in designing the multi viewed
approach consisting of ontology and control natural language.
The ontological view of requirements document involves representing the
requirement document in terms of concepts and relations among them. The
process also involves tagging of the requirement in prior to the construction
of the ontology.
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 6
The CNL view of requirements involves representing the document through
restricted vocabulary. This representation enables to clearly establish the
relationships among the identified objects through a restricted vocabulary.
The mapping of the ontology representation and the CNL representation is
performed with the help of v-doc and GMO algorithm. The level of
similarity is noted.
3.1 Ontological view of requirement
The requirement document is represented in terms of ontology.
Ontology formally represents knowledge as a set of concepts within
a domain, and the relationships between pairs of concepts. Ontologies are
used to model a domain and support reasoning about entities. Ontology
provides shared vocabulary and taxonomy which models a domain with the
definition of objects/concepts, as well as their properties and relations.
Ontologies are the structural frameworks for organizing information and are
used in artificial intelligence, the Semantic Web, systems
engineering, software engineering, informatics, library, enterprise
bookmarking, and information architecture as a form of knowledge
representation about the world or some part of it. The creation of domain
ontologies is also fundamental to the definition and use of an enterprise
architecture framework. Model for describing the world that consists of a set
of types, properties, and relationship types. There is also generally a view
that the feature of the model in ontology closely resembles the real world.
The first step in representing the requirement document as ontology may
require tagging the parts of speech in the document. The tagging is
performed with the help of a tool called POS Tagger.
The POS Tagger does the process of marking up a word in a text (corpus) as
corresponding to a particular part of speech. Once the tagging is completed,
the ontology can be constructed. Formally it can be said that ontology is a
statement of a logical theory. Ontologies are often equated with taxonomic
hierarchies of classes without class definition and the subsumption relation.
Ontologies need not to be limited to these forms. Ontologies are also not
limited to conservative definitions, that is, definitions in the traditional logic
sense that only introduce terminology and do not add any knowledge about
the world. To specify a conceptualization, one needs to state axioms that do
constrain the possible interpretations for the defined terms. The construction
of ontology starts with identifying the concepts. Concept represents a set of
entities within a domain. Relations are constructed next and it specifies the
interaction among concepts involved.
Ontology of a program is obtained by defining a set of representational
terms. In such ontology, definitions associate the names of entities in the
universe of discourse (e.g. classes, relations, functions, or other objects)
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 7
with human readable text describing what the names mean, and formal
axioms that constraint the interpretation and well-formed use of these terms.
The ontologies can be designed on the basis of domain document. This
consists of 3 steps:
1. Tokenization is done by Stanford pos tagger which reads the text
document and assign the parts of speech to each word such as noun, verb,
adjectives, etc.(figure 2)
2. The isolation of individual tokens shows the number of nouns, verbs,
adjectives in the domain document.
3. Based on the Nouns, verbs and adjectives, the concepts involved are
identified.
4. Ontology can be created by using the protégé tool based on the concepts
identified. (figure 3)
Figure 2. Tokenization
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 8
Figure 3. Construction of ontology
3.2 CNL view of requirements
A sample requirement document is considered. The requirement document
will be in ordinary English which has no rules and semantics to make it
understandable by the system we convert that into controlled natural
language. CNL refers to controlled natural language that are subsets of
natural languages, obtained by restricting the grammar and vocabulary in
order to reduce or eliminate ambiguity and complexity that enable reliable
automatic semantic analysis of a language A tool called Fluent Editor is
used to provide a platform for constructing the required CNL.
We use Controlled English as the knowledge modeling language. Supported
by a suitable Editor, it prohibits one from entering any sentence that is
grammatically or morphologically incorrect and actively helps in correcting
any error. The Controlled English is a subset of Standard English with
restricted grammar and vocabulary; in order to reduce the ambiguity and
complexity inherent in full English. The relationships between the various
objects involved in the domain are established.
A taxonomy tree is also displayed representing the objects hierarchically. A
taxonomy tree is constructed with four important parts. They are “thing”
which shows “is a” relationship between concepts and relations. The
“nothing” shows concepts that cannot have any instances. The “relations”
that shows hierarchy of information about the relation between concepts
and/or the instances. And finally “attributes” that shows the hierarchy of
attributes. Modal expressions are constructed using must, should, can, must
not, should not, and cannot. Similarly complex expressions can also be
constructed. There are 4 steps:
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 9
1. The domain document is represented in terms of Controlled English
which is a subset of Standard English with restricted grammar and
vocabulary in order to reduce the ambiguity and complexity inherent
in full English.(Fig 4)
2. The CNL phrases for every corresponding OWL statements are
created using a CNL editor.
3. Modality is enabled to create modal expressions that are used to
express relationship in CNL.
4. Complex sentences as well as simple sentences can be created using
the CNL editor.
Figure 4. Construction of CNL
3.3 Mapping of ontology and CNL
The mapping of the CNL and ontology are performed, after both
representations are constructed completely. The objective of this module is
to measure the level of similarity that is established between the two forms
of representation. The obtained CNL is extracted as objects and
relationships. The obtained objects are written on to a separate file. The
objects obtained from ontology are kept on a separate file manually. The
mapping of the two representations are performed through a program as
well as verified by a tool. The program is used to extract the objects and the
relationship that exist between them. The first part of program deals the
extraction of the objects and relationship between the objects. The program
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 10
consists of pre defined relationships. The extracted objects and relationships
from the OWL file is compared with the pre defined relationships that are
already entered. After extraction, the mapping of the extracted data is
performed. If the objects and relationship match, a positive output is
obtained stating “ontology matching”. If the objects and relationships don’t
match, a similar output stating “ontology not matching” is obtained. The
mapping involves the usage of V-Doc algorithm and the GMO algorithm.
The v-doc constructs virtual documents for each entity in the ontologies and
use Vector Space Model to compute similarities between the virtual
documents. The GMO algorithm is a novel graph matching algorithm. The
mapping of the ontology representation and the CNL representation is
performed with the help of v-doc and GMO algorithm. The level of
similarity is noted. The steps are
1. Relationship and objects that exists in the ontological view of
representation is extracted.
2. Relationship and objects that exists in the CNL view of
representation is extracted.
3. The extracted relationships and objects are placed in individual
files.
4. A program is used to check the level of similarity between the
objects that are extracted.
5. Tool based verification is further performed.
Figure 5. Matching OWL files
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 11
Thus, the tool based verification of matching is shown if Figure 5. The
ontology1 column shows the list of objects in OWL file for ontology .The
ontology2 column shows the list of objects in OWL file for CNL. The
similarity column shows the level of similarity between the two OWL files.
4. CONCLUSION
As for as software development is concerned, requirement elicitation is an
important process. The existing system used single view approach, thus
failing to deal with the lot of issues affecting requirements engineering.
Therefore a technique is proposed to refine the requirements by integrating
ontology and controlled natural language, thus providing a multi viewed
approach. The ontological view is mapped with the controlled natural
language view to calculate the level of similarity. Thus, usage of a multi
viewed approach helps in resolving most of the issues affecting the
requirement elicitation process. The proposed process provides a simple and
useful Traceability scheme. Refining the requirements provides a lot of
advantages and reduces a lot of cost in building the system. The research on
the area of RE has grown fast in the last few years. In spite of this fact, there
are still open issues. In our work we initially identified such issues and
investigated the main existent initiatives that are addressing them. Further,
the work can be improvised by exploring the full potential of ontologies,
thus improving quality of the knowledge base.
5. REFERENCES
[1] Al-Rawas, A., Easterbrook, S. Communication problems in requirements engineering-
a field study.(1996)
[2] Egyed, A., A scenario-driven approach to trace dependency analysis. IEEE trans
software engineering., 29(2) (2003), 11632.
[3] Denny Vrandecic., York Sure. An approach to the automatic evaluation of ontologies.
Journal of Applied Ontology, 3, (1-2), (2008), seiten 41-62.
[4] Christel, M., Kang, K. Issues in requirement elicitation. IEEE trans software
engineering., 78(2) (2005), 156-198
[5] Dobson, G., Sawyer, P. Revisiting ontology-based requirements engineering in the age
of the semantic web. Dependable requirements engineering of computerised systems at
NPPs, (2006)
[6] Mellor, S. MDA distilled: principles of model driven Architecture. Addison-Wesley
Professional, (2004)
[7] http://www.protege.com.
[8] http://xobjects.seu.edu.cn/project/falcon/falcon.html
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 1
Modified Colonial Competitive
Algorithm: An Approach for
Graph Coloring Problem
Hojjat Emami
Computer Engineering Department, Islamic Azad University, Miyandoab Branch
Miyandoab, Iran
Parvaneh Hasanzadeh
Computer Engineering Department, Islamic Azad University, Miyandoab Branch
Miyandoab, Iran
ABSTRACT
This paper describes a modified version of colonial competitive algorithm and how it is
used to solve graph coloring problem (GCP). Colonial competitive algorithm (CCA) is a
meta-heuristic optimization and stochastic search technique that is inspired from socio-
political phenomenon of imperialistic competition. CCA has high convergence rate and in
optimization problems can reach to global optimum. Graph coloring problem is the process
of finding an optimal coloring for any given graph so that adjacent vertices have different
colors. Graph coloring problem is an optimization problem.The original CCA algorithm is
designed for continuous problems whereas graph coloring problem is a discrete problem.
So in this paper we applied some changes in the assimilation and revolution operators of the
original CCA algorithm and presented a modified CCA which is called MCCA. The
performance of the MCCA algorithm is evaluated on five well-known graph coloring
benchmarks. Simulation results demonstrate that MCCA is a feasible and capable
algorithm.
Keywords
Colonial competitive algorithm, graph coloring problem, modified colonial competitive
algorithm.
1. INTRODUCTION
Graph coloring is a special case of graph labeling. Coloring a graph involves
assigning colors for each vertex of graph, so that any two adjacent vertices
have different colors. One of the main challenges in the graph coloring
problem (GCP) is to find the least number of colors for which there is a
valid coloring of the vertices of the graph. Graph coloring problem provides
a useful test bed for representing many real world problems including time
scheduling, frequency assignment, register allocation, and circuit board
testing [1]. The graph coloring problem is a complex and NP-hard problem
[2]; therefore many methods have been presented for solving the graph
coloring problem. The most common and successful methods that are
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 2
introduced for solving graph coloring problem use a conflict minimizing
approach as its goals. i.e., given k colors, a coloring is sought which
minimizes the number of adjacent vertices bearing the same color.
Researchers used various methods for solving graph coloring problem that
some of them include meta-heuristic algorithms (such as genetic algorithm
[3], particle swarm optimization [4, 5], ant colony optimization [6, 7], and
differential evolution [8]), scatter search [9], variable space search [10],
learning automata [11], distributed algorithms [12], and some hybrid
algorithms [5, 13, 14]. In this paper, we used another meta-heuristic
algorithm ⎯colonial competitive algorithm [15] ⎯ to solve graph coloring
problem.
Colonial competitive algorithm (CCA) is an optimization and search
algorithm. This socio-politically algorithm is inspired from imperialistic
competition among imperialists and colonies. CCA is a population based
evolutionary algorithm and contains two main steps: the movement of the
colonies toward their relevant imperialists and the imperialistic competition.
CCA has been used in many engineering and optimization tasks. Original
CCA is inherently designed for continuous problems whereas graph
coloring problem is a discrete problem [15]. So in this paper, a modified
discrete version of CCA is proposed to deal with the solution of graph
coloring problem. The success of the new proposed method is shown by
evaluating its performance on the well-known graph coloring benchmarks.
This paper proceeds as follows. Section 2 describes the graph coloring
problem. Colonial competitive algorithm is explained in Section 3. Section
4 presents the proposed modified colonial competitive algorithm and how it
is used to solve graph coloring problem. Section 5 presents our empirical
results and Section 6 concludes the paper and gives an outlook of the future
works.
2. GRAPH COLORING PROBLEM (GCP)
Graph coloring is an NP-hard problem and is still a very hot research field
of topic. Graph coloring problem is a practical method of representing many
real world problems such as pattern matching, scheduling, frequency
assignment, register allocation, and circuit board testing [1].
In graph theory, graph coloring involves an assignment of labels to elements
of a graph subject to certain constraints. In other words, coloring a graph is
a way of coloring the vertices of graph so that adjacent vertices have
different colors. Generally this process called vertex coloring. There are
other forms of graph coloring including edge coloring or face coloring that
can be transformed into a vertex coloring problem. A coloring that uses K
colors is called a K-coloring. The smallest number of colors required to
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 3
color a graph G is called its chromatic number. A minimum coloring of a
graph is a coloring that uses as few different colors as possible.
Formally the graph coloring problem can be stated as follows: Given an
undirected graph G with a set of vertices V, and a set of edges E, (G=(V,E)),
a K-Coloring of G consists of assigning a color to each vertex of V such that
no two adjacent vertices share the same color. One of the most interesting
challenges in the graph coloring problem is to find a correctly coloring that
uses exactly the predefined chromatic number of graph [1, 16]. In other
words, in coloring process all vertices of graph must be colored with
minimal number of colors. Figure 1 shows the coloring process of a simple
graph. This graph has 4 vertices and 4 edges. The chromatic number of this
graph is 3.
(a) (b)
Figure 1. A simple example of graph coloring process.
(a) Graph G before coloring, (b) Graph G after coloring.
3. COLONIAL COMPETITIVE ALGORITHM (CCA)
Colonial competitive algorithm (CCA) was developed by Atashpaz-gargari
and et al., and has been applied in various optimization and engineering
tasks [15]. CCA is a global search and optimization meta-heuristic that is
inspired by the social-political competition. Like other evolutionary
algorithms, CCA begins its work with an initial population. In CCA agents
in the population are called countries. After computing the cost of these
countries by using a cost function, some of the best countries are selected to
be the imperialist states and the remaining countries form the colonies of the
mentioned imperialists. All colonies of the population are divided among
imperialists based on imperialist’s power. The power of countries is
conversely related to their cost. The imperialist together with their colonies
form some empires. After forming initial empires, the colonies in each
empire are start moving toward their relevant imperialist state. This process
is a simple simulation of assimilation policy that was pursued by some of
the imperialist countries. This movement is shown in Figure 2. In this
movement, a colony goes toward the imperialist by a random value which is
randomly distributed between 0 and β×d. Where d is the distance between
imperialist and the colony, β is a control parameter. θ and x are random
numbers with uniform distribution [15].
1
3
2
4
1
3
2
4
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 4
𝑥~𝑈(0, 𝛽 × 𝑑) (1)
𝜃~𝑈(−𝜑, 𝜑) (2)
In equation (2), 𝜑 is a random number with uniform distribution. In this
paper, 𝛽 and 𝜑 are set to 2 and 𝜋/4 (Rad) respectively.
All empires try to take the possession of colonies of other empires and
control them. The imperialistic competition gradually brings about an
increase in the power of powerful empires and a decrease in the power of
weaker empires. In the original CCA, the imperialistic competition is
modeled just by picking one of the weakest colonies of the weakest empire
and then making a competition among all other empires in order to possess
this colony.
Figure 2. Motion of a colony toward its relevant imperialist [15]
In CCA solution space is modeled as a search space. Each position in the
search space is a potential solution of the problem. Moving colonies toward
their relevant imperialists and imperialistic competition are the two
important operators of the CCA and causes the countries in the solution
space converge to a state that is the global optimum and satisfies the
problem constraints. CCA has high convergence rate and can often achieve
to global optimum. Figure 3 shows the pseudo code of the original CCA.
4. GRAPH COLORING USING MODIFIED COLONIAL
COMPETITIVE ALGORITHM
The original CCA is designed to solve continuous problems whereas graph
coloring problem is a discrete problem. Hence a discrete version of CCA is
needed for solving graph coloring problem. This section describes how
modified colonial competitive algorithm (MCCA) is used to solve graph
coloring problem. The goal of using MCCA to solve graph coloring
problem is to find reliable and optimal colorings for graph coloring problem
instances.
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 5
1. Initialize the empires.
2. Move the colonies toward their relevant imperialist (Assimilation).
3. Randomly change the position of some colonies (Revolution).
4. If there is a colony in an empire which has lower cost than the imperialist,
exchange the positions of that colony and the imperialist.
5. Unite the similar empires.
6. Compute the total cost of all empires.
7. Pick the weakest colony (colonies) from the weakest empires and give it
(them) to one of the empires (Imperialistic Competition).
8. Eliminate the powerless empires.
9. If termination conditions satisfied, stop, if not go to 2.
Figure 3. Pseudo code of the CCA [15]
At the beginning, a population of popN countries is generated. If the graph
coloring problem instance has n vertices then each country in the initial
population will consist of a random permutated list of the integers {1, 2, …,
n}. After forming the initial population, the countries have to be assessed
according to the cost function explained later. Some of the best countries
(countries with least cost value) are selected to be imperialist states and the
remaining form the colonies of the mentioned imperialists. Within the main
loop of the MCCA, imperialist in each empire, try to attract their colonies
toward themselves. Then imperialistic competition begins among empires.
During this competition process the weaker imperialists are collapsed
whereas powerful imperialists increase their power. The MCCA executes
for a fixed number of iterations, where iteration is defined as a cycle of
assimilation, revolution, uniting and competition stages. Following
subsections describe the attributes of the proposed MCCA method.
4.1 Forming Initial Population
The first step in the MCCA as any other population based algorithm, is to
create an initial population. This population consists of countries. Each
country consists of a permutated list of the integers and indicates a potential
solution to the problem. Each integer number in the country denotes a color
used for coloring the graph coloring problem instance. In fact if a graph
coloring problem instance has n vertices then a country will be a vector of
integer numbers with size 1×n.
Figure 4.a illustrates the process of creation of initial population using a
sample graph with 4 vertices and 4 edges. The chromatic number of this
graph is 3. Also Figure 4.b indicates a population of size 4 created for
solving the graph indicated in Figure 4.a. In the graph coloring problem, the
input is an undirected graph and the output is an optimal coloring (i.e. a
permutated list of colors assigned to the vertices of the graph).
International Journal of Computer Science and Business Informatics
IJCSBI.ORG
ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 6
Figure 4. Graph Coloring process (creating initial population)
4.2 Cost Function
A cost function is used to evaluate the cost of the countries in the
population. From optimization viewpoint, a country with lowest cost value
is preferable. Here the cost of a country is equal to the total number of color
conflicts in it. In other words if two vertices of the graph be adjacent and in
the coloring process have the same color then there is a conflict. A simple
criterion for cost function can be stated as follows:
,
,
1 1 ,
1 ( ) ( )
( ) ,
0 ( ) ( )
V V i j
i j
N N
i j
i j
i j i i j
C if Color n Color n
Cost Country C
C if Color n Color n  
 
      (3)
Where V
N is the total number of vertices, ,i jC is a counter variable that
keeps the number of conflicts, and ( )i
Color n indicates the color of the
vertex i.
4.3 Modified Assimilation Operator
In the original CCA assimilation operator was designed for continuous
problems whereas in the graph coloring problem we deal with a discrete
problem. So a modified discrete version of this operator is needed. The goal
of assimilation policy is that the colony countries are similar to their
relevant imperialists. In this paper this fact is modeled by conveying some
random portions of imperialist country to its colonies. Figure 5 shows
country
1 3 2 1 2
2country 2 2 1 1
3country 2 3 2 3
4country 1 2 2 3
1
3
2
4
1
1
1
3
2
3
2
2
2
1
1
2
3
3
1
4Vertice
s
Colors
a) Graph with 4 vertices
and 4 edges
b) Initial population
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013
Vol 3 No 1 - July 2013

More Related Content

What's hot

Bounded ant colony algorithm for task Allocation on a network of homogeneous ...
Bounded ant colony algorithm for task Allocation on a network of homogeneous ...Bounded ant colony algorithm for task Allocation on a network of homogeneous ...
Bounded ant colony algorithm for task Allocation on a network of homogeneous ...
ijcsit
 
A weighted-sum-technique-for-the-joint-optimization-of-performance-and-power-...
A weighted-sum-technique-for-the-joint-optimization-of-performance-and-power-...A weighted-sum-technique-for-the-joint-optimization-of-performance-and-power-...
A weighted-sum-technique-for-the-joint-optimization-of-performance-and-power-...
Cemal Ardil
 
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 (Paper) Task scheduling algorithm for multicore processor system for minimiz... (Paper) Task scheduling algorithm for multicore processor system for minimiz...
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
Naoki Shibata
 

What's hot (19)

International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
N03430990106
N03430990106N03430990106
N03430990106
 
DYNAMIC TASK PARTITIONING MODEL IN PARALLEL COMPUTING
DYNAMIC TASK PARTITIONING MODEL IN PARALLEL COMPUTINGDYNAMIC TASK PARTITIONING MODEL IN PARALLEL COMPUTING
DYNAMIC TASK PARTITIONING MODEL IN PARALLEL COMPUTING
 
Bounded ant colony algorithm for task Allocation on a network of homogeneous ...
Bounded ant colony algorithm for task Allocation on a network of homogeneous ...Bounded ant colony algorithm for task Allocation on a network of homogeneous ...
Bounded ant colony algorithm for task Allocation on a network of homogeneous ...
 
A novel load balancing model for overloaded cloud
A novel load balancing model for overloaded cloudA novel load balancing model for overloaded cloud
A novel load balancing model for overloaded cloud
 
Performance comparison of row per slave and rows set
Performance comparison of row per slave and rows setPerformance comparison of row per slave and rows set
Performance comparison of row per slave and rows set
 
Performance comparison of row per slave and rows set per slave method in pvm ...
Performance comparison of row per slave and rows set per slave method in pvm ...Performance comparison of row per slave and rows set per slave method in pvm ...
Performance comparison of row per slave and rows set per slave method in pvm ...
 
A weighted-sum-technique-for-the-joint-optimization-of-performance-and-power-...
A weighted-sum-technique-for-the-joint-optimization-of-performance-and-power-...A weighted-sum-technique-for-the-joint-optimization-of-performance-and-power-...
A weighted-sum-technique-for-the-joint-optimization-of-performance-and-power-...
 
M017419499
M017419499M017419499
M017419499
 
D0212326
D0212326D0212326
D0212326
 
TASK-DECOMPOSITION BASED ANOMALY DETECTION OF MASSIVE AND HIGH-VOLATILITY SES...
TASK-DECOMPOSITION BASED ANOMALY DETECTION OF MASSIVE AND HIGH-VOLATILITY SES...TASK-DECOMPOSITION BASED ANOMALY DETECTION OF MASSIVE AND HIGH-VOLATILITY SES...
TASK-DECOMPOSITION BASED ANOMALY DETECTION OF MASSIVE AND HIGH-VOLATILITY SES...
 
Scheduling Divisible Jobs to Optimize the Computation and Energy Costs
Scheduling Divisible Jobs to Optimize the Computation and Energy CostsScheduling Divisible Jobs to Optimize the Computation and Energy Costs
Scheduling Divisible Jobs to Optimize the Computation and Energy Costs
 
Task scheduling methodologies for high speed computing systems
Task scheduling methodologies for high speed computing systemsTask scheduling methodologies for high speed computing systems
Task scheduling methodologies for high speed computing systems
 
An enhanced adaptive scoring job scheduling algorithm with replication strate...
An enhanced adaptive scoring job scheduling algorithm with replication strate...An enhanced adaptive scoring job scheduling algorithm with replication strate...
An enhanced adaptive scoring job scheduling algorithm with replication strate...
 
IRJET- Latin Square Computation of Order-3 using Open CL
IRJET- Latin Square Computation of Order-3 using Open CLIRJET- Latin Square Computation of Order-3 using Open CL
IRJET- Latin Square Computation of Order-3 using Open CL
 
STUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTING
STUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTINGSTUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTING
STUDY THE EFFECT OF PARAMETERS TO LOAD BALANCING IN CLOUD COMPUTING
 
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 (Paper) Task scheduling algorithm for multicore processor system for minimiz... (Paper) Task scheduling algorithm for multicore processor system for minimiz...
(Paper) Task scheduling algorithm for multicore processor system for minimiz...
 
An Approach to Reduce Energy Consumption in Cloud data centers using Harmony ...
An Approach to Reduce Energy Consumption in Cloud data centers using Harmony ...An Approach to Reduce Energy Consumption in Cloud data centers using Harmony ...
An Approach to Reduce Energy Consumption in Cloud data centers using Harmony ...
 
A study of load distribution algorithms in distributed scheduling
A study of load distribution algorithms in distributed schedulingA study of load distribution algorithms in distributed scheduling
A study of load distribution algorithms in distributed scheduling
 

Similar to Vol 3 No 1 - July 2013

AN ENTROPIC OPTIMIZATION TECHNIQUE IN HETEROGENEOUS GRID COMPUTING USING BION...
AN ENTROPIC OPTIMIZATION TECHNIQUE IN HETEROGENEOUS GRID COMPUTING USING BION...AN ENTROPIC OPTIMIZATION TECHNIQUE IN HETEROGENEOUS GRID COMPUTING USING BION...
AN ENTROPIC OPTIMIZATION TECHNIQUE IN HETEROGENEOUS GRID COMPUTING USING BION...
ijcsit
 
Algorithm selection for sorting in embedded and mobile systems
Algorithm selection for sorting in embedded and mobile systemsAlgorithm selection for sorting in embedded and mobile systems
Algorithm selection for sorting in embedded and mobile systems
Jigisha Aryya
 

Similar to Vol 3 No 1 - July 2013 (20)

A Survey on Task Scheduling and Load Balanced Algorithms in Cloud Computing
A Survey on Task Scheduling and Load Balanced Algorithms in Cloud ComputingA Survey on Task Scheduling and Load Balanced Algorithms in Cloud Computing
A Survey on Task Scheduling and Load Balanced Algorithms in Cloud Computing
 
A Survey of Job Scheduling Algorithms Whit Hierarchical Structure to Load Ba...
A Survey of Job Scheduling Algorithms Whit  Hierarchical Structure to Load Ba...A Survey of Job Scheduling Algorithms Whit  Hierarchical Structure to Load Ba...
A Survey of Job Scheduling Algorithms Whit Hierarchical Structure to Load Ba...
 
Grid computing for load balancing strategies
Grid computing for load balancing strategiesGrid computing for load balancing strategies
Grid computing for load balancing strategies
 
CONFIGURABLE TASK MAPPING FOR MULTIPLE OBJECTIVES IN MACRO-PROGRAMMING OF WIR...
CONFIGURABLE TASK MAPPING FOR MULTIPLE OBJECTIVES IN MACRO-PROGRAMMING OF WIR...CONFIGURABLE TASK MAPPING FOR MULTIPLE OBJECTIVES IN MACRO-PROGRAMMING OF WIR...
CONFIGURABLE TASK MAPPING FOR MULTIPLE OBJECTIVES IN MACRO-PROGRAMMING OF WIR...
 
CONFIGURABLE TASK MAPPING FOR MULTIPLE OBJECTIVES IN MACRO-PROGRAMMING OF WIR...
CONFIGURABLE TASK MAPPING FOR MULTIPLE OBJECTIVES IN MACRO-PROGRAMMING OF WIR...CONFIGURABLE TASK MAPPING FOR MULTIPLE OBJECTIVES IN MACRO-PROGRAMMING OF WIR...
CONFIGURABLE TASK MAPPING FOR MULTIPLE OBJECTIVES IN MACRO-PROGRAMMING OF WIR...
 
AN ENTROPIC OPTIMIZATION TECHNIQUE IN HETEROGENEOUS GRID COMPUTING USING BION...
AN ENTROPIC OPTIMIZATION TECHNIQUE IN HETEROGENEOUS GRID COMPUTING USING BION...AN ENTROPIC OPTIMIZATION TECHNIQUE IN HETEROGENEOUS GRID COMPUTING USING BION...
AN ENTROPIC OPTIMIZATION TECHNIQUE IN HETEROGENEOUS GRID COMPUTING USING BION...
 
PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDM O...
PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDM O...PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDM O...
PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDM O...
 
2012an20
2012an202012an20
2012an20
 
Ie3514301434
Ie3514301434Ie3514301434
Ie3514301434
 
D04573033
D04573033D04573033
D04573033
 
Use of genetic algorithm for
Use of genetic algorithm forUse of genetic algorithm for
Use of genetic algorithm for
 
RSDC (Reliable Scheduling Distributed in Cloud Computing)
RSDC (Reliable Scheduling Distributed in Cloud Computing)RSDC (Reliable Scheduling Distributed in Cloud Computing)
RSDC (Reliable Scheduling Distributed in Cloud Computing)
 
A Prolific Scheme for Load Balancing Relying on Task Completion Time
A Prolific Scheme for Load Balancing Relying on Task Completion Time A Prolific Scheme for Load Balancing Relying on Task Completion Time
A Prolific Scheme for Load Balancing Relying on Task Completion Time
 
Vol 16 No 2 - July-December 2016
Vol 16 No 2 - July-December 2016Vol 16 No 2 - July-December 2016
Vol 16 No 2 - July-December 2016
 
PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDMOD...
PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDMOD...PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDMOD...
PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDMOD...
 
PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDMOD...
PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDMOD...PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDMOD...
PERFORMANCE FACTORS OF CLOUD COMPUTING DATA CENTERS USING [(M/G/1) : (∞/GDMOD...
 
Bragged Regression Tree Algorithm for Dynamic Distribution and Scheduling of ...
Bragged Regression Tree Algorithm for Dynamic Distribution and Scheduling of ...Bragged Regression Tree Algorithm for Dynamic Distribution and Scheduling of ...
Bragged Regression Tree Algorithm for Dynamic Distribution and Scheduling of ...
 
Cloak-Reduce Load Balancing Strategy for Mapreduce
Cloak-Reduce Load Balancing Strategy for MapreduceCloak-Reduce Load Balancing Strategy for Mapreduce
Cloak-Reduce Load Balancing Strategy for Mapreduce
 
CLOAK-REDUCE LOAD BALANCING STRATEGY FOR MAPREDUCE
CLOAK-REDUCE LOAD BALANCING STRATEGY FOR MAPREDUCECLOAK-REDUCE LOAD BALANCING STRATEGY FOR MAPREDUCE
CLOAK-REDUCE LOAD BALANCING STRATEGY FOR MAPREDUCE
 
Algorithm selection for sorting in embedded and mobile systems
Algorithm selection for sorting in embedded and mobile systemsAlgorithm selection for sorting in embedded and mobile systems
Algorithm selection for sorting in embedded and mobile systems
 

More from ijcsbi

Vol 14 No 2 - September 2014
Vol 14 No 2 - September 2014Vol 14 No 2 - September 2014
Vol 14 No 2 - September 2014
ijcsbi
 
Vol 14 No 1 - July 2014
Vol 14 No 1 - July 2014Vol 14 No 1 - July 2014
Vol 14 No 1 - July 2014
ijcsbi
 
Vol 13 No 1 - May 2014
Vol 13 No 1 - May 2014Vol 13 No 1 - May 2014
Vol 13 No 1 - May 2014
ijcsbi
 
Vol 12 No 1 - April 2014
Vol 12 No 1 - April 2014Vol 12 No 1 - April 2014
Vol 12 No 1 - April 2014
ijcsbi
 
Vol 9 No 1 - January 2014
Vol 9 No 1 - January 2014Vol 9 No 1 - January 2014
Vol 9 No 1 - January 2014
ijcsbi
 
Vol 6 No 1 - October 2013
Vol 6 No 1 - October 2013Vol 6 No 1 - October 2013
Vol 6 No 1 - October 2013
ijcsbi
 

More from ijcsbi (20)

Vol 17 No 2 - July-December 2017
Vol 17 No 2 - July-December 2017Vol 17 No 2 - July-December 2017
Vol 17 No 2 - July-December 2017
 
Vol 17 No 1 - January June 2017
Vol 17 No 1 - January June 2017Vol 17 No 1 - January June 2017
Vol 17 No 1 - January June 2017
 
Vol 16 No 1 - January-June 2016
Vol 16 No 1 - January-June 2016Vol 16 No 1 - January-June 2016
Vol 16 No 1 - January-June 2016
 
Vol 15 No 6 - November 2015
Vol 15 No 6 - November 2015Vol 15 No 6 - November 2015
Vol 15 No 6 - November 2015
 
Vol 15 No 5 - September 2015
Vol 15 No 5 - September 2015Vol 15 No 5 - September 2015
Vol 15 No 5 - September 2015
 
Vol 15 No 4 - July 2015
Vol 15 No 4 - July 2015Vol 15 No 4 - July 2015
Vol 15 No 4 - July 2015
 
Vol 15 No 3 - May 2015
Vol 15 No 3 - May 2015Vol 15 No 3 - May 2015
Vol 15 No 3 - May 2015
 
Vol 15 No 2 - March 2015
Vol 15 No 2 - March 2015Vol 15 No 2 - March 2015
Vol 15 No 2 - March 2015
 
Vol 15 No 1 - January 2015
Vol 15 No 1 - January 2015Vol 15 No 1 - January 2015
Vol 15 No 1 - January 2015
 
Vol 14 No 3 - November 2014
Vol 14 No 3 - November 2014Vol 14 No 3 - November 2014
Vol 14 No 3 - November 2014
 
Vol 14 No 2 - September 2014
Vol 14 No 2 - September 2014Vol 14 No 2 - September 2014
Vol 14 No 2 - September 2014
 
Vol 14 No 1 - July 2014
Vol 14 No 1 - July 2014Vol 14 No 1 - July 2014
Vol 14 No 1 - July 2014
 
Vol 13 No 1 - May 2014
Vol 13 No 1 - May 2014Vol 13 No 1 - May 2014
Vol 13 No 1 - May 2014
 
Vol 12 No 1 - April 2014
Vol 12 No 1 - April 2014Vol 12 No 1 - April 2014
Vol 12 No 1 - April 2014
 
Vol 11 No 1 - March 2014
Vol 11 No 1 - March 2014Vol 11 No 1 - March 2014
Vol 11 No 1 - March 2014
 
Vol 10 No 1 - February 2014
Vol 10 No 1 - February 2014Vol 10 No 1 - February 2014
Vol 10 No 1 - February 2014
 
Vol 9 No 1 - January 2014
Vol 9 No 1 - January 2014Vol 9 No 1 - January 2014
Vol 9 No 1 - January 2014
 
Vol 8 No 1 - December 2013
Vol 8 No 1 - December 2013Vol 8 No 1 - December 2013
Vol 8 No 1 - December 2013
 
Vol 7 No 1 - November 2013
Vol 7 No 1 - November 2013Vol 7 No 1 - November 2013
Vol 7 No 1 - November 2013
 
Vol 6 No 1 - October 2013
Vol 6 No 1 - October 2013Vol 6 No 1 - October 2013
Vol 6 No 1 - October 2013
 

Recently uploaded

Industrial Training Report- AKTU Industrial Training Report
Industrial Training Report- AKTU Industrial Training ReportIndustrial Training Report- AKTU Industrial Training Report
Industrial Training Report- AKTU Industrial Training Report
Avinash Rai
 

Recently uploaded (20)

Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
 
Sectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdfSectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdf
 
Basic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumersBasic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumers
 
Benefits and Challenges of Using Open Educational Resources
Benefits and Challenges of Using Open Educational ResourcesBenefits and Challenges of Using Open Educational Resources
Benefits and Challenges of Using Open Educational Resources
 
Introduction to Quality Improvement Essentials
Introduction to Quality Improvement EssentialsIntroduction to Quality Improvement Essentials
Introduction to Quality Improvement Essentials
 
Research Methods in Psychology | Cambridge AS Level | Cambridge Assessment In...
Research Methods in Psychology | Cambridge AS Level | Cambridge Assessment In...Research Methods in Psychology | Cambridge AS Level | Cambridge Assessment In...
Research Methods in Psychology | Cambridge AS Level | Cambridge Assessment In...
 
Operations Management - Book1.p - Dr. Abdulfatah A. Salem
Operations Management - Book1.p  - Dr. Abdulfatah A. SalemOperations Management - Book1.p  - Dr. Abdulfatah A. Salem
Operations Management - Book1.p - Dr. Abdulfatah A. Salem
 
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General QuizPragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
Pragya Champions Chalice 2024 Prelims & Finals Q/A set, General Quiz
 
The impact of social media on mental health and well-being has been a topic o...
The impact of social media on mental health and well-being has been a topic o...The impact of social media on mental health and well-being has been a topic o...
The impact of social media on mental health and well-being has been a topic o...
 
Basic Civil Engineering Notes of Chapter-6, Topic- Ecosystem, Biodiversity G...
Basic Civil Engineering Notes of Chapter-6,  Topic- Ecosystem, Biodiversity G...Basic Civil Engineering Notes of Chapter-6,  Topic- Ecosystem, Biodiversity G...
Basic Civil Engineering Notes of Chapter-6, Topic- Ecosystem, Biodiversity G...
 
Industrial Training Report- AKTU Industrial Training Report
Industrial Training Report- AKTU Industrial Training ReportIndustrial Training Report- AKTU Industrial Training Report
Industrial Training Report- AKTU Industrial Training Report
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdfDanh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
Danh sách HSG Bộ môn cấp trường - Cấp THPT.pdf
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve Thomason
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
 
How to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS ModuleHow to Split Bills in the Odoo 17 POS Module
How to Split Bills in the Odoo 17 POS Module
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI BUỔI 2) - TIẾNG ANH 8 GLOBAL SUCCESS (2 CỘT) N...
 
slides CapTechTalks Webinar May 2024 Alexander Perry.pptx
slides CapTechTalks Webinar May 2024 Alexander Perry.pptxslides CapTechTalks Webinar May 2024 Alexander Perry.pptx
slides CapTechTalks Webinar May 2024 Alexander Perry.pptx
 
Keeping Your Information Safe with Centralized Security Services
Keeping Your Information Safe with Centralized Security ServicesKeeping Your Information Safe with Centralized Security Services
Keeping Your Information Safe with Centralized Security Services
 
Jose-Rizal-and-Philippine-Nationalism-National-Symbol-2.pptx
Jose-Rizal-and-Philippine-Nationalism-National-Symbol-2.pptxJose-Rizal-and-Philippine-Nationalism-National-Symbol-2.pptx
Jose-Rizal-and-Philippine-Nationalism-National-Symbol-2.pptx
 

Vol 3 No 1 - July 2013

  • 1. ISSN: 1694-2507 (Print) ISSN: 1694-2108 (Online) International Journal of Computer Science and Business Informatics (IJCSBI.ORG) VOL 3, NO 1 JULY 2013
  • 2. Table of Contents VOL 3, NO 1 JULY 2013 Comparative Analysis of Job Scheduling for Grid Environment ............................................................1 Neeraj Pandey, Ashish Arya and Nitin Kumar Agrawal Hackers Portfolio and its Impact on Society ........................................................................................1 Dr. Adnan Omar and Terrance Sanchez, M.S. Ontology Based Multi-Viewed Approach for Requirements Engineering..............................................1 R. Subha and S. Palaniswami Modified Colonial Competitive Algorithm: An Approach for Graph Coloring Problem ..........................1 Hojjat Emami and Parvaneh Hasanzadeh Security and Privacy in E-Passport Scheme using Authentication Protocols and Multiple Biometrics Technology........................................................................................................................................1 V. K. Narendira Kumar and B. Srinivasan Comparative Study of WLAN, WPAN, WiMAX Technologies ................................................................1 Prof. Mangesh M. Ghonge and Prof. Suraj G. Gupta A New Method for Web Development using Search Engine Optimization............................................1 Chutisant Kerdvibulvech and Kittidech Impaiboon A New Design to Improve the Security Aspects of RSA Cryptosystem ..................................................1 Sushma Pradhan and Birendra Kumar Sharma A Hybrid Model of Multimodal Approach for Multiple Biometrics Recognition ...................................1 P. Prabhusundhar, V.K. Narendira Kumar and B. Srinivasan IJCSBI.ORG
  • 3. CBR Based Performance Analysis of OLSR Routing Protocol in MANETs ...............................................1 Jogendra Kumar
  • 4. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 1 Comparative Analysis of Job Scheduling for Grid Environment Neeraj Pandey Department of Computer Science & Engineering G. B. Pant Engineering College Ghurdauri Uttarakhand, India. Ashish Arya Department of Computer Science & Engineering G. B. Pant Engineering College Ghurdauri Uttarakhand, India Nitin Kumar Agrawal Department of Computer Science & Engineering G. B. Pant Engineering College Ghurdauri Uttarakhand, India ABSTRACT Grid computing is a continuous growing technology that alleviates the executions of large- scale resource intensive applications on geographically distributed computing resources. For a computational grid environment, there are number of scheduling policies available to address the scheduling and load balancing problem. Scheduling techniques applied in grid systems are primarily based on the concept of queuing systems, and deals with the allocation of job to computing node. The scheduler, that schedules the incoming job can be based on global vs. local i.e. what information will be used to make a load balancing decision, centralized vs. de-centralized i.e. where load balancing decisions are made, and static vs. dynamic i.e. when the distribution of load is made. The primary objective of all load balancing algorithm is minimization of the makespan value, maximum load balanced and to gain more desirable performance. In this paper, we present the various load balancing strategies of job scheduling for grid computing environment. We also analyze the efficiency and limitations of the various approaches Keywords Computing, Load Balancing, Scheduling, Genetic Algorithm, Fuzzy logic, Job Replication. 1. INTRODUCTION In the last several years grid computing has emerged as an weighty field, distinguished from conventional distributed computing by its focus on large- scale resource sharing, innovative applications, and in some cases, high- performance orientation [1]. These enable sharing, selection and aggregation of suitable computational and data resources for solving large-scale data intensive problems in science, engineering, and commerce [5]. A grid computing environment comprises combination of various homogeneous and heterogeneous resources such as computing nodes, and workstations
  • 5. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 2 which are virtually aggregated to serve as a unified computing resource. Grid middleware provide users with seamless computing ability and uniform access to resources in the heterogeneous grid environment. In order to provide user with a seamless computing environment, the Grid middleware system need to solve several challenges originating from the inherent features of the grid [2]. In distributed systems, every node has different processing speed and system resources, so in order to enhance the utilization of each node and shorten the consumption of time, “Load Balancing” will play a critical role [15]. The performance of load balancing algorithms is strongly related to the number of computing node. Since each computing node has its own inimitable computing capabilities and the pattern of the job arrival to the computing node is imbalanced, thus the grid system may be overloaded. The main objective of load balancing is improved the performance of grid system through its distribution of load among the computing nodes, and minimize the execution time of job. In general, load-balancing algorithms can be categorized as centralized or decentralized in terms of where the load balancing decisions are made. A centralized load balancing approach can function either based on averages scheme or instantaneous scheme according to the type of information on which the load balancing decisions are made [4]. The rest of paper is organized into 6 sections. Section 2 presents the overview of the system model including the grid and mathematical model with load balancing architecture Section. The load balancing approaches for grid system are presented in Section 3. The analysis and comparisons of some grid load balancing algorithms are described in section 4. Section 5 presents some challenges and key issues related to load balancing And finally, the conclusion is given in section 6. 2. SYSTEM MODEL 2.1 Grid Model The grid under study consist a central resource management unit (RMU), to which every computing node (CN) connects and grid clients send their job to RMU for further processing. The RMU is responsible for scheduling jobs among CN. The role of dispatcher is the job management, including maintenance of the load balancing, monitoring node status, node selection, execution, and assignment of jobs for each node. An agent provides a simple and uniform abstraction of the functions in the grid management. The CNs in the grid can be either homogeneous or heterogeneous and a queue is associated with every computing node. The arrived jobs will be placed in a job queue in the RMU from which they are assigned to CNs. The grid agent monitors the waiting job. Upon arrival, jobs must be assigned
  • 6. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 3 either to exactly one CN for processing immediately by the instantaneous scheduling or wait to be scheduled by the averages-based scheme [4]. In a Grid system, the composition of nodes is dynamic, every node is likely to enter a busy state at any time and thus lower its performance, so in selecting nodes, all factors should be considered. At the global grid level, each agent is a representative of a grid resource and acts as a service provider of high performance computing power [14]. 2.2 Mathematical Model A computational grid system model [21] consisting p set of the CNs, is shown in figure 1. It consists of Ni computing nodes (CNs) such that: i 1 2 3 n 1 n N { (N ,N ,N , ................ ,N ,N ), | N| n }   (1) The nodes are connected to each other via a communication network. The nodes of grid system possibly could be either an individual machine or a cluster. The nature of the node is combination of both homogeneous and heterogeneous, and modeled as M/M/1 queuing system. The inter arrival time and service time of the system follows exponentially distributed. The notations and assumptions used are as follows:  ∅i : External job arrival rate at node i.  μi : Mean service rate of node i.  𝜆 : Total traffic through the network. A job arriving at node i may be either processed at node i or transferred to another node j through the communication network for computation. The performance of load balancing policies are closely related to the number of node involves in a computational grid system. Figure 1. Grid System Model  Φ : Total external job arrival rate of the system and given as:
  • 7. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 4 1 Φ    n i i   (2)  ri : Mean service time of a job at node i (i.e. the average time to service (process) a job at node i).  βi : Mean job processing rate (load) at node i (i.e. the average number of jobs processed at node i per unit interval of time). This is the load for node i assigned by the job allocation scheme.  t : Mean communication time for sending or/and receiving a job from one node to another node.  ρ : Utilization of the communication network and given as: *t  (3) 3. GRID LOAD BALANCING APPROACH In this section, four algorithms are considered for grid load balancing. A grid is a huge collection of multiple grid resources (local or global) that are distributed geographically in a wide area. Load balancing is an important system function destined to distribute the workload among available computing nodes to improve throughput and/or execution times of parallel computer programs either uniform or non-uniformly [19]. There are various load balancing algorithms are projected in past several years. Various approaches such as fuzzy logic, genetic algorithm, and job replication are used to implement load balancing algorithms. 3.1 FCFS Approach The FCFS algorithm [4,14] is proved to be efficient under some conditions. Consider a grid environment G with n CNs as given in equation 1, where each CNs Ni has its own capability to process the job. Let m be the total number of job J, which is considered to be run on G. 1 2 3 1 J {J , J ,J , ................., J , J }i m m  (4) The arrival time of each job Jj is tj and execution time is txj. Each job has two scheduled attributes: a start time and an end time denoted by ts, te, respectively. Upon arrival, jobs are allocated to a certain CN Nx ∈ N by the central resource management unit using first-come-first-served algorithm. The function of the agent is to find the earliest possible time for each job to complete, according to the sequence of the job arrivals. A job probably allocated to any of the CN. So, the function of FCFS to consider all these possibilities and identify which CN will finish the job earliest. Therefore,
  • 8. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 5 ( )j jtx min tx (5) The completion time of jobs is always equal to the earliest possible start time plus the execution time, which is described as: j j jtc ts tx  (6) The earliest possible start time for Job Jj on a CN is the latest free time of the chosen CN if there are still jobs running on it. if there is no job running on the chosen CN ahead of job Jj's arrival. Jj can be executed on this CN immediately.   { , , , ( ) ( ), }j j p ts max t max te p P p P j p j    (7) 3.2 Job Replication Approach Menno Dobber et al. [11] analyze and compare the effectiveness of the dynamic load balancing and job replication approach. The two main techniques that are most suitable with the dynamic nature of the grid are Dynamic Load Balancing (DLB) and job replication (JR) [11]. Consider a grid system P with n computing node; a set J of jobs Ji (as given in equation 1, and 8) is considered to be run on P. As the name implies a JR scheme creates several replica of an individual job and schedule them to run into different nodes. The node that finish the job first, send a message to other node involve in a grid system to finish the execution of current job and start the execution of next job available in the queue. Figure 2. Job Replication (2JR) Scheme A m-JR scheme creates m-1 precise copies of each job and these jobs are considered to be run on P. The same data set and the parameters are provided to the two copies of a job, to perform exactly the same computation so the calculations are completely the same. The JR approach consists of I iteration and one iteration takes total R-steps. N copies of all jobs have been spread out to P. As soon as the computing node finished one of the copies of the job, it sends a message to other computing nodes to kill
  • 9. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 6 the current job execution and start the processing of the next job. A 2-JR scheme is show in fig. 2, consisting 4 CN and 4 jobs. Firstly 2 copies of each job each job is created after then each job with its copy are distributed to n =2 CN. In figure 3, one copy (A2) of job A1 is created and then distributed to CN1 and CN2. CN1 finished job A1 first, so it send a finalize message “fin” to CN2. Sending a message between CN take some network delay, therefore scheduling of next job by a CN can takes some time. Duration of a specific job is defined as: Job-Time = min {all its job time} + possible send time (8) 3.3 Genetic algorithm Based Approach Genetic algorithms (GA) [4, 7, 8, 22] are increasingly popular for solving optimization, search and machine learning problems. It is basically a well- known and robust search heuristics. It search optimal solution from entire search space In grid environment scheduling is a type of be NP complete problem, i.e. there is no known polynomial time algorithm to optimally solve this problem. The main objective to use GA for load balancing is to achieve the minimum of makespan (the latest completion time among all the jobs processed in CN), maximum node utilization and a well-balanced load across all the CNs. Genetic algorithms are well suited to solving scheduling problems, because unlike heuristic methods GA operate on a population of solutions rather than a single solution. A combination of intelligent agents and multi-agent approaches is applied to both local grid resource scheduling and global grid load balancing. GA is basically used to generate solutions related to optimization problems using various techniques such as selection, mutation, and crossover. Let P be a set, then the cost function CF, is given as: : P IRCF  (9) GA start with an initial set of random solutions called population. Each individual in a population is called a chromosome, represents a solution to the problem. The evaluation of chromosomes is done through generations. During each generation, the chromosomes are evaluated, using some fitness function. For creation of the next generation, new chromosomes, called offspring, are formed. The offspring is created by either using a crossover operator or using a mutation operator. The new generation is formed by selecting the individual using fitness values. After several generations, best chromosome is chooses, which represents the optimum or suboptimal solution to the problem [4]. The GA concentrates on an overall performance over a list of jobs and aims at a more desirable load balance across all the nodes in a computational grid.
  • 10. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 7 3.4 Fuzzy Based Approach This section introduces the fuzzy method used in the fuzzy load balancing algorithm. Fuzzy logic [9, 10, 12, 13, 23] deals with reasoning that is approximate rather than fixed and precise. It is a superset of conventional Boolean logic that has been extended to handle the concept of partial truth- values between “completely-truth”, and “completely-false”. In a more extensive sense, fuzzy logic is associated with the concept of fuzzy sets. Terms in the fuzzy set are given linguistic variables. Using fuzzy logic, one can specify the degrees of overload or otherwise with linguistic labels such as lightly loaded, normal, overloaded, heavily overloaded etc.. The fig 3(a) Show the use of fuzzy logic to represent degree of truth. The fuzzy expert system makes scheduling decisions based on a fuzzy logic. As shown in fig 3(b), if processor load is regarded as a linguistic variable, it may have the following terms as its values: light, moderate, and heavy. If „light‟ is interpreted as a load below about one job, „moderate‟ as a load between about 3 and 5 jobs and „heavy„ as a load above about 7 jobs, these terms may be described as fuzzy sets, where p represents the grade of membership [9]. A given fuzzy rule Ri consists of two differentiated parts, namely, antecedent and consequent parts, related to fuzzy concepts [12]. Rules activation conditions are reflected in the antecedent part of the rule. A rule within this is represented by the following expression: 1 1 R if ω  is A  and / or . . .ω  is A then y is Bi n m mn n  (14) Where ωm represents a system feature, y depicts the output variable and Amn and Bn correspond to the fuzzy sets associated to feature m and output, respectively. Processor Load Light Moderate Heavy Load Status Load OverloadNot Overload 1 0 1.0 1 3 5 7 Figure 3. (a) Degree of truth representation (b) A linguistic variable, processor load 4. COMPARATIVE ANALYSIS This section This section examine various characteristic of load balancing policies. Genetic algorithms are applicable to a wide variety of application [8]. It works better when we have to schedule a large number of jobs. The sliding windows technique [4,7] is generally used to trigger the GA. Sliding window consist a series of job for node assignment to schedule. The main
  • 11. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 8 focused is about the size of sliding window and when these jobs have been assigned to appropriate node, the update of window is take place. Table 1. Comparative analysis of load balancing policies Approach Factors to consideration Advantages Genetic Algorithm 1. Windows size and their update. 2. String selection for search node in search space. 3. Fitness function for measure the performance of string. 4. Population Size. 5. Processing overhead. 1. Minimum execution time. 2. Minimize Communication cost. 3. Maximum utilization of node. 4. Maximum throughput value. 5. Minimize makespan value. Fuzzy Logic 1. Interference Engine. 2. Decision Making 3. Load Assignment. 4. State Update Decision. 1. Better Performance and throughput. 2. Response time is significantly better. Job Replication 1. No. of copies of Job. 2. Communication between Nodes. 3. Processing overhead. 1. Consistently perform better when measure statistic is less than threshold value. FCFS 1. Instantaneous decision. 2. Sequence of Job arrival. 1. Reduce the system response time. 2. Shorter Makespan. Table 1 shows the comparative analysis of some load balancing policies. The measurement of GA is based on the quality of solution it produced after several generations. The measurements of input variables of a fuzzy controller must be properly combined with relevant fuzzy information rules to make inferences regarding the system Load State. The job replication scheme consist multiple copies of each job so it gives extra overhead to the computing node. To make an instantaneous decision, the FCFS approach is preferred. The primary focus of all the load balancing approaches is spread the workload to each node in such a manner that, the makespan is minimized and a well-balanced load among all the nodes in grid system therefore the current workload in the system must be considered to schedule the job to appropriate node.
  • 12. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 9 5. CHALLENGES AND KEY ISSUE 5.1 Challenges in Load Balancing There are various strategies have been developed for solving load balancing problem but it is not yet solved completely. Data partitioning and load balancing are weighty components of parallel computations. For static and dynamic load balancing various strategies have been developed, such as recursive bisection (RB) methods, space-filling curve (SFC) partitioning and graph partitioning [20]. A computation grid system consists of various components such as computing node and workstations, etc. There exist a heterogeneity between the various factors of a node such hardware architecture, physical memory, CPU speed and node capacity which affect the processing result. The dynamic behavior, and node failure can decrease the performance of grid, while the selection of resources (or node) for jobs could also be a factor. 5.2 Key Issues in Load Balancing Load balancing is very crucial issue for the efficient operation of computational grid environments for sharing of heterogeneous resources, hence affect quality of service and scheduling. In dynamic load balancing, load sharing and task migration are some of the widely researched issues [7]. In a networked environment, interoperability (common protocols) is the central issue to be addressed. How to select efficient nodes is one of the issues of further investigation. As Grid is a distributed system utilizing idle nodes scattered in every region, the most critical issue pertaining to distributed systems is how to integrate and apply every computer resource (node) into a distributed system, so as to achieve the goals of enhancing performance, resource sharing, extensibility, and increase availability [15]. In order to make optimal balancing and work distribution decisions in Grid environment, a load balancer needs to take some or all of the following information into consideration:  The capacity on each node (CPU, memory, and disk space, etc.)  Current workload of each node  Required capacity for each task  Network connectivity and delay  The assignment of processes to processors  The use of multiprogramming on individual processors  The actual dispatching of a process. The choice of parameter and state information should also be considered. For various software engineering related issues, there are some software toolkit exists to provide effective solution. The distribution of load among the CN in an optimal way is not easy task, as it requires complete analysis of available resources and job. A load balancing policy can either be static
  • 13. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 10 or dynamic. The major concern in static load balancing policy is to determine the execution time of the job, communication delays, and the resources used by computing node. Since an accurate estimation is not possible earlier in time, so emphasis can be done on to estimation of such quantities closer to accurate values. 6. CONCLUSIONS In this paper, we discussed few contemporary load balancing strategies based on various approaches for computational grid environment. With the rapid development of technology, grid computing have increasingly becomes an attractive computing platform for a variety of applications. In a computational grid environment, load balancing is the process of improving the performance of system through re-distribution of load among the computing nodes. When the newly created jobs arbitrary arrive into the system, the node can become heavily loaded while other become either ideal or lightly loaded, therefore the job assignment and load sharing must be done carefully. The problem of load balancing is closely related to scheduling and allocation of job to computing node. For efficient utilization of grid resource and maximum node utilization, special scheduling policy is needed. Load balancing methods will vary greatly between different grid environment depending on the needs and the availability of computing node to perform the task. There are various factors which affects the performance of grid application such as load balancing, resource sharing, and resource heterogeneity therefore it must be considered for making decision. REFERENCES [1] I. Foster, C. Kesselman, and S. Tuecke, The anatomy of the grid: Enabling scalable virtual organizations, The International Journal of High Performance Computing Applications, 15 (3) (2001) 200-222. [2] Rajkumar Buyya, and Srikumar Venugopal, A Gentle Introduction to Grid Computing and Technologies, Computer Socity of India, CSI Communication, July (2005). [3] C. Gary Rommel, The Probability of Load Balancing Success in a Homogeneous Network, IEEE transactions on Software Engineering, 17(9), Sept. (1991) 922-933. [4] Yajun Li, Yuhang Yang, Maode Ma, and Liang Zhoy, A hybrid load balancing strategy of sequential tasks for grid computing environments, Future Generation Computer Systems, 25 (2009) 819-828. [5] Rajkumar Buyya and Manzur Murshed, GridSim: A Toolkit for the Modeling and Simulation of Distributed Resource Management and Scheduling for Grid Computing, The Journal of Concurrency and Computation: Practice and Experience (CCPE), Volume 14, Issue 13-15, Wiley Press, Nov.-Dec., (2002). [6] Vandy Berten, Joel Goossens, and Emmanuel Jeannot, On the Distribution of Sequential Jobs in Random Brokering for Heterogeneous Computational Grids, IEEE Transections on Parallel and Distributed System 17 (2) (2006) 1-12.
  • 14. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 11 [7] Albert Y. Zomaya, Yee-Hwei Teh, Observations on Using Genetic Algorithms for Dynamic Load-Balancing, IEEE Transections on Parallel and Distributed System, 12(9), Sept. (2001) 899-911. [8] Carlos Alberto Gonzalez Pico, Roger L. Wainwright, Dynamic Scheduling of Computer Tasks Using Genetic Algorithms, Proc. of the First IEEE Conference on Evolutionary Computation - IEEE World Congress on Computational Intelligence, Orlando, Florida June, (1994) 829-833. [9] Chulhye Park, Jon G. Kuhl, A Fuzzy-Based Distributed Load Balancing Algorithm for Large Distributed Systems, IEEE (1995) 266-273. [10]Kaveh Abani, Kiumi Akingbehh, Adnan Shaout, Fuzzy Decision Making for Load Balancing in a Distributed System, IEEE, (1993) 500-502. [11]Menno Dobber, Rob van der Mei, Ger Koole, Dynamic Load Balancing and Job Replication in a Global-Scale Grid Environment: A Comparison, IEEE Transections on Parallel and Distributed System, 20( 2), Feb. (2009) 207-218. [12]Yu-Kwong Kwok, Lap-Sun Cheung, A new fuzzy-decision based load balancing system for distributed object computing, Journal of Parallel and Distributed Computing, 64 (2004) 238–253. [13]Mika Rantonen, Tapio Frantti, Kauko Leiviska, Fuzzy expert system for load balancing in symmetric multiprocessor systems, Expert Systems with Applications, 37 (2010) 8711–8720. [14]Junwei Caoa, Daniel P. Spooner, Stephen A. Jarvis and Graham R. Nudd, Grid load balancing using intelligent agents, Future Generation Computer Systems, 21 (2005). [15]K.Q. Yan, S.C. Wang, C.P. Chang, J.S. Lin, A hybrid load balancing policy underlying grid computing environment, Computer Standards & Interfaces 29 (2007) 161–173. [16]Jun Wang, Jian-Wen Chen, Yong-Liang Wang, Di Zheng, Intelligent Load Balancing Strategies for Complex Distributed Simulation Applications, 2009 International Conference on Computational Intelligence and Security, 2009 (182-186). [17]Kuo-Qin Yan, Shun-Sheng Wang, Shu-Ching Wang, Chiu-Ping Chang, Towards a hybrid load balancing policy in grid computing system, Expert Systems with Applications 36 (2009), 12054–12064. [18]Brighten Godfrey, Karthik Lakshminarayanan, Sonesh Surana, Richard Karp, Ion Stoica, Load Balancing in Dynamic Structured P2P Systems, IEEE INFOCOM (2004). [19]Luis Miguel Campos, Isaac D. Scherson, Rate of change load balancing in distributed and parallel systems, Parallel Computing 26 (2000), 1213-1230. [20]Karen D. Devine, Erik G.Boman, Robert T. Heaphy, Bruce A. Hendrickson, James D. Teresco, Jamal Faik, Joseph E. Flaherty, Luis G. Gervasio, New challenges in dynamic load balancing, Applied Numerical Mathematics 52 (2005) 133–152. [21]Satish Penmatsa, and Anthony T. Chronopoulos, Comparison of Price-based Static and Dynamic Job Allocation Schemes for Grid Computing Systems, Eighth IEEE International Symposium on Network Computing and Applications, (2009) 66-73. [22]In Lee, Riyaz Sikora, and Michael J. Shaw, A Genetic Algorithm-Based Approach to Flexible Flow-Line Scheduling with Variable Lot Sizes, IEEE Transactions On Systems, Man, a Cybernetics-Part B: Cybernetics, 27(1), Feb. (1997). [23]S.Salleh, and A.Y.Zomaya, Using Fuzzy Logic for Task Scheduling in Multiprocessor Systems, Proc. 8th ISCA International Conference on Parallel and Distributed Computing Systems, Orlando, Florida, (1995) 45-51.
  • 15. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 1 Hackers Portfolio and its Impact on Society Dr. Adnan Omar & Terrance Sanchez, M.S. 6400 Press Drive Southern University at New Orleans ABSTRACT Currently, a hacker is defined as a person using computers to explore a network to which he or she did not belong. Hackers find new ways to harass people, defraud corporations, steal information and maybe even destroy valuable information by infiltrating private and non- private organizations. According to recent research, bad hackers make up only a small minority of the hacker community. In today’s society, we depend on more technology than ever and that increases the likelihood of hackers having more control over cyberspace. Hackers work by collecting information on the intended target, figuring out the best plan of attack and then exploiting vulnerabilities in the system. Programs such as Trojan horses and Flame viruses are designed and used by hackers to get access to computer networks. This paper describes how hacker behavior is aimed at information security and what measures are being taken to combat them. Keywords Types of Hacker, Security, Technology, Cyberspace. 1. INTRODUCTION Hacking is a very serious problem that can severely compromise your computer. If your computer is connected to the Internet, you are vulnerable to cyber-attacks from viruses and spyware. It is virtually impossible to stop a determined and skilled hacker from breaching most home network security measures commercially available [1]. The primary objective of hacking is to gather information and documents that could compromise the security of governments, corporations or other organizations and agencies. In addition to focusing on diplomatic and governmental agencies around the world, the hackers also attack individuals as well as groups. The computer term “hacker” can refer to a good or bad reputation according to the mass media. Hackers have developed new ways to use computers since their invention, and create programs that no one else can, to utilize their potential. Hackers are motivated by various reasons which may range from bold ideas, lofty goals, great expectations or simple deviation from the norm as well as the excitement of intrusion into a complicated computer system. In the past, hacking has been used to hassle an intended victim, steal information, or spread viruses. Not all hacking results from premeditated malicious intent. Most hackers are interested in how computer networks function and barriers between them and that knowledge is considered a
  • 16. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 2 challenge to their intelligence. However, some use their knowledge to help corporations and governments construct better security measures. Although we have heard about mischievous hackers sabotaging computers, networks, and spreading viruses, most of the time hackers are just driven by the curiosity they have about how different systems and programs work. Although malicious and intrusive methods may be representative of what hackers do, many of the methods and tools used by them are constructive in fixing glitches in software as well as focusing on the vulnerability of computer technology. It is through exposure of these vulnerabilities that new ideas and better security measures are created. When someone hears the word "hacker" one might immediately conjure images in the mind’s eye of a criminal; more specifically, a criminal sitting at a computer typing away with a screen reading "Access Denied." That image in mind, one has the mainstream image of a modern day hacker. In today’s society, hacking is just as prevalent as it has been in years past. Viruses are still coded every day, worms still crawl the internet, and Trojan horses continue to allow back door access into computer systems [2]. Even within hacker society, the definitions range from socially very positive to criminal. In [3], there are two basic principles hackers live by: first, is that information sharing is a powerful good and that it is the ethical duty of hackers to share their expertise by writing free software and facilitating access to information and to computing resources whenever possible. Second, is that system cracking for fun and exploitation is ethically OK as long as the cracker commits no theft, vandalism or breach of confidentiality. It differentiates between benign and malicious hackers based on whether damage is performed, though in reality all hacking involves intrusion and a disregard for the efforts, works and property of others. This research has reviewed the literature on hackers and it identifies countries, reasoning, and type of penalties that are most likely to be involved in hacking activities. In addition, it will address the steps that are needed to put in place in order to reduce hacking and the type of penalties. 2. LITERATURE REVIEW Electronic information is a critical part of our culture. Yet no matter where the technology has taken us, the fact remains that what happens in cyberspace has tangible impacts on each of our lives. Therefore, it is as important for us to be secure in cyberspace as it is in our physical world [4]. According to a report from McAfee based on a survey conducted globally on more than 800 IT company CEO's in 2009, data hacking and related cybercrimes have cost multinational companies one trillion U.S. dollars [5].
  • 17. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 3 The media often presents hackers as having a thrilling reputation. Adolescents who are lacking the social skills required to be accepted by others may fantasize about their degree of technological skills, and move online in search of those who profess to have technological skills the student desires. A simple search using the term "hacker" with any search engine, results in hundreds of links to illegal serial numbers, ways to download and pirate commercial software, etc. Showing this information off to others may result in the students being considered a "hacker" by their less technologically savvy friends, further reinforcing antisocial behavior. In some cases, individuals move on to programming and destruction of other individuals programs through the writing of computer viruses and Trojan horses; programs which include computer instructions to execute a hacker's attack. If individuals can successfully enter computers via a network, they may be able to impersonate an individual with high level security clearance access to files, modifying or deleting them or introducing computer viruses or Trojan horses. As hackers become more sophisticated, they may begin using sniffers to steal large amounts of confidential information, become involved in burglary of technical manuals, larceny or espionage [6]. The British government released evidence that foreign intelligence agencies, possibly in China, Korea and some former Soviet states, were hacking computers in the United Kingdom. "Economic espionage" was believed to be one reason behind the attacks. Economic espionage involves attempting to undermine the economic activity of other countries, sometimes by passing on stolen industry and trade secrets to friendly or state-owned companies. Key employees; those who have access to sensitive information or government secrets, can be targeted through virus-laden e-mails, infected CD-ROMS or memory sticks, or by hacking their computers. To respond to these threats, the European Union, G8 and many other organizations have set up cybercrime task forces. In the United States, some local law enforcement organizations have electronic crime units and the FBI shares information with these units through its InfraGard program [7]. Cyber security is becoming an important issue, as emphasized in an article by Jacob Silverman titled “Could hackers devastate the U.S. economy?” He discloses the fact that many media organizations and government officials rank it just as grave a threat as terrorist attacks, nuclear proliferation and global warming. With so many commercial, government and private systems connected to the Internet, the concern seems warranted. To add to the concern, consider that today's hackers are more organized and powerful than ever. Many of them work in groups; and networks of black- market sites exist where hackers exchange stolen information and illicit programs. Credit-card data is sold in bulk by "carders" and phishing scams are a growing concern. Malware -- viruses, Trojan horse programs and
  • 18. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 4 worms -- generates more money than the entire computer security industry, according to some experts. He further reveals that hackers are also distributed all over the world, many in countries like Romania that have lots of Internet connectivity and loose enforcement of laws [8]. In 2008 Security experts said Chinese hackers began targeting Western journalists as part of an effort to identify and intimidate their sources and contacts, and to anticipate stories that might damage the reputations of Chinese leaders. In a December 2012 over the course of several investigations it found evidence that Chinese hackers had stolen e-mails, contacts and files from more than 30 journalists and executives at Western news organizations, and had maintained a “short list” of journalists whose accounts they repeatedly attack. Based on a forensic analysis, it appears the hackers broke into New York Times computers on Sept. 13, when the reporting for the Wen articles was nearing completion. They set up at least three back doors into users’ machines that they used as a digital base camp. From there they snooped around New York Times‟ systems for at least two weeks before they identified the domain controller that contains user names and hashed, or scrambled, passwords for every Times employee [9]. In 2009, dubbed, “Operation: Aurora” by security firm McAfee, sophisticated hackers based in China breached the corporate networks of Google, Yahoo! Juniper Networks, Adobe Systems, and dozens of other prominent technology companies and tried to access their source codes. China's hackers seemed narrowly focused on military technology and telecommunications companies as early as 2000. In 2011 Wiley Rein, a prominent Washington Law firm working on a trade case against China was hacked, and the White House was targeted last year. The hackers also breached the website of the Council on Foreign Relations and rigged it to deliver malware to anyone who visited it. Hacking groups with ties to the Chinese government have also aggressively targeted Western oil and gas companies and their law firms and investment banks [10]. In 2011, U.S. computer security firm McAfee reported that hackers operating from China stole sensitive information from Western oil companies in the United States, Taiwan, Greece and Kazakhstan, beginning in November 2009. Citizen Lab and the SecDev Group discovered computers at embassies and government departments in 103 countries, including the Dalai Lama's office and India, were compromised by an attack originating from servers in China. They dub the network involved "GhostNet". Google claims cyber-attacks from China have hit it and at least 20 other companies. Google shut down its China operations. A top-secret memo by the Canadian Security Intelligence Service warns that cyber- attacks on government, university and industry computers have been
  • 19. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 5 growing "substantially. Quebec provincial police say they dismantled a computer hacking network that targeted unprotected computers around the world, including government computers [11]. In 2011, NASA reported it was the victim of 47 APT attacks, 13 of which successfully compromised Agency computers. In one of the successful attacks, intruders stole user credentials for more than 150 NASA employees – credentials that could have been used to gain unauthorized access to NASA systems. An ongoing investigation of another such attack at Jet Propulsion Laboratories JPL involving Chinese-based Internet protocol (IP) addresses has confirmed that the intruders gained full access to key JPL systems and sensitive user accounts. With full system access the intruders could: (1) modify, copy, or delete sensitive files; (2) add, modify, or delete user accounts for mission-critical JPL systems; (3) upload hacking tools to steal user credentials and compromise other NASA systems; and (4) modify system logs to conceal their actions. In other words, the attackers had full functional control over these networks [12]. NASA is a prestigious target for hackers because of its seat atop the United States' broader technology incubation apparatus, and because of that position it is also a strategic target for foreign state actors and cybercriminals looking to steal information they can profit from. And while the agency reportedly spends about a third of its $1.5 billion IT budget on security, things aren’t looking so secure. Securing a huge bureaucracy like NASA is difficult, no doubt. But according to Martin’s testimony, as of February 2012 only one percent of NASA’s portable devices and laptops were encrypted [12]. According to Bloomberg BusinessWeek, the executive order called for the U.S. Department of Homeland Security to identify which critical infrastructure is vulnerable to a cyber-attack that would be catastrophic to the economy and public safety. According to Apple a week after Obama issued the order, Apple’s employees computers were attacked by malicious software after they visited a website aimed at iPhone developers. Shortly afterward Microsoft announced that similar malware has infected some of his company computers. According to trade groups representing tech manufacturers and Web companies, the cables and fibers that information travels over are more critical than the devices and programs their members make, although Tech Companies argue other countries might take a cue from the U.S. and set up their own cyber security guidelines. Multiple sets of regulations might mean manufacturers and Web companies would have to create different products and services for different countries, for further increasing cost [13].
  • 20. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 6 Security experts hired by the New York Times to detect and block the computer attacks gathered digital evidence that Chinese hackers, using methods that some consultants have associated with the Chinese military in the past, breached The Times’ network. They broke into the e-mail accounts of its Shanghai bureau chief, David Barboza, who wrote the reports on Mr. Wen’s relatives, and Jim Yardley, The Times’ South Asia bureau chief in India, who previously worked as bureau chief in Beijing. Security experts found evidence that the hackers stole the corporate passwords for every Times employee and used those to gain access to the personal computers of 53 employees, most of them outside New York Times’ newsroom [9]. For three straight years, a group of Chinese hackers waged a cyber-war against a family-owned, eight-person software firm in California, according to court records. It started when Solid Oak Inc. founder Brian Milburn claims he discovered that China was stealing his company's parental filtering software, CYBERsitter. The theft hurt their business and sales, which was bad enough. But twelve days after he publicly accused Chinese hackers, he says he was inundated by attempts to bring down his Santa Barbara-based business. Hackers broke into the company's system, shut down its email and web servers, spied on employees using their own webcams and gained access to sensitive company files, according to court records. Apple Inc. reported it was hacked by the same group that hit social- networking monster Facebook in January 2013. The security breaches are the latest in a string of high-profile attacks on companies including The Wall Street Journal and New York Times. Cyber security firm Mandiant also came out with a report in early 2013 that accused a secret Chinese military unit in Shanghai of years of systematic cyber-espionage against more than 140 U.S. companies. Adam Levin, co-founder and chairman of Identity Theft 911, says that for most companies it's not a matter of if they will have a breach but when Levin told FoxBusiness.com that no company is ultimately immune to this [14]. Members of Congress have published proposals that could result in longer prison sentences for hackers. The House Judiciary committee is looking to expand the Computer Fraud and Abuse Act (CFAA), an anti-hacking bill dating back to 1984. Under the new proposals, damaging a computer after accessing it without authorization would carry a maximum 10-year prison term, double the current punishment. "Trafficking" passwords would also carry a 10-year penalty. Hacking and damaging a "critical infrastructure computer" would become the most serious crime, with a maximum 30-year sentence. That would cover any machine that plays a vital role in areas such as power, transportation, and finance [15].
  • 21. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 7 3.METHODOLOGY Developing a psychological profile of a likely attacker is an attractive goal. Because of variation among human motivations, and limitations in the knowledge of psychology, such a profile may prove elusive [16]. There are a number of recent and growing trends in the hacking activity landscape that were observed by the Cybercrime division in the past decade dealing with not only the state and local government aspects but with other national governments across the world. Recently, cyber-attacks have no details given to the attackers’ identity. 3.1 Data Gathering In this research study, data was collected from several Department of Justice (DOJ) Cybercrime press releases. However, the bulk of the data was extracted from their department since 2009. DOJ generates reports from cybercrime activity and people across the world. In the United States, more than 35 million dollars in damage has been done to targeted companies. Table 1 consists of 97 hackers listed by nationality, age, job status, reasons for hacking, damage to company, money to judicial system, and punishment from the DOJ for a period of 4 years. A shortlist of hackers is shown in Table 1 as an example. Tables 2 through 4 were constructed from the data collected from the aforementioned references. Table 1. Computer Cybercrime Portfolio 2009-2013 Source: U.S. Department of Justice (2009-2012). Computer Crime and Intellectual Property Section Press Releases [17]. National Age Job Status Reason for Hacking Damage to Business Money to Judicial Sys. Punish Sweden 37 N/A Steal info N/A $650,000 Pending Malaysia N/A N/A Bank fraud N/A N/A 10 Y Romania N/A N/A Steal info N/A N/A 7 Y Russia 55 N/A Steal info N/A $1,000,000 3 Y America 46 N/A Personal gain N/A N/A 18 Y America 36 N/A Destroy company data N/A N/A 10 Y America 49 N/A Personal gain $100,000 $250,000 10 Y America N/A Emp Steal info $5,000 N/A 40 Y America 45 N/A Confidential info N/A $1,000,000 15 Y America 22 N/A Confidential info N/A $350,000 21 Y America 27 N/A Personal gain $9,481.03 $187,659 17 Y America 28 N/A Confidential info N/A $500,000 5 Y/ 1 Y Pro Russia 29 N/A N/A N/A $3.5 million dollarsMoldova 29 N/A N/A N/A America 25 N/A Steal info N/A 171.6 mil 2Y 20 Y
  • 22. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 8 Table 2 represents the percentage of the number of hackers by nationality. Table 2. Hacking by Nationality Nationality % Nationality % Unknown 30 Malaysian 2 Russian 3 American 34 Latvian 1 Estonian 11 Romanian 9 Venezuelan 1 Sweden 1 Moldova 1 Albanian 1 Dublin 1 Hungarian 1 Blaine 1 Table 3 indicates the percentage of the type of motivation behind hacking. Table 3. Motivation behind Hacking Reasoning % Steal Information 34 Intentional Damage to Companies 11 Bank fraud 25 Need employment 1 Personal gain 11 Steal Money 3 Commit Multiple Fraud 7 Steal Intellectual Property 5 Table 4 shows the percentage of the type of penalties applied to hackers by the judicial system. Table 4. Type of Penalty Category % Pending 42 Probation 3 Supervised release 2 Cyber warfare 15 Prison 41
  • 23. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 9 3.2 Ways to Minimize Potential for Hacking In order to minimize hacking, several techniques are required. The following procedures need to be implemented to help limit the possibility of hacking:  It is quite essential that organizations proactively introduce guidelines of standard use and outline the consequences for inappropriate actions.  People should be informed and have adequate knowledge of hacking. They must be educated of certain commonalities and characteristics connected with this activity, as well as the significant penalties for hacking and the repercussions online networking with other characters claiming to be skillful in raiding others.  Outside the business perspective, people need to be educated as to not post any sensitive information on social networks such as Facebook, Twitter, YouTube, etc.  The organizations can use filters which can prohibit its members from accessing unauthorized software serial numbers, hacking-related materials such as newsgroups, chat-rooms and hacking organizations.  Organizational staff should monitor activities in the working environment and be proactive when information is obtained about hacking activities.  There is a need for cooperation between private, public, as well as governments to reduce hacking activities.  Recognizing good hackers that report vulnerable security weaknesses to companies.  Lawmakers need to address the seriousness of cyber hacking by establishing several special centers across the nation where they can recruit the minds of our skilled youth as early as 15 years of age and provide them the proper training, financial means, and support them through college to those who have the passion and commitment to continue in the field of cyber security.  Global corporations between nations are needed to reduce hacking. In summary, people need to be aware of incidents regarding hacking, the mentality associated with it, the consequences of various hacking actions and possible consequences of interacting and forming online relationships with anonymous individuals who claim to be proficient in invading others' privacy. Many organizations have engaged in enabling employees to collaborate with technology-oriented staffs who demonstrate several physiognomies that can result in hacking activities.
  • 24. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 10 4. FINDINGS The hacking became more serious beyond the extent of individual/groups and it is now at a government level between nations. From the data collected, Tables 2-4 have been analyzed and illustrated as a graphical representation shown in Figure 1-3. Figure 1 illustrates the number of hacking by nationality. The highest percentage comes from America (35%) and second to it is unknown (31%). Thirdly, it is Estonian (12%). Figure 1. Hacking by Nationality Figure 2 represents the drive behind hacking; 35% would steal information, 26% is Bank Fraud, and 12% is intentional damage to companies.
  • 25. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 11 Figure 2. Motivation behind Hacking Figure 3 shows that 41% of their penalties are still pending which states that their punishments have yet been decided by the courts and 40% are serving a prison sentence. However, 14% are included in cyber warfare which means that their punishment has not been published due to their crime involving the government. Monitoring behavior and motivation of hackers can help improve awareness of their danger and underscores the importance of maintaining robust security, including up-to-date cyber security and anti- virus software. Figure 3. Types of Penalty Figure 4 shows an example illustrating the seriousness of cyber-attacks in today’s society. Chevron, the U.S. headquartered international oil and gas company, has admitted that Stuxnet infected its IT network. Stuxnet is known for destroying centrifuges used in Iran uranium enrichment program. It was designed by a nation state with the intention of targeting Siemens supervisory control and data acquisition systems (SCADA) which controlled the industrial processes inside the enrichment facilities. Industrial Safety and Security Source is reporting that the Stuxnet virus was planted by an Iranian double agent via a memory stick. The Stuxnet malware is widely believed to have caused damage to Iran nuclear program by breaking the motors on 1,000 centrifuges at the Natanz uranium enrichment facility. Kaspersky Lab reported that a new virus dubbed Gauss has attacked computers in the Middle East spying on financial transactions, emails and picking passwords to all kind of pages. The virus resembles Stuxnet and Flame malware which was used to target Iran. Gauss has infected hundreds of personal computers across the Middle East – most of them in Lebanon,
  • 26. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 12 but also in Israel and Palestinian territories. Kaspersky Lab has classified the virus, named after one of its major components, as “a cyber-espionage toolkit” [18]. Figure 4. Flame Wars Source: Cyber Security Helping secure one network at a time, 2013 Recent hacker IT attacks could be catastrophic for global business and even cost lives. According to Alicia Buller [19], the three points to note in cyber war are: Companies could become collateral victims in the war between superpowers. Ideas from state nation cyber weapons could be repurposed and copied by amateurs. Cyber criminals may start using weapons gleaned from governments and nation states. Depending on the severity of the latest hacks, establishing a framework to protect the country becomes top priority of the Obama Administration as well as other countries around the world. 5. CONCLUSION While computer hackers constitute a major security concern for individuals, businesses, and governments across the globe, hacking and hackers’ underground culture remains secretive and difficult to identify for both lawmakers and those vulnerable to hacker attacks. The mystery that surrounds much of hacking prevents us from arriving at definitive solutions to the security problem it poses; but our analysis provides at least tentative insights for dealing with this problem. Hacking became a serious problem affecting all levels of business activities from individuals, corporations, as well as governmental agencies. The bulk of the hacking is initiated from Americans about 35%. The type of penalty ranges from jail time to monetary fines. Although there are laws against hacking, the courts cannot
  • 27. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 13 persecute these crimes fast enough to deter people from committing them. From the literature review, the maximum jail penalty is 62 years and fines are $171.6 million dollars. Results show that hackers continue to engage in illegal hacking activities despite the perception of severe judicial punishment. A closer look shows that hackers perceive a high utility value from hacking, little informal sanctions, and a low likelihood of punishment. These observations combined with their disengagement from society, partially explains the hacker's illegal behavior. Whatever their reason, it is a learning experience through which they hope to gain anonymity. Future effort to minimize hacking will undoubtedly include a combination of aggressive legislation, new technological solutions, and increased public awareness and education. Existing laws should be reviewed and amended periodically to allow for appropriate evolution. The international community for online security should respond with collaborative efforts globally towards this terrorist act of hacking in order to manage this predicament. 6. REFERENCES [1] Callwood, K. (2013). “How to Reduce Hacking” eHow.com Retrieved from: http://www.ehow.com/how_8663856_reduce-hacking.html#ixzz2Of7JZqMC [2] Wooten, D. (2009). “Hacking: modern day threat or hobby? (pt. 1)”. Retrieved from: http://www.examiner.com/x-13831-Computer-Security-Examiner~y2009m6d22- Hacking-modern-day-threat-or-hobby-pt-1# [3] Parker, D. (1998). “Fighting Computer Crime: A New Framework for Protecting Information” Retrieved from: http://education.illinois.edu/wp/crime/hacking.htm [4] Shoemaker, D. & Conklin A. (2012). “Cyber security: The Essential Body of Knowledge 1st edition” Cengage Learning. [5] Loganathan, M. & Kirubakaran, E. (2011). “A Study on Cyber Crimes and protection” IJCSI International Journal of Computer Science Issues, Vol. 8, Issue 5, No 1. [6] Stone, D. (1999). “Computer Hacking”, University Laboratory High School, Retrieved from: http://www.ed.uiuc.edu/wp/crime/hacking.htm [7] Computer Weekly (2006). “Act on foreign spy risk, firms urged” Retrieved from: http://www.computerweekly.com/articles/2006/12/01/220307/act-on-foreign-spy-risk firms-urged.htm [8] Silverman, J. (2007). "Could hackers devastate the U.S.economy?” HowStuffWorks.com. Retrieved from: http://computer.howstuffworks.com/die-hard-hacker.htm [9] Perlroth, N. (2013). “Hacker in China Attacked the Times for last 4 months” The New York Times. Retrieved from: http://www.nytimes.com/2013/01/31/technology/chinese- hackers- infiltrate-new-york- times-computers.html?pagewanted=all&_r=0 [10]Canter, D. (2013). “Fighting an Order to fight cybercrime” Bloomberg BusinessWeek. March 11-17, 2013. [11]New Orleans Business News (2011). “Hackers in China hit Western oil companies, security firm reports” The Associated Press. Retrieved from: http://www.nola.com/business/index.ssf/2011/02/hackers_in_china_hit_ western_o.html
  • 28. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 14 [12]Dillow, C. (2012). “In the last year, hackers gained „Full Functional Control‟ of NASA networks, stole the control codes for the is” POPSCI. Retrieved from: http://www.popsci.com/technology/article/2012-03/hackers-gained-full-functional- control-nasa-networks-stole-control-codes-iss-last-year [13]Engleman, E. (2013).“Hacked? Who Ya Gonna Call?” Bloomberg Business Week. February 11- February 17, 2013. [14]Chakraborty, B. (2013). “Small firm hit by 3-year hacking campaign puts face on growing cyber problem” Foxnews.com Retrieved from: http://www.foxnews.com/politics/2013/02/22/small-businesses-big-targets-for-cyber- snoops/#ixzz2Ngj7XMli [15]Peters, J. (2013). “America's Awful Computer-Crime Law Might Be Getting a Whole LotWorse” Retrieved from: http://www.slate.com/blogs/crime/2013/03/25/computer_fraud_and_abuse_act_the_cfa a_america_s_awful_computer_crime_law.html [16]Stolfo, S. (2008) “Insider Attack and Cyber Security: Beyond the Hacker” Vol.39, Springer. [17]U.S. Department of Justice (2009-2012). Computer Crime and Intellectual Property Section Press Releases. Retrieved from: http://www.justice.gov/criminal/cybercrime/pr.html [18]Hatcher, W. (2013). “Cyber Security helping secure one network at a time” Information Systems Audit and Control Association – Greater New Orleans Chapter – 2013. [19]Buller, A. (2013). “The Coming of Cyber War I” Retrieved from: http://gulfbusiness.com/2013/03/the-coming-of-cyber-world-war-i/
  • 29. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 1 Ontology Based Multi-Viewed Approach for Requirements Engineering R. Subha Assistant Professor Sri Krishna College of Technology, Kovaipudur, Coimbatore-641 042, Tamil Nadu, India S. Palaniswami Principal Government College of Engineering, Bodinayakanur, Tamil Nadu, India ABSTRACT Software requirement engineering is an important process in software development. When considered software development as a whole, 75% of software failures are due to impaired software requirements. The proposed technique involves a multi viewed approach comprising of Controlled Natural language and ontologies that can be used for representing the requirements. Ontology is an explicit information modelling method which can be used to model applications and their interactions. Controlled natural languages are subsets of natural languages, obtained by restricting the grammar and vocabulary in order to reduce or eliminate ambiguity and complexity that enable reliable automatic semantic analysis of a language. The ontologies are constructed based upon the semantic similarities between the domain and requirement models. The CNL is developed by restricting the vocabulary based on certain rules. The similarity between the two representations can be defined by a program that extracts the extracts the objects and relationship between them. Tool based verification of the similarities is performed. This approach is applicable in software development areas and many official applications such as banking system, currency conversion, weather reports, transport, and sports. Keywords Requirements Engineering , Ontology , Controlled Natural Language 1. INTRODUCTION Software engineering (SE) is the engineering discipline through which software is developed. Commonly the process involves finding out what the client wants, composing this in a list of requirements, designing an architecture capable of supporting all of the requirements, designing, coding, testing and integrating the separate parts, testing the whole,
  • 30. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 2 deploying and maintaining the software. Programming is only a small part of software engineering. Requirements engineering (RE) being the first phase of software engineering deals with the process of discovering, eliciting, documenting and maintaining the requirements for a particular computer-based system. Computer systems are designed, and anything that is designed has an intended purpose. If a computer system is unsatisfactory, it is because the system was designed without an adequate understanding of its purpose, or the purpose is deviated from the intended one. Both problems can be mitigated by careful analysis of purpose throughout a system’s life. Requirements Engineering provides a framework for understanding the purpose of a system and the contexts in which it will be used. The requirements engineering bridges the gap between an initial vague recognition that there is some problem to which there is a computer technology, and the task of building a system to address the problem. Ontology formally represents knowledge as a set of concepts within a domain, and the relationships between pairs of concepts[3]. It can be used to model a domain and support reasoning about entities. An ontology renders shared vocabulary and taxonomy which models a domain with the definition of objects/concepts, as well as their properties and relations. Ontologies are the structural frameworks for organizing information and are used in artificial intelligence, the Semantic Web, systems engineering, software engineering, informatics, library, enterprise bookmarking, and information architecture as a form of knowledge representation about the world or some part of it [5]. The creation of domain ontologies is also fundamental to the definition and use of an enterprise architecture framework. Model for describing the world that consists of a set of types, properties, and relationship types. There is also generally a view that the feature of the model in an ontology closely resembles the real world. There are many problems associated with requirements engineering. The nature of problems includes defining the system scope, problems of understanding and problems of volatility. The major problems are sharing equal understanding among the different communities involved in the development of a given system, and problems in dealing with the volatile nature of requirements. Problems of understanding during elicitation can lead to requirements which are ambiguous, incomplete, inconsistent, and even incorrect .If changes are not accommodated, the original requirements set will become incomplete, inconsistent with the new situation, and potentially unusable because they capture information that has since become obsolete. The requirement traceability issue is also a major factor concerned with the requirement engineering. These problems may lead to poor
  • 31. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 3 requirements and the cancellation of system development, or else the development of a system that is later judged unsatisfactory or unacceptable, has high maintenance costs, or undergoes frequent changes. By improving requirements elicitation, the requirements engineering process can be improved, resulting in enhanced system requirements and potentially a much better system. In order to overcome these issues, a model integrating controlled natural language and ontology providing a multi-viewed approach is proposed to represent requirements from different perspectives of all the stakeholders and the development team. 2. RELATED WORK 2.1 A scenario-driven approach to trace dependency analysis Egyed et al. proposed an approach to trace dependency analysis. Software development artifacts such as model descriptions, diagrammatic languages, abstract (formal) specifications, and source code are highly interrelated where changes in some of them affect others [2]. Trace dependencies characterize such relationships abstractly. The research area focused on an automated approach to generating and validating trace dependencies. The research addressed the severe problem that the absence of trace information or the uncertainty of its correctness limits the usefulness of software models during software development. This is considered to be an important issue affecting requirements engineering. This approach also proposed a method that automates what is normally a time consuming and costly activity due to the quadratic explosion of potential trace dependencies between development artifacts. 2.2 Issues in requirement elicitation Christel M and Kang k, in their research paper titled “Issues in requirements elicitation”, clearly listed all the issues that affect the requirement elicitation phase of software development. According to their research, the requirement elicitation phase suffers from issues dealing with the improper detailing of scope of the system. The communication between the various people involved in developing the system also is causing major problems, since requirement elicitation highly involves with collection of information related to the system. The next major issue listed deals with the volatile nature of the requirements. The paper implies that if these problems are not taken seriously, it might lead to a poor requirement and also the end result may be a failure. 2.3 Communication problems in requirements engineering Al-Rawas et al. explains about the problems of communication between disparate communities involved in the requirements specification activities [1]. The requirements engineering phase of software development projects is characterized by the intensity and importance of communication activities. During this phase, the various stakeholders must be able to communicate
  • 32. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 4 their requirements to the analysts, and the analysts need to be able to communicate the specifications they generate back to the stakeholders for validation. The results of this study are discussed in terms of their relation to three major communication barriers ineffectiveness of the current communication channels, restrictions on expressiveness imposed by notations, social and organizational barriers. The results confirm that organizational and social issues have great influence on the effectiveness of communication. They also show that in general, end-users find the notations used by software practitioners to model their requirements difficult to understand and validate. 2.4 Revisiting ontology-based requirements engineering in the age of the semantic web systems Dobson G, Sawyer P , in “Revisiting ontology-based requirements engineering in the age of the semantic web”, propose usage of dependability ontology compliant with the IFIP Working Group 10.4 taxonomy and discuss how this, and other ontologies, must interact in the course of Dependability Requirements Engineering. In particular usage of the links between the dependability ontology, ontology for requirements and domain ontologies, identifying the advantages and difficulties involved are discussed in detail. Ontology is generally based upon some logical formalism, and has the benefits for requirements of explicitly modeling domain knowledge in a machine interpretable way, e.g. allowing requirements to be traced and checked for consistency by an inference engine, and software specifications to be derived. With the emergence of the semantic web, the interest in ontologies for Requirements Engineering is on the increase. Lots of research has been concentrated upon re-interpreting software engineering techniques for the semantic web. Usage of ontology is proved to be highly beneficial for requirement engineering processes. 3. METHODOLOGY In software development requirement refinement is an important process. It has a tremendous impact on all its software development phases. Though a lot of research is involved in the area of solving the various issues affecting the requirement engineering, few issues remain unsolved. The common issues that haunt the requirement elicitation phase include problems concerned with areas of scope, volatility, communication, traceability [4]. Defining the scope of the system plays the major role in developing any new system. Hence solving the scope issues is highly necessary. The requirements of the customers are prone to changes throughout the development of the system which is generally referred as the volatility issue. Developing a system involves a wide class of people and hence
  • 33. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 5 communication plays a major role. Any fault that arises in developing the system as a result of mistaken communication is referred as communication issues. Any issues that affect describing and following a requirement in both forward and backward direction are referred as traceability issues. In order to overcome these issues a system consisting of a multi-viewed approach is proposed. The system integrates two views for representing the perspective of different stakeholders. Ontologies and controlled natural languages are used for this purpose. Thus, the proposed technique provides a way for dealing with the various issues affecting requirement engineering. In this paper , we propose a comprehensive approach for dealing with the various issues affecting the requirement elicitation process. The requirement document is analyzed and split in to individual tokens. The tokens are used to extract only the required relevant terms involved in the document. The tokens are used as a base for construction of the ontology. The requirement document is next represented in terms of controlled natural language .The controlled natural language representation also extracts only the key terms involved. Both the representations show the relationship among the objects that are extracted. The similarities between the two representations are measured to verify the level of accuracy. Figure 1. Overall process of integrating ontology and CNL Figure 1 represents the process involved in designing the multi viewed approach consisting of ontology and control natural language. The ontological view of requirements document involves representing the requirement document in terms of concepts and relations among them. The process also involves tagging of the requirement in prior to the construction of the ontology.
  • 34. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 6 The CNL view of requirements involves representing the document through restricted vocabulary. This representation enables to clearly establish the relationships among the identified objects through a restricted vocabulary. The mapping of the ontology representation and the CNL representation is performed with the help of v-doc and GMO algorithm. The level of similarity is noted. 3.1 Ontological view of requirement The requirement document is represented in terms of ontology. Ontology formally represents knowledge as a set of concepts within a domain, and the relationships between pairs of concepts. Ontologies are used to model a domain and support reasoning about entities. Ontology provides shared vocabulary and taxonomy which models a domain with the definition of objects/concepts, as well as their properties and relations. Ontologies are the structural frameworks for organizing information and are used in artificial intelligence, the Semantic Web, systems engineering, software engineering, informatics, library, enterprise bookmarking, and information architecture as a form of knowledge representation about the world or some part of it. The creation of domain ontologies is also fundamental to the definition and use of an enterprise architecture framework. Model for describing the world that consists of a set of types, properties, and relationship types. There is also generally a view that the feature of the model in ontology closely resembles the real world. The first step in representing the requirement document as ontology may require tagging the parts of speech in the document. The tagging is performed with the help of a tool called POS Tagger. The POS Tagger does the process of marking up a word in a text (corpus) as corresponding to a particular part of speech. Once the tagging is completed, the ontology can be constructed. Formally it can be said that ontology is a statement of a logical theory. Ontologies are often equated with taxonomic hierarchies of classes without class definition and the subsumption relation. Ontologies need not to be limited to these forms. Ontologies are also not limited to conservative definitions, that is, definitions in the traditional logic sense that only introduce terminology and do not add any knowledge about the world. To specify a conceptualization, one needs to state axioms that do constrain the possible interpretations for the defined terms. The construction of ontology starts with identifying the concepts. Concept represents a set of entities within a domain. Relations are constructed next and it specifies the interaction among concepts involved. Ontology of a program is obtained by defining a set of representational terms. In such ontology, definitions associate the names of entities in the universe of discourse (e.g. classes, relations, functions, or other objects)
  • 35. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 7 with human readable text describing what the names mean, and formal axioms that constraint the interpretation and well-formed use of these terms. The ontologies can be designed on the basis of domain document. This consists of 3 steps: 1. Tokenization is done by Stanford pos tagger which reads the text document and assign the parts of speech to each word such as noun, verb, adjectives, etc.(figure 2) 2. The isolation of individual tokens shows the number of nouns, verbs, adjectives in the domain document. 3. Based on the Nouns, verbs and adjectives, the concepts involved are identified. 4. Ontology can be created by using the protégé tool based on the concepts identified. (figure 3) Figure 2. Tokenization
  • 36. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 8 Figure 3. Construction of ontology 3.2 CNL view of requirements A sample requirement document is considered. The requirement document will be in ordinary English which has no rules and semantics to make it understandable by the system we convert that into controlled natural language. CNL refers to controlled natural language that are subsets of natural languages, obtained by restricting the grammar and vocabulary in order to reduce or eliminate ambiguity and complexity that enable reliable automatic semantic analysis of a language A tool called Fluent Editor is used to provide a platform for constructing the required CNL. We use Controlled English as the knowledge modeling language. Supported by a suitable Editor, it prohibits one from entering any sentence that is grammatically or morphologically incorrect and actively helps in correcting any error. The Controlled English is a subset of Standard English with restricted grammar and vocabulary; in order to reduce the ambiguity and complexity inherent in full English. The relationships between the various objects involved in the domain are established. A taxonomy tree is also displayed representing the objects hierarchically. A taxonomy tree is constructed with four important parts. They are “thing” which shows “is a” relationship between concepts and relations. The “nothing” shows concepts that cannot have any instances. The “relations” that shows hierarchy of information about the relation between concepts and/or the instances. And finally “attributes” that shows the hierarchy of attributes. Modal expressions are constructed using must, should, can, must not, should not, and cannot. Similarly complex expressions can also be constructed. There are 4 steps:
  • 37. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 9 1. The domain document is represented in terms of Controlled English which is a subset of Standard English with restricted grammar and vocabulary in order to reduce the ambiguity and complexity inherent in full English.(Fig 4) 2. The CNL phrases for every corresponding OWL statements are created using a CNL editor. 3. Modality is enabled to create modal expressions that are used to express relationship in CNL. 4. Complex sentences as well as simple sentences can be created using the CNL editor. Figure 4. Construction of CNL 3.3 Mapping of ontology and CNL The mapping of the CNL and ontology are performed, after both representations are constructed completely. The objective of this module is to measure the level of similarity that is established between the two forms of representation. The obtained CNL is extracted as objects and relationships. The obtained objects are written on to a separate file. The objects obtained from ontology are kept on a separate file manually. The mapping of the two representations are performed through a program as well as verified by a tool. The program is used to extract the objects and the relationship that exist between them. The first part of program deals the extraction of the objects and relationship between the objects. The program
  • 38. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 10 consists of pre defined relationships. The extracted objects and relationships from the OWL file is compared with the pre defined relationships that are already entered. After extraction, the mapping of the extracted data is performed. If the objects and relationship match, a positive output is obtained stating “ontology matching”. If the objects and relationships don’t match, a similar output stating “ontology not matching” is obtained. The mapping involves the usage of V-Doc algorithm and the GMO algorithm. The v-doc constructs virtual documents for each entity in the ontologies and use Vector Space Model to compute similarities between the virtual documents. The GMO algorithm is a novel graph matching algorithm. The mapping of the ontology representation and the CNL representation is performed with the help of v-doc and GMO algorithm. The level of similarity is noted. The steps are 1. Relationship and objects that exists in the ontological view of representation is extracted. 2. Relationship and objects that exists in the CNL view of representation is extracted. 3. The extracted relationships and objects are placed in individual files. 4. A program is used to check the level of similarity between the objects that are extracted. 5. Tool based verification is further performed. Figure 5. Matching OWL files
  • 39. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 11 Thus, the tool based verification of matching is shown if Figure 5. The ontology1 column shows the list of objects in OWL file for ontology .The ontology2 column shows the list of objects in OWL file for CNL. The similarity column shows the level of similarity between the two OWL files. 4. CONCLUSION As for as software development is concerned, requirement elicitation is an important process. The existing system used single view approach, thus failing to deal with the lot of issues affecting requirements engineering. Therefore a technique is proposed to refine the requirements by integrating ontology and controlled natural language, thus providing a multi viewed approach. The ontological view is mapped with the controlled natural language view to calculate the level of similarity. Thus, usage of a multi viewed approach helps in resolving most of the issues affecting the requirement elicitation process. The proposed process provides a simple and useful Traceability scheme. Refining the requirements provides a lot of advantages and reduces a lot of cost in building the system. The research on the area of RE has grown fast in the last few years. In spite of this fact, there are still open issues. In our work we initially identified such issues and investigated the main existent initiatives that are addressing them. Further, the work can be improvised by exploring the full potential of ontologies, thus improving quality of the knowledge base. 5. REFERENCES [1] Al-Rawas, A., Easterbrook, S. Communication problems in requirements engineering- a field study.(1996) [2] Egyed, A., A scenario-driven approach to trace dependency analysis. IEEE trans software engineering., 29(2) (2003), 11632. [3] Denny Vrandecic., York Sure. An approach to the automatic evaluation of ontologies. Journal of Applied Ontology, 3, (1-2), (2008), seiten 41-62. [4] Christel, M., Kang, K. Issues in requirement elicitation. IEEE trans software engineering., 78(2) (2005), 156-198 [5] Dobson, G., Sawyer, P. Revisiting ontology-based requirements engineering in the age of the semantic web. Dependable requirements engineering of computerised systems at NPPs, (2006) [6] Mellor, S. MDA distilled: principles of model driven Architecture. Addison-Wesley Professional, (2004) [7] http://www.protege.com. [8] http://xobjects.seu.edu.cn/project/falcon/falcon.html
  • 40. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 1 Modified Colonial Competitive Algorithm: An Approach for Graph Coloring Problem Hojjat Emami Computer Engineering Department, Islamic Azad University, Miyandoab Branch Miyandoab, Iran Parvaneh Hasanzadeh Computer Engineering Department, Islamic Azad University, Miyandoab Branch Miyandoab, Iran ABSTRACT This paper describes a modified version of colonial competitive algorithm and how it is used to solve graph coloring problem (GCP). Colonial competitive algorithm (CCA) is a meta-heuristic optimization and stochastic search technique that is inspired from socio- political phenomenon of imperialistic competition. CCA has high convergence rate and in optimization problems can reach to global optimum. Graph coloring problem is the process of finding an optimal coloring for any given graph so that adjacent vertices have different colors. Graph coloring problem is an optimization problem.The original CCA algorithm is designed for continuous problems whereas graph coloring problem is a discrete problem. So in this paper we applied some changes in the assimilation and revolution operators of the original CCA algorithm and presented a modified CCA which is called MCCA. The performance of the MCCA algorithm is evaluated on five well-known graph coloring benchmarks. Simulation results demonstrate that MCCA is a feasible and capable algorithm. Keywords Colonial competitive algorithm, graph coloring problem, modified colonial competitive algorithm. 1. INTRODUCTION Graph coloring is a special case of graph labeling. Coloring a graph involves assigning colors for each vertex of graph, so that any two adjacent vertices have different colors. One of the main challenges in the graph coloring problem (GCP) is to find the least number of colors for which there is a valid coloring of the vertices of the graph. Graph coloring problem provides a useful test bed for representing many real world problems including time scheduling, frequency assignment, register allocation, and circuit board testing [1]. The graph coloring problem is a complex and NP-hard problem [2]; therefore many methods have been presented for solving the graph coloring problem. The most common and successful methods that are
  • 41. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 2 introduced for solving graph coloring problem use a conflict minimizing approach as its goals. i.e., given k colors, a coloring is sought which minimizes the number of adjacent vertices bearing the same color. Researchers used various methods for solving graph coloring problem that some of them include meta-heuristic algorithms (such as genetic algorithm [3], particle swarm optimization [4, 5], ant colony optimization [6, 7], and differential evolution [8]), scatter search [9], variable space search [10], learning automata [11], distributed algorithms [12], and some hybrid algorithms [5, 13, 14]. In this paper, we used another meta-heuristic algorithm ⎯colonial competitive algorithm [15] ⎯ to solve graph coloring problem. Colonial competitive algorithm (CCA) is an optimization and search algorithm. This socio-politically algorithm is inspired from imperialistic competition among imperialists and colonies. CCA is a population based evolutionary algorithm and contains two main steps: the movement of the colonies toward their relevant imperialists and the imperialistic competition. CCA has been used in many engineering and optimization tasks. Original CCA is inherently designed for continuous problems whereas graph coloring problem is a discrete problem [15]. So in this paper, a modified discrete version of CCA is proposed to deal with the solution of graph coloring problem. The success of the new proposed method is shown by evaluating its performance on the well-known graph coloring benchmarks. This paper proceeds as follows. Section 2 describes the graph coloring problem. Colonial competitive algorithm is explained in Section 3. Section 4 presents the proposed modified colonial competitive algorithm and how it is used to solve graph coloring problem. Section 5 presents our empirical results and Section 6 concludes the paper and gives an outlook of the future works. 2. GRAPH COLORING PROBLEM (GCP) Graph coloring is an NP-hard problem and is still a very hot research field of topic. Graph coloring problem is a practical method of representing many real world problems such as pattern matching, scheduling, frequency assignment, register allocation, and circuit board testing [1]. In graph theory, graph coloring involves an assignment of labels to elements of a graph subject to certain constraints. In other words, coloring a graph is a way of coloring the vertices of graph so that adjacent vertices have different colors. Generally this process called vertex coloring. There are other forms of graph coloring including edge coloring or face coloring that can be transformed into a vertex coloring problem. A coloring that uses K colors is called a K-coloring. The smallest number of colors required to
  • 42. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 3 color a graph G is called its chromatic number. A minimum coloring of a graph is a coloring that uses as few different colors as possible. Formally the graph coloring problem can be stated as follows: Given an undirected graph G with a set of vertices V, and a set of edges E, (G=(V,E)), a K-Coloring of G consists of assigning a color to each vertex of V such that no two adjacent vertices share the same color. One of the most interesting challenges in the graph coloring problem is to find a correctly coloring that uses exactly the predefined chromatic number of graph [1, 16]. In other words, in coloring process all vertices of graph must be colored with minimal number of colors. Figure 1 shows the coloring process of a simple graph. This graph has 4 vertices and 4 edges. The chromatic number of this graph is 3. (a) (b) Figure 1. A simple example of graph coloring process. (a) Graph G before coloring, (b) Graph G after coloring. 3. COLONIAL COMPETITIVE ALGORITHM (CCA) Colonial competitive algorithm (CCA) was developed by Atashpaz-gargari and et al., and has been applied in various optimization and engineering tasks [15]. CCA is a global search and optimization meta-heuristic that is inspired by the social-political competition. Like other evolutionary algorithms, CCA begins its work with an initial population. In CCA agents in the population are called countries. After computing the cost of these countries by using a cost function, some of the best countries are selected to be the imperialist states and the remaining countries form the colonies of the mentioned imperialists. All colonies of the population are divided among imperialists based on imperialist’s power. The power of countries is conversely related to their cost. The imperialist together with their colonies form some empires. After forming initial empires, the colonies in each empire are start moving toward their relevant imperialist state. This process is a simple simulation of assimilation policy that was pursued by some of the imperialist countries. This movement is shown in Figure 2. In this movement, a colony goes toward the imperialist by a random value which is randomly distributed between 0 and β×d. Where d is the distance between imperialist and the colony, β is a control parameter. θ and x are random numbers with uniform distribution [15]. 1 3 2 4 1 3 2 4
  • 43. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 4 𝑥~𝑈(0, 𝛽 × 𝑑) (1) 𝜃~𝑈(−𝜑, 𝜑) (2) In equation (2), 𝜑 is a random number with uniform distribution. In this paper, 𝛽 and 𝜑 are set to 2 and 𝜋/4 (Rad) respectively. All empires try to take the possession of colonies of other empires and control them. The imperialistic competition gradually brings about an increase in the power of powerful empires and a decrease in the power of weaker empires. In the original CCA, the imperialistic competition is modeled just by picking one of the weakest colonies of the weakest empire and then making a competition among all other empires in order to possess this colony. Figure 2. Motion of a colony toward its relevant imperialist [15] In CCA solution space is modeled as a search space. Each position in the search space is a potential solution of the problem. Moving colonies toward their relevant imperialists and imperialistic competition are the two important operators of the CCA and causes the countries in the solution space converge to a state that is the global optimum and satisfies the problem constraints. CCA has high convergence rate and can often achieve to global optimum. Figure 3 shows the pseudo code of the original CCA. 4. GRAPH COLORING USING MODIFIED COLONIAL COMPETITIVE ALGORITHM The original CCA is designed to solve continuous problems whereas graph coloring problem is a discrete problem. Hence a discrete version of CCA is needed for solving graph coloring problem. This section describes how modified colonial competitive algorithm (MCCA) is used to solve graph coloring problem. The goal of using MCCA to solve graph coloring problem is to find reliable and optimal colorings for graph coloring problem instances.
  • 44. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 5 1. Initialize the empires. 2. Move the colonies toward their relevant imperialist (Assimilation). 3. Randomly change the position of some colonies (Revolution). 4. If there is a colony in an empire which has lower cost than the imperialist, exchange the positions of that colony and the imperialist. 5. Unite the similar empires. 6. Compute the total cost of all empires. 7. Pick the weakest colony (colonies) from the weakest empires and give it (them) to one of the empires (Imperialistic Competition). 8. Eliminate the powerless empires. 9. If termination conditions satisfied, stop, if not go to 2. Figure 3. Pseudo code of the CCA [15] At the beginning, a population of popN countries is generated. If the graph coloring problem instance has n vertices then each country in the initial population will consist of a random permutated list of the integers {1, 2, …, n}. After forming the initial population, the countries have to be assessed according to the cost function explained later. Some of the best countries (countries with least cost value) are selected to be imperialist states and the remaining form the colonies of the mentioned imperialists. Within the main loop of the MCCA, imperialist in each empire, try to attract their colonies toward themselves. Then imperialistic competition begins among empires. During this competition process the weaker imperialists are collapsed whereas powerful imperialists increase their power. The MCCA executes for a fixed number of iterations, where iteration is defined as a cycle of assimilation, revolution, uniting and competition stages. Following subsections describe the attributes of the proposed MCCA method. 4.1 Forming Initial Population The first step in the MCCA as any other population based algorithm, is to create an initial population. This population consists of countries. Each country consists of a permutated list of the integers and indicates a potential solution to the problem. Each integer number in the country denotes a color used for coloring the graph coloring problem instance. In fact if a graph coloring problem instance has n vertices then a country will be a vector of integer numbers with size 1×n. Figure 4.a illustrates the process of creation of initial population using a sample graph with 4 vertices and 4 edges. The chromatic number of this graph is 3. Also Figure 4.b indicates a population of size 4 created for solving the graph indicated in Figure 4.a. In the graph coloring problem, the input is an undirected graph and the output is an optimal coloring (i.e. a permutated list of colors assigned to the vertices of the graph).
  • 45. International Journal of Computer Science and Business Informatics IJCSBI.ORG ISSN: 1694-2108 | Vol. 3, No. 1. JULY 2013 6 Figure 4. Graph Coloring process (creating initial population) 4.2 Cost Function A cost function is used to evaluate the cost of the countries in the population. From optimization viewpoint, a country with lowest cost value is preferable. Here the cost of a country is equal to the total number of color conflicts in it. In other words if two vertices of the graph be adjacent and in the coloring process have the same color then there is a conflict. A simple criterion for cost function can be stated as follows: , , 1 1 , 1 ( ) ( ) ( ) , 0 ( ) ( ) V V i j i j N N i j i j i j i i j C if Color n Color n Cost Country C C if Color n Color n           (3) Where V N is the total number of vertices, ,i jC is a counter variable that keeps the number of conflicts, and ( )i Color n indicates the color of the vertex i. 4.3 Modified Assimilation Operator In the original CCA assimilation operator was designed for continuous problems whereas in the graph coloring problem we deal with a discrete problem. So a modified discrete version of this operator is needed. The goal of assimilation policy is that the colony countries are similar to their relevant imperialists. In this paper this fact is modeled by conveying some random portions of imperialist country to its colonies. Figure 5 shows country 1 3 2 1 2 2country 2 2 1 1 3country 2 3 2 3 4country 1 2 2 3 1 3 2 4 1 1 1 3 2 3 2 2 2 1 1 2 3 3 1 4Vertice s Colors a) Graph with 4 vertices and 4 edges b) Initial population