Skip to content

Commit

Permalink
m
Browse files Browse the repository at this point in the history
  • Loading branch information
bergman committed Jan 30, 2024
1 parent 8ca5a2c commit cd7b3fb
Show file tree
Hide file tree
Showing 2 changed files with 180 additions and 57 deletions.
Original file line number Diff line number Diff line change
@@ -1,69 +1,72 @@
> 1975-2021, 46年了, 简历太无聊了, 受霂老师的启发, 全面改一下
###### 个人小结:

1. 20年管理和研发经验,有丰富的大系统经验, 例如:
- 携程全站(含B端, C端, 以及内部服务端),2005-2012 负责:
- 产品, 设计, 用研
- 大数据及用户行为分析
- 大前端, 不仅仅是管理, 而且负责了技术架构:
- tail-base, 携程第一个前端框架
- tuna, 这个框架至今依旧被广泛使用, 它的设计非常超前, 很多思路至今都不过时.
- 指导架构师研发了第三代框架: cquery
- 顺便说, 当时携程的后端是asp系列, 因此前端承载了大量的业务压力.
- 支付宝钱包,2012-2013(含余额宝)
- 现今而言, 支付宝=支付宝钱包=支付宝app, 但是, 当年这个app核心月活不过百万.
- 这几乎是从无到有的支付宝, 之前支付宝钱包不过是支付宝web支付的附属品, 而支付宝web支付是淘宝的附属品, 因此当时这个app不过是淘宝附属品的附属小应用.
- 作为主要负责人之一, 对工作的方式方法负责, 对设计质量负责. 历经5次失败, 最终2013凤凰涅槃, 生出了几乎是我最满意的作品, 从此支付宝成为一个独立应用, 一个独立的流量入口.

3. 培育团队, 引领团队

- 携程(产品+用研+ux设计)团队创建 从0 到 50+ 团队
- 支付宝移动端(前端技术+产品+设计)重组 30+ 人
- 平安壹钱包移动副总经理(技术+产品)组建团队,30+ 人
- 艺龙地面业务负责人, 是当时艺龙唯一一个自负盈亏, 独立核算的事业部. 充分激活原有团队, 进行了深入的业务, 技术和运营改革, 成功扩大规模扭亏为盈.
- 风先生CTO, 全面负责, 研发+运营, 自研了随时下单, 全局优化, 全局调度的系统,

4. 拥抱技术, 拥抱开源, 阅读多个开源项目源码, 尤其在编辑器, 编译器, TSP领域钻研颇深.




###### 资质和能力小结:

- 1998(也可能是99) 计算机资格水平考试 - 高级程序员,
- 在2021年, 这个是最高等级的软件考试了.
- 具体年代记不太清了, 因为当年并不是最高等级的, 当时最高等级是后来考取的: 系统分析员.
- 2001 计算机资格水平考试 - 系统分析员
- 这是人事和劳动保障部的最高等级的职称考试
- 这是一个通过率<1%的考试, 每个省每年大约能过1个人, 可以认为是最顶尖的IT职业选手进行了一次竞赛.
- 因为太难了, 这个层级后来被取消了, 所以后来者最多只能考高级程序员了.
- blog:
- 这里有我的10篇tsp解决同城快递调度的解: https://juejin.im/user/5d11c0aff265da1b67211bf2/posts
- 杂七杂八记了很多: http://gwiki.cn
- github账号(大部分都是私有项目): https://github.com/lornally
- 开源了oh-my-mac
- 参与了stamp(eric elliott创建), 例如pr: https://github.com/stampit-org/stampit/issues/344 (支持getter/setter)
- Stack Overflow: https://stackoverflow.com/users/5425932/defend-orca
- 回答了不少问题, 也问了很多问题, 自认为还是挺有深度的.
- 分数不高, 因为问问题时喜欢加大奖励, 把分数都花掉了.
- 源码阅读
- 很久之前阅读过的比价大的是java源码
- 最近几年阅读的源码举例:
- codemirror, prosemirror, stamp, coffeescript等等....
- 大部分是编辑器和编译器领域的内容
> 1975-2024, 向霂总学习
### 基本信息:

- 姓名:马长昆
- 性别:男
- 电话/微信:17610766661
- 电话/微信:139 185 18887
- 邮箱:[email protected]
- 所在城市: 杭州

### 工作经历:

###### 2015 – 至今 连续创业 CTO(产品, 运营, 技术负责人)
#### 2021年-2023.11月

- 胖达科技算法架构师兼负责人

###### 骑手调度系统升级改造

