diff --git a/authors/index.xml b/authors/index.xml index 2f2a178..0bb5d8b 100644 --- a/authors/index.xml +++ b/authors/index.xml @@ -7,12 +7,12 @@ Hugo -- gohugo.io zh-cn © 2025 Morethan - Fri, 03 Jan 2025 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 Morethan https://morethan987.github.io/authors/morethan/ - Fri, 03 Jan 2025 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 https://morethan987.github.io/authors/morethan/ <h1 class="relative group">欢迎来到我的信息页面 👋 diff --git a/authors/morethan/index.html b/authors/morethan/index.html index 7b8399e..3a2071b 100644 --- a/authors/morethan/index.html +++ b/authors/morethan/index.html @@ -947,27 +947,19 @@

最后 - +
-
+
- - - - 草稿 - - - -
关于莫拉维克悖论的思考
+ href="/blog/plugin-writing-experience/">一次写插件经历
@@ -1012,7 +1004,7 @@

最后
- ·3 分钟· + ·3 分钟· @@ -1028,7 +1020,7 @@

最后 - loading + loading @@ -1053,7 +1045,7 @@

最后 - loading @@ -1106,18 +1098,10 @@

最后 - - - - AI - - - - - + - 遐想 + 经历 @@ -1142,22 +1126,28 @@

最后 - - - +
-
+
+ + + + 草稿 + + + +
CUMCM 2024总结
+ href="/blog/moravecs-paradox/">关于莫拉维克悖论的思考
@@ -1202,7 +1192,7 @@

最后
- ·6 分钟· + ·3 分钟· @@ -1218,7 +1208,7 @@

最后 - loading + loading @@ -1243,7 +1233,7 @@

最后 - loading @@ -1296,18 +1286,18 @@

最后 - + - CUMCM + AI - + - Math + 遐想 @@ -1332,12 +1322,14 @@

最后 + + - +
-
+
@@ -1345,7 +1337,7 @@

最后
Python小技巧
+ href="/blog/cumcm2024/">CUMCM 2024总结

@@ -1390,7 +1382,7 @@

最后
- ·1 分钟· + ·6 分钟· @@ -1406,7 +1398,7 @@

最后 - loading + loading @@ -1431,7 +1423,7 @@

最后 - loading @@ -1484,10 +1476,18 @@

最后 - + - Python + CUMCM + + + + + + + + Math @@ -1513,11 +1513,11 @@

最后 - +
-
+
@@ -1525,7 +1525,7 @@

最后
贝叶斯优化
+ href="/blog/pythontips/">Python小技巧

@@ -1570,7 +1570,7 @@

最后
- ·2 分钟· + ·1 分钟· @@ -1586,7 +1586,7 @@

最后 - loading + loading @@ -1611,7 +1611,7 @@

最后 - loading @@ -1664,26 +1664,10 @@

最后 - - - - Math - - - - - - - - MATLAB - - - - - + - CUMCM + Python @@ -1709,11 +1693,11 @@

最后 - +
-
+
@@ -1721,7 +1705,7 @@

最后
本地 OverLeaf 部署
+ href="/blog/bayesianopt/">贝叶斯优化

@@ -1766,7 +1750,7 @@

最后 -
- -
-

- - - - - - - -
- - - - - -
- - -
一次写插件经历
- - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - ·3 分钟· - - - - - - - - - - - - - loading - - - - - - - - -· - - - - - - - - - - - - - loading - - - - - - - - - - - - - -
- - -
- - - - -
Morethan
- - - - - - - - - - -
- - - - -
- - - - - - - - - - - - - - - - 经历 - - - - - - -
diff --git a/blog/index.html b/blog/index.html index f5887da..36cd950 100644 --- a/blog/index.html +++ b/blog/index.html @@ -1877,7 +1877,7 @@

Blog diff --git a/blog/moravecs-paradox/index.html b/blog/moravecs-paradox/index.html index 2f8eb6f..adab24c 100644 --- a/blog/moravecs-paradox/index.html +++ b/blog/moravecs-paradox/index.html @@ -2304,7 +2304,7 @@

相关文章

> - + diff --git a/blog/plugin-writing-experience/featured.svg b/blog/plugin-writing-experience/featured.svg index a3dc3e7..0a282d3 100644 --- a/blog/plugin-writing-experience/featured.svg +++ b/blog/plugin-writing-experience/featured.svg @@ -1,574 +1,24 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/blog/plugin-writing-experience/index.html b/blog/plugin-writing-experience/index.html index 2704be7..ec65a16 100644 --- a/blog/plugin-writing-experience/index.html +++ b/blog/plugin-writing-experience/index.html @@ -74,8 +74,8 @@ - - + + @@ -101,11 +101,11 @@ "@type": "Person", "name": "Morethan" }, - "copyrightYear": "2024", - "dateCreated": "2024-01-06T00:00:00\u002b00:00", - "datePublished": "2024-01-06T00:00:00\u002b00:00", + "copyrightYear": "2025", + "dateCreated": "2025-01-06T00:00:00\u002b00:00", + "datePublished": "2025-01-06T00:00:00\u002b00:00", - "dateModified": "2024-01-06T00:00:00\u002b00:00", + "dateModified": "2025-01-06T00:00:00\u002b00:00", "keywords": ["经历"], @@ -478,6 +478,41 @@ +
+ @@ -530,6 +565,41 @@ +
+
+ + + + + + + + + + +
简体中文
+
+ +
+ @@ -863,7 +933,7 @@

- ·3 分钟· + ·3 分钟· @@ -873,6 +943,9 @@

+ + + @@ -895,6 +968,9 @@

+ + + @@ -1539,13 +1615,585 @@

写在最后 +

相关文章

+
-
- + + + + +
+ + + + + + + + 草稿 + + + + + +
+ + +
关于莫拉维克悖论的思考
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·3 分钟· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + AI + + + + + + + + 遐想 + + + + + + + +
+ + + + +
+ + +
+
+ +
+
+
+ + + + +
+ +
+ + + + + +
+ + +
CUMCM 2024总结
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·6 分钟· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + CUMCM + + + + + + + + Math + + + + + + + +
+ + + + +
+ + +
+
+ +
+
+
+ + + + + + +
+ + + + + +
+ + +
Python小技巧
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·1 分钟· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + Python + + + + + + + +
+ + + + +
+ + +
+
+ +
+
+
+ + + + + +

+ + + + + + + + diff --git a/blog/pythontips/index.html b/blog/pythontips/index.html index 3bc5236..4ec5a05 100644 --- a/blog/pythontips/index.html +++ b/blog/pythontips/index.html @@ -2030,180 +2030,6 @@

相关文章

-
- - - - -
- - -

-
- -
-

- - - - - - - -
- - - - - -
- - -
一次写插件经历
- - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - ·3 分钟· - - - - - - - - - - - - - loading - - - - - - - - -· - - - - - - - - - - - - - loading - - - - - - - - - - - - - -
- - -
- - - - -
Morethan
- - - - - - - - - - -
- - - - -
- - - - - - - - - - - - - - - - 经历 - - - - - - -
diff --git a/en/authors/index.html b/en/authors/index.html index eedf732..b02afef 100644 --- a/en/authors/index.html +++ b/en/authors/index.html @@ -859,7 +859,7 @@

· - 5 + 6

diff --git a/en/authors/index.xml b/en/authors/index.xml index ef83a98..903050c 100644 --- a/en/authors/index.xml +++ b/en/authors/index.xml @@ -9,12 +9,12 @@ morthan@qq.com (Morethan) morthan@qq.com (Morethan) © 2025 Morethan - Fri, 03 Jan 2025 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 Morethan https://morethan987.github.io/en/authors/morethan/ - Fri, 03 Jan 2025 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 morthan@qq.com (Morethan) https://morethan987.github.io/en/authors/morethan/ <h1 class="relative group">Hi, welcome to my info page. 👋 diff --git a/en/authors/morethan/index.html b/en/authors/morethan/index.html index 4809dcb..168da4f 100644 --- a/en/authors/morethan/index.html +++ b/en/authors/morethan/index.html @@ -947,6 +947,186 @@

Final + + +
+ +
+ + + +
+ + +
An experience of a plugin writing
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·2 mins· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + Experience + + + + + + + +
+ + + + +
+ + +
+
+ +
+
+
+ + + +
diff --git a/en/authors/morethan/index.xml b/en/authors/morethan/index.xml index 687b65b..a906e71 100644 --- a/en/authors/morethan/index.xml +++ b/en/authors/morethan/index.xml @@ -9,7 +9,7 @@ morthan@qq.com (Morethan) morthan@qq.com (Morethan) © 2025 Morethan - Fri, 03 Jan 2025 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 Local OverLeaf Deployment @@ -118,5 +118,31 @@ + + An experience of a plugin writing + https://morethan987.github.io/en/blog/plugin-writing-experience/ + Mon, 06 Jan 2025 00:00:00 +0000 + morthan@qq.com (Morethan) + https://morethan987.github.io/en/blog/plugin-writing-experience/ + <div class="lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl"> + A Reflection on Writing a Plugin and What I Learned from the Experience. +</div> + + + +<h3 class="relative group">The Beginning + <div id="the-beginning" class="anchor"></div> + + <span + class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100"> + <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" + style="text-decoration-line: none !important;" href="#the-beginning" aria-label="Anchor">#</a> + </span> + +</h3> +<p>It all started with my blog website. I stumbled upon an article on WeChat about building a blog with <code>Hugo</code>, and since I wanted to revamp my old, simple site, I decided to give it a try. My original site was extremely rudimentary, and the whole writing process involved jumping between <code>HTML</code>, <code>JS</code>, and <code>CSS</code> in a rather awkward manner. On top of that, I had always admired the <a href="https://lilianweng.github.io/" target="_blank">blog</a> of a great tech guru, <code>Lilian Weng</code>, which was also built with <code>Hugo</code>. This further strengthened my resolve to change my site&rsquo;s underlying platform.</p> + + + diff --git a/en/blog/index.html b/en/blog/index.html index f60db4b..07b65ec 100644 --- a/en/blog/index.html +++ b/en/blog/index.html @@ -1802,6 +1802,186 @@

Blog +

+ + + + +

+ + +
+
+ +
+
+ + + + + + + +
+ +
+ + + +
+ + +
An experience of a plugin writing
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·2 mins· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + Experience + + + + + + +
diff --git a/en/blog/index.xml b/en/blog/index.xml index 9d34884..272d290 100644 --- a/en/blog/index.xml +++ b/en/blog/index.xml @@ -118,5 +118,31 @@ + + An experience of a plugin writing + https://morethan987.github.io/en/blog/plugin-writing-experience/ + Mon, 06 Jan 2025 00:00:00 +0000 + morthan@qq.com (Morethan) + https://morethan987.github.io/en/blog/plugin-writing-experience/ + <div class="lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl"> + A Reflection on Writing a Plugin and What I Learned from the Experience. +</div> + + + +<h3 class="relative group">The Beginning + <div id="the-beginning" class="anchor"></div> + + <span + class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100"> + <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" + style="text-decoration-line: none !important;" href="#the-beginning" aria-label="Anchor">#</a> + </span> + +</h3> +<p>It all started with my blog website. I stumbled upon an article on WeChat about building a blog with <code>Hugo</code>, and since I wanted to revamp my old, simple site, I decided to give it a try. My original site was extremely rudimentary, and the whole writing process involved jumping between <code>HTML</code>, <code>JS</code>, and <code>CSS</code> in a rather awkward manner. On top of that, I had always admired the <a href="https://lilianweng.github.io/" target="_blank">blog</a> of a great tech guru, <code>Lilian Weng</code>, which was also built with <code>Hugo</code>. This further strengthened my resolve to change my site&rsquo;s underlying platform.</p> + + + diff --git a/en/blog/moravecs-paradox/index.html b/en/blog/moravecs-paradox/index.html index 5cd2120..8e46ee9 100644 --- a/en/blog/moravecs-paradox/index.html +++ b/en/blog/moravecs-paradox/index.html @@ -2046,6 +2046,28 @@

Related

+ + + + + An experience of a plugin writing + + + + + + + + diff --git a/en/blog/plugin-writing-experience/index.html b/en/blog/plugin-writing-experience/index.html new file mode 100644 index 0000000..2091020 --- /dev/null +++ b/en/blog/plugin-writing-experience/index.html @@ -0,0 +1,2387 @@ + + + + + + + + + + An experience of a plugin writing · More's awesome website + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + + + + + +
+
+ + + +
+
+ + + +
+ + + + + + + + +
+ + + + +
+ + + +
+
+
+
+
+ +
+ + + + + +
+ +
    + + + + + + + + + +
  1. + Blogs/ +
  2. + + + + +
+ + + +

+ An experience of a plugin writing +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·2 mins· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + +· + + + + + + + + + + + + + + + +· + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + Experience + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + +
+ + + + + + + + + + Morethan + + +
+ +
+ Author +
+
+ Morethan +
+ + +
Computer, Physic & AI
+ +
+
+ + + + + + + + + + + + +
+ +
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
+ + +
+ + Table of Contents + + +
+ + +
+
+ + +
+ + +
+ + + Casual essay - This article is part of a series. + + + + +
+ Part 1: This Article +
+ + + + +
+ + + +
+
+ A Reflection on Writing a Plugin and What I Learned from the Experience. +
+ + + +

The Beginning +
+ + + # + + +

+

It all started with my blog website. I stumbled upon an article on WeChat about building a blog with Hugo, and since I wanted to revamp my old, simple site, I decided to give it a try. My original site was extremely rudimentary, and the whole writing process involved jumping between HTML, JS, and CSS in a rather awkward manner. On top of that, I had always admired the blog of a great tech guru, Lilian Weng, which was also built with Hugo. This further strengthened my resolve to change my site’s underlying platform.

+

So, I quickly started diving into Hugo.

+

To my surprise, the results were extraordinary! My old webpage took me nearly a month to build, but with Hugo, I was able to finish everything in less than half a day. What shocked me even more was that Hugo, a program written in Go, didn’t require users to set up a Go environment! 😮

+

At the same time, I discovered an incredibly well-documented Hugo theme—Blowfish. This was by far the most detailed documentation I had ever seen for any project, bar none (๑•̀ㅂ•́)و✧.

+

With Hugo and Blowfish working in tandem, my small site quickly took shape. Of course, I’m not great at designing, so I just used the default layout from Blowfish, as I felt any changes would ruin the beauty of the page.

+

To be honest, after all this work, I didn’t have any strong emotional reactions, except for deep respect for the coding skills of the authors of Hugo and Blowfish.

+

That was until I wanted to upload the massive amount of notes I had in Obsidian to my new blog.

+ + +

The Bitter Taste of Originality +
+ + + # + + +

+

I soon realized that there wasn’t a plugin available to directly convert the format of my Obsidian notes to fit the Blowfish theme. Fueled by the earlier “pleasant experience,” I decided to write a plugin myself! (😄 Although, I would soon stop laughing 😢)

+

The rest of the experience wasn’t anything particularly exciting—just endless switching between webpages, searching through API documentation, and never-ending conversations with AI bots. After countless revisions, I finally ended up with something exceedingly simple: a plugin that identifies specific patterns in documents and performs content replacement.

+

It was quite laughable. Compared to the few hours it took to set up the website, the nearly forty hours I spent writing that plugin felt almost negligible. At one point, I seriously considered just deleting my few hundred lines of code.

+

Yes, such a simple plugin drained me mentally and physically. I truly tasted the bitterness of originality.

+

Now, looking back at Hugo and Blowfish, I feel deeply shocked by their complexity and the effort required to implement all of those features. If they were getting paid for this work, I could at least understand the level of effort involved. But they were both open-source, relying entirely on user goodwill and appreciation.

+

I saw the last update of the Blowfish author’s blog, which was in March 2024, and I fell into deep thought.

+ + +

Sentiments and Idealism +
+ + + # + + +

+

I imagine that the author of Blowfish must have paused the development of the theme for some reason—perhaps due to life circumstances. After all, this project didn’t bring in much real income.

+

Suddenly, I remembered the changes I had noticed before—those GitHub profiles, once full of green squares, gradually becoming sparse, and eventually disappearing. Beneath this peaceful change, there might be a shift in someone’s life. Whether it’s because of busy work or the gradual fading of motivation, the original passionate drive eventually drowns in silence. I can’t stop this from happening, but I understand the reasons behind it.

+

Open-source is driven by passion, but passion doesn’t pay the bills. People need to live in the present.

+

I recalled a tech YouTuber, Ma Nong Gao Tian, a core Python developer who humorously complained about the harsh realities of open-source life. His prematurely graying hair made me feel a pang of empathy—he had spent most of his life writing code and yet found himself out of work, surviving on a few extra bucks from his videos.

+ + +

In Conclusion +
+ + + # + + +

+

Life is rarely as we wish. Once again, I looked at my forty-plus hours of work and couldn’t help but laugh and shake my head.

+

After writing this, I’m off to bed. It’s now 1:48 AM on January 6, 2025, and I still haven’t reviewed for my English final exam tomorrow.

+

Looking at this blog again, I laughed and shook my head.

+

Such is life.

+ + + + +
+ + + + +
+ + + Casual essay - This article is part of a series. + + + + +
+ Part 1: This Article +
+ + + + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +

Related

+
+ + + + + +
+ + + + + + + + Draft + + + + + +
+ + +
The reflection of Moravec's paradox
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·1 min· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + AI + + + + + + + + Imagination + + + + + + + +
+ + + + +
+ + +
+
+ +
+
+
+ + + + + + +
+ + + + + +
+ + +
CUMCM 2024 Summary
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·8 mins· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + CUMCM + + + + + + + + Math + + + + + + + +
+ + + + +
+ + +
+
+ +
+
+
+ + + + + + +
+ + + + + +
+ + +
Python Tpis
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·1 min· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + Python + + + + + + + +
+ + + + +
+ + +
+
+ +
+
+
+ + +
+ + +
+ + + + + + + + + + + + + + + + + +
+ +
+ + +
+ + + + + + +
+ + + +

+ © + 2025 + Morethan +

+ + + + +

+ + + Powered by Hugo & Blowfish +

+ + +
+ + + + + + + + +
+ + +
+ + + diff --git a/en/index.html b/en/index.html index a70975d..2674f5e 100644 --- a/en/index.html +++ b/en/index.html @@ -1832,6 +1832,186 @@

Recent

+
+ + + + +
+ + +
+
+ +
+
+ + + + + + + +
+ +
+ + + +
+ + +
An experience of a plugin writing
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·2 mins· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + Experience + + + + + + +
@@ -2932,62 +3112,242 @@

Recent

- + + + + +
+ +
+ + + +
+ +
+ +
+
+ + + + + + + +
+ +
+ + + +
+ + +
An experience of a plugin writing
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·2 mins· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + Experience + + + + + + +
@@ -4438,10 +4978,190 @@

Recent

- + + + + CUMCM + + + + + + + +
+ + + + +
+ + +
+
+ +
+
+ + + + + + + +
+ +
+ + + +
+ + +
Python Tpis
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·1 min· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + - CUMCM + Python @@ -4467,11 +5187,11 @@

Recent

-
+
-
+
@@ -4479,7 +5199,7 @@

Recent

Python Tpis
+ href="/en/blog/cumcm2024/">CUMCM 2024 Summary
@@ -4524,7 +5244,7 @@

Recent

- ·1 min· + ·8 mins· @@ -4540,7 +5260,7 @@

Recent

- loading + loading @@ -4565,7 +5285,7 @@

Recent

- loading @@ -4618,10 +5338,18 @@

Recent

- + - Python + CUMCM + + + + + + + + Math @@ -4647,19 +5375,27 @@

Recent

-
+
-
+
+ + + + Draft + + + +
CUMCM 2024 Summary
+ href="/en/blog/moravecs-paradox/">The reflection of Moravec's paradox
@@ -4704,7 +5440,7 @@

Recent

