PDA

View Full Version : Agenti SW o intelligenti, sono la stessa cosa?


Matrixbob
05-10-2007, 10:01
Cos'è 1 agente, cosa s'intende, lo sapete?

Io sono confuso. :boh:

fabianoda
05-10-2007, 10:07
Un agente software è la parte basilare dei paradigmi di programmazione basati su agenti. Il software, in questo paradigma, è visto come strutturato da un insieme di agenti razionali (dotati di ragionamento autonomo) che comunicano, collaborano e a volte competono per raggiungere gli obiettivi del sistema.

Un agente intelligente è un modo diverso di vedere la cosa, più orientato all'intelligenza artificiale che all'ingegneria del software (scienza in cui si parla si software agents) - nel senso che un agente intelligente deve avere doti di "intelligenza" (nonostante, in realtà, sia impossibile definire l'intelligenza!!), tipicamente un comportamento non banale.

mad_hhatter
05-10-2007, 10:21
nella prima definizione hai usato l'espressione "agente razionale" e "ragionamento autonomo".... questo rende la definizione ambigua e si confonde con la seconda. Nella prima definizione io modificherei tali espressioni con le seguenti 2:
"agenti autonomi" al posto di agenti razionali,
"comportamento autonomo" invece di ragionamento autonomo.

un agente software, cioè, è semplicemente un programma a sè stante che COLLABORA con altri agenti per svolgere un dato task

Matrixbob
05-10-2007, 10:25
Un agente software è la parte basilare dei paradigmi di programmazione basati su agenti. Il software, in questo paradigma, è visto come strutturato da un insieme di agenti razionali (dotati di ragionamento autonomo) che comunicano, collaborano e a volte competono per raggiungere gli obiettivi del sistema.

Un agente intelligente è un modo diverso di vedere la cosa, più orientato all'intelligenza artificiale che all'ingegneria del software (scienza in cui si parla si software agents) - nel senso che un agente intelligente deve avere doti di "intelligenza" (nonostante, in realtà, sia impossibile definire l'intelligenza!!), tipicamente un comportamento non banale.

Allora qui c'è qualcosa che non torna:

http://img187.imageshack.us/img187/2883/agentcn8.gif

Matrixbob
05-10-2007, 10:30
nella prima definizione hai usato l'espressione "agente razionale" e "ragionamento autonomo".... questo rende la definizione ambigua e si confonde con la seconda. Nella prima definizione io modificherei tali espressioni con le seguenti 2:
"agenti autonomi" al posto di agenti razionali,
"comportamento autonomo" invece di ragionamento autonomo.

un agente software, cioè, è semplicemente un programma a sè stante che COLLABORA con altri agenti per svolgere un dato task

- Non potete sfornarmi 1 definizione UNIVOCA E NON AMBIGUA di cosa sia 1 agente in generale e quei 2 in specifico?

- Magari esistono anche altri tipi di Agenti?

mad_hhatter
05-10-2007, 10:32
- Non potete sfornarmi 1 definizione UNIVOCA E NON AMBIGUA di cosa sia 1 agente in generale e quei 2 in specifico?

- Magari esistono anche altri tipi di Agenti?

te l'ho data...

agente in generale è un'entità autonoma, di qualsiasi tipo

Matrixbob
05-10-2007, 10:34
te l'ho data...

agente in generale è un'entità autonoma, di qualsiasi tipo

Quindi in quella porzione di documento che ho inserito nel 3D c'è 1 errore?

mad_hhatter
05-10-2007, 10:40
Quindi in quella porzione di documento che ho inserito nel 3D c'è 1 errore?

no, assolutamente

un conto è lo stato dell'arte attuale (agenti che comprendono informazioni espresse in una forma comprensibile anche agli umani)... il SOGNO è un agente intelligente che comprende informazioni espresse in linguaggio naturale, non strutturato

fabianoda
05-10-2007, 10:53
no, assolutamente

un conto è lo stato dell'arte attuale (agenti che comprendono informazioni espresse in una forma comprensibile anche agli umani)... il SOGNO è un agente intelligente che comprende informazioni espresse in linguaggio naturale, non strutturato

Beh, evidentemente sai più della comunità di ricerca sugli agenti, visto che non esiste una definizione accettata da tutti. Comunque se davvero vuoi una definizione, eccola qui http://www.iiia.csic.es/~puyol/SEIAD2001/publicacions/iee-review96.pdf

mad_hhatter
05-10-2007, 11:06
Beh, evidentemente sai più della comunità di ricerca sugli agenti, visto che non esiste una definizione accettata da tutti. Comunque se davvero vuoi una definizione, eccola qui http://www.iiia.csic.es/~puyol/SEIAD2001/publicacions/iee-review96.pdf

scusa, ma perché dici questo? mica ho dato una definizione di intelligenza

fabianoda
05-10-2007, 12:16
scusa, ma perché dici questo? mica ho dato una definizione di intelligenza

Scusa, ho quotato la frase sbagliata. Io mi riferivo alla definizione di agente che chiedeva Matrixbbb: un agente non è solo autonomo, in realtà, come puoi vedere da quell'articolo.

Per le correzioni che hai messo sulle mie def. OK, hai ragione, le ho buttate giù in fretta e furia :P e sono sbagliate

Per il frammento di Tim Berners Lee "intelligent agents" sta per "intelligent software agents" - a meno che lui non voglia generalizzare anche ad hardware agents (robots)

fabianoda
05-10-2007, 12:23
Se proprio vogliamo dare una definizione precisa di agente possiamo dare due nozioni di agente, una debole ed una forte:

Agente (debole)
* autonomy: agents operate without the direct intervention of humans or others, and have some kind of control over their actions and internal state;

* social ability: agents interact with other agents (and possibly humans) via some kind of agent-communication language

* reactivity: agents perceive their environment, (which may be the physical world, a user via a graphical user interface, a collection of other agents, the INTERNET, or perhaps all of these combined), and respond in a timely fashion to changes that occur in it;

* pro-activeness: agents do not simply act in response to their environment, they are able to exhibit goal-directed behaviour by taking the initiative.

Agente (forte) = tutte le proprietà precedenti più

* mobility
* benevolence: is the assumption that agents do not have conflicting goals, and that every agent will therefore always try to do what is asked of it
* rationality: is (crudely) the assumption that an agent will act in order to achieve its goals and will not act in such a way as to prevent its goals being achieved - at least insofar as its beliefs permit
* adaptivity: an agent should be able to adjust itself to the habits, working methods and preferences of its user;
* collaboration: an agent should not unthinkingly accept (and execute) instructions, but should take into account that the human user makes mistakes (e.g. give an order that contains conflicting goals), omits important information and/or provides ambiguous information.

---------
Scusate se è mezzo in italiano mezzo in inglese, ma ho preso da più fonti. Spero che queste caratteristiche bastino per definire un agente

Matrixbob
05-10-2007, 15:17
OK, elaboro le informazioni che mi avete dato, anche perchè dal Wiki:
http://en.wikipedia.org/wiki/Software_agent
, non si capisce molto (o almeno io). :boh:

fabianoda
05-10-2007, 15:41
Effettivamente il wiki è un po' confusionario in questo caso.
Comunque, se vuoi la definizione di agente, ci sono le definizioni classiche - debole e forte.
Per agente intelligente credo vada bene quella che c'è sul wiki invece, cioè aggiungere proprietà di learning e adaptation.

Non ho comunque capito a che cosa ti serva esattamente questa definizione, se ce lo dici forse possiamo dirti meglio. Cioè, la definizione in sè è utile se devi scrivere un qualcosa sugli agenti - ma in altri casi può essere meglio darti un esempio..

Matrixbob
05-10-2007, 15:47
Effettivamente il wiki è un po' confusionario in questo caso.
Comunque, se vuoi la definizione di agente, ci sono le definizioni classiche - debole e forte.
Per agente intelligente credo vada bene quella che c'è sul wiki invece, cioè aggiungere proprietà di learning e adaptation.

Non ho comunque capito a che cosa ti serva esattamente questa definizione, se ce lo dici forse possiamo dirti meglio. Cioè, la definizione in sè è utile se devi scrivere un qualcosa sugli agenti - ma in altri casi può essere meglio darti un esempio..

Quello screenshot di documento appartiene alla mia tesi.
Fa parte dello stato dell'arte del universo Web 2.0.

Volevo essere sceintificamente certo che la definizione di agente non fosse confusa o ricondotta alla conoscenze del lettore.
Quindi volevo mettere una nota a piè di pagina esaustiva.

Ma voi mi state bombardando di definizioni troppo specifiche andando a differenziare nel infinitesimo, mentre a me servirebbe una classificazione + generica e grossolana.

:)

Matrixbob
05-10-2007, 16:01
Alla fine come nota ho scritto questo:
l'agente software è un entità in grado di comunicare, collaborare e competere con altri agenti software per raggiungere un obbiettivo

va bene?

fabianoda
05-10-2007, 17:46
"Un agente software è un'entità autonoma, in grado di comunicare, collaborare e/o competere con altri agenti software per raggiungere i propri obiettivi, o gli obiettivi del sistema di cui fanno parte."

Se mah_hhatter è d'accordo, credo questa def. racchiuda un po' tutto - nel tuo caso (semantic web) la caratteristica più importante è la comunicazione..

Matrixbob
05-10-2007, 17:48
"Un agente software è un'entità autonoma, in grado di comunicare, collaborare e/o competere con altri agenti software per raggiungere i propri obiettivi, o gli obiettivi del sistema di cui fanno parte."

Se mah_hhatter è d'accordo, credo questa def. racchiuda un po' tutto - nel tuo caso (semantic web) la caratteristica più importante è la comunicazione..

Aveva detto autonomo NO, quindi io l'ho escuso.

mad_hhatter
05-10-2007, 18:19
Aveva detto autonomo NO, quindi io l'ho escuso.

veramente avevo insistito proprio sul fatto che fosse autonomo, quindi direi autonomo SI

la def di fabianoda va bene, ma non serve che io sia d'accordo: è corretta e basta :D

Matrixbob
05-10-2007, 18:23
"Un agente software è un'entità autonoma, in grado di comunicare, collaborare e/o competere con altri agenti software per raggiungere i propri obiettivi, o gli obiettivi del sistema di cui fanno parte."

Ah ok, vada x quella allora!
>> Hwupgrade's forum aproved <<



:sofico:

k0nt3
05-10-2007, 20:39
EDIT
avevo risposto a un'altra domanda :fagiano: magari poi riposto :p

k0nt3
06-10-2007, 09:19
per agente intelligente in generale si intende un'entità che interagisce con un ambiente in maniera razionale, e per fare ciò di solito sono necessari dei trasduttori (quali sensori o attuatori).
inoltre normalmente si distingue tra "mente" e "corpo" dell'agente, in senso abbastanza metaforico, e solitamente è conveniente pensare al corpo come una parte dell'ambiente (ambiente interno).
ora nel caso degli agenti software non ci sono trasduttori, perchè l'informazione contenuta nell'ambiente è già in formato digitale, mentre la distinzione tra mente e corpo non ha più senso perchè è per così dire tutto "mente", cioè software.
in pratica gli agenti software sono un sotto-sotto-insieme degli agenti intelligenti.
l'affermazione di berners-lee è quindi corretta, ma è un passo ulteriore rispetto a quello che siamo abituati a vedere oggi, in quanto lui auspica l'utilizzo del web semantico da parte di agenti in generale, quindi anche robot ecc.., non solo agenti software (che è quanto si sta materializzando in questi anni)
spero di non alimentare i tuoi dubbi :D

k0nt3
06-10-2007, 09:23
Beh, evidentemente sai più della comunità di ricerca sugli agenti, visto che non esiste una definizione accettata da tutti. Comunque se davvero vuoi una definizione, eccola qui http://www.iiia.csic.es/~puyol/SEIAD2001/publicacions/iee-review96.pdf
articolo un pò vecchiotto.. non è molto significativo in un campo in continua evoluzione

Per il frammento di Tim Berners Lee "intelligent agents" sta per "intelligent software agents" - a meno che lui non voglia generalizzare anche ad hardware agents (robots)
penso proprio che sia questo il punto :)
"intelligent agents" è un termine più generico di "software agents"

