ugrás a tartalomhoz

Mesterséges intelligencia?

Pallosi Péter · 2012. Júl. 21. (Szo), 12.21
Sziasztok,olvastam ma egy könyvet a mesterséges intelligenciáról,és php-ban használnak ilyet?
Van valakinek valami tapasztalata?
Van valami irodalom róla(php-ba)?
lehet nagyon hülye kérdés! :)
 
1

Hülye kérdés

Hidvégi Gábor · 2012. Júl. 21. (Szo), 13.44
PHP = Hypertext Preprocessor. Készíthetsz vele MI algoritmusokat, de az olyan, mintha nehézfából csinálnál úszógumit. Nem arra való.
2

Tulajdonképpen nem, vagy igen mégis :)

dropout · 2012. Júl. 21. (Szo), 18.07
Nyilván a mesterséges intelligencia realtime vetületét képező megoldásokban (és ugye ha olvastál a témában tudhatod, hogy ez igen nagy részét képezi, pl.: computer vision, irányítás, lokalizáció) a php nem sokat segíthet, viszont például különböző machine learning eljárásokat simán lehet gyakorlatban alkalmazni, pl. írsz egy algoritmust ami a user inputok alapján termékeket ajánl a webshopodban, vagy a képgalériádba írsz egy színkeresőt, spam-filtered automatikusan tanul és egyre intelligensebb lesz. Számtalan módon lehet alkalmazni, de nem hiszem, hogy php miatt ehhez kéne / írt volna valaki külön könyvet. A témában klasszikus irodalomból viszonylag egyszerűen lehet implementálni megoldásokat:

http://www.amazon.com/Machine-Learning-Artificial-Intelligence-Books/b?ie=UTF8&node=3894
3

Nem hülye kérdés

gojruht · 2012. Júl. 23. (H), 10.51
Mesterséges intelligencia kifejezéssel inkább algoritmusokat szokás leírni, lényegében bármilyen programnyelven elkészítheted, de nyilván nem a php a legalkalmasabb eszköz. Fejlettebb nyelveken (tiszta OOP, pl. .net c#, java) ezeket elvileg könnyebb megvalósítani, de konkrét tapasztalatom csak c#-al van. Léteznek kifejezetten mesterséges intelligencia fejlesztésére írt nyelvek, mint pl: prolog.

Az alapvető MI algoritmusok ezek (a nem módosítható, inkább elméleti jelentőségű algoritmusokat kihagyva):
- backtrack (és fajtái)
- keresőfával kereső algoritmusok
-- szélességi kereső
-- mélységi kereső
-- optimális
-- heurisztikus
-- A és A*

Ezekről itt olvashatsz egy jó jegyzetet (EKF-es tanáraim írták):
http://www.inf.unideb.hu/~kovacs.zita/mesterseges_intelligencia.v1_0.pdf

Egy másik ága az MI-nek a neurális hálózatok, itt az emberi agy működését próbálják leutánozni. Ezek a rendszerek tanulnak, nem pedig egy előre megadott algoritmus alapján döntenek. Ezt használják például: karakter, ujjlenyomat, arcfelismerésnél.

Ezen felül persze lehet saját MI algoritmusod, ami nem a fenti módszereket használja, akár egy egyszerű stratégia.

Hogy php-ban lehet, az biztos, kérdés, hogy mi a feladat és érdemes-e. Találsz róla leírást, ha a megfelelő MI algoritmusok/módszerek neveit írod be a google-be és azt, hogy PHP.
Pl. a backtrack algorithm php-ra, az első találatnál van két link, az egyik egy php-s soduku MI (nem tudom milyen algoritmus), a másik egy mélységi kereső:
Sudoku creator/solver using Php
An open source PHP Sudoku solver class using a Depth first Search (volt, mert ez utóbbi link már nem él :( )
4

Kell-e?

Hidvégi Gábor · 2012. Júl. 23. (H), 11.18
Természetesen meg lehet csinálni PHP-ben is az ilyen algoritmusokat, de kérdés, hogy mennyire hatékony? Sem sebességben, sem pedig memóriaigényben nem tudja felvenni a versenyt egy alacsonyabb szintű nyelvvel, tehát csak nagyon korlátozott a felhasználási lehetősége. Szerintem még mindig jobb lehet elkészíteni C-ben vagy C++-ban az ilyen programot, és külső programként meghívni, ha tényleg arra van szükség, hogy valós időben szolgáltassuk az eredményét.
5

És jónéhány

Pepita · 2012. Júl. 28. (Szo), 02.55
magasszintű nyelvvel sem veheti fel a versenyt - interpreteres mivolta miatt.