LLM के लिए Swarm Optimization (PSO, ACO)
Type: Learn + Build
Languages: Python (stdlib)
Prerequisites: Phase 16 · 09 (Parallel Swarm Networks), Phase 16 · 14 (Consensus and BFT)
Time: ~75 minutes
समस्या
आपके पास एक प्रॉम्प्ट है जो आपके कार्य मूल्यांकन पर 62% स्कोर करता है। आप इसे बेहतर बनाना चाहते हैं। साफ़ चाल ग्रेडिएंट-मुक्त मैनुअल ट्वीकिंग है, जो खराब पैमाने पर है। प्रवर्धन सीखने को प्रशिक्षण के लिए इनाम संकेतों और पर्याप्त रोलआउट की आवश्यकता होती है। प्रॉम्प्ट के माध्यम से बैकप्रॉप वास्तव में संभव नहीं है प्रॉम्प्ट एक अलग स्ट्रिंग है, एक अंतर योग्य पैरामीटर नहीं है।
निरंतर खोज स्थानों के लिए शास्त्रीय जैव-प्रेरित अनुकूलन पीएसओ, पथ चयन के लिए एसीओ को इस शासन के लिए डिज़ाइन किया गया थाः ग्रेडिएंट मुक्त, जनसंख्या आधारित, प्रति मूल्यांकन सस्ता। ग्रेडिएंट मुक्त खोज चरण के लिए उन्हें एलएलएम के साथ जोड़ा, और आपको एक आश्चर्यजनक व्यावहारिक अनुकूलक मिलता है।
कई एजेंट सिस्टम में एजेंट रूटिंग पर भी यही पैटर्न लागू होता है। एसीओ-शैली के फेरोमोन ट्रेल रिकॉर्ड करते हैं कि किस एजेंट ने किस टास्क-टाइप पर सबसे अच्छा काम किया, रूटर को ट्रेल का लाभ उठाने देता है, और फेरोमोन को गिरा देता है ताकि मार्गों को फिर से खोजा जा सके।
अवधारणा
पीएसओ रिफ्रेशर (केनेडी एंड एबरहर्ट 1995)
कण झुंड अनुकूलनः एक निरंतर खोज स्थान में कणों की आबादी। प्रत्येक कण की स्थिति है x_iऔर गति v_i. प्रत्येक पुनरावृत्ति:
v_i <- w * v_i + c1 * r1 * (p_best_i - x_i) + c2 * r2 * (g_best - x_i)
x_i <- x_i + v_i
evaluate fitness(x_i)
update p_best_i if improved
update g_best if global bestकहाँp_bestकण के अपने सबसे अच्छा है,g_bestसबसे अच्छा है,w, c1, c2गतिशीलता + संज्ञानात्मक + सामाजिक भार, r1, r2वे आकस्मिक कारक हैं।
एमएलएम आउटपुट पर पीएसओ LMPSO
arXiv:2504.09247 एलएलएम द्वारा उत्पन्न संरचित आउटपुट (गणितीय अभिव्यक्ति, कार्यक्रम) के लिए पीएसओ को अनुकूलित करता है। प्रत्येक कण एक उम्मीदवार आउटपुट है। वेग एक प्रोम्प्ट है जो बताता है कि व्यक्तिगत / वैश्विक सर्वश्रेष्ठ की ओर वर्तमान आउटपुट को कैसे संशोधित किया जाए। एलएलएम गति संकेत से नया आउटपुट उत्पन्न करता है। गति का "अवरोध" एक संकेत है जैसे "छोटे वृद्धिशील परिवर्तन करें।"
यह अच्छी तरह से काम करता है जबः
- आउटपुट संरचित है (अनुभवनीय, मूल्यांकन योग्य) ।
- फिटनेस स्वचालित है (परीक्षण रन, अंकगणितीय मूल्यांकन) ।
- जनसंख्या छोटी है (~ 10-30 कण) इसलिए कुल LLM कॉल प्रबंधनीय रहते हैं।
यह तब अच्छा काम नहीं करता जब फिटनेस को मानव समीक्षा की आवश्यकता होती है प्रति-वार्ता लागत निषेधात्मक हो जाती है।
मॉडल झुंड
arXiv:2410.11163 आउटपुट परत से PSO को मॉडल परत में ले जाता है। प्रत्येक "कण" एक विशेषज्ञ LLM (परिमाणक) है। दलदल ग्रेडिएंट-मुक्त अद्यतन के माध्यम से सामूहिक सर्वश्रेष्ठ की ओर पैरामीटर को स्थानांतरित करता है। रिपोर्ट किया गयाः 9 डेटा सेट पर 12 बेसलाइनों पर 13.3% औसत लाभ, प्रति पुनरावृत्ति केवल 200 उदाहरणों के साथ।
मुख्य अंतर्दृष्टि यह है कि एलएलएम विशेषज्ञ मॉडल पहले से ही एक साझा पैरामीटर विविधता (एडॉप्टर वजन, लोरा डेल्टा) में पास में हैं। इस कम आयामी उप-स्थान पर पीएसओ सस्ता और प्रभावी है।
एसीओ रिफ्रेशर (डोरिगो 1992)
चींटियों का अधिग्रहण: चींटियां एक ग्राफ से गुजरती हैं; प्रत्येक पथ में फेरोमोन ट्रेल होता है। चींटियां फेरोमोन ताकत से वजन की संभावनाओं को स्थानांतरित करती हैं। जो चींटियां कार्य को पूरा करती हैं, वे समाधान की गुणवत्ता के अनुपात में फेरोमोन जमा करती हैं। समय के साथ फेरोमोन गिरावट आती है।
एएमआरओ-एस एसीओ एजेंट रूटिंग के लिए
arXiv:2603.12933 बहु-एजेंट रूटिंग के लिए एसीओ का उपयोग करता है। प्रत्येक कार्य प्रकार एक "उंतरा" है; प्रत्येक एजेंट एक संभावित मार्ग है। फेरोमोन रास्तों को मजबूत करते हैं जो अच्छे आउटपुट पैदा करते हैं। प्रमुख योगदानः
- Interpretable routing evidence.फेरोमोन की ताकत मानव-पठनीय संकेत है।
- Quality-gated asynchronous update.फ़ेरॉमोन केवल गुणवत्ता जांच पास होने के बाद ही अपडेट होते हैं, जिससे सीखने से निष्कर्ष निकाला जाता है।
- 4.7x speedupबहु-एजेंट रूटिंग बेंचमार्क पर।
गुणवत्ता गेट महत्वपूर्ण हैः इसके बिना, तेजी से लेकिन गलत एजेंट फेरोमोन जमा करते हैं, और सिस्टम खराब मार्गों पर लॉक हो जाता है।
LLM के लिए PSO/ACO का उपयोग कब करना है
Use PSO when:
- खोज स्थान निरंतर या निरंतर मापदंडों (प्रोम्प्ट एम्बेड, लोरा वजन, संख्यात्मक जनरेशन मापदंडों) के लिए मानचित्र है।
- फिटनेस सस्ता और स्वचालित है।
- जनसंख्या छोटी हो सकती है (10-30).
Use ACO when:
- आपके पास रूटिंग या पथ चयन समस्या है।
- निर्णय समय के साथ मजबूत होते हैं (एक ही कार्य प्रकार वापस आते हैं) ।
- आपको रूटिंग निर्णयों के लिए व्याख्या योग्य सबूत की आवश्यकता है।
Do not use either when:
- फिटनेस के लिए मानव समीक्षा की आवश्यकता होती है (प्रति पुनरावृत्ति बहुत महंगी होती है) ।
- खोज स्थान एक अलग और संयोजनात्मक है जिस तरह से पीएसओ कवर नहीं करता है (बल्कि आनुवंशिक एल्गोरिदम का उपयोग करें) ।
- वास्तविक समय के निर्णयों को सख्त विलंब की आवश्यकता होती है (एक बार के पार के लिए हेरिस्टिक्स के सापेक्ष पीएसओ/एसीओ धीमे-धीमे अभिसरण करते हैं) ।
जैव-प्रेरित अभी भी क्यों जीतता है
ग्रेडिएंट आधारित तरीकों को अंतर योग्य संकेतों की आवश्यकता होती है। एलएलएम आउटपुट और रूटिंग निर्णय तुच्छ रूप से अंतर योग्य नहीं हैं। छद्म-ग्रेडिएंट विधियां (प्रबलित-शिक्षित राउटर, डीपीओ-शैली के शीघ्र ट्यूनेर) काम करते हैं लेकिन महंगे प्रशिक्षण की आवश्यकता होती है।
PSO और ACO को केवल मूल्यांकनकर्ता फ़ंक्शन की आवश्यकता होती है। यदि आप उम्मीदवार आउटपुट या रूटिंग निर्णय को स्कोर कर सकते हैं, तो आप अंतरिक्ष पर अनुकूलित कर सकते हैं। यह लागू होने की पट्टी को बहुत कम बनाता है।
व्यावहारिक सीमाएँ
- Population budget.एन कण × टी पुनरावृत्ति × प्रति-एवल लागत।$0.02 / call, a 20-particle PSO running 50 iterations costs ~$20. तदनुसार योजना बनाएं।
- Exploration vs exploitation.फेरोमोन गिरावट दर और पीएसओ निष्क्रियता का व्यापार; बहुत तेजी से गिरावट → समाधान भूलना; बहुत धीमा → प्रारंभिक स्थानीय अनुकूलन पर अटक गया।
- Catastrophic drift.दोनों एल्गोरिदम एक दूसरे के साथ मिल सकते हैं और फिर अलग हो सकते हैं यदि फिटनेस परिदृश्य बदल जाता है (नया डेटा वितरण) । सर्वोत्तम फिटनेस स्थिरता की निगरानी करें।
इसे बनाओ
code/main.pyकार्य करता हैः
LMPSOपीएसओ संख्यात्मक शीघ्र मापदंडों (तापमान, शीर्ष_के वजन) पर। प्रत्येक कण की "एलएलएम पीढ़ी" को एक स्क्रिप्ट फिटनेस फ़ंक्शन के रूप में सिमुलेट किया जाता है। एल्गोरिथ्म 30 पुनरावृत्ति के लिए चलाता है और g_best अभिसरण दिखाता है।AMRO_Sएसीओ शैली का रूटिंग। 3 एजेंट, 4 टास्क प्रकार, फेरोमोन मैट्रिक्स, 100 रूटेड कार्य। निशान गठन दिखाने के लिए समय के साथ वितरण प्रिंट (टास्क_टाइप → एजेंट विकल्प) ।- तुलनाः एक ही कार्य धारा पर यादृच्छिक रूटिंग बनाम एसीओ रूटिंग। गुणवत्ता और विलंबता को मापता है।
दौड़ें:
python3 code/main.pyअपेक्षित उत्पादनः
- LMPSO: g_best फिटनेस 30 पुनरावृत्तियों के दौरान यादृच्छिक से लगभग अनुकूलन में सुधार करता है।
- एएमआरओ-एसः फेरोमन तालिका कार्य प्रकार के अनुसार सही एजेंट पर स्थिर होती है; एसीओ रूटिंग गुणवत्ता पर यादृच्छिक रूप से ~ 30-40% से अधिक है और विलंबता को भी कम करती है (कम पुनः प्रयास) ।
इसका प्रयोग करें
outputs/skill-swarm-optimizer.mdएलएलएम / एजेंट अनुकूलन समस्याओं के लिए पीएसओ, एसीओ, आनुवंशिक एल्गोरिदम और ग्रेडिएंट आधारित अनुकूलक के बीच चयन करने में मदद करता है।
इसे भेजें
- Start small.10-20 कण, 20-50 पुनरावृत्ति. केवल यदि अभिसरण वक्र स्पष्ट लाभ दिखाता है.
- Log pheromones or g_best per iteration.बिना निशान के झुंड अनुकूलक को डिबग करना दर्दनाक है।
- Quality-gate updates.विशेष रूप से एसीओ रूटिंग के लिएः तेजी से और गलत एजेंटों को फेरोमोन जमा नहीं करना चाहिए।
- Reset decay on distribution shift.जब आपके मूल्यांकन वितरण में बदलाव होता है, तो वृद्ध फेरोमोन पुराने हो जाते हैं; अस्थायी रूप से गिरावट दर को रीसेट या दोगुना कर दिया जाता है।
- Cap the per-iteration cost.एक लागत प्रति पुनरावृत्ति मीट्रिक जारी करें. $500 / पुनरावृत्ति की लागत और 0.5% लाभ है जो PSO शिप करने योग्य नहीं है.
व्यायाम
- दौड़ें
code/main.py. LMPSO अभिसरण का अवलोकन करें. जनसंख्या का आकार 5, 10, 20, 50 भिन्न होता है. - "विपत् बहाव" प्रयोग लागू करेंः पुनरावृत्ति 30 के बाद फिटनेस फ़ंक्शन बदलें। PSO कितनी जल्दी अनुकूलित होता है? क्या रीसेट
p_bestमदद? - AMRO-S में एक गुणवत्ता गेट जोड़ेंः केवल मूल्यांकन स्कोर > 0.7 के साथ रन पर फेरोमोन जमा करें। यह अभिसरण बनाम अन-गेटेड संस्करण में कैसे बदलता है?
- LMPSO (arXiv:2504.09247) पढ़ें। कागज की "गति को एक संकेत के रूप में" अपनी संख्यात्मक गति पर वापस नक्शा करें। सिमुलेशन में क्या खो गया है और क्या संरक्षित है?
- AMRO-S (arXiv:2603.12933) पढ़ें. असिनक्रोनस फेरोमन अपडेट के साथ डिकोप्ल्ड "इन्फेरेंस फास्ट-पथ" को लागू करें। यह निरंतर लोड के तहत सिस्टम लटेंसी को कैसे बदलता है?
प्रमुख शर्तें
| Term | What people say | What it actually means |
|---|---|---|
| PSO | "Particle Swarm Optimization" | Kennedy-Eberhart 1995. Population-based gradient-free optimizer. |
| ACO | "Ant Colony Optimization" | Dorigo 1992. Path/route optimization via pheromone trails. |
| LMPSO | "PSO with LLM generation" | arXiv:2504.09247. Velocity is a prompt; LLM produces candidates. |
| Model Swarms | "PSO on expert weights" | arXiv:2410.11163. Gradient-free update on model parameter subspace. |
| AMRO-S | "ACO for agent routing" | arXiv:2603.12933. Pheromone matrix over task-type × agent. |
| p_best / g_best | "Personal / global best" | Per-particle and swarm-wide best solutions found so far. |
| Pheromone | "Routing memory" | Strength on an edge; decays over time; deposits on quality. |
| Quality-gated update | "Only learn from good runs" | Pheromone deposit conditioned on quality check. |
| Catastrophic drift | "Distribution shift" | Fitness landscape changes; old p_best and pheromones become stale. |
आगे पढ़ना
- Kennedy & Eberhart — Particle Swarm Optimization 1995 के पीएसओ पेपर
- Dorigo — Ant Colony Optimization 1992 एसीओ फाउंडेशन
- LMPSO — Language Model Particle Swarm Optimization संरचित LLM आउटपुट के लिए PSO
- Model Swarms — gradient-free LLM expert optimization मॉडल-वजन उप-स्थान पर पीएसओ
- AMRO-S — ant-colony multi-agent routing गुणवत्ता गेट के साथ फेरोमोन-चालित रूटिंग
This free lesson is part of the AI Engineering from Scratch curriculum. Read the full explanation, run the lesson code, and verify the result in the interactive reader or from the repository source.
Browse the complete course catalog or open this lesson on GitHub.