الخميس، 30 مارس 2017

كيفية معرفة ما إذا كان حساب الفيس بوك تم إختراقه و طرق تأمين الحساب؟

نتشرت مؤخراً مشكلة إختراق حسابات الفيس بوك دون معرفة لماذا و من أو حتى كيف تم تهكيره، فهناك عدة طرق و ثغرات يستخدمها قراصنة الإنترنت لإختراق حسابات الفيس بوك كتسجيل الدخول التلقائي (Auto-log in) الذي يمكن هؤلاء القراصنة (Hackers) من الوصول إلى بيانات و حسابات المواقع المختلفة و منها الفيس بوك و هناك أيضاً برامج و روابط الإختراق المتنوعة و التي إنتشرت على هيئة روابط دعائية و إعلانية، و هناك من يقوم بإختراق الفيس بوك للحصول هويتك و على بياناتك الشخصية و متابعاتك و استخدامها استخداماً سيئاً.

كيف تعرف إذا كان قد تم إختراق حسابك؟

إذا كنت قلق و تشك أنه قد تم سرقة حساب الفيس بوك الخاص بك إليك طريقة سهلة للتحقق من هذا الأمر:
  • إضغط على السهم أعلى يمين صفحة حسابك في الزاوية إذا كانت لغة صفحتك هي الإنجليزية أما إذا كانت اللغة هي العربية ستجدها أعلى يسار الصفحة، ستظهر لك قائمة إضغط على الإعدادات (Settings) ستفتح لك صفحة الإعدادات كما بالشكل السابق، يمكنك الذهاب إليها مباشرة من(هنا).
  • إضغط على إعدادات الأمن (Security) على يسار القائمة كما هو موضح بالصورة ثم إختار (Where You’re Logged In) سوف تظهر لك قائمة بكل الأجهزة و الأماكن التي قمت بتسجيل الدخول لحسابك منها مدعوماً بالتاريخ و توقيت تسجيل دخولك كما بالشكل السابق، إذا كان هناك أي من بيانات تسجيل الدخول لا تخصك و لا تستطيع تمييزها فإن هناك إحتمال أنه قد تم إختراق حسابك، فإذا تأكدت من ذلك قم على الفور بالضغط على إنهاء النشاط (End Activity) على يمين تسجيل الدخول الذي لم تقم به، هذا سيغلق حسابك عن الدخيل مؤقتاً و سيسمح هذا لك بإكتساب بعض الوقت لتقوم بتغير كلمة المرور و إتخاذ إجراءات الحماية.

بعض العلامات الأخرى التي تخبرك إذا كان قد تم إختراق حسابك

  1. إذا تم تغيير اسمك أو تاريخ ميلادك أو كلمة المرور أو حتى عنوان البريد الإلكتروني الخاص بك.
  2. إذا تم إرسال طلبات صداقة لأشخاص أنت لا تعرفهم.
  3. إذا وجدت رسائل مرسلة من عندك و لم تقم بإرسالها.
  4. ظهور صور و مشاركات على صفحتك لم تقم بنشرها.

ماذا ستفعل إذا تأكدت أن حسابك قد تم إختراقه (طرق الحل)؟

