CSCI 4511W Intro. to Artificial Intelligence: Final project

This was my final project for CSCI 4511W Intro. to Artificial Intelligence. To explore the fundamental principles behind path planning for non-planar 3D printing, the problem was reduced to two dimensions. In the image shown below, the y-axis lies perpendicular to the build plate, and the x-axis lies parallel to the build plate. A set of 2D toolpaths was created throughout a grid, with each section assigned an orientation angle according to a random walk, simulating slight directional variance common in fibrous biological tissues. The toolpaths were ordered using a hill-climbing search algorithm to minimize inter-toolpath distance. Along each step of the search, available actions were restricted to remaining “printable” toolpaths, which would not result in interference during printing. A final toolpath sequence is shown below, with extruding paths shown in red and non-extruding paths shown in blue. All code was implemented in Python using the aima-python package. The source code and final paper for this project can be found here.