<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Zitao Liao</title><link>http://lzteddy.com/</link><description>Recent content on Zitao Liao</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Tue, 19 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="http://lzteddy.com/index.xml" rel="self" type="application/rss+xml"/><item><title>Research Experience</title><link>http://lzteddy.com/p/research-experience/</link><pubDate>Sun, 19 Apr 2026 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/research-experience/</guid><description>&lt;p&gt;This page is now an index. Each research item has been split into an independent post:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a class="link" href="http://lzteddy.com/p/llm-designed-ea-gecco/" &gt;Competition on LLM Designed EA, GECCO&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="http://lzteddy.com/p/easyco-combinatorial-optimization/" &gt;Deep Learning for Combinatorial Optimization and EasyCO&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="http://lzteddy.com/p/videollama2-autonomous-driving-annotation/" &gt;Autonomous Driving Video Annotation with VideoLLaMA2&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Projects</title><link>http://lzteddy.com/p/projects/</link><pubDate>Sat, 18 Apr 2026 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/projects/</guid><description>&lt;p&gt;This page is now an index. Each project has been split into an independent post:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;【Generative AI】&lt;a class="link" href="http://lzteddy.com/p/weibo-personality-analyzer/" &gt;Weibo Personality Analyzer&lt;/a&gt;&lt;br&gt;
GitHub: Public repository link not provided&lt;/li&gt;
&lt;li&gt;【Operating System】&lt;a class="link" href="http://lzteddy.com/p/procfs-filesystem-rust-asterinas/" &gt;ProcFS Filesystem Based on Rust &amp;amp; Asterinas&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a class="link" href="https://github.com/Tsurumalu/OS-ProcFS-Project" target="_blank" rel="noopener"
 &gt;Tsurumalu/OS-ProcFS-Project&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;【Deep Learning】&lt;a class="link" href="http://lzteddy.com/p/intelligent-sanitation-robot/" &gt;Intelligent Sanitation Robot with Deep Learning&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a class="link" href="https://github.com/EpsilonZYJ/NUS-SOC" target="_blank" rel="noopener"
 &gt;EpsilonZYJ/NUS-SOC&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;【Deep Learning】&lt;a class="link" href="http://lzteddy.com/p/jetson-nano-facial-emotion-analysis/" &gt;Real-time Facial Emotion Analysis on Jetson Nano&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a class="link" href="https://github.com/Q-Daisy/Ultra-Light-Fast-Generic-Face-Detector-1MB" target="_blank" rel="noopener"
 &gt;Q-Daisy/Ultra-Light-Fast-Generic-Face-Detector-1MB&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;【MCM】&lt;a class="link" href="http://lzteddy.com/p/mcm-voting-mechanism-optimization/" &gt;Modeling and Optimization of Voting Mechanisms&lt;/a&gt;&lt;br&gt;
GitHub: Public repository link not provided&lt;/li&gt;
&lt;li&gt;【Computer Organization】&lt;a class="link" href="http://lzteddy.com/p/riscv-pipelined-cpu-verilog/" &gt;Pipelined RISC-V CPU Design in Verilog&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a class="link" href="https://github.com/Diaosi1317092/Computer-Organization-Project" target="_blank" rel="noopener"
 &gt;Diaosi1317092/Computer-Organization-Project&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;【Database】&lt;a class="link" href="http://lzteddy.com/p/opengauss-vs-postgresql-benchmark/" &gt;openGauss vs. PostgreSQL Performance Benchmark&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a class="link" href="https://github.com/Tsurumalu/DB-Project3" target="_blank" rel="noopener"
 &gt;Tsurumalu/DB-Project3&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;【Java Programming】&lt;a class="link" href="http://lzteddy.com/p/java-swing-match3-game/" &gt;Java Swing Match-3 Puzzle Game&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a class="link" href="https://github.com/Tsurumalu/3-Match-Java" target="_blank" rel="noopener"
 &gt;Tsurumalu/3-Match-Java&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;【Digital Logic】&lt;a class="link" href="http://lzteddy.com/p/range-hood-fpga-verilog/" &gt;Range Hood FPGA Control System in Verilog&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a class="link" href="https://github.com/Diaosi1317092/Digital-Logic-Project" target="_blank" rel="noopener"
 &gt;Diaosi1317092/Digital-Logic-Project&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;【Machine Learning】&lt;a class="link" href="http://lzteddy.com/p/loan-default-prediction-ml/" &gt;Loan Default Prediction with Machine Learning&lt;/a&gt;&lt;br&gt;
