Sunteți pe pagina 1din 9

MINISTERUL EDUCAȚIEI ȘI TINERETULUI AL REPUBLICII MOLDOVA

INSTITUTUL DE ȘTIINȚE PENALE ȘI CRIMINOLOGIE APLICATĂ


FACULTATEA „SERVICII ȘI SECURITATE A PROPRIETĂȚII”
CATEDRA „DREPT”

Raport
Lucrare de laborator
La disciplina: Tehnologii Informaționale
Tema: Sistem informațional ce ține de activitatea S.S.P.

Realizat: Tabîrța Victoria


studentă gr.16.S1.2
Controloat: Pelin Nicolae
profesor universitar interimar

Chișinău 2016
I. Scopul lucrării
Sistem de Consultanță pentru securitate se adresează celor care doresc să se
informeze asupra riscurilor de securitate pe care le pot prezenta locațiile în care
locuiesc sau își desfășoară activitatea și are ca și scop adoptarea unor soluții de
securitate specifice pentru neutralizarea acestor riscuri prin intermediul de
informare a limbajului Prolog.

II. Probele spre soluționare:


1. Studierea bazelor teoretice și practice ce ține de programare a limbajului Prolog.
2. Elaborarea modelului logic.
3. Elaborarea unui program scris în prolog care realizează această ideie.
4. Cercetarea acestui program în scopul asigurării funcționalității lui.
5. Concluzionarea problemei.
1. Studierea bazelor teoretice și practice ce ține de programare a limbajului
Prolog
Începutul programării logice poate fi atribuit lui R. Kowalski și A.
Colmerauruer și se situdiază la începutul anilor ’70. Limbajul Prolog a fost creat de
către Alain Colmerauruer de la Universitatea din Aix-Marseille, în anul 1973.
Numele de PROLOG se trage de la PROgramation et LOGique (Programarea
logică). Este un limbaj de un nivel foarte înalt, un limbaj de inteligență artificială și
este destinat în special realizării sistemelor expert, adică a programelor care sunt
capabile de ’’raționamente’’ , prin inducție sau deducție logică, asemănătoare cu cele
ale unui expert uman.
Prolog este un limbaj logic, descriptiv care permite specificarea spațiului
problemei și a soluției acesteia,operînd în termeni de fapte cunoscute despre
obiectele universului problemei și ale relațiilor existente între aceste obiecte.
Execuția unui program Prolog constă în deducerea implicațiilor dintre aceste fapte
și relații, programul definind astfel o mulțime de consecințe ce reprezintă înțelesul
său semnificația declarativă a programului.
Limbajul Prolog este un limbaj declarativ susținut de o componență
procedurală. Spre deosebire de limbajele precedurale, cum ar fi C sau Pascal, în care
rezolvarea problemei este specificată printr-o serie de pași de execuție sau acțiuni,
într-un limbaj declarativ problema este specificată prin descrierea universului
problemei și a relațiilor sau funcțiilor existente între obiecte din acest univers.
Exemple de astfel de limbaje sunt cele funcționale, de exemplu Lisp, Scheme, ML,
și cele logice, de exemplu Prolog.
Deși inițial a fost gîndit pentru un set restrîns de probleme, Prolog a devenit
cu timpul un limbaj de uz general, fiind o unelta importantă în aplicațiile de
inteligență artificială. Pentru multe probleme, un program Prolog are cam de 10 ori
mai puține linii decît echivalentul lui în Pascal.
În 1983, cercetătorii din Japonia au publicat un plan ambițios de creare a
unor calculatoare de generația a 5-a pentru care Prolog era limbajul de asamblare.
Planul nu a reușit, dar acest proiect a marcat o dezvoltare deosebită a
interpretoarelor și compilatoarelor de Prolog, precum și o creștere mare a numărului
de programatori în acest limbaj.
Multe clase de probleme poate fi rezolvate în Prolog, existînd anumite
categorii care sunt rezovabile mult mai ușor în Prolog decît în orce alt limbaj
procedural. Astfel de probleme sunt în principal cele dedicate prelucrării simbolice
sau care necesită un proces de căutare a soluției într-un spațiu posibil de
transformări ale problemei.
Prezentare limbajului Prolog ce urmează este în principal orientată pe
descrierea limbajului Prolog standard.
Un program Prolog conține următoarele entități:
-fapte despre obiecte și relațiile existente între aceste obiecte
-regului despre obiecte și relațiile dintre acestra care permit deducerea
(inferarea) unor fapte noi în baza celor cunoscute
-întrebări,numite și scopuri, despre obiecte și relațiile acestora, la care
programul răspunde în baza faptelor și regulilor existente.
Limbajul este utilizat de cele mai multe ori pentru rezolvarea problemelor
de inteligență artificială. Au fost deja elaborate, cu ajutorul acestui limbaj,
numeroase sisteme expert din diferite domenii de activitate, de exemplu, în
domeniul, industria electronică și robotică, matematică aplicată etc.
Reieșind, din cele menționate, realizăm că limbajul Prolog este un limbaj,
care ar trebui studiat de toți, în special pentru posibilitățile de dezvoltare a logicii,pe
care acesta le oferă.
Principalele caracteristici ale limbajului PROLOG:
1. Este un limbaj de programare logică centrat pe date. Mai exact, sistemele de
programare logică reduc executarea unui program la căutarea prin respingere a
clauzelor programului împreună cu negația propoziției ce exprimă întrebarea. Se
bazează pe deducția liniară folosind clause Horn. Se folosește pentru a exprima
relații între obiecte și a obține informații relative la obiecte și relațiile dintre ele.
2. Este un limbaj descriptiv. A scrie un program pentru calculator înseamnă 2
lucruri: <CE>: specificarea exactă a rezultatelor dorite; <CUM>: proiectarea
metodei prin care se obțin aceste rezultate.
3. Este folosit în programarea unor aplicații în Inteligența Artificială, dezvoltarea
sistemelor expert, procesarea limbajului natural (inclusive traducere automată)-
procesări de natură logică.
4. Prologul este un limbaj compilat, care utilizează, în locul relațiilor matematice,
relațiile logice între mulțimi de date.
5. Limbajul de programare Prolog posedă Interferențe cu alte limbaje de
programare.
6. Prolog folosește un model de raționament minimal numit “ipoteza lumii
închise’’.
Conform acestui model, tot ceea ce nu este știut de program, deci afirmat explicita
fiind adevărat în program, este considerat fals.
7. În Prolog constanțele se scriu cu literă mică, iar variabilele cu literă mare.

