Prirodni programski jezik

Prirodni programski jezik (PPJ) je ontologija-pomoć način programiranja u smislu prirodnog jezika rečenica, npr Engleski jezik. Strukturisan dokument sa sadržajem, sekcijama i poglavljima za objašnjenja rečeničnih forma NLP dokumenta, koji je u stvari računarski program. Prirodni jezici i prirodni jezik korisničkih interfejsa uključuju Inform7, prirodni programski jezik za izradu interaktivne fikcije; Šekspir, šala prirodnog programskog jezika u stilu dela Vilijama Šekspira, i Volfram Alfa, računarska motor znanja, služeći se prirodnim jezikom.

Tumačenje uredi

Najmanja jedinica izjave u NLP-u je rečenica. Svaka rečenica je navedena u smislu koncepata iz osnova ontologije, atributi u toj ontologiji i nazvani objekti velikim slovima. U tekstu NLP-a svaka rečenica nedvosmisleno se kompajlira u postupku poziva u osnovi programskog jezika visokog nivoa kao što su MATLAB, Octave, SciLab, Python, itd.

Simbolički jezici kao što su matematika su u stanju da interpretiraju obradu upita kazni. Ovo može dozvoliti interaktivne zahteve kao što je implementiran u Volfram Alfu.[1][2] Razlika između njih i NLP-a je da se poslednji gradi jedan program ili biblioteka rutina koji su programirani kroz rečenice prirodnog jezika koristeći ontologije koje definišu dostupne strukture podataka u programskom jeziku na visokom nivou.

Primer teksta iz NLP programa na engleskom jeziku je sledeći:

Ako U_ je 'smc01-kontrola ", a zatim uraditi sledeće. Definisati površinske težine Alfe kao "[0,5, 0,5]". Pokrenuti matrik Phi kao "jedinica matrice". Definisati J kao "inercija matrice" od Spc01. Izračunati matricu J2 kao suprotnost od J. Izračunati grešku brzine položaja Ve i grešku ugaone brzine Oe od dinamičkog stanja X, navođenje reference Xnov. Definisati zajedničku glatku površinu G2 iz greške brzine položaja Ve i greške ugaone brzina Oe koristeći površinske težine Alfe. Izračunati poravnjani znak funkcije SG2 od zajedničkog klizanja površine G2 sa znakom praga 0.01. Izračunati posebnu dinamičku silu F od dinamičkog stanja X i površinske težine Alfe. Izračunati kontrole obrtnog momenta T i kontrolu snage U iz matrice J2, površinske težine Alfe, posebna dinamička sila F, poravnjan znak funkcije SG2. Završite uslovne akcije.

koji definiše povratne kontrole šeme koristeći klizni mod kontrolni režim.

Softver paradigma uredi

Prirodni programski jezik je top down metod pisanja softvera. Njegovi koraci su sledeći: Definicija ontologija - taksonomija - koncepata potrebnih za opisivanje zadataka u temi adrese. Svaki koncept i svi njihovi atributi su definisani u rečima prirodnog jezika. Ova ontologija će definisati da se podatak strukture NLP-a može koristiti u rečenicama.

  • Definicija jednog ili više vrhunskih nivoa rečenica u smislu koncepata iz ontologije. Ove rečenice su pismo koristile da se pozovu najvažnije aktivnosti u ovoj temi.
  • Definisanje svake od prvih rečenica nivoa u smislu niza rečenica.
  • Definisanje svake od rečenica nižeg nivoa u odnosu na druge rečenice ili proste rečenice oblika izvršnog koda "...". gde ... označava kod u smislu pratećeg visokog nivoa programskog jezika.
  • Ponavljanje prethodnog koraka dok nemate rečenice levo nedefinisane. Tokom ovog procesa svaka rečenica može se klasifikovati da pripada delu dokumenta koji se proizvodi u HTML ili Latex formatu da se formira konačan program NLP.
  • Testiranje značenja svake rečenice izvršavanjem svoje šifre pomoću testiranja objekata.
  • Pružanje biblioteke postupaka poziva (u osnovnom jeziku visokog nivoa) koji su potrebni u definicijama koda nekih niskih nivoa rečenice značenja.
  • Obezbeđivanje naslova, autor datuma i prikupljanje rečenica u jedan HTML ili LaTex fajl.
  • Objavljivanje NLP programa kao veb stranica na internetu ili kao PDF fajl sastavljen od LaTex dokumenta.

Objavljivanje vrednosti NLP programa i dokumenata uredi

NLP program je precizan formalan opis nekog postupka koji je njen autor stvorio. On je ljudski čitljiv i može se pročitati sa odgovarajućeg softver agenta. Na primer veb stranica u NLP formatu može da se čita softverskim personalnim asistent agentom na licu i on ili ona može pitati agenta da izvrši neke rečenice, odnosno izvrši neki zadatak ili odgovaranje na pitanje. Postoji sredstvo dostupno za englesko tumačenje HTML-baziranih NLP dokumenata koje osoba može da radi na svom ličnom računaru.

Doprinos NLP programa za mašinsko znanje uredi

Ontologija klase u prirodnom programskom jeziku koji nije koncept u smislu ljudskog korišćenja koncepta. Koncepti u NLP-u su primeri (uzorci) generičkih ljudskih koncepata. Svaka rečenica u NLP programu je ili (1) pokretanje veze u svetu modela ili (2) vrši neku radnju u okruženju ili (3) obavlja računarske postupke ili (4) poziva za odgovor mehanizam za odgovor na pitanje.

Skup NLP rečenica, sa pripadajućom definismo ontologijom, može se koristiti kao pseudo kod koji ne pruža detalje u bilo kom osnovnom programskom jeziku visokog nivoa. U takvoj aplikaciji rečenice korišćenja postaju apstrakcije visokog nivoa (konceptualizacija) računskih postupaka gde su kompjuterski jezik i mašina nezavisni.

Vidi još uredi

Programski jezici sa engleskom nalik sintaksom

Bibliografija uredi

Knjige
  • Natural Language Programming of Agents and Robotic Devices: publishing for agents and humans in sEnglish by S M Veres, ISBN 978-0-9558417-0-5, London, June 2008.
Radovi na konferencijama
  • Documents for Intelligent Agents in English. by S M Veres and L Molnar. Proc. AIA2010, 10th IASTED Conference on Artificial Intelligence and Applications, 15-17 Feb 2010, Innsbruck, Austria.
  • Sliding mode control of autonomous spacecraft. (half written in sEnglish) by S M Veres an N K Lincoln, Proc. TAROS’2008, Towards Autonomous Robotic Systems, Edinburgh, 1–3 September 2008.
  • Mission Capable Autonomous Control Systems in the Oceans, in the Air and in Space by S M Veres, Hanazawa et al. (Eds.): Brain-Inspired Info. Technology, SCI 266. str. 1–10, Springer, 2010.
  • Programming Spatial Algorithms in Natural Language, by Boris Galitsky, Daniel Usikov, in the AAAI Workshop on Spatial and Temporal Reasoning 2008, AAAI Technical report, http://www.aaai.org/Library/Workshops/ws08-11.php Arhivirano na sajtu Wayback Machine (6. septembar 2015)

Reference uredi

  1. ^ Wolfram Alpha – how it works Computer Weekly, 4 June 2009
  2. ^ Wolfram Alpha computes answers Tech Crunch, 8 March 2009

Spoljašnje veze uredi