You are on page 1of 21

Artificial

Intelligence
Lecture 2

PROLOG
(1)
Ph.D. Eng. Ousama Bahbouh 1
CONTENTS

1. Introduction
gray customer_service_system

2. Programming Language
company

color
has
a_kind_of
ship a_kind_of

3. Representing Facts
a_star_company

a_kind_of part_of

cham

4. Predicates Types
al_amal
a_star_navy
part_of
location

part_of

5. Semantic Networks
p10n12e

Dr. Eng. O. Bahbouh 2


‫‪1. INTRODUCTION:‬‬

‫لغة البرمجة البر‪4‬ولوغ (‪:)PROLOG‬‬


‫تعد لغة البرمجة البرولوغ من أكثر لغات البرمجة المخص صة ألبحاث الذكاء الصنعي‬
‫انتشاراً‪ ،‬وقد اشتقت من الجملة (‪.)Programming in Logic‬‬
‫انطلق ت ال برولوغ م ن جامع ة مرس يليا (‪ )Marseille‬ف ي فرنس ا ف ي س بعينيات القرن‬
‫الماضي بهدف معالجة اللغات الطبيعية لذلك فإن تسميتها الفرنسية هي‪:‬‬
‫(‪.)Programmation et Logique‬‬

‫‪Dr. Eng. O. Bahbouh‬‬ ‫‪3‬‬


‫‪2. PROGRAMMING LANGUAGE:‬‬

‫لغات البرمجة‪:‬‬
‫تقسم لغات البرمجة إلى مجموعتين مختلفتين هما‪:‬‬
‫‪ .1‬لغات برمجة خرجها برمجي‪.‬‬

‫‪ .2‬لغات برمجة خرجها مادي‪.‬‬

‫‪Dr. Eng. O. Bahbouh‬‬ ‫‪4‬‬


‫‪2. PROGRAMMING LANGUAGE:‬‬

‫لغات البرمجة‪:‬‬
‫بالنس بة إل ى المجموع ة األول ى فه ي األكث ر انتشاراً واس تخداماً‪ ،‬حي ث تقس م بدوره ا إل ى‬
‫مجموعتين مختلفتين هما‪:‬‬
‫‪ .1‬لغات برمجة عالية المستوى‪.‬‬

‫‪ .2‬لغات برمجة متدنية المستوى‪.‬‬

‫‪Dr. Eng. O. Bahbouh‬‬ ‫‪5‬‬


‫‪2. PROGRAMMING LANGUAGE:‬‬

‫لغات البرمجة‪:‬‬
‫أيضاً‪ ،‬بالنس بة إل ى لغات البرمج ة عالي ة المس توى فه ي تقس م بدوره ا إل ى مجموعتي ن‬
‫مختلفتين هما‪:‬‬
‫‪ .1‬لغات تقليدية‪.‬‬

‫‪ .2‬لغات الذكاء الصنعي‪.‬‬

‫‪Dr. Eng. O. Bahbouh‬‬ ‫‪6‬‬


‫‪2. PROGRAMMING LANGUAGE:‬‬

‫لغات البرمجة‪:‬‬
‫يكمن الفرق الجوهري بين لغات البرمجة التقليدية‪ ،‬ولغات الذكاء الصنعي فيما يلي‪:‬‬

‫‪ .1‬إ ن اللغات األكث ر انتشاراً ه ي اللغات التقليدي ة الت ي توص ف بأنه ا لغات إجرائي ة‬
‫(‪.)Procedural‬‬
‫‪ .2‬أما لغات الذكاء الصنعي فتوصف بأنها لغات وصفية تصريحية (‪.)Declarative‬‬

‫‪Dr. Eng. O. Bahbouh‬‬ ‫‪7‬‬


‫‪3. REPRESENTING FACTS:‬‬

‫تمثيل الحقائق‪:‬‬
‫لكي يعمل الحاسوب بطريقة ذكية‪ ،‬يجب إعطاؤه المعرفة (‪ )Knowledge‬كي تتكون‬
‫لديه صورة واضحة عما نعرف‪ ،‬وهذا األمر ليس بالسهل أبداً‪.‬‬
‫يوجد صنفان أساسيان للمعارف هما الحقائق (‪ ،)Facts‬واالستدالالت (‪.)Inferences‬‬

‫تشي ر الحقائ ق إل ى أشياء ص حيحة ومعلومات حقيقي ة ال تناق ش كالمس لمات والفرضيات‪.‬‬
‫أما االستدالالت واالستنتاجات فهي طرائق الحصول على معرفة جديدة من الحقائق‪.‬‬
‫‪Dr. Eng. O. Bahbouh‬‬ ‫‪8‬‬
‫‪3. REPRESENTING FACTS:‬‬