fabianoda
06-10-2007, 09:50
articolo un pò vecchiotto.. non è molto significativo in un campo in continua evoluzione


penso proprio che sia questo il punto :)
"intelligent agents" è un termine più generico di "software agents"

Articolo vecchiotto? Può essere, comunque la definizione di software agent comunemente accettata è quella. Prendi pure un qualsiasi articolo sottomesso alle conferenze 2007 e vedrai che è quella... :)

In realtà a me non piace il termine di intelligent agent, perché non rivela nulla sulla nozione di intelligenza. Quando puoi dire che un agente è dotato di intelligenza anziché di semplice reazione a degli stimoli? (domanda senza risposta, attualmente)

k0nt3
06-10-2007, 10:01
personalmente quello che so deriva dalla lettura di "Artificial Intelligence - a modern approach" (2nd ED.) di Russell e Norvig
in questo libro per intelligenza si intende una di queste 4 cose
http://img364.imageshack.us/img364/1930/intelligencetf3.png (http://img364.imageshack.us/my.php?image=intelligencetf3.png)
mi sembra un quadro abbastanza completo

fabianoda
06-10-2007, 10:33
Quello è il punto di vista AI. Però il concetto di agente ha origini multidisciplinari, di cui AI è solo una. La loro definizione (che in buona parte deriva dagli anni 80 addirittura) non è sbagliata, ma è limitata.
La comunità di ricerca ad agenti da tempo si è separata da quella AI - poi la scelta della definizione è soggettiva, comunque.

k0nt3
06-10-2007, 11:20
si hai ragione, ovviamente a seconda del campo in cui operi trovi diverse definizioni di agente e di intelligenza.
ma perchè dici che è limitata? è vero che alcune delle definizioni che ho citato sono vecchie, ma la visione d'insieme è piuttosto recente.

per il resto penso che per quanto riguarda gli agenti software nel web semantico, quella data in precedenza è una definizione più che accettabile

fabianoda
06-10-2007, 11:46
si hai ragione, ovviamente a seconda del campo in cui operi trovi diverse definizioni di agente e di intelligenza.
ma perchè dici che è limitata? è vero che alcune delle definizioni che ho citato sono vecchie, ma la visione d'insieme è piuttosto recente.

per il resto penso che per quanto riguarda gli agenti software nel web semantico, quella data in precedenza è una definizione più che accettabile

