exsys

9
Utilizarea variabilelor în EXSYS Vom urmări printr-un exemplu concret cum se pot utiliza variabilele numerice în programul EXSYS. Având în vedere utilizarea cu precădere în domeniul economic al SE este inutil să mai vorbim despre necesitatea ca acestea să poată lucra cu variabile numerice, în fond deciziile în economie se iau în urma comparării unor valori numerice. Problema: Scrieţi un program SE care să recomande un anumit instrument de investiţie financiară dintre următoarele: valută, depozit bancar, acţiuni. Evident, va trebui să facem o comparaţie a câştigurilor în diferitele investiţii. Date de intrare vom avea dobânda bancară anuală, media variaţiei acţiunilor pe o lună, cursul valutar la începutul respectiv la sfârşitul lunii pentru două valute. Pentru a determina investiţia optimă vom compara procentele de câştig lunare din cele trei moduri de investiţie. Vom avea formulele: unde DBL- Dobânda Bancară Lunară, DBA-Dobânda Bancară Anuală, CV – creştere în procente a cursului valutar, CVS-Curs Valutar la sfârşitul perioadei, CVI-Curs Valutar la începutul perioadei (pentru acţiuni considerăm cunoscut procentul de variaţie). Evident, vom recomanda acea investiţie care prezintă cel mai mare procent la câştig. După cum se poate vedea, avem nevoie de câteva variabile numerice pentru a rezolva această problemă. Vom începe o nouă sesiune de lucru cu programul EXSYS. Vom boteza proiectul cu numele invest. Exemplul descris face evaluarea doar pentru situaţiile a două variabile, dobânda bancară şi cursul valutar, studenţilor revenind sarcina de a completa proiectul şi cu a treia variantă pentru investiţii în acţiuni. După parcurgerea paşilor deja cunoscuţi, adică stabilirea proprietăţilor iniţiale (aici vom alege Confidence mode Yes/No), respectiv a soluţiilor (Depozit 1

Upload: razvan-koko

Post on 25-Dec-2015

17 views

Category:

Documents


0 download

DESCRIPTION

exsys inteligenta artificiala

TRANSCRIPT

Page 1: exsys

Utilizarea variabilelor în EXSYS

Vom urmări printr-un exemplu concret cum se pot utiliza variabilele numerice în programul EXSYS. Având în vedere utilizarea cu precădere în domeniul economic al SE este inutil să mai vorbim despre necesitatea ca acestea să poată lucra cu variabile numerice, în fond deciziile în economie se iau în urma comparării unor valori numerice.

Problema: Scrieţi un program SE care să recomande un anumit instrument de investiţie financiară dintre următoarele: valută, depozit bancar, acţiuni. Evident, va trebui să facem o comparaţie a câştigurilor în diferitele investiţii. Date de intrare vom avea dobânda bancară anuală, media variaţiei acţiunilor pe o lună, cursul  valutar la începutul respectiv la sfârşitul lunii pentru două valute.

Pentru a determina investiţia optimă vom compara procentele de câştig lunare din

cele trei moduri de investiţie. Vom avea formulele:          unde DBL-Dobânda

Bancară Lunară, DBA-Dobânda Bancară Anuală,        CV –

creştere în procente a cursului valutar,  CVS-Curs Valutar la sfârşitul perioadei, CVI-Curs Valutar la începutul perioadei (pentru acţiuni considerăm cunoscut procentul de variaţie).

Evident, vom recomanda acea investiţie care prezintă cel mai mare procent la câştig.

După cum se poate vedea, avem nevoie de câteva variabile numerice pentru a rezolva această problemă.

Vom începe o nouă sesiune de lucru cu programul EXSYS. Vom boteza proiectul cu numele invest. Exemplul descris face evaluarea doar pentru situaţiile a două variabile, dobânda bancară şi cursul valutar, studenţilor revenind sarcina de a completa proiectul şi cu a treia variantă pentru investiţii în acţiuni.

După parcurgerea paşilor deja cunoscuţi, adică stabilirea proprietăţilor iniţiale (aici vom alege Confidence mode Yes/No), respectiv a soluţiilor (Depozit bancar, cumpără valută) urmează să definim variabilele. Vom folosi ca şi denumiri notaţiile de la descrierea teoretică.

Pentru  a adăuga variabile selectăm din meniul Rule -> Variable List. În fereastra care apare se face click pe butonul New Variable.

Va apărea o nouă fereastră în care vom stabili pe rând numele variabilei NAME (numele nu poate conţine spaţii sau semne de punctuaţie), întrebarea care va fi afişată pe ecran când se va cere valoarea pentru variabila respectivă (Prompt), o valoare iniţială (INITIALIZE), limitele inferioară (LOWER LIMIT) şi superioară (UPPER LIMIT).

 

1

Page 2: exsys

Vom completa cu datele necesare câmpurile corespunzătoare astfel încât în final să aveţi declarate variabilele necesare. OBSERVAŢIE trebuie să declarăm în mod identic şi variabilele care nu vor fi introduse de utilizator, ci vor fi calculate pe parcurs.

Urmează să efectuăm calculele descrise în partea de introducere. Generatorul EXSYS foloseşte motorul de declaraţie a regulilor pentru a efectua calcule cu variabile în anumite formule. Regula de producţie pentru formule de calcul are în partea de IF declarată lista variabilelor iniţiale, iar în partea de THEN formule de calcul pentru variabilele derivate.

IF x THEN y=f(x) O asemenea scriere se interpretează  astfel: Dacă s-a introdus valoare pentru

variabila x atunci cu valoarea variabilei x calculează y=f(x).

Urmează, deci, regulile. Dacă au fost introduse valori pentru variabile, vom folosi prima regulă pentru testarea acestora. Vom selecta butonul Var./Math care va avea ca efect apariţia  ferestrei Add Formula, unde vom putea introduce formule. În această fereastră dacă dăm click pe butonul Display Variables va apărea fereastra cu lista variabilelor unde cu dublu click transferăm automat variabilele în fereastra de formule.

2

Page 3: exsys

Nu avem nevoie de formule, ci doar de variabile, deci vom introduce în fereastra de formule doar variabila pe care vrem să o testăm. Pentru a trece la fereastra cu reguli, după selectarea variabilei, dăm click pe butonul OK. În final partea IF va conţine cele trei variabile iniţiale.

Motorul de inferenţe va testa dacă s-au introdus valori pentru cele trei variabile. Ordinea apariţiei variabilelor în partea de IF va determina ordinea în care, la rularea programului, acestea vor fi solicitate  utilizatorului.

Urmează ca în partea THEN să calculăm dobânda lunară şi creşterea cursului valutar. Selectăm, deci, THEN şi, în loc de Choice, vom da click din nou pe Var./Math şi vom introduce următoarele două formule:

Puteţi introduce formulele direct de la tastatură, însă, în acest caz, să fiţi atenţi la paranteze şi la scrierea corectă a numelui variabilelor, sau puteţi da click pe Display Variables şi să selectaţi variabilele dorite introducând de la tastatură doar operatorii matematici (recomandat).

După parcurgerea acestor paşi fereastra cu regulă ar trebui să arate astfel:

3

Page 4: exsys

Urmează stabilirea regulilor de producţie care vor da soluţia finală. Vom folosi o singură regulă:

Am renunţat la o a doua regulă prin utilizarea părţii ELSE (altfel) având în vedere că aveam doar două posibilităţi.

Exerciţiu1. Refaceţi programul astfel încât să conţină şi a treia variabilă pentru investiţia în acţiuni. Câte reguli va trebui să scriem?2. Scrieţi un proiect care să stabilească dacă un student are şanse de promovare respectiv de bursă pe baza a trei medii la trei materii. Nota de promovare fiind 5, iar cea de bursă 8.50.

Formule individualizate pentru ierarhizarea soluţiilor în EXSYS

Pe lângă metodele clasice de acordare a punctajelor diferitelor soluţii, respectiv metodele de determinare a punctajului final (Average, Dependent, Independnt), EXSYS pune la dispoziţia utilizatorului şi posibilitatea definirii formulelor proprii. Pentru acesta, în fereastra de opţiuni va trebui să selectăm Costum formula. În acest caz, soluţiile vor fi considerate ca variabile ale căror valoare se va calcula după anumite formule, deci, o soluţie va primi un punctaj calculat cu o formulă individuală.

4

Page 5: exsys

Să refacem exemplul cu investiţia financiară, dar atribuind soluţiilor punctajul corespunzător cu procentul de câştig.

În continuare, efectuaţi paşii până la introducerea regulilor, adică, declaraţi soluţiile, declaraţi variabilele. Nu vom avea nevoie de variabilele CV şi DBL, formulele cu care le calculăm vor fi, de fapt, formulele pentru încredere ale soluţiilor. Ramura de IF va arăta exact ca la cazul precedent, adică va testa dacă s-au introdus valori.

Ramura THEN în schimb va trebui să asigure atribuirea de valori de încredere soluţiilor egale cu procentele diferitelor investiţii.

Pentru că în fereastra de opţiuni am stabilit că soluţia se va calcula cu o formulă individualizată după apăsarea butonului Choice, vom primi o fereastră cu soluţiile disponibile care permite introducerea de formule, şi selectarea unor operatori logici. Vom folosi operatorul = pentru a atribui soluţiei punctajul calculat cu o formulă. Ceilalţi operatori logici sunt utili atunci când o anumită soluţie este refolosită într-o componentă IF a unei alte reguli, pentru a testa îndeplinirea anumitei condiţii de acesta.

În această fereastră se procedează astfel:- se selectează soluţia dorită, - se selectează operatorul de atribuire (sau unul din operatorii logici),- se introduce formula, însă nu putem apela la lista de variabile pentru a ne ajuta munca.

În cazul în care avem formule mari, este de preferat să se introducă o nouă variabilă care să păstreze valoarea formulei şi cu o regulă în plus să se atribuie soluţiei valoarea din acea variabilă suplimentară (în loc să scriem soluţia = a+b scriem c=a+b, soluţia=c). Completăm câmpurile conform figurilor ce urmează (atenţie la PARANTEZE).

5

Page 6: exsys

Regula noastră va arăta astfel:

Iată şi un exemplu de final:

6

Page 7: exsys

Exerciţiu: Completaţi problema precedentă cu o a treia investiţie în fonduri de asigurări.

7