‫تمثيل الحقائق‪:‬‬
‫تعتمد البرولوغ على التعابير اإلعالنية (‪ ،)Predicate Expressions‬وهي عبارة عن‬
‫اس م يدع ى معل ن أ و معل ن (‪ ،)Predicate‬متبوع بعدد م ن المعامالت أ و الوس طاء‬
‫(‪ ،)Arguments‬المفصولة عن بعضها بفاصلة وموضوعة ضمن قوسين‪.‬‬
‫‪city(damascus).‬‬
‫‪x(7).‬‬
‫‪fine.‬‬
‫‪father_name(samer, asaad).‬‬ ‫‪Dr. Eng. O. Bahbouh‬‬ ‫‪9‬‬
3. REPRESENTING FACTS:

area(syria, 185180). :‫تمثيل الحقائق‬

day_of_week(friday).
day_of_week(sunday).
first_day_week(sunday).
syria_uni(damas_uni).
damas_uni(damascus).

Dr. Eng. O. Bahbouh 10


4. PREDICATES TYPES:

:‫أنماط المعلنات‬
:)Type Predicate( ‫معلن النوع‬
ship(al_amal).
gray(al_amal).
big(al_amal).

Dr. Eng. O. Bahbouh 11


4. PREDICATES TYPES:

:‫أنماط المعلنات‬
:)Property Predicate( ‫معلن الخاصة‬
color(al_amal, gray). % Property Predicate
size(al_amal, big). % Property Predicate
size(al_amal, big). /* This is a multi-line comment, which must
be closed with a */

Dr. Eng. O. Bahbouh 12


4. PREDICATES TYPES:

:‫أنماط المعلنات‬
part_of(fmee, damas_uni).
:)Relationship Predicate( ‫معلن العالقة‬
part_of(damas_uni, mohe).
part_of(mohe, syrian_gov).
owns(hosam, house).
owns(hosam, car).
a_kind_of(ship, vehicle).
a_kind_of(car, vehicle). Dr. Eng. O. Bahbouh 13
4. PREDICATES TYPES:

:‫أنماط المعلنات‬
:)Database Predicate( ‫معلن قاعدة البيانات‬
ship(al_amal, gray, big, p125).

Dr. Eng. O. Bahbouh 14


4. PREDICATES TYPES:

:‫أنماط المعلنات‬
:)Function Predicate( ‫معلن الوظيفة‬
sum(7, 3, 4, 14).
sqr(64, 8).

Dr. Eng. O. Bahbouh 15


4. PREDICATES TYPES:

:‫أنماط المعلنات‬
:)Probability Predicate( ‫معلن االحتمال‬
ship(al_amal, gray, 0.8).

Dr. Eng. O. Bahbouh 16


‫‪5. SEMANTIC NETWORKS:‬‬

‫شبكات الداللة‪:‬‬
‫تس تخدم لتبس يط عملي ة فه م التعابي ر اإلعالني ة ذات الوس يطين‪ .‬يرم ز للوس يط بدائرة أ و‬
‫شك ل بيضوي‪ ،‬وللمعل ن بس هم ينطل ق م ن دائرة الوس يط األول ويس تقر ف ي دائرة‬
‫الوسيط الثاني‪ ،‬مع كتابة اسم المعلن على السهم‪.‬‬
‫ليكن لدينا البرنامج التالي‪:‬‬

‫‪Dr. Eng. O. Bahbouh‬‬ ‫‪17‬‬


5. SEMANTIC NETWORKS:

:‫شبكات الداللة‬
a_kind_of(al_amal, ship).
a_kind_of(cham, ship).
part_of(al_amal, a_star_navy).
part_of(cham, a_star_navy).
part_of(a_star_navy, a_star_company).
a_kind_of(a_star_company, company).
color(ship, gray).
location(al_amal, p10n12e).
has(a_star_company, customer_service_system).
Dr. Eng. O. Bahbouh 18
‫‪5. SEMANTIC NETWORKS:‬‬

‫شبكات الداللة‪:‬‬
‫يبين الشكل شبكة الداللة للبرنامج السابق‪:‬‬

‫‪Dr. Eng. O. Bahbouh‬‬ ‫‪19‬‬


5. SEMANTIC NETWORKS:

:‫شبكات الداللة‬
a_kind_of(al_amal, ship). gray customer_service_system
company
a_kind_of(cham, ship).
color
part_of(al_amal, a_star_navy). has
a_kind_of
a_kind_of
part_of(cham, a_star_navy). ship a_star_company

part_of(a_star_navy, a_star_company). a_kind_of part_of


a_kind_of(a_star_company, company). cham
al_amal
color(ship, gray). a_star_navy
part_of
location
location(al_amal, p10n12e).
part_of
has(a_star_company, customer_service_system). p10n12e

Dr. Eng. O. Bahbouh 20


K YO U
TH AN

Dr. Eng. O. Bahbouh 21

You might also like