No beh, intendo che quella è la definizione di intelligenza. Ma quella non è l'unica capacità richiesta ad un agente. Una fra le più importanti e discusse è la cosiddetta proactivesss, ovvero la capacità (innata dell'essere umano) di prendere iniziative senza espliciti eventi esterni, basandosi solo su "sentimenti" (non so se sia la parola giusta, forse sensazioni) interne.

Visto che la discussione è sugli agenti, è per questo che dicevo che la definizione di intelligenza è limitata, perché non copre tutto il concetto di agente. Però è davvero una bella discussione, piuttosto filosofica :)

k0nt3
06-10-2007, 12:03
concordo :) quando si parla di intelligenza artificiale non si possono proprio evitare certi argomenti filosofici
in sostanza la definizione di agente data dall'intelligenza artificiale è troppo generica se ho capito bene.

ps. sarebbe bello però se si pensasse a una standardizzazione delle definizioni, ma ci vorrà molto tempo presumo :stordita:

mad_hhatter
06-10-2007, 12:31
ps. sarebbe bello però se si pensasse a una standardizzazione delle definizioni, ma ci vorrà molto tempo presumo :stordita:

il problema sta proprio qui: questioni come cos'e' l'intelligenza e la razionalita' sono questioni prettamente filosofiche prima ancora che scientifiche...

il fatto che in AI troppo spesso si identifichi l'intelligenza con la razionalita' secondo me e' uno dei limiti piu' forti, anche se e' dettato dai limiti conoscitivi cui soi stessi siamo sottoposti per il momento

in ogni caso anche io tendo a mettere in risalto molto piu' la proattivita' rispetto alle altre facolta'... credo sia il tratto che maggiormente contraddistingue l'essere umano dalla macchina (limitatamente all'insieme di facolta' che stiamo considerando qui)

fabianoda
06-10-2007, 12:47
il problema sta proprio qui: questioni come cos'e' l'intelligenza e la razionalita' sono questioni prettamente filosofiche prima ancora che scientifiche...

il fatto che in AI troppo spesso si identifichi l'intelligenza con la razionalita' secondo me e' uno dei limiti piu' forti, anche se e' dettato dai limiti conoscitivi cui soi stessi siamo sottoposti per il momento

in ogni caso anche io tendo a mettere in risalto molto piu' la proattivita' rispetto alle altre facolta'... credo sia il tratto che maggiormente contraddistingue l'essere umano dalla macchina (limitatamente all'insieme di facolta' che stiamo considerando qui)

Quoto sulla proattività.

Per quanto riguarda le definizioni, c'è gente che vive sul dare definizioni, vedi IEEE. Se tu pensi a qualunque cosa che sia riguardante l'informatica, stai sicuro che IEEE ha una definizione - che ovviamente non è accessibile gratutitamente, ma solo a pagamento :)

k0nt3
06-10-2007, 13:13
il fatto che in AI troppo spesso si identifichi l'intelligenza con la razionalita' secondo me e' uno dei limiti piu' forti, anche se e' dettato dai limiti conoscitivi cui soi stessi siamo sottoposti per il momento

se in AI spesso di identifica l'intelligenza con la razionalità non è per limitazioni nella teoria alla base dell'AI, ma banalmente per limitazioni tecnologiche.
comunque sia mi sembra altamente improbabile che il concetto di proattività non ricada in una delle 4 definizioni di intelligenza che ho postato prima.
qualcuno ha dei link interessanti sulla proattività? :fagiano:

fabianoda
06-10-2007, 13:27
Avevo ricevuto da una mailing list una discussione molto interessante su questo tema, fra alcuni ricercatori piuttosto famosi. Adesso vedo se lo trovo...

mad_hhatter
06-10-2007, 22:46
se in AI spesso di identifica l'intelligenza con la razionalità non è per limitazioni nella teoria alla base dell'AI, ma banalmente per limitazioni tecnologiche.
comunque sia mi sembra altamente improbabile che il concetto di proattività non ricada in una delle 4 definizioni di intelligenza che ho postato prima.
qualcuno ha dei link interessanti sulla proattività? :fagiano:

non e' tanto una limitazione tecnilogica, quanto piuttosto una vera e propria limitazione gnoseologica: non siamo ancora arrivati a definire formalmente l'intelligenza.

mad_hhatter
06-10-2007, 22:47
Quoto sulla proattività.

Per quanto riguarda le definizioni, c'è gente che vive sul dare definizioni, vedi IEEE. Se tu pensi a qualunque cosa che sia riguardante l'informatica, stai sicuro che IEEE ha una definizione - che ovviamente non è accessibile gratutitamente, ma solo a pagamento :)

come fai a studiare un fenomeno se prima non circoscrivi e definisci l'oggetto del tuo studio?

fabianoda
07-10-2007, 09:26
come fai a studiare un fenomeno se prima non circoscrivi e definisci l'oggetto del tuo studio?

Non sto dicendo che non serva definire l'oggetto di studio. Sto dicendo che non c'è una definizione standard - ed inoltre che ci sono enti come l'IEEE che navigano su questo fatto sfornando discussioni a pagamento. Io non userei il concetto di fenomeno come in fisica però, poiché l'informatica è un mondo prevalentemente virtuale, e comunque i "fenomeni" informatici non sono naturali, ma artificiali.

k0nt3
07-10-2007, 10:38
non e' tanto una limitazione tecnilogica, quanto piuttosto una vera e propria limitazione gnoseologica: non siamo ancora arrivati a definire formalmente l'intelligenza.
la definizione è e sarà sempre un pò sfumata per ovvi motivi, quello che volevo dire è che la ricerca dell'AI si concentra sulla razionalità perchè è l'unica strategia che da un qualche risultato soddisfacente. lavorare sull'intelligenza di tipo umano attualmente non è fattibile per motivi di potenza di calcolo e probabilmente anche di architettura dei dispositivi usati.
mi piacerebbe sapere cosa ne pensi delle 4 definizioni di intelligenza di cui sopra :D

- pensare come gli umani: ha a che fare con gli studi cognitivi e si prefigge lo scopo di usare gli stessi meccanismi che governano la mente umana
- agire come gli umani: fare in modo che un possibile operatore umano non sia in grado di distinguere se il proprio "interlocutore" è un altro umano o una macchina dotata di intelligenza
- pensare in maniera razionale: usare dei modelli (tipicamente logici) per rappresentare la realtà e poter quindi effettuare dei ragionamenti tramite inferenza
- agire in maniera razionale: assumere comportamenti che massimizzano una qualche cifra di merito

se la proattività non fa parte di uno di questi tipi di intelligenza vorrei saperne di più :fagiano:
ogni link in vostro possesso è d'obbligo :O

mad_hhatter
07-10-2007, 14:03
la definizione è e sarà sempre un pò sfumata per ovvi motivi, quello che volevo dire è che la ricerca dell'AI si concentra sulla razionalità perchè è l'unica strategia che da un qualche risultato soddisfacente. lavorare sull'intelligenza di tipo umano attualmente non è fattibile per motivi di potenza di calcolo e probabilmente anche di architettura dei dispositivi usati.
mi piacerebbe sapere cosa ne pensi delle 4 definizioni di intelligenza di cui sopra :D

- pensare come gli umani: ha a che fare con gli studi cognitivi e si prefigge lo scopo di usare gli stessi meccanismi che governano la mente umana
- agire come gli umani: fare in modo che un possibile operatore umano non sia in grado di distinguere se il proprio "interlocutore" è un altro umano o una macchina dotata di intelligenza
- pensare in maniera razionale: usare dei modelli (tipicamente logici) per rappresentare la realtà e poter quindi effettuare dei ragionamenti tramite inferenza
- agire in maniera razionale: assumere comportamenti che massimizzano una qualche cifra di merito

