Geohash
جیوہاش ایک پبلک ڈومین جیو کوڈ سسٹم ہے جسے 2008 میں گستاوو نیمیر نے ایجاد کیا تھا جو جغرافیائی محل وقوع کو حروف اور ہندسوں کی ایک مختصر تار میں انکوڈ کرتا ہے۔ اسی طرح کے خیالات جی ایم نے پیش کیے تھے۔ 1966 میں مورٹن۔ یہ ایک درجہ بندی کا مقامی ڈیٹا ڈھانچہ ہے جو خلا کو گرڈ کی شکل کی بالٹیوں میں تقسیم کرتا ہے، جو کہ زیڈ آرڈر وکر کے نام سے جانا جاتا ہے، اور عام طور پر خلا کو بھرنے والے منحنی خطوط کی بہت سی ایپلی کیشنز میں سے ایک ہے۔ جیوہاش صوابدیدی درستگی اور کوڈ کے آخر سے حروف کو آہستہ آہستہ ہٹانے کے امکان جیسے خصوصیات پیش کرتے ہیں تاکہ اس کے سائز کو کم کیا جا سکے (اور آہستہ آہستہ درستگی کھو جائے)۔ جیوہاشنگ اس بات کی ضمانت دیتا ہے کہ دو جیوہاشوں کے درمیان مشترکہ سابقہ جتنا لمبا ہوگا، وہ مقامی طور پر اتنے ہی قریب ہوں گے۔ اس کے الٹا ہونے کی ضمانت نہیں ہے، کیونکہ دو پوائنٹس بہت قریب ہو سکتے ہیں لیکن ان کا سابقہ مختصر یا مشترکہ نہیں ہوتا ہے۔ جیوہاش الگورتھم کا بنیادی حصہ اور اسی طرح کے حل کے لیے پہلا اقدام جی ایم کی ایک رپورٹ میں درج کیا گیا تھا۔ 1966 میں مورٹن، "اے کمپیوٹر اورینٹڈ جیوڈیٹک ڈیٹا بیس اینڈ اے نیو ٹیکنیک ان فائل سیکوینسنگ"۔ مورٹن کا کام زیڈ آرڈر وکر کے موثر نفاذ کے لیے استعمال کیا گیا تھا، جیسا کہ اس جدید (2014) جیوہاش-انٹیجر ورژن میں (براہ راست 64 بٹ انٹیجرز کو آپس میں جوڑنے پر مبنی)، لیکن اس کی جیو کوڈ تجویز انسان کے پڑھنے کے قابل نہیں تھی اور مقبول نہیں تھی۔ بظاہر، 2000 کی دہائی کے آخر میں، جی نیمیر اب بھی مورٹن کے کام کے بارے میں نہیں جانتے تھے، اور بیس 32 نمائندگی کے استعمال کو شامل کرتے ہوئے اسے دوبارہ ایجاد کیا۔ فروری 2008 میں، اس نظام کے اعلان کے ساتھ، اس نے ویب سائٹ http://geohash.org کا آغاز کیا، جو صارفین کو جغرافیائی نقاط کو مختصر یو آر ایل میں تبدیل کرنے کی اجازت دیتا ہے جو زمین پر پوزیشنوں کی منفرد شناخت کرتے ہیں، تاکہ ای میلز، فورمز اور ویب سائٹس میں ان کا حوالہ دینا زیادہ آسان ہو۔ بہت سے تغیرات تیار کیے گئے ہیں، جن میں 2009 میں اوپن اسٹریٹ میپ کا مختصر لنک (بیس 32 کے بجائے بیس 64 کا استعمال کرتے ہوئے)، 2014 میں 64 بٹ جیوہاش، 2016 میں غیر ملکی ہلبرٹ-جیوہاش، اور دیگر شامل ہیں۔ عام اور اہم استعمال جیوہاش حاصل کرنے کے لیے، صارف ایک ان پٹ باکس میں جیو کوڈڈ، یا عرض البلد اور طول البلد کے نقاط کے لیے ایک پتہ فراہم کرتا ہے (عرض البلد اور طول البلد کے جوڑوں کے لیے عام طور پر استعمال ہونے والی شکلیں قبول کی جاتی ہیں)، اور درخواست انجام دیتا ہے۔ دیئے گئے جیوہاش سے مطابقت رکھنے والے عرض البلد اور طول البلد کو دکھانے کے علاوہ، جو صارفین geohash.org پر جیوہاش پر جاتے ہیں انہیں ایک سرایت شدہ نقشہ بھی پیش کیا جاتا ہے، اور وہ ایک جی پی ایکس فائل ڈاؤن لوڈ کر سکتے ہیں، یا وے پوائنٹ کو براہ راست کچھ جی پی ایس ریسیورز میں منتقل کر سکتے ہیں۔ بیرونی سائٹس کے لنکس بھی فراہم کیے جاتے ہیں جو مخصوص مقام کے ارد گرد مزید تفصیلات فراہم کر سکتے ہیں۔ مثال کے طور پر، مربوط جوڑا 57.64911، 10.40744 (جزیرہ نما جٹ لینڈ، ڈنمارک کے سرے کے قریب) u4pruydqqvj کا قدرے چھوٹا ہیش تیار کرتا ہے۔ جیوہاش کے اہم استعمال یہ ہیں: ایک منفرد شناخت کار کے طور پر۔ پوائنٹ ڈیٹا کی نمائندگی کرنے کے لیے، مثال کے طور پر ڈیٹا بیس میں۔ جیو ٹیگنگ کے لیے جیوہاش استعمال کرنے کی بھی تجویز کی گئی ہے۔ جب ڈیٹا بیس میں استعمال کیا جاتا ہے تو جیوشیڈ ڈیٹا کی ساخت کے دو فوائد ہوتے ہیں۔ سب سے پہلے، جیوہاش کے ذریعہ انڈیکس کردہ ڈیٹا میں دیئے گئے آئتاکار رقبے کے تمام پوائنٹس ملحقہ سلائسز میں ہوں گے (سلائسز کی تعداد مطلوبہ درستگی اور جیوہاش "فالٹ لائنز" کی موجودگی پر منحصر ہے)۔ یہ خاص طور پر ڈیٹا بیس سسٹمز میں مفید ہے جہاں ایک انڈیکس پر سوالات ایک سے زیادہ انڈیکس سوالات کے مقابلے میں بہت آسان یا تیز ہوتے ہیں۔ دوسرا، اس انڈیکس ڈھانچے کو فوری اور گندی قربت کی تلاش کے لیے استعمال کیا جا سکتا ہے: قریب ترین پوائنٹس اکثر قریب ترین جیوہاش میں سے ہوتے ہیں۔ تکنیکی تفصیل کمپیوٹیشنل اور ریاضیاتی نظریات کے لیے ایک رسمی وضاحت۔ متن کی نمائندگی درست عرض البلد اور طول البلد کے ترجمے کے لیے جیوہاش بیس 4 کا ایک مقامی اشاریہ ہے، کیونکہ یہ مسلسل عرض البلد اور طول البلد خلائی نقاط کو ایک درجہ بندی کے مجرد گرڈ میں تبدیل کرتا ہے، جس میں خلا کی بار بار چار تقسیم کا استعمال ہوتا ہے۔ ایک کمپیکٹ کوڈ بننے کے لیے یہ بیس 32 کا استعمال کرتا ہے اور درج ذیل حروف تہجی کے ذریعے اپنی اقدار کی نمائندگی کرتا ہے، یعنی "معیاری متن کی نمائندگی"۔ "جیوہاش حروف تہجی" (32 جی ایچ ایس) تمام ہندسوں 0-9 اور تمام چھوٹے حروف کا استعمال کرتا ہے سوائے "اے"، "آئی"، "ایل" اور "او" کے۔ مثال کے طور پر، اوپر کی میز اور مستقل کا استعمال کرتے ہوئے، جیوہاش ایز ایس 42 کو عام پوزیشنل نوٹیشن کے ذریعے اعشاریہ کی نمائندگی میں تبدیل کیا جا سکتا ہے: [ایز ایس 42] 32 جی ایچ ایس = = = = = = جیومیٹریکل نمائندگی جیوہاش کی جیومیٹری میں مخلوط مقامی نمائندگی ہے: جیوہاش 2، 4، 6 کے ساتھ۔ ای ہندسوں (یہاں تک کہ ہندسوں) کی نمائندگی "باقاعدہ گرڈ" میں زیڈ آرڈر وکر کے ذریعے کی جاتی ہے جہاں ڈی کوڈڈ جوڑے (عرض البلد، طول البلد) میں یکساں غیر یقینی صورتحال ہوتی ہے، جو جیو یو آر آئی کے طور پر درست ہے۔ 1، 3، 5،. d ہندسوں (عجیب ہندسوں) والے جیوہاش کی نمائندگی "آئی-آرڈر وکر" کے ذریعے کی جاتی ہے۔ ڈی کوڈڈ جوڑے کے عرض البلد اور طول البلد میں مختلف غیر یقینی صورتحال ہوتی ہے (طول البلد کو کاٹ دیا جاتا ہے)۔ پڑوسی خلیوں کو ضم کرکے اور فنکشن کے ذریعہ نتیجے میں آئتاکار گرڈ کو انڈیکس کرکے زیڈ آرڈر وکر سے "آئی آرڈر وکر" بنانا ممکن ہے۔ مثال سے پتہ چلتا ہے کہ 64 مربع خلیوں کے گرڈ سے 32 آئتاکار خلیوں کا گرڈ کیسے حاصل کیا جائے۔ انسانوں کے لیے جیوہاش کی سب سے اہم خاصیت یہ ہے کہ یہ کوڈ پریفیکس میں مقامی درجہ بندی کو محفوظ رکھتا ہے۔ مثال کے طور پر، اوپر 32 مستطیلوں کی "1 جیوہاش ہندسوں کے گرڈ" کی مثال میں، کوڈ ای کا مقامی علاقہ (4,3 پوزیشن پر سرمئی نیلے دائرے کا مستطیل) 1024 مستطیلوں کے "2 ہندسوں کے گرڈ" میں سابقہ ای کے ساتھ محفوظ کیا گیا ہے (گرڈ پر ای ایم اور سرمئی سبز سے نیلے دائرے دکھانے والا پیمانہ)۔ الگورتھم اور مثال ایک مثال کے طور پر ہیش ایزی ایس 42 کا استعمال کرتے ہوئے، یہاں یہ ہے کہ اسے اعشاریہ عرض البلد اور طول البلد میں کیسے ڈی کوڈ کیا جاتا ہے۔ بائنری نمائندگی حاصل کرنے کے لیے، جیسا کہ اوپر دکھایا گیا ہے، پہلا قدم اسے متن کے "بیس 32 جی ایچ ایس" سے ڈی کوڈ کرنا ہے: اس آپریشن کے نتیجے میں بٹس 01101 11111 11000 00100 00010 ہوتے ہیں۔ پہلی پوزیشن میں ہندسوں 0 کے ساتھ بائیں طرف سے گننا شروع کرتے ہوئے، عجیب پوزیشنوں میں ہندسوں سے طول بلد کوڈ (0111110000000) بنتا ہے، جبکہ یکساں پوزیشنوں میں ہندسوں سے عرض بلد کوڈ (101111001001) بنتا ہے۔ اس کے بعد ہر بائنری کوڈ کو تقسیم کے سلسلے میں استعمال کیا جاتا ہے، ایک وقت میں ایک بٹ پر غور کرتے ہوئے، پھر بائیں سے دائیں طرف۔ عرض البلد کی قدر کے لیے، وقفہ-90 سے + 90 کو 2 سے تقسیم کیا جاتا ہے، جس سے دو وقفے پیدا ہوتے ہیں:-90 سے 0، اور 0 سے + 90۔ چونکہ پہلا بٹ 1 ہے، اس لیے اعلی وقفہ منتخب کیا جاتا ہے، اور موجودہ وقفہ بن جاتا ہے۔ کوڈ کے تمام بٹس کے لیے طریقہ کار دہرایا جاتا ہے۔ آخر میں، عرض البلد کی قدر نتیجے میں آنے والے وقفے کا مرکز ہے۔ طول بلد کو مساوی طریقے سے پروسیس کیا جاتا ہے، اس بات کو ذہن میں رکھتے ہوئے کہ ابتدائی وقفہ-180 سے + 180 ہے۔ مثال کے طور پر، عرض البلد کوڈ 101111001001 میں، پہلا بٹ 1 ہے، لہذا ہم جانتے ہیں کہ ہمارا عرض البلد 0 اور 90 کے درمیان ہے۔ مزید بٹس کے بغیر، ہم اندازہ لگائیں گے کہ عرض البلد 45 تھا، جو ہمیں ± 45 کی غلطی دیتا ہے۔ چونکہ مزید بٹس دستیاب ہیں، ہم اگلے بٹ کے ساتھ جاری رکھ سکتے ہیں، اور اس کے بعد کا ہر بٹ اس غلطی کو آدھا کر دیتا ہے۔ یہ جدول ہر بٹ کے اثر کو ظاہر کرتا ہے۔ ہر مرحلے پر، رینج کے متعلقہ نصف حصے کو سبز رنگ میں نمایاں کیا جاتا ہے ؛ کم بٹ نچلی رینج کا انتخاب کرتا ہے، زیادہ بٹ اوپری رینج کا انتخاب کرتا ہے۔ کالم "اوسط قدر" عرض البلد کو ظاہر کرتا ہے، صرف رینج کی اوسط قدر۔ اس کے بعد کا ہر بٹ اس قدر کو زیادہ درست بناتا ہے۔ (مندرجہ بالا ٹیبل میں نمبروں کو وضاحت کے لیے 3 اعشاریہ مقامات پر گول کیا گیا ہے) حتمی راؤنڈنگ کو احتیاط سے اس طرح کیا جانا چاہیے کہ 42.605 سے 42.61 یا 42.6 تک راؤنڈنگ درست ہو، 43 تک راؤنڈنگ درست نہ ہو۔ کلومیٹر حدود میں ہندسوں اور درستگی جب قربت کے معاملات کا فیصلہ کرنے کے لیے استعمال کیا جاتا ہے تو جیوہاش کو ایک مشترکہ سابقہ کی بنیاد پر ایک دوسرے سے قربت میں پوائنٹس تلاش کرنے کے لیے استعمال کیا جا سکتا ہے۔ تاہم، ایج کیس کے مقامات ایک دوسرے کے قریب لیکن 180 ڈگری مریڈین کے مخالف اطراف کے نتیجے میں جیوہاش کوڈ ہوں گے جن کا کوئی مشترکہ سابقہ (قریب جسمانی مقامات کے لیے مختلف طول بلد) نہیں ہوگا۔ شمالی اور جنوبی قطبوں کے قریب مقامات پر بہت مختلف جیوہاشز ہوں گے (قریب جسمانی مقامات کے لیے مختلف طول بلد)۔ اکویٹر (یا گرین وچ میریڈیئن) کے دونوں طرف دو قریبی مقامات کا لمبا مشترکہ سابقہ نہیں ہوگا کیونکہ ان کا تعلق دنیا کے مختلف 'حصوں' سے ہے۔ سیدھے الفاظ میں، ایک مقام کا بائنری عرض البلد (یا طول البلد) 011111 ہوگا۔ اور دوسرا 100000۔، لہذا ان کا مشترکہ سابقہ نہیں ہوگا اور زیادہ تر بٹس پلٹ جائیں گے۔ اسے پوائنٹس آرڈر کرنے کے لیے زیڈ آرڈر وکر (جسے اس معاملے میں زیادہ مناسب طور پر این آرڈر وزٹ کہا جا سکتا ہے) پر انحصار کرنے کے نتیجے کے طور پر بھی دیکھا جا سکتا ہے، کیونکہ قریب کے دو پوائنٹس پر بہت مختلف اوقات میں جایا جا سکتا ہے۔ تاہم، ایک طویل مشترکہ سابقہ کے ساتھ دو پوائنٹس قریب ہوں گے۔ قربت کی تلاش کرنے کے لیے، کوئی باؤنڈنگ باکس کے جنوب مغربی کونے (کم عرض البلد اور طول البلد کے ساتھ کم جیوہاش) اور شمال مشرقی کونے (اعلی عرض البلد اور طول البلد کے ساتھ اعلی جیوہاش) کا حساب لگا سکتا ہے اور ان دونوں کے درمیان جیوہاش کی تلاش کر سکتا ہے۔ یہ تلاش دونوں کونوں کے درمیان زیڈ آرڈر وکر میں تمام پوائنٹس کو دوبارہ حاصل کرے گی، جو کہ بہت زیادہ پوائنٹس ہو سکتے ہیں۔ یہ طریقہ 180 مریدین اور قطبوں پر بھی ٹوٹ جاتا ہے۔ سولر جیوہاش کے قریب قریب ترین مربعوں کے سابقہ کا حساب لگا کر سابقہ فکسوں کی فلٹر لسٹ کا استعمال کرتا ہے۔ غیر لکیری چونکہ جیوہاش (اس عمل میں) طول بلد اور عرض البلد کے نقاط پر مبنی ہوتا ہے، اس لیے دو جیوہاش کے درمیان فاصلہ دو نکات کے درمیان عرض البلد/طول البلد کے نقاط میں فاصلے کی عکاسی کرتا ہے، جو حقیقی فاصلے میں ترجمہ نہیں ہوتا، ہاورسین فارمولا دیکھیں۔ عرض البلد طول البلد کے نظام کے لیے غیر لکیری کی مثال: خط استوا (0 ڈگری) پر طول البلد کی ڈگری کی لمبائی 111.320 کلومیٹر ہے، جبکہ عرض البلد کی پیمائش کی ڈگری 110.574 کلومیٹر، 0.67% کی غلطی ہے۔ 30 ڈگری (درمیانی عرض البلد) پر غلطی 110.852/96.486 = 14.89% 60 ڈگری (ہائی آرکٹک) پر غلطی 111.412/55.800 = 99.67% ہے، جو قطبوں پر انفینیٹی تک پہنچتی ہے۔ نوٹ کریں کہ یہ حدود جیو ہاشنگ کی وجہ سے نہیں ہیں، اور عرض البلد-طول البلد کے نقاط کی وجہ سے نہیں ہیں، بلکہ کسی دائرے پر نقاط کی نقشہ سازی میں دشواری کی وجہ سے ہیں (غیر لکیری اور اقدار کو لپیٹنے کے ساتھ، ماڈیولو ریاضی کی طرح) دو جہتی نقاط اور دو جہتی خلا کو یکساں طور پر تلاش کرنے میں دشواری۔ پہلا جغرافیائی کوآرڈینیٹ سسٹم اور نقشہ پروجیکشن سے متعلق ہے، اور دوسرا ہلبرٹ وکر اور زیڈ آرڈر وکر سے۔ ایک بار جب ایک مربوط نظام پایا جاتا ہے جو فاصلے میں لکیری طور پر پوائنٹس کی نمائندگی کرتا ہے اور کناروں پر لپیٹ جاتا ہے، اور یکساں طور پر تلاش کیا جا سکتا ہے، تو ان نقاط پر جیو ہاشنگ کا اطلاق اوپر کی حدود سے متاثر نہیں ہوگا۔ اگرچہ کارٹیشین کوآرڈینیٹ سسٹم والے علاقے میں جیو ہاشنگ کا اطلاق ممکن ہے، اس کے بعد یہ صرف اس علاقے پر لاگو ہوگا جہاں کوآرڈینیٹ سسٹم لاگو ہوتا ہے۔ ان مسائل کے باوجود، ممکنہ حل موجود ہیں، اور قربت کی تلاش کو نافذ کرنے کے لیے ایلسٹک سرچ، مونگو ڈی بی، ایچ بیس، ریڈس، اور ایکیومولو میں الگورتھم کو کامیابی کے ساتھ استعمال کیا گیا ہے۔ اسی طرح کے اشاریہ سازی کے نظام جیوہاش کو ڈیٹا بیس میں سٹرنگ کے طور پر ذخیرہ کرنے کا ایک متبادل لوکیشنل کوڈز ہیں، جنہیں اسپاٹیل کیز بھی کہا جاتا ہے اور کواڈ ٹائلز سے ملتا جلتا ہے۔ کچھ جغرافیائی انفارمیشن سسٹمز اور بگ ڈیٹا اسپیشیئل ڈیٹا بیس میں، ہلبرٹ وکر پر مبنی انڈیکسشن کو زیڈ آرڈر وکر کے متبادل کے طور پر استعمال کیا جا سکتا ہے، جیسے ایس 2 جیومیٹری لائبریری میں۔ 2019 میں کیو اے لوکیٹ کی طرف سے ایک فرنٹ اینڈ ڈیزائن کیا گیا تھا جسے وہ جیوہاش فریز کہتے ہیں تاکہ بولی جانے والی انگریزی زبان کے ذریعے آسان مواصلات کے لیے جیوہاش کو کوڈ کرنے کے لیے جملے استعمال کیے جا سکیں۔ جیوہاش فریز کو اوپن سورس بنانے کے منصوبے تھے۔ سی-اسکوائرز (2002) جیوکی (2018، ملکیتی) گھانا پوسٹ جی پی ایس (2017) میڈن ہیڈ لوکیٹر سسٹم (1980) مکانی کوڈ (2011) میپ کوڈ (2008) ملٹری گرڈ ریفرنس سسٹم نیچرل ایریا کوڈ اوپن لوکیشن کوڈ (2014، عرف۔ "پلس کوڈز"، گوگل میپس) کیو آر اے لوکیٹر (1959) یونیورسل ٹرانسورس مرکیٹر کوآرڈینیٹ سسٹم واٹ 3 ورڈز (2013، ملکیتی) واٹ فری ورڈز انٹرنیشنل پوسٹ کوڈ سسٹم استعمال کرتے ہوئے کیوبک میٹرز (CubicPostcode.com) GEOREF (اسی طرح کا 2 ہندسوں کا درجہ بندی کوڈ) Xadress 3Geonames (2018، اوپن سورس) لائسنسنگ جیوہاش الگورتھم کو اس کے موجد نے 26 فروری 2008 کو ایک عوامی اعلان میں پبلک ڈومین میں ڈال دیا تھا۔ اگرچہ تقابلی الگورتھم کو کامیابی کے ساتھ پیٹنٹ کرایا گیا ہے اور اس پر کاپی رائٹ کا دعوی کیا گیا ہے، جیو ہاش ایک بالکل مختلف الگورتھم اور نقطہ نظر پر مبنی ہے۔ جیوڈیسیک جیوکوڈنگ سسٹمز کی فہرست جیوہاش-36 (جیوہاش متغیر نہیں ہے) گرڈ (مقامی اشاریہ) میڈن ہیڈ لوکیٹر سسٹم ملٹری گرڈ ریفرنس سسٹم مورٹن نمبر (نمبر تھیوری) نیچرل ایریا کوڈ نمبرنگ اسکیم اوپن لوکیشن کوڈ (پلس کوڈ) اسپیس فلنگ منحنی خطوط کیا 3 الفاظ زیڈ آرڈر وکر حوالہ جات بیرونی روابط جیوہاش کے تخمینے جے ٹی ایس جیومیٹریز کے لیے جیوہاش پلے گراؤنڈ جیوگرافک کوآرڈینیٹ سسٹم جیوکوڈز 2008 تعارف