+ + + + + + + +
+ +
+ + + +
+ + +
An experience of a plugin writing
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·2 mins· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + Experience + + + + + + +
diff --git a/en/index.json b/en/index.json index 9795989..77ed63f 100644 --- a/en/index.json +++ b/en/index.json @@ -1,4 +1,4 @@ -[{"content":" Background Overview # You should know how to interact with the computer via the command line, including but not limited to: how to open the command line/terminal in Windows, when a running command ends, etc.\nA little knowledge of bypassing internet censorship is helpful. OverLeaf is foreign software, and its related LaTeX projects are also hosted abroad. Therefore, directly accessing foreign traffic when downloading dependencies can save a lot of trouble. If you don’t have a VPN, you will need to specify a domestic source for each package manager, though sometimes the updates from domestic sources are not timely.\nBasic familiarity with Vim operations is useful, such as: how to enter insert mode, how to save and exit, how to exit without saving, etc.\nFull Deployment Process # Installing Linux # Search for a Linux distribution in the Windows App Store and download it. The author chose Kali. After installation, you can open it directly from the Start menu. Upon opening, a command-line window will pop up, and you will need to register with a username and password.\nAt this point, your command line should display a warning. This is because you haven’t installed WSL (Windows Subsystem for Linux).\nAlso, when entering the password, your input will not be displayed in the command line, but it has been recorded.\nWhy do you need a Linux system? Because OverLeaf\u0026rsquo;s ShareLaTeX model requires a Linux environment. It is said that OverLeaf runs more smoothly on Linux systems.\nInstalling WSL # To install WSL2, run the following in the Windows command line:\nwsl --install After installation, you can open it directly. Another warning will appear. At this point, you need to create a text file in the C:\\Users\\ASUS directory and rename it to .wslconfig.\nEnter the following content:\n[experimental] autoMemoryReclaim=gradual # gradual | dropcache | disabled networkingMode=mirrored dnsTunneling=true firewall=true autoProxy=true Installing Docker # Go to the Docker website to download Docker, which will be the container for the ShareLaTeX model. Docker is an open-source application container engine that includes images, containers, and repositories. Its purpose is to manage the lifecycle of application components, such as encapsulation, distribution, deployment, and operation, allowing users to \u0026ldquo;package once, run anywhere,\u0026rdquo; much like a container, developed and encapsulated by programmers, which users can directly move around.\nOnce Docker is installed, you can double-click to start it in the background. We will interact with Docker later via the command line.\nPulling the Image # Open Kali, and run the following command:\ngit clone https://github.com/overleaf/toolkit.git ./overleaf-toolkit Then run:\ncd ./overleaf-toolkit bin/init vim ./config/variables.env At this point, you should be in the document interface of the Vim text editor. Vim has many shortcuts, and pressing the \u0026quot;I\u0026quot; key will enter insert mode for text editing. Press \u0026quot;esc\u0026quot; to return to normal mode. In insert mode, type: OVERLEAF_SITE_LANGUAGE=zh-CN.\nAfter typing, press \u0026quot;esc\u0026quot; to return to normal mode, then type :wq to \u0026ldquo;save and quit.\u0026rdquo; If you make a mistake, type :e! to discard all changes and start over. This step will set your OverLeaf interface to Chinese.\nAfter successfully saving and quitting, return to the familiar Kali command-line interface and run bin/up. This will pull the ShareLaTeX image and related network tools. There will be a large amount of data transfer, so ensure that your network is stable (your VPN should be reliable!).\nConfiguring the User # Once the previous command finishes, run bin/start. At this point, open Docker and enter the ShareLaTeX container. You should see code \u0026ldquo;flashing.\u0026rdquo; If there are no red messages, everything is running normally.\nNow open a browser and visit http://localhost/launchpad.\nAfter registering an Administrator Account, you will be redirected to http://localhost/project. The basic OverLeaf webpage should now be displayed. If you compile now, it will most likely report an error ᕕ( ᐛ )ᕗ.\nThis is because ShareLaTeX is missing many required packages🙃\u0026quot;\nInstalling Extension Packages # Open Kali, navigate to the appropriate directory, and run bin/shell. Then execute the following one by one:\ncd /usr/local/texlive # Download and run the upgrade script wget http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh sh update-tlmgr-latest.sh -- --upgrade # Change the TeX Live download source tlmgr option repository https://mirrors.sustech.edu.cn/CTAN/systems/texlive/tlnet/ # Upgrade tlmgr tlmgr update --self --all # Install the full TeX Live package (this will take time, so don’t let the shell disconnect) tlmgr install scheme-full # Exit the ShareLaTeX command-line interface exit # Restart the ShareLaTeX container docker restart sharelatex After restarting, enter the shell again and run:\napt update # Install fonts apt install --no-install-recommends ttf-mscorefonts-installer fonts-noto texlive-fonts-recommended tex-gyre fonts-wqy-microhei fonts-wqy-zenhei fonts-noto-cjk fonts-noto-cjk-extra fonts-noto-color-emoji fonts-noto-extra fonts-noto-ui-core fonts-noto-ui-extra fonts-noto-unhinted fonts-texgyre # Install pygments apt install python3-pygments # Install Beamer and others apt install texlive-latex-recommended apt install texlive-latex-extra # Install English fonts echo \u0026#34;yes\u0026#34; | apt install -y --reinstall ttf-mscorefonts-installer # Install Chinese fonts apt install -y latex-cjk-all texlive-lang-chinese texlive-lang-english cp fonts/* /usr/share/fonts/zh-cn/ cd /usr/share/fonts fc-cache -fv # Update font cache fc-list :lang=zh-cn fc-match Arial Finally, in the shell directory, run:\nvim /usr/local/texlive/2023/texmf.cnf Open the configuration file and add shell_escape = t at the bottom.\nI’m not sure what this does, but it was passed down by the predecessors 🤔 Note, if the TeX Live version (the official name for extension packages) differs, the directory path may also change. You will need to adjust the path based on the actual version, for example, change 2023 to 2024.\nYou can use ls -l in the Linux command line to view all files in the current directory. Successful Deployment # Now you can happily use your local OverLeaf version without worrying about compilation timeouts~\nIf you\u0026rsquo;re lucky and happen to be a CQUer, here’s a graduation thesis template from Chongqing University, super user-friendly: CQUThesis\n","date":"12 July 2024","externalUrl":null,"permalink":"/en/blog/localoverleaf/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003eBackground Overview \n \u003cdiv id=\"background-overview\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#background-overview\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eYou should know how to interact with the computer via the command line, including but not limited to: how to open the command line/terminal in Windows, when a running command ends, etc.\u003c/p\u003e","title":"Local OverLeaf Deployment","type":"blog"},{"content":" Reference # Honestly, I\u0026rsquo;m not familiar with BayesianOPT, the opinions mentioned stem from the below. 👇\n【机器学习】一文看懂贝叶斯优化/Bayesian Optimization\n一文详解贝叶斯优化(Bayesian Optimization)原理\n贝叶斯优化(BayesianOptimization)\n超参数优\u0026mdash;贝叶斯优化及其改进(PBT优化)\n贝叶斯优化 (Bayesian Optimization)\nMATLAB Offical Document\nAdvantages \u0026amp; Algorithm Principle # Here we are going to talk about the advantages \u0026amp; algorithm principle of BayesianOPT. If you only want to konw how to use it, you can read the #Advantage section, then go to the #MATLAB Practice\nAdvantages # Algorithm Principle # MATLAB Practice # Well, we can put Bayesian Optimization into practice even though we don\u0026rsquo;t understand it, using the predefined function of MATLAB, the \u0026lsquo;bayesopt\u0026rsquo;. Here is the official guidance of the function: bayesopt\nFinal code display # % define the obj function function y = objectiveFcn(x) y = (1 - x.x1)^2 + 100 * (x.x2 - x.x1^2)^2; end % define the variables vars = [optimizableVariable(\u0026#39;x1\u0026#39;, [-2, 2]) optimizableVariable(\u0026#39;x2\u0026#39;, [-2, 2])]; % conduce the optimizer results = bayesopt(@objectiveFcn, vars, ... \u0026#39;AcquisitionFunctionName\u0026#39;, \u0026#39;expected-improvement-plus\u0026#39;, ... \u0026#39;MaxObjectiveEvaluations\u0026#39;, 30, ... \u0026#39;IsObjectiveDeterministic\u0026#39;, true, ... \u0026#39;Verbose\u0026#39;, 1); % get result bestPoint = results.XAtMinObjective; bestObjective = results.MinObjective; % result output fprintf(\u0026#39;最优解 x1: %.4f, x2: %.4f\\n\u0026#39;, bestPoint.x1, bestPoint.x2); fprintf(\u0026#39;最优目标值: %.4f\\n\u0026#39;, bestObjective); I\u0026rsquo;d commit that the code is generated by AI 🥲\nAI is a better coder, at least when comparing with me. 🫠\nParameters Explaination # Params Meaning AcquisitionFunctionName select a Acquisition Function, which determines the method how bayesopt choose the next acquisition point MaxObjectiveEvaluations the maximize evalu turns IsObjectiveDeterministic If the obj function contains noise, set to true ; Otherwise, set to false Verbose Determine the detailing extend of console output, the complete output includes many figures. Want more detailed information? Refer to the Offical document: bayesopt. It\u0026rsquo;s more completed and with amount of examples.\nIt\u0026rsquo;s basic for every MathModeler to read the offical document. 😝 ","date":"5 August 2024","externalUrl":null,"permalink":"/en/blog/bayesianopt/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003eReference \n \u003cdiv id=\"reference\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#reference\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003eHonestly, I\u0026rsquo;m not familiar with BayesianOPT, the opinions mentioned stem from the below. 👇\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://blog.csdn.net/qq_27590277/article/details/115451660\" target=\"_blank\"\u003e【机器学习】一文看懂贝叶斯优化/Bayesian Optimization\u003c/a\u003e\u003c/p\u003e","title":"Bayesian Optimization","type":"blog"},{"content":" Virtual Env # Creat # Some tipical code 👇\n# creat a virtual env named \u0026#34;your_env_name\u0026#34; python -m venv your_env_name # assign the version of python, make sure your python in default direction python -m venv your_env_name --python=python3.11 # simply list the absolute direction of python, simple and efficient D:\\Python\\Python311\\python.exe -m venv your_env_name More parameters you may need for a customized virtual env. 🤔\nParams Meaning --system-site-packages Give the virtual environment access to the system site-packages dir. --clear Delete the contents of the environment directory if it already exists, before environment creation. --version print the python version of the env All the detailed expaination of the parameters can be got by the code python -m venv -h. No need to search everywhere~😆 Activate # The virtual env is defaulted not active. In the direction your_env_name/Scripts/ will be a file named activate. Run it with your cmd.\n# activate virtual env your_env_name/Scripts/activate ","date":"10 August 2024","externalUrl":null,"permalink":"/en/blog/pythontips/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003eVirtual Env \n \u003cdiv id=\"virtual-env\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#virtual-env\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\n\n\u003ch3 class=\"relative group\"\u003eCreat \n \u003cdiv id=\"creat\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#creat\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h3\u003e\n\u003cp\u003eSome tipical code 👇\u003c/p\u003e","title":"Python Tpis","type":"blog"},{"content":" Preface # This article is primarily a review and summary of the entire process of CUMCM 2024.\nOur team was formed in the winter of 2023, and CUMCM 2024 was our first participation in the \u0026ldquo;Mathematical Modeling\u0026rdquo; competition. After numerous mock contests, we finally made it to the national competition. After submitting the final paper, we won the first prize at the provincial level and were recommended for the first prize at the national level, ultimately receiving the second prize at the national level.\nThere were moments of excitement and surprise, as well as disappointment; we must have done some things right in the competition, which is why we won a national award in our first attempt; but there are definitely shortcomings, after all, there must be a reason for going from \u0026ldquo;recommended for the first prize at the national level\u0026rdquo; to \u0026ldquo;second prize at the national level\u0026rdquo;.\nIn short, this experience is truly unforgettable, and it is even more worth summarizing and learning from the experience to prepare for next year\u0026rsquo;s competition.\nCUMCM stands for Chinese Undergraduate Mathematical Contest in Modeling; it is commonly referred to as the \u0026ldquo;National Mathematical Modeling Competition\u0026rdquo;. Terminology Explanation # Term Explanation Computational System The traditional modeling process, encapsulating a large function Optimization System A system used to optimize the adjustable parameters in the computational system to generate the best parameter configuration Computational Flow The process of handling input data in the computational system Computational Flow Node A key intermediate step in the workflow Optimization Flow The main logic of the optimization system Main Body of the Paper Includes the abstract, restatement, descriptions of computational and optimization flows, results presentation and analysis, that is, all content before the conclusion of the paper Conclusion of the Paper Includes sensitivity analysis and model extension Objective Conditions # Task Division # Although there were many topics to choose from for the competition, our group chose to focus on optimization problems, which is Topic A.\nMe: Modeling + Coding + Part of Paper Writing CL: Modeling + Paper Writing + Part of Coding HWJ: Paper Beautification Workflow # The coding part of the entire Topic A can be roughly divided into two systems:\nComputational System: Function: Accept input data and parameters, return the required results Nature: Directly determined by the problem, different topics have different computational systems, which need to be constructed temporarily Optimization System: Function: Accept the computational system as the target function to be optimized, execute its own optimization logic, and finally return the computational results Nature: The method system is relatively mature and can be prepared in advance of the competition with various optimization systems The paper writing part is divided into:\nOverall Framework: Determined by the LaTeX template Main Content Filling: Clear description of the workflow and optimization flow Typesetting and Beautification: Adjust the details of each part, with illustrative images (flowcharts, schematics) Concluding Content Pre-Modeling # Objective: Under the premise of accurately understanding the problem, quickly carry out preliminary modeling, basically determine the direction of modeling and calculation methods;\nEstimated Time: 3 hours\nWork: All team members conduct a web search to see if there are any literature materials that basically hit the topic.\nHit Successful: The most ideal situation, at this time, you can directly study the papers and collect ideas; Hit Unsuccessful: Although there are no ready-made materials for reference, some ideas have been accumulated in the process of literature review. Early Modeling # Overall Objective: Construct a precise and optimization method adaptable computational system\nModeling: Clarify the operations between input data and each computational flow node Coding: Implement the computational flow with code and achieve data visualization Paper: Fill in the content of the first question and initially typeset Estimated Time: 30 hours\nWork:\nAll team members model together, first clarify the modeling ideas, and provide a complete mathematical derivation process Me and CL: Code implementation and paper content filling are carried out simultaneously HWJ: Draw more vivid schematic diagrams that cannot be generated by code Mid-Modeling # Overall Objective: Construct a suitable optimization system\nModeling: According to the particularity of the computational system, choose the most matching optimization system Coding: Make minor changes in the implementation of the optimization system to match the computational system Paper: Complete the main part of the paper and start local detail fine-tuning Estimated Time: 20 hours\nWork: Similar to the previous, but the focus of work has shifted from code writing to paper writing\nSimplify the paper, at this time, the paper is very bloated Fine-tune the logic of the paper to make the context more closely related Beautify the typesetting, reduce text, increase images Late Modeling # The basic modeling is completed, and all members check for loopholes: Conventional checks such as typos, inaccurate expressions, formula spelling errors, etc. Optimize code comments to make them more readable Focus on checking personal information Personal information must not be retained in the competition paper, including file paths in the code, such as C:\\Users\\Morethan; retaining personal information is a very serious mistake! Actual Combat Effectiveness # When we applied the above strategies to the actual combat process, that is, the formal competition of CUMCM 2024, the results were as follows:\nEffective Time: The total duration of the competition is three days, a total of 72 hours The team works from seven in the morning to eight in the evening, excluding meal times, with an effective time of 12 hours a day Time utilization rate is \\( 50 \\% \\) (quite low in comparison🤔) Completed Work: The main body of the paper is 28 A4 pages The code part is 35 A4 pages, excluding the reused code between each sub-question, there should be about 20 pages A total of 25 illustrations in the paper The above data is after the paper has been streamlined, with the initial draft of the paper being nearly 50 pages Uncompleted Work: The final result calculation, due to the large amount of calculation (the code efficiency is not high), the code was finished two hours in advance, but there was not enough time to calculate the results😭😭 The calculation accuracy of the model is not enough, the accuracy is 1s which does not meet the standard answer\u0026rsquo;s precision The conclusion part of the paper was not actually completed Strengths # Topic Selection # Focused on Topic A, accumulated sufficient experience in mock contests, and polished a set of efficient workflows\nThe methodology for Topic A is relatively well-constructed\nWorkflow # The workflow is relatively clear, and the efficiency is high\nGuided by the final paper, modeling, paper, and code are carried out simultaneously, ensuring sufficient content in the paper\nDivision of Labor # Adopted a blurred division of labor, each team member has a main job and a secondary job, can work independently on their main job, and can also complete some work on the secondary job, greatly improving time utilization\nThe team members are very capable, as handling two division tasks means more learning costs\nWeaknesses # Workflow # The plan is perfect, but some necessary links were not well done in practice\nEffective time ratio: finishing work at eight in the evening is too early! More time should be taken to model trial and error to ensure the correctness and accuracy of the model\nDivision of Labor # The code writing, code debugging, code visualization, result calculation, and result visualization involve too much code, which is difficult for one person to handle;\nTask overlap caused by blurred division of labor increases collaboration costs\nModeling # Topic understanding accuracy: This time, there was a significant deviation in our understanding of the topic, which led to wasting a lot of time on model correction; Code # Code efficiency: Due to no time limit before, there was insufficient preparation for \u0026ldquo;very long\u0026rdquo; code, no experience with code parallelism;\nResult precision: The initial modeling was too rough, and a bad characteristic was used: setting the time step to 1, and using it as an array index, which made it difficult to reduce the time step later, resulting in insufficient precision of the final results\nImprovement Plans # Carefully select the venue, increasing effective time✨is the most important✨ Division of Labor # Slightly change the division of labor, increase the investment of human resources in coding\nIncrease learning input in each main and secondary division to increase work efficiency\nModeling # Focus more on understanding the topic, don\u0026rsquo;t rush; correcting modeling errors is not worth the loss Code # Build a set of effective code collaboration plans to enhance code writing speed\nStart building code writing standards:\nVariable naming Documentation at the beginning of the file Code writing process standards Code parallelization: Add some parallelizable code to the code to increase running speed\nAll code improvements must be implemented in a document! Not just slogans! Paper # Study excellent papers\nPay attention to its paper framework Pay attention to its language style, text readability, detail, illustration logic, and image readability Improve ourselves\nOptimize the paper\u0026rsquo;s main logic framework, refine the content of each section Improvements in language style, text readability, detail, illustration logic, and image readability, etc. The results are fixed in the form of comments in the LaTeX template! Summary # A test paper without full marks is more rewarding than one with full marks!\nAccumulating knowledge of applied mathematics, enhancing paper writing skills, and improving the ability to discover problems are more meaningful than the competition itself. 🫡\nCUMCM, every MathModeler can benefit from it. 🤗\n","date":"12 September 2024","externalUrl":null,"permalink":"/en/blog/cumcm2024/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003ePreface \n \u003cdiv id=\"preface\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#preface\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003eThis article is primarily a review and summary of the entire process of CUMCM 2024.\u003c/p\u003e","title":"CUMCM 2024 Summary","type":"blog"},{"content":"Morethan\u0026rsquo;s dummy blog page~\n","date":"3 January 2025","externalUrl":null,"permalink":"/en/blog/moravecs-paradox/","section":"Blogs","summary":"\u003cp\u003eMorethan\u0026rsquo;s dummy blog page~\u003c/p\u003e","title":"The reflection of Moravec's paradox","type":"blog"},{"content":" 记一次写插件的经历,以及从中收获的一些感想。 缘由 # 事情起源于我这个博客网站。我在微信公众号上偶然间浏览到了关于用 Hugo 建立博客网站的信息,正好我也想翻新一下我那简陋的小网站。我原来的小网站非常非常的原始,整个写作流程都需要在 HTML JS 和 CSS 之间狼狈地切换。并且我非常崇拜的大佬 Lilian Weng 的 博客 也是用 Hugo 搭建的,这也更加坚定了我换底层的决心。\n于是我便迅速开始了对于 Hugo 的接触。\n结果真的出乎意料!我原来的网页花费了我将近一个月的时间,用 Hugo 竟然不到一上午就搞定了。更令我惊讶的是 Hugo 作为一个用 Go 编写的程序,其竟然不需要用户搭建 Go 环境!😮\n同时,我也发现了一个非常用心的 Hugo 主题 Blowfish 。这真的是我见过的文档配置最为详细的一个项目,没有之一(๑•̀ㅂ•́)و✧\n在 Hugo 和 Blowfish 的强力驱动下,我的小网站竟然变得像模像样的了。当然请原谅我并不擅长美化页面,所以我就直接套用了 Blowfish 官方网站的界面设置,因为我觉得任何的改动都会让这个精美的页面变得不协调。\n说实话,做完这一切我并没有什么特别的情绪波动,除了敬佩 Hugo 和 Blowfish 的作者们强悍的编码能力。\n直到我想将我在 Obsidian 中大量的笔记都上传到这个博客网站。\n原创的苦涩 # 我发现在 Obsidian 中并没有现成的可以直接适配 Blowfish 主题的格式转换插件。于是在前面那“愉快体验”的助推下,我决定自己写一个插件!(😄虽然过一会儿就笑不出来了😢)\n后面的经历实在是没什么好描述的,一遍又一遍地在网页之间来回切换,不停地搜索各种API文档,与AI机器人的沟通也从未停止。经过了无数次修改,我终于写出来了一个再简单不过的东西:识别文档中的固定模式然后进行内容替换。\n令人哭笑不得,相比于创建网站那短短的几个小时,我这将近四十个小时的工作几乎可以说微不足道。有那么一瞬间我真的想直接删掉我那几百行的代码。\n是的,就这么一个简单的插件就让我心力交瘁,疲惫不堪。我亲口品尝到了原创的苦涩。\n现在让我回头看 Hugo 和 Blowfish 我感受到了深深的震撼,如此复杂的功能实现不知道要消耗多少经历。如果说他们的工作都是付费的,那我还能心安理得地接受如此的工作量。然而他们都是开源的,有没有收入全凭用户喜好。\n我看着 Blowfish 作者那停滞在2024年3月的博客,我陷入了沉思。\n情怀与理想 # 我猜想 Blowfish 的作者肯定是因为别的什么事情暂时放缓了对于这个主题的维护,毕竟这个项目并没有带来多少实际的收入。\n突然之间我回想起了之前那些被我忽略的现象,一些 GitHub 达人主页上满满的绿色瓷砖慢慢变得稀疏,最后消失。在这平静如水的变化之下,或许是一个人生活的转变。或因生活工作忙碌,或因开发动力逐渐衰减,但最后原本的热血初心都淹没在了寂静之中。我无法阻止这样的现象发生,但我理解这背后的原因。\n开源是情怀,但是情怀不能当饭吃。人总是要活在当下的。\n我想起来 bilibili 上的一位博主 码农高天 ,一位 Python 的核心开发者,用幽默诙谐的段子吐槽开源人的悲惨待遇。他那年纪轻轻就已经花白的头发让人不经感慨“生活真是不容易啊”——写了大半辈子的代码,现在竟然还是待业在家,靠着发发视频赚点外快。\n写在最后 # 人生不如意,十之八九。我又一次看着那四十多小时的工作成功,笑着摇了摇头。\n写完这一句,我就睡觉去了,现在是2025年1月6日凌晨1:48,明天还有英语的期末考试,还没复习呢。\n我看着这篇博客,又一次笑着摇了摇头。\n这就是生活。\n","date":"2024-01-06","externalUrl":null,"permalink":"/blog/plugin-writing-experience/","section":"Blogs","summary":"\u003cdiv class=\"lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl\"\u003e\n 记一次写插件的经历,以及从中收获的一些感想。\n\u003c/div\u003e\n\n\n\n\u003ch3 class=\"relative group\"\u003e缘由 \n \u003cdiv id=\"%E7%BC%98%E7%94%B1\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E7%BC%98%E7%94%B1\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h3\u003e\n\u003cp\u003e事情起源于我这个博客网站。我在微信公众号上偶然间浏览到了关于用 \u003ccode\u003eHugo\u003c/code\u003e 建立博客网站的信息,正好我也想翻新一下我那简陋的小网站。我原来的小网站非常非常的原始,整个写作流程都需要在 \u003ccode\u003eHTML\u003c/code\u003e \u003ccode\u003eJS\u003c/code\u003e 和 \u003ccode\u003eCSS\u003c/code\u003e 之间狼狈地切换。并且我非常崇拜的大佬 \u003ccode\u003eLilian Weng\u003c/code\u003e 的 \u003ca href=\"https://lilianweng.github.io/\" target=\"_blank\"\u003e博客\u003c/a\u003e 也是用 \u003ccode\u003eHugo\u003c/code\u003e 搭建的,这也更加坚定了我换底层的决心。\u003c/p\u003e","title":"一次写插件经历","type":"blog"},{"content":"","date":"6 January 2025","externalUrl":null,"permalink":"/en/blog/","section":"Blogs","summary":"","title":"Blogs","type":"blog"},{"content":" ","date":"6 January 2025","externalUrl":null,"permalink":"/en/","section":"Welcome to More's website","summary":"\u003c!-- \u003cdiv class=\"flex px-4 py-2 mb-8 text-base rounded-md bg-primary-100 dark:bg-primary-900\"\u003e\n \u003cspan class=\"flex items-center ltr:pr-3 rtl:pl-3 text-primary-400\"\u003e\n \n \n \u003cspan class=\"relative inline-block align-text-bottom icon\"\u003e\n \u003csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"\u003e\u003cpath fill=\"currentColor\" d=\"M506.3 417l-213.3-364c-16.33-28-57.54-28-73.98 0l-213.2 364C-10.59 444.9 9.849 480 42.74 480h426.6C502.1 480 522.6 445 506.3 417zM232 168c0-13.25 10.75-24 24-24S280 154.8 280 168v128c0 13.25-10.75 24-23.1 24S232 309.3 232 296V168zM256 416c-17.36 0-31.44-14.08-31.44-31.44c0-17.36 14.07-31.44 31.44-31.44s31.44 14.08 31.44 31.44C287.4 401.9 273.4 416 256 416z\"/\u003e\u003c/svg\u003e\n \n \u003c/span\u003e\n \n\n \u003c/span\u003e\n \u003cspan class=\"flex items-center justify-between grow dark:text-neutral-300\"\u003e\n \u003cspan class=\"prose dark:prose-invert\"\u003eThis is a demo of the \u003ccode id=\"layout\"\u003ebackground\u003c/code\u003e layout.\u003c/span\u003e\n \u003cbutton\n id=\"switch-layout-button\"\n class=\"px-4 !text-neutral !no-underline rounded-md bg-primary-600 hover:!bg-primary-500 dark:bg-primary-800 dark:hover:!bg-primary-700\"\n \u003e\n Switch layout \u0026orarr;\n \u003c/button\u003e\n \u003c/span\u003e\n\u003c/div\u003e --\u003e","title":"Welcome to More's website","type":"page"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/tags/ai/","section":"Tags","summary":"","title":"AI","type":"tags"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/series/ai%E9%81%90%E6%83%B3/","section":"系列","summary":"","title":"AI遐想","type":"series"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/authors/","section":"Authors List","summary":"","title":"Authors List","type":"authors"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/tags/imagination/","section":"Tags","summary":"","title":"Imagination","type":"tags"},{"content":" Hi, welcome to my info page. 👋 # Basic Info # My casual English name is Morethan because it resembles my Chinese name. 🙃\nNow I\u0026rsquo;m a university student in China. ᕕ( ᐛ )ᕗ Nothing more to say. 🫠\nBlog Focus # Personal Knowledge Base: to store frequently-used operations and valuable experience.\nMicro Paper Stack: to store inspirations for my Graduation Thesis, usually serious and logical, attempt to follow the standard thesis working stream.\nKnowledge Outlet: to put what I leant into practice.\nFinal # If you find the content is useful, click a like please at the beginning of that page. 🤗\nIf you want to share the content, cite this website please. 🫡\nIf you find some bug, push an issue on the GitHub please. 🥰\n","date":"3 January 2025","externalUrl":null,"permalink":"/en/authors/morethan/","section":"Authors List","summary":"\u003ch1 class=\"relative group\"\u003eHi, welcome to my info page. 👋 \n \u003cdiv id=\"hi-welcome-to-my-info-page-\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#hi-welcome-to-my-info-page-\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h1\u003e\n\n\n\u003ch2 class=\"relative group\"\u003eBasic Info \n \u003cdiv id=\"basic-info\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#basic-info\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003eMy casual English name is Morethan because it resembles my Chinese name. 🙃\u003c/p\u003e","title":"Morethan","type":"authors"},{"content":" ","date":"3 January 2025","externalUrl":null,"permalink":"/en/series/","section":"Seires","summary":"\u003chr\u003e","title":"Seires","type":"series"},{"content":" ","date":"3 January 2025","externalUrl":null,"permalink":"/en/tags/","section":"Tags","summary":"\u003chr\u003e","title":"Tags","type":"tags"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/series/wild-imagination-of-ai/","section":"Seires","summary":"","title":"Wild Imagination of AI","type":"series"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/tags/%E9%81%90%E6%83%B3/","section":"标签","summary":"","title":"遐想","type":"tags"},{"content":"","date":"12 September 2024","externalUrl":null,"permalink":"/en/tags/cumcm/","section":"Tags","summary":"","title":"CUMCM","type":"tags"},{"content":"","date":"12 September 2024","externalUrl":null,"permalink":"/en/tags/math/","section":"Tags","summary":"","title":"Math","type":"tags"},{"content":"","date":"12 September 2024","externalUrl":null,"permalink":"/en/series/mathmodel/","section":"Seires","summary":"","title":"MathModel","type":"series"},{"content":"","date":"2024-09-12","externalUrl":null,"permalink":"/series/%E6%95%B0%E5%AD%A6%E5%BB%BA%E6%A8%A1/","section":"系列","summary":"","title":"数学建模","type":"series"},{"content":"","date":"10 August 2024","externalUrl":null,"permalink":"/en/series/operation/","section":"Seires","summary":"","title":"Operation","type":"series"},{"content":"","date":"10 August 2024","externalUrl":null,"permalink":"/en/tags/python/","section":"Tags","summary":"","title":"Python","type":"tags"},{"content":"","date":"2024-08-10","externalUrl":null,"permalink":"/series/%E6%8A%80%E6%9C%AF%E6%B5%81%E7%A8%8B/","section":"系列","summary":"","title":"技术流程","type":"series"},{"content":"","date":"5 August 2024","externalUrl":null,"permalink":"/en/tags/matlab/","section":"Tags","summary":"","title":"MATLAB","type":"tags"},{"content":"","date":"12 July 2024","externalUrl":null,"permalink":"/en/tags/latex/","section":"Tags","summary":"","title":"LaTeX","type":"tags"},{"content":"","date":"12 July 2024","externalUrl":null,"permalink":"/en/tags/overleaf/","section":"Tags","summary":"","title":"Overleaf","type":"tags"},{"content":"","date":"2024-01-06","externalUrl":null,"permalink":"/tags/%E7%BB%8F%E5%8E%86/","section":"标签","summary":"","title":"经历","type":"tags"},{"content":"","date":"2024-01-06","externalUrl":null,"permalink":"/series/%E9%9A%8F%E7%AC%94/","section":"系列","summary":"","title":"随笔","type":"series"},{"content":"This is the advanced tag. Just like other listing pages in Blowfish, you can add custom content to individual taxonomy terms and it will be displayed at the top of the term listing. \u0026#x1f680;\nYou can also use these content pages to define Hugo metadata like titles and descriptions that will be used for SEO and other purposes.\n","externalUrl":null,"permalink":"/en/tags/advanced/","section":"Tags","summary":"\u003cp\u003eThis is the advanced tag. Just like other listing pages in Blowfish, you can add custom content to individual taxonomy terms and it will be displayed at the top of the term listing. \u0026#x1f680;\u003c/p\u003e","title":"Advanced","type":"tags"},{"content":"","externalUrl":null,"permalink":"/en/categories/","section":"Categories","summary":"","title":"Categories","type":"categories"}] \ No newline at end of file +[{"content":" Background Overview # You should know how to interact with the computer via the command line, including but not limited to: how to open the command line/terminal in Windows, when a running command ends, etc.\nA little knowledge of bypassing internet censorship is helpful. OverLeaf is foreign software, and its related LaTeX projects are also hosted abroad. Therefore, directly accessing foreign traffic when downloading dependencies can save a lot of trouble. If you don’t have a VPN, you will need to specify a domestic source for each package manager, though sometimes the updates from domestic sources are not timely.\nBasic familiarity with Vim operations is useful, such as: how to enter insert mode, how to save and exit, how to exit without saving, etc.\nFull Deployment Process # Installing Linux # Search for a Linux distribution in the Windows App Store and download it. The author chose Kali. After installation, you can open it directly from the Start menu. Upon opening, a command-line window will pop up, and you will need to register with a username and password.\nAt this point, your command line should display a warning. This is because you haven’t installed WSL (Windows Subsystem for Linux).\nAlso, when entering the password, your input will not be displayed in the command line, but it has been recorded.\nWhy do you need a Linux system? Because OverLeaf\u0026rsquo;s ShareLaTeX model requires a Linux environment. It is said that OverLeaf runs more smoothly on Linux systems.\nInstalling WSL # To install WSL2, run the following in the Windows command line:\nwsl --install After installation, you can open it directly. Another warning will appear. At this point, you need to create a text file in the C:\\Users\\ASUS directory and rename it to .wslconfig.\nEnter the following content:\n[experimental] autoMemoryReclaim=gradual # gradual | dropcache | disabled networkingMode=mirrored dnsTunneling=true firewall=true autoProxy=true Installing Docker # Go to the Docker website to download Docker, which will be the container for the ShareLaTeX model. Docker is an open-source application container engine that includes images, containers, and repositories. Its purpose is to manage the lifecycle of application components, such as encapsulation, distribution, deployment, and operation, allowing users to \u0026ldquo;package once, run anywhere,\u0026rdquo; much like a container, developed and encapsulated by programmers, which users can directly move around.\nOnce Docker is installed, you can double-click to start it in the background. We will interact with Docker later via the command line.\nPulling the Image # Open Kali, and run the following command:\ngit clone https://github.com/overleaf/toolkit.git ./overleaf-toolkit Then run:\ncd ./overleaf-toolkit bin/init vim ./config/variables.env At this point, you should be in the document interface of the Vim text editor. Vim has many shortcuts, and pressing the \u0026quot;I\u0026quot; key will enter insert mode for text editing. Press \u0026quot;esc\u0026quot; to return to normal mode. In insert mode, type: OVERLEAF_SITE_LANGUAGE=zh-CN.\nAfter typing, press \u0026quot;esc\u0026quot; to return to normal mode, then type :wq to \u0026ldquo;save and quit.\u0026rdquo; If you make a mistake, type :e! to discard all changes and start over. This step will set your OverLeaf interface to Chinese.\nAfter successfully saving and quitting, return to the familiar Kali command-line interface and run bin/up. This will pull the ShareLaTeX image and related network tools. There will be a large amount of data transfer, so ensure that your network is stable (your VPN should be reliable!).\nConfiguring the User # Once the previous command finishes, run bin/start. At this point, open Docker and enter the ShareLaTeX container. You should see code \u0026ldquo;flashing.\u0026rdquo; If there are no red messages, everything is running normally.\nNow open a browser and visit http://localhost/launchpad.\nAfter registering an Administrator Account, you will be redirected to http://localhost/project. The basic OverLeaf webpage should now be displayed. If you compile now, it will most likely report an error ᕕ( ᐛ )ᕗ.\nThis is because ShareLaTeX is missing many required packages🙃\u0026quot;\nInstalling Extension Packages # Open Kali, navigate to the appropriate directory, and run bin/shell. Then execute the following one by one:\ncd /usr/local/texlive # Download and run the upgrade script wget http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh sh update-tlmgr-latest.sh -- --upgrade # Change the TeX Live download source tlmgr option repository https://mirrors.sustech.edu.cn/CTAN/systems/texlive/tlnet/ # Upgrade tlmgr tlmgr update --self --all # Install the full TeX Live package (this will take time, so don’t let the shell disconnect) tlmgr install scheme-full # Exit the ShareLaTeX command-line interface exit # Restart the ShareLaTeX container docker restart sharelatex After restarting, enter the shell again and run:\napt update # Install fonts apt install --no-install-recommends ttf-mscorefonts-installer fonts-noto texlive-fonts-recommended tex-gyre fonts-wqy-microhei fonts-wqy-zenhei fonts-noto-cjk fonts-noto-cjk-extra fonts-noto-color-emoji fonts-noto-extra fonts-noto-ui-core fonts-noto-ui-extra fonts-noto-unhinted fonts-texgyre # Install pygments apt install python3-pygments # Install Beamer and others apt install texlive-latex-recommended apt install texlive-latex-extra # Install English fonts echo \u0026#34;yes\u0026#34; | apt install -y --reinstall ttf-mscorefonts-installer # Install Chinese fonts apt install -y latex-cjk-all texlive-lang-chinese texlive-lang-english cp fonts/* /usr/share/fonts/zh-cn/ cd /usr/share/fonts fc-cache -fv # Update font cache fc-list :lang=zh-cn fc-match Arial Finally, in the shell directory, run:\nvim /usr/local/texlive/2023/texmf.cnf Open the configuration file and add shell_escape = t at the bottom.\nI’m not sure what this does, but it was passed down by the predecessors 🤔 Note, if the TeX Live version (the official name for extension packages) differs, the directory path may also change. You will need to adjust the path based on the actual version, for example, change 2023 to 2024.\nYou can use ls -l in the Linux command line to view all files in the current directory. Successful Deployment # Now you can happily use your local OverLeaf version without worrying about compilation timeouts~\nIf you\u0026rsquo;re lucky and happen to be a CQUer, here’s a graduation thesis template from Chongqing University, super user-friendly: CQUThesis\n","date":"12 July 2024","externalUrl":null,"permalink":"/en/blog/localoverleaf/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003eBackground Overview \n \u003cdiv id=\"background-overview\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#background-overview\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eYou should know how to interact with the computer via the command line, including but not limited to: how to open the command line/terminal in Windows, when a running command ends, etc.\u003c/p\u003e","title":"Local OverLeaf Deployment","type":"blog"},{"content":" Reference # Honestly, I\u0026rsquo;m not familiar with BayesianOPT, the opinions mentioned stem from the below. 👇\n【机器学习】一文看懂贝叶斯优化/Bayesian Optimization\n一文详解贝叶斯优化(Bayesian Optimization)原理\n贝叶斯优化(BayesianOptimization)\n超参数优\u0026mdash;贝叶斯优化及其改进(PBT优化)\n贝叶斯优化 (Bayesian Optimization)\nMATLAB Offical Document\nAdvantages \u0026amp; Algorithm Principle # Here we are going to talk about the advantages \u0026amp; algorithm principle of BayesianOPT. If you only want to konw how to use it, you can read the #Advantage section, then go to the #MATLAB Practice\nAdvantages # Algorithm Principle # MATLAB Practice # Well, we can put Bayesian Optimization into practice even though we don\u0026rsquo;t understand it, using the predefined function of MATLAB, the \u0026lsquo;bayesopt\u0026rsquo;. Here is the official guidance of the function: bayesopt\nFinal code display # % define the obj function function y = objectiveFcn(x) y = (1 - x.x1)^2 + 100 * (x.x2 - x.x1^2)^2; end % define the variables vars = [optimizableVariable(\u0026#39;x1\u0026#39;, [-2, 2]) optimizableVariable(\u0026#39;x2\u0026#39;, [-2, 2])]; % conduce the optimizer results = bayesopt(@objectiveFcn, vars, ... \u0026#39;AcquisitionFunctionName\u0026#39;, \u0026#39;expected-improvement-plus\u0026#39;, ... \u0026#39;MaxObjectiveEvaluations\u0026#39;, 30, ... \u0026#39;IsObjectiveDeterministic\u0026#39;, true, ... \u0026#39;Verbose\u0026#39;, 1); % get result bestPoint = results.XAtMinObjective; bestObjective = results.MinObjective; % result output fprintf(\u0026#39;最优解 x1: %.4f, x2: %.4f\\n\u0026#39;, bestPoint.x1, bestPoint.x2); fprintf(\u0026#39;最优目标值: %.4f\\n\u0026#39;, bestObjective); I\u0026rsquo;d commit that the code is generated by AI 🥲\nAI is a better coder, at least when comparing with me. 🫠\nParameters Explaination # Params Meaning AcquisitionFunctionName select a Acquisition Function, which determines the method how bayesopt choose the next acquisition point MaxObjectiveEvaluations the maximize evalu turns IsObjectiveDeterministic If the obj function contains noise, set to true ; Otherwise, set to false Verbose Determine the detailing extend of console output, the complete output includes many figures. Want more detailed information? Refer to the Offical document: bayesopt. It\u0026rsquo;s more completed and with amount of examples.\nIt\u0026rsquo;s basic for every MathModeler to read the offical document. 😝 ","date":"5 August 2024","externalUrl":null,"permalink":"/en/blog/bayesianopt/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003eReference \n \u003cdiv id=\"reference\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#reference\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003eHonestly, I\u0026rsquo;m not familiar with BayesianOPT, the opinions mentioned stem from the below. 👇\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://blog.csdn.net/qq_27590277/article/details/115451660\" target=\"_blank\"\u003e【机器学习】一文看懂贝叶斯优化/Bayesian Optimization\u003c/a\u003e\u003c/p\u003e","title":"Bayesian Optimization","type":"blog"},{"content":" Virtual Env # Creat # Some tipical code 👇\n# creat a virtual env named \u0026#34;your_env_name\u0026#34; python -m venv your_env_name # assign the version of python, make sure your python in default direction python -m venv your_env_name --python=python3.11 # simply list the absolute direction of python, simple and efficient D:\\Python\\Python311\\python.exe -m venv your_env_name More parameters you may need for a customized virtual env. 🤔\nParams Meaning --system-site-packages Give the virtual environment access to the system site-packages dir. --clear Delete the contents of the environment directory if it already exists, before environment creation. --version print the python version of the env All the detailed expaination of the parameters can be got by the code python -m venv -h. No need to search everywhere~😆 Activate # The virtual env is defaulted not active. In the direction your_env_name/Scripts/ will be a file named activate. Run it with your cmd.\n# activate virtual env your_env_name/Scripts/activate ","date":"10 August 2024","externalUrl":null,"permalink":"/en/blog/pythontips/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003eVirtual Env \n \u003cdiv id=\"virtual-env\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#virtual-env\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\n\n\u003ch3 class=\"relative group\"\u003eCreat \n \u003cdiv id=\"creat\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#creat\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h3\u003e\n\u003cp\u003eSome tipical code 👇\u003c/p\u003e","title":"Python Tpis","type":"blog"},{"content":" Preface # This article is primarily a review and summary of the entire process of CUMCM 2024.\nOur team was formed in the winter of 2023, and CUMCM 2024 was our first participation in the \u0026ldquo;Mathematical Modeling\u0026rdquo; competition. After numerous mock contests, we finally made it to the national competition. After submitting the final paper, we won the first prize at the provincial level and were recommended for the first prize at the national level, ultimately receiving the second prize at the national level.\nThere were moments of excitement and surprise, as well as disappointment; we must have done some things right in the competition, which is why we won a national award in our first attempt; but there are definitely shortcomings, after all, there must be a reason for going from \u0026ldquo;recommended for the first prize at the national level\u0026rdquo; to \u0026ldquo;second prize at the national level\u0026rdquo;.\nIn short, this experience is truly unforgettable, and it is even more worth summarizing and learning from the experience to prepare for next year\u0026rsquo;s competition.\nCUMCM stands for Chinese Undergraduate Mathematical Contest in Modeling; it is commonly referred to as the \u0026ldquo;National Mathematical Modeling Competition\u0026rdquo;. Terminology Explanation # Term Explanation Computational System The traditional modeling process, encapsulating a large function Optimization System A system used to optimize the adjustable parameters in the computational system to generate the best parameter configuration Computational Flow The process of handling input data in the computational system Computational Flow Node A key intermediate step in the workflow Optimization Flow The main logic of the optimization system Main Body of the Paper Includes the abstract, restatement, descriptions of computational and optimization flows, results presentation and analysis, that is, all content before the conclusion of the paper Conclusion of the Paper Includes sensitivity analysis and model extension Objective Conditions # Task Division # Although there were many topics to choose from for the competition, our group chose to focus on optimization problems, which is Topic A.\nMe: Modeling + Coding + Part of Paper Writing CL: Modeling + Paper Writing + Part of Coding HWJ: Paper Beautification Workflow # The coding part of the entire Topic A can be roughly divided into two systems:\nComputational System: Function: Accept input data and parameters, return the required results Nature: Directly determined by the problem, different topics have different computational systems, which need to be constructed temporarily Optimization System: Function: Accept the computational system as the target function to be optimized, execute its own optimization logic, and finally return the computational results Nature: The method system is relatively mature and can be prepared in advance of the competition with various optimization systems The paper writing part is divided into:\nOverall Framework: Determined by the LaTeX template Main Content Filling: Clear description of the workflow and optimization flow Typesetting and Beautification: Adjust the details of each part, with illustrative images (flowcharts, schematics) Concluding Content Pre-Modeling # Objective: Under the premise of accurately understanding the problem, quickly carry out preliminary modeling, basically determine the direction of modeling and calculation methods;\nEstimated Time: 3 hours\nWork: All team members conduct a web search to see if there are any literature materials that basically hit the topic.\nHit Successful: The most ideal situation, at this time, you can directly study the papers and collect ideas; Hit Unsuccessful: Although there are no ready-made materials for reference, some ideas have been accumulated in the process of literature review. Early Modeling # Overall Objective: Construct a precise and optimization method adaptable computational system\nModeling: Clarify the operations between input data and each computational flow node Coding: Implement the computational flow with code and achieve data visualization Paper: Fill in the content of the first question and initially typeset Estimated Time: 30 hours\nWork:\nAll team members model together, first clarify the modeling ideas, and provide a complete mathematical derivation process Me and CL: Code implementation and paper content filling are carried out simultaneously HWJ: Draw more vivid schematic diagrams that cannot be generated by code Mid-Modeling # Overall Objective: Construct a suitable optimization system\nModeling: According to the particularity of the computational system, choose the most matching optimization system Coding: Make minor changes in the implementation of the optimization system to match the computational system Paper: Complete the main part of the paper and start local detail fine-tuning Estimated Time: 20 hours\nWork: Similar to the previous, but the focus of work has shifted from code writing to paper writing\nSimplify the paper, at this time, the paper is very bloated Fine-tune the logic of the paper to make the context more closely related Beautify the typesetting, reduce text, increase images Late Modeling # The basic modeling is completed, and all members check for loopholes: Conventional checks such as typos, inaccurate expressions, formula spelling errors, etc. Optimize code comments to make them more readable Focus on checking personal information Personal information must not be retained in the competition paper, including file paths in the code, such as C:\\Users\\Morethan; retaining personal information is a very serious mistake! Actual Combat Effectiveness # When we applied the above strategies to the actual combat process, that is, the formal competition of CUMCM 2024, the results were as follows:\nEffective Time: The total duration of the competition is three days, a total of 72 hours The team works from seven in the morning to eight in the evening, excluding meal times, with an effective time of 12 hours a day Time utilization rate is \\( 50 \\% \\) (quite low in comparison🤔) Completed Work: The main body of the paper is 28 A4 pages The code part is 35 A4 pages, excluding the reused code between each sub-question, there should be about 20 pages A total of 25 illustrations in the paper The above data is after the paper has been streamlined, with the initial draft of the paper being nearly 50 pages Uncompleted Work: The final result calculation, due to the large amount of calculation (the code efficiency is not high), the code was finished two hours in advance, but there was not enough time to calculate the results😭😭 The calculation accuracy of the model is not enough, the accuracy is 1s which does not meet the standard answer\u0026rsquo;s precision The conclusion part of the paper was not actually completed Strengths # Topic Selection # Focused on Topic A, accumulated sufficient experience in mock contests, and polished a set of efficient workflows\nThe methodology for Topic A is relatively well-constructed\nWorkflow # The workflow is relatively clear, and the efficiency is high\nGuided by the final paper, modeling, paper, and code are carried out simultaneously, ensuring sufficient content in the paper\nDivision of Labor # Adopted a blurred division of labor, each team member has a main job and a secondary job, can work independently on their main job, and can also complete some work on the secondary job, greatly improving time utilization\nThe team members are very capable, as handling two division tasks means more learning costs\nWeaknesses # Workflow # The plan is perfect, but some necessary links were not well done in practice\nEffective time ratio: finishing work at eight in the evening is too early! More time should be taken to model trial and error to ensure the correctness and accuracy of the model\nDivision of Labor # The code writing, code debugging, code visualization, result calculation, and result visualization involve too much code, which is difficult for one person to handle;\nTask overlap caused by blurred division of labor increases collaboration costs\nModeling # Topic understanding accuracy: This time, there was a significant deviation in our understanding of the topic, which led to wasting a lot of time on model correction; Code # Code efficiency: Due to no time limit before, there was insufficient preparation for \u0026ldquo;very long\u0026rdquo; code, no experience with code parallelism;\nResult precision: The initial modeling was too rough, and a bad characteristic was used: setting the time step to 1, and using it as an array index, which made it difficult to reduce the time step later, resulting in insufficient precision of the final results\nImprovement Plans # Carefully select the venue, increasing effective time✨is the most important✨ Division of Labor # Slightly change the division of labor, increase the investment of human resources in coding\nIncrease learning input in each main and secondary division to increase work efficiency\nModeling # Focus more on understanding the topic, don\u0026rsquo;t rush; correcting modeling errors is not worth the loss Code # Build a set of effective code collaboration plans to enhance code writing speed\nStart building code writing standards:\nVariable naming Documentation at the beginning of the file Code writing process standards Code parallelization: Add some parallelizable code to the code to increase running speed\nAll code improvements must be implemented in a document! Not just slogans! Paper # Study excellent papers\nPay attention to its paper framework Pay attention to its language style, text readability, detail, illustration logic, and image readability Improve ourselves\nOptimize the paper\u0026rsquo;s main logic framework, refine the content of each section Improvements in language style, text readability, detail, illustration logic, and image readability, etc. The results are fixed in the form of comments in the LaTeX template! Summary # A test paper without full marks is more rewarding than one with full marks!\nAccumulating knowledge of applied mathematics, enhancing paper writing skills, and improving the ability to discover problems are more meaningful than the competition itself. 🫡\nCUMCM, every MathModeler can benefit from it. 🤗\n","date":"12 September 2024","externalUrl":null,"permalink":"/en/blog/cumcm2024/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003ePreface \n \u003cdiv id=\"preface\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#preface\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003eThis article is primarily a review and summary of the entire process of CUMCM 2024.\u003c/p\u003e","title":"CUMCM 2024 Summary","type":"blog"},{"content":"Morethan\u0026rsquo;s dummy blog page~\n","date":"3 January 2025","externalUrl":null,"permalink":"/en/blog/moravecs-paradox/","section":"Blogs","summary":"\u003cp\u003eMorethan\u0026rsquo;s dummy blog page~\u003c/p\u003e","title":"The reflection of Moravec's paradox","type":"blog"},{"content":" A Reflection on Writing a Plugin and What I Learned from the Experience. The Beginning # It all started with my blog website. I stumbled upon an article on WeChat about building a blog with Hugo, and since I wanted to revamp my old, simple site, I decided to give it a try. My original site was extremely rudimentary, and the whole writing process involved jumping between HTML, JS, and CSS in a rather awkward manner. On top of that, I had always admired the blog of a great tech guru, Lilian Weng, which was also built with Hugo. This further strengthened my resolve to change my site\u0026rsquo;s underlying platform.\nSo, I quickly started diving into Hugo.\nTo my surprise, the results were extraordinary! My old webpage took me nearly a month to build, but with Hugo, I was able to finish everything in less than half a day. What shocked me even more was that Hugo, a program written in Go, didn’t require users to set up a Go environment! 😮\nAt the same time, I discovered an incredibly well-documented Hugo theme—Blowfish. This was by far the most detailed documentation I had ever seen for any project, bar none (๑•̀ㅂ•́)و✧.\nWith Hugo and Blowfish working in tandem, my small site quickly took shape. Of course, I’m not great at designing, so I just used the default layout from Blowfish, as I felt any changes would ruin the beauty of the page.\nTo be honest, after all this work, I didn’t have any strong emotional reactions, except for deep respect for the coding skills of the authors of Hugo and Blowfish.\nThat was until I wanted to upload the massive amount of notes I had in Obsidian to my new blog.\nThe Bitter Taste of Originality # I soon realized that there wasn’t a plugin available to directly convert the format of my Obsidian notes to fit the Blowfish theme. Fueled by the earlier \u0026ldquo;pleasant experience,\u0026rdquo; I decided to write a plugin myself! (😄 Although, I would soon stop laughing 😢)\nThe rest of the experience wasn’t anything particularly exciting—just endless switching between webpages, searching through API documentation, and never-ending conversations with AI bots. After countless revisions, I finally ended up with something exceedingly simple: a plugin that identifies specific patterns in documents and performs content replacement.\nIt was quite laughable. Compared to the few hours it took to set up the website, the nearly forty hours I spent writing that plugin felt almost negligible. At one point, I seriously considered just deleting my few hundred lines of code.\nYes, such a simple plugin drained me mentally and physically. I truly tasted the bitterness of originality.\nNow, looking back at Hugo and Blowfish, I feel deeply shocked by their complexity and the effort required to implement all of those features. If they were getting paid for this work, I could at least understand the level of effort involved. But they were both open-source, relying entirely on user goodwill and appreciation.\nI saw the last update of the Blowfish author’s blog, which was in March 2024, and I fell into deep thought.\nSentiments and Idealism # I imagine that the author of Blowfish must have paused the development of the theme for some reason—perhaps due to life circumstances. After all, this project didn’t bring in much real income.\nSuddenly, I remembered the changes I had noticed before—those GitHub profiles, once full of green squares, gradually becoming sparse, and eventually disappearing. Beneath this peaceful change, there might be a shift in someone\u0026rsquo;s life. Whether it\u0026rsquo;s because of busy work or the gradual fading of motivation, the original passionate drive eventually drowns in silence. I can\u0026rsquo;t stop this from happening, but I understand the reasons behind it.\nOpen-source is driven by passion, but passion doesn’t pay the bills. People need to live in the present.\nI recalled a tech YouTuber, Ma Nong Gao Tian, a core Python developer who humorously complained about the harsh realities of open-source life. His prematurely graying hair made me feel a pang of empathy—he had spent most of his life writing code and yet found himself out of work, surviving on a few extra bucks from his videos.\nIn Conclusion # Life is rarely as we wish. Once again, I looked at my forty-plus hours of work and couldn’t help but laugh and shake my head.\nAfter writing this, I’m off to bed. It’s now 1:48 AM on January 6, 2025, and I still haven’t reviewed for my English final exam tomorrow.\nLooking at this blog again, I laughed and shook my head.\nSuch is life.\n","date":"6 January 2025","externalUrl":null,"permalink":"/en/blog/plugin-writing-experience/","section":"Blogs","summary":"\u003cdiv class=\"lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl\"\u003e\n A Reflection on Writing a Plugin and What I Learned from the Experience.\n\u003c/div\u003e\n\n\n\n\u003ch3 class=\"relative group\"\u003eThe Beginning \n \u003cdiv id=\"the-beginning\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#the-beginning\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h3\u003e\n\u003cp\u003eIt all started with my blog website. I stumbled upon an article on WeChat about building a blog with \u003ccode\u003eHugo\u003c/code\u003e, and since I wanted to revamp my old, simple site, I decided to give it a try. My original site was extremely rudimentary, and the whole writing process involved jumping between \u003ccode\u003eHTML\u003c/code\u003e, \u003ccode\u003eJS\u003c/code\u003e, and \u003ccode\u003eCSS\u003c/code\u003e in a rather awkward manner. On top of that, I had always admired the \u003ca href=\"https://lilianweng.github.io/\" target=\"_blank\"\u003eblog\u003c/a\u003e of a great tech guru, \u003ccode\u003eLilian Weng\u003c/code\u003e, which was also built with \u003ccode\u003eHugo\u003c/code\u003e. This further strengthened my resolve to change my site\u0026rsquo;s underlying platform.\u003c/p\u003e","title":"An experience of a plugin writing","type":"blog"},{"content":"","date":"6 January 2025","externalUrl":null,"permalink":"/en/authors/","section":"Authors List","summary":"","title":"Authors List","type":"authors"},{"content":"","date":"6 January 2025","externalUrl":null,"permalink":"/en/blog/","section":"Blogs","summary":"","title":"Blogs","type":"blog"},{"content":"","date":"6 January 2025","externalUrl":null,"permalink":"/en/series/casual-essay/","section":"Seires","summary":"","title":"Casual Essay","type":"series"},{"content":"","date":"6 January 2025","externalUrl":null,"permalink":"/en/tags/experience/","section":"Tags","summary":"","title":"Experience","type":"tags"},{"content":" Hi, welcome to my info page. 👋 # Basic Info # My casual English name is Morethan because it resembles my Chinese name. 🙃\nNow I\u0026rsquo;m a university student in China. ᕕ( ᐛ )ᕗ Nothing more to say. 🫠\nBlog Focus # Personal Knowledge Base: to store frequently-used operations and valuable experience.\nMicro Paper Stack: to store inspirations for my Graduation Thesis, usually serious and logical, attempt to follow the standard thesis working stream.\nKnowledge Outlet: to put what I leant into practice.\nFinal # If you find the content is useful, click a like please at the beginning of that page. 🤗\nIf you want to share the content, cite this website please. 🫡\nIf you find some bug, push an issue on the GitHub please. 🥰\n","date":"6 January 2025","externalUrl":null,"permalink":"/en/authors/morethan/","section":"Authors List","summary":"\u003ch1 class=\"relative group\"\u003eHi, welcome to my info page. 👋 \n \u003cdiv id=\"hi-welcome-to-my-info-page-\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#hi-welcome-to-my-info-page-\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h1\u003e\n\n\n\u003ch2 class=\"relative group\"\u003eBasic Info \n \u003cdiv id=\"basic-info\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#basic-info\" aria-label=\"Anchor\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003eMy casual English name is Morethan because it resembles my Chinese name. 🙃\u003c/p\u003e","title":"Morethan","type":"authors"},{"content":" ","date":"6 January 2025","externalUrl":null,"permalink":"/en/series/","section":"Seires","summary":"\u003chr\u003e","title":"Seires","type":"series"},{"content":" ","date":"6 January 2025","externalUrl":null,"permalink":"/en/tags/","section":"Tags","summary":"\u003chr\u003e","title":"Tags","type":"tags"},{"content":" ","date":"6 January 2025","externalUrl":null,"permalink":"/en/","section":"Welcome to More's website","summary":"\u003c!-- \u003cdiv class=\"flex px-4 py-2 mb-8 text-base rounded-md bg-primary-100 dark:bg-primary-900\"\u003e\n \u003cspan class=\"flex items-center ltr:pr-3 rtl:pl-3 text-primary-400\"\u003e\n \n \n \u003cspan class=\"relative inline-block align-text-bottom icon\"\u003e\n \u003csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"\u003e\u003cpath fill=\"currentColor\" d=\"M506.3 417l-213.3-364c-16.33-28-57.54-28-73.98 0l-213.2 364C-10.59 444.9 9.849 480 42.74 480h426.6C502.1 480 522.6 445 506.3 417zM232 168c0-13.25 10.75-24 24-24S280 154.8 280 168v128c0 13.25-10.75 24-23.1 24S232 309.3 232 296V168zM256 416c-17.36 0-31.44-14.08-31.44-31.44c0-17.36 14.07-31.44 31.44-31.44s31.44 14.08 31.44 31.44C287.4 401.9 273.4 416 256 416z\"/\u003e\u003c/svg\u003e\n \n \u003c/span\u003e\n \n\n \u003c/span\u003e\n \u003cspan class=\"flex items-center justify-between grow dark:text-neutral-300\"\u003e\n \u003cspan class=\"prose dark:prose-invert\"\u003eThis is a demo of the \u003ccode id=\"layout\"\u003ebackground\u003c/code\u003e layout.\u003c/span\u003e\n \u003cbutton\n id=\"switch-layout-button\"\n class=\"px-4 !text-neutral !no-underline rounded-md bg-primary-600 hover:!bg-primary-500 dark:bg-primary-800 dark:hover:!bg-primary-700\"\n \u003e\n Switch layout \u0026orarr;\n \u003c/button\u003e\n \u003c/span\u003e\n\u003c/div\u003e --\u003e","title":"Welcome to More's website","type":"page"},{"content":"","date":"2025-01-06","externalUrl":null,"permalink":"/tags/%E7%BB%8F%E5%8E%86/","section":"标签","summary":"","title":"经历","type":"tags"},{"content":"","date":"2025-01-06","externalUrl":null,"permalink":"/series/%E9%9A%8F%E7%AC%94/","section":"系列","summary":"","title":"随笔","type":"series"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/tags/ai/","section":"Tags","summary":"","title":"AI","type":"tags"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/series/ai%E9%81%90%E6%83%B3/","section":"系列","summary":"","title":"AI遐想","type":"series"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/tags/imagination/","section":"Tags","summary":"","title":"Imagination","type":"tags"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/series/wild-imagination-of-ai/","section":"Seires","summary":"","title":"Wild Imagination of AI","type":"series"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/tags/%E9%81%90%E6%83%B3/","section":"标签","summary":"","title":"遐想","type":"tags"},{"content":"","date":"12 September 2024","externalUrl":null,"permalink":"/en/tags/cumcm/","section":"Tags","summary":"","title":"CUMCM","type":"tags"},{"content":"","date":"12 September 2024","externalUrl":null,"permalink":"/en/tags/math/","section":"Tags","summary":"","title":"Math","type":"tags"},{"content":"","date":"12 September 2024","externalUrl":null,"permalink":"/en/series/mathmodel/","section":"Seires","summary":"","title":"MathModel","type":"series"},{"content":"","date":"2024-09-12","externalUrl":null,"permalink":"/series/%E6%95%B0%E5%AD%A6%E5%BB%BA%E6%A8%A1/","section":"系列","summary":"","title":"数学建模","type":"series"},{"content":"","date":"10 August 2024","externalUrl":null,"permalink":"/en/series/operation/","section":"Seires","summary":"","title":"Operation","type":"series"},{"content":"","date":"10 August 2024","externalUrl":null,"permalink":"/en/tags/python/","section":"Tags","summary":"","title":"Python","type":"tags"},{"content":"","date":"2024-08-10","externalUrl":null,"permalink":"/series/%E6%8A%80%E6%9C%AF%E6%B5%81%E7%A8%8B/","section":"系列","summary":"","title":"技术流程","type":"series"},{"content":"","date":"5 August 2024","externalUrl":null,"permalink":"/en/tags/matlab/","section":"Tags","summary":"","title":"MATLAB","type":"tags"},{"content":"","date":"12 July 2024","externalUrl":null,"permalink":"/en/tags/latex/","section":"Tags","summary":"","title":"LaTeX","type":"tags"},{"content":"","date":"12 July 2024","externalUrl":null,"permalink":"/en/tags/overleaf/","section":"Tags","summary":"","title":"Overleaf","type":"tags"},{"content":"This is the advanced tag. Just like other listing pages in Blowfish, you can add custom content to individual taxonomy terms and it will be displayed at the top of the term listing. \u0026#x1f680;\nYou can also use these content pages to define Hugo metadata like titles and descriptions that will be used for SEO and other purposes.\n","externalUrl":null,"permalink":"/en/tags/advanced/","section":"Tags","summary":"\u003cp\u003eThis is the advanced tag. Just like other listing pages in Blowfish, you can add custom content to individual taxonomy terms and it will be displayed at the top of the term listing. \u0026#x1f680;\u003c/p\u003e","title":"Advanced","type":"tags"},{"content":"","externalUrl":null,"permalink":"/en/categories/","section":"Categories","summary":"","title":"Categories","type":"categories"}] \ No newline at end of file diff --git a/en/index.xml b/en/index.xml index 7b8cef6..513c8c1 100644 --- a/en/index.xml +++ b/en/index.xml @@ -118,5 +118,31 @@ + + An experience of a plugin writing + https://morethan987.github.io/en/blog/plugin-writing-experience/ + Mon, 06 Jan 2025 00:00:00 +0000 + morthan@qq.com (Morethan) + https://morethan987.github.io/en/blog/plugin-writing-experience/ + <div class="lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl"> + A Reflection on Writing a Plugin and What I Learned from the Experience. +</div> + + + +<h3 class="relative group">The Beginning + <div id="the-beginning" class="anchor"></div> + + <span + class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100"> + <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" + style="text-decoration-line: none !important;" href="#the-beginning" aria-label="Anchor">#</a> + </span> + +</h3> +<p>It all started with my blog website. I stumbled upon an article on WeChat about building a blog with <code>Hugo</code>, and since I wanted to revamp my old, simple site, I decided to give it a try. My original site was extremely rudimentary, and the whole writing process involved jumping between <code>HTML</code>, <code>JS</code>, and <code>CSS</code> in a rather awkward manner. On top of that, I had always admired the <a href="https://lilianweng.github.io/" target="_blank">blog</a> of a great tech guru, <code>Lilian Weng</code>, which was also built with <code>Hugo</code>. This further strengthened my resolve to change my site&rsquo;s underlying platform.</p> + + + diff --git a/en/series/casual-essay/index.html b/en/series/casual-essay/index.html new file mode 100644 index 0000000..1e22f46 --- /dev/null +++ b/en/series/casual-essay/index.html @@ -0,0 +1,1111 @@ + + + + + + + + + + Casual Essay · More's awesome website + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + +
+
+ +
+ + + + + + + + +
+
+ + + +
+
+ + + + + + + + + + + + + + + +
+ + + + +
+ + + +
+
+
+
+
+ +
+ + +
+ +

Casual Essay

+
+ + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ + +
+
+ +
+ +
+ + + + + + + + + + + + +
+ + + + + + +
+ +
+ + + +
+ + +
An experience of a plugin writing
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·2 mins· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + Experience + + + + + + + +
+ + + + +
+ + +
+
+ +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + +
+ + + +

+ © + 2025 + Morethan +

+ + + + +

+ + + Powered by Hugo & Blowfish +

+ + +
+ + + + + + + + +
+ + +
+ + + diff --git a/en/series/casual-essay/index.xml b/en/series/casual-essay/index.xml new file mode 100644 index 0000000..a152140 --- /dev/null +++ b/en/series/casual-essay/index.xml @@ -0,0 +1,41 @@ + + + + Casual Essay on More's awesome website + https://morethan987.github.io/en/series/casual-essay/ + Recent content in Casual Essay on More's awesome website + Hugo -- gohugo.io + en + morthan@qq.com (Morethan) + morthan@qq.com (Morethan) + © 2025 Morethan + Mon, 06 Jan 2025 00:00:00 +0000 + + + An experience of a plugin writing + https://morethan987.github.io/en/blog/plugin-writing-experience/ + Mon, 06 Jan 2025 00:00:00 +0000 + morthan@qq.com (Morethan) + https://morethan987.github.io/en/blog/plugin-writing-experience/ + <div class="lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl"> + A Reflection on Writing a Plugin and What I Learned from the Experience. +</div> + + + +<h3 class="relative group">The Beginning + <div id="the-beginning" class="anchor"></div> + + <span + class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100"> + <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" + style="text-decoration-line: none !important;" href="#the-beginning" aria-label="Anchor">#</a> + </span> + +</h3> +<p>It all started with my blog website. I stumbled upon an article on WeChat about building a blog with <code>Hugo</code>, and since I wanted to revamp my old, simple site, I decided to give it a try. My original site was extremely rudimentary, and the whole writing process involved jumping between <code>HTML</code>, <code>JS</code>, and <code>CSS</code> in a rather awkward manner. On top of that, I had always admired the <a href="https://lilianweng.github.io/" target="_blank">blog</a> of a great tech guru, <code>Lilian Weng</code>, which was also built with <code>Hugo</code>. This further strengthened my resolve to change my site&rsquo;s underlying platform.</p> + + + + + diff --git a/en/series/casual-essay/page/1/index.html b/en/series/casual-essay/page/1/index.html new file mode 100644 index 0000000..8b091ca --- /dev/null +++ b/en/series/casual-essay/page/1/index.html @@ -0,0 +1,10 @@ + + + + https://morethan987.github.io/en/series/casual-essay/ + + + + + + diff --git a/en/series/index.html b/en/series/index.html index 64f19f3..31c37e8 100644 --- a/en/series/index.html +++ b/en/series/index.html @@ -861,6 +861,22 @@

Seir
+ +

morthan@qq.com (Morethan) morthan@qq.com (Morethan) © 2025 Morethan - Fri, 03 Jan 2025 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 + + + Casual Essay + https://morethan987.github.io/en/series/casual-essay/ + Mon, 06 Jan 2025 00:00:00 +0000 + morthan@qq.com (Morethan) + https://morethan987.github.io/en/series/casual-essay/ + + + Wild Imagination of AI diff --git a/en/sitemap.xml b/en/sitemap.xml index 2b97e06..e613105 100644 --- a/en/sitemap.xml +++ b/en/sitemap.xml @@ -83,78 +83,68 @@ /> - https://morethan987.github.io/en/blog/ + https://morethan987.github.io/en/blog/plugin-writing-experience/ 2025-01-06T00:00:00+00:00 always 0.5 - https://morethan987.github.io/en/ + https://morethan987.github.io/en/authors/ 2025-01-06T00:00:00+00:00 always 0.5 - https://morethan987.github.io/en/tags/ai/ - 2025-01-03T00:00:00+00:00 + https://morethan987.github.io/en/blog/ + 2025-01-06T00:00:00+00:00 always 0.5 - https://morethan987.github.io/en/authors/ - 2025-01-03T00:00:00+00:00 + https://morethan987.github.io/en/series/casual-essay/ + 2025-01-06T00:00:00+00:00 always 0.5 - - - https://morethan987.github.io/en/tags/imagination/ - 2025-01-03T00:00:00+00:00 + https://morethan987.github.io/en/tags/experience/ + 2025-01-06T00:00:00+00:00 always 0.5 https://morethan987.github.io/en/authors/morethan/ - 2025-01-03T00:00:00+00:00 + 2025-01-06T00:00:00+00:00 always 0.5 https://morethan987.github.io/en/series/ - 2025-01-03T00:00:00+00:00 + 2025-01-06T00:00:00+00:00 always 0.5 https://morethan987.github.io/en/tags/ - 2025-01-03T00:00:00+00:00 + 2025-01-06T00:00:00+00:00 always 0.5 + + https://morethan987.github.io/en/ + 2025-01-06T00:00:00+00:00 + always + 0.5 + + + + + https://morethan987.github.io/en/tags/ai/ + 2025-01-03T00:00:00+00:00 + always + 0.5 + + + + + https://morethan987.github.io/en/tags/imagination/ + 2025-01-03T00:00:00+00:00 + always + 0.5 + https://morethan987.github.io/en/series/wild-imagination-of-ai/ 2025-01-03T00:00:00+00:00 diff --git a/en/tags/experience/index.html b/en/tags/experience/index.html new file mode 100644 index 0000000..b037580 --- /dev/null +++ b/en/tags/experience/index.html @@ -0,0 +1,1111 @@ + + + + + + + + + + Experience · More's awesome website + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+ + + + + + + + +
+
+ + + +
+
+ + + + + + + + + + + + + + + +
+ + + + +
+ + + +
+
+
+
+
+ +
+ + +
+ +

Experience

+
+ + + + + + + + + + + + + + + + + + + + + + +
+ + +
+ + +
+
+ +
+ +
+ + + + + + + + + + + + +
+ + + + + + +
+ +
+ + + +
+ + +
An experience of a plugin writing
+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + ·2 mins· + + + + + + + + + + + + + + + + loading + + + + + + + + +· + + + + + + + + + + + + + + + + loading + + + + + + + + + + + + + +
+ + +
+ + + + +
Morethan
+ + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + Experience + + + + + + + +
+ + + + +
+ + +
+
+ +
+
+
+ + + +
+ + + + + + + + + + + +
+ + + + + + +
+ + + +

+ © + 2025 + Morethan +

+ + + + +

+ + + Powered by Hugo & Blowfish +

+ + +
+ + + + + + + + +
+ + +
+ + + diff --git a/en/tags/experience/index.xml b/en/tags/experience/index.xml new file mode 100644 index 0000000..f782731 --- /dev/null +++ b/en/tags/experience/index.xml @@ -0,0 +1,41 @@ + + + + Experience on More's awesome website + https://morethan987.github.io/en/tags/experience/ + Recent content in Experience on More's awesome website + Hugo -- gohugo.io + en + morthan@qq.com (Morethan) + morthan@qq.com (Morethan) + © 2025 Morethan + Mon, 06 Jan 2025 00:00:00 +0000 + + + An experience of a plugin writing + https://morethan987.github.io/en/blog/plugin-writing-experience/ + Mon, 06 Jan 2025 00:00:00 +0000 + morthan@qq.com (Morethan) + https://morethan987.github.io/en/blog/plugin-writing-experience/ + <div class="lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl"> + A Reflection on Writing a Plugin and What I Learned from the Experience. +</div> + + + +<h3 class="relative group">The Beginning + <div id="the-beginning" class="anchor"></div> + + <span + class="absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100"> + <a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" + style="text-decoration-line: none !important;" href="#the-beginning" aria-label="Anchor">#</a> + </span> + +</h3> +<p>It all started with my blog website. I stumbled upon an article on WeChat about building a blog with <code>Hugo</code>, and since I wanted to revamp my old, simple site, I decided to give it a try. My original site was extremely rudimentary, and the whole writing process involved jumping between <code>HTML</code>, <code>JS</code>, and <code>CSS</code> in a rather awkward manner. On top of that, I had always admired the <a href="https://lilianweng.github.io/" target="_blank">blog</a> of a great tech guru, <code>Lilian Weng</code>, which was also built with <code>Hugo</code>. This further strengthened my resolve to change my site&rsquo;s underlying platform.</p> + + + + + diff --git a/en/tags/experience/page/1/index.html b/en/tags/experience/page/1/index.html new file mode 100644 index 0000000..c07ec01 --- /dev/null +++ b/en/tags/experience/page/1/index.html @@ -0,0 +1,10 @@ + + + + https://morethan987.github.io/en/tags/experience/ + + + + + + diff --git a/en/tags/index.html b/en/tags/index.html index d251c4f..9c09755 100644 --- a/en/tags/index.html +++ b/en/tags/index.html @@ -890,6 +890,22 @@

2 +

+
+ + diff --git a/en/tags/index.xml b/en/tags/index.xml index d70adeb..3854a36 100644 --- a/en/tags/index.xml +++ b/en/tags/index.xml @@ -9,7 +9,17 @@ morthan@qq.com (Morethan) morthan@qq.com (Morethan) © 2025 Morethan - Fri, 03 Jan 2025 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 + + + Experience + https://morethan987.github.io/en/tags/experience/ + Mon, 06 Jan 2025 00:00:00 +0000 + morthan@qq.com (Morethan) + https://morethan987.github.io/en/tags/experience/ + + + AI diff --git a/index.html b/index.html index f906476..c0c59a1 100644 --- a/index.html +++ b/index.html @@ -1907,7 +1907,7 @@

最近的文章

- ·3 分钟· + ·3 分钟· @@ -1917,6 +1917,9 @@

最近的文章

+ + + @@ -1939,6 +1942,9 @@

最近的文章

+ + + @@ -3165,7 +3171,7 @@

最近的文章

- ·3 分钟· + ·3 分钟· @@ -3175,6 +3181,9 @@

最近的文章

+ + + @@ -3197,6 +3206,9 @@

最近的文章

+ + + @@ -4398,7 +4410,7 @@

最近的文章

- ·3 分钟· + ·3 分钟· @@ -4408,6 +4420,9 @@

最近的文章

+ + + @@ -4430,6 +4445,9 @@

最近的文章

+ + + @@ -5610,7 +5628,7 @@

最近的文章

- ·3 分钟· + ·3 分钟· @@ -5620,6 +5638,9 @@

最近的文章

+ + + @@ -5642,6 +5663,9 @@

最近的文章

+ + + @@ -6798,7 +6822,7 @@

最近的文章

- ·3 分钟· + ·3 分钟· @@ -6808,6 +6832,9 @@

最近的文章

+ + + @@ -6830,6 +6857,9 @@

最近的文章

+ + + diff --git a/index.json b/index.json index c19078d..775a3ff 100644 --- a/index.json +++ b/index.json @@ -1,4 +1,4 @@ -[{"content":" 背景提要 # 你应该知道如何通过命令行与电脑交互,包括但不限于:Windows如何唤出命令行/终端,正在运行中的命令什么时候结束\u0026hellip;\u0026hellip;\n懂一点点翻墙的技术,OverLeaf是个国外的软件,与之硬相关的latex项目也是国外的,因此下载相关依赖的时候能够直接接受国外流量会省掉很多麻烦。如果你没有VPN的话就需要为每一个包管理工具指定一个国内源,但有时候国内源更新并不及时。\n懂一些Vim的基本操作,比如:如何开启插入模式,如何保存退出,不保存退出等\n部署全流程 # 安装Linux # 在 Windows App Store 里面直接搜索一个Linux发行版本并下载,笔者选择的是Kali。安装完成后可以在开始菜单中直接打开,打开后会跳出命令行窗口,初次打开需要填写需要用户名与密码进行注册。\n此时你的命令行应该有一个Warning提示。这是因为你还没有安装WSL(Windows Subsystem for Linux)\n同时,在填写密码的时候你的输入不会显示在命令行,但已经被记录了\n为什么需要一个Linux系统?因为OverLeaf的sharelatex模型需要Linux环境。也正因如此,据说在Linux系统上运行的OverLeaf更加流畅。\n安装WSL # 安装WSL2,直接在Windows命令行中运行:\nwsl --install 这个程序安装后也可以直接打开,打开后也有一个Warning提示。这时候需要在 C:\\Users\\ASUS 目录下面写入一个text文件,然后重命名为 .wslconfig;\n写入内容为:\n[experimental] autoMemoryReclaim=gradual # gradual | dropcache | disabled networkingMode=mirrored dnsTunneling=true firewall=true autoProxy=true 安装Docker # 进入Docker官网下载Docker,这是sharelatex模型运行的容器。Docker是一个开源的应用容器引擎,其中包括,镜像、容器、仓库,目的就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的产品及其环境能够做到“一次封装,到处运行”。就像一个集装箱,由程序员开发并封装,用户使用时就直接把整个集装箱搬过去。\nDocker安装完成后就可以双击启动放后台了,我们后面通过命令行来操作Docker;\n拉取镜像 # 打开Kali,直接运行\ngit clone https://github.com/overleaf/toolkit.git ./overleaf-toolkit 然后连续运行:\ncd ./overleaf-toolkit bin/init vim ./config/variables.env 此时你应该已经进入了一个文档界面,这就是Vim文本编辑器的界面。Vim有很多快捷键,其中按下\u0026quot;I\u0026quot;键即可开启插入模式,进行文本编辑,按下\u0026quot;esc\u0026quot;即可返回常规模式。在插入模式下输入:OVERLEAF_SITE_LANGUAGE=zh-CN\n输入完成后按下\u0026quot;esc\u0026quot;返回常规模式,直接键入 :wq 这是“保存并退出”,如果你不小心输错了可以 :e! 放弃所有更改重头再来。这一步是让你的OverLeaf界面显示为中文。\n当你成功保存并退出,回到熟悉的Kali命令行界面后运行 bin/up 此时正在拉取sharelatex镜像以及相关的网络工具。这时会有大量的数据传输,要保证网络通畅(梯子要稳!)\n配置用户 # 当上一个命令成功结束之后,运行 bin/start ;此时你打开Docker点进sharelatex,你应该可以看到代码“爆闪”,如果没有红色的消息,那应该是正常运行了。\n这时打开浏览器访问网址 http://localhost/launchpad\n按照提示注册Administrator Account之后,就会跳转到 http://localhost/project ;这时基本的OverLeaf网页已经可以显示了。 但现在你丢一个文件进去编译多半是会报错的 ᕕ( ᐛ )ᕗ\n因为此时sharelatex里面的宏包严重不足,不是红包「手动狗头」\n安装扩展包 # 打开Kali进入对应目录运行 bin/shell 然后逐条执行:\ncd /usr/local/texlive # 下载并运行升级脚本 wget http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh sh update-tlmgr-latest.sh -- --upgrade # 更换texlive的下载源 tlmgr option repository https://mirrors.sustech.edu.cn/CTAN/systems/texlive/tlnet/ # 升级tlmgr tlmgr update --self --all # 安装完整版texlive(时间比较长,不要让shell断开) tlmgr install scheme-full # 退出sharelatex的命令行界面 exit # 重启sharelatex容器 docker restart sharelatex 重启后再次进入shell,运行:\napt update # 安装字体 apt install --no-install-recommends ttf-mscorefonts-installe fonts-noto texlive-fonts-recommended tex-gyre fonts-wqy-microhei fonts-wqy-zenhei fonts-noto-cjk fonts-noto-cjk-extra fonts-noto-color-emoji fonts-noto-extra fonts-noto-ui-core fonts-noto-ui-extra fonts-noto-unhinted fonts-texgyre # 安装pygments apt install python3-pygments # 安装beamer之类的 apt install texlive-latex-recommended apt install texlive-latex-extra # 安装英文字体 echo \u0026#34;yes\u0026#34; | apt install -y --reinstall ttf-mscorefonts-installer # 安装中文字体 apt install -y latex-cjk-all texlive-lang-chinese texlive-lang-english cp fonts/* /usr/share/fonts/zh-cn/ cd /usr/share/fonts fc-cache -fv # 更新字体缓存 fc-list :lang=zh-cn fc-match Arial 最后在shell目录里面运行:\nvim /usr/local/texlive/2023/texmf.cnf 进入配置文件,在最底下加入一句 shell_escape = t\n我也不知道这有什么用,属于是前辈传承了🤔 注意,如果Texlive(扩展包的官名)版本不同的话,目录地址也会有所变化,因此需要根据实际的地址来填写,例如将2023改成2024。\n在Linux命令行中可以用 ls -l 来查看当前目录下所有的文件 部署成功 # 现在你就可以愉快地使用本地版OverLeaf了,没有编译超时的困扰~\n如果非常巧合,你也是个CQUer,这里附赠一份重庆大学的毕业论文模板,炒鸡的亲民哦:CQUThesis\n","date":"2024-07-12","externalUrl":null,"permalink":"/blog/localoverleaf/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003e背景提要 \n \u003cdiv id=\"%E8%83%8C%E6%99%AF%E6%8F%90%E8%A6%81\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E8%83%8C%E6%99%AF%E6%8F%90%E8%A6%81\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e你应该知道如何通过命令行与电脑交互,包括但不限于:Windows如何唤出命令行/终端,正在运行中的命令什么时候结束\u0026hellip;\u0026hellip;\u003c/p\u003e","title":"本地 OverLeaf 部署","type":"blog"},{"content":" 引用文献 # 我对于贝叶斯优化的理解也并不多,主要参考下面的内容👇\n【机器学习】一文看懂贝叶斯优化/Bayesian Optimization\n一文详解贝叶斯优化(Bayesian Optimization)原理\n贝叶斯优化(BayesianOptimization)\n超参数优\u0026mdash;贝叶斯优化及其改进(PBT优化)\n贝叶斯优化 (Bayesian Optimization)\nMATLAB官方文档\n优点和算法原理 # 这里重点描述贝叶斯优化的优点以及其算法原理。如果你只关注“怎么用”,可以先了解贝叶斯优化的优点,然后跳转到#MATLAB用法\n优点 # 算法原理 # MATLAB用法 # 代码一览 # % 定义目标函数 function y = objectiveFcn(x) y = (1 - x.x1)^2 + 100 * (x.x2 - x.x1^2)^2; end % 定义优化变量 vars = [optimizableVariable(\u0026#39;x1\u0026#39;, [-2, 2]) optimizableVariable(\u0026#39;x2\u0026#39;, [-2, 2])]; % 执行贝叶斯优化 results = bayesopt(@objectiveFcn, vars, ... \u0026#39;AcquisitionFunctionName\u0026#39;, \u0026#39;expected-improvement-plus\u0026#39;, ... \u0026#39;MaxObjectiveEvaluations\u0026#39;, 30, ... \u0026#39;IsObjectiveDeterministic\u0026#39;, true, ... \u0026#39;Verbose\u0026#39;, 1); % 查看结果 bestPoint = results.XAtMinObjective; bestObjective = results.MinObjective; fprintf(\u0026#39;最优解 x1: %.4f, x2: %.4f\\n\u0026#39;, bestPoint.x1, bestPoint.x2); fprintf(\u0026#39;最优目标值: %.4f\\n\u0026#39;, bestObjective); 参数说明 # Params Meaning AcquisitionFunctionName 选择采集函数,这决定了算法在每次采样之后如何选取下一个采样点 MaxObjectiveEvaluations 最大迭代轮次 IsObjectiveDeterministic 如果目标函数是确定的,不包含噪声,则设置为 true ;否则设置为 false Verbose 决定了结果输出的详细程度,所有的输出可能包含多张图表 每个参数具体的可选值见官方文档: bayesopt;官方写的相当细致,还有很多样例。\n数学建模人必会技能之一就是读文档😝 ","date":"2024-08-05","externalUrl":null,"permalink":"/blog/bayesianopt/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003e引用文献 \n \u003cdiv id=\"%E5%BC%95%E7%94%A8%E6%96%87%E7%8C%AE\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E5%BC%95%E7%94%A8%E6%96%87%E7%8C%AE\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003e我对于贝叶斯优化的理解也并不多,主要参考下面的内容👇\u003c/p\u003e","title":"贝叶斯优化","type":"blog"},{"content":" 创建虚拟环境 # 创建 # 一些常规的代码例子如下👇\n# 创建虚拟环境 python -m venv your_env_name # 指定python版本创建虚拟环境,如果你的python是默认安装路径 python -m venv your_env_name --python=python3.11 # python是自定义的安装路径 D:\\Python\\Python311\\python.exe -m venv your_env_name 下面有一些可选参数用于创建自定义的虚拟环境:\n参数名 含义 --system-site-packages 创建的虚拟环境将包含全局Python环境中的包,这可以避免重复安装一些常用的包 --clear 如果指定的虚拟环境目录已经存在,这会清除目录中的所有内容,然后重新创建虚拟环境 --version 用于确认虚拟环境中 Python 的版本 所有的参数说明都可以通过运行 python -m venv -h 来获得;不用到处查文档了~😆 激活 # 默认情况下,虚拟环境处于非激活状态。在“your_env_name/Scripts/”目录下将有一个名为“activate”的文件,用命令行运行即可。\n# 激活虚拟环境 your_env_name/Scripts/activate ","date":"2024-08-10","externalUrl":null,"permalink":"/blog/pythontips/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003e创建虚拟环境 \n \u003cdiv id=\"%E5%88%9B%E5%BB%BA%E8%99%9A%E6%8B%9F%E7%8E%AF%E5%A2%83\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E5%88%9B%E5%BB%BA%E8%99%9A%E6%8B%9F%E7%8E%AF%E5%A2%83\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\n\n\u003ch3 class=\"relative group\"\u003e创建 \n \u003cdiv id=\"%E5%88%9B%E5%BB%BA\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E5%88%9B%E5%BB%BA\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h3\u003e\n\u003cp\u003e一些常规的代码例子如下👇\u003c/p\u003e","title":"Python小技巧","type":"blog"},{"content":" 前言 # 这篇文章主要是对于 CUMCM 2024 的比赛全过程进行一个梳理和总结。\n我们的队伍是在 2023 年的冬天组起来的,CUMCM 2024 也是我们第一次参与“数学建模”比赛。经过了大大小小的模拟赛,最终进入了全国的比赛。在提交最终论文之后获得省级一等奖并推荐国家级一等奖,最终获得国家级二等奖。\n整个过程有振奋惊喜,也有失落遗憾;我们在比赛中应该是做对了一部分事情,因此我们初次参赛就获得了国家级奖项;但不足肯定是有的,毕竟从“推荐国家级一等奖”变成“国家级二等奖”总是有理由的。\n总之,这次经历着实是令人难忘,更加值得梳理和总结经验,为明年的比赛作准备。\nCUMCM 全称为 Chinese Undergraduate Mathmatical Contest in Modeling;民间称呼为“数模国赛” 用词说明 # 用词 说明 计算系统 传统意义上的建模过程,即封装一个超大的函数 优化系统 用于优化计算系统中可调参数的系统,生成最优参数配置 计算流 计算系统中输入数据的处理过程 计算流结点 工作流中关键性的中间步骤 优化流 优化系统的主体逻辑 论文主体内容 包括摘要、重述、计算流和优化流的描述、结果展示与分析,也就是论文收尾之前的所有内容 论文收尾 包括灵敏度分析和模型推广 客观情况 # 任务分工 # 虽然比赛有很多个选题可供选择,但是我们小组选择专攻优化类问题,也就是 A 题。\n我:建模 + 代码 + 部分论文撰写 CL:建模 + 论文撰写 + 部分代码 HWJ:论文美化 工作流程 # 整个 A 题的代码部分大致可以分为两个系统:\n计算系统: 功能:接受输入数据与参数,返回需要的结果 性质:直接由题目决定,不同题目有不同的计算系统,需要临时构建 优化系统: 功能: 接受计算系统并将其作为可优化的目标函数,执行自身的优化逻辑,最后返回计算结果 性质:方法体系较为成熟,可以在比赛前就进行多种优化系统的准备 论文撰写部分分为:\n整体框架:由 LaTeX 模板决定 主体内容填充:对工作流和优化流的清晰描述 排版和美化:调整各个部分的详略,搭配说明性的图片(流程图,示意图) 收尾内容 预建模 # 目标:在精确理解题目的前提条件下,迅速进行初步的建模,基本确定建模方向、计算方法;\n预计用时:3h\n工作:队伍所有成员都进行全网资料查询,看看有没有基本命中题目的文献资料\n命中成功:最理想的情况,这个时候直接研读论文,收集思路即可; 命中失败:虽然没有现成的资料可供参考,但是在查阅文献的过程中或多或少也积累了一定的思路 建模初期 # 总目标:构建足够精确的、适配优化方法的计算系统\n建模:明确输入数据在各个计算流结点之间的操作 代码:用代码实现计算流,实现数据可视化 论文:填充第一个小问的内容,并初步排版 预计用时:30h\n工作:\n所有队员一起进行建模,优先明确建模思路,给出完整的数学推导过程 我和 CL:代码实现与论文内容填充同步进行 HWJ:绘制无法用代码生成的更加生动的示意图 建模中期 # 总目标:构建合适的优化系统\n建模:根据计算系统的特殊性,选择最为匹配的优化系统 代码:在实现优化系统的过程中进行微小改动,匹配计算系统 论文:完成论文的主体部分,开始进行局部细节微调 预计用时:20h\n工作:与前面类似只不过工作的中心从代码编写转到了论文撰写\n精简论文,此时的论文非常臃肿 微调论文的逻辑,使得上下文关联度更高 美化排版,减少文字,增加图片 建模后期 # 基本建模完成了,全员进行漏洞的检查: 错别字、不准确的表述、公式拼写错误等常规检查 优化代码中的注释,让其更加易读 重点检查个人信息 比赛论文中不能保留任何个人信息,包括代码中的文件路径,例如 C:\\Users\\Morethan ;保留个人信息是非常严重的错误! 实战效果 # 当我们将上述策略应用于实战过程中,也就是 CUMCM 2024 的正式比赛中,得到的效果如下:\n有效用时: 比赛总时长三天,共计 72 小时 队伍从早上七点到晚上八点,除开吃饭用时,一天的有效时间为 12 个小时 时间利用率为 \\( 50 \\% \\) (对比之下很低🤔) 最终完成工作: 论文主体 28 页 A4 纸 代码部分 35 页 A4 纸,除开每一个小题之间的复用代码,应该有 20 页左右 全文配图共计 25 张 以上数据是论文精简之后的,初稿论文将近 50 页 未完成工作: 最终结果的计算,由于计算量过大(代码效率并不高),最终提前两个小时写完所有代码,但并没有足够的时间运算出结果😭😭 模型的计算精度不够,精度为 1s 没有达到标准答案给出的精度 论文的收尾部分其实并没有完成 优点 # 选题 # 专注于 A 题,在模拟赛中积累了充分的经验,磨合出了一套高效的工作流程\n对于 A 题的方法论构建比较完善\n工作流程 # 工作流程相对清晰,效率较高\n以最终论文为导向,建模、论文、代码三线同时进行,保证了论文内容的充足\n分工 # 采用模糊分工,每个队员都有一个主要分工和次要分工,在各自的主要分工上能够独立工作,在其他的次要分工上面也能够完成一定的工作,大大提高了时间利用率\n队员很给力,因为同时兼顾两个分工任务意味着更多的学习成本\n不足 # 工作流程 # 计划很完美,但是在实践中还是有些必要的环节没有做好\n有效时间占比:晚上八点收工太早了!应该占用更多的时间来进行建模试错,保证模型的正确性和精确性\n分工 # 代码的编写、代码的调试、代码的可视化、结果的计算、结果的可视化所涉及的代码量太大,一人难以搞定;\n因为模糊分工所引起的任务重叠,增加了协同成本\n建模 # 题目理解准确度:这次我们对于题目的理解出现了较大的偏差,导致我们浪费了挺多时间在模型修正上面; 代码 # 代码的效率:之前由于没有时间的限制,导致对于“超长”代码的准备不足,没有代码并行的经验;\n结果精度:一开始建模过于粗糙,并且用了一个不好的特性:将时间步长设置为 1 ,并且将作为数组索引,导致后期难以将时间的步长减小,导致最后结果的精确度不够\n改进方案 # 精心挑选场地,增加有效时间✨是最重要的✨ 分工 # 略微改动人员分工,增加代码方面的人力投入\n在各自的主要分工和次要分工上增加学习投入,增加工作效率\n建模 # 更专注于题目的理解,不能太着急;建模错误再修正是得不偿失的 代码 # 构建一套行之有效的代码协同方案,增强代码编写速度\n着手构建代码编写规范:\n变量命名 文件开头的说明文档 代码编写流程规范 代码并行化:在代码中添加一些可并行的代码,提高运行速度\n所有代码方面的改进最终落实为一个文档!不能光喊口号! 论文 # 研究优秀论文\n关注其论文框架 关注其语言风格、文本可读性、详略、配图逻辑、图片可读性 改进自身\n优化论文主体逻辑框架,细化每一块的内容 语言风格、文本可读性、详略、配图逻辑、图片可读性等等细节的改进 成果以 LaTeX 模板中注释的形式固定! 总结 # 一份没有满分的答卷比一份满分的答卷更有收获!\n积累应用数学的知识,增强论文撰写能力,提高发现问题的能力,这是比比赛本身更有意义的东西🫡\nCUMCM,每一个数模人都能从中受益🤗\n","date":"2024-09-12","externalUrl":null,"permalink":"/blog/cumcm2024/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003e前言 \n \u003cdiv id=\"%E5%89%8D%E8%A8%80\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E5%89%8D%E8%A8%80\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003e这篇文章主要是对于 CUMCM 2024 的比赛全过程进行一个梳理和总结。\u003c/p\u003e","title":"CUMCM 2024总结","type":"blog"},{"content":" 某些问题机器能够非常容易解决,而对于人类而言非常复杂;反之亦然。\n这种反常悖论似乎来源于知识的可概括性,某些知识具有良好的可压缩性,但另外一些则不具有。有一个更加准确的概念叫做[[计算可约性#定义|计算可约性]]\n一个很简单的例子:考试,从逻辑上来说全部都是基于最基本的知识推理而来的对吧?讲道理,考试应该能够完全通过逻辑推理来解决所有问题。但是事实上,考过试的都知道,从阅读题目到形成解题思路的过程貌似并不那么“有逻辑”,甚至可以说是没有什么技巧可言,纯粹就是一种做题的感觉。\n两类知识 # 在现有知识的基础上,能够通过有限的符号逻辑表达式得到的知识;其特点就是精确,高度概括;问题边界明确,能够清晰定义已知条件有什么、通过什么样的方法、得出什么样的结果;在明确的已知条件下能够精准预测问题结果的规律(在问题的考虑范围内没有“概率”这个概念的容身之处) 对于那些难以根据已知条件,通过精确的逻辑推理得到结果的问题,我们采用统计性的尝试,得出的有一定价值的规律;特点是基于大量尝试,难以定义问题的边界,甚至难以获取需要的已知条件,就是这种恶劣的条件下,强行匹配已知条件与结果的联系,进而得出的规律,其结果具有波动性、不确定性、局部正确性。 两类知识的占比 # 明显可概括的知识远远少于不可概括的知识;可概括的知识从某种意义上来说是不可概括知识的特殊情况;\n不可概括向可概括转化的趋势 # 不可概括知识的特点决定了其获取的难度(大量尝试消耗大量能量,这一步不可避免),运转不可概括性知识的能量消耗极高(知识难以概括就会占用大量的资源来维持运转),不可概括的知识难以跨过人类个体生命的边界(不可概括的知识往往会随着个体生命的消散而丢失,因为其难以概括从而难以以任何媒介形式流传,但机器智能似乎在这方面有本质的区别);人类个体的能量十分有限,难以完全依靠不可概括知识来应对外部世界,因此会有从不可概括知识向可概括知识转化的特点,尽管这个过程对于个体而言相当困难、极其耗费能量(本身就是一个不可概括的知识),但从整个人类的角度上来说节省了海量的能量;\n可接受功率决定了智能的上限 # 在这里似乎可以给出另外一个划分智能等级的标准:个体接受功率输入的级别,级别越高其,个体能掌握的不可概括知识越多;由于能量总是有限的(我们人类能消耗的能源级别可能是这个地球上面的资源,但是机器智能的消耗可能是恒星级别的),因此总会有一定程度上的知识概括,但是由于不可概括知识的固有性质,高等级智能的可概括知识对于低等级智能来说并不是可概括的;知识的可概括性具有相对性;\n从这里可以看出,可接受功率对于一个智能系统来说具有关键意义。从另一个角度来说,或许我们能够人为降低机器智能可消耗功率的上限来观察不可概括知识向可概括知识转化的过程\n","date":"2025-01-03","externalUrl":null,"permalink":"/blog/moravecs-paradox/","section":"Blogs","summary":"\u003cblockquote\u003e\n\u003cp\u003e某些问题机器能够非常容易解决,而对于人类而言非常复杂;反之亦然。\u003c/p\u003e","title":"关于莫拉维克悖论的思考","type":"blog"},{"content":" 记一次写插件的经历,以及从中收获的一些感想。 缘由 # 事情起源于我这个博客网站。我在微信公众号上偶然间浏览到了关于用 Hugo 建立博客网站的信息,正好我也想翻新一下我那简陋的小网站。我原来的小网站非常非常的原始,整个写作流程都需要在 HTML JS 和 CSS 之间狼狈地切换。并且我非常崇拜的大佬 Lilian Weng 的 博客 也是用 Hugo 搭建的,这也更加坚定了我换底层的决心。\n于是我便迅速开始了对于 Hugo 的接触。\n结果真的出乎意料!我原来的网页花费了我将近一个月的时间,用 Hugo 竟然不到一上午就搞定了。更令我惊讶的是 Hugo 作为一个用 Go 编写的程序,其竟然不需要用户搭建 Go 环境!😮\n同时,我也发现了一个非常用心的 Hugo 主题 Blowfish 。这真的是我见过的文档配置最为详细的一个项目,没有之一(๑•̀ㅂ•́)و✧\n在 Hugo 和 Blowfish 的强力驱动下,我的小网站竟然变得像模像样的了。当然请原谅我并不擅长美化页面,所以我就直接套用了 Blowfish 官方网站的界面设置,因为我觉得任何的改动都会让这个精美的页面变得不协调。\n说实话,做完这一切我并没有什么特别的情绪波动,除了敬佩 Hugo 和 Blowfish 的作者们强悍的编码能力。\n直到我想将我在 Obsidian 中大量的笔记都上传到这个博客网站。\n原创的苦涩 # 我发现在 Obsidian 中并没有现成的可以直接适配 Blowfish 主题的格式转换插件。于是在前面那“愉快体验”的助推下,我决定自己写一个插件!(😄虽然过一会儿就笑不出来了😢)\n后面的经历实在是没什么好描述的,一遍又一遍地在网页之间来回切换,不停地搜索各种API文档,与AI机器人的沟通也从未停止。经过了无数次修改,我终于写出来了一个再简单不过的东西:识别文档中的固定模式然后进行内容替换。\n令人哭笑不得,相比于创建网站那短短的几个小时,我这将近四十个小时的工作几乎可以说微不足道。有那么一瞬间我真的想直接删掉我那几百行的代码。\n是的,就这么一个简单的插件就让我心力交瘁,疲惫不堪。我亲口品尝到了原创的苦涩。\n现在让我回头看 Hugo 和 Blowfish 我感受到了深深的震撼,如此复杂的功能实现不知道要消耗多少经历。如果说他们的工作都是付费的,那我还能心安理得地接受如此的工作量。然而他们都是开源的,有没有收入全凭用户喜好。\n我看着 Blowfish 作者那停滞在2024年3月的博客,我陷入了沉思。\n情怀与理想 # 我猜想 Blowfish 的作者肯定是因为别的什么事情暂时放缓了对于这个主题的维护,毕竟这个项目并没有带来多少实际的收入。\n突然之间我回想起了之前那些被我忽略的现象,一些 GitHub 达人主页上满满的绿色瓷砖慢慢变得稀疏,最后消失。在这平静如水的变化之下,或许是一个人生活的转变。或因生活工作忙碌,或因开发动力逐渐衰减,但最后原本的热血初心都淹没在了寂静之中。我无法阻止这样的现象发生,但我理解这背后的原因。\n开源是情怀,但是情怀不能当饭吃。人总是要活在当下的。\n我想起来 bilibili 上的一位博主 码农高天 ,一位 Python 的核心开发者,用幽默诙谐的段子吐槽开源人的悲惨待遇。他那年纪轻轻就已经花白的头发让人不经感慨“生活真是不容易啊”——写了大半辈子的代码,现在竟然还是待业在家,靠着发发视频赚点外快。\n写在最后 # 人生不如意,十之八九。我又一次看着那四十多小时的工作成功,笑着摇了摇头。\n写完这一句,我就睡觉去了,现在是2025年1月6日凌晨1:48,明天还有英语的期末考试,还没复习呢。\n我看着这篇博客,又一次笑着摇了摇头。\n这就是生活。\n","date":"2024-01-06","externalUrl":null,"permalink":"/blog/plugin-writing-experience/","section":"Blogs","summary":"\u003cdiv class=\"lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl\"\u003e\n 记一次写插件的经历,以及从中收获的一些感想。\n\u003c/div\u003e\n\n\n\n\u003ch3 class=\"relative group\"\u003e缘由 \n \u003cdiv id=\"%E7%BC%98%E7%94%B1\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E7%BC%98%E7%94%B1\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h3\u003e\n\u003cp\u003e事情起源于我这个博客网站。我在微信公众号上偶然间浏览到了关于用 \u003ccode\u003eHugo\u003c/code\u003e 建立博客网站的信息,正好我也想翻新一下我那简陋的小网站。我原来的小网站非常非常的原始,整个写作流程都需要在 \u003ccode\u003eHTML\u003c/code\u003e \u003ccode\u003eJS\u003c/code\u003e 和 \u003ccode\u003eCSS\u003c/code\u003e 之间狼狈地切换。并且我非常崇拜的大佬 \u003ccode\u003eLilian Weng\u003c/code\u003e 的 \u003ca href=\"https://lilianweng.github.io/\" target=\"_blank\"\u003e博客\u003c/a\u003e 也是用 \u003ccode\u003eHugo\u003c/code\u003e 搭建的,这也更加坚定了我换底层的决心。\u003c/p\u003e","title":"一次写插件经历","type":"blog"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/tags/ai/","section":"标签","summary":"","title":"AI","type":"tags"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/series/ai%E9%81%90%E6%83%B3/","section":"系列","summary":"","title":"AI遐想","type":"series"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/blog/","section":"Blogs","summary":"","title":"Blogs","type":"blog"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/tags/imagination/","section":"Tags","summary":"","title":"Imagination","type":"tags"},{"content":" 欢迎来到我的信息页面 👋 # 基本信息 # Morethan 是我随手起的一个英文名字,因为这个词语的发音和我的中文名字实在是太像了🙃\n我现在还是一个本科生 ᕕ( ᐛ )ᕗ 其他的没什么好写的🫠\n博客定位 # 个人知识库:用来存放一些固定的技术流程和有意义的经历\n微型论文栈:尽可能按照标准论文流程来编写一些博客,为毕业论文做准备\n知识输出平台:将我所学尽可能清晰地表达出来\n最后 # 如果你觉得有内容帮助了你,请点击文章开头的“喜欢” 🤗\n如果你想分享某些内容,请标注援引自此网站 🫡\n如果你找到了一些错误之处,请在 GitHub 上提交一个Issue 🥰\n","date":"2025-01-03","externalUrl":null,"permalink":"/authors/morethan/","section":"作者列表","summary":"\u003ch1 class=\"relative group\"\u003e欢迎来到我的信息页面 👋 \n \u003cdiv id=\"%E6%AC%A2%E8%BF%8E%E6%9D%A5%E5%88%B0%E6%88%91%E7%9A%84%E4%BF%A1%E6%81%AF%E9%A1%B5%E9%9D%A2-\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E6%AC%A2%E8%BF%8E%E6%9D%A5%E5%88%B0%E6%88%91%E7%9A%84%E4%BF%A1%E6%81%AF%E9%A1%B5%E9%9D%A2-\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h1\u003e\n\n\n\u003ch2 class=\"relative group\"\u003e基本信息 \n \u003cdiv id=\"%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eMorethan\u003c/code\u003e 是我随手起的一个英文名字,因为这个词语的发音和我的中文名字实在是太像了🙃\u003c/p\u003e","title":"Morethan","type":"authors"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/series/wild-imagination-of-ai/","section":"Seires","summary":"","title":"Wild Imagination of AI","type":"series"},{"content":" ","date":"2025-01-03","externalUrl":null,"permalink":"/tags/","section":"标签","summary":"\u003chr\u003e","title":"标签","type":"tags"},{"content":" ","date":"2025-01-03","externalUrl":null,"permalink":"/","section":"欢迎来到Morethan的小站","summary":"\u003c!-- \u003cdiv class=\"flex px-4 py-2 mb-8 text-base rounded-md bg-primary-100 dark:bg-primary-900\"\u003e\n \u003cspan class=\"flex items-center ltr:pr-3 rtl:pl-3 text-primary-400\"\u003e\n \n \n \u003cspan class=\"relative inline-block align-text-bottom icon\"\u003e\n \u003csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"\u003e\u003cpath fill=\"currentColor\" d=\"M506.3 417l-213.3-364c-16.33-28-57.54-28-73.98 0l-213.2 364C-10.59 444.9 9.849 480 42.74 480h426.6C502.1 480 522.6 445 506.3 417zM232 168c0-13.25 10.75-24 24-24S280 154.8 280 168v128c0 13.25-10.75 24-23.1 24S232 309.3 232 296V168zM256 416c-17.36 0-31.44-14.08-31.44-31.44c0-17.36 14.07-31.44 31.44-31.44s31.44 14.08 31.44 31.44C287.4 401.9 273.4 416 256 416z\"/\u003e\u003c/svg\u003e\n \n \u003c/span\u003e\n \n\n \u003c/span\u003e\n \u003cspan class=\"flex items-center justify-between grow dark:text-neutral-300\"\u003e\n \u003cspan class=\"prose dark:prose-invert\"\u003e 这是 \u003ccode id=\"layout\"\u003ebackground\u003c/code\u003e 的样式示例。\u003c/span\u003e\n \u003cbutton\n id=\"switch-layout-button\"\n class=\"px-4 !text-neutral !no-underline rounded-md bg-primary-600 hover:!bg-primary-500 dark:bg-primary-800 dark:hover:!bg-primary-700\"\n \u003e\n 切换 layout \u0026orarr;\n \u003c/button\u003e\n \u003c/span\u003e\n\u003c/div\u003e --\u003e","title":"欢迎来到Morethan的小站","type":"page"},{"content":" ","date":"2025-01-03","externalUrl":null,"permalink":"/series/","section":"系列","summary":"\u003chr\u003e","title":"系列","type":"series"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/tags/%E9%81%90%E6%83%B3/","section":"标签","summary":"","title":"遐想","type":"tags"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/authors/","section":"作者列表","summary":"","title":"作者列表","type":"authors"},{"content":"","date":"2024-09-12","externalUrl":null,"permalink":"/tags/cumcm/","section":"标签","summary":"","title":"CUMCM","type":"tags"},{"content":"","date":"2024-09-12","externalUrl":null,"permalink":"/tags/math/","section":"标签","summary":"","title":"Math","type":"tags"},{"content":"","date":"12 September 2024","externalUrl":null,"permalink":"/en/series/mathmodel/","section":"Seires","summary":"","title":"MathModel","type":"series"},{"content":"","date":"2024-09-12","externalUrl":null,"permalink":"/series/%E6%95%B0%E5%AD%A6%E5%BB%BA%E6%A8%A1/","section":"系列","summary":"","title":"数学建模","type":"series"},{"content":"","date":"10 August 2024","externalUrl":null,"permalink":"/en/series/operation/","section":"Seires","summary":"","title":"Operation","type":"series"},{"content":"","date":"2024-08-10","externalUrl":null,"permalink":"/tags/python/","section":"标签","summary":"","title":"Python","type":"tags"},{"content":"","date":"2024-08-10","externalUrl":null,"permalink":"/series/%E6%8A%80%E6%9C%AF%E6%B5%81%E7%A8%8B/","section":"系列","summary":"","title":"技术流程","type":"series"},{"content":"","date":"2024-08-05","externalUrl":null,"permalink":"/tags/matlab/","section":"标签","summary":"","title":"MATLAB","type":"tags"},{"content":"","date":"2024-07-12","externalUrl":null,"permalink":"/tags/latex/","section":"标签","summary":"","title":"LaTeX","type":"tags"},{"content":"","date":"2024-07-12","externalUrl":null,"permalink":"/tags/overleaf/","section":"标签","summary":"","title":"Overleaf","type":"tags"},{"content":"","date":"2024-01-06","externalUrl":null,"permalink":"/tags/%E7%BB%8F%E5%8E%86/","section":"标签","summary":"","title":"经历","type":"tags"},{"content":"","date":"2024-01-06","externalUrl":null,"permalink":"/series/%E9%9A%8F%E7%AC%94/","section":"系列","summary":"","title":"随笔","type":"series"},{"content":"","externalUrl":null,"permalink":"/categories/","section":"Categories","summary":"","title":"Categories","type":"categories"},{"content":"这是高级标记。类似其他 Blowfish 中的其他列表页面,你可以在分类列表页添加自定义内容,这部分内容会显示在顶部。\u0026#x1f680;\n你也可以用这些内容来定义 Hugo 的元数据,比如标题和描述。这些内容可以被用来增强 SEO 或其他目的。\n","externalUrl":null,"permalink":"/tags/advanced/","section":"标签","summary":"\u003cp\u003e这是高级标记。类似其他 Blowfish 中的其他列表页面,你可以在分类列表页添加自定义内容,这部分内容会显示在顶部。\u0026#x1f680;\u003c/p\u003e","title":"高级","type":"tags"}] \ No newline at end of file +[{"content":" 背景提要 # 你应该知道如何通过命令行与电脑交互,包括但不限于:Windows如何唤出命令行/终端,正在运行中的命令什么时候结束\u0026hellip;\u0026hellip;\n懂一点点翻墙的技术,OverLeaf是个国外的软件,与之硬相关的latex项目也是国外的,因此下载相关依赖的时候能够直接接受国外流量会省掉很多麻烦。如果你没有VPN的话就需要为每一个包管理工具指定一个国内源,但有时候国内源更新并不及时。\n懂一些Vim的基本操作,比如:如何开启插入模式,如何保存退出,不保存退出等\n部署全流程 # 安装Linux # 在 Windows App Store 里面直接搜索一个Linux发行版本并下载,笔者选择的是Kali。安装完成后可以在开始菜单中直接打开,打开后会跳出命令行窗口,初次打开需要填写需要用户名与密码进行注册。\n此时你的命令行应该有一个Warning提示。这是因为你还没有安装WSL(Windows Subsystem for Linux)\n同时,在填写密码的时候你的输入不会显示在命令行,但已经被记录了\n为什么需要一个Linux系统?因为OverLeaf的sharelatex模型需要Linux环境。也正因如此,据说在Linux系统上运行的OverLeaf更加流畅。\n安装WSL # 安装WSL2,直接在Windows命令行中运行:\nwsl --install 这个程序安装后也可以直接打开,打开后也有一个Warning提示。这时候需要在 C:\\Users\\ASUS 目录下面写入一个text文件,然后重命名为 .wslconfig;\n写入内容为:\n[experimental] autoMemoryReclaim=gradual # gradual | dropcache | disabled networkingMode=mirrored dnsTunneling=true firewall=true autoProxy=true 安装Docker # 进入Docker官网下载Docker,这是sharelatex模型运行的容器。Docker是一个开源的应用容器引擎,其中包括,镜像、容器、仓库,目的就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的产品及其环境能够做到“一次封装,到处运行”。就像一个集装箱,由程序员开发并封装,用户使用时就直接把整个集装箱搬过去。\nDocker安装完成后就可以双击启动放后台了,我们后面通过命令行来操作Docker;\n拉取镜像 # 打开Kali,直接运行\ngit clone https://github.com/overleaf/toolkit.git ./overleaf-toolkit 然后连续运行:\ncd ./overleaf-toolkit bin/init vim ./config/variables.env 此时你应该已经进入了一个文档界面,这就是Vim文本编辑器的界面。Vim有很多快捷键,其中按下\u0026quot;I\u0026quot;键即可开启插入模式,进行文本编辑,按下\u0026quot;esc\u0026quot;即可返回常规模式。在插入模式下输入:OVERLEAF_SITE_LANGUAGE=zh-CN\n输入完成后按下\u0026quot;esc\u0026quot;返回常规模式,直接键入 :wq 这是“保存并退出”,如果你不小心输错了可以 :e! 放弃所有更改重头再来。这一步是让你的OverLeaf界面显示为中文。\n当你成功保存并退出,回到熟悉的Kali命令行界面后运行 bin/up 此时正在拉取sharelatex镜像以及相关的网络工具。这时会有大量的数据传输,要保证网络通畅(梯子要稳!)\n配置用户 # 当上一个命令成功结束之后,运行 bin/start ;此时你打开Docker点进sharelatex,你应该可以看到代码“爆闪”,如果没有红色的消息,那应该是正常运行了。\n这时打开浏览器访问网址 http://localhost/launchpad\n按照提示注册Administrator Account之后,就会跳转到 http://localhost/project ;这时基本的OverLeaf网页已经可以显示了。 但现在你丢一个文件进去编译多半是会报错的 ᕕ( ᐛ )ᕗ\n因为此时sharelatex里面的宏包严重不足,不是红包「手动狗头」\n安装扩展包 # 打开Kali进入对应目录运行 bin/shell 然后逐条执行:\ncd /usr/local/texlive # 下载并运行升级脚本 wget http://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh sh update-tlmgr-latest.sh -- --upgrade # 更换texlive的下载源 tlmgr option repository https://mirrors.sustech.edu.cn/CTAN/systems/texlive/tlnet/ # 升级tlmgr tlmgr update --self --all # 安装完整版texlive(时间比较长,不要让shell断开) tlmgr install scheme-full # 退出sharelatex的命令行界面 exit # 重启sharelatex容器 docker restart sharelatex 重启后再次进入shell,运行:\napt update # 安装字体 apt install --no-install-recommends ttf-mscorefonts-installe fonts-noto texlive-fonts-recommended tex-gyre fonts-wqy-microhei fonts-wqy-zenhei fonts-noto-cjk fonts-noto-cjk-extra fonts-noto-color-emoji fonts-noto-extra fonts-noto-ui-core fonts-noto-ui-extra fonts-noto-unhinted fonts-texgyre # 安装pygments apt install python3-pygments # 安装beamer之类的 apt install texlive-latex-recommended apt install texlive-latex-extra # 安装英文字体 echo \u0026#34;yes\u0026#34; | apt install -y --reinstall ttf-mscorefonts-installer # 安装中文字体 apt install -y latex-cjk-all texlive-lang-chinese texlive-lang-english cp fonts/* /usr/share/fonts/zh-cn/ cd /usr/share/fonts fc-cache -fv # 更新字体缓存 fc-list :lang=zh-cn fc-match Arial 最后在shell目录里面运行:\nvim /usr/local/texlive/2023/texmf.cnf 进入配置文件,在最底下加入一句 shell_escape = t\n我也不知道这有什么用,属于是前辈传承了🤔 注意,如果Texlive(扩展包的官名)版本不同的话,目录地址也会有所变化,因此需要根据实际的地址来填写,例如将2023改成2024。\n在Linux命令行中可以用 ls -l 来查看当前目录下所有的文件 部署成功 # 现在你就可以愉快地使用本地版OverLeaf了,没有编译超时的困扰~\n如果非常巧合,你也是个CQUer,这里附赠一份重庆大学的毕业论文模板,炒鸡的亲民哦:CQUThesis\n","date":"2024-07-12","externalUrl":null,"permalink":"/blog/localoverleaf/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003e背景提要 \n \u003cdiv id=\"%E8%83%8C%E6%99%AF%E6%8F%90%E8%A6%81\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E8%83%8C%E6%99%AF%E6%8F%90%E8%A6%81\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e你应该知道如何通过命令行与电脑交互,包括但不限于:Windows如何唤出命令行/终端,正在运行中的命令什么时候结束\u0026hellip;\u0026hellip;\u003c/p\u003e","title":"本地 OverLeaf 部署","type":"blog"},{"content":" 引用文献 # 我对于贝叶斯优化的理解也并不多,主要参考下面的内容👇\n【机器学习】一文看懂贝叶斯优化/Bayesian Optimization\n一文详解贝叶斯优化(Bayesian Optimization)原理\n贝叶斯优化(BayesianOptimization)\n超参数优\u0026mdash;贝叶斯优化及其改进(PBT优化)\n贝叶斯优化 (Bayesian Optimization)\nMATLAB官方文档\n优点和算法原理 # 这里重点描述贝叶斯优化的优点以及其算法原理。如果你只关注“怎么用”,可以先了解贝叶斯优化的优点,然后跳转到#MATLAB用法\n优点 # 算法原理 # MATLAB用法 # 代码一览 # % 定义目标函数 function y = objectiveFcn(x) y = (1 - x.x1)^2 + 100 * (x.x2 - x.x1^2)^2; end % 定义优化变量 vars = [optimizableVariable(\u0026#39;x1\u0026#39;, [-2, 2]) optimizableVariable(\u0026#39;x2\u0026#39;, [-2, 2])]; % 执行贝叶斯优化 results = bayesopt(@objectiveFcn, vars, ... \u0026#39;AcquisitionFunctionName\u0026#39;, \u0026#39;expected-improvement-plus\u0026#39;, ... \u0026#39;MaxObjectiveEvaluations\u0026#39;, 30, ... \u0026#39;IsObjectiveDeterministic\u0026#39;, true, ... \u0026#39;Verbose\u0026#39;, 1); % 查看结果 bestPoint = results.XAtMinObjective; bestObjective = results.MinObjective; fprintf(\u0026#39;最优解 x1: %.4f, x2: %.4f\\n\u0026#39;, bestPoint.x1, bestPoint.x2); fprintf(\u0026#39;最优目标值: %.4f\\n\u0026#39;, bestObjective); 参数说明 # Params Meaning AcquisitionFunctionName 选择采集函数,这决定了算法在每次采样之后如何选取下一个采样点 MaxObjectiveEvaluations 最大迭代轮次 IsObjectiveDeterministic 如果目标函数是确定的,不包含噪声,则设置为 true ;否则设置为 false Verbose 决定了结果输出的详细程度,所有的输出可能包含多张图表 每个参数具体的可选值见官方文档: bayesopt;官方写的相当细致,还有很多样例。\n数学建模人必会技能之一就是读文档😝 ","date":"2024-08-05","externalUrl":null,"permalink":"/blog/bayesianopt/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003e引用文献 \n \u003cdiv id=\"%E5%BC%95%E7%94%A8%E6%96%87%E7%8C%AE\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E5%BC%95%E7%94%A8%E6%96%87%E7%8C%AE\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003e我对于贝叶斯优化的理解也并不多,主要参考下面的内容👇\u003c/p\u003e","title":"贝叶斯优化","type":"blog"},{"content":" 创建虚拟环境 # 创建 # 一些常规的代码例子如下👇\n# 创建虚拟环境 python -m venv your_env_name # 指定python版本创建虚拟环境,如果你的python是默认安装路径 python -m venv your_env_name --python=python3.11 # python是自定义的安装路径 D:\\Python\\Python311\\python.exe -m venv your_env_name 下面有一些可选参数用于创建自定义的虚拟环境:\n参数名 含义 --system-site-packages 创建的虚拟环境将包含全局Python环境中的包,这可以避免重复安装一些常用的包 --clear 如果指定的虚拟环境目录已经存在,这会清除目录中的所有内容,然后重新创建虚拟环境 --version 用于确认虚拟环境中 Python 的版本 所有的参数说明都可以通过运行 python -m venv -h 来获得;不用到处查文档了~😆 激活 # 默认情况下,虚拟环境处于非激活状态。在“your_env_name/Scripts/”目录下将有一个名为“activate”的文件,用命令行运行即可。\n# 激活虚拟环境 your_env_name/Scripts/activate ","date":"2024-08-10","externalUrl":null,"permalink":"/blog/pythontips/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003e创建虚拟环境 \n \u003cdiv id=\"%E5%88%9B%E5%BB%BA%E8%99%9A%E6%8B%9F%E7%8E%AF%E5%A2%83\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E5%88%9B%E5%BB%BA%E8%99%9A%E6%8B%9F%E7%8E%AF%E5%A2%83\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\n\n\u003ch3 class=\"relative group\"\u003e创建 \n \u003cdiv id=\"%E5%88%9B%E5%BB%BA\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E5%88%9B%E5%BB%BA\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h3\u003e\n\u003cp\u003e一些常规的代码例子如下👇\u003c/p\u003e","title":"Python小技巧","type":"blog"},{"content":" 前言 # 这篇文章主要是对于 CUMCM 2024 的比赛全过程进行一个梳理和总结。\n我们的队伍是在 2023 年的冬天组起来的,CUMCM 2024 也是我们第一次参与“数学建模”比赛。经过了大大小小的模拟赛,最终进入了全国的比赛。在提交最终论文之后获得省级一等奖并推荐国家级一等奖,最终获得国家级二等奖。\n整个过程有振奋惊喜,也有失落遗憾;我们在比赛中应该是做对了一部分事情,因此我们初次参赛就获得了国家级奖项;但不足肯定是有的,毕竟从“推荐国家级一等奖”变成“国家级二等奖”总是有理由的。\n总之,这次经历着实是令人难忘,更加值得梳理和总结经验,为明年的比赛作准备。\nCUMCM 全称为 Chinese Undergraduate Mathmatical Contest in Modeling;民间称呼为“数模国赛” 用词说明 # 用词 说明 计算系统 传统意义上的建模过程,即封装一个超大的函数 优化系统 用于优化计算系统中可调参数的系统,生成最优参数配置 计算流 计算系统中输入数据的处理过程 计算流结点 工作流中关键性的中间步骤 优化流 优化系统的主体逻辑 论文主体内容 包括摘要、重述、计算流和优化流的描述、结果展示与分析,也就是论文收尾之前的所有内容 论文收尾 包括灵敏度分析和模型推广 客观情况 # 任务分工 # 虽然比赛有很多个选题可供选择,但是我们小组选择专攻优化类问题,也就是 A 题。\n我:建模 + 代码 + 部分论文撰写 CL:建模 + 论文撰写 + 部分代码 HWJ:论文美化 工作流程 # 整个 A 题的代码部分大致可以分为两个系统:\n计算系统: 功能:接受输入数据与参数,返回需要的结果 性质:直接由题目决定,不同题目有不同的计算系统,需要临时构建 优化系统: 功能: 接受计算系统并将其作为可优化的目标函数,执行自身的优化逻辑,最后返回计算结果 性质:方法体系较为成熟,可以在比赛前就进行多种优化系统的准备 论文撰写部分分为:\n整体框架:由 LaTeX 模板决定 主体内容填充:对工作流和优化流的清晰描述 排版和美化:调整各个部分的详略,搭配说明性的图片(流程图,示意图) 收尾内容 预建模 # 目标:在精确理解题目的前提条件下,迅速进行初步的建模,基本确定建模方向、计算方法;\n预计用时:3h\n工作:队伍所有成员都进行全网资料查询,看看有没有基本命中题目的文献资料\n命中成功:最理想的情况,这个时候直接研读论文,收集思路即可; 命中失败:虽然没有现成的资料可供参考,但是在查阅文献的过程中或多或少也积累了一定的思路 建模初期 # 总目标:构建足够精确的、适配优化方法的计算系统\n建模:明确输入数据在各个计算流结点之间的操作 代码:用代码实现计算流,实现数据可视化 论文:填充第一个小问的内容,并初步排版 预计用时:30h\n工作:\n所有队员一起进行建模,优先明确建模思路,给出完整的数学推导过程 我和 CL:代码实现与论文内容填充同步进行 HWJ:绘制无法用代码生成的更加生动的示意图 建模中期 # 总目标:构建合适的优化系统\n建模:根据计算系统的特殊性,选择最为匹配的优化系统 代码:在实现优化系统的过程中进行微小改动,匹配计算系统 论文:完成论文的主体部分,开始进行局部细节微调 预计用时:20h\n工作:与前面类似只不过工作的中心从代码编写转到了论文撰写\n精简论文,此时的论文非常臃肿 微调论文的逻辑,使得上下文关联度更高 美化排版,减少文字,增加图片 建模后期 # 基本建模完成了,全员进行漏洞的检查: 错别字、不准确的表述、公式拼写错误等常规检查 优化代码中的注释,让其更加易读 重点检查个人信息 比赛论文中不能保留任何个人信息,包括代码中的文件路径,例如 C:\\Users\\Morethan ;保留个人信息是非常严重的错误! 实战效果 # 当我们将上述策略应用于实战过程中,也就是 CUMCM 2024 的正式比赛中,得到的效果如下:\n有效用时: 比赛总时长三天,共计 72 小时 队伍从早上七点到晚上八点,除开吃饭用时,一天的有效时间为 12 个小时 时间利用率为 \\( 50 \\% \\) (对比之下很低🤔) 最终完成工作: 论文主体 28 页 A4 纸 代码部分 35 页 A4 纸,除开每一个小题之间的复用代码,应该有 20 页左右 全文配图共计 25 张 以上数据是论文精简之后的,初稿论文将近 50 页 未完成工作: 最终结果的计算,由于计算量过大(代码效率并不高),最终提前两个小时写完所有代码,但并没有足够的时间运算出结果😭😭 模型的计算精度不够,精度为 1s 没有达到标准答案给出的精度 论文的收尾部分其实并没有完成 优点 # 选题 # 专注于 A 题,在模拟赛中积累了充分的经验,磨合出了一套高效的工作流程\n对于 A 题的方法论构建比较完善\n工作流程 # 工作流程相对清晰,效率较高\n以最终论文为导向,建模、论文、代码三线同时进行,保证了论文内容的充足\n分工 # 采用模糊分工,每个队员都有一个主要分工和次要分工,在各自的主要分工上能够独立工作,在其他的次要分工上面也能够完成一定的工作,大大提高了时间利用率\n队员很给力,因为同时兼顾两个分工任务意味着更多的学习成本\n不足 # 工作流程 # 计划很完美,但是在实践中还是有些必要的环节没有做好\n有效时间占比:晚上八点收工太早了!应该占用更多的时间来进行建模试错,保证模型的正确性和精确性\n分工 # 代码的编写、代码的调试、代码的可视化、结果的计算、结果的可视化所涉及的代码量太大,一人难以搞定;\n因为模糊分工所引起的任务重叠,增加了协同成本\n建模 # 题目理解准确度:这次我们对于题目的理解出现了较大的偏差,导致我们浪费了挺多时间在模型修正上面; 代码 # 代码的效率:之前由于没有时间的限制,导致对于“超长”代码的准备不足,没有代码并行的经验;\n结果精度:一开始建模过于粗糙,并且用了一个不好的特性:将时间步长设置为 1 ,并且将作为数组索引,导致后期难以将时间的步长减小,导致最后结果的精确度不够\n改进方案 # 精心挑选场地,增加有效时间✨是最重要的✨ 分工 # 略微改动人员分工,增加代码方面的人力投入\n在各自的主要分工和次要分工上增加学习投入,增加工作效率\n建模 # 更专注于题目的理解,不能太着急;建模错误再修正是得不偿失的 代码 # 构建一套行之有效的代码协同方案,增强代码编写速度\n着手构建代码编写规范:\n变量命名 文件开头的说明文档 代码编写流程规范 代码并行化:在代码中添加一些可并行的代码,提高运行速度\n所有代码方面的改进最终落实为一个文档!不能光喊口号! 论文 # 研究优秀论文\n关注其论文框架 关注其语言风格、文本可读性、详略、配图逻辑、图片可读性 改进自身\n优化论文主体逻辑框架,细化每一块的内容 语言风格、文本可读性、详略、配图逻辑、图片可读性等等细节的改进 成果以 LaTeX 模板中注释的形式固定! 总结 # 一份没有满分的答卷比一份满分的答卷更有收获!\n积累应用数学的知识,增强论文撰写能力,提高发现问题的能力,这是比比赛本身更有意义的东西🫡\nCUMCM,每一个数模人都能从中受益🤗\n","date":"2024-09-12","externalUrl":null,"permalink":"/blog/cumcm2024/","section":"Blogs","summary":"\u003ch2 class=\"relative group\"\u003e前言 \n \u003cdiv id=\"%E5%89%8D%E8%A8%80\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E5%89%8D%E8%A8%80\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003e这篇文章主要是对于 CUMCM 2024 的比赛全过程进行一个梳理和总结。\u003c/p\u003e","title":"CUMCM 2024总结","type":"blog"},{"content":" 某些问题机器能够非常容易解决,而对于人类而言非常复杂;反之亦然。\n这种反常悖论似乎来源于知识的可概括性,某些知识具有良好的可压缩性,但另外一些则不具有。有一个更加准确的概念叫做[[计算可约性#定义|计算可约性]]\n一个很简单的例子:考试,从逻辑上来说全部都是基于最基本的知识推理而来的对吧?讲道理,考试应该能够完全通过逻辑推理来解决所有问题。但是事实上,考过试的都知道,从阅读题目到形成解题思路的过程貌似并不那么“有逻辑”,甚至可以说是没有什么技巧可言,纯粹就是一种做题的感觉。\n两类知识 # 在现有知识的基础上,能够通过有限的符号逻辑表达式得到的知识;其特点就是精确,高度概括;问题边界明确,能够清晰定义已知条件有什么、通过什么样的方法、得出什么样的结果;在明确的已知条件下能够精准预测问题结果的规律(在问题的考虑范围内没有“概率”这个概念的容身之处) 对于那些难以根据已知条件,通过精确的逻辑推理得到结果的问题,我们采用统计性的尝试,得出的有一定价值的规律;特点是基于大量尝试,难以定义问题的边界,甚至难以获取需要的已知条件,就是这种恶劣的条件下,强行匹配已知条件与结果的联系,进而得出的规律,其结果具有波动性、不确定性、局部正确性。 两类知识的占比 # 明显可概括的知识远远少于不可概括的知识;可概括的知识从某种意义上来说是不可概括知识的特殊情况;\n不可概括向可概括转化的趋势 # 不可概括知识的特点决定了其获取的难度(大量尝试消耗大量能量,这一步不可避免),运转不可概括性知识的能量消耗极高(知识难以概括就会占用大量的资源来维持运转),不可概括的知识难以跨过人类个体生命的边界(不可概括的知识往往会随着个体生命的消散而丢失,因为其难以概括从而难以以任何媒介形式流传,但机器智能似乎在这方面有本质的区别);人类个体的能量十分有限,难以完全依靠不可概括知识来应对外部世界,因此会有从不可概括知识向可概括知识转化的特点,尽管这个过程对于个体而言相当困难、极其耗费能量(本身就是一个不可概括的知识),但从整个人类的角度上来说节省了海量的能量;\n可接受功率决定了智能的上限 # 在这里似乎可以给出另外一个划分智能等级的标准:个体接受功率输入的级别,级别越高其,个体能掌握的不可概括知识越多;由于能量总是有限的(我们人类能消耗的能源级别可能是这个地球上面的资源,但是机器智能的消耗可能是恒星级别的),因此总会有一定程度上的知识概括,但是由于不可概括知识的固有性质,高等级智能的可概括知识对于低等级智能来说并不是可概括的;知识的可概括性具有相对性;\n从这里可以看出,可接受功率对于一个智能系统来说具有关键意义。从另一个角度来说,或许我们能够人为降低机器智能可消耗功率的上限来观察不可概括知识向可概括知识转化的过程\n","date":"2025-01-03","externalUrl":null,"permalink":"/blog/moravecs-paradox/","section":"Blogs","summary":"\u003cblockquote\u003e\n\u003cp\u003e某些问题机器能够非常容易解决,而对于人类而言非常复杂;反之亦然。\u003c/p\u003e","title":"关于莫拉维克悖论的思考","type":"blog"},{"content":" 记一次写插件的经历,以及从中收获的一些感想。 缘由 # 事情起源于我这个博客网站。我在微信公众号上偶然间浏览到了关于用 Hugo 建立博客网站的信息,正好我也想翻新一下我那简陋的小网站。我原来的小网站非常非常的原始,整个写作流程都需要在 HTML JS 和 CSS 之间狼狈地切换。并且我非常崇拜的大佬 Lilian Weng 的 博客 也是用 Hugo 搭建的,这也更加坚定了我换底层的决心。\n于是我便迅速开始了对于 Hugo 的接触。\n结果真的出乎意料!我原来的网页花费了我将近一个月的时间,用 Hugo 竟然不到一上午就搞定了。更令我惊讶的是 Hugo 作为一个用 Go 编写的程序,其竟然不需要用户搭建 Go 环境!😮\n同时,我也发现了一个非常用心的 Hugo 主题 Blowfish 。这真的是我见过的文档配置最为详细的一个项目,没有之一(๑•̀ㅂ•́)و✧\n在 Hugo 和 Blowfish 的强力驱动下,我的小网站竟然变得像模像样的了。当然请原谅我并不擅长美化页面,所以我就直接套用了 Blowfish 官方网站的界面设置,因为我觉得任何的改动都会让这个精美的页面变得不协调。\n说实话,做完这一切我并没有什么特别的情绪波动,除了敬佩 Hugo 和 Blowfish 的作者们强悍的编码能力。\n直到我想将我在 Obsidian 中大量的笔记都上传到这个博客网站。\n原创的苦涩 # 我发现在 Obsidian 中并没有现成的可以直接适配 Blowfish 主题的格式转换插件。于是在前面那“愉快体验”的助推下,我决定自己写一个插件!(😄虽然过一会儿就笑不出来了😢)\n后面的经历实在是没什么好描述的,一遍又一遍地在网页之间来回切换,不停地搜索各种API文档,与AI机器人的沟通也从未停止。经过了无数次修改,我终于写出来了一个再简单不过的东西:识别文档中的固定模式然后进行内容替换。\n令人哭笑不得,相比于创建网站那短短的几个小时,我这将近四十个小时的工作几乎可以说微不足道。有那么一瞬间我真的想直接删掉我那几百行的代码。\n是的,就这么一个简单的插件就让我心力交瘁,疲惫不堪。我亲口品尝到了原创的苦涩。\n现在让我回头看 Hugo 和 Blowfish 我感受到了深深的震撼,如此复杂的功能实现不知道要消耗多少经历。如果说他们的工作都是付费的,那我还能心安理得地接受如此的工作量。然而他们都是开源的,有没有收入全凭用户喜好。\n我看着 Blowfish 作者那停滞在2024年3月的博客,我陷入了沉思。\n情怀与理想 # 我猜想 Blowfish 的作者肯定是因为别的什么事情暂时放缓了对于这个主题的维护,毕竟这个项目并没有带来多少实际的收入。\n突然之间我回想起了之前那些被我忽略的现象,一些 GitHub 达人主页上满满的绿色瓷砖慢慢变得稀疏,最后消失。在这平静如水的变化之下,或许是一个人生活的转变。或因生活工作忙碌,或因开发动力逐渐衰减,但最后原本的热血初心都淹没在了寂静之中。我无法阻止这样的现象发生,但我理解这背后的原因。\n开源是情怀,但是情怀不能当饭吃。人总是要活在当下的。\n我想起来 bilibili 上的一位博主 码农高天 ,一位 Python 的核心开发者,用幽默诙谐的段子吐槽开源人的悲惨待遇。他那年纪轻轻就已经花白的头发让人不经感慨“生活真是不容易啊”——写了大半辈子的代码,现在竟然还是待业在家,靠着发发视频赚点外快。\n写在最后 # 人生不如意,十之八九。我又一次看着那四十多小时的工作成功,笑着摇了摇头。\n写完这一句,我就睡觉去了,现在是2025年1月6日凌晨1:48,明天还有英语的期末考试,还没复习呢。\n我看着这篇博客,又一次笑着摇了摇头。\n这就是生活。\n","date":"2025-01-06","externalUrl":null,"permalink":"/blog/plugin-writing-experience/","section":"Blogs","summary":"\u003cdiv class=\"lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl\"\u003e\n 记一次写插件的经历,以及从中收获的一些感想。\n\u003c/div\u003e\n\n\n\n\u003ch3 class=\"relative group\"\u003e缘由 \n \u003cdiv id=\"%E7%BC%98%E7%94%B1\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E7%BC%98%E7%94%B1\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h3\u003e\n\u003cp\u003e事情起源于我这个博客网站。我在微信公众号上偶然间浏览到了关于用 \u003ccode\u003eHugo\u003c/code\u003e 建立博客网站的信息,正好我也想翻新一下我那简陋的小网站。我原来的小网站非常非常的原始,整个写作流程都需要在 \u003ccode\u003eHTML\u003c/code\u003e \u003ccode\u003eJS\u003c/code\u003e 和 \u003ccode\u003eCSS\u003c/code\u003e 之间狼狈地切换。并且我非常崇拜的大佬 \u003ccode\u003eLilian Weng\u003c/code\u003e 的 \u003ca href=\"https://lilianweng.github.io/\" target=\"_blank\"\u003e博客\u003c/a\u003e 也是用 \u003ccode\u003eHugo\u003c/code\u003e 搭建的,这也更加坚定了我换底层的决心。\u003c/p\u003e","title":"一次写插件经历","type":"blog"},{"content":"","date":"2025-01-06","externalUrl":null,"permalink":"/blog/","section":"Blogs","summary":"","title":"Blogs","type":"blog"},{"content":"","date":"6 January 2025","externalUrl":null,"permalink":"/en/series/casual-essay/","section":"Seires","summary":"","title":"Casual Essay","type":"series"},{"content":"","date":"6 January 2025","externalUrl":null,"permalink":"/en/tags/experience/","section":"Tags","summary":"","title":"Experience","type":"tags"},{"content":" 欢迎来到我的信息页面 👋 # 基本信息 # Morethan 是我随手起的一个英文名字,因为这个词语的发音和我的中文名字实在是太像了🙃\n我现在还是一个本科生 ᕕ( ᐛ )ᕗ 其他的没什么好写的🫠\n博客定位 # 个人知识库:用来存放一些固定的技术流程和有意义的经历\n微型论文栈:尽可能按照标准论文流程来编写一些博客,为毕业论文做准备\n知识输出平台:将我所学尽可能清晰地表达出来\n最后 # 如果你觉得有内容帮助了你,请点击文章开头的“喜欢” 🤗\n如果你想分享某些内容,请标注援引自此网站 🫡\n如果你找到了一些错误之处,请在 GitHub 上提交一个Issue 🥰\n","date":"2025-01-06","externalUrl":null,"permalink":"/authors/morethan/","section":"作者列表","summary":"\u003ch1 class=\"relative group\"\u003e欢迎来到我的信息页面 👋 \n \u003cdiv id=\"%E6%AC%A2%E8%BF%8E%E6%9D%A5%E5%88%B0%E6%88%91%E7%9A%84%E4%BF%A1%E6%81%AF%E9%A1%B5%E9%9D%A2-\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E6%AC%A2%E8%BF%8E%E6%9D%A5%E5%88%B0%E6%88%91%E7%9A%84%E4%BF%A1%E6%81%AF%E9%A1%B5%E9%9D%A2-\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h1\u003e\n\n\n\u003ch2 class=\"relative group\"\u003e基本信息 \n \u003cdiv id=\"%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF\" class=\"anchor\"\u003e\u003c/div\u003e\n \n \u003cspan\n class=\"absolute top-0 w-6 transition-opacity opacity-0 ltr:-left-6 rtl:-right-6 not-prose group-hover:opacity-100\"\u003e\n \u003ca class=\"group-hover:text-primary-300 dark:group-hover:text-neutral-700\"\n style=\"text-decoration-line: none !important;\" href=\"#%E5%9F%BA%E6%9C%AC%E4%BF%A1%E6%81%AF\" aria-label=\"锚点\"\u003e#\u003c/a\u003e\n \u003c/span\u003e \n \n\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eMorethan\u003c/code\u003e 是我随手起的一个英文名字,因为这个词语的发音和我的中文名字实在是太像了🙃\u003c/p\u003e","title":"Morethan","type":"authors"},{"content":" ","date":"2025-01-06","externalUrl":null,"permalink":"/tags/","section":"标签","summary":"\u003chr\u003e","title":"标签","type":"tags"},{"content":" ","date":"2025-01-06","externalUrl":null,"permalink":"/","section":"欢迎来到Morethan的小站","summary":"\u003c!-- \u003cdiv class=\"flex px-4 py-2 mb-8 text-base rounded-md bg-primary-100 dark:bg-primary-900\"\u003e\n \u003cspan class=\"flex items-center ltr:pr-3 rtl:pl-3 text-primary-400\"\u003e\n \n \n \u003cspan class=\"relative inline-block align-text-bottom icon\"\u003e\n \u003csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"\u003e\u003cpath fill=\"currentColor\" d=\"M506.3 417l-213.3-364c-16.33-28-57.54-28-73.98 0l-213.2 364C-10.59 444.9 9.849 480 42.74 480h426.6C502.1 480 522.6 445 506.3 417zM232 168c0-13.25 10.75-24 24-24S280 154.8 280 168v128c0 13.25-10.75 24-23.1 24S232 309.3 232 296V168zM256 416c-17.36 0-31.44-14.08-31.44-31.44c0-17.36 14.07-31.44 31.44-31.44s31.44 14.08 31.44 31.44C287.4 401.9 273.4 416 256 416z\"/\u003e\u003c/svg\u003e\n \n \u003c/span\u003e\n \n\n \u003c/span\u003e\n \u003cspan class=\"flex items-center justify-between grow dark:text-neutral-300\"\u003e\n \u003cspan class=\"prose dark:prose-invert\"\u003e 这是 \u003ccode id=\"layout\"\u003ebackground\u003c/code\u003e 的样式示例。\u003c/span\u003e\n \u003cbutton\n id=\"switch-layout-button\"\n class=\"px-4 !text-neutral !no-underline rounded-md bg-primary-600 hover:!bg-primary-500 dark:bg-primary-800 dark:hover:!bg-primary-700\"\n \u003e\n 切换 layout \u0026orarr;\n \u003c/button\u003e\n \u003c/span\u003e\n\u003c/div\u003e --\u003e","title":"欢迎来到Morethan的小站","type":"page"},{"content":"","date":"2025-01-06","externalUrl":null,"permalink":"/tags/%E7%BB%8F%E5%8E%86/","section":"标签","summary":"","title":"经历","type":"tags"},{"content":"","date":"2025-01-06","externalUrl":null,"permalink":"/series/%E9%9A%8F%E7%AC%94/","section":"系列","summary":"","title":"随笔","type":"series"},{"content":" ","date":"2025-01-06","externalUrl":null,"permalink":"/series/","section":"系列","summary":"\u003chr\u003e","title":"系列","type":"series"},{"content":"","date":"2025-01-06","externalUrl":null,"permalink":"/authors/","section":"作者列表","summary":"","title":"作者列表","type":"authors"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/tags/ai/","section":"标签","summary":"","title":"AI","type":"tags"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/series/ai%E9%81%90%E6%83%B3/","section":"系列","summary":"","title":"AI遐想","type":"series"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/tags/imagination/","section":"Tags","summary":"","title":"Imagination","type":"tags"},{"content":"","date":"3 January 2025","externalUrl":null,"permalink":"/en/series/wild-imagination-of-ai/","section":"Seires","summary":"","title":"Wild Imagination of AI","type":"series"},{"content":"","date":"2025-01-03","externalUrl":null,"permalink":"/tags/%E9%81%90%E6%83%B3/","section":"标签","summary":"","title":"遐想","type":"tags"},{"content":"","date":"2024-09-12","externalUrl":null,"permalink":"/tags/cumcm/","section":"标签","summary":"","title":"CUMCM","type":"tags"},{"content":"","date":"2024-09-12","externalUrl":null,"permalink":"/tags/math/","section":"标签","summary":"","title":"Math","type":"tags"},{"content":"","date":"12 September 2024","externalUrl":null,"permalink":"/en/series/mathmodel/","section":"Seires","summary":"","title":"MathModel","type":"series"},{"content":"","date":"2024-09-12","externalUrl":null,"permalink":"/series/%E6%95%B0%E5%AD%A6%E5%BB%BA%E6%A8%A1/","section":"系列","summary":"","title":"数学建模","type":"series"},{"content":"","date":"10 August 2024","externalUrl":null,"permalink":"/en/series/operation/","section":"Seires","summary":"","title":"Operation","type":"series"},{"content":"","date":"2024-08-10","externalUrl":null,"permalink":"/tags/python/","section":"标签","summary":"","title":"Python","type":"tags"},{"content":"","date":"2024-08-10","externalUrl":null,"permalink":"/series/%E6%8A%80%E6%9C%AF%E6%B5%81%E7%A8%8B/","section":"系列","summary":"","title":"技术流程","type":"series"},{"content":"","date":"2024-08-05","externalUrl":null,"permalink":"/tags/matlab/","section":"标签","summary":"","title":"MATLAB","type":"tags"},{"content":"","date":"2024-07-12","externalUrl":null,"permalink":"/tags/latex/","section":"标签","summary":"","title":"LaTeX","type":"tags"},{"content":"","date":"2024-07-12","externalUrl":null,"permalink":"/tags/overleaf/","section":"标签","summary":"","title":"Overleaf","type":"tags"},{"content":"","externalUrl":null,"permalink":"/categories/","section":"Categories","summary":"","title":"Categories","type":"categories"},{"content":"这是高级标记。类似其他 Blowfish 中的其他列表页面,你可以在分类列表页添加自定义内容,这部分内容会显示在顶部。\u0026#x1f680;\n你也可以用这些内容来定义 Hugo 的元数据,比如标题和描述。这些内容可以被用来增强 SEO 或其他目的。\n","externalUrl":null,"permalink":"/tags/advanced/","section":"标签","summary":"\u003cp\u003e这是高级标记。类似其他 Blowfish 中的其他列表页面,你可以在分类列表页添加自定义内容,这部分内容会显示在顶部。\u0026#x1f680;\u003c/p\u003e","title":"高级","type":"tags"}] \ No newline at end of file diff --git a/index.xml b/index.xml index b718a0f..cd45183 100644 --- a/index.xml +++ b/index.xml @@ -7,7 +7,7 @@ Hugo -- gohugo.io zh-cn © 2025 Morethan - Fri, 03 Jan 2025 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 本地 OverLeaf 部署 @@ -117,7 +117,7 @@ 一次写插件经历 https://morethan987.github.io/blog/plugin-writing-experience/ - Sat, 06 Jan 2024 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 https://morethan987.github.io/blog/plugin-writing-experience/ <div class="lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl"> diff --git a/series/index.xml b/series/index.xml index d1750a7..470319c 100644 --- a/series/index.xml +++ b/series/index.xml @@ -7,7 +7,17 @@ Hugo -- gohugo.io zh-cn © 2025 Morethan - Fri, 03 Jan 2025 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 + + + 随笔 + https://morethan987.github.io/series/%E9%9A%8F%E7%AC%94/ + Mon, 06 Jan 2025 00:00:00 +0000 + + https://morethan987.github.io/series/%E9%9A%8F%E7%AC%94/ + + + AI遐想 @@ -39,15 +49,5 @@ - - 随笔 - https://morethan987.github.io/series/%E9%9A%8F%E7%AC%94/ - Sat, 06 Jan 2024 00:00:00 +0000 - - https://morethan987.github.io/series/%E9%9A%8F%E7%AC%94/ - - - - diff --git "a/series/\351\232\217\347\254\224/index.html" "b/series/\351\232\217\347\254\224/index.html" index 9bf4041..11f502c 100644 --- "a/series/\351\232\217\347\254\224/index.html" +++ "b/series/\351\232\217\347\254\224/index.html" @@ -851,7 +851,7 @@

- ·3 分钟· + ·3 分钟· @@ -861,6 +861,9 @@

随 + + + @@ -883,6 +886,9 @@

随 + + + diff --git "a/series/\351\232\217\347\254\224/index.xml" "b/series/\351\232\217\347\254\224/index.xml" index 0545d9f..540e309 100644 --- "a/series/\351\232\217\347\254\224/index.xml" +++ "b/series/\351\232\217\347\254\224/index.xml" @@ -7,12 +7,12 @@ Hugo -- gohugo.io zh-cn © 2025 Morethan - Sat, 06 Jan 2024 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 一次写插件经历 https://morethan987.github.io/blog/plugin-writing-experience/ - Sat, 06 Jan 2024 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 https://morethan987.github.io/blog/plugin-writing-experience/ <div class="lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl"> diff --git a/sitemap.xml b/sitemap.xml index 4ee4c46..8f72f49 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -4,7 +4,7 @@ https://morethan987.github.io/zh-cn/sitemap.xml - 2025-01-03T00:00:00+00:00 + 2025-01-06T00:00:00+00:00 diff --git a/tags/index.xml b/tags/index.xml index e0c97d0..8d29fcf 100644 --- a/tags/index.xml +++ b/tags/index.xml @@ -7,7 +7,17 @@ Hugo -- gohugo.io zh-cn © 2025 Morethan - Fri, 03 Jan 2025 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 + + + 经历 + https://morethan987.github.io/tags/%E7%BB%8F%E5%8E%86/ + Mon, 06 Jan 2025 00:00:00 +0000 + + https://morethan987.github.io/tags/%E7%BB%8F%E5%8E%86/ + + + AI @@ -89,16 +99,6 @@ - - 经历 - https://morethan987.github.io/tags/%E7%BB%8F%E5%8E%86/ - Sat, 06 Jan 2024 00:00:00 +0000 - - https://morethan987.github.io/tags/%E7%BB%8F%E5%8E%86/ - - - - 高级 https://morethan987.github.io/tags/advanced/ diff --git "a/tags/\347\273\217\345\216\206/index.html" "b/tags/\347\273\217\345\216\206/index.html" index cd351f1..e3ed5f7 100644 --- "a/tags/\347\273\217\345\216\206/index.html" +++ "b/tags/\347\273\217\345\216\206/index.html" @@ -851,7 +851,7 @@

- ·3 分钟· + ·3 分钟· @@ -861,6 +861,9 @@

经 + + + @@ -883,6 +886,9 @@

经 + + + diff --git "a/tags/\347\273\217\345\216\206/index.xml" "b/tags/\347\273\217\345\216\206/index.xml" index debacae..94b8a04 100644 --- "a/tags/\347\273\217\345\216\206/index.xml" +++ "b/tags/\347\273\217\345\216\206/index.xml" @@ -7,12 +7,12 @@ Hugo -- gohugo.io zh-cn © 2025 Morethan - Sat, 06 Jan 2024 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 一次写插件经历 https://morethan987.github.io/blog/plugin-writing-experience/ - Sat, 06 Jan 2024 00:00:00 +0000 + Mon, 06 Jan 2025 00:00:00 +0000 https://morethan987.github.io/blog/plugin-writing-experience/ <div class="lead text-neutral-500 dark:text-neutral-400 !mb-9 text-xl"> diff --git a/zh-cn/sitemap.xml b/zh-cn/sitemap.xml index 4732ed5..8363d7e 100644 --- a/zh-cn/sitemap.xml +++ b/zh-cn/sitemap.xml @@ -84,35 +84,23 @@ https://morethan987.github.io/blog/plugin-writing-experience/ - 2024-01-06T00:00:00+00:00 - always - 0.5 - - - https://morethan987.github.io/tags/ai/ - 2025-01-03T00:00:00+00:00 + 2025-01-06T00:00:00+00:00 always 0.5 - - https://morethan987.github.io/series/ai%E9%81%90%E6%83%B3/ - 2025-01-03T00:00:00+00:00 - always - 0.5 - https://morethan987.github.io/blog/ - 2025-01-03T00:00:00+00:00 + 2025-01-06T00:00:00+00:00 always 0.5 https://morethan987.github.io/authors/morethan/ - 2025-01-03T00:00:00+00:00 + 2025-01-06T00:00:00+00:00 always 0.5 https://morethan987.github.io/tags/ - 2025-01-03T00:00:00+00:00 + 2025-01-06T00:00:00+00:00 always 0.5 https://morethan987.github.io/ - 2025-01-03T00:00:00+00:00 + 2025-01-06T00:00:00+00:00 always 0.5 + + https://morethan987.github.io/tags/%E7%BB%8F%E5%8E%86/ + 2025-01-06T00:00:00+00:00 + always + 0.5 + + + https://morethan987.github.io/series/%E9%9A%8F%E7%AC%94/ + 2025-01-06T00:00:00+00:00 + always + 0.5 + https://morethan987.github.io/series/ - 2025-01-03T00:00:00+00:00 + 2025-01-06T00:00:00+00:00 always 0.5 - https://morethan987.github.io/tags/%E9%81%90%E6%83%B3/ - 2025-01-03T00:00:00+00:00 + https://morethan987.github.io/authors/ + 2025-01-06T00:00:00+00:00 always 0.5 + + - https://morethan987.github.io/authors/ + https://morethan987.github.io/tags/ai/ 2025-01-03T00:00:00+00:00 always 0.5 + + https://morethan987.github.io/series/ai%E9%81%90%E6%83%B3/ + 2025-01-03T00:00:00+00:00 + always + 0.5 + + + https://morethan987.github.io/tags/%E9%81%90%E6%83%B3/ + 2025-01-03T00:00:00+00:00 + always + 0.5 + https://morethan987.github.io/tags/cumcm/ 2024-09-12T00:00:00+00:00 @@ -320,18 +342,6 @@ href="https://morethan987.github.io/tags/overleaf/" /> - - https://morethan987.github.io/tags/%E7%BB%8F%E5%8E%86/ - 2024-01-06T00:00:00+00:00 - always - 0.5 - - - https://morethan987.github.io/series/%E9%9A%8F%E7%AC%94/ - 2024-01-06T00:00:00+00:00 - always - 0.5 - https://morethan987.github.io/categories/ always