Tipurile de date utilizate înlimbajul Prolog


-Char
-Integer
-Real
-String
-Symbol
Scopuri:
Obținerea rezultatului unui program Prolog se face prin fixarea unor scopuri
care pot fi adevărate sau false, în funcție de conținutul bazei de cunoștințe Prolog.
Scopurile sunt predicate pentru care se dorește aflarea valorii de adevăr. Cum
scopurile pot fi văzute ca întrebări, rezultatul unui program prolog este răspunsul la
o întrebare (sau la o conjuncție de întrebări).
Exemplu:
? - sună (telefonul).
? - sună (telefonul, tare).

2.Elaborarea modelului logic


Sistemul informațional ce ține de activitatea S.S.P este întilnit in toate țările
fiind menite să asigure siguranța la locul de muncă, acasă oricînd este necesar să
asume responsabilitatea cu diplomație și fermitate. S.S.P. pune pe primul loc
consultanța pentru Securitate deoarece datorită acestui serviciu putem oferi soluții
profesioniste de securitate, perfect adaptate la situațiile specifice și cerințele
diferite fiecaruia dintre persoane în parte.
O deosebită importanță este că informația să obțină într-o unitate de timp cît
mai mică, aceasta devine posibil în deosebi cu apariția și utilizarea pe larg a
calculatoareleor. Consultanța pentru securitate se adresează celor care doresc să se
informeze asupra riscurilor de securitate pe care le pot prezenta locațiile în care
locuiesc sau își desfășoară activitatea și are ca și scop adoptarea unor soluții de
securitate specifice pentru neutralizarea acestor riscuri. Consultanța, realizată de
către profesioniști cu experiența dobândită și dovedită de-a lungul anilor care
evaluează nevoile de securitate, fac studii de fezabilitate privind tipul și
dimensiunea serviciilor de securitate pentru a dispune măsuri în concordanță cu
necesitățile persoanei și cerințele legii. Conținutului de activitate S.S.P. a fost
studiată din teorie și experiența specialiștilor ce activează în domeniul dat utilizînd
metodele logicei și programării, calculatorului, programândul în limbajul
PROLOG.

3. Elaborarea programului în Prolog care realizează această ideie

1.Domains-în secțiunea Domains se include tipurile de obiecte declarate, definite


de utilizator.
DOMAINS
nume=symbol

2.Predicates-în care se declară structura faptelor.


3.Clauses-în care se află și elementele.

4.Goal- aici se scriu întrebările. Exemplu: șef (valeriu,bujor), //răspunsul va fi YES


șef (valeriu, cojocaru), //răspuns va fi
NO
Răspunsul NO semnificând doar faptul că nu este în baza de date.

