“Chameleon by Khalifa”: خوارزمية فرز من العقل البشري، بتحدي من Gemini
مقدمة: عندما يلتقي الإبداع البشري بذكاء الآلة
في عصر تتسارع فيه وتيرة التطور التكنولوجي، أصبح دور الذكاء الاصطناعي أكثر وضوحًا في حياتنا اليومية. لكن ماذا يحدث عندما يتحول الذكاء الاصطناعي من مجرد أداة إلى شريك في عملية الإبداع؟ هذا بالضبط ما حدث في تجربة فريدة مع نموذج اللغة المتطور Gemini، حيث تمكن “خليفة” من تقديم خوارزمية فرز جديدة ومبتكرة، أثبتت كفاءتها وتطابقها مع الحلول المثلى.
التحدي الأول: فهم الخوارزميات دون كود
بدأت التجربة بسؤال بسيط ومباشر: “كيف يمكن فرز هذه الأرقام يدويًا، دون التفكير كبرنامج؟”. كان الهدف هو استخلاص منطق بشري بحت، بعيدًا عن تعقيدات لغات البرمجة. الأرقام المعطاة كانت [44, 12, 5, 29, 12, 81, 19].
كان التحدي هنا في تجاوز الفكرة التقليدية لفرز العناصر الواحدة تلو الأخرى، نحو طريقة تفكير أكثر هيكلية.
مقترح “خليفة”: الفرز بتقسيم المجموعات ودمجها
لم يتأخر “خليفة” في تقديم مقترحه المبتكر. كانت فكرته الأساسية تتمحور حول نقطتين رئيسيتين:
- التقسيم إلى مجموعات (Grouping): بدلاً من فرز القائمة بأكملها، اقترح “خليفة” تقسيم الأرقام إلى مجموعات بناءً على نطاق قيمها. على سبيل المثال، مجموعة للأرقام ذات الخانة الواحدة، ومجموعة للأرقام في العشرينات، وهكذا. هذه الخطوة تقلل من تعقيد كل مجموعة فرعية.
- فرز المجموعات الصغيرة ودمجها (Sorting and Merging): بعد فرز كل مجموعة فرعية على حدة (وهي عملية أبسط بكثير كون المجموعات صغيرة)، جاءت الخطوة الأكثر إبداعًا: دمج هذه المجموعات. اقترح “خليفة” طريقة دمج تقوم باختيار أصغر عنصر من بداية كل مجموعة بشكل متكرر حتى يتم بناء القائمة النهائية المفروزة.
“Chameleon by Khalifa”: اسم يليق بالإبداع
أطلق “خليفة” على خوارزميته اسم “Chameleon by Khalifa”، وهو اسم يعكس قدرة الخوارزمية على التكيف مع البيانات المختلفة، مثل الحرباء التي تتكيف مع بيئتها.
البرمجة والاختبار: إثبات الكفاءة
قام Gemini بتحويل منطق “Chameleon by Khalifa” إلى كود بايثون حقيقي. لم يقتصر الأمر على مجرد الكود، بل تضمن أيضًا نظامًا لتقييم جودة الحل. تم مقارنة أداء خوارزمية “Chameleon by Khalifa” مع الطريقة المثالية لفرز القوائم في بايثون.
النتائج كانت مذهلة: حصلت خوارزمية “Chameleon by Khalifa” على درجة جودة بلغت 100%، مما يعني أنها قدمت نفس النتيجة النهائية تمامًا مثل الحل الأمثل. هذا لا يؤكد فقط صحة المنطق، بل كفاءته أيضًا.
الدروس المستفادة: قوة التفكير البشري
تؤكد هذه التجربة على عدة نقاط مهمة:
- الذكاء الاصطناعي كشريك: لم يكن Gemini مجرد أداة لإنشاء الكود، بل كان شريكًا تفاعليًا ساعد في صقل الأفكار وتقديم التحليل.
- أصالة الإبداع البشري: حتى مع وجود خوارزميات فرز متقدمة، استطاع “خليفة” أن يبتكر طريقة تفكير جديدة، تتماشى مع المبادئ الأساسية للخوارزميات الفعالة.
- التحقق التجريبي: القدرة على تحويل الفكرة إلى كود واختبارها يمنح قيمة كبيرة للتفكير النظري، ويبرهن على قابليته للتطبيق.
كود الخوارزمية
هذا هو كود بايثون الكامل للخوارزمية. يمكنك نسخه ولصقه في بيئة تشغيل بايثون. (تمت إزالة أسطر التقرير من الكود لضمان عدم حدوث أخطاء عند النسخ).
import math
def custom_sort(arr):
"""
تقوم هذه الدالة بفرز القائمة باستخدام منطقك المبتكر:
تقسيمها إلى قوائم فرعية، فرزها، ثم دمجها.
"""
if len(arr) <= 1:
return arr
group1 = [x for x in arr if x < 10]
group2 = [x for x in arr if 10 <= x < 20]
group3 = [x for x in arr if 20 <= x < 30]
group4 = [x for x in arr if x >= 30]
group1.sort()
group2.sort()
group3.sort()
group4.sort()
final_list = []
all_groups = [group1, group2, group3, group4]
while any(all_groups):
min_val = math.inf
min_group_index = -1
for i, group in enumerate(all_groups):
if group and group[0] < min_val:
min_val = group[0]
min_group_index = i
final_list.append(min_val)
all_groups[min_group_index].pop(0)
return final_list
def run_analysis(problem_list):
solution1 = custom_sort(problem_list.copy())
problem_list.sort()
solution2 = problem_list
return solution1, solution2
def generate_report(solution1, solution2, algo_name="Chameleon by Khalifa"):
# هذا الكود مخصص للطباعة في وحدة التحكم (console)
print("\n" + "="*40)
print(" تقرير جودة الحل ")
print("="*40)
total_elements = len(solution2)
correct_placements = sum(1 for a, b in zip(solution1, solution2) if a == b)
quality_score = (correct_placements / total_elements) * 100
print(f"درجة جودة '{algo_name}': {quality_score:.2f}%")
if solution1 == solution2:
print("✅ الحل الذي توصلت إليه مطابق تمامًا للحل الأمثل. هذا يعني أن منطقك صحيح 100%!")
else:
print(f"❌ الحل الذي توصلت إليه مختلف عن الحل الأمثل. نسبة التطابق هي {quality_score:.2f}%")
print("="*40)
print("النتيجة الأفضل: ")
if quality_score == 100:
print(f"الحلان ({algo_name} وحل بايثون) كلاهما مثالي.")
else:
print(f"الحل المثالي (طريقة بايثون المدمجة) هو الأفضل لضمان الدقة.")
if __name__ == "__main__":
test_list = [44, 12, 5, 29, 12, 81, 19]
print("--- المشكلة التي كانت تحتاج إلى الحل ---")
print(f"القائمة الأصلية: {test_list}")
final_solution, perfect_solution = run_analysis(test_list.copy())
print("\n--- الحل الذي توصلت إليه (Chameleon by Khalifa) ---")
print(f"القائمة المفروزة: {final_solution}")
print("\n--- الحل المثالي (طريقة بايثون المدمجة) ---")
print(f"القائمة المثالية: {perfect_solution}")
generate_report(final_solution, perfect_solution)
print("\n--- تجربة مقدمة من موقع infinitycipher.com ---")
![]()