GitHub: Public repository link not provided&lt;/li&gt;
&lt;li&gt;【Computer Network】&lt;a class="link" href="http://lzteddy.com/p/cs305-p2p-file-transfer/" &gt;P2P Reliable File Transfer with Congestion Control&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a class="link" href="https://github.com/Tsurumalu/Computer-Network-Project-P2P" target="_blank" rel="noopener"
 &gt;Tsurumalu/Computer-Network-Project-P2P&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;【Distributed System】&lt;a class="link" href="http://lzteddy.com/p/sustech-merch-store/" &gt;SUSTech Merch Store Microservices&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a class="link" href="https://github.com/Tsurumalu/SUSTech-Merch-Store" target="_blank" rel="noopener"
 &gt;Tsurumalu/SUSTech-Merch-Store&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Competition on LLM Designed EA, GECCO</title><link>http://lzteddy.com/p/llm-designed-ea-gecco/</link><pubDate>Sun, 01 Mar 2026 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/llm-designed-ea-gecco/</guid><description>&lt;h2 id="背景"&gt;背景
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;时间：Mar 2026&lt;/li&gt;
&lt;li&gt;场景：GECCO 相关竞赛，围绕 LLM 设计进化算法。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="方法"&gt;方法
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;基于 LLM4AD 与 Evolution of Heuristics (EoH) 设计自适应多算子进化算法。&lt;/li&gt;
&lt;li&gt;引入 Multi-Armed Bandit (MAB) 模块，用于优化过程中算子自适应选择。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="结果"&gt;结果
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;在 GNBG 基准问题中达到 &lt;strong&gt;17/24&lt;/strong&gt; 的最优结果。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="技术栈"&gt;技术栈
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;LLM4AD&lt;/li&gt;
&lt;li&gt;Evolutionary Algorithm&lt;/li&gt;
&lt;li&gt;Multi-Armed Bandit&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="反思"&gt;反思
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;后续可补充不同算子调度策略在不同问题族上的泛化对比。&lt;/li&gt;
&lt;li&gt;可以增加消融实验，量化 MAB 模块的边际收益。&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Modeling and Optimization of Voting Mechanisms</title><link>http://lzteddy.com/p/mcm-voting-mechanism-optimization/</link><pubDate>Sun, 01 Feb 2026 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/mcm-voting-mechanism-optimization/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: Feb 2026&lt;/li&gt;
&lt;li&gt;Context: Competition project for 2026 MCM.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="github-repository"&gt;GitHub Repository
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Public repository link was not provided for this project.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="highlights"&gt;Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Addressed voting controversies in &amp;ldquo;Dancing with the Stars&amp;rdquo; using a Bayesian inverse estimation framework.&lt;/li&gt;
&lt;li&gt;Built counterfactual simulations and an XGBoost model under the CPISeq framework.&lt;/li&gt;
&lt;li&gt;Proposed a &amp;ldquo;Four-Strike Rank Fusion&amp;rdquo; voting rule to improve fairness in high-conflict scenarios.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;Bayesian Modeling&lt;/li&gt;
&lt;li&gt;XGBoost&lt;/li&gt;
&lt;li&gt;Counterfactual Simulation&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>P2P Reliable File Transfer with Congestion Control</title><link>http://lzteddy.com/p/cs305-p2p-file-transfer/</link><pubDate>Fri, 19 Dec 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/cs305-p2p-file-transfer/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: Dec 2025&lt;/li&gt;
&lt;li&gt;Context: Group course project for SUSTech CS305 (Computer Networks).&lt;/li&gt;
&lt;li&gt;Repository: &lt;a class="link" href="https://github.com/Tsurumalu/Computer-Network-Project-P2P" target="_blank" rel="noopener"
 &gt;Tsurumalu/Computer-Network-Project-P2P&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="goal"&gt;Goal
&lt;/h2&gt;&lt;p&gt;Build a &lt;strong&gt;reliable peer-to-peer (P2P) file transfer application&lt;/strong&gt; on top of &lt;strong&gt;UDP&lt;/strong&gt;. All transport semantics—handshaking, reliable delivery, retransmission, and congestion control—are implemented at the application layer. The system uses a network simulator for testing under packet loss, varying topologies, and peer crashes.&lt;/p&gt;
&lt;h2 id="system-overview"&gt;System Overview
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;File &amp;amp; chunk model:&lt;/strong&gt; Files are split into 512 KiB chunks; each chunk is identified by a SHA-1 hash (20 bytes).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Peer model:&lt;/strong&gt; Each peer holds a fragment (subset) of chunks and can upload to or download from other peers concurrently.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Download flow:&lt;/strong&gt; On a &lt;code&gt;DOWNLOAD&lt;/code&gt; command, a peer discovers missing chunks via &lt;code&gt;WHOHAS&lt;/code&gt; / &lt;code&gt;IHAVE&lt;/code&gt;, requests them with &lt;code&gt;GET&lt;/code&gt;, then reassembles completed chunks into a pickle-serialized fragment file.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Concurrency:&lt;/strong&gt; Single-threaded event loop using &lt;code&gt;select&lt;/code&gt;; multiple chunk downloads from different peers run in parallel, with per-session upload limits enforced via &lt;code&gt;DENIED&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="packet-protocol"&gt;Packet Protocol
&lt;/h2&gt;&lt;p&gt;Custom UDP packets (max 1400 bytes) with header fields for type, length, and sequence/ACK number:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Type&lt;/th&gt;
 &lt;th&gt;Code&lt;/th&gt;
 &lt;th&gt;Role&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;WHOHAS&lt;/td&gt;
 &lt;td&gt;0&lt;/td&gt;
 &lt;td&gt;Query which peers hold requested chunks&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;IHAVE&lt;/td&gt;
 &lt;td&gt;1&lt;/td&gt;
 &lt;td&gt;Reply listing available chunks&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;GET&lt;/td&gt;
 &lt;td&gt;2&lt;/td&gt;
 &lt;td&gt;Request a specific chunk&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;DATA&lt;/td&gt;
 &lt;td&gt;3&lt;/td&gt;
 &lt;td&gt;Transfer chunk payload segments&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;ACK&lt;/td&gt;
 &lt;td&gt;4&lt;/td&gt;
 &lt;td&gt;Acknowledge received segments&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;DENIED&lt;/td&gt;
 &lt;td&gt;5&lt;/td&gt;
 &lt;td&gt;Reject when upload connection limit is reached&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id="implementation-highlights"&gt;Implementation Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reliable data transfer (RDT):&lt;/strong&gt; Per-packet sequence numbers and ACKs; dynamic timeout from RTT estimation (α = 0.15, β = 0.3); timeout-based and fast retransmit (3 duplicate ACKs).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Congestion control (Tahoe-style):&lt;/strong&gt; Slow start and congestion avoidance with &lt;code&gt;cwnd&lt;/code&gt; and &lt;code&gt;ssthresh&lt;/code&gt;; loss triggers window halving and return to slow start. &lt;code&gt;cwnd&lt;/code&gt; history is recorded and plotted with matplotlib for presentation.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Structured codebase:&lt;/strong&gt; Refactored &lt;code&gt;peer.py&lt;/code&gt; with &lt;code&gt;PeerState&lt;/code&gt;, &lt;code&gt;DownloadSession&lt;/code&gt;, &lt;code&gt;UploadSession&lt;/code&gt;, and a &lt;code&gt;Peer&lt;/code&gt; class driving a non-blocking I/O loop.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Robustness:&lt;/strong&gt; Handles concurrent multi-peer downloads, connection limits, peer crashes, and out-of-order segment buffering.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Testing:&lt;/strong&gt; Validated with course-provided pytest suites (handshaking, basic transfer, concurrency, crash scenarios, and advanced topology tests) via &lt;code&gt;grader.py&lt;/code&gt; and the network simulator.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Python 3.12&lt;/li&gt;
