Projekty z reálneho sveta naprogramované v jazyku Prolog

Niekoľko príkladov reálnych projektov vyvinutých s použitím logických programovacích jazykov

Modelovanie životného prostredia
Identifikácia húb
Prideľovanie pracovných smien
Rozpoznávanie obrazu
Plánovanie satelitného vysielania
Systém na predaj okien a dverí


  • Modelovanie životného prostredia

    Pri simulácií zmien lesného porastu sa využíva množstvo komplexných matematických modelov. Autor tohoto projektu využil Prolog práve na vytváranie a správu matematických modelov.

    Rovnice ktoré vytvárajú modely a submodely sú uložené v databáze Prologu. To neznamená len to, že rôzne modely môžu používať rovnaký zdrojový kód, ale taktiež modely môžu vznikať špecifikáciou ako existujúce submodely a rovnice interagujú.

    Pri vkladaní nových rovníc do systémy, ten skontroluje ľavú stranu každej rovnice a pokúša sa nájsť zhodu v jeho databáze. Ak existuje spýta sa programátora, či chce použiť existujúcu verziu. Programátor potom môže preskúmať existujúci submodel alebo term, a ak je to potrebné zeditovať ho, a uložiť ho ako novú verziu. Ak taký term neexistuje v databáze je potrebné zadať fyzikálne jednotky jednotlivých premenných.

    Užitočné odkazy:
    Modelovanie životného prostredia
  • Identifikácia húb

    Identifikácia húb je zdĺhavý a nákladný proces. Náklady sú veľké keďže často je potrebné nechať hubu rásť niekoľko dní aby sa dala identifikovať.

    Vyvinutý systém s názvom Ident na napísaný v LPA Prologu kde huby a ich atribúty sú reprezentované ako množiny. Všetky informácie ktoré sú k dispozícií o danej vzorke sa môžu použiť ako atribúty ktoré vzorka vlastní. Týmto sa rýchlo redukuje množiny v ktorých sa môže nachádzať skúmaná huba. Pri použití Prologu vytvorenie tohoto systému bola vcelku ľahká úloha a taktiež čas potrebný na implementáciu bol vecou niekoľkých týždňov a nie mesiacov. Vytvorenie takéhoto systémy v jazyky nižšej úrovne ako napríklad C. by bolo podstatne náročnejšie.

    Užitočné odkazy:
    Identifikácia húb
  • Prideľovanie pracovných smien

    Tento systém sa používa na rozdeľovanie smien podľa veľkého množstva definovaných pravidiel a obmedzení. Hlavnou výhodou systému je flexibilita. Šablóny pravidiel sa používajú na popísanie ako sa majú vyberať zamestnanci. Tí sú klasifikovaný podľa toho aké činnosti vykonávajú a ako sú kvalifikovaný.

    Napríklad pri použití v nemocnici systém dokáže plánovať smeny tak, aby boli rozdelené spravodlivo. Taktiež zabezpečiť optimálne rozloženie expertov medzi smenami.

    Užitočné odkazy:
    Prideľovanie pracovných smien
  • Rozoznávanie obrazu

    Profssor Bruce Batchelor sa venuje výskumu v oblasti "strojového videnia" na Welskej univerzite v Cardiffe. Pracuje na systéme, ktorý spája hardvérovo založené spracovanie obrazu s LPA MacProlog-om. Cieľom práce je vytvoriť inteligentný systém na spracovanie obrazu pre komerčné účely ako napríklad dozor nad prevádzkou a ovládanie robotov.

    Väčšina potravinárskych produktov, ako napríklad zákusky, cukrovinky majú špecifikáciu často vyjadrenú v metrickej a slovno-opisnej forme, ktorá opisuje ako majú vyzerať. Prolog v tomto prípade zjednodušuje implementáciu interpreta jazyka používaného v dozorných systémoch. Systém potom dokáže rozoznať objekt po zadaní špecifikácie a nepotrebuje presný postup kontroly.

    Tento systém sa už využíva v praxi na riadenie rôznych robotických zariadení. Bol ďalej rozšírený o subsystém rozoznávania hlasu.

    Užitočné odkazy:
    Rozoznávanie obrázkov

  • Plánovanie satelitného vysielania

    Keďže satelitné prenosové kanály sú veľmi drahé dôležité je plánovanie dátových prenosov na satelitných linkách. Zákazníci majú rôzne požiadavky na prenosový kanál, niektorí potrebujú prenos v reálnom čase (audio alebo video) iným stačí aby ich dáta boli prenesené neskôr. Systém napísaný v prologu dokáže flexibilne vytvárať plán prenosu údajov podľa rôznych meniacich sa požiadaviek (čas prenosu, typ údajov, dĺžka prenosu, priorita, ...)

    Užitočné odkazy:
    Stránka opisujúca systém na plánovanie satelitných prenosov
  • Systém predaja okien a dverí

    Firma Weather Shield, je jeden z vedúcich výrobcov okien, dverí v USA. Chceli ponúknuť predajcom, dodávateľom a ostatným zákazníkom systém, ktorý by im pomohol vybrať správne okná/dvere podľa ich požiadaviek a na základne ich výberu stanoviť cenu a vytvoriť objednávku. Problém vyriešili tak, že klienti dostanú CD-ROM sa programom napísaným vo VB. Tento sa pripojí cez internet na ich server, kde sú všetky údaje o produktoch uložené ako znalosti. Tieto znalosti sú vyjadrené ako logické vzťahy v Prologu. Zákaznícky softvér potom posiela serveru požiadavky, ktorý ich vyhodnocuje a posiala odpovede naspäť.
    Užitočné odkazy:
    Domovská stránka Weather Shield
    Stránka opisujúca systém predaja okien a dverí