فور إنتهائك من الضغط على إنهاء النشاط (End Activity) و تغيير كلمة المرور كما ذكرنا سابقاً، إذهب إلى مركز المساعدة للفيس بوك (Facebook help page) ثم إضغط على (أعتقد أن حسابي قد تعرض لعملية إختراق أو أن أحدً يستخدمه بدون إذني ” I think my account was hacked or someone is using it without my permission ثم إضغط على تأمين حسابك (Secure itt) و سيقوم الفيس بوك بنقلك إلى صفحة أخرى لتتابع معه بعض خطوات و إجراءات  الحماية.

كيف تحافظ على حسابك بالفيس بوك آمناً؟

الفيس بوك ملئ بمميزات الأمن و الحماية كما رأينا بالصورة السابقة أنت فقط تحتاج إلى تفعيلها كالآتي:
  1. قم بتشغيل تنبيهات تسجيل الدخول (Login Alerts) لتلقى الإشعارات و التنبيهات بتسجيل دخول حسابك و هذا يساعدك على إكتشاف أي عملية إختراق مبكراً حتى تستطيع السيطرة عليها بسرعة.
  2. إضغط على موافقات تسجيل الدخول (Login Approvals) و قم بتفعيل المصادقة الثنائية (Two-Factor Authentication)، و قم أيضاً بتفعيل إحدى خيارات الأمان الأخرى كالرسائل النصية و غيرها.
  3. إضغط على كلمات سر التطبيقات (App Passwords) و قم بإنشاء كلمة مرور قوية و جيدة للتطبيقات بدلاً من اسخدام كلمة المرور الخاصة بحساب الفيس بوك.
  4. إضغط على جهات الإتصال الموثوق فيها لديك (Your Trusted Contacts) و قم بإضافة أي من الأصدقاء المقربين لديك أو أحد أفراد العائلة الذين يستطيع أن يساعدك إذا حدث و تم إختراق حسابك.
من خلال هذه الخطوات سيكون حساب الفيس بوك الخاص بك في أمان تام و سيكون من الصعب إختراقه و أكثر سهولة في إستعادته إذا تم إختراقه.

الأربعاء، 29 مارس 2017

hackers attacks

صورة ذات صلة
`Hackers are a scary bunch—whether working as part of a criminal syndicate or an idealist with a political agenda, they’ve got the knowledge and the power to access your most precious data. If hackers want to target a particular company, for example, they can find vast amounts of information on that company just by searching the web. They can then use that info to exploit weaknesses in the company’s security, which in turn puts the data you’ve entrusted to that company in jeopardy.
Think of your home computer as a company. What can you do to protect it against hackers? Instead of sitting back and waiting to get infected, why not arm yourself and fight back?
Bad guys, beware. We’ve got 10 ways to beat you.
  1. Update your OS and other software frequently, if not automatically. This keeps hackers from accessing your computer through vulnerabilities in outdated programs. For extra protection, enable Microsoft product updates so that the Office Suite will be updated at the same time. Consider retiring particularly susceptible software such as Java or Flash.
  2. Download up-to-date security programs, including antivirus and anti-malware software, anti-spyware, and a firewall (if your OS didn’t come pre-packaged with it). To trick even the most villainous hackers, consider investing in anti-exploit technology, such as Malwarebytes Anti-Exploit, so you can stop attacks before they happen.
  3. Destroy all traces of your personal info on hardware you plan on selling. Consider using d-ban to erase your hard drive. For those looking to pillage your recycled devices, this makes information much more difficult to recover. If the information you’d like to protect is critical enough, the best tool for the job is a chainsaw.
  4. Do not use open wifi; it makes it too easy for hackers to steal your connection and download illegal files. Protect your wifi with an encrypted password, and consider refreshing your equipment every few years. Some routers have vulnerabilities that are never patched. Newer routers allow you to provide guests with segregated wireless access. Plus, they make frequent password changes easier.
  5. Speaking of passwords: password protect all of your devices, including your desktop, laptop, phone, smartwatch, tablet, camera, lawnmower…you get the idea. The ubiquity of mobile devices makes them especially vulnerable. Lock your phone and make the timeout fairly short. Use fingerprint lock for the iPhone and passkey or swipe for Android. “It’s easy to forget that mobile devices are essentially small computers that just happen to fit in your pocket and can be used as a phone,” says Jean-Philippe Taggart, Senior Security Researcher at Malwarebytes. “Your mobile device contains a veritable treasure trove of personal information and, once unlocked, can lead to devastating consequences.”
  6. Sensing a pattern here? Create difficult passwords and change them frequently. In addition, never use the same passwords across multiple services. If that’s as painful as a stake to a vampire’s heart, use a password manager like LastPass. For extra hacker protectant, ask about two-step authentication. Several services have only recently started to offer two-factor authentication, and they require the user to initiate the process. Trust us, the extra friction is worth it. Two-factor authentication makes taking over an account that much more difficult, and on the flip side, much easier to reclaim should the worst happen.
  7. Come up with creative answers for your security questions. People can now figure out your mother’s maiden name or where you graduated from high school with a simple Google search. Consider answering like a crazy person. If Bank of America asks, “What was the name of your first boyfriend/girlfriend?” reply “your mom.” Just don’t forget that’s how you answered when they ask you again.
  8. Practice smart surfing and emailing. Phishing campaigns still exist, but hackers have become much cleverer than that Nigerian prince who needs your money. Hover over links to see the actual email address from which the email was sent. Is it really from the person or company claiming to send them? If you’re not sure, pay attention to awkward sentence construction and formatting. If something still seems fishy, do a quick search on the Internet for the subject line. Others may have been scammed and posted about it online.
  9. Don’t link accounts. If you want to comment on an article and you’re prompted to sign in with Twitter or Facebook, do not go behind the door. “Convenience always lessens your security posture,” says Taggart. “Linking accounts allows services to acquire a staggering amount of personal information.”
  10. Keep sensitive data off the cloud. “No matter which way you cut it, data stored on the cloud doesn’t belong to you,” says Taggart. “There are very few cloud storage solutions that offer encryption for ‘data at rest.’ Use the cloud accordingly. If it’s important, don’t.”
Honorable mention: Alarmist webpages announcing that there are “critical errors” on your computer are lies. Microsoft will never contact you in person to remove threats. These messages come from scammers, and if you allow them to remotely connect to your computer, they could try to steal your information and your money. If that’s not a Nightmare on Elm Street, then we don’t know what is.

الجمعة، 24 مارس 2017

هل تعاني من الاعلانات والصفحات المنبثقة عند تصفح الانترنت؟

نعاني جميعاً كمستخدمين للأنترنت من الاعلانات في اغلب الصفحات التي نفتحها وانبثاق صفحات اخرى لا نريدها اثناء التصفح وللقضاء على هذه الحالة المستمرة بشكل دائم ويومي يمكن اتباع الارشادات التالية:
في حالة العمل على متصفح الكوكل كروم يمكن اضافة واحدة او اكثر من الاضافات التالية:
Capture.JPG
وانا شخصياً انصح بالاضافة التالية لكوني اجربها وهي ممتازة جداً:
وكذلك يفضل اضافة الاضافة التالية:
واخيراً الاضافة الجميلة:
واما في حالة العمل على اي متصفح اخر فيمكن البحث عن مكافئات الاضافات اعلاه لذلك المتصفح فمثلاً يمكن البحث عن الاضافة اعلاه 
HTTPS everywhere for firefox
والتي يمكن ايجادها على الرابط التالي
كما يمكن ايجاد مانع الاعلانات والصفحات المنبثقة للفايرفوكس هنا
وهكذا بالنسبة لبقية المتصفحات حيث لكل منها اضافات معينة وبعض هذه الاضافات افضل من غيرها وانا اعطيتكم رأيي في الاضافات التي جربتها وثبت لي فائدتها وعملها بشكل فعال واتمنى من الاخوة الاخرين من مستخدمي المتصفحات الشائعة الاخرى مثل الانترنت اكسبلورر والاوبرا وغيرها ان يفيدونا بالاضافات الفعالة.
unnamed
ملاحظة اخيرة: الكل يعرف مضاد الفيروسات الافاست وقد شرحنا عنه سابقاً وكيف انه مضاد فيروسات مجاني وفعال وحديثاً تم اضافة متصفح اليه بحيث انه يتم تنزيل المتصفح بشكل تلقائي معه حالما يتم تنصيبه وهو متصفح امن ويجتوي على الكثير من الاضافات للخصوصية ومنع الاعلانات والثفحات المنبثقة كجزء اساسي منه

الخميس، 23 مارس 2017

كيفية حل مشكلة ERR_ CONNECTION_ R EFUSED في متصفح جوجل كروم

يقوم متصفح جوجل كروم في بعض الأحيان بوقف فتح و تحميل بعض المواقع دون أي إنذار، سيقوم بفتح المواقع بطريقة طبيعية عدا عدة مواقع بصورة غريبة و عشوائية و التي قد كنت تتصفحهم مسبقاً بشكل طبيعي كاليوتيوب و غيرها و عندما يفشل في فتح أي من هذه المواقع سيعطيك هذه الرسالة (ERR_CONNECTION_REFUSED) كما بالشكل، و هي في الحقيقة لا تساعد و لا تخبرك شيئاً عن المشكلة، و إذا قمت بإستخدام VPN كما يفعل البعض فإنك في الحقيقة لا تقوم بحل أساس المشكلة و لكن حلها يكمن في القيام بعملية تنقية و تنظيف صغيرة، و إليك كيف يمكن حل هذه المشكلة.

تأكد إذا كان الموقع بالفعل مغلق أو قيد التطوير

قبل أن تبدأ بإصلاح المشكلة تأكد إذا كان هذا الموقع بالفعل مغلق أو قيد التطوير و الصيانة، و أسهل طريقة للتأكد من هذا الأمر هي بإستخدام هذا الموقع (Down for everyone or just me)، قم بنسخ رابط الموقع المغلق في المربع كما بالصورة و سيخبرك إذا كان هذا الموقع مغلق بالفعل أم إنك فقط من تواجه هذه المشكلة، و إذا أخبرك أن الموقع يعمل بشكل عادي فأنت تحتاج إلى أن تتابع معنا هذه الخطوات لحل هذه المشكلة.

1) إعادة تشغيل جهاز Router

أحياناً يكون هناك عطل ما في الجهاز أو سوء إتصال بالشبكة و هو أول و أبسط حل تقنياً يخبرك به مركز المساعدة في الويندوز و نسبة نجاحة ضئيلة، أضغط على زر الطاقة و أبقي الضغط عليه لمدة عشرة ثواني ثم أتركه و دعه مغلق لمدة عشرة ثواني أخرى و أفتحه و أنظر إذا قام جوجل كروم بفتح الموقع أم لا، و إذا لم ينجح الأمر فجرب الحل الثاني.

2) تنظيف DNS

DNS إختصار لكلمة Domain Name System و هو نظام يخزن معلومات تتعلق بقاعدة بيانات الإنترنت، قم بفتح صندوق الأمر (run) من قائمة البدأ(Start menu) و أكتب الأمر (CMD) ثم إضغط (Enter) ستظهر لك هذه الشاشة السوداء كما بالصورة في الفراغ الظاهر أمامك أكتب الأمر (ipconfig /flushdns) ثم أتركه يقوم بتنظيف قاعدة البيانات هذه كما ذكرنا و عند الإنتهاء قم بفتح الموقع و إذا لم يفتح فجرب الحل التالي.

3) جدد الـ IP and DHCP

و هي كعملية تجديد لعنوان و سيرفر و مستقبل الإنترنت الخاص بك و سيقوم بقطع الإتصال بالشبكة مؤقتاً ولكن لا تقلق سيقوم الويندوز بالإتصال مرة أخرى فور الإنتهاء، قم بفتح الأمر (CMD) كما رأينا سابقاً و عندما تظهر لك الشاشة السوداء أكتب الأمر    (ipconfig /renew) و إضغط (Enter) و عند الإنتهاء جرب تشغيل الموقع، و إذا لم تنجح هذه الطريقة جرب الحل التالي.

4) تفقد سبب المشكلة جيداً

تظهر هذه المشكلة لأسباب عدة، و هذا المقال يتناول هذه المشكلة مع المواقع التي كنت تتصفحها بسهولة في الماضي دون مشاكل و لكن لا تسطيع الآن بسبب ظهور هذه المشكلة، بمعنى أنك إذا قمت مؤخراً بتثبيت أي برنامج فيروسات أو ملحقات على المتصفح أوVPN أو أي تطبيق فإن هناك إحتمال كبير أنها قد تكون سبب هذه المشكلة، جرب إلغاء تثبيتهم أو وقف عملهم إذا لم تنجح معك الحلول السابقة و أنظر إذا كانت ستحل هذا الخطأ و إذا تم بالفعل تصحيح هذا الخطأ فإن المشكلة كانت في إحدى هذه البرامج.
و تعتبر هذه المشكلة ليست محصورة على متصفح جوجل كروم فقط أي يمكن تراها على أي متصفح أخر أو حتى على الشبكة الخاصة بك بمجرد وجود أحد مسبباتها، و يمكنك في هذه الحالة إتباع الخطوات السابقة في تصحيح هذا الخطأ، و في حال إذا قمت بحلها سوف تختفي هذه المشكلة من كل المتصفحات و الشبكات من على جهازك لأنها ليست مشكلة في متصفح جوجل كروم و لكنها مشكلة في نظام قاعدة بيانات الإنترنت و سيرفر الإستقبال الخاص بك على جهازك (DNS or DHCP configuration).

كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط

موقف قد نتعرض له جميعا و هو حين تجد بأن هناك بعض الاشخاص الذين يقومون بالإتصال بشبكة الواي فاي الخاصة بك دون إذنك حيث أنهم إستطاعوا الوصول إلى كلمة السر الخاصة بالشبكة إما عبر إختراقها بإستعمال بعض التطبيقات او أنهم قاموا بأخذها من شخص تعرفه و ما إلى ذلك ، و عندما يكون هناك شخص ما يقوم بسرقة الواي فاي منك فإن افضل ما يمكنك القيام به هو أن تعطيه درسا لا ينساه يكون بمثابة تحذير له ، و في هذه التدوينة اليوم سوف نتعرف على كيف يمكنك ان تقوم بإغلاق جهاز اي شخص متصل معك بنفس الشبكة عن بعد من خلال إستعمال حاسوبك فقط .



الطريقة التي سوف نتعرف عليها سوف تكون بدون إستعمال اي برامج أو تطبيقات بل من خلال الويندوز فقط يمكنك غلاق جهاز اي شخص متصل على نفس الشبكة سواءا كان جهازه عبارة عن هاتف أو جهاز لوحي أو حاسوب ، و الطريقة هي كالتالي : 
أولا قم بالنقر على زر الويندوز في لوحة المفاتيح و أيضا قم بالنقر في نفس الوقت على زر R بعد ذلك سوف تظهر لك نافذة الـ RUN و في الخانة قم بكتابة كلمة cmd و قم بالضغط على زر Enter كما هو موضح أدناه :

كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط

بعد ذلك سوف تظهر لك نافذة الـ cmd و كل ما عليك فعله هو ان تقوم بكتابة جملة net view على هذا الشكل :

كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط
كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط

بعد ذلك سوف تظهر لك جميع الأجهزة المتصلة بشبكة الواي فاي الخاصة بك و كل ما سوف تقوم به هو أنك سوف تقوم بنسخ إسم الجهاز الذي تريد ان تقوم بإغلاقه .

كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط
كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط

بعد أن تقوم بنسخ إسم الجهاز قم بكتابة كلمة Tracert و أمامها مباشرة قم بلصق إسم الجهاز و النقر على زر Enter كما هو موضح أدناه :

كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط
كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط

بعد ذلك سوف يظهر لك كود و قم بنسخه بالكامل كما هو موضح في الصورة أدناه :

كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط
كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط

بعد ذلك تقوم بالعودة إلى نافذة الـ RUN و فتحها من خلال النقر على زر الويندوز و أيضا حرف R ثم تقوم بكتابة shutdown -i و الضغط على زر Enter 

كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط
كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط


بعد ذلك سوف تظهر لك النافذة التالية :

كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط
كيفية إغلاق جهاز أي شخص متصل معك في نفس الشبكة بإستعمال حاسوبك فقط

قم بالنقر على إضافة أو Add و في خانة Computer قم بلصق الكود الذي قمت بنسخه ثم قم بإختيار إطفاء الجهاز أو إعادة تشغيله ، ثم بعد ذلك يمكنك غضافة تعليق في خانة Comment لتظهر رسالة معينة لصاحب الجهاز قبل أن يتم إغلاقه ثم تقوم بالنقر على زر OK و بهذا سوف يتم إغلاق الجهاز مباشرة .

الأربعاء، 22 مارس 2017

حماية الحاسوب من برامج التجسس مع أداة Xvirus

هناك العديد من البرمجيات الخبيثة التي يمكن أن تقوم بتنصيبها على حاسوبك مع أحد البرامج أو عن طريق تحميلها مع أحد الملفات الملغمة دون أن تعلم بذلك ، و لحماية نفسك من مثل هذه البرمجيات الخبيثة و التي يمكن من خلالها إلحاق ضرر بحاسوبك أو التجسس عليك فإنه من المهم جدا ان تستعمل أحد أدوات الحماية و التي من بينها برنامج يدعى Xvirus 

برنامج Xvirus هو عبارة عن برنامج مجاني يعمل على حماية حاسوبك من أي برمجيات ضارة أو فيروسات سواءا فيروسات تهدف إلى تسريب بياناتك أو تتيح للقراصنة التجسس عليك او فيروسات مضرة تعمل على إتلاف جهازك و غيرها ، و لتحميل برنامج Xvirus ما عليك سوى النقر على الرابط الموجود أسفل هذه التدوينة و الولوج إلى الموقع الرسمي للبرنامج :
حماية الحاسوب من برامج التجسس مع برنامج Xvirus
حماية الحاسوب من برامج التجسس مع برنامج Xvirus
بعد ذلك قم بالضغط على زر التحميل أو Dawnload و ما يميز هذا البرنامج انه صغير الحجم و أيضا لن يتطلب منك تتبيثه سوى النقر على كلمة Install التي سوف تظهر لك على هذا الشكل في نافذة منبثقة فور تحميل البرنامج :

حماية الحاسوب من برامج التجسس مع برنامج Xvirus



بعد ذلك سوف يعمل برنامج Xvirus على فحص الحاسوب بشكل سريع و إستعراض نتائج الفحص ، و من خلال الضغط على زر Scan يمكنك تكرار الفحص في أي وقت مع العلم أن البرنامج يوفر طرق مختلفة للفحص منها الفحص السريع إلى جانب الفحص الشامل للحاسوب و أيضا الفحص المخصص بحيث تقوم بفحص ملف معين في الحاسوب تشك في كونه قد يحتوي على برمجيات خبيثة .
حماية الحاسوب من برامج التجسس مع برنامج Xvirus
حماية الحاسوب من برامج التجسس مع برنامج Xvirus
إلى هنا تنتهي هذه التدوينة التي نتمنى ان تكون قد افادتك و التي ندعوك إلى مشاركتها مع اصدقائك على الشبكات الإجتماعية .
حماية الحاسوب من برامج التجسس مع برنامج Xvirus

الثلاثاء، 21 مارس 2017

كيف تعمل خوارزمية الفيسبوك ؟

   نتيجة بحث الصور عن خوارزمية الفيسبوك


قرر الفيس بوك بعد الانتشار الواسع أن يركز على تحسين تجربة المستخدم، كل ما يهم الفيس بوك هو أن تبقى على صفحتك الرئيسية، وأن تستمتع قدر الإمكان بتجربتك مع الفيس بوك، وسيفعل أي شيء ليجعلك لا تشعر بالملل من التحديـق في الشاشة طوال اليوم، هذا ما دفعه إلى تطوير عدد من الخوارزميـات وعلى رأسها خوارزمية الصفحة الرئيسية news feed algorithm، هذه الخوارزمية هي التي تقرر ماذا ترى عندما تتصفح صفحتك الرئيسية على جهازك أو على تطبيق فيس بوك عبر هاتفـك الذكـي، ستـقرر الخوارزمية أي أصدقائك ينبغي أن تعرف أخباره وأيهم لا يهمك، ما هي الإعلانات التي ستراها وما نسبتها من صفحتـك الرئيسـية، وأحيـانًا حتى تقرر الخـوارزمية ألا تريك المزيد من الأخبار لكي تجبرك على توسيـع دائرة أصدقائـك على فيس بوك.
الخوارزمية -لمن لا يعرفها- هي ببساطة مجموعة من الأكواد البرمجية تعطي الآلة أوامر تـقوم بتنفيذها، ولـكن في العقـد الأخيـر أصبح الأمر أن الآلة يمكنها أن تتعلم بنفسها وتصيغ الأوامر بنفسها -بشكل ما- ويمكنـك أن تقرأ عن الخوارزميـات أكثر، من هنا

إن ما نشاهده عبر وسائل التواصل الإعلامي يشكّل جزءًا هامًا من وعينا، يؤثر على أحلامنا وحالتنـا النفسية وتصورتنا حول أنفسنا والآخرين، قام فيس بوك من قبل بتجربة ليعرف إذا كان يستطيع أن يسيطر على مشاعر مستخدميه أم لا، ونجـحت التجـربة إذ استطـاع فيـسبوك أن يغير حالات مستخدميه المزاجية ويتحكم في مشاعرهم وإحساسهم، الأمر الذي اعتذر عنه الفيس بوك لاحقًا. 

تخيل أن هذه القوة في التحكم في المستخدمين صارت في يد روبوت وليس بشرًا، وتخيل ماذا يمكن أن يحصد إذا استطاع هذا الروبوت في لحظة ما من تكوين وعي خاص به. ولكن لماذا إذًا ينبغي علينا الخوف من الخوارزميات طالما أنها تساعدنا على تحسين حياتنا؟ ولماذا ينبغي أن نقلق بخصوص خوارزميات الفيس بوك؟
1- خوارزمية فيس بوك تحاول أن تتشبه بالبشر

هل تعلم هؤلاء الأشخاص الذين يقدسون الرسائل الصباحية Mourning texts؟ حسنًا لا تقلق ففيس بوك أصبح يعطيهم الآن رسائل صباحية أغلب الأوقات بمجرد أن يستيقظوا سيجدوا أن الخوارزمية قد قالت لهم صباح الخير في بداية الصفحة الرئيسية، ليس هذا وحسب، بل إن خوارزمية فيس بوك ستخبرنا عن أصدقائنا الذين يحلّ عليهم أعياد ميلادهم بناءً على درجة قربهم منهم فمع الوقت تحول تذكير أعياد ميلاد أصدقائك من مجرد أجندة يقدمها فيس بوك لمستخدميه لا تفرق بين أصدقائك إلى شيء أكثر حميمية، فلو كان صديقك هذا مقربًا إليك وبينكما الكثير من الرسائل والتعليقات والتفاعل سيقترح عليك الفيس بوك أن تهنئه، وبعد أن كان يقول لك بلغة جافة أشبه بالروبوت اليوم هو عيد ميـلاد فلان، أصبح يقـول لك صباح الخير اليـوم يوافق عيد ميلاد صديقك فلان، لم لا تخبره شيئًا لطيفًا بهذه المناسبة؟
2- خوارزمية فيس بوك تعرف الوجوه بنفس دقة العقل البشري

أجل، فخوارزمية الوجه العميق deep face algorithm التي يطورها فيس بوك تستطيع التعرف على الوجوه بنسبة 97.25%، بينما دقة العقل البشري هي 97.53%، ولكن هنالك أفضلية لخوارزمية فيس بوك فبينما قدرتك الاستيعابية لا تتجاوز الـ1000 شخص فإن خوارزمية فيس بوك تستطيع التعرف على أكثر من مليار شخص متصلين بشبكة التواصل الاجتماعي(1).
3- خوارزمية فيس بوك تعاملك كـ “فأر” تجارب

هل تعرف هذا الصديق الذي لم تعد تتحدث معه منذ أكثر من عام واختفت منشوراته من على صفحتك الرئيسية لأن الخوارزمية قررت أنه غير مهم بالنسبة لك، وفجأة وبلا سابق إنذار ظهر مجددًا، حسنًا إن الخوارزمية تعاملك كفأر تجارب الآن، تقوم الخوارزمية باختبار إذا كنت بعد هذا الوقت سترغب في إعادة الاتصال به أم لا، وستقرر على حسب تفاعلك مع هذا المنشور إذا كانت ستبدأ في عرض التحديثات القادمة له أم لا، لا يتوقف الأمر عند هذا، ربما ستعطيك الخوارزمية وجهتين نظر متتاليين عن نفس الموضوع لتقارن من سوف تتفاعل معه، ستعطيك وجهه نظر صديقك المنتمي لجماعةٍ أو حزبٍ ما عن نفس الموضوع وسترى من الذي ستتعامل معه، وبعد عدّة مرات ستعرف الخوارزمية أي الآراء أنت مهتم بها، وهكذا إذا فضلّت صديقك المنتمي لجماعة الإخوان على سبيل المثال ستحتفظ بهذا وتبدأ في إظهار التحديثات الخاصة بالأصدقاء المشتركين بينكما، وتقترح عليك إضافة أصدقاء من عنده.
4- خوارزمية فيس بوك تعرف كل شيء، كل شيء!

خصوصيتك أمام الخوارزمية صفر، حتى الأشياء التي تقوم بمشاركتها عبر فيس بوك بشكل خاص أو تحت خيار أنا فقط من يمكنه رؤية المنشور only me تحتسبها الخوارزمية، الخوارزمية تعرف علاقاتك العاطفية بل إنها تعرف أنك معجب حاليًا بأي شخص حيث تعلمت الخوارزمية كيف يتصرف البشر المعجبون ببعضهم البعض على فيس بوك (3). إنها تعرف أين أنت الآن عن طريق الجي بي إس في هاتفك وتعرف مطاعمك المفضلة، ديانتك والأفلام التي شاهدتها والتي ترغب في مشاهدتها، قراءاتك على موقع good reads تعرفها أيضًا، آراءك في الكتاب والمبدعين، تعرف بمن تتواصل عبر إنستجرام، وواتس أب وتعرف كل الأرقام التي تقوم بحفظها على هاتفك، (4) إنها تعرف كل شيء، المرعب أنها لا تعرف كل شيء عنك فقط بل عن قرابة المليار شخص حول العالم.
5- الخوارزمية تقوم بقياس كل شيء

فبدءًا من كيف تحرك الفأرة على صفحة حاسوبك حتى أعداد الإعجابات التي تقوم بها كل يوم فالخوارزمية تضيف كل هذه المعلومات إلى قاعدة بيانتها لتكون أكثر ذكاءً.
6- الرعب الحقيقي: لا يوجد شخص واحد ملّم بكل الخوارزمية

هي ليست خوارزمية واحدة هي مجموعة ضخمة من الخوارزميات، بعضها متاح لنا للاطلاع على كيفية عملها، والأغلب يحتفظ به فيس بوك لنفسه، هذه قائمة بهذه الخوارزميات وتفاصيلها، من هنا.
الشيء الأكثر رعبًا على الإطلاق هو أنه لا يوجد بشري واحد ملّم بكل الخوارزميات، ومن يعلّم إلى أين سينتهي بنا هذا الذكاء الاصطناعي، ربما تتحكم بنا الخوارزمية يومًا ما ونعيش مغامرات أفلام الخيال العلمي بأنفسنا.

مقدمة إلى تعلم الآلة (Machine Learning) | الذكاء الصناعي

مقدمة إلى تعلم الآلة (Machine Learning) | الذكاء الصناعي - STJEGYPT
قد يتساءل المرء عن كيفية قيام الكومبيوتر ببعض المهام التي قد تبدو صعبةً على الآلة للوهلة الأولى، ، وأخرى قد تبدو مستحيلة. فمن التعرف على الوجوه إلى التعرف على الحديث وخط اليد بالإضافة إلى السيارات لذاتية القيادة وتحريك الروبوتات وفرز رسائل البريد الإلكتروني وغيرها الكثير من التطبيقات الأخرى. من خلال هذا المقال سنتعرف على مفهوم «تعلم الآلة» لنفهم كيف يمكن للكومبيوتر تنفيذ كل هذه المهام وغيرها بكفاءة عالية.

يصنف تعلم الآلة كفرع رئيسيٍّ من فروع الذكاء الصنعي (Artificial intelligence)، ويمكننا تعريفُه بأنه العلم الذي يسمحُ للكومبيوتر بالتصرف بدون أن يكونَ مبرمجاً مسبقاً للقيام بذلك التصرف بشكل صريح. أو بمعنى آخر، يتعلمُ كيفيةَ الاستجابة لأحداث معينة بالطريقة الصحيحة بشكل ذاتيٍّ دون أن يتمَّ تلقينُه ذلك صراحةً من قِبل المبرمج.

قد يبدو ذلك غريباً للوهلة الأولى، خاصة وأنه عادةً ما يتمُّ حلُّ أي مشكلة باستخدام الكومبيوتر من خلال الخوارزميات. والخوارزمية كما نعلم هي عبارة عن سلسلة من التعليمات التي يتم تنفيذها حرفياً للوصول إلى الحل المطلوب، كخوارزمية تقوم مثلًا بترتيب مجموعة من الأرقام تصاعديًا أو تنازليًا. إلا أن الأمر ليس دومًا بهذه البساطة، ففي بعض المسائل، قد لا يكون هناك خوارزمية لحلّها.
 لنأخذ مسألةَ فرز البريد الإلكتروني المهمّ عن الإعلانات المزعجة مثالاً. الدخلُ في هذه الحالة معروف، وهو مجموعةُ الرسائل الواردة إلى صندوق البريد الإلكتروني، والخرج أو النتيجة المطلوبة أيضًا معروفة وهي الإجابة بنعم أو لا عن السؤال التالي: هل هذه الرسالة مهمة أم لا؟
قد يبدو السؤال سهلًا بالنسبة للمستخدم العادي، ولكنه ليس كذلك بالنسبة للكومبيوتر،  لأنه لا توجد خوارزميةٌ واضحة يمكنه تنفيذها ليقررَ فيما إذا كانت الرسالة مهمة أم لا.
إن مفتاحَ الحل هو بالتعويض عن نقص المعرفة باستخدام البياناتِ الموجودة مسبقاً. ولكن كيف؟
بإمكاننا جعلُ الكومبيوتر يقوم بمعالجة آلاف الرسائلِ المعروفة مسبقًا و تصنيفها فيما إذا كانت مهمة أم لا حتى يستطيعَ الكومبيوتر استنتاج ما إذاكان البريد الجديد مهمًا أو غير مهم. بكلمات أخرى، نريد من الكمبيوتر أن يتعلمَ كيف يقوم باستخراج الخوارزميةِ اللازمة لفرز البريد غير المهم أوتوماتيكياً، وذلك من خلال تدريبه على دخلٍ معروفٍ مسبقاً. ونستطيع تعميمَ المثال السابق على كل المسائل التي لا نستطيع كتابةَ خوارزمية مناسبة لحلِّها، لكننا نملكُ البيانات الكافية لتدريب الكومبيوتر للقيام بذلك.
ماذا عن قواعد البيانات؟
كمياتٌ هائلة من البيانات يتم تسجيلها يوميًا في المتاجر الضخمة عن كل شيء يتعلق بالمستخدم ومشترياته ومدفوعاته. ولكن ما الفائدة من كل هذه البيانات إذا لم يتم تحليلها والاستفادة منها؟
تريدُ هذه المتاجر أن تعرفَ نوعيةَ الزبائن المحتملة لمنتج معين مثلًا. عندما تعجز الخوارزمياتُ عن حل هذه المسألة، يأتي تعلم الآلة بالحل. فمن خلال تحليل البيانات، يمكن التوصّلُ إلى أنماط معينة نستطيع من خلالها استخلاصَ لمعلومات. نحن نعرف أن الزبائنَ لا تذهب إلى المتجر لتشتري الأشياء بشكل عشوائي، فهم عندما يشترون المشروبات مثلًا، غالبًا ما يشترون رقائق البطاطا أيضًا. كما أنهم يشترون البوظة في الصيف والشوكولا في الأعياد.
حتى لو كانت مثلَ هذه الأنماط لا تعطي الصورةَ الكاملة، إلا أنه يمكنُ استخدامها للتنبؤ بالأنماط المشابهة في المستقبل. بل يمكننا القول بأن اكتشافَ هذه الأنماط هو الركنُ الأساسي في عملية تعـلم الآلة. تُسمّى تطبيقات تعلم الآلة في مجال قواعد البيانات التنقيب عن البيانات (Data Mining)،  وتطبيقاتها العملية أكثر من أن تحـصى. ففي مجال الطب، يتم استخدامها لأغراض التشخيص الطبي.
وفي مجال الاتصالات، يتم تحليل أنماط الاتصالات لتحسـين الشبكة والوصول إلى جودة خدمة مثالية. في الاقتصاد، يمكن استخدام نماذج تحليل البيانات في برامج القروض وكشـف الاحتيال وأيضًا في أسواق البورصة، وغيرها الكثير من التطبيقات في شتى المجالات.
(الجدير بالذكر أن الكثير من المراجـع تميز تعلم الآلة عن التنقيب عن البيانات ويُعدّان فرعين منفصلين يتقاطعان في أمور عديدة)

يساعدنا تعلم الآلة أيضًا على حل الكثير من المشاكل في تطبيقات الرؤية الحاسوبية والتعرف على الحديث ومجال الروبوتات. لنأخذَ مثلًا عمليةَ التعرف على الوجوه يقوم البشر بهذه المهمة بلا أي مجهود يُذكر، إذ نستطيع بسهولة التعرفَ على وجوه أفراد العائلة والأصدقاء من خلال النظر إليهم مباشرة أو من خلال صورهم، بغضِّ النظر عن الوضعية والإضاءة وتسريحة الشعر… إلخ. لكننا نقوم بذلك بطريقة لا واعية ولا نملك تفسيرًا حول كيفية قيامنا بذلك. ولأننا لا نملك هذا التفسير، لا يمكننا كتابةُ خوارزمية مناسبة للكومبيوتر. في الوقت نفسه، نعلم أن صورَ الوجوه  ليست مجموعةً عشوائية من البكسلات، فالوجه يملك بنيةً متناظرة، فالعينان والأنف والفم لهم أماكن محددة في الوجه.
كل وجه هو عبارة عن نمطٍ مؤلفٍ من تركيبة معينةٍ من العناصر السابقة. من خلال تحليل عيناتِ صورِ وجه شخص ما، يمكن للبرنامج المتعلِّم أن يحفظ نمطًا معينًا خاصًا بهذا الشخص بالذات، ويمكنه لاحقًا التعرفُ عليه من خلالالبحث عن النمط نفسه في صور أخرى.
هذا أحد الأمثلة عن التعرف على الأنماط (Pattern Recognition).
مما يجدر ذكره أيضًا أن تعلم الآلة يستخدم نظريةَ الإحصاء لبناء نماذجَ رياضية، لأن الهدف الرئيسي هو الوصول لاستنتاج معين من عينة ما.
تقسم عمليات تعلم الآلة إلى ثلاثة أنواع رئيسية:
التعلم الخاضع للإشراف (Supervised learning) ويسمى أيضًا التعلم التنبؤي (predictive Learning):في هذا النوع من التعلُّم، يتم تدريبُ الكومبيوتر باستخدام دخلٍ معروفِ الخرج مسبقًا،كمجموعةٍ من رسائل البريد الإلكتروني المصنفة مسبقًا إلى مهمة أو غير مهمة، والمطلوب تعلمُّ كيفية ربط الدخل مع الخرج ليصبح بالإمكان مستقبلًا التنبؤ بالخرج من أجل أي دخل جديد. يندرج تحت هذا النوع أنواعٌ فرعية من التعلم بحسب الخرج المطلوب من نظام تعلم الآلة، من أهم هذه الأنواع:
-التصنيف (Classification): وهـو النوع الأكثرُ استخدامًا في تعلم الآلة.في هذا النوع يكون الدخل مصنفًا إلى نوعين أو أكثر. وهدفُ عملية التعلم إنتاجُ نموذجٍ يستطيع تصنيفَ أي دخل جديد إلى نوع أو أكثر من الأنواع المعرفة سابقًـا. مثال على هذاالنوع، عمليةُ تصنيف البريد الإلكتروني وعملية التعرف على الوجوه وعمليـة  تصنيف الأزهار من خلال الصور.

-الانحدار (Regression): هذا النوع شبيه بالتصنيف، إلا أنه يتنبؤ بقيم مستمرةٍ بدلًا من أصنافٍ منفصلة. هناك العديد من التطبـيـقات لهذا النوع أيضًا كالتنبؤ بأسعار البورصة والتنبؤ بعمر شخصٍ يشاهد مقطعَ فيديو معينًا والتنبؤ بدرجة الحرارة في داخل مبـنى مـا اعتمادًا على معلومات الطقس والوقت والحسـاسـات الموجودة.
التـعلـم غيـر الخاضع للإشراف (Unsupervised learning) ويسمى أيضًا التعلم التوصيفي(descriptive Learning ): بعكس النوع السابق فإن هذا النوع من التعلم يتم تدريب الكومبيوتر فيه عن طريق بياناتِ الدخل بدون أي خرجٍ معـرّف مسبقًا، والهدف هناهو استنباطُ نماذجَ جديدة وعلاقاتٍ خفية بين البيانات. من أهـم الأنواع الفرعية ضمن هذا النوع:
-التجميع (Clustering): في هذا النوع يتمُّ فرزُ الدخل إلى مجموعات غير معروفة مسبقًا.من تطبيقاته تعلم حركات الشخص الواقـف أمام كاميرا تقوم بتسجيل تحركاته، بحيث يستطيع النظامُ لاحقًا التعرفَ على هذه الحـركات وربطها بردود فعل مناسبة
ومن التطبيقات الأخرى في مجال التجارة الإلكترونية عمليةُ تجميع المستخدمين في مجموعات بناء على عمـلياتِ الشراء التي قاموا بها وسلوكِ التصفح الخاص بهم، ومن ثم استخدامها لإرسال  رسائلَ إعلانية موجهة بحسب كل مجموعة.
-التعلم التعزيزي (Reinforcement learning): وهو الأقلُّ استخدامًا. وفي هذا النوع يتم تعلم كيفية التصرف عند حدث معينمن خلال إعطاء إشارات ترمز إلى مكافئـة أو عقاب بناء على السلوك الحالي.
تجدر الإشارة بأن هناك العديد من التصنيفات الأخرى الأساسية منها والفرعية لعمليات التعلم الآلي، إلا أنه في هذا المقال - تمت الإشـارة إلى أهمـها فقط.
يعدُّ تعلُّمُ الآلة من العلوم الصاعدة بقوة،  ويُتوقع أن يلعب دورًا حساسًا في الكثير من التطبيقات الذكيـة مستقبـلًا بالإضافـة إلـى دوره الحالي في الكثير من المجالات المؤثرة في حياتنا حتى بدون أن نعلم. كما أنه يمنحنا فهمًا أفضل للجينوم البشري، حيث أن الكثير مـن الباحثين يعتقدون بأنه الطريق الأفضل للتقدم بالذكاء الصنعي ليقتربَ من مسـتوى الذكاء البشري.

Thinking Algorithmically


Algorithms matter! Knowing which algorithm to apply under which set of circumstances can make a big difference in the software you produce. Let this book be your guide to learning about a number of important algorithm domains, such as sorting and searching. We will introduce a number of general approaches used by algorithms to solve problems, such as Divide and Conquer or Greedy strategy. You will be able to apply this knowledge to improve the efficiency of your own software.
Data structures have been tightly tied to algorithms since the dawn of computing. In this book, you will learn the fundamental data structures used to properly represent information for efficient processing.
What do you need to do when choosing an algorithm? We’ll explore that in the following sections.
Understand the Problem
The first step to design an algorithm is to understand the problem you want to solve. Let’s start with a sample problem from the field of computational geometry. Given a set of points, P, in a two-dimensional plane,    picture a rubber band that has been stretched around the points and released. The resulting shape is known as the convex hull, that is, the smallest convex shape that fully encloses all points in P.
Sample set of points

Given a convex hull for P, any line segment drawn between any two points in P lies totally within the hull. Let’s assume that we order the points in the hull in clockwise fashion. Thus, the hull is formed by a clockwise ordering of h points L0L1, … Lh-1 as shown in Figure 1-2. Each sequence of three hull points LiLi+1Li+2 creates a right turn.
Computed convex hull

With just this information, you can probably draw the convex hull for any set of points, but could you come up with an algorithm, that is, a step by step sequence of instructions, that will efficiently compute the convex hull for any set of points?
What we find interesting about the convex hull problem is that it doesn’t seem to be easily classified into existing algorithmic domains. There doesn’t seem to be any sorting, although the points are ordered in clockwise fashion around the hull. Similarly, there is no obvious search being performed, although you can identify a line segment on the hull because the remaining n-2 points are “to the right” of that line segment in the plane.
Naive Solution
Clearly a convex hull exists for any collection of 3 or more points. But how do you construct one? Consider the following idea. Select any three points from the original collection and form a triangle. If any of the remaining n-3 points are contained within this triangle, then they cannot be part of the convex hull. We’ll describe the general process in using pseudocode and you will find similar descriptions for each of the algorithms in the book.
SLOW HULL SUMMARY
Best,Average,Worst: O(n4)
slowHull (P)
  foreach p0 in P do
    foreach p1 in {P-p0} do
      foreach p2 in {P-p0-p1} do
        foreach p3 in {P-p0-p1-p2} do
          if p3 is contained within Triangle(p0,p1,p2) then
            mark p3 as internal 1
  create array A with all non-internal points in P
  determine left-most point left in A
  sort A by angle formed with vertical line through left 2
  return A
1
Points not marked as internal are on convex hull
2
These angles (in degrees) range from 0 to 180.
In the next chapter we will explain the mathematical analysis that explains why this approach is considered to be inefficient. This pseudo-code summary explains the steps that will produce the correct answer for each input set (in particular, it created the convex hull in Figure 1-2). But is this the best we can do?
Intelligent Approaches
The numerous algorithms in this book are the results of striving for more efficient solutions to existing code. We identify common themes in this book to help you solve your problems. There many different ways to compute a convex hull. In sketching these approaches, we give you a sample of the material in the chapters that follow.
Greedy
Here’s a way to construct the convex hull one point at a time:
1.    First locate and remove low, the lowest point in P.
2.    Sort the remaining n-1 points in descending order by the angle formed in relation to a vertical line through low. These angles range from 90 degrees for points to the left of the line down to -90 degrees for points to the right. pn-1 is the right-most point and p0 is the left-most point.Figure 1-3 shows the vertical line as a thick blue line, and the angles to it as light gray lines.
3.    Start with a partial convex hull formed from these three points in the order {pn-1lowp0}. Try to extend the hull by considering, in order, each of the points p1 to pn-1. If the last three points of the partial hull ever turn left, the hull contains an incorrect point that must be removed.
4.    Once all points are considered, the partial hull completes.
Graham hull

Divide and Conquer
We can divide the problem in half if we first sort all points, P, left to right by their x coordinate (breaking ties by considering their y coordinate). From this sorted collection, we first compute the upper partial convex hull by considering points in order left to right from p0 to pn-1 in the clockwise direction. Then the lower partial convex hull is constructed by processing the same points in order right to left from pn-1 to p0 again in the clockwise direction. Convex Hull Scan (described in Chapter 9) computes these partial hulls (shown in Figure 1-4) and merges them together to produce the final convex hull.
Divided hull

Parallel
If you have a number of processors, partition the initial points by x coordinate and have each processor compute the convex hull for its subset of points. Once these are completed, the final hull is stitched together by the repeated merging of neighboring partial solutions.
Figure 1-5 shows this approach on three processors. Two hulls can be stitched together by adding two tangent lines—one on the top and one on the bottom—and then eliminating the line segments contained within the quadrilateral formed by these two lines.
Parallel hull

A parallel approach divides problems among a number of processors to speed up the overall solution.
Approximation
Even with these improvements, there is still a fixed lower bound performance for computing the convex hull that cannot be beaten. However, instead of computing the exact answer, perhaps you would be satisfied with an approximate answer that can be computed quickly whose error can be accurately determined.
The Bentley-Faust-Preparata algorithm is able to approximate the convex hull by partitioning the points into vertical strips. Within each strip, the maximum and minimum points (based on y coordinate) are identified (they are drawn in Figure 1-6 with squares around the points). Together with the left-most point and the right-most point in P, these extreme points are stitched together to form the convex hull. In doing so, it may happen that a point falls outside the convex hull, as shown for point p1 in Figure 1-6.
Approximate hull

Generalization
Often it is possible to solve a more general problem whose solution can be readily converted to solve your specific problem. The Voronoi diagram is a geometric structure that divides a set of points in a plane into regions, each one of which is anchored by one of the original points in the input set P. A region, Ri is the set of (xy) values that are closer to the anchor point, pi, than any other point in P. Once the Voronoi diagram is computed, these regions can be visualized as shown in Figure 1-7. The gray regions are semi-infinite and you can observe that these match directly to the points on the convex hull. This observation leads to the following algorithm:
1.    Compute the Voronoi diagram for P.
2.    Initialize the hull with the lowest point low in P and start at its associated region.
3.    In clockwise fashion, visit the neighboring region that shares an infinitely long side and add that point to the hull.
4.    Repeat until the original region is encountered.
Computed hull from Voronoi

Summary
An efficient algorithm is often not at all obvious, and very different algorithms may be the best ones to choose for different data sets, different processing environments (such as where you can exploit parallelism), and different goals. This brief introduction has only scratched the surface of algorithms. Hopefully you are now inspired to learn more about these different approaches as well as the variety of algorithms that we have collected in this book. We have implemented all algorithms and provide suitable documentation and explanation to help you understand how to use these algorithms and even implement them yourselves.