&lt;li&gt;UDP (&lt;code&gt;socket&lt;/code&gt;) with &lt;code&gt;select&lt;/code&gt; for single-threaded concurrency&lt;/li&gt;
&lt;li&gt;SHA-1 chunk hashing&lt;/li&gt;
&lt;li&gt;matplotlib (congestion window visualization)&lt;/li&gt;
&lt;li&gt;pytest &amp;amp; network simulator (grading and integration tests)&lt;/li&gt;
&lt;li&gt;Linux / WSL (required runtime environment)&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>ProcFS Filesystem Based on Rust &amp; Asterinas</title><link>http://lzteddy.com/p/procfs-filesystem-rust-asterinas/</link><pubDate>Mon, 01 Dec 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/procfs-filesystem-rust-asterinas/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: Dec 2025&lt;/li&gt;
&lt;li&gt;Context: Main practical assignment for the course &amp;ldquo;Operating System(H)&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="github-repository"&gt;GitHub Repository
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/Tsurumalu/OS-ProcFS-Project" target="_blank" rel="noopener"
 &gt;https://github.com/Tsurumalu/OS-ProcFS-Project&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="highlights"&gt;Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Designed and implemented a ProcFS virtual filesystem for an OS kernel using Rust and the Asterinas framework, with Cargo as the build tool.&lt;/li&gt;
&lt;li&gt;Built ProcFS support for system info files, core syscalls such as getdents64 and newfstatat, per-process details including environ, cmdline, fd, and status, and VirtIO device information.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Rust&lt;/li&gt;
&lt;li&gt;Asterinas&lt;/li&gt;
&lt;li&gt;Cargo&lt;/li&gt;
&lt;li&gt;Operating Systems&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Real-time Facial Emotion Analysis on Jetson Nano</title><link>http://lzteddy.com/p/jetson-nano-facial-emotion-analysis/</link><pubDate>Mon, 01 Dec 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/jetson-nano-facial-emotion-analysis/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: Dec 2025&lt;/li&gt;
&lt;li&gt;Context: Main practical assignment for the course &amp;ldquo;Deep Learning&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="github-repository"&gt;GitHub Repository
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/Q-Daisy/Ultra-Light-Fast-Generic-Face-Detector-1MB" target="_blank" rel="noopener"
 &gt;https://github.com/Q-Daisy/Ultra-Light-Fast-Generic-Face-Detector-1MB&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="highlights"&gt;Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Fine-tuned a lightweight face detection model (CNN with RFB modules) on a custom emotion dataset.&lt;/li&gt;
&lt;li&gt;Deployed the model pipeline on Jetson Nano for edge-side real-time inference.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;CNN&lt;/li&gt;
&lt;li&gt;RFB Module&lt;/li&gt;
&lt;li&gt;Jetson Nano&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>SUSTech Merch Store Microservices</title><link>http://lzteddy.com/p/sustech-merch-store/</link><pubDate>Wed, 01 Oct 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/sustech-merch-store/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: Oct 2025&lt;/li&gt;
&lt;li&gt;Context: Assignment 2 for SUSTech &amp;ldquo;Distributed and Cloud Computing&amp;rdquo; (module: Services &amp;amp; API Architectures).&lt;/li&gt;
&lt;li&gt;Repository: &lt;a class="link" href="https://github.com/Tsurumalu/SUSTech-Merch-Store" target="_blank" rel="noopener"
 &gt;Tsurumalu/SUSTech-Merch-Store&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="goal"&gt;Goal