* 职责: 系统分析, 算法整体规划和实现, 算法原型代码实现
* 正在运行的调度系统, 是一个基于规则的专家系统, 有如下几个问题:
1. 系统调度效果不如人工合理, 人工干预降不下来.
2. 系统调度的目标不明确, 各项指标没有可解释性, 但是, 他又是一个规则系统, 所以不停地添加规则, 直到某一天清空重来, 这个死循环无法避免.
3. 规则系统是死的, 但是, 客观世界是发展的, 随着时间的推移, 如果没人调整规则, 那么就各种鸡飞狗跳.
4. 本身运行缓慢, 是影响配送效率的一环.
5. 运行时没有明确的指标反馈, 是一个纯纯的黑盒, 且是没有仪表盘的黑盒.
* 改进方向和系统要求
* 90%的规则压缩到5%, 用运筹类tsp算法解决核心调度, 用机器学习类算法制作点位模型, 骑手模型, 出餐模型, 对核心vrp调度算法进行支持
* 更新的过程中不能影响线上的系统运行
* 单次分配时长从30-90s -> 1s
* 骑手平均每单耗时(骑手维度, 同时带2单要除2) 50 -> 34
* 骑手小时可比收入(单量) 提升30%
* 送餐预估准确度均值从60分钟 -> 20分钟 (多个模型联合解决)
* 实时提供指标反馈和预估(拟真系统)
* 实时提供历史数据推演(拟真系统)
* 实际采取的策略
* 核心调度, 创造性的使用单边时间窗+最远插入, 完美达成性能和质量指标
* 使用时间距离和时间熵解决了整体最小代价估算的指标问题
* 使用出餐预估模型解决了单边时间窗的关键约束条件
* 使用点位模型, 给出了时间距离和时间熵的比较优势模型, 供调度系统使用
* 使用骑手模型, 给出了拟真系统和ETA的数据基础
* 使用自助配置, 让地区可以配置骑手/客户/商家的必要规则, 比如某个客户要求不要再见到某个骑手
* 核心风险
* 运营风险, 此项目上线困难. 在上线过程中创造性地解决了各种依赖项, 逐步平稳上线, 加上辅助拟真系统的反复验证, 上线中未对线上造成任何负面影响.
* 工程风险, 项目工程量巨大, 先python原型验证, 再go上线, 并且所有模型都有特征工程师先期进行验证, 验证一个上线一个. 保证了项目顺利推进.
* 系统风险, 系统依赖项众多, 进行了细致的系统分析, 做了明确的规划和预研
* 系统分析的核心内容
* 出餐准确性
* 运力分布和缺口预估
* 调度合理性指标
* 市场优化
* 超时导致的马尔科夫链的负反馈对策
* 更多细节: 略.......

###### 推广搜算法替代人工

* 主要使用了线性和xgboost这样的简单回归类学习算法, 后期用深度学习使用实时和时间序列指标, 正在进行中.

* 搜索板块

- 零结果比例降低42%, 从13->7.5%

- 响应时长优化至毫秒级, es从200+ms到10ms

- 搜索转化率提升6%, 同期对照组降低4.5%

- 推荐板块
- 下单和进店转化均提升10%, 对照组分别下降1.9%和18.5%

###### 2015 – 2021 连续创业 CTO(产品, 运营, 技术负责人)

项目一: 同城配送当日达

Expand All @@ -87,7 +90,7 @@

工作业绩:

3. 扭亏为盈.
1. 扭亏为盈.

- 正常购票搭售酒店大礼包/使用12306直付2选一
- 抢票卡.
Expand Down Expand Up @@ -202,3 +205,52 @@



###### 资质和能力小结:

- 1998(也可能是99) 计算机资格水平考试 - 高级程序员,
- 在2021年, 这个是最高等级的软件考试了.
- 具体年代记不太清了, 因为当年并不是最高等级的, 当时最高等级是后来考取的: 系统分析员.
- 2001 计算机资格水平考试 - 系统分析员
- 人事和劳动保障部的最高等级的职称考试
- 通过率<1%的考试, 每个省每年大约能过1个人, 可以认为是一次职业竞赛.
- 这个层级后来被取消.
- blog:
- 这里有我的10篇tsp解决同城快递调度的解: https://juejin.im/user/5d11c0aff265da1b67211bf2/posts
- 杂七杂八记了很多: http://gwiki.cn
- github账号(大部分都是私有项目): https://github.com/lornally
- 开源了oh-my-mac
- 参与了stamp(eric elliott创建), 例如pr: https://github.com/stampit-org/stampit/issues/344 (支持getter/setter)
- Stack Overflow: https://stackoverflow.com/users/5425932/defend-orca
- 回答了不少问题, 也问了很多问题, 自认为还是挺有深度的.
- 分数不高, 因为问问题时喜欢加大奖励, 把分数都花掉了.
- 源码阅读
- 最近几年阅读的源码举例:
- codemirror, prosemirror, stamp, coffeescript等等....
- 大部分是编辑器和编译器领域的内容

###### 个人小结:

1. 20年研发经验,有丰富的系统经验, 例如:
- 携程全站(含B端, C端, 以及内部服务端),2005-2012 负责:
- 产品, 设计, 用研
- 大数据及用户行为分析
- 大前端负责了技术架构:
- tail-base, 携程第一个前端框架
- tuna, 这个框架至今依旧被广泛使用, 它的设计非常超前, 很多思路至今都不过时.
- 指导架构师研发了第三代框架: cquery
- 当时携程的后端是asp系列, 因此前端承载了大量的业务压力.
- 支付宝钱包,2012-2013(含余额宝)
- 现今支付宝=支付宝钱包=支付宝app, 但是, 当年这个app核心月活不过百万.
- 这几乎是从无到有的支付宝, 之前支付宝钱包不过是支付宝web支付的附属品, 而支付宝web支付是淘宝的附属品, 因此当时这个app不过是淘宝附属品的附属小应用.
- 作为主要负责人之一, 对工作的方式方法负责, 对设计质量负责. 历经5次失败, 最终2013凤凰涅槃, 生出了几乎是我最满意的作品, 从此支付宝成为一个独立应用, 一个独立的流量入口.

2. 培育团队, 引领团队

- 携程(产品+用研+ux设计)团队创建 从0 到 50+ 团队
- 支付宝移动端(前端技术+产品+设计)重组 30+ 人
- 平安壹钱包移动副总经理(技术+产品)组建团队,30+ 人
- 艺龙地面业务负责人, 是当时艺龙唯一一个自负盈亏, 独立核算的事业部. 充分激活原有团队, 进行了深入的业务, 技术和运营改革, 成功扩大规模扭亏为盈.
- 风先生CTO, 全面负责, 研发+算法+运营, 自研了随时下单, 全局优化, 全局调度的系统
- 胖达科技算法负责人, 负责了全公司的算法项目, 既有调度和拟真, 也有推广搜

3. 拥抱技术, 拥抱开源, 阅读多个开源项目源码, 尤其在编辑器, 编译器, TSP领域钻研.
71 changes: 71 additions & 0 deletions _posts/2024-01-24-下棋.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
> 2024了, 下棋真的已经无比简单了, 完全不再需要网络了.
### 在线版本也很不错

* https://19x19.com/engine/play/set
* 唯一的问题就是需要网络, 以及需要充点钱

### 如果本地

* katago官方非常棒: https://github.com/lightvector/KataGo

#### 安装->玩, 很简单

* 参考: https://codingman.cc/how-to-install-katago-on-mac/

```sh
# 安装katago
brew install katago
# 验证安装状态
brew list --verbose katago
```

* 如果此时失败了

```sh
# 一般是网络问题, 需要代理, 打开.zshrc
code ~/.zshrc # 也可能是mate 或者lime, 看你用的编辑器vscode textmate sublime
# 设置代理, 如果是clashx, 一般是下面这两句:
alias neton="export all_proxy=socks5://127.0.0.1:7890"
alias httpon="export all_proxy=http://127.0.0.1:7890"
```

* 如果成功了, 安装 sabaki ui: https://github.com/SabakiHQ/Sabaki

* 设置sabaki
* preference->engines
* 设置logpath
* 添加engine
* path: /opt/homebrew/Cellar/katago/1.14.0/bin/katago
* arguments:
* gtp -model /opt/homebrew/Cellar/katago/1.14.0/share/katago/g170-b30c320x2-s4824661760-d1229536699.bin.gz -config /opt/homebrew/Cellar/katago/1.14.0/share/katago/configs/gtp_example.cfg
* 参数说明
* 第一行, 是brew list --verbose katago展示的第一行
* config的参数, 找一找也可以找到, 关键是config 和 gtp

> 至此, 大功告成, 可以爽了, 图形界面需要摸索下, sabaki的变化还是很剧烈的. 关键是, engine菜单要把engine秀出来, 记得选择catago, 还有就是新局没有落子前可以在info里面设置让子贴目.
### cuda竟然不是推荐项目了

* ### OpenCL vs CUDA vs TensorRT vs Eigen

KataGo has four backends, OpenCL (GPU), CUDA (GPU), TensorRT (GPU), and Eigen (CPU).

The quick summary is:

- **To easily get something working, try OpenCL if you have any good or decent GPU.**
- **For often much better performance on NVIDIA GPUs, try TensorRT**, but you may need to install TensorRT from Nvidia.
- Use Eigen with AVX2 if you don't have a GPU or if your GPU is too old/weak to work with OpenCL, and you just want a plain CPU KataGo.
- Use Eigen without AVX2 if your CPU is old or on a low-end device that doesn't support AVX2.
- The CUDA backend can work for NVIDIA GPUs with CUDA+CUDNN installed but is likely worse than TensorRT.



### katago官方推荐了更多gui

*



### 象棋

0 comments on commit cd7b3fb

Please sign in to comment.