se la proattività non fa parte di uno di questi tipi di intelligenza vorrei saperne di più :fagiano:
ogni link in vostro possesso è d'obbligo :O

presumo rientri nella seconda: agire come un umano... o anche la prima. di fatto la proattivita' e' cio' che contraddistingue la volontarieta' di un atto.

fabianoda
08-10-2007, 08:09
la definizione è e sarà sempre un pò sfumata per ovvi motivi, quello che volevo dire è che la ricerca dell'AI si concentra sulla razionalità perchè è l'unica strategia che da un qualche risultato soddisfacente. lavorare sull'intelligenza di tipo umano attualmente non è fattibile per motivi di potenza di calcolo e probabilmente anche di architettura dei dispositivi usati.
mi piacerebbe sapere cosa ne pensi delle 4 definizioni di intelligenza di cui sopra :D

- pensare come gli umani: ha a che fare con gli studi cognitivi e si prefigge lo scopo di usare gli stessi meccanismi che governano la mente umana
- agire come gli umani: fare in modo che un possibile operatore umano non sia in grado di distinguere se il proprio "interlocutore" è un altro umano o una macchina dotata di intelligenza
- pensare in maniera razionale: usare dei modelli (tipicamente logici) per rappresentare la realtà e poter quindi effettuare dei ragionamenti tramite inferenza
- agire in maniera razionale: assumere comportamenti che massimizzano una qualche cifra di merito

se la proattività non fa parte di uno di questi tipi di intelligenza vorrei saperne di più :fagiano:
ogni link in vostro possesso è d'obbligo :O

Direi pure io la seconda... però è troppo semplicistico dire "agire come gli umani" perché non definisci nulla, se non dici cosa significhi agire come un umano. Ed infatti le definizioni sulla base di un insieme di proprietà (la weak e strong definition, ad esempio) servono a questo..

^TiGeRShArK^
08-10-2007, 10:28
te l'ho data...

agente in generale è un'entità autonoma, di qualsiasi tipo

Non è detto.
L'autonomia è solo una delle caratteristiche degli agenti ma non è nè l'unica nè condizione necessaria e sufficiente.
le caratteristiche principali degli agenti sono:
1) autonomia
2) proattività
3) cooperazione
4) adattamento
5) apprendimento

di queste caratteristiche le due principali, che definiscono a tutti gli effetti un'agente, sono le ultime due, ovvero la capacità di adattarsi all'ambiente esterno e di apprendere.
Se non erro dovrebbe esserci anche qualche altra caratteristica oltre quelle citate e tutte insieme constribuiscono a caratterizzare e classificare i vari tipi di agenti.

P.S. ho appena trovato una pagina di wikipedia che dovrebbe spiegare decentemente il concetto.. http://en.wikipedia.org/wiki/Software_agent
Quello che ho scritto erano ricordi piuttosto ancestrali, ma al link fornito è spiegato piuttosto bene :p

EDIT ho visto che avevate già rsp :D

fabianoda
08-10-2007, 10:34
Non è detto.
L'autonomia è solo una delle caratteristiche degli agenti ma non è nè l'unica nè condizione necessaria e sufficiente.
le caratteristiche principali degli agenti sono:
1) autonomia
2) proattività
3) cooperazione
4) adattamento
5) apprendimento

di queste caratteristiche le due principali, che definiscono a tutti gli effetti un'agente, sono le ultime due, ovvero la capacità di adattarsi all'ambiente esterno e di apprendere.
Se non erro dovrebbe esserci anche qualche altra caratteristica oltre quelle citate e tutte insieme constribuiscono a caratterizzare e classificare i vari tipi di agenti.

P.S. ho appena trovato una pagina di wikipedia che dovrebbe spiegare decentemente il concetto.. http://en.wikipedia.org/wiki/Software_agent
Quello che ho scritto erano ricordi piuttosto ancestrali, ma al link fornito è spiegato piuttosto bene :p

EDIT ho visto che avevate già rsp :D

già, avevamo risposto :)

comunque, non credo si possano identificare quali siano le caratteristiche più importanti: in certi contesti può essere importante la comunicazione (vedi agenti x semantic web), in altri la proattività (vedi agenti che fanno trading in borsa), in altri l'adattamento... nella comunità di ricerca ad agenti ognuno dice che la propria prospettiva è la più importante o più interessante, ma la realtà è che ognuna è interessante (o inutile, per chi non crede negli agenti :P) per vari motivi!!

mad_hhatter
08-10-2007, 10:35
Non è detto.
L'autonomia è solo una delle caratteristiche degli agenti ma non è nè l'unica nè condizione necessaria e sufficiente.
le caratteristiche principali degli agenti sono:
1) autonomia
2) proattività
3) cooperazione
4) adattamento
5) apprendimento

di queste caratteristiche le due principali, che definiscono a tutti gli effetti un'agente, sono le ultime due, ovvero la capacità di adattarsi all'ambiente esterno e di apprendere.
Se non erro dovrebbe esserci anche qualche altra caratteristica oltre quelle citate e tutte insieme constribuiscono a caratterizzare e classificare i vari tipi di agenti.

P.S. ho appena trovato una pagina di wikipedia che dovrebbe spiegare decentemente il concetto.. http://en.wikipedia.org/wiki/Software_agent
Quello che ho scritto erano ricordi piuttosto ancestrali, ma al link fornito è spiegato piuttosto bene :p

EDIT ho visto che avevate già rsp :D

i 5 punti che hai citato si addicono più a un agente intelligente che a un agente generico

^TiGeRShArK^
08-10-2007, 23:43
i 5 punti che hai citato si addicono più a un agente intelligente che a un agente generico
ehmmm..:mbe:
Perchè.. di cosa stiamo parlando? :mbe:
Per me di agenti intelligenti.. xkè se fossero stupidi non ne vedrei l'utilità :p

scherzi a parte...
per me un agente software è un tipo particolare di agente intelligente.
Tanto è vero che sarebbe "facilmente" implementabile in hardware :D
E cmq quello che ho citato sono solo vaghi ricordi della mia tesi..
però sinceramente non mi pare di avere la memoria troppo fottuta :mbe:
Da quello che ricordo gli agenti software non erano altro che una sottocategoria dell'immensa categoria degli agenti intelligenti (che è tanta ampia che probabilmente rientrerei anche io... se non fosse per la mia stupidità genetica :asd: )

k0nt3
09-10-2007, 08:06
presumo rientri nella seconda: agire come un umano... o anche la prima. di fatto la proattivita' e' cio' che contraddistingue la volontarieta' di un atto.

Direi pure io la seconda... però è troppo semplicistico dire "agire come gli umani" perché non definisci nulla, se non dici cosa significhi agire come un umano. Ed infatti le definizioni sulla base di un insieme di proprietà (la weak e strong definition, ad esempio) servono a questo..

tornando sulla proattività.. ho cercato su internet ma ho trovato poca roba. comunque sia secondo me si tratta di razionalità ;)
escludo senza dubbio "pensare come gli umani" perchè sfido chiunque a implementare un cervello umano :asd:
escludo anche la seconda perchè confido nel fatto che questa proattività non sia una capacità innata del software, ma sia un modello che approssima la nostra capacità innata. per questo motivo la risposta corretta sarebbe "pensare in maniera razionale" IMHO
sempre ricordando che le definizioni sono soggette a interpretazioni diverse a seconda della disciplina :p