&lt;/h2&gt;&lt;p&gt;Build a &lt;strong&gt;microservice-based online merch store&lt;/strong&gt; for SUSTech-branded products. The system exposes RESTful APIs to clients, isolates database access behind a gRPC service, and streams operational logs to Kafka through a dedicated logging service—all orchestrated with Docker Compose.&lt;/p&gt;
&lt;h2 id="architecture"&gt;Architecture
&lt;/h2&gt;&lt;p&gt;Three application services run alongside shared infrastructure:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Service&lt;/th&gt;
 &lt;th&gt;Role&lt;/th&gt;
 &lt;th&gt;Protocol / Stack&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;API Service&lt;/td&gt;
 &lt;td&gt;REST gateway, JWT auth, business orchestration&lt;/td&gt;
 &lt;td&gt;Flask, OpenAPI 3.0&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;DB Service&lt;/td&gt;
 &lt;td&gt;User, product, and order persistence&lt;/td&gt;
 &lt;td&gt;gRPC + psycopg2&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;Logging Service&lt;/td&gt;
 &lt;td&gt;Centralized log ingestion&lt;/td&gt;
 &lt;td&gt;gRPC → Kafka&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Infrastructure containers: &lt;strong&gt;PostgreSQL 17&lt;/strong&gt; (persistent storage), &lt;strong&gt;Zookeeper + Kafka&lt;/strong&gt; (log channel &lt;code&gt;log-channel&lt;/code&gt;).&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-fallback" data-lang="fallback"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Client ──HTTP──► API Service ──gRPC──► DB Service ──► PostgreSQL
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └──gRPC──► Logging Service ──► Kafka
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id="rest-api"&gt;REST API
&lt;/h2&gt;&lt;p&gt;Defined in &lt;code&gt;openapi.yaml&lt;/code&gt; and implemented in Flask:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Dialog:&lt;/strong&gt; &lt;code&gt;GET /&lt;/code&gt; greeting endpoint&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;UserManager:&lt;/strong&gt; register, deactivate, get user, update profile, login&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ProductManager:&lt;/strong&gt; list products, get product by ID&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;OrderManager:&lt;/strong&gt; place order, cancel order, get order details&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Protected routes use &lt;strong&gt;JWT&lt;/strong&gt; (&lt;code&gt;Bearer&lt;/code&gt; token, HS256, 24-hour expiration). Authentication failures and key operations are forwarded to the logging service.&lt;/p&gt;
&lt;h2 id="data-model"&gt;Data Model
&lt;/h2&gt;&lt;p&gt;PostgreSQL schema (&lt;code&gt;db-init/init.sql&lt;/code&gt;):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;products:&lt;/strong&gt; SUSTech Hoodie, Water Bottle, Notebook (pre-seeded with stock)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;users:&lt;/strong&gt; &lt;code&gt;sid&lt;/code&gt;, username, email, password hash&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;orders:&lt;/strong&gt; user–product linkage with quantity cap (1–3 per order) and computed &lt;code&gt;total_price&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="implementation-highlights"&gt;Implementation Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Service decomposition:&lt;/strong&gt; API layer never talks to PostgreSQL directly; all DB operations go through the gRPC &lt;code&gt;AssistantService&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Connection pooling:&lt;/strong&gt; DB service uses &lt;code&gt;psycopg2.pool.ThreadedConnectionPool&lt;/code&gt; for concurrent gRPC requests.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Structured logging:&lt;/strong&gt; API service streams &lt;code&gt;LogMessage&lt;/code&gt; events (register, login, order, auth failures) to the logging service, which publishes JSON payloads to Kafka via &lt;code&gt;confluent_kafka&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Containerized deployment:&lt;/strong&gt; &lt;code&gt;compose.yaml&lt;/code&gt; wires &lt;code&gt;api-server&lt;/code&gt;, &lt;code&gt;db-server&lt;/code&gt;, and &lt;code&gt;logging-server&lt;/code&gt; with health-checked Kafka/Zookeeper and volume-backed Postgres init scripts.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dev utilities:&lt;/strong&gt; &lt;code&gt;Makefile&lt;/code&gt; helpers for local &lt;code&gt;psql&lt;/code&gt;, DB reset, and Kafka log streaming.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Python (Flask, gRPC, PyJWT)&lt;/li&gt;
&lt;li&gt;PostgreSQL 17&lt;/li&gt;
&lt;li&gt;Apache Kafka (Confluent Platform 7.7)&lt;/li&gt;
&lt;li&gt;Docker &amp;amp; Docker Compose&lt;/li&gt;
&lt;li&gt;OpenAPI 3.0&lt;/li&gt;
&lt;li&gt;Protocol Buffers (gRPC service definitions)&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Deep Learning for Combinatorial Optimization and EasyCO</title><link>http://lzteddy.com/p/easyco-combinatorial-optimization/</link><pubDate>Mon, 01 Sep 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/easyco-combinatorial-optimization/</guid><description>&lt;h2 id="背景"&gt;背景
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;时间：Sep 2025 - Present&lt;/li&gt;
&lt;li&gt;场景：组合优化问题的深度学习建模与通用求解平台建设。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="方法"&gt;方法
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;探索基于图神经网络的数据表示与特征学习机制。&lt;/li&gt;
&lt;li&gt;与强化学习框架（例如 REINFORCE）结合，设计训练与推理流程。&lt;/li&gt;
&lt;li&gt;参与 EasyCO 开源平台开发，沉淀可复用求解组件。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="结果"&gt;结果
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;形成可支持工业应用场景的通用高效求解器开发路径。&lt;/li&gt;
&lt;li&gt;在平台层面完成了关键模块贡献与工程化集成。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="技术栈"&gt;技术栈
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;Graph Neural Network&lt;/li&gt;
&lt;li&gt;Reinforcement Learning&lt;/li&gt;
&lt;li&gt;EasyCO&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="反思"&gt;反思
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;下一步可强化对大规模实例的可扩展性评估。&lt;/li&gt;
&lt;li&gt;需要进一步完善训练稳定性与推理效率的联合优化策略。&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Intelligent Sanitation Robot with Deep Learning</title><link>http://lzteddy.com/p/intelligent-sanitation-robot/</link><pubDate>Tue, 01 Jul 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/intelligent-sanitation-robot/</guid><description>&lt;img src="http://lzteddy.com/p/intelligent-sanitation-robot/SWS3009_19.jpg" alt="Featured image of post Intelligent Sanitation Robot with Deep Learning" /&gt;&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: Jul 2025&lt;/li&gt;
&lt;li&gt;Context: Main practical assignment in the NUS SoC Summer Workshop Program.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="github-repository"&gt;GitHub Repository
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/EpsilonZYJ/NUS-SOC" target="_blank" rel="noopener"
 &gt;https://github.com/EpsilonZYJ/NUS-SOC&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="highlights"&gt;Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Applied transfer learning on YOLOv7 and designed a parallel multi-object detection pipeline for trash (paper and bottles), cigarettes, violent behavior, and human falls.&lt;/li&gt;
