# cjome_xg **Repository Path**: MasterRobMark/cjome_xg ## Basic Information - **Project Name**: cjome_xg - **Description**: 工程中的数学应用作业论文 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-12 - **Last Updated**: 2026-01-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 机械臂实时轨迹规划 MPC 学术报告 ## 项目概述 本项目是一份关于"数学在机械工程中的应用"的学术报告,聚焦于**机械臂实时轨迹规划中的模型预测控制(MPC)**。 核心内容: - SE(3) 李群/李代数与旋量(twist)表示 - 基于对数映射的统一旋量误差代价 - NONLINEAR_LS 最小二乘问题的设计与奇异性鲁棒性 - Gauss-Newton 与 SQP-RTI 实时求解理论 - 仿真实验框架 ## 编译要求 **本项目必须使用 XeLaTeX 编译**(不支持 pdfLaTeX)。 原因:CJME 模板基于 `ctexart` 文档类,需要 Xe/LuaTeX 来处理中文字体。 ## 编译命令 ### 标准编译流程(完整编译) ```bash # 第一步:运行 XeLaTeX(生成 .bcf 文件) xelatex -interaction=nonstopmode main.tex # 第二步:运行 Biber 处理参考文献 biber main # 第三步:再次运行 XeLaTeX(生成最终 PDF) xelatex -interaction=nonstopmode main.tex ``` ### 一行命令(推荐) ```bash xelatex main.tex && biber main && xelatex main.tex ``` ### 在 VS Code 中 如果使用 LaTeX Workshop 扩展,编辑 `.vscode/settings.json`: ```json { "latex-workshop.latex.tools": [ { "name": "xelatex", "command": "xelatex", "args": ["-interaction=nonstopmode", "-synctex=1", "%DOC%"] } ], "latex-workshop.latex.recipes": [ { "name": "xelatex", "tools": ["xelatex"] }, { "name": "xelatex → biber → xelatex", "tools": ["xelatex", "biber", "xelatex"] } ] } ``` ## 文件结构 ``` ├── main.tex # 主文档 ├── main.bib # 参考文献数据库 ├── chinese-journal-of-mechanical-engineering.cls # CJME 文档类 ├── section0-preface.tex # 第0章:前言 ├── section1-foundation.tex # 第1章:问题定义与数学基础 ├── section2-mpc-model.tex # 第2章:MPC 建模 ├── section3-cost-se3.tex # 第3章:SE(3) 旋量统一误差代价设计(核心) ├── section4-solver.tex # 第4章:GN/SQP-RTI 求解理论 ├── section5-experiments.tex # 第5章:实验结果 ├── section6-reflection.tex # 第6章:总结与感想 ├── figures/ # 图像目录(为后续替换的实验图预留) └── README.md # 本文件 ``` ## 内容简介 ### 0 前言 - 实时轨迹规划问题的工程背景 - 传统方法的痛点与 MPC 的优势 - 李代数在姿态误差表示中的作用 ### 1 问题定义与数学基础 - SE(3) 和 se(3) 的定义与指数/对数映射 - 旋量速度与末端 Jacobian - 基于 Log 映射的统一旋量误差定义 ### 2 MPC 建模 - 离散时域最优控制问题(OCP) - 关节空间双积分模型 - 运动学线性化缓存策略 - 约束集合 ### 3 代价函数:SE(3) 旋量统一误差设计(**重点**) - 量纲统一与度量选择 - 位置与姿态运动趋势一致性讨论 - NONLINEAR_LS 残差代价形式 - 速度形状残差 r_flow = V + Ke 的作用 - 一阶线性化与奇异点的"自然规避"机制 ### 4 优化问题求解 - 多重射击离散与 NLP 形式 - Gauss-Newton 近似的数值优势 - SQP-RTI 在线迭代框架 ### 5 实验结果 - 实验设置与参数表格 - 两种方案(基线 vs 趋势引导)对比 - 图表占位符(后续可替换为真实实验数据) ### 6 总结与感想 - 技术总结:建模、代价、求解的统一性 - 工程启示:数学如何落地为可调、可跑、可解释的系统 ## 主要特点 1. **学术报告口吻**:强调方法论、推导、工程约束和经验体会,而非"提出新方法"的投稿语气 2. **数学严谨性**: - SE(3) 李群理论与旋量表示贯穿全文 - 清晰阐述位置-姿态的度量协调机制 - 奇异性鲁棒性与数值优化的联系 3. **工程实用性**: - 参数化与可调旋钮(w_p, w_R, ℓ, k_p, k_R) - 实时性设计(运动学缓存、RTI 一次迭代) - 模型简化与约束设计的工程权衡 4. **完整参考文献**: - 18 条 BibTeX 条目 - 覆盖 MPC、李代数、奇异性处理、数值优化等领域 ## 页数与排版 - **目标页数**:6–7 页(两栏模板) - **实际页数**:5 页(可根据需要调整段落长度) - **内容约**:3000+ 字(中文为主) 可通过以下方式调整页数: - 扩展各章节的讨论深度 - 增加数值例子或伪代码 - 补充更多图表和表格 ## 图表位置 已预留的占位图: | 图号 | 文件名 | 位置 | 说明 | |------|--------|------|------| | 1 | `fig:mpc_horizon` | section2 | MPC 滚动时域示意 | | 2 | `fig:se3_intuition` | section3 | SE(3) 误差的螺旋几何 | | 3 | `fig:rti_loop` | section4 | SQP-RTI 在线循环流程 | | 4 | `figures/exp_pipeline.pdf` | section5 | 实验流程组合(占位) | | 5 | `fig:error_curve` | section5 | 误差收敛曲线(占位) | | 6 | `fig:vx_curve` | section5 | 速度收敛形态(占位) | 前三幅已用 TikZ/PGFPlots 生成;后三幅提供 `\includegraphics` 占位,可后续替换为真实实验图。 ## 参考文献快速导航 | 主题 | 主要文献 | |------|---------| | MPC 理论教材 | Rawlings2017, Diehl2005RTI | | 李群/李代数 | Lynch2017, Barfoot2017, Sola2018 | | 奇异性处理 | Nakamura1986, Chiaverini1997, Levenberg1944 | | 数值优化 | Nocedal2006, Marquardt1963, Bock1984 | | acados/CasADi | Verschueren2022, Andersson2019 | | 线性代数库 | Frison2018, Frison2020 | ## 后续定制建议 1. **作者信息**:编辑 main.tex 中的 `\author{}` 和 `\affil{}` 2. **实验数据替换**: - 将 `figures/exp_pipeline.pdf` 替换为真实实验截图 - 修改 pgfplots 中的数据点为实测数据 - 更新 section5 中的参数表 3. **权重参数标定**: - 根据机械臂型号调整 w_e, w_dq, w_u, w_flow - 设置合适的特征长度 ℓ 和收敛增益 k_p, k_R 4. **页面微调**: - 若需增加/减少内容,修改各 section 的段落篇幅 - 调整图表大小与位置以控制整体页数 ## 常见问题 **Q: 为什么必须用 XeLaTeX?** A: CJME 模板使用 `ctexart` 文档类,该类自动加载 fontspec(Xe/LuaTeX 特有),pdfLaTeX 不支持。 **Q: 中文字体显示不正常怎么办?** A: XeLaTeX 会自动检测系统中的中文字体(SimSun/Songti SC/STSong/Noto Serif CJK SC 等)。若都不存在,需手动安装,或编辑 `.cls` 文件修改字体。 **Q: 如何只编译某一章节?** A: 在 main.tex 中临时注释掉不需要的 `\input` 行,然后重新编译。 **Q: 页数超过 7 页怎么办?** A: 可采取以下措施: - 缩小字号(在 `\documentclass` 选项中添加 `12pt`) - 删减不重要的例子或讨论 - 压缩图表尺寸 ## 许可证 本项目作为学术报告,可自由使用和修改。CJME 模板遵循其官方规定。 --- **最后更新**:2026年1月 **编译工具**:XeLaTeX + Biber