Jump to content

Algorithms

From UBC Wiki
Algorithms vs. artificial intelligence vs. machine learning vs. deep learning (Author: Johannes Vrana, CC BY-ND 4.0)

Compiled by

Updated

See also

Introduction

An algorithm is a set of specific instructions and rules designed to perform a task or solve a specific problem. An algorithm can be described as a step-by-step procedure that takes an input, processes it, and produces an output. Algorithms are used in computer science and related fields such as mathematics, artificial intelligence (AI) and data science; they are the foundation of artificial intelligence (AI) and machine learning, and represent automated instructions used to develop systems that perform tasks such as image recognition, natural language processing, and decision-making.

Data structures help to manage how data is stored and accessed — and algorithms focus on processing that data. Search algorithms are used to locate specific information within large sets of data. There are various kinds of search algorithms (ie., Google's Pagerank), each with its own approach and efficiency.

Library use of algorithms

Libraries use algorithms in various ways — i.e., to improve information discovery, rank search results in catalogues and databases; perform automated indexing; to enhance efficiency and user experience in recommendation systems, and collections management. OCLC WorldCat uses ranking algorithms to order search results based on relevance, popularity, and library holdings. PubMed’s Best Match algorithm applies machine learning to prioritize citations most relevant to the user’s query. Library discovery layers (e.g., Ex Libris Primo, EBSCO Discovery Service) use recommender algorithms to suggest related books and articles. Automated indexing tools, such as those in MEDLINE or FAST ([Faceted Application of Subject Terminology), rely on algorithms to assign controlled terms to papers.

Presentation

Note: In 825 AD, Persian scientist and polymath Muḥammad ibn Mūsā al-Khwārizmī wrote kitāb al-ḥisāb al-hindī ("Book of Indian computation") and kitab al-jam' wa'l-tafriq al-ḥisāb al-hindī ("Addition and subtraction in Indian arithmetic"). Algorithm is the Latinization of his surname. This video is meant to be for informational purposes only. Any claims of the video should be tested for accuracy and verified.

Types of Algorithms

There are several types of algorithms, each suited for different kinds of problems:

  • Brute force algorithm: simplest approach, trying all possible solutions;
  • Recursive algorithm: solves problems by breaking them into smaller sub-problems;
  • Backtracking algorithm: finds solutions and abandons them if they fail to meet criteria;
  • Searching algorithm: used to search within data structures; mapping to terms;
  • Sorting algorithm: arranges data in a particular order;
  • Hashing algorithm: uses a key to index data for quick retrieval;
  • Divide and conquer algorithm: breaks a problem into sub-problems, solves them, and combines results;
  • Greedy algorithm: builds a solution piece by piece, choosing most beneficial option at each step;
  • Dynamic programming algorithm: solves problems by breaking them into overlapping sub-problems and storing results;
  • Randomized algorithm: uses random numbers to influence the path of execution.

Algorithmic literacy

According to Cox (2024), "...algorithm literacy can thus be defined as being aware of the use of algorithms in online applications, platforms, and services, knowing how algorithms work, being able to critically evaluate algorithmic decision-making as well as having the skills to cope with or even influence algorithmic operations."

Cox outlines some knowledge and skills in the area of AL:

  • Understand and reason about algorithms and their processes;
  • Recognize and interpret their use in systems (whether embedded or overt);
  • Create and apply algorithmic techniques and tools to problems in a variety of domains;
  • Assess the influence and effect of algorithms in social, cultural, economic, and political contexts;
  • Position the individual as a co-constituent in algorithmic decision-making.

Algorithmic indexing

Automated indexing in MEDLINE is also referred to as algorithmic indexing (see Amar-Zifkin et al (2025)). In the MTI, algorithms are key in the indexing workflow at NLM. In 2022, front line indexing for all MEDLINE records was performed by the MTIA, with humans limiting their curation to sets involving genes and proteins. In 2025, the NLM uses the MTIX which is based on neural networks technology.

References

Disclaimer

  • Note: Please use your critical reading skills while reading entries. No warranties, implied or actual, are granted for any health or medical search or AI information obtained while using these pages. Check with your librarian for more contextual, accurate information.