mad_hhatter
09-10-2007, 08:38
ehmmm..:mbe:
Perchè.. di cosa stiamo parlando? :mbe:
Per me di agenti intelligenti.. xkè se fossero stupidi non ne vedrei l'utilità :p

scherzi a parte...
per me un agente software è un tipo particolare di agente intelligente.
Tanto è vero che sarebbe "facilmente" implementabile in hardware :D
E cmq quello che ho citato sono solo vaghi ricordi della mia tesi..
però sinceramente non mi pare di avere la memoria troppo fottuta :mbe:
Da quello che ricordo gli agenti software non erano altro che una sottocategoria dell'immensa categoria degli agenti intelligenti (che è tanta ampia che probabilmente rientrerei anche io... se non fosse per la mia stupidità genetica :asd: )

io non classificherei gli agenti software come sottocategoria degli agenti intelligenti... posto che per agenti intelligenti intendiamo agenti software intelligenti, io classificherei questi ultimi come sotoclasse dei primi.

esistono agenti software che non sono intelligenti, almeno secondo una delle definizioni di intelligenza...

cosa intendi per "tanto è vero che rarebbe facilmente implementabile in hw"? cosa dimostra?

mad_hhatter
09-10-2007, 08:42
tornando sulla proattività.. ho cercato su internet ma ho trovato poca roba. comunque sia secondo me si tratta di razionalità ;)
escludo senza dubbio "pensare come gli umani" perchè sfido chiunque a implementare un cervello umano :asd:
escludo anche la seconda perchè confido nel fatto che questa proattività non sia una capacità innata del software, ma sia un modello che approssima la nostra capacità innata. per questo motivo la risposta corretta sarebbe "pensare in maniera razionale" IMHO
sempre ricordando che le definizioni sono soggette a interpretazioni diverse a seconda della disciplina :p

non sono d'accordo... razionalità e proattività sono due cose distinte e indipendenti: io posso agire proattivamente e pur tuttavia in maniera irrazionale... viceversa posso agire in modo razionale ma sempre e soltanto in reazione a uno stimolo esterno

proprio perchè la razionalità è insita nel modello matematico che soggiace alla programmazione ritengo il ragionamento razionale quello meno interessante ai fini dell'intelligenza artificiale

k0nt3
09-10-2007, 09:38
ma come si fa a implementare un agente irrazionale? :fagiano: se non c'è un modello approssimante sotto il ragionamento.. come fai a ragionare?

mad_hhatter
09-10-2007, 10:10
ma come si fa a implementare un agente irrazionale? :fagiano:

è questo il gigantesco limite dell'AI


se non c'è un modello approssimante sotto il ragionamento.. come fai a ragionare?

perdonami, ma non ho capito

fabianoda
09-10-2007, 10:24
Fermi, nessuna definizione parla di irrazionalità. Guardatele bene..

k0nt3
09-10-2007, 13:29
dipende.. se consideri l'uomo irrazionale allora comportarsi come l'uomo significa essere irrazionale. ma penso che ora stiamo a livelli filosofici :stordita: :D
l'unica cosa che non mi è chiara è perchè dite che è un limite dell'AI.. i limiti come ho già detto sono tecnologici, non teorici. quale altra disciplina non ha questi limiti?

mad_hhatter
09-10-2007, 13:52
@fabianoda
quella dell'irrazionalità era una mia divagazione

@kont3
sì, è un discorso prettamente filosofico e psicologico... e per questo intendo che non è un limite tecnologico, ma teorico.

il limite dell'AI è voler identificare intelligenza e razionalità, sia pure solo per necessità di semplificazione

k0nt3
09-10-2007, 14:03
il limite dell'AI è voler identificare intelligenza e razionalità, sia pure solo per necessità di semplificazione
intendi identificare l'intelligenza con la razionalità? in realtà è chiaro dalle 4 definizioni che la razionalità è contrapposta all'intelligenza (di tipo umano). non per niente si parla in maniera distinta di "pensare in maniera razionale" e "pensare come un umano". ora se fosse possibile costruire macchine che pensano come gli uomini non staremmo qui a discuterne e le macchine "razionali" non sarebbe molto interessanti. ma il problema è che non è possibile, o perlomeno nessuno ci è riuscito, quindi ci si concentra su quello che è possibile ovvero gli agenti razionali. ma come vedi l'AI non prevede solo quel tipo di intelligenza.

mad_hhatter
09-10-2007, 14:13
intendi identificare l'intelligenza con la razionalità? in realtà è chiaro dalle 4 definizioni che la razionalità è contrapposta all'intelligenza (di tipo umano). non per niente si parla in maniera distinta di "pensare in maniera razionale" e "pensare come un umano". ora se fosse possibile costruire macchine che pensano come gli uomini non staremmo qui a discuterne e le macchine "razionali" non sarebbe molto interessanti. ma il problema è che non è possibile, o perlomeno nessuno ci è riuscito, quindi ci si concentra su quello che è possibile ovvero gli agenti razionali. ma come vedi l'AI non prevede solo quel tipo di intelligenza.

che lo preveda ok, ma resta un limite visto che non esiste a oggi un'intelligenza artificiale che non sia basata sulla definizione di intelligenza come razionalità...

è un problema teorico, scientifico, cognitivo, come vuoi chiamarlo, ma resta il fatto che è un problema e un limite. almeno nell'ottica di una definizione di intelligenza come comunemente la si intende

è anche vero che fin'ora l'AI è stata applicata alla soluzione di problemi pratici, il che rende l'aspetto emozionale/irrazionale un qualcosa di superfluo. ma in questo l'AI rischia di sfornare soltanto "software molto complessi".

Nota che questo è solo un mio punto di vista, critico e disilluso.

Matrixbob
09-10-2007, 16:01
Per andare nello specifico di quello che + m'interessa al momento:
1 Agente Web che fa interazione attraverso scambi di messaggi quale sarebbe secondo voi?

k0nt3
09-10-2007, 17:05
che lo preveda ok, ma resta un limite visto che non esiste a oggi un'intelligenza artificiale che non sia basata sulla definizione di intelligenza come razionalità...

è un problema teorico, scientifico, cognitivo, come vuoi chiamarlo, ma resta il fatto che è un problema e un limite. almeno nell'ottica di una definizione di intelligenza come comunemente la si intende

è anche vero che fin'ora l'AI è stata applicata alla soluzione di problemi pratici, il che rende l'aspetto emozionale/irrazionale un qualcosa di superfluo. ma in questo l'AI rischia di sfornare soltanto "software molto complessi".

Nota che questo è solo un mio punto di vista, critico e disilluso.
la disillusione è d'obbligo visto che nonostante i progressi siamo ancora all'età della pietra :D ma ugualmente non capisco dove vuoi arrivare sminuendo il lavoro svolto sull'AI :fagiano: è tutto solo ed esclusivamente quello che abbiamo per dare "intelligenza" ai nostri software.
un paio di input sono http://en.wikipedia.org/wiki/Cognitive_science
e http://en.wikipedia.org/wiki/Philosophy_of_artificial_intelligence

mad_hhatter
09-10-2007, 17:36
Per andare nello specifico di quello che + m'interessa al momento:
1 Agente Web che fa interazione attraverso scambi di messaggi quale sarebbe secondo voi?