&lt;li&gt;Built a crane-style robotic structure on a robot car with servo-controlled grabbing arms and a launching mechanism.&lt;/li&gt;
&lt;li&gt;Integrated perception and control with Arduino and Raspberry Pi for end-to-end execution on real hardware.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="poster"&gt;Poster
&lt;/h2&gt;&lt;p&gt;&lt;img alt="poster" class="gallery-image" data-flex-basis="169px" data-flex-grow="70" height="9929" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="http://lzteddy.com/p/intelligent-sanitation-robot/SWS3009_19.jpg" srcset="http://lzteddy.com/p/intelligent-sanitation-robot/SWS3009_19_hu_ed55a1fd2c050520.jpg 800w, http://lzteddy.com/p/intelligent-sanitation-robot/SWS3009_19_hu_b57dfecdc3a23d8e.jpg 1600w, http://lzteddy.com/p/intelligent-sanitation-robot/SWS3009_19_hu_93fd7ca2f822436e.jpg 2400w, http://lzteddy.com/p/intelligent-sanitation-robot/SWS3009_19.jpg 7013w" width="7013"&gt;&lt;/p&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;YOLOv7&lt;/li&gt;
&lt;li&gt;Arduino&lt;/li&gt;
&lt;li&gt;Raspberry Pi&lt;/li&gt;
&lt;li&gt;Robotics&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Loan Default Prediction with Machine Learning</title><link>http://lzteddy.com/p/loan-default-prediction-ml/</link><pubDate>Sun, 01 Jun 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/loan-default-prediction-ml/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: Jun 2025&lt;/li&gt;
&lt;li&gt;Context: Machine learning project for loan risk modeling.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="highlights"&gt;Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Built an end-to-end binary classification pipeline for loan default prediction, including preprocessing, feature selection, training, and evaluation.&lt;/li&gt;
&lt;li&gt;Benchmarked Random Forest, Bagging ensemble, and XGBoost under a unified experiment setting.&lt;/li&gt;
&lt;li&gt;Tuned XGBoost hyperparameters and selected it as the final model based on accuracy and training efficiency.&lt;/li&gt;
&lt;li&gt;Generated final predictions for the test set and documented model limitations with practical improvement directions.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;Scikit-learn&lt;/li&gt;
&lt;li&gt;XGBoost&lt;/li&gt;
&lt;li&gt;Feature Engineering&lt;/li&gt;
&lt;li&gt;Binary Classification&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Weibo Personality Analyzer</title><link>http://lzteddy.com/p/weibo-personality-analyzer/</link><pubDate>Fri, 09 May 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/weibo-personality-analyzer/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: May 2026&lt;/li&gt;
&lt;li&gt;Context: CS114 course project.&lt;/li&gt;
&lt;li&gt;Project title: 微博性格分析师：利用生成式AI洞察社交媒体人格&lt;/li&gt;
&lt;li&gt;English title: Weibo Personality Analyzer: Using Generative AI to Gain Insight into Social Media Persona&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="goal"&gt;Goal
&lt;/h2&gt;&lt;p&gt;The project aims to build a web-based tool called &amp;ldquo;Weibo Personality Analyzer&amp;rdquo;. By collecting and analyzing a Weibo user&amp;rsquo;s public posts, the system infers content themes, writing style, and personality-related tendencies from social media text.&lt;/p&gt;
&lt;p&gt;The core role of AI is to use the Qwen large language model to process unstructured Weibo posts, extract linguistic signals, and evaluate whether generative AI can support social media persona analysis in a structured and explainable workflow.&lt;/p&gt;
&lt;h2 id="system-workflow"&gt;System Workflow
&lt;/h2&gt;&lt;ol&gt;
&lt;li&gt;User enters a target Weibo username through the web interface at &lt;code&gt;callitwhatyouwant.cn&lt;/code&gt;(now unavailable).&lt;/li&gt;
&lt;li&gt;The backend launches a Selenium-based scraper through &lt;code&gt;scraper.py&lt;/code&gt;, which simulates browser behavior for more stable data collection.&lt;/li&gt;
&lt;li&gt;The system supports collecting around 50 to 300 public posts.&lt;/li&gt;
&lt;li&gt;Raw posts are cleaned and converted into a structured Markdown file.&lt;/li&gt;
&lt;li&gt;Qwen analyzes the Markdown input and produces a Markdown report.&lt;/li&gt;
&lt;li&gt;The Flask backend formats the result and returns it to the web frontend.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="ai-analysis"&gt;AI Analysis
&lt;/h2&gt;&lt;p&gt;The Qwen LLM is used as the core analysis engine. It receives structured Markdown content and produces analysis across three main dimensions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Content theme modeling: clusters recurring topics and interest areas.&lt;/li&gt;
&lt;li&gt;Writing style analysis: evaluates formality, casualness, emotional tendency, and expression habits.&lt;/li&gt;
&lt;li&gt;Personality inference: maps language features to MBTI-inspired dimensions while avoiding unsupported psychological diagnosis.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="web-application"&gt;Web Application
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Frontend: HTML, CSS, and JavaScript with responsive design.&lt;/li&gt;
&lt;li&gt;Backend: Python Flask routes for request handling, scraper triggering, Qwen API calls, and result formatting.&lt;/li&gt;
&lt;li&gt;Deployment: Tencent Cloud ECS server with the domain &lt;code&gt;callitwhatyouwant.cn&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="prompt-engineering"&gt;Prompt Engineering
&lt;/h2&gt;&lt;p&gt;The prompt design went through several iterations:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Version&lt;/th&gt;
 &lt;th&gt;Prompt Strategy&lt;/th&gt;
 &lt;th&gt;Result&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;V1.0&lt;/td&gt;
 &lt;td&gt;&amp;ldquo;Analyze these Weibo posts: [text]&amp;rdquo;&lt;/td&gt;
 &lt;td&gt;Too general and lacked depth.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;V2.0&lt;/td&gt;
 &lt;td&gt;Asked the model to act as a social media analyst and output theme, style, and personality sections.&lt;/td&gt;
 &lt;td&gt;Structure improved, but personality analysis was still weak.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;V3.0&lt;/td&gt;
 &lt;td&gt;Added MBTI-based dimensions, negative constraints against unsupported mental-state claims, and required Markdown output.&lt;/td&gt;
 &lt;td&gt;Reliability and readability improved significantly.&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Example prompt direction:&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;As a social media analyst, analyze the following public Weibo posts from three perspectives: content themes, writing style, and MBTI-inspired personality tendencies. Do not infer private mental health status or make claims unsupported by the text. Output the result in Markdown.&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="role-of-generative-ai"&gt;Role of Generative AI
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Analysis engine: Qwen performs multi-dimensional text interpretation, including topic, sentiment, style, and persona-related signals.&lt;/li&gt;
&lt;li&gt;Development accelerator: generative AI helped draft frontend structure, CSS styling, Flask route templates, and debugging suggestions.&lt;/li&gt;
&lt;li&gt;Debugging support: AI-assisted log interpretation helped locate syntax and logic errors during development.&lt;/li&gt;
&lt;li&gt;Security suggestions: AI provided reminders such as cookie encryption and safer handling of user data.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Qwen LLM&lt;/li&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;Selenium&lt;/li&gt;
&lt;li&gt;Flask&lt;/li&gt;
&lt;li&gt;HTML/CSS&lt;/li&gt;
&lt;li&gt;JavaScript&lt;/li&gt;
&lt;li&gt;Markdown parsing&lt;/li&gt;
&lt;li&gt;Tencent Cloud ECS&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tools-used"&gt;Tools Used
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Qwen large language model for post analysis.&lt;/li&gt;
&lt;li&gt;Claude 3.7 Sonnet for backend development support.&lt;/li&gt;
&lt;li&gt;Bolt.new for frontend design support.&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Pipelined RISC-V CPU Design in Verilog</title><link>http://lzteddy.com/p/riscv-pipelined-cpu-verilog/</link><pubDate>Thu, 01 May 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/riscv-pipelined-cpu-verilog/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: May 2025&lt;/li&gt;
&lt;li&gt;Context: Main practical assignment for the course &amp;ldquo;Computer Organization&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="github-repository"&gt;GitHub Repository
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/Diaosi1317092/Computer-Organization-Project" target="_blank" rel="noopener"
 &gt;https://github.com/Diaosi1317092/Computer-Organization-Project&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="highlights"&gt;Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Implemented a five-stage pipelined CPU based on the RISC-V 32I instruction set on the EGO1 FPGA board.&lt;/li&gt;