4.Cercetarea programului în scopul asigurării funcționalității lui.


DOMAINS
nume=symbol
functia=string
obligatii=string
stagiu=integer
Predicates
ssp(nume,functia,obligatii,stagiu)
f(integer)
meniu
Clauses
ssp(bujor,sef,coordonator,30).
ssp(tabirta,detectiv,urmarire_exterioara,1).
ssp(cojocaru,securist,siguranta,15).
ssp(ciubotaru,depozitant,depozitare,5).
/*sistemul informational ce tine de activitatea ssp*/
f(1):-
/*Avind nume concret se obtine informatia despre el existenta in baza de
date*/
write("introdu numele"),nl,
readln(X),
ssp(X,Y,Z,M),
write(X,"cu functia",Y,",are obligatia",Z,",cu stagiu",M).
f(1):-meniu.
f(2):-
/*write("daca doresti lista muncitorilor"),nl,
write("atunci introdu numele muncitorului"),nl,
readln(X),nl,*/
ssp(X,_,_,_),
write(X),nl,fail,nl.
f(2):-meniu.
f(3):-
write("care este functia muncitorului"),nl,
ssp(_,Y,_,_),
write(Y),nl,fail,nl.
f(3):-meniu.
f(4):-
write("daca doresti ce obligatie are muncitorul"),nl,
write("atunci introdu numele muncitorului"),nl,
readln(X),nl,
ssp(X,_,Z,_),
write(Z),nl,fail,nl.
f(4):-meniu.
f(5):-
write("ce stagiu are muncitorul"),nl,
ssp(_,_,_,M),
write(M),nl,fail,nl.
f(5):-meniu.
meniu:-
makewindow(1,7,7,"",0,0,25,80),
makewindow(2,7,7,"meniu",1,1,19,39),
makewindow(3,7,7,"dialog",1,41,19,38),
makewindow(4,7,7,"date proiectant",21,1,3,78),
write("Elaborat de catre studenta Tabirta Victoria,gr:16.S.1.2"),
gotowindow(2),
write("1-daca vrei cine,ce,cit sub forma de fraza?"),nl,write("2-daca vrei
lista muncitorilor?"),nl,
write("3-daca vrei sa afli cine,ce functie are?"),nl,
write("4-daca vrei sa afli obligatia muncitorului?"),nl,
write("5-daca vrei sa afli ce stagiu are muncitorul?"),nl,
write("10-exit"),
gotowindow(3),
readint(X),X<>10,f(X).
Cercetarea a avut loc în toate funcțiile pentru a confirma ca să obținem
rezultatele care le-am avut ca scop.

Analogic corect au lucrat toate programele care le-am executat.


5. Concluzionarea problemei.
Concluzie: În procesul de executare a lucrării de laborator Nr.1, în care trebuie
să elaborăm un program constat în crearea de consultanță pentru Securitate și
oferirea soluțiilor profesioniste de securitate, perfect adaptate la situațiile specifice
și cerințele diferite fiecaruia în parte care mai apoi au fost implementate într-un
program Prolog.
În procesul de efectuare a lucrării de laborator nr.1 am obținut urmatoarele
rezultate:
 Am studiat și am înțeles nucleul limbajului de programare Prolog.
 Am găsit și am modelat lista funcționarilor S.S.P.
 Ne-am convins, că arborele funcționează cu certitudine conform
cerințelor necesare.
 Ne-am convins încă o dată, că limbajul Prolog este un limbaj, care ar
trebui studiat de toți, în special pentru posibilitățile de dezvoltare a
logicii, pe care acesta le oferă.
 Elaborarea lucrării de laborator nr.1 m-a ajutat să-mi aprofundez
cunoștințele în domeniul respectiv, lucru practic ce-mi va ajuta la
eleborarea diverselor programe, folosind programarea logică, adica
Prologul.
 Limbajul Prolog este o bază considerabilă pentru elaborarea unor
programe cu viitori specialiști în S.S.P, pentru afi mult mai eficace de a
organiza o bază de date.
În timpul lucrului s-a stăruit să se pătrundă în toate detaliile descrise în scopul
lucrării.
Bibliografie

1. Programarea Logică în proiectarea sistemului informational, Pelin. Nicolae;


2. Documentul nr.4 “Limbajul Prolog” de Pastrama Emil, 2009;
3. “Limbajul Prolog” – Document de Alba V. 2008;
4. https://ru.scribd.com/doc/14475721/Limbaj-Prolog;
5. http://www.cs.ubbcluj.ro/~gabis/plf/Cursuri/2_Prolog.pdf.

S-ar putea să vă placă și