160 likes | 305 Views
Automatic Web Service Orchestration using AI Planners. Antonio Kantek COMS E6125 Web Enhanced Information Management Professor Gail Kaiser. Overview. * Automatic and Semi-Automatic WS Orchestration * AI Planners and How They Work * Web Services and Semantic Web
E N D
Automatic Web Service Orchestration using AI Planners Antonio Kantek COMS E6125 Web Enhanced Information Management Professor Gail Kaiser
Overview * Automatic and Semi-Automatic WS Orchestration * AI Planners and How They Work * Web Services and Semantic Web * Building and Executing Plans for WS Orchestration * Real World Challenges
AI Planners * Defining a problem as a graph search: - Global Problem Solver (1959) [1] - Combinatorial Explosion - Block World * Planners based on Simple Graph Search: DFS, BFS, A*, etc - Vertices correspond to states - Edges correspond to actions - Actions are defined in terms of pre / pos condition and main action * Fast Forward Heuristics (2001) [2] and Modern Planners
AI Planning * PDDL (Planning Domain Description Language) [3] (define (domain VACATION_TRIP) (:requirements ... (:predicates (AMOUNT_MONEY ?2500) (FLIGHT_CLASS ?BUSINESS) ...) (:action BUY_FLIGHT_TICKET [:parameters (?TICKET_PRICE)] [:precondition AMOUNT_MONEY > 2500] [:effect EFFECT_FORMULA (AMOUNT_MONEY - TICKET_PRICE) ] ) (:action BOOK_HOTEL_ROOM ...) ...)
OWL-S and Semantic Web * Extending WSDL with Semantic Web (OWL-S) <rdf:RDF ... > <owl:Ontology rdf:FLIGHT_RESERVATION=""> <owl:versionInfo>VacationTrip.owl version 1.0</owl:versionInfo> <rdfs:comment> This ontology represents the OWL-S service that describes a web services for booking flight tickets. </rdfs:comment> <owl:imports rdf:resource="&service;" /> <owl:imports rdf:resource="&flight_class;" /> <owl:imports rdf:resource="&ticket_price;" /> <owl:imports rdf:resource="&destiny;" /> ... </owl:Ontology>
Planning and PDDL (define (domain VACATION_TRIP) (:requirements ... (:predicates (AMOUNT_MONEY ?2500) (FLIGHT_CLASS ?BUSINESS) ...) (:action BUY_FLIGHT_TICKET [:parameters (?TICKET_PRICE)] [:precondition AMOUNT_MONEY > 2500] [:effect EFFECT_FORMULA (AMOUNT_MONEY - TICKET_PRICE) ] ) (:action BOOK_HOTEL_ROOM ...) ...)
Real World Challenges * Assumptions like execution atomic type, instantaneous actions with deterministic effects, omniscience are no longer true * Services are not 100% reliable - They may fail or they may return unexpected results - They may take an unexpected amount of time to run - Partially executed action and rollback * Internet domain is complex - Way more complex than world block - Security and authentication
Real World Challenges * Automatic WS Orchestration: Planning and Grouding * Semi-Automatic WS Orchestration: Planning only * Extending Planners by Adding Parallel Execution [4] * "Close World Assumption" no longer valid * Defining and Respecting Real World Constraints * Hierarchical Planning and Task decomposition
Final Considerations * Planners are not the only solution for Automatic and Semi-Automatic WS Orchestration - Golog [5] - IBM's WSBPEL * Automatic WS Orchestration may work better for closed environments * Semi-Automatic more recommended for an open environment like Internet
Questions ? Comments ? ak2765@columbia.edu
References [1] Newell, A.; Shaw, J.C.; Simon, H.A. (1959). Report on a general problem-solving program. Proceedings of the International Conference on Information Processing. pp. 256-264. [2] Hoffmann, Jorg (2001). The FF Planning System: Fast Plan Generation Through Heuristic Search. Journal of Artificial Intelligence Research 14 (2001), 253-302. [3] Ghallab, M., Howe, A., Knoblock, C., McDermott, D., Ram, A., Veloso, M., Weld, D., and Wilkins, D. (1998). PDDL the planning domain definition language. In Proc. of AIPS-98 Planning Committee.
References [4] McDermott, D. (2002). Estimated-Regression Planning for Interactions with Web Services. In AIPS 2001. [5] McIlraith, S. A. and Son, T. C. (2002). Adapting Golog for Composition of Semantic Web Services. In KR2002, pages 482–493.