&lt;li&gt;Added UART communication and branch prediction support.&lt;/li&gt;
&lt;li&gt;Built a Python GUI frontend for real-time visualization of registers and pipeline states.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Verilog&lt;/li&gt;
&lt;li&gt;RISC-V 32I&lt;/li&gt;
&lt;li&gt;FPGA (EGO1)&lt;/li&gt;
&lt;li&gt;UART&lt;/li&gt;
&lt;li&gt;Python GUI&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="comment"&gt;Comment
&lt;/h2&gt;&lt;p&gt;This is one of my favorite project. Our team spend nearly &lt;strong&gt;100 hours&lt;/strong&gt; for this course project! Not because of requirements but just feeling interesting to make the theory we learned from class and textbook come true. Every night we gather in a lab room after class and work until 1-3 am, feeling fulfilled and calm. We got 118.5 out of 100 (theoretical maximum score) for this project, thanks for my teammates and my teachers.&lt;/p&gt;
&lt;img src="pyq.png" alt="pyq" style="zoom:50%;" /&gt;
&lt;h2 id="video"&gt;Video
&lt;/h2&gt;





 


&lt;div class="video-wrapper"&gt;
 &lt;iframe src="https://player.bilibili.com/player.html?as_wide=1&amp;amp;high_quality=1&amp;amp;page=1&amp;bvid=BV1Ayo4B4EU1"
 scrolling="no"
 frameborder="no"
 framespacing="0"
 allowfullscreen="true"
 &gt;
 &lt;/iframe&gt;
