Boyer-Moore Algorithm: Efficient String-Search Algorithm and its Application in Hiring Process

Verified

Added on  2023/05/30

|8
|1906
|418
AI Summary
This article discusses the Boyer-Moore Algorithm, an efficient string-search algorithm used in practical string-search applications. It explains the algorithm and its two shift functions, bad character heuristic and good suffix heuristic. The article also discusses the types of bias that occur in the hiring process and how bowmo, a software using the Boyer-Moore Algorithm, combats bias in hiring.

Contribute Materials

Your contribution can guide someone’s learning journey. Share your documents today.
Document Page
Running head: COMPUTER SCIENCE
Computer Science
[Name of the Student]
[Name of the University]
[Author note]

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
1COMPUTER SCIENCE
Introduction:
Boyer-Moore String-Search algorithm is considered to be one of the most efficient
string searching algorithm which is also considered to be the standard benchmark needed for
conducting practical string-search of the literature. Usage of the algorithm helps in
preprocessing of the strings that are being searched for getting a particular pattern (Boyer &
Moore, 2014). However, this does not include the string that is being searched in. so this type
of algorithm is much suited for the applications where the patterns are seen to be shorter than
the texts or the places where multiple searches persists.
The Boyer-Moore algorithm is associated with the usage of information that are
generally collected at the preprocess phase for the purpose of skipping certain sections of the
text and this initially results in obtaining a constant factor which is lower than most of the
string search algorithms. Particularly it is better to state that this algorithm runs at a much
faster rate and the major reason for this is that the length of the pattern increases gradually
(Rahim et al., 2017). Besides this some of the most important features of this algorithm
includes the matching at the patterns tail instead of matching at the head. Another feature of
this includes the skipping along the text by taking a multiple character jump instead of
searching each and every character present in the text.
Explanation of the Algorithm:
Due to all this reason the Boyer-Moore algorithm can also be defined as the most
efficient string-matching algorithm which is being used by the usual applications. One of the
simplified versions of this algorithm or the most simple version of the entire algorithm. This
is often implemented in text editors in order use some commands like the «search» and
«substitute» command.
Document Page
2COMPUTER SCIENCE
This algorithm is associated with the scanning of certain characters that are present in
the pattern from right to left and this generally begins from the one present at the extreme
right (Angeli et al., 2015). Whenever a mismatch is detected, it makes use of two functions
which precomputed for the purpose of shifting the window to the right. There are two type of
shift functions and these two shift functions are namely the good-suffix shift (also known as
the matching shift and the bad-character shift (also known as the occurrence shift).
Bad character Heuristic: The idea of bad character heuristic is very simple. Bad characters
are those characters which does not match with the characters of the text (Jaiswal, 2014).
Whenever a mismatch occurs shifting of the pattern is done unless and until the mismatch
matches and the pattern P moves past the character which is mismatching.
Case 1: Mismatch becomes a match;
The last place of mismatch occurrence is identified in the pattern provided and in case if the
mismatch character exists in the pattern the shifting of the pattern is done in such a way that it
gets aligned with the mismatching character in the text.
Case 2: When the pattern moves past the mismatching character:
In this type of cases the position of the last mismatching character in the pattern is identified
and in case when the character is not existing then, shifting of the pattern is done past the
mismatching character.
Good suffix Heuristics: this is another variation of the Boyer-Moore algorithm and just like
the bad character heuristic the good character heuristic is also associated with the generation
of a pre-processing table. Let t be the substring of the text T which is to be matched with the
substring of another pattern let it be P (Jeong et al., 2015). followed by this shifting of the
pattern is done until three major criteria are met and this criterion include the following.
Document Page
3COMPUTER SCIENCE
Another occurrence of the t in the P matched with the t in the T
A prefix of the P, which matches with the suffix of the t
P moves past the t.
Type of Bias occurring in the hiring process:
Confirmation bias: This the type of bias which particularly occurs when peoples are
associated with the creation of a hypothesis in their mind and are looking for ways so as
to prove it. This is considered to be an innate tendency which seeks out for confirmation
of the preconceived beliefs.
Effective Heuristics: This term can be considered to be bit technical, however the
meaning lying behind this is very much simple. This type of bias generally happens
whenever an interviewer is associated with judging an individual based upon the
superficial factors which includes the visible tattoos or personal body weight standards
and many more (Domínguez, Carballo & Núñez, 2017). In this case the interviewer might
be associated with taking decisions depending upon the one-dimensional characteristics
and not upon the important ones like the problem-solving skills and many more.
Expectation anchor: this happens when an interviewer is associated with bypassing the
proper investigation regarding the background of the candidate and depends on the
frivolous expectations of the anchors thereby leading to the favouritism of a candidate.
The interviewer is associated with believing the fact that the candidate is more suitable
for the job than the others which initially puts a mental block for the interviewer during
the other interview which is going to be conducted later (Waga, Akazaki & Hasuo, 2016).
Intuition: in case if an interviewer is associated with making of decisions upon the sixth
sense of an individual then the interviewer is intuitively selecting the candidate or is
intuitively rejecting all the other candidates. This generally happens when the candidate’s
information is readily available on hand.

Secure Best Marks with AI Grader

Need help grading? Try our AI Grader for instant feedback on your assignments.
Document Page
4COMPUTER SCIENCE
Boyer-Moore Algorithm in Hiring process:
“bowmo”, is an evolutionary software as a service (SaaS) which has entered the HR
technology in order to eliminate the bias occurring in the process hiring. Elimination of the
bias is generally done for the database and during the process of searching the resumes
(Jeong et al., 2015). This is the software which has is associated with enabling the recruiters
and the hiring managers to search for candidates having specific skills according the job
requirements.
This is technology which makes use of the Boyer-Moore string search algorithm and
besides this by using the concept of this algorithm the technology helps in eliminating the
Human bias. The Boyer-Moore string search algorithm is a benchmark for modern search
engines like Google. bowmo is the software which is associated with finding the right
candidates so as to empower the Hiring Managers to keep outside and corporate recruiters
accountable.
Along with removing of the bias the software “bowmo is associated with enabling the
companies in building up of various kind of talent pools as well this is the software which ca
be integrated very easily and is responsible for seamless matching of the qualified employees
with the jobs which are appropriate for them (Nasution et al., 2018). Usage of this also makes
the recruiters have a clear view without getting stuck due to the information which are
responsible for causing distraction and are irrelevant.
Document Page
5COMPUTER SCIENCE
Conclusion:
The report helps in understanding the fact that the algorithm is not associated with
considering certain factors or using certain factors for the matching the fields and these
factors include the gender, caste, color, race, name sexual orientation or religion. The data
related to EEOC are collected by making use of different systems or applications and this
data are not the data fields required for matching a particular job. Some of the most important
Credentials includes the role that has been played, years of experience, the technical skill and
sometimes education acts as the few of the most relevant criterions. bowmo is one of the
software using the Boyer-Moore String Search Algorithm that is associated with combatting
the bias and making this AI and recruiting convergence a reality.
Document Page
6COMPUTER SCIENCE
References:
Angeli, P., Ginès, P., Wong, F., Bernardi, M., Boyer, T. D., Gerbes, A., ... & Moore, K.
(2015). Diagnosis and management of acute kidney injury in patients with cirrhosis:
revised consensus recommendations of the International Club of Ascites. Gut, gutjnl-
2014.
Boyer, R. S., & Moore, J. S. (2014). A computational logic handbook: Formerly notes and
reports in computer science and applied mathematics. Elsevier.
Domínguez, A., Carballo, P. P., & Núñez, A. (2017, July). Programmable SoC platform for
deep packet inspection using enhanced Boyer-Moore algorithm. In Reconfigurable
Communication-centric Systems-on-Chip (ReCoSoC), 2017 12th International
Symposium on (pp. 1-8). IEEE.
Jaiswal, M. (2014). Accelerating Enhanced Boyer-Moore String Matching Algorithm on
Multicore GPU for Network Security. International Journal of Computer
Applications, 97(1), 30-35.
Jeong, Y., Lee, M., Nam, D., Kim, J. S., & Hwang, S. (2015). High performance
parallelization of Boyer–Moore algorithm on many-core accelerators. Cluster
Computing, 18(3), 1087-1098.
Jeong, Y., Tran, N. P., Lee, M., Nam, D., Kim, J. S., & Hwang, S. (2015). Parallelization and
Performance Optimization of the Boyer-Moore Algorithm on GPU. KIISE
Transactions on Computing Practices, 21(2), 138-143.
Nasution, M. D. T. P., Rossanty, Y., Achmad Daengs, G. S., Sahat, S., Rosmawati, R.,
Kurniasih, N., ... & Kadir, I. A. (2018). Decision support rating system with
Analytical Hierarchy Process method. Int. J. Eng. Technol, 7(2.3), 105-108.

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
7COMPUTER SCIENCE
Rahim, R., Ahmar, A. S., Ardyanti, A. P., & Nofriansyah, D. (2017, December). Visual
Approach of Searching Process using Boyer-Moore Algorithm. In Journal of Physics:
Conference Series (Vol. 930, No. 1, p. 012001). IOP Publishing.
Waga, M., Akazaki, T., & Hasuo, I. (2016, August). A boyer-moore type algorithm for timed
pattern matching. In International Conference on Formal Modeling and Analysis of
Timed Systems (pp. 121-139). Springer, Cham.
1 out of 8
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]

Your All-in-One AI-Powered Toolkit for Academic Success.

Available 24*7 on WhatsApp / Email

[object Object]