Jixiang Zhang (matheecs)
Big Picture, Big Idea
a robot behavior coordination engineer
- email: <matheecs[at]qq[dot]com>
- resume/cv(Chinese)
- education
- research interests: animation and robotics with
- Pinocchio3 ≈ RigidBodyDynamics.jl
- CasADi ≈ JuMP.jl + ForwardDiff.jl
- MeshCat(Python) + PyQt + VTK
- Drake/Choreonoid
- Isaac Gym(=PhysX) + Warp(=CUDA+AD)
- Arch Linux(x86_64) + CMake + clang/clangd + Ninja + ccache + miniconda + VSCode + Chrome
- blogspot
- eHomeLib
Favorite Lectures
- 计算机教育中缺失的一课
- GAMES
- Physics-Based Simulation
- Putting the “You” in CPU
- tiny* (DIY)
- 操作系统:设计与实现
- 一生一芯
- 高性能并行编程与优化
- 机器人中的数值优化
- Memmo 2020 Summer School: Pinocchio, TSID & Crocoddyl
- Humanoid Control Workshop - Videos and Slides
- Michigan Robotics Free Online Courses
- Optimal Control 16-745
- Advanced Robot Dynamics and Simulation 16-715
- Optimization-Based Robotics
- Analytical Dynamics
- The Theoretical Minimum
- AirLab Summer School 2020
- 6.002
- Numerical Optimization (Prof. Dr. Moritz Diehl)
- IHMC Humanoid Robotics Lectures: Twists
- IHMC Humanoid Robotics Lectures: State Estimation
- IHMC Humanoid Robotics Lectures: Legged Locomotion
- IHMC Humanoid Robotics Lectures: Controls
- 📚Textbook or Documentation
- Robotic Systems (draft)
- Spot Autowalk
- Underactuated Robotics
- Robotic Manipulation
- Learn Multibody Dynamics
- 十二年图形学物理模拟的自我回顾
- LearnOpenGL CN
- 机器人工程师学习计划
- Control Tutorials for MATLAB and Simulink (CTMS)
- RaiSim Manual
- Lecture Notes on Numerical Optimization
- 机器人的带约束轨迹规划
- Model Predictive Control: Theory, Computation, and Design
- Sumeet Singh: Introduction to Optimal Control
- Automatic differentiation
- Numerical Optimization
- Optimization-Based Control for Dynamic Legged Robots
- Bartosz Ciechanowski: Bicycle
- Comprehensive Python Cheatsheet
- Advanced Python Mastery
- Technical Note. Exploring Python3 Language from Computer Science Perspective
- Technical Note. From C++1998 to C++2020
- 3D Math Primer for Graphics and Game Development
- Game Programming Patterns
- Crafting Interpreters
- Python for Data Analysis, 3E
- Hardware Hacking
- High-Dimensional Data Analysis with Low-Dimensional Models
- The-Art-of-Linear-Algebra
- Optimization Techniques for GPU Programming
- Systems, math and explosions
- The Hitchhiker’s Guide to Operating Systems
- The mathematical program should be arranged in such a way
- MODEL-BASED OPTIMIZATION FOR ROBOTICS
- Trajectory Optimization Terminology
- Cool Things in Optimal Control and Physics
- 维度:数学漫步
- 邵红亮:几何变换——从相似和全等谈起
- wizard zines
- A Map of Reinforcement Learning
- UCL Course on RL
- Deep Reinforcement Learning Doesn’t Work Yet
- Model-Based Reinforcement Learning: Theory and Practice
- How Instagram scaled to 14 million users with only 3 engineers
- 自然な歩き方をする
- Learn to read Korean in 15 minutes
Researchers
- Marc Raibert
- Alfred A. Rizzi
- Rodney Brooks
- David C. Conner
- Howie Choset
- Russ Tedrake
- Benjamin Stephens
- Tobia Marcucci
- andrew j. barry
- Hongkai Dai
- Scott Kuindersma
- Matthew Kelly
- Thomas Geijtenbeek
- Daniel E. Koditschek
- Michiel van de Panne
- Jason K. Moore
- Wei ZHANG
- Lars Blackmore
- Wenzel Jakob
- Yuto Nakanishi
- Eric Whitman
- Pierre-Brice Wieber
- Zac Manchester
- C. Karen Liu
- Yeuhi Abe
- Minchen Li
- Chenfanfu Jiang
- Anant Agarwal
- Shuo Yang
- Patrick M. Wensing
- Tobia Marcucci
- Twan Koolen
- Salman Faraji
- Christopher G. Atkeson
- Alexander Winkler
- Gill Pratt
- Stelian Coros
- Donghyun Kim
- Liangliang Nan
- Nicolò Valigi
- Robin Deits
- Stéphane Caron
- Stefano Dafarra
- Robert Griffin
- Joel Chestnutt
- Ye Zhao
- Kris Hauser
- Junhyeok Ahn
- David E. Orin
- Roy Featherstone
- Dongho Kang
- John Lasseter
- Libin Liu
- KangKang Yin
- Fabrice Bellard
- Moritz Diehl
- Justin Carpentier
- Dario Bellicoso
- Junjie Shen
- Nicolas Mansard
- Yuval Tassa
- Yi Ma
- Andrea Del Prete
- Anil V. Rao
- Chenggang Liu
- Jessy Grizzle
- Marc Toussaint
- Moritz Bächer: utilize the differentiability of the simulators to (1) numerically optimize design, control, and material parameters, or to (2) learn control strategies if stochasticity is present in the modeling task.
- Julia Evans
- Xue Bin (Jason) Peng
- Bartolomeo Stellato
- LN Trefethen
- Tim Davis
- Alberto Rodriguez
- Justin Solomon
- Evan Drumwright
- Alex Alspach
Algorithm Tree
- State Estimation & Calibration
- Perception
- Modeling
- PnC = Formulation(Pinocchio,CppAD&CppADCodeGen) + Optimization(DDP/SQP,OSQP/ALM/IPM) + Visualization
- Terrain Planner
- MRPT
- flight
- ego-planner-swarm
- Ewok
- Motion Planning around Obstacles with Convex Optimization
- OMPL
- Motion Planning Templates (MPT)
- GCOPTER
- Cheetah-Software
- A1-QP-MPC-Controller
- unitree_guide
- Simulation Software for HECTOR
- Generalized Biped Walking Control: cartwheel-3d
- Upper Body Vertical Control
- 骑自行车的双足机器人
- IHMC Open Robotics Software
- oh-distro
- Whole-Body Control and Simulation Software
- OCS2
- Crocoddyl
- robotoc
- TSID
- Pink
- LoIK
- Dual-Arm Diff IK
- Control Toolbox
- OptimTraj
- Differential Dynamic Programming
- Aligator
- fatrop
- towr
- horizon
- ltv-mpc
- PlanningWithAttitude
- GPOPS-II: Next-Generation Optimal Control Software
- PSOPT
- PyRoboCOP
- MPOPT
- Drake
- Fast Robot Optimization and Simulation Toolkit
- Kris’ Locomotion and Manipulation Planning Toolbox
- Representation-Free MPC
- Quad-SDK
- Global Body Planner
- ANYmal Rough Terrain Planner
- IJRR_WBLC
- QPControl
- BehaviorTree.CPP
- Cassie Gait Library Optimization using C-FROST
- CentroidalTrajOpt.jl
- OpenRAVE
- mpc_controller
- reactive_planners
- bipedal-locomotion-framework
- walking-controllers
- variable-height-double-pendulum
- $m \ddot{\boldsymbol{x}}=-m \boldsymbol{g}+\sum_i{ }^{\mathcal{I}} \boldsymbol{f}_i$ + Koolen’s QP WBC
- pymanoid
- TinyWBC
- LIPM Walking Controller
- Planning and Control Algorithms for Robotics
- SIMBICON: Simple Biped Locomotion Control
- ground_based_autonomy_basic
- octave-mpctools
- bipedal-locomotion-framework
- Vulp (Real-time motion control for Python)
- Benjamin Stephens: Weighted Objective Inverse Dynamics (WBC)
- Benjamin Stephens: Push Recovery MPC
- Benjamin Stephens: Two-Legged EKF
- Reactive Landing Controller
- QuasiDynamics
- LittleDog (mixed-integer convex optimization)
- planning_through_contact
- Contact Wrench Cones for Rectangular Support Areas
- MuJoCo MPC
- L4CasADi
- Dynamics & Simulation or Animation
- Jolt Physics
- Peng: A minimal quadrotor pipeline in Rust
- RedMax
- RigidBodyDynamics.jl
- RBDL
- Pinocchio
- spatial_v2_extended
- Dojo
- Bullet
- tiny-differentiable-simulator
- Hyfydy = Actuator Model + Contact Model
- MuJoCo
- Incremental Potential Contact
- Stark
- PositionBasedDynamics
- ZENO
- Piccolo
- SCONE
- OpenSim
- MyoSuite
- B-Human
- Taichi
- Blender
- Cascadeur: standalone 3D software that lets you create keyframe animation
- Box2D
- bepuphysics
- mjbots quad
- Choreonoid
- Dynamic Animation and Robotics Toolkit
- DOOM source code
- Panda3D
- DynaMechs
- Sheldon’s Little Rigid Body Simulator
- Simulately
- Moby multi-rigid body dynamics simulator
- awesome-simulation
- fluid-engine-dev
- Automatic Differentiation for rigid-body-dynamics AlgorithMs
- RBDReference
- Visualization
- Numerics & Optimization
- SDLP
- SDQP
- LBFGS-Lite
- OSQP
- CVXGEN
- ProxQP
- HPIPM
- ECOS
- SymEngine
- GTSAM
- Ceres
- g2o
- ALTRO
- CppAD
- CasADi
- RAPTOR
- PyRoboCOP
- Bioptim
- Ungar: Simplifying optimal control with metaprogramming
- Manopt
- JuMP
- Parametron.jl
- nevergrad
- Sequential Convex Programming Toolbox
- PDFO = COBYLA, UOBYQA, NEWUOA, BOBYQA, and LINCOA
- Chebfun
- proxsuite-nlp
- StagewiseSQP
- Machine learning
- legged_gym
- ModelBasedFootstepPlanning
- Berkeley Humanoid
- Diffusion Policy
- Isaac Gym Environments for Legged Robots
- extreme-parkour
- parkour
- Dobb·E
- MLX: An array framework for Apple silicon
- ml-engineering
- Humanoid-Gym
- Motion: from animation to robotics
- WarpDrive
- Reinforcement Learning Meets Visual Odometry
- SkillMimic
- Tools
- NumPy
- Eigen
- ROS
- OSC
- mc_rtc
- cactus-rt
- The Super Tiny Compiler
- PlotJuggler
- matplotlive
- DataTamer
- C++
- clang
- clangd
- ccache
- Ninja
- Bazel
- mold
- musl (Implementation of the C standard library built on top of the Linux system call API)
- Loguru
- Valgrind(Memcheck)
- AddressSanitizer
- VTune
- Build systems à la carte
- binvis.io
- Python
- Poetry
- pytest
- mypy
- pdir2
- Jupyter Notebook 7
- pybind11
彭于斌: Python 调用 C++/CUDA 的 kernel 才是今后不论科学计算还是神经学习的主流
- PyTorch
- gnuplot for numpy
import gnuplotlib as gp
- Julia
- StaticArrays(Statically sized arrays): the size can be determined from the type, and “static” does not necessarily imply immutable.
- Node.js(JavaScript runtime environment)
- Markdown
- Typst
- LaTeX
- Inkscape
- Linux
- CMake
- Git
- GitHub/CI
- Timer
- ThreadPool
- Sourcetrail
- macOS Cross toolchain
- TVM
- SIMD
- Arduino
- STM32
- motorcontrol & STM32CubeIDE
- ODrive
- moteus brushless servo
- SPIne
- machine emulator and virtualizer
- SteamOS