&lt;/div&gt;
</description></item><item><title>Project Posters</title><link>http://lzteddy.com/p/projects-posters/</link><pubDate>Thu, 01 May 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/projects-posters/</guid><description>&lt;p&gt;This collection brings together academic posters made for projects in SUSTech and NUS SoC Summer Workshop 2025.&lt;/p&gt;
&lt;p&gt;Click on each piece for more details.&lt;/p&gt;</description></item><item><title>Autonomous Driving Video Annotation with VideoLLaMA2</title><link>http://lzteddy.com/p/videollama2-autonomous-driving-annotation/</link><pubDate>Tue, 01 Apr 2025 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/videollama2-autonomous-driving-annotation/</guid><description>&lt;h2 id="背景"&gt;背景
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;时间：Apr 2025 - Jun 2025&lt;/li&gt;
&lt;li&gt;场景：自动驾驶视频理解与关键事件标注。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="方法"&gt;方法
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;设计聚焦驾驶关键要素的英文 Prompt，突出自车行为与跟车交互。&lt;/li&gt;
&lt;li&gt;基于 VideoLLaMA2 进行微调，提升场景描述准确性。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="结果"&gt;结果
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;构建了面向自动驾驶场景的视频标注流程。&lt;/li&gt;
&lt;li&gt;模型输出在行为与交互描述方面更加聚焦和稳定。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="技术栈"&gt;技术栈
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;VideoLLaMA2&lt;/li&gt;
&lt;li&gt;Prompt Engineering&lt;/li&gt;
&lt;li&gt;Fine-tuning&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="反思"&gt;反思
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;后续可引入更细粒度标签体系，覆盖更多复杂交通状态。&lt;/li&gt;
&lt;li&gt;建议补充定量评测指标，便于版本间迭代对比。&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>openGauss vs. PostgreSQL Performance Benchmark</title><link>http://lzteddy.com/p/opengauss-vs-postgresql-benchmark/</link><pubDate>Sun, 01 Dec 2024 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/opengauss-vs-postgresql-benchmark/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: Dec 2024&lt;/li&gt;
&lt;li&gt;Context: Main practical assignment for the course &amp;ldquo;Principles of Database Systems (H)&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="github-repository"&gt;GitHub Repository
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/Tsurumalu/DB-Project3" target="_blank" rel="noopener"
 &gt;https://github.com/Tsurumalu/DB-Project3&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="highlights"&gt;Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Compared openGauss and PostgreSQL with pgbench.&lt;/li&gt;
&lt;li&gt;Evaluated query performance, concurrency handling, connection efficiency, data import speed, resource utilization, and security.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;openGauss&lt;/li&gt;
&lt;li&gt;PostgreSQL&lt;/li&gt;
&lt;li&gt;pgbench&lt;/li&gt;
&lt;li&gt;SQL&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Range Hood FPGA Control System in Verilog</title><link>http://lzteddy.com/p/range-hood-fpga-verilog/</link><pubDate>Sun, 01 Dec 2024 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/range-hood-fpga-verilog/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: Dec 2024&lt;/li&gt;
&lt;li&gt;Context: Course project for &amp;ldquo;Digital Logic (H)&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="github-repository"&gt;GitHub Repository
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/Diaosi1317092/Digital-Logic-Project" target="_blank" rel="noopener"
 &gt;https://github.com/Diaosi1317092/Digital-Logic-Project&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="highlights"&gt;Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Designed and implemented an intelligent range hood control system on the EGO1 FPGA board, supporting standby, fan speed adjustment, self-cleaning, smart reminders, lighting, and time query.&lt;/li&gt;
