Claire’s Status Report for 2/7

This week I presented our team’s Project Proposal Presentation. I also peer reviewed other team’s and got inspiration on how to better design our project and measure the success of what we have built. For example, from the team building a smaller, more affordable version of concert lights I learned that that angle of our LEDs might matter and we can actually measure the degrees of tilt. I also compiled our parts list and some backups for the parts we want. Unfortunately, it doesn’t look like we will be able to take any from the inventory but our team has more than enough of our budget left so I don’t think this will be an issue for us.

Our progress is on schedule. In the next week I hope to actually order the LEDs and Arduino Uno 3 that I need to make the LED system and actually develop some code that can index into the LEDs so I can immediately test them when they arrive.

Yoyo’s Status Report for 2/7

This week I drew the cad drawing for the chinese chess pieces. There are 11 different kind of pieces with different chinese characters on them, we also plan to put the english translation of each chinese character on them, so that it’s easier for user to learn. I have all 11 pieces drawn out, there are 3 of them that I still need to refine a bit because they are in Traditional Chinese and the font I’m using doesn’t support that, e.g. chariot.

The next step about these pieces is to print them out, preferably after we have chosen the size of the board so I can test if the details in the CAD drawing can be printed out nicely. Also, computer vision testing will need those printed pieces as well.

I also started on the computer vision part. I have to learn it from scratch so it’s taking me some time. But I have started writing code and will be testing it out with the camera, chess pieces, and the board later.

I did a portion of the chess board design by myself, but I will need to discuss with my group members more next monday to finalize some details.

I am on schedule with the chess pieces design and the computer vision part. I am a tiny bit behind on the chess board design part but can definitely catch up next Monday. I will be printing out chess pieces, cutting out chess board, and doing more of the computer vision part next week.

Charlie’s Status Report for 1/31

For this week, I have started the implementation and system level design for the Chinese Chess (Xiangqi) guided engine using the Rust programming language. The primary focus this week was on creating a solid backend infrastructure that emphasizes correctness, performance, and extendability for the upcoming AI-guided functionalities.

I have designed and implemented the board state representation by utilizing a constant size array, which enables constant time and cache-efficient access to the pieces on the board. Additionally, I have implemented the rule validation part, which ensures legal moves, captures, blocking, and specific rules for different pieces. Lastly, I have implemented the complete move generation logic for all types of pieces, which ensures correctness according to Chinese Chess rules, such as palace rules, river rules, and cannon rules. Alongside this, I have conducted some research on the move generation strategy, where I have compared different strategies such as traditional search-based methods like minimax, alpha-beta pruning, and inference-based methods.

My progress this week has been on track, and all the planned foundational components, such as board state representation, rule validation, and basic move generation, have been implemented as planned, providing a solid foundation for the upcoming implementation.

For the upcoming week, I will be implementing the full game state management, which includes turn management, move history, and terminal state detection, such as check, checkmate, and draw states. Alongside this, I will be implementing the search-based move generation framework and integrating it with the existing rule validation system.