dipende, potrebbe essere un banale automa come pure un'entità classificabile come intelligente

addirittura la cosa dipende da quale definizione di intelligenza vuoi adottare...

mad_hhatter
09-10-2007, 17:44
la disillusione è d'obbligo visto che nonostante i progressi siamo ancora all'età della pietra :D ma ugualmente non capisco dove vuoi arrivare sminuendo il lavoro svolto sull'AI :fagiano: è tutto solo ed esclusivamente quello che abbiamo per dare "intelligenza" ai nostri software.
un paio di input sono http://en.wikipedia.org/wiki/Cognitive_science
e http://en.wikipedia.org/wiki/Philosophy_of_artificial_intelligence

non voglio sminuire nulla, assolutamnete!! il fatto è che nel momento in cui dico che un software è intelligente perché possiede, per esempio:
- la caratteristica di essere proattivo (che tecnologicamente viene implementata comunque come una reazione: a un timer, a un evento)
- la capacità di effettuare deduzioni logiche
- la capacità di adattarsi

lo fa sempre e comuqnue perché è programmato per farlo... è un gran bel pezzo di software, complesso fin che vuoi, che a prima vista può dare l'idea di un qualcosa di intelligente, ma che alla fine è solo un algoritmo prestabilito.

tutto ciò non sminuisce il suo valore come software e non intacca il valore della ricerca che ha portato a un risultato comunque di rilievo, ma delude me quando penso che il segno distintivo dell'intelligenza umana è la volontarietà dell'atto intellettivo

Matrixbob
09-10-2007, 17:53
dipende, potrebbe essere un banale automa come pure un'entità classificabile come intelligente

addirittura la cosa dipende da quale definizione di intelligenza vuoi adottare...
Ma scusa, un browser (e quindi 1 client) non può essere 1 agente?
E' indipendente, scambia messaggi col protocollo HTTP ed è quasi stupido. :)

k0nt3
09-10-2007, 17:58
Ma scusa, un browser (e quindi 1 client) non può essere 1 agente?
E' indipendente, scambia messaggi col protocollo HTTP ed è quasi stupido. :)

io direi che è completamente stupido :fagiano: in genere un browser è un'applicazione, non un agente intelligente IMHO

k0nt3
09-10-2007, 17:58
quello di creare macchine che pensano come l'uomo è l'obiettivo finale dell'intelligenza artificiale ovviamente. agli inizi si pensava che fosse possibile in poco tempo arrivare alla soluzione (cioè creare macchine dotate di vera e propria intelligenza), ma in breve ci si è disillusi..
ma senza addentrarci nei meandri del significato della vita ecc... chi ci dice che noi non siamo un algoritmo prestabilito (per quanto complesso possa essere)? la domanda ovviamente non ha risposte, ma solo teorie.
secondo me è comunque preferibile rimanere nel campo del razionale almeno per quanto riguarda l'AI applicata alla robotica :D non vorrei stare antipatico a un robot e finire all'ospedale con le ossa rotte :rotfl:

mad_hhatter
09-10-2007, 18:03
Ma scusa, un browser (e quindi 1 client) non può essere 1 agente?
E' indipendente, scambia messaggi col protocollo HTTP ed è quasi stupido. :)

certo. possiamo chiamarlo agente software non intelligente... il discorso che facevo prima era questo: tu hai chiesto che tipo di agente è un agente web. la risposta è: dipende da cosa fa. può essere stupido (e quindi è un agente sw e basta) oppure intelligente (e quindi è un agente sw intelligente), ma la classificazione non è univoca perchè dipende da cosa si intende per "agente intelligente" nello specifico contesto

se però vogliamo essere pignoli un client web non è un agente perchè non è autonomo: risponde solo ai tuoi comandi...

anche qui dipende molto da come vedi la situazione: se stai analizzando l'interazione tra il solo client e il resto dell'internet allora puoi modellare il client come agente, ma se lo consideri come un oggetto usato da un utente allora stai osservando la cosa da una prospettiva diversa e diventa una forzatura vederlo come un'entità autonoma... non so se mi sono spiegato: il succo del discorso è che la prospettiva da cui consideri le cose influenza la classificazione degli oggetti osservati



un esempio lampante di agente web è un crawler, secondo me

mad_hhatter
09-10-2007, 18:04
io direi che è completamente stupido :fagiano: in genere un browser è un'applicazione, non un agente intelligente IMHO

non è intelligente, ma potrebbe essere visto come un agente

mad_hhatter
09-10-2007, 18:16
quello di creare macchine che pensano come l'uomo è l'obiettivo finale dell'intelligenza artificiale ovviamente. agli inizi si pensava che fosse possibile in poco tempo arrivare alla soluzione (cioè creare macchine dotate di vera e propria intelligenza), ma in breve ci si è disillusi..
ma senza addentrarci nei meandri del significato della vita ecc... chi ci dice che noi non siamo un algoritmo prestabilito (per quanto complesso possa essere)? la domanda ovviamente non ha risposte, ma solo teorie.
secondo me è comunque preferibile rimanere nel campo del razionale almeno per quanto riguarda l'AI applicata alla robotica :D non vorrei stare antipatico a un robot e finire all'ospedale con le ossa rotte :rotfl:

:D

Matrixbob
09-10-2007, 18:34
certo. possiamo chiamarlo agente software non intelligente... il discorso che facevo prima era questo: tu hai chiesto che tipo di agente è un agente web. la risposta è: dipende da cosa fa. può essere stupido (e quindi è un agente sw e basta) oppure intelligente (e quindi è un agente sw intelligente), ma la classificazione non è univoca perchè dipende da cosa si intende per "agente intelligente" nello specifico contesto

se però vogliamo essere pignoli un client web non è un agente perchè non è autonomo: risponde solo ai tuoi comandi...

anche qui dipende molto da come vedi la situazione: se stai analizzando l'interazione tra il solo client e il resto dell'internet allora puoi modellare il client come agente, ma se lo consideri come un oggetto usato da un utente allora stai osservando la cosa da una prospettiva diversa e diventa una forzatura vederlo come un'entità autonoma... non so se mi sono spiegato: il succo del discorso è che la prospettiva da cui consideri le cose influenza la classificazione degli oggetti osservati



un esempio lampante di agente web è un crawler, secondo me
Allora manco un parser RSS è 1 agente, gli dico io cosa andare a prendere, che cavolo è 1 agente web?
Io non ne ho in mente mi spiace. :boh:

Matrixbob
09-10-2007, 18:37
Eppure 1 agente Web deve essere per forza basato sul HTTP o su un altro protocollo che appartiene al WWW (quali sono gli altri? HTTP e poi?).

Se non è basato su HTTP non può essere 1 agente web per definizione dato che il Web è basato su 2 cose:
1] Gli URI;
2] I protocolli web (HTTP e ?);
3] I linguaggi di rappresentazione dei documenti XML, RDF e loro evoluzioni.

[EDIT]
crawler? che cavolo è?

Matrixbob
09-10-2007, 18:43
[EDIT]
crawler? che cavolo è?

Ah ecco!
http://it.wikipedia.org/wiki/Crawler

mad_hhatter
09-10-2007, 22:47
Eppure 1 agente Web deve essere per forza basato sul HTTP o su un altro protocollo che appartiene al WWW (quali sono gli altri? FTP e poi?).

