You are the owner of this article.
You have permission to edit this article.

Democratizing carpentry: UW computer scientists innovate the future of woodworking

  • Updated
  • 0
  • 2 min to read
Democratizing carpentry: UW computer scientists innovate the future of woodworking 1

Courtesy of Chandrakana Nandi

For centuries, people have relied on carpenters to get their furniture made, but a group of researchers from the College of Engineering built a computer program that allows everyone to be their own carpenter.

“Carpentry Compiler” is a digital tool that helps users design their own wooden objects. Based on the structure of the design, the compiler gives the user the best instructions on how to build the product from scratch.

The research was led by assistant professor of computer science Adriana Schulz, fifth-year graduate student Chandrakana Nandi, and their team from the departments of computer science and mechanical engineering.

Schulz said that the hardest aspect of woodworking is figuring out how to turn a design into a 3D product. While one project may have “millions of solutions,” the optimal one saves material, saves time, and measures accurately.

The role of the Carpentry Compiler is to find the best construction method for the user, but the process has proved to be “computationally very expensive” because of the multidimensional space that it operates in. In essence, the system has to compute how viable each solution is and compare it with the other millions.

“There are so many decisions and different layers to choose from,” Schultz said. “The space is very large … it would take a lot of machine power to figure that out.”

To illustrate the process, Nandi gave an example of building a chair. The maker first draws the model on the compiler’s interface, which then takes the drawing and writes a guideline on how the chair is made. However, if the maker doesn’t have enough tools, the system has to compute a new set of solutions that meet these constraints.

“Maybe you only have a chop saw, or a jigsaw, or a table saw,” Nandi said. “There are lots of constraints that you have to take into consideration when you are producing the instructions. Solving all those constraints is a challenging problem.”

But how does the compiler convert a drawing to a guideline? 

Nandi said the technology behind the “magic” is the “Hardware Extensible Languages for Manufacturing” (HELM), which includes two languages that bridge design and manufacturing: a high-level language for design allowing designers to focus on the visual construction and a low-level language for the fabrication, giving step-by-step instructions of the most optimal process.

Democratizing carpentry: UW computer scientists innovate the future of woodworking 2

Courtesy of Chandrakana Nandi

“In the high-level language, we mean something that is very abstract, so it hides a lot of the details from the person who is writing in this language,” Nandi said. “In traditional computer science, you can imagine Java being the high-level language.” 

Schulz said that HELM is what makes the system a “breakthrough” because the technology can be extended to other materials, such as metal or foam. In the future, she envisions that HELM not only democratizes woodworking, but also other fabrication processes. 

Looking forward, the researchers hope that Carpentry Compiler can empower the next generation of makers to create novel woodwork projects. Students can design furniture for their dorm; hobbyists can build their dream house; people with disabilities can build devices that fit their mobility.

“The idea is that anyone has the potential to create anything, no matter where they’re from or what kind of special needs they have,” Schulz said. “Empowering more people to design and create can have a fundamental change in this world. We can make it more accessible, inclusive, and sustainable.”

Reach reporter Anh Nguyen at Twitter: @thedailyanh

Like what you’re reading? Support high-quality student journalism by donating here.

(0) comments

Welcome to the discussion.

Keep it Clean. Please avoid obscene, vulgar, lewd, racist or sexually-oriented language.
Don't Threaten. Threats of harming another person will not be tolerated.
Be Truthful. Don't knowingly lie about anyone or anything.
Be Nice. No racism, sexism or any sort of -ism that is degrading to another person.
Be Proactive. Use the 'Report' link on each comment to let us know of abusive posts.
Share with Us. We'd love to hear eyewitness accounts, the history behind an article.