&lt;li&gt;Integrated a 4x4 membrane keypad and LCD1602 display to enable gesture-based power control, parameter configuration, and real-time status visualization.&lt;/li&gt;
&lt;li&gt;Built a modular Verilog architecture with clock division, debouncing, LCD driving, and finite state machine (FSM) control.&lt;/li&gt;
&lt;li&gt;Completed end-to-end hardware logic integration from low-level peripheral drivers to high-level functional orchestration.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="outcome"&gt;Outcome
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Project Score: 118 / 100&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Verilog&lt;/li&gt;
&lt;li&gt;FPGA (EGO1)&lt;/li&gt;
&lt;li&gt;FSM Design&lt;/li&gt;
&lt;li&gt;LCD1602&lt;/li&gt;
&lt;li&gt;Matrix Keypad&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>University Activities Posters</title><link>http://lzteddy.com/p/campus-activities/</link><pubDate>Thu, 01 Feb 2024 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/campus-activities/</guid><description>&lt;p&gt;This collection brings together posters made for campus activities in SUSTech.&lt;/p&gt;
&lt;p&gt;Click on each piece for more details.&lt;/p&gt;</description></item><item><title>Java Swing Match-3 Puzzle Game</title><link>http://lzteddy.com/p/java-swing-match3-game/</link><pubDate>Fri, 01 Dec 2023 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/java-swing-match3-game/</guid><description>&lt;h2 id="background"&gt;Background
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Time: Dec 2023&lt;/li&gt;
&lt;li&gt;Context: Main practical assignment for the course &amp;ldquo;Introduction to Computer Programming A (H)&amp;rdquo;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="github-repository"&gt;GitHub Repository
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://github.com/Tsurumalu/3-Match-Java" target="_blank" rel="noopener"
 &gt;https://github.com/Tsurumalu/3-Match-Java&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="highlights"&gt;Highlights
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Designed and implemented a Match-3 puzzle game using Java Swing.&lt;/li&gt;
&lt;li&gt;Added multi-level progression, score and move limits, and both manual and auto-play modes.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="tech-stack"&gt;Tech Stack
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Java&lt;/li&gt;
&lt;li&gt;Java Swing&lt;/li&gt;
&lt;li&gt;OOP&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Shortcodes</title><link>http://lzteddy.com/p/shortcodes/</link><pubDate>Fri, 25 Aug 2023 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/shortcodes/</guid><description>&lt;img src="http://lzteddy.com/p/shortcodes/cover.jpg" alt="Featured image of post Shortcodes" /&gt;&lt;p&gt;For more details, check out the &lt;a class="link" href="https://stack.jimmycai.com/writing/shortcodes" target="_blank" rel="noopener"
 &gt;documentation&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="bilibili-video"&gt;Bilibili video
&lt;/h2&gt;





 


&lt;div class="video-wrapper"&gt;
 &lt;iframe src="https://player.bilibili.com/player.html?as_wide=1&amp;amp;high_quality=1&amp;amp;page=1&amp;bvid=BV1d4411N7zD"
 scrolling="no"
 frameborder="no"
 framespacing="0"
 allowfullscreen="true"
 &gt;
 &lt;/iframe&gt;
&lt;/div&gt;

&lt;h2 id="tencent-video"&gt;Tencent video
&lt;/h2&gt;
&lt;div class="video-wrapper"&gt;
 &lt;iframe src="https://v.qq.com/txp/iframe/player.html?vid=g0014r3khdw&amp;auto=0" 
 scrolling="no" 
 frameborder="no"
 framespacing="0" 
 allowfullscreen="true"
 &gt;
 &lt;/iframe&gt;
&lt;/div&gt;
&lt;h2 id="youtube-video"&gt;YouTube video
&lt;/h2&gt;&lt;div class="video-wrapper"&gt;
 &lt;iframe loading="lazy" 
 src="https://www.youtube.com/embed/0qwALOOvUik" 
 allowfullscreen 
 title="YouTube Video"
 &gt;
 &lt;/iframe&gt;
&lt;/div&gt;

&lt;h2 id="generic-video-file"&gt;Generic video file
&lt;/h2&gt;&lt;div class="video-wrapper"&gt;
 &lt;video
 controls
 src="https://www.w3schools.com/tags/movie.mp4"
 
 
 
 &gt;
 &lt;p&gt;
 Your browser doesn't support HTML5 video. Here is a
 &lt;a href="https://www.w3schools.com/tags/movie.mp4"&gt;link to the video&lt;/a&gt; instead.
 &lt;/p&gt;
 &lt;/video&gt;
&lt;/div&gt;

&lt;h2 id="gitlab"&gt;GitLab
&lt;/h2&gt;&lt;script
 type="application/javascript"
 src="https://gitlab.com/-/snippets/2589724.js"
&gt;&lt;/script&gt;
&lt;h2 id="quote"&gt;Quote
&lt;/h2&gt;&lt;blockquote&gt;
 &lt;p&gt;Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.&lt;/p&gt;&lt;span class="cite"&gt;&lt;span&gt;― &lt;/span&gt;&lt;span&gt;A famous person, &lt;/span&gt;&lt;a href="https://en.wikipedia.org/wiki/Book"&gt;&lt;cite&gt;The book they wrote&lt;/cite&gt;&lt;/a&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;hr&gt;

 &lt;blockquote&gt;
 &lt;p&gt;Photo by &lt;a class="link" href="https://unsplash.com/@codioful" target="_blank" rel="noopener"
 &gt;Codioful&lt;/a&gt; on &lt;a class="link" href="https://unsplash.com/photos/WDSN62Qdxuk" target="_blank" rel="noopener"
 &gt;Unsplash&lt;/a&gt;&lt;/p&gt;

 &lt;/blockquote&gt;</description></item><item><title>Project Posters</title><link>http://lzteddy.com/p/high-school-posters/</link><pubDate>Wed, 01 Mar 2023 00:00:00 +0000</pubDate><guid>http://lzteddy.com/p/high-school-posters/</guid><description>&lt;p&gt;This page collects posters built around more specific communication projects: public topics, historical commemorations, and structured visual messages.&lt;/p&gt;
&lt;p&gt;Compared with activity posters, these pieces are more theme-led. The composition gives more weight to symbolism, atmosphere, and visual rhythm while keeping the core message legible at a glance.&lt;/p&gt;</description></item></channel></rss>