Se non è basato su HTTP non può essere 1 agente web per definizione dato che il Web è basato su 2 cose:
1] Gli URI;
2] I protocolli web (HTTP e ?);
3] I linguaggi di rappresentazione dei documenti XML, RDF e loro evoluzioni.

[EDIT]
crawler? che cavolo è?

andiamo con ordine perche' qui abbiamo tirato dentro di tutto...

dunque, innanzitutto un parser RSS e' piu' aderente alla definizione di agente di quanto lo sia un browser: concorderai sul fatto che il parser rss ha un grado di autonomia maggiore.

Cio' premesso diciamo questo: dire che un software e' un agente significa prima di tutto dire che la prospettiva da cui lo analizzo mira non tanto a indagarne il funzionamento interno quanto piuttosto a descriverne le interazioni con l'ambiente esterno. In quest'ottica una qualunque applicazione puo' essere classificata come agente. Agente, cioe', e' un software che interagisce con altre entita' (umane, software, hardware...).
E' una questione di prospettiva, di quale tipo di modello astratto uso per descrivere un certo fenomeno e su quali aspetti del sistema voglio puntare l'attenzione.

dimmi se sono stato chiaro, perche' altrimenti cerco di spiegarmi in altro modo.

tutte le domande che ti sei posto sui protocolli web sono assolutamenti irrilevanti e anzi fuorvianti: non c'entrano niente con il fatto di chiamare una certa cosa "agente". anzi, mi piacerebbe che spiegassi cosa ti ha portato a porre quelle domande, in modo da capire qual e' il fraintendimento.

mad_hhatter
09-10-2007, 22:55
sottolineo una cosa per chiarire il mio ultimo post. la mia definizione e' AL LIMITE della definizione canonica di software agent (che prevede autonomia, collaborazione e il fatto che il comportamento dell'agente sia definito non tanto sulla base di un algoritmo, ma piuttosto in termini di un obiettivo da perseguire).

cito da wikipedia alla voce software agent: "A Self-contained, interactive and concurrently-executing object, possessing internal state and communication capability". Questa come definizione generale di agente mi piace parecchio

^TiGeRShArK^
09-10-2007, 23:27
dunque, innanzitutto un parser RSS e' piu' aderente alla definizione di agente di quanto lo sia un browser: concorderai sul fatto che il parser rss ha un grado di autonomia maggiore.
mi sfugge il motivo per cui un parser XML avrebbe un'autonomia maggiore rispetto ad un browser (che oltre ad essere in grado di parsare l'html/xhtml solitamente comprende benissimo anche il javascript, il che in teoria lo potrebbe trasformare in un agente intelligente a tutti gli effetti secondo una qualsiasi delle classificazioni ad oggi esistenti :fagiano: )

mad_hhatter
09-10-2007, 23:31
mi sfugge il motivo per cui un parser XML avrebbe un'autonomia maggiore rispetto ad un browser (che oltre ad essere in grado di parsare l'html/xhtml solitamente comprende benissimo anche il javascript, il che in teoria lo potrebbe trasformare in un agente intelligente a tutti gli effetti secondo una qualsiasi delle classificazioni ad oggi esistenti :fagiano: )

semplicemente perche' gli (stiamo parlando in lettore di feed rss, giusto?) dici cosa fare e lui si arrangia a farlo in maniera continuativa... il browser quando ha finito di renderizzare la pagina resta in attesa di un tuo ordine.

a me invece sfugge il motivo per cui maggiori funzionalita' implicherebbero una maggiore autonomia e perche' il fatto di poter interpretare un linaguaggio formale lo renderebbe intelligente

^TiGeRShArK^
09-10-2007, 23:51
semplicemente perche' gli (stiamo parlando in lettore di feed rss, giusto?) dici cosa fare e lui si arrangia a farlo in maniera continuativa... il browser quando ha finito di renderizzare la pagina resta in attesa di un tuo ordine.

a me invece sfugge il motivo per cui maggiori funzionalita' implicherebbero una maggiore autonomia e perche' il fatto di poter interpretare un linaguaggio formale lo renderebbe intelligente
semplicemente perchè con javascript potresti implementare un agente intelligente che fa qualunque cosa ti serva...
Cosa che il parser RSS essendo solo un interprete xml in soldoni non può fare :D
Ovviamente se si parla di semplici browser html, senza alcuna funzionalità di interpretazioni di altri tipi di linguaggi, allora l'RSS reader è più sofisticato.
Ma oggi come oggi anche i browser dei telefonini riescono a fare queste cose.. per questo mi è venuto naturale pensare al javascript e alle sue molteplici possibilità :p

mad_hhatter
10-10-2007, 08:32
semplicemente perchè con javascript potresti implementare un agente intelligente che fa qualunque cosa ti serva...
Cosa che il parser RSS essendo solo un interprete xml in soldoni non può fare :D
Ovviamente se si parla di semplici browser html, senza alcuna funzionalità di interpretazioni di altri tipi di linguaggi, allora l'RSS reader è più sofisticato.
Ma oggi come oggi anche i browser dei telefonini riescono a fare queste cose.. per questo mi è venuto naturale pensare al javascript e alle sue molteplici possibilità :p

si ok, ma non è il browser l'entità intelligente, semmai il software implementato in javascript.

Matrixbob
11-10-2007, 18:25
Da:
http://en.wikipedia.org/wiki/HTTP

HTTP is a request/response protocol between clients and servers. The client making an HTTP request - such as a web browser, spider, or other end-user tool - is referred to as the user agent. The responding server - which stores or creates resources such as HTML files and images - is called the origin server.


Cioè li browser, gli spider, e tutti quelli che noi abbiamo approssimato a Web agent sono stati chiamati User agent su Wiki?

fabianoda
11-10-2007, 19:00
C'è una categoria particolare di agenti, chiamata agenti personali (peronal agents), i quali hanno un grado di autonomia piuttosto basso, e non fanno altro che espletare delle funzioni che l'utente non saprebbe fare da sè o per le quali sarebbe richiesto troppo tempo.
Wikipedia, con il termine "user agent", immagino che si riferisca a questo tipo di agente. In realtà la nozione di personal agent è davvero debole, ma sono comunque chiamati agenti.

non serve infaatti un entità super-intelligente affinché questa si possa chiamare agente (vedi definizioni costruttive)

Matrixbob
11-10-2007, 19:05
Io ritornavo con la mente a quando abbiamo definito il browser un Web agent e poi abbiamo detto che però non è autonomo perchè gli diciamo noi cosa fare ed allora il colpo di genio è stato:
se gli diciamo noi che fare allora sarà 1 User agent, no?

Il discorso regge o no così?

fabianoda
11-10-2007, 19:36
La risposta che mi sento di dare è "dipende".
Cioè, se tu gli dici cosa vuoi che faccia, ma lui sceglie come farlo, allora può essere un agente intelligente, a mio parere.

Se tu gli dici: "cercami dei dati" ma gli lasci scelta (guarda nel tuo database, scegli di chiedere ad altri agenti, naviga in internet, cerca su google, ...) allora si ha un certo grado di autonomia.

Come si diceva prima, è OVVIO che tutto è riconducibile ad un programma, ma questo non vuol dire che il programma non sia un agente!!

mad_hhatter
12-10-2007, 08:42
La risposta che mi sento di dare è "dipende".
Cioè, se tu gli dici cosa vuoi che faccia, ma lui sceglie come farlo, allora può essere un agente intelligente, a mio parere.

