Automatic_Web_Service_Orchestration(3)
Download
Report
Transcript Automatic_Web_Service_Orchestration(3)
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
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
...)
...)
AI Planning and Web Services
WS Planner Architecture
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 SemiAutomatic 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 ?
[email protected]
Thanks !
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. 256264.
[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.