It is safe to say that we have arrived at the point where more areas of our lives are being controlled by algorithms. It is no secret that digital marketing is becoming increasingly dependent on these algorithms for effective copywriting.
Welcome to the world of algorithms. It’s a place where Facebook decides what we see on our timelines. Where search engines serve us based on their own complex ranking system. And e-commerce sites like Amazon and eBay suggest products to us based on our previous purchases. To even write a simple blog article that will be effective like this one, you need to have done your homework to be able to put together relevant content for Google.
So, what does the future hold for the worldwide web? Will there still be a place for human creativity, or should we look to machines for marketing?
What is an Algorithm? And how does it work?
In programming, algorithms are sets of well-defined instructions to complete specific tasks or solve a particular problem. Every computer program that ends with a result is based on an algorithm. The types of algorithms can be endless but here are six fundamental types of algorithms.
Recursive Algorithm
The recursive algorithm is one of the most interesting Algorithms. It occurs when a function calls a copy of itself to work on a smaller problem. Recursion calls itself with a smaller value as inputs that it gets after solving for the current inputs. Simply put, it is an algorithm that calls itself repeatedly until the problem is solved.
Here’s a real-life example of how recursion works:
Hope would like to have lunch with Faith.
She calls Faith
“Hi Faith, would you like to go for lunch in the cafeteria?”
Faith responds, “That’s really cool, but I was hoping to meet with Becky today.” then she adds, “Let me put you on hold and call her.”
Faith calls Becky
“Hi Becky, would you like to go for lunch in the cafeteria?”
Becky responds, “That’s really cool, but I was hoping to meet with Love today.” then she adds, “Let me put you on hold and call her.”
Becky calls Love
“Hi Love, would you like to go for lunch in the cafeteria?”
Love replies, “That’s really cool, but I was hoping to meet with Genevieve today.” She adds, “Let me put you on hold and call them.”
Love calls Genevieve
“Hi Genevieve, would you like to go for lunch in the cafeteria?”
Genevieve replies, “Yes! I’ll meet you at the cafeteria.”
Genevieve hangs up
Love says to Becky, “Yes! I’ll meet you at the cafeteria.”
Love hangs up
Becky says to Faith, “Yes! I’ll meet you at the cafeteria.”
Becky hangs up
Faith says to Hope, “Yes! I’ll meet you at the cafeteria.”
Faith hangs up
Hope is happy. All phone calls are ended, and our friends can go to meet for lunch at the cafeteria.
Divide and Conquer Algorithm
This splits the algorithm into two. The first parts divide the problem on hand into smaller subproblems of the same type. Then, in the second part, these smaller problems are solved and then added together (combined) to produce the problem’s final solution.
A fine real-life example of how this works is when you need to look for something that you have lost around the house. Instead of trying to search the entire house, you can subdivide the problem into smaller parts by looking in each room separately.
Dynamic Programming Algorithm
A dynamic programming algorithm solves complex problems by breaking them into multiple simple subproblems and then it solves each of them once and then stores them for future use. In simpler terms, dynamic programming algorithms work by remembering the results of the past run and using them to find new results. It is used massively in artificial intelligence, machine learning, computer vision, computer networks, graph problems, and routing.
Great real-life examples of dynamic programming algorithms include search engine recommendations, Google maps (in finding the shortest paths between and the series of destinations), edit distance algorithms used in spell checkers, etc.
Greedy Algorithm
These algorithms are used for solving optimization problems. Greedy algorithms allow finding a globally optimal solution for a given problem by making successive locally optimal choices (hence the term greedy). That strategy doesn’t always lead to a global optimum but works for several eminent problems and gives reasonably good approximations for others. The strategy, however, does not always lead to a global optimum, but it works for several well-known problems and gives reasonably good approximations for others.
Here are some common examples of greedy algorithms: Dijkstra’s Algorithm.
Prim and Kruskal algorithms for computing minimal spanning trees.
Huffman (de)coding.
Fractional Knapsack (if you no longer allow breaking items to be stored you have the vanilla Knapsack, a combinatorial optimization problem where the greedy strategy no longer works. You can solve it by means of dynamic programming or memoisation).
5 Components of Greedy Algorithms
- A candidate set from which we try to find a solution.
- A selection function that helps choose the best possible candidate.
- A feasibility function that helps in deciding if the candidate can be used to find a solution.
- An objective function that assigns value to a possible solution or to a partial solution.
- Solution function that tells when we have found a solution to the problem.
Brute Force Algorithm
The brute force algorithm is one of the simplest algorithms in the concept. It blindly iterates all possible solutions to search for one or more than one solution that may solve a function. Think of brute force as using all possible combinations of numbers to open a safe. Like trying every key on a keyboard to find the correct password or login details.
A popular example of a brute force algorithm is a security threat that attempts to guess a password using known common passwords. An algorithm like that might also try dictionary words or even every combination of ASCII strings of a certain length.
Backtracking Algorithm
A backtracking algorithm solves a subproblem, and if it fails to solve the problem, it undoes the last step and starts again to find the solution to the problem.
Some good real-life examples where backtracking algorithms can be used include Puzzles like crosswords, Sudoku, verbal arithmetic, Peg Solitaire, etc.
Generating marketing lines has proven to be one of the first large-scale use cases for text-generation technology. In 2020, OpenAI announced the commercial version of GPT-3, which took software from copywriting services like Jasper, ContentEdge, etc. a leap forward.
Jasper alone claims more than 55,000 paying subscribers, and OpenAI says one competitor has more than 1 million users. WIRED counted 14 companies openly offering marketing tools that can generate content like blog posts, headlines, and press releases using OpenAI’s technology. Their users talk of algorithm-propelled writing as if it will quickly become as ubiquitous as automatic spell-checking.
Jasper can also generate content tuned for Facebook ads, marketing emails, and product descriptions. It’s part of a raft of startups that have adapted a text-generation technology known as GPT-3, from the artificial-intelligence company OpenAI, to feed one of the internet’s oldest urges—to create marketing copy that wins clicks and ranks highly on Google.
Writers maintain that software powered by GPT-3 helps them become better writers and improves the web, by making it easier to create content that is suitable for Google. Ryan Bednar, ContentEdge’s founder, says that his service helps businesses create more useful content and get it to the right people. “Google is the gateway to the internet,” he says. “I don’t view it as gaming the system; we’re trying to empower smaller businesses and writers to get found.”
Although Google’s guidelines for publishers tell them to avoid “automatically generated content intended to manipulate search rankings.” The advice dates from at least 2007, and it was inspired by crude software that attempts to boost a page’s search ranking by adding long lists of keywords or swapping synonyms into text copied from elsewhere. But Danny Sullivan, Google’s public search liaison, says that more sophisticated writing tools that can suggest large chunks of text shouldn’t harm a page’s ranking if used to genuinely help web surfers. “If the primary purpose of the content is for users, it shouldn’t fall afoul of our guidelines,” he says. “If it’s the best and most helpful content, then ideally we would be showing it.”
So, here’s the conclusion of the matter. Whether or not you are in favour of human creativity or intelligence, or machines. The point is that these technologies are here as a result of human intelligence. There is no competition. If you see it as a genuine way to improve your work, then go for it.