Changbang Li
🎓 Educational Background:
- Current: Pursuing a Bachelor's degree in Computer Science at the School of Computer Science and Engineering, Faculty of Innovation Engineering, Macau University of Science and Technology.
- High School: Linyi No.1 High School, Shandong Province.
🏆 Achievements:
- University:
- Dean's List - Recognized for outstanding academic performance.
- ICT Competition (Cloud Track) - Secured the third place in the preliminary round in Macau and advanced to the finals.
- Nam Kwong Group Academic Scholarship (2022-2023)
- High School:
- Second prize in the National High School Mathematics Joint Competition.
📚 Training Courses:
Specialized Courses:
- HCIA-AI
- HCIA-Cloud Computing
Courses from JHU via Coursera with Certificates:
- Summary Statistics in Public Health
- Hypothesis Testing in Public Health
- Biostatistics in Public Health
- Multiple Regression Analysis in Public Health
- Simple Regression Analysis in Public Health
- Mathematical Biostatistics Boot Camp 2
🌐 Vision:
As I navigate through the academic world, I'm keen to delve deeper into Computer Science. I aim to harness its potential for real-world applications, always seeking opportunities for collaboration and contributing to innovative projects.
If you're interested in connecting for collaborations, discussions, or sharing insights, please feel free to reach out.
Research
Hardware Accelerator for General-Purpose Data-Level Parallelism
Duration: 09/2022-present | Institution: Macau University of Science and Technology | Supervisor: Associate Professor LI, Xianfeng
- Introduced the Data-Level Parallelism Oriented Memory Access (DoMA) mechanism, optimizing memory access patterns.
- Developed Pattern-Aware On-Chip Buffer (PABUF), achieving 6.8x performance improvement over traditional cache methods.
- Current focus on integrating PABUF and DoMA with Chipyard for FPGA board deployment.
Mask Recognition and Detection System
Duration: 02/2023-05/2023 | Institution: Macau University of Science and Technology | Supervisor: Assistant Professor Subrota Kumar Mondal
- Implemented real-time mask detection using YOLOv5 and Faster R-CNN deep learning models.
- Enhanced system performance by 12% with customized model training and data augmentation.
Compiler Construction
Duration: 09/2022-12/2022
- Constructed core components of a compiler including Scanner, Parser, and Semantic Analyzers.
- Designed an efficient system to detect semantic errors and generate intermediate code representations.
Collaborative Editor
Duration: 09/2023-12/2023 | Role: Lead Developer
- Developed a real-time collaborative text editor using technologies such as Node.js, Socket.io, React, ensuring a dynamic and responsive user interface.
- Implemented operational transformation algorithms to maintain document consistency across different user sessions.
- Integrated user authentication and session management, enhancing security and providing personalized editing experiences.
- Optimized the application for performance, efficiently handling multiple concurrent users with minimal latency.
Projects
-
Computing π (CS110 & EIE110 - C Programming 2020 Fall)
Implementation of various formulas in C to compute π, interaction with users, and display of computation results.
Assigned by Zhiyao Liang, Macau University of Science and Technology -
Calendar (CS110/EIE110 - C Programming 2020 Fall)
Development of a C program to print calendars, interact with users, record holidays, and provide detailed calendar functionalities.
Assigned by Zhiyao Liang, Macau University of Science and Technology -
String Functions (CS110/EIE110/LP101 - C Programming 2020 Fall)
Development of a C program for various string operations including encryption, decryption, and user interactions using multiple source files.
Instructed by Zhiyao Liang, Macau University of Science and Technology -
Math (CS110/EIE110/LP101 - C Programming 2020 Fall)
Development of a C program focused on fundamental arithmetic operations and matrix multiplication. The program facilitates user interaction for solving and creating arithmetic problems, file operations, and dynamic memory management using multiple source files.
Instructed by Zhiyao Liang, Macau University of Science and Technology -
Knowledge Items of C++ (Part 1) (C++: CS111 EIE111 LP104 - MUST 2021
Spring)
A comprehensive exploration of C++ fundamentals, ensuring proficiency in various aspects of the language. The program evaluates your understanding of different C++ concepts and emphasizes the contrast between C and C++.
Instructed by Zhiyao Liang, Macau University of Science and Technology -
C++ Fundamentals (C++: CS111 EIE111 LP104 - MUST 2021 Spring)
Deep dive into C++ principles, highlighting the advanced object-oriented and template-based features. This exploration underscores the nuances and advantages of C++ over its predecessor, C, particularly in areas of memory management, polymorphism, and exception handling.
Instructed by Zhiyao Liang, Macau University of Science and Technology -
Lab Project: Improved Recursion and Insertion Sort(Risc-V Assembly)(CS230/CS231
Computer Organization)
1. Fib with Improved Recursion: Run the current implementation of fib with an input of 20, obtain its instruction statistics (assume N1 instructions in total). Identify the inefficiency in the current fib implementation and make improvements. Run the improved fib (named fib2.asm) with the same input and obtain its instruction statistics (assume N2 instructions in total). Calculate the improvement ratio as N1/N2 (rounded to an integer).
2. Insertion Sort (isort): Locate the appropriate position in the sorted part on the left and insert x, ensuring that elements to the left of x are all smaller or equal to x, and elements to the right of x are larger. Repeat this process until all elements are sorted. Implement the recursive version of isort (named isort.asm) and input a sequence of characters from a-z (no duplicates) on the console. Use the given sequences to run isort.asm and observe the output, verifying its accuracy. Obtain instruction statistics for isort.asm for the provided sequences.
Instructed by Xianfeng Li, Macau University of Science and Technology -
Implementation of RV32I Single-Cycle Processor (CS230/CS231 Computer
Organization)
Directed towards the design and implementation of datapath components in an RV32I single-cycle processor. The project encompasses various functional units such as PCSel, RegW, ImmSel, Op1Sel, Op2Sel, BrUn, ALUctr, BrEq, BrLT, MemRW, WBSel, and an integrated control logic (decoder).
Instructed by Xianfeng Li, Macau University of Science and Technology. -
Characterizing and Detecting Bugs in WeChat Mini-Programs
This research delves into the challenges and bugs associated with WeChat mini-programs. With over 400 million users interacting with these mini-programs daily, this study aims to identify and rectify the common issues related to execution environment, lifecycle management, and asynchronous mechanisms. The research highlights the prevalence of bugs, termed WeBugs, and introduces WeDetector, a tool designed to detect three types of these error patterns. This empirical study not only analyzes the root causes and impacts of WeBugs but also proposes various strategies to mitigate them.
Instructed by Rubing Huang, Macau University of Science and Technology. -
Final Lab Project(Network)
This project delves deep into the intricate design and configuration of network topologies. Utilizing Cisco Packet Tracer version 8.1.1, students are tasked with creating a comprehensive network layout, ensuring the seamless integration of public and private IP addresses. Address allocation guidelines are meticulously detailed, contingent upon student numbers. The emphasis is placed on both the theoretical understanding and practical application of networking principles.
Conducted at Macau University of Science and Technology. -
Optimal Sample Selection - Group Project (CS105/CS360/SE360 Artificial
Intelligence)
This project focuses on the intricate task of optimally selecting samples from a vast expanse of data. Given the surge in data generation, it has become imperative to devise methods that not only efficiently extract useful subsets of data but also ensure that these subsets are unbiased and representational. Students delve into various methodologies, one of which involves selecting any \( n \) samples out of a given \( m \) samples, further optimizing these selections based on specific conditions.
Instructed by Cheang, Chak Fong, Macau University of Science and Technology. -
Simple App Development - Project
This project revolves around the creation of a straightforward application, boasting functionalities such as a text unit for display and a numeric input keyboard. As users key in the relevant numbers, the application is designed to reflect this input within its text unit. A pivotal feature involves the 'send' button, which, upon being clicked, ensures the numbers showcased within the text unit are stored within the phone's physical storage address. A significant highlight is the app's capability to detect and prompt when numbers diverging from an 8 or 13-digit format are entered, preventing their storage.
Instructed by Ben Ye, Macau University of Science and Technology. -
Online Collaborative Editor
Design and development of an innovative online collaborative editor, tailored to facilitate multiple users as they engage in real-time, synchronized document editing. The essence of this project lies in harnessing the prowess of socket programming, ensuring seamless communication amongst users. This guarantees instantaneous text synchronization and a harmonized editing experience.
Instructed by Ling Zhou, Macau University of Science and Technology.
Technical Skills
- C: Proficient in developing efficient algorithms, data structure implementations, and system programming.
- C++: Skilled in object-oriented programming, templates, and STL. Familiar with modern C++ standards (C++11/14/17).
- Python: Experience in scripting, data processing, and leveraging libraries such as NumPy and pandas. Familiar with frameworks like Flask and Django for web development.
- Verilog: Advanced expertise with over 400K+ lines of Verilog code written for various complex projects.
- FPGA (XCZU15EG-2FFVB1156I): Hands-on experience with this specific Xilinx FPGA board.
- Xilinx Vivado: Competent in using Vivado for hardware design on Xilinx FPGA platforms.
- Scala & Chisel (Chipyard): Proficient in using Scala and Chisel within the Chipyard framework for flexible hardware design.
- Ubuntu: Proficient in system operations, shell scripting, and administrative tasks in Linux.
- Frameworks: Familiar with popular deep learning frameworks such as TensorFlow, PyTorch, and Keras.
- Object Detection Models: Proficient in implementing and training state-of-the-art detection models including Yolov5 and Faster R-CNN.
- Applications: Extensive experience in projects related to real-time object detection, image classification, and data augmentation techniques.
Hobbies
- Go (Weiqi): Holding an amateur 3-dan rank, I am passionate about participating in local Go tournaments and continually challenge myself to improve.
- Astronomy: Owning a personal telescope, I cherish the clear nights when I can observe planets and deep-space objects, unveiling the mysteries of the cosmos.
- Drone Photography: I relish capturing nature's wonders and cityscapes from unique aerial perspectives, exploring vistas usually reserved for birds.
- Technology Exploration: Driven by ceaseless curiosity, I am always eager to delve into emerging technologies, whether it's immersing in a VR world or experimenting with powerful AI models. I stay abreast of the latest in tech innovations.
- Cycling: Pedaling through city corners or countryside trails, I find solace in the freedom of cycling, connecting with nature, and the rhythm of each ride.
- Basketball: On the court, I enjoy every breakthrough, every assist, and the collaborative spirit of playing alongside teammates, striving for victory.
Contact Me
If you have any questions or would like to connect, please feel free to reach out.
- Email: lichangbang0124@gmail.com
- Phone: +86 15653900176
