Menomonie, Wis. – University of Wisconsin-Stout’s 360-degree AI education approach prepares graduates to meet the needs of a rapidly evolving workforce by embedding artificial intelligence training in all of its degree programs. For two groups of applied mathematics and computer science students in an Advanced Machine Learning course, their final projects resulted in a model that could actively impact their institution and another that created a highly competitive AI opponent for a classic board game.
One group built a RAG model – or Retrieval Augmented Generation – to allow students to search the UW-Stout course bulletin in a much more engaging way. Another created a digital version of the board game Othello, using a Monte Carlo Tree Search (MCTS) and a database of top international players to train the model.
“The motivation of the class is for students to pick up a cutting-edge paper, read it, understand it and implement it. Five years from now, when they are in their careers, they’ll know how to read a tech-heavy math paper and translate it into code,” said AMCS Program Director, Professor Seth Dutter. “These are the types of top-tier projects I look to give my students. The experience sets them
apart. That’s polytechnic and gets to the point of UW-Stout.”
The Stout Bulletin RAG
In developing their group project, Tyler Smith, of Rochester; Matthew Peplinski, of Milwaukee; Aaron King, of Rhinelander; and Kyler Nikolai, of Rochester, wanted to create an easy way to gather information about UW-Stout’s courses, degree programs, minors and certifications without having to read through the entire course bulletin.
“We created the Stout Bulletin RAG, which can take any question someone has about Stout’s courses and programs and give them accurate information back within a couple of seconds,” Smith said. “A new student could use the program when applying to Stout to find out what classes and programs are offered, or a current student could use it when scheduling their classes for the next semester. The program actively uses ChatGPT to curate a response that provides the necessary information in a nice way. It also gives ChatGPT more specific information because the data is directly from the current Stout bulletin, so there will be no mistakes in finding old or irrelevant information.”
A RAG model allows the user to describe what they are looking for in sentence form, rather than just by using a single word search. The model consists of three parts, Smith explained: the prompt, the retrieval of data and the response from a LLM, or large language model. The prompt is what the user, like a student, asks the model. The model then searches through the stored data and finds what sentences, paragraphs or documents of text are most similar to the question asked.
“This is determined by an embedding model, which, in short, is a specific model trained to find similarities between text using a vector space,” he said. “The RAG then retrieves the top results of the most similar text and throws it into a new prompt. This prompt has all the details of the question asked, the information retrieved, and any rules in place, so when the model gets an LLM, like ChatGPT, to summarize the information, the LLM will not make up information it does not have.”
Peplinski added that the point of the RAG is to leverage existing LLM models’ reasoning capabilities, utilizing information that it was not trained on. “We used two different AI models in the process, one for the text embedding and one for the summarization,” he said. “The embedding model was used to determine how similar a user’s question is to the information available in our data set. We then pulled the top five most similar bits of information and sent that to the LLM, or ChatGPT, in our case. The LLM was used only to give the summary of the information that we provided it and given strict instruction to not make up false information.”
Peplinski and Smith thought the best part of the project was seeing how thorough their RAG model was during the final class presentation, as it nearly flawlessly answered prompts and challenges given by attendees.
The most challenging part was gathering all of UW-Stout’s program information and automating the data collection process so they would not have to write it out manually.
Smith will graduate this spring and will begin work at Federated Insurance this summer. He feels the project helped prepare him for industry, as many companies already use internal chatbots to search documents. “They are very likely using similar RAG model structures to what we created. So, going
into industry with that knowledge is helpful,” he said.
Dutter agreed, adding, “Companies would benefit from employees who know how to code a RAG. It’s a useful skill to help a company that wants to be able to search for information within its sometimes decades worth of documents.”
Othello AI project
In four days, Nathan LaCrosse, of Portage; Noah Stitgen, of Lodi; Jake Swanson, of Eden Prairie, Minnesota; and Lindsey Redepenning, of Elk River, Minnesota, programmed their digital Othello version from scratch, creating an interface and teaching the AI model parameters of play, how to capture an opponent’s piece, and conditions to win the game. Over the next two weeks of the project, they optimized the game to make the most challenging, hyper-aggressive AI opponent they could.
Download their game at GitHub.
LaCrosse originally wanted to select chess for the group’s project, but they decided on Othello, as it’s a simpler board game that’s easy to watch and play. Also, unlike checkers, Othello cannot end in a draw.
The group used an MCTS, a lightning-fast algorithm used in AI for decision-making processes, particularly in games, to develop their model. It simulated 3,500 Othello games per second. “When the MCTS evaluates a board position, it plays out a bunch of random games and picks the move that statistically leads to a win,” LaCrosse said.
They were challenged by the tree search to make sure it worked properly. “We actually discovered that we had programmed the game incorrectly because the algorithm was finding glitched moves that gave it an unfair advantage,” LaCrosse said.
They later added a neural network to the tree search that studied a database of top French Othello players. They used the database to train the network.
The group enjoyed playing against all the variations of gameplay the model allowed. In the published version, they selected the tree search that had the most unique playstyle, LaCrosse said.
“This project prepared us for industry because it familiarized us with the process of creating a full application, where we had everyone working on different elements of the program and combined it all together in the end,” said LaCrosse, who plans to pursue a Ph.D. in computer science.
UW-Stout, a member of the Universities of Wisconsin, is Wisconsin’s Polytechnic University, with a focus on applied learning, collaboration with business and industry, and career outcomes. Learn more via the FOCUS2030 strategic plan.
