એલરનું અલ્ગોરિધમ મેઝ જનરેટર
પ્રકાશિત: 16 ફેબ્રુઆરી, 2025 એ 08:37:24 PM UTC વાગ્યે
સંપૂર્ણ ભુલભુલામણી બનાવવા માટે એલરના અલ્ગોરિધમનો ઉપયોગ કરીને મેઝ જનરેટર. આ એલ્ગોરિધમ રસપ્રદ છે કારણ કે તેમાં વર્તમાન હરોળ (સમગ્ર ભુલભુલામણીને નહીં) મેમરીમાં રાખવાની જરૂર પડે છે, તેથી તેનો ઉપયોગ ખૂબ જ મર્યાદિત સિસ્ટમો પર પણ ખૂબ, ખૂબ મોટી મેઝ બનાવવા માટે થઈ શકે છે.Eller's Algorithm Maze Generator
એલરનું અલ્ગોરિધમ એ ભુલભુલામણી જનરેશન એલ્ગોરિધમ છે જે હરોળ-દ્વારા-હરોળના અભિગમનો ઉપયોગ કરીને અસરકારક રીતે સંપૂર્ણ મેઝ (કોઈ પણ બે બિંદુઓ વચ્ચે કોઈ લૂપ્સ અને એક જ પાથ વિનાના મેઝ) ઉત્પન્ન કરે છે. તે ક્રુસ્કલના અલ્ગોરિધમની જેમ જ મેઝ ઉત્પન્ન કરે છે, પરંતુ તે એક સમયે માત્ર એક જ હરોળ ઉત્પન્ન કરીને આમ કરે છે, આખી ભુલભુલામણીને મેમરીમાં સંગ્રહિત કરવાની જરૂર વિના. તે ખૂબ જ મર્યાદિત સિસ્ટમો પર અને પ્રક્રિયાગત સામગ્રી પેદા કરવા માટે ખૂબ મોટા મેઝ ઉત્પન્ન કરવા માટે ઉપયોગી બનાવે છે.
સંપૂર્ણ ભુલભુલામણી એ એક ભુલભુલામણી છે જેમાં ભુલભુલામણીના કોઈપણ બિંદુથી બીજા કોઈપણ બિંદુ સુધીનો એક જ રસ્તો હોય છે. તેનો અર્થ એ કે તમે વર્તુળોમાં ફરતા રહી શકતા નથી, પરંતુ તમને ઘણીવાર મૃત છેડાઓનો સામનો કરવો પડશે, જેના કારણે તમને પાછળ ફરીને પાછા ફરવું પડશે.
અહીં જનરેટ થયેલા મેઝ મેપ્સમાં કોઈ પણ શરૂઆત અને સમાપ્તિ સ્થિતિ વિના ડિફોલ્ટ સંસ્કરણ શામેલ છે, તેથી તમે તે જાતે નક્કી કરી શકો છો: મેઝના કોઈપણ બિંદુથી બીજા કોઈપણ બિંદુ સુધી ઉકેલ હશે. જો તમને પ્રેરણા જોઈતી હોય, તો તમે સૂચવેલ શરૂઆત અને સમાપ્તિ સ્થિતિને સક્ષમ કરી શકો છો - અને બંને વચ્ચેનો ઉકેલ પણ જોઈ શકો છો.
એલરના અલ્ગોરિધમ વિશે
એલર્સ એલ્ગોરિધમ ડેવિડ ઇલર દ્વારા રજૂ કરવામાં આવ્યું હતું.
એલ્ગોરિધમ ભુલભુલામણીના સર્જન માટે તેના કાર્યક્ષમ હરોળ-દર-હરોળના અભિગમ માટે નોંધપાત્ર છે, જે તેને વાસ્તવિક સમયમાં ઉત્પન્ન થતા અનંત મેઝ અથવા મેઝ માટે આદર્શ બનાવે છે. પ્રક્રિયાગત વિષયવસ્તુના સર્જન અને ભુલભુલામણીના સાહિત્યમાં તેને સામાન્ય રીતે ટાંકવામાં આવે છે, પરંતુ હું તેના મૂળ પ્રકાશનની વિગતો આપતા પ્રાથમિક સ્રોતો શોધી શક્યો નથી.
ભુલભુલામણી બનાવટ માટે એલરનું અલ્ગોરિધમ કેવી રીતે કાર્ય કરે છે
એલરનું અલ્ગોરિધમ એક સમયે એક હરોળપર પ્રક્રિયા કરે છે, જોડાયેલા કોષોના સમૂહોને જાળવી રાખે છે અને તેમાં ફેરફાર કરે છે. તે લૂપ્સને ટાળતી વખતે કનેક્ટિવિટી સુનિશ્ચિત કરે છે, અને તે અસરકારક રીતે ભુલભુલામણીને નીચેની તરફ લંબાવે છે.
સૈદ્ધાંતિક રીતે તેનો ઉપયોગ અનંત ભુલભુલામણી પેદા કરવા માટે થઈ શકે છે, જો કે ઉત્પન્ન થયેલ ભુલભુલામણી ખરેખર ઉકેલી શકાય તેવી છે તેની ખાતરી કરવા માટે, ભુલભુલામણીને સમાપ્ત કરવા માટે કોઈક તબક્કે "અંતિમ હરોળ" તર્ક પર સ્વિચ કરવું જરૂરી છે.
સ્ટેપ ૧ઃ પ્રથમ હરોળનો આરંભ કરો
- હરોળમાં દરેક સેલને એક અનન્ય સેટ આઈડી સોંપો.
પગલું 2: કેટલાક નજીકના સેલને આડી રીતે જોડો
- અવ્યવસ્થિત રીતે નજીકના કોષોને સમાન સેટ આઈડી પર સેટ કરીને મર્જ કરો. આ સુનિશ્ચિત કરે છે કે ત્યાં આડા માર્ગો છે.
સ્ટેપ ૩ઃ આગલી હરોળમાં ઊભા જોડાણો બનાવો
- હરોળમાં દેખાતા દરેક સેટ માટે, ઓછામાં ઓછા એક સેલે નીચેની તરફ જોડાવું જ જોઇએ (કનેક્ટિવિટી સુનિશ્ચિત કરવા માટે).
- પછીની હરોળ સાથે જોડાવા માટે દરેક સમૂહમાંથી એક અથવા વધુ સેલને અવ્યવસ્થિત રીતે પસંદ કરો.
પગલું ૪ઃ આગલી હરોળમાં જાવ.
- નીચે સંબંધિત સેલને સમાન સેટ આઈડી સોંપીને ઊભા જોડાણોને આગળ ધપાવો.
- કોઈપણ સહી ન કરેલા સેલને નવા સેટ આઈડી સોંપો.
પગલું ૫ઃ છેલ્લી હરોળ સુધી પહાંચી ન જાય ત્યાં સુધી પગલાં ૨-૪નું પુનરાવર્તન કરો.
- હરોળ દ્વારા હરોળ પર પ્રક્રિયા કરવાનું ચાલુ રાખો.
પગલું ૬ઃ આખરી હરોળની પ્રક્રિયા કરો.
- ખાતરી કરો કે છેલ્લી હરોળમાંના બધા સેલ કોઈપણ બાકી રહેલા અલગ અલગ સેટને મર્જ કરીને સમાન સમૂહ સાથે જોડાયેલા છે.