Se tu gli dici: "cercami dei dati" ma gli lasci scelta (guarda nel tuo database, scegli di chiedere ad altri agenti, naviga in internet, cerca su google, ...) allora si ha un certo grado di autonomia.

Come si diceva prima, è OVVIO che tutto è riconducibile ad un programma, ma questo non vuol dire che il programma non sia un agente!!

meraviglioso esempio di chiarezza.

@Matrixbob: non cercare di tagliare col coltello le categorie di agenti: come dicevo, a seconda della prospettiva adottata i confini tra le classi mutano e si affievoliscono... non essere troppo rigido con queste definizioni

Matrixbob
12-10-2007, 14:24
Scusate, abbiamo parlato x 4 pagine di tutto/niente.
Riusciamo a fare un punto sintetico della situazione emersa dalle nostra conoscenze comuni?

Tipo questo he segue.

http://img509.imageshack.us/img509/3886/agentiob2.gif

Ma:
- User agent?
- Web agent?

, come li colloco?

IMHO si potrebbe tentare una classificazione partendo dal interno x andare al esterno aggiungendo man mano le proprietà dei singoli tipi di agente.
Sempre IMHO.

Matrixbob
12-10-2007, 14:40
andiamo con ordine perche' qui abbiamo tirato dentro di tutto...

dunque, innanzitutto un parser RSS e' piu' aderente alla definizione di agente di quanto lo sia un browser: concorderai sul fatto che il parser rss ha un grado di autonomia maggiore.

Cio' premesso diciamo questo: dire che un software e' un agente significa prima di tutto dire che la prospettiva da cui lo analizzo mira non tanto a indagarne il funzionamento interno quanto piuttosto a descriverne le interazioni con l'ambiente esterno. In quest'ottica una qualunque applicazione puo' essere classificata come agente. Agente, cioe', e' un software che interagisce con altre entita' (umane, software, hardware...).
E' una questione di prospettiva, di quale tipo di modello astratto uso per descrivere un certo fenomeno e su quali aspetti del sistema voglio puntare l'attenzione.

dimmi se sono stato chiaro, perche' altrimenti cerco di spiegarmi in altro modo.

tutte le domande che ti sei posto sui protocolli web sono assolutamenti irrilevanti e anzi fuorvianti: non c'entrano niente con il fatto di chiamare una certa cosa "agente". anzi, mi piacerebbe che spiegassi cosa ti ha portato a porre quelle domande, in modo da capire qual e' il fraintendimento.

Perchè tranquillamente in tutti i libri o articolo che si legge compare random User Agent, Web Agent, Agent, Agente intelligente, ecc...

Sapere distiguerli con precisione mi permette anche di contestualizzare meglio l'articolo e tutto quello che ne consegue.

TNX!

Matrixbob
12-10-2007, 14:42
http://en.wikipedia.org/wiki/Web_Agent
Ma LOL, tra la'ltro da Wiki se metto "Web Agent" esce fuori il Browser!!! :D

Che casino ...
... che tra l'altro secondo le 3 basi ortogonali del WWW non poteve essere altrimenti.

Poi:
http://en.wikipedia.org/wiki/User_agent

Web User Agents range from web browsers to search engine crawlers ("spiders"), as well as mobile phones, screen readers and braille browsers used by people with disabilities.

Matrixbob
12-10-2007, 15:48
Ecco 1 esempio di cosa si trova online ad esempio parlando di architettura REST del WWW.

http://img339.imageshack.us/img339/7691/immagineoe5.gif

fabianoda
12-10-2007, 16:05
Perchè tranquillamente in tutti i libri o articolo che si legge compare random User Agent, Web Agent, Agent, Agente intelligente, ecc...

Sapere distiguerli con precisione mi permette anche di contestualizzare meglio l'articolo e tutto quello che ne consegue.

TNX!

Questo comparire di tipo random accade perché non prendi le fonti giuste. Segui questo procedimento:
1) Wikipedia non è affidabile per una tesi di laurea, puoi leggere ma di sicuro non citare (a meno che tu non sia sicuro che quello che dice sia giusto - ma in questo caso fa confusione)
2) Devi decidere se la tua tesi è Artificial Intelligence oppure parli alla comunità agenti in generale - la prospettiva è diversa
3) Una volta scelta la fonte (autorevole possibilmente, ma parlane con il tuo prof no?), ti basi su quella per fare il tuo lavoro
4) Puoi dire che ci sono altre visioni degli agenti, ma tu scegli quella proposta da...

mad_hhatter
12-10-2007, 17:12
Questo comparire di tipo random accade perché non prendi le fonti giuste. Segui questo procedimento:
1) Wikipedia non è affidabile per una tesi di laurea, puoi leggere ma di sicuro non citare (a meno che tu non sia sicuro che quello che dice sia giusto - ma in questo caso fa confusione)
2) Devi decidere se la tua tesi è Artificial Intelligence oppure parli alla comunità agenti in generale - la prospettiva è diversa
3) Una volta scelta la fonte (autorevole possibilmente, ma parlane con il tuo prof no?), ti basi su quella per fare il tuo lavoro
4) Puoi dire che ci sono altre visioni degli agenti, ma tu scegli quella proposta da...

concordo: anche in ambito scientifico fonti diverse usano lo stesso termine intendendo cose (leggermente) diverse o partendo da presupposti o prospettive diverse... per questo ti dicevo che, attingendo da fonti diverse, non puoi tagliare con l'accetta le varie definizioni. Tutto questo perché, ripeto, dipende dalla prospettiva seguita nello specifico articolo.
Quindi, come saggiamente suggerito da fabianoda, concorda col tuo prof una serie di fonti e di definizioni attendibili e segui quelle. Altrimenti diventi matto

Matrixbob
13-10-2007, 10:13
Questo comparire di tipo random accade perché non prendi le fonti giuste.

.. e quali sono le fonti autorevoli?


1) Wikipedia non è affidabile per una tesi di laurea, puoi leggere ma di sicuro non citare (a meno che tu non sia sicuro che quello che dice sia giusto - ma in questo caso fa confusione)

Mi pare di essere stato il primo a chiedere di lasciare stare Wiki.

2) Devi decidere se la tua tesi è Artificial Intelligence oppure parli alla comunità agenti in generale - la prospettiva è diversa

Non è una tesi di AI.

3) Una volta scelta la fonte (autorevole possibilmente, ma parlane con il tuo prof no?), ti basi su quella per fare il tuo lavoro

Niente prof, devo arrangiarmi da solo. altrimenti non sarei stato qui a discutere con voi. Tra l'altro il nostro lavoro resterà ai posteri.

4) Puoi dire che ci sono altre visioni degli agenti, ma tu scegli quella proposta da...

Io terrei la prima definizione data da noi, è la + generica direi.

fabianoda
13-10-2007, 12:32
.. e quali sono le fonti autorevoli?


Mi pare di essere stato il primo a chiedere di lasciare stare Wiki.

Non è una tesi di AI.

Niente prof, devo arrangiarmi da solo. altrimenti non sarei stato qui a discutere con voi. Tra l'altro il nostro lavoro resterà ai posteri.

Io terrei la prima definizione data da noi, è la + generica direi.

Come niente prof? Guarda che è suo dovere aiutarti... comunque, io adotterei la definizione usata nella comunità ad agenti. Ti consiglio di seguire il seguente libro, "An Introduction to MultiAgent Systems - di Michael Wooldridge"