Automatic Programming System for Shipyard RobotsScott McGhee, Sivram Nalluri, Ron Reeve and Robert Rongo - Cybo Robots - USAFritz Prinz - Stanford University - USAJim Hemmerle - PHT Inc. - USAABSTRACTThe application of robots to variable tasks in unstructured environments presents a series of problems that must be solved in order to achieve viable results. Common teaching-type robots cannot be applied in these cases as the programming time and labor investment far exceed the time and costs of direct manual production. Numerically controlled robots programmed off-line by modified NC methods have been applied with economic success to program robots directly from computer aid design data where tasks are sufficiently repetitive and the operating environments sufficiently structured.Similarly, off-line programming systems have been developed by various robot manufacturers to generate instructions from CAD data for their robots. Likewise, developers of 3D simulations software have devised methods to merge CAD data with physical models of robots and system hardware to produce robot path programs that approximate the tasks to be performed. Each of these systems is unable to provide a totally automated means to program robot tasks directly from CAD data due to inaccuracies in the real world elements and/or the models, and due to a lack of knowledge about the processes.A new approach to automatic robot programming is needed that is capable of dealing with:inherent differences between the CAD models and the real world parts; uncertainties regarding the precise location and accessibility of the parts relative to the robot; process knowledge required to adapt to these differences and uncertainties; and process knowledge essential to optimizing robot activities.Such an automatic robot programming system is being developed to meet the dual-use defense and commercial ship construction needs of American shipyards under the Technology Reinvestment Project for Shipbuilding Robotics. This system automates the programmer's task of identifying location of welds, assigning weld process parameters and adaptive welding strategies to each joint. A procedural diagram for this system is shown in Figure 1. The results and benefits fo this approach are described in this paper.Figure 1. Procedure for Automatic Off-line Robot Task PlanningMARINE CONSTRUCTION REQUIREMENTSManufacturing of lot sizes of one poses the most difficult challenges for automation. In most instances the economics is hard to justify. One-of-a-kind components are common in U.S. shipyards where, in the manufacture to military ships, tens or hundreds of identical components are the exception rather than the norm. Hence, most of today's shipyards in the U.S. have little or no automation.However, with the decline of the military ship construction, the economic climate is changing rapidly and U.S. shipyards will have to introduce automation to become competitive in commercial shipbuilding markets. High labor cost countries, such as Japan and Europe, have converted to automation in shipyards, demonstrating both its feasibility and its financial profitability. Their success appears to be based on a combination of developments with include:NC robot automation technology; shop designs which maximize the repetition of components; and manufacturing methods and procedures which hold tight tolerances that facilitate the use of robots.However bow and stern sections of ships, and those ships which are of complex design present many automation problems that heretofore have not been solved. Military ships are one category that, until now, could not be robotically produced.Among the range of manufacturing processes in shipyards, welding is one of the most crucial, expensive, and time consuming steps in building the ship hull. Robotizing the welding process has been shown to provide significant returns on investment in marine construction. One concern is that most U.S. shipyards are far less structured than comparable Japanese and European shipyards. Traditionally, shipyard welding requires a human laborer who can easily cope with the randomness of a yard environment. In U.S. shipyards, the parts are generally not prepared with high precision, but are fit and adjusted at fabrication. The fitters and welders work together to compensate for part imperfections. A limited sensor NC welding robot can only weld parts that are presented precisely prepared. If the part is not accurate the limited sensor robot will not weld properly. Hence, current overseas robotic automation solutions are not likely to provide economic returns for U.S. shipyards except in a few isolated applications where part precision is achieved.Programming CostsA substantial portion of the cost of automation is the cost of programming. Establishing the robotic work plan (robot programs, weld process procedures and strategies) frequently becomes prohibitively expensive. In particular, robot programming for operation in unstructured environments requires the incorporation of sensor strategies. These strategies need to include task alternatives for when the system encounters situations which are possible but not desired. An example would be a situation where the actual part fit-up gap is larger than the planned gap. What should the robot do when the gap is 1mm too wide, 5mm too wide, or X mm too wide? What should it do if the gap tapers?, and so forth.Inadequacies of CAD DataMany shipyards use Computer Aided Design to represent to geometry of the ship structure. This means that nominal part dimension information is electronically available. To make automation in shipyards economically attractive one needs to take advantage of this information for programming of robots and other automation equipment. Ideally, all robot programs could be automatically generated. However, the available CAD geometric information is only a portion of the information required to successfully establish robot programs. For example, the programming of a welding robot needs to combine geometric with non-geometric information. The welding torch location and the proper welding parameters need to be synchronized at all times. In addition, sensor based strategies to provide corrective action when needed must be part of all automation programs.A complicating factor is the lack of consistency in the CAD systems used to design ships in American shipyards. European and Japanese yards that have successfully implemented robotics have developed their CAD systems as an integral part of their robotic automation developments. Currently, the U.S. shipbuilding industry lacks standardization within its CAD systems and many of these systems cannot exchange data through de facto industrial translators. The lack of standardization is further complicated by customized CAD systems and use of non-solid representations. To further complicate CAD data exchange, many ship design exist only as blueprints. Although acceptable for transmittal to shipyard production facilities for fabrications, these two dimensional drawings and three dimensional wire-frame representations do not provide sufficient information for automated programming systems. And, without solid representation, collision detection, sensor strategy implementation , an automated path generation cannot be implemented. Therefore a method to read ship design information from a wide range of sources is required.1INTEGRATING MANUFACTURING PROCESSES WITH CADArc welding is a process that has received much attention for automation consideration. Manual welding requires substantial operator skill to consistently achieve quality results and the number of skilled welders is decreasing in most advanced countries. In addition, arc welding is a hazardous and fatiguing process that makes it difficult for the welder to produce in a consistent and productive fashion, and makes the trade undesirable to newcomers who have employment option in clean, less hazardous environments. Hence the growing need for robotic welding in advanced economies.The planning of an arc welding operation is non-procedural in nature. The selection of the welding process, the sequence of welding, and the process parameters, etc., are not rigidly defined by the application requirements. In manual welding operations, two operators welding the same part will more than likely perform the welding in entirely different fashion while still achieving suitable results. Although this latitude is welcome by many manual operators, planning for automated operations is complicated by the seemingly endless permutations of procedures which could be used.Application IssuesThere are many problems encountered when attempting to automate arc welding applications. A significant problem encountered is that the welding process is sensitive to the configurations of the part being welded. Non-deterministic variations in the part requires that the process be adjusted so as to achieve the desired results. Process adjustments are performed naturally by a human operator. However, in automated systems, feedback is required to provide information to allow suitable control of the process. Depending on the nature of the application, the required feedback systems (sensor systems) can be quite complex. Even in the case when the configuration of the part is rigidly located and maintained, other factors such as material composition variations, process instabilities, external environmental factors (e.g. humidity and temperature), etc., force adjustments to the process operation.An additional concern is the manipulation and access of the welding torch to the part. Commonly, in U.S. military ship designs, the part to be welded has not been designed with welding automation as a consideration. Therefore, access of the torch to the intended weld path and ability to maintain the required torch orientation is difficult and in some cases impossible to achieve for automated system. Even for manual welding, it is not uncommon to find an operator that is welding in a "blind" fashion due to access restrictions. Even with properly designed parts, planning for welding operations is not straight forward. Issues such as collision detection, tool steering manipulation of corners, and motion constraints, etc. are difficult to impose in the planning process. Also, the concern for quality of motion becomes an issue when addressing automated welding. The smoothness of the motion of the welding torch directly affects the quality of the weld deposit, especially on curved surfaces. Therefore, picking the proper location of the torch manipulation devices with respect to the part to achieve suitable motion is another issue process planning must consider.Military Ship Construction IssuesMilitary ship construction places additional demands on robot programming requirements. As the minimum fit-up tolerance of current military ship designs built with ASTM structural shapes is 5 mm, the software system must be capable of programming robot sensors to locate and measure gaps and fit up, and incorporating adaptive welding process strategies to enable the robot to perform the welding tasks required to fill and compensate for these gaps. Such a system must be sufficiently sophisticated and robust to anticipate future developments in sensors, welding processes, and welding strategies.3D Solid ModelingAutomatic generation of control programs for robotic welding from ship panel design data (CAD or non-CAD) involve manipulation of geometry together with non-geometric data such as weld specifications. The complexity, robustness, consistency, and flexibility of geometry manipulation along with non-geometry data is directly dependent upon the internal representation of the design data.The ideal solution requires a 3D model of the work piece in solid format. Use of 3D wire-frame geometry presents some serious limitations. For example, collision detection is difficult, if not impossible since the manipulation of wire- frame geometry can be highly ambiguous and cumbersome. The use of wire-frame unnecessarily complicates the software and adversely affects data integrity by requiring the maintenance of two independent data representations, one for collision detection and on for weld seams. In addition, inserting redefined details from ship design libraries into the structural geometric model requires case specific code which further complicates implementation. Some automation tasks, such as the generation of seams, approach points, and weld push/pull angles require geometric reasoning not possible with wire-frame geometry; and certain sensors used to locate seams and gaps require surface information.Few shipyard CAD systems use 3D solid representations for the geometric model because of memory requirements and processing speed. However, recent advancements in solid model representation and computing power have made true solid models practical. For these reasons, and because of variations in electronic design formats, this project decided to integrate a solid geometric modeler as a part of the automatic planning system.Neutral File CAD Data TransferTo bridge the deficiencies created by the multiplicity of CAD design systems in use, the project team decided to create an intermediate neutral file format to pass CAD data from the user system to the automatic planning system. A diagram of this transfer method is shown in Figure 2. The format of the transfer file is general enough that simple post processors can be generated to convert CAD data to the neutral file format. The format was also designed to permit easy manual encoding of 2-D assembly drawings using standard word processing files. This file transfer system generates a format which defines ship components in terms of structural elements and assembly attributes. It uses an object oriented approach to describe structural elements, modification details and connection details. As the trend in ship design software is to maintain structural elements as objects this neutral file approach should be compatible with most existing and future ship design products.Figure 2. Neutral File CAD Data Transfer MethodDEVELOPMENT OF AN AUTOMATED PLANNING SYSTEMThe issues described led the project team to develop a new system for off-line programming of robots directly from a CAD database. This system uses geometric and non-geometric information to generate robot welding programs with advanced adaptive capabilities from minimal user input. The system is called Automated Planning System .To initiate the Automated Planning System process, data from a CAD system is encoded into the neutral file format which is decoded by APS, as shown in Figure 2. The APS then processes the data into a solid product model containing 3D solid geometry and associated manufacturing process specifications. The product model is complete with structural detail including type and placement of structural elements (chocks, tripping brackets, collars, etc.) as well as cutting modifications (rat holes, end cuts, copes, etc.) and weld specification information. From this product model, the APS also generates a complete instruction set for a robot equipped with advanced sensors and adaptive control strategies which adapt the nominal path program to the real world as-built conditions. A diagram of the procedure to adapt planned programs to real world situations is shown in Figure 3. The 3D product model is available to the user for other uses. The robot instruction set is available for use on demand by an automated robotic manufacturing system.Figure 3. Procedure Steps to Adapt Planned Programs to Real World EnvironmentsIn order to create the product model and the robot instruction set, the APS manages an automated process that integrates a series of support tools to perform the desired steps. Figure 1 shows the relationships of the major components of the system. Following is a discussion of the major issues that have been addressed by the APS.Task PlanningThe manufacturing task planning process can be a subdivided into two major sub-problems:generation of the product model; and motion planning.Historically, computer tools for manufacturing task planning concentrated on the motion planning stage and left the problem of manufacturing process design to the engineer. As a result, these tools establish and manage the geometric representation of the part and manufacturing environment it is manufactured in. Advances in software and hardware technology have made it possible to develop decision support tools that address both portion of the manufacturing task planning process. Consequently, these tools must be able to represent and manage three types of information:geometric and non-geometric attributes of the part; the descriptions of the available manufacturing processes; and intermediate information generated and used during task planning.For the sake of discussion of the information requirements of this new generation planning environment, we subdivide it into three sections:technologies available to represent and manage the non-geometric information used during task planning; technologies available to represent and manage the geometric information used during task planning; and approaches to integrating these two representations into a unified view of the information.Non-Geometric Information ManagementThe manufacturing process design specifies the functional characteristics of the manufacturing process. One feature of current manufacturing practice is that most manufacturing processes are not defined from scratch but represent modifications of existing manufacturing processes. Therefore, it is important to be able to store and manage existing manufacturing process descriptions. This approach to manufacturing process design can be viewed as information management 2.The non-geometric information used during manufacturing task planning includes established manufacturing processes, and the non-geometric attributes of the part and of the manufacturing environment. Drawing on the example of arc welding, the material characteristics of the parts being joined, the various welding passes associated with welding process and the description of sensor strategies all form the non-geometric information managed during manufacturing process design.The size and complexity of this information requires an efficient information management mechanism. Efficient storage and management of data has been a research issue since the early 1950's. Database management systems were developed to provide a level of separation between the users of data and the physical mechanisms for storing that data. The level that separates the user and the physical storage is referred to as a conceptual level 3. The representation of the objects at the conceptual level, the collection of operators that query and modify those objects, and the mechanism that ensures the integrity of the database structure form a data model of the database management system 4.For example each weld segment is defined by a specific 6-D (3D for position plus 3D for pose) set of points in space with an associated weld specification. The path planner must match information in regard to path direction, material, consumables with a proper set of boundary conditions to govern the process parameters from the process database. These parameters govern acceptable boundary conditions for such items as torch orientation, consumable feed rates and travel speeds. Next, a sensor strategy is chosen which, when executed, will make specific measurements and generate a new set of parameters to correctly weld the detected as-built condition of that weld segment, all of which must fall within the acceptable boundary conditions.Geometric Information ManagementMany CAD models, unfortunately, represent only an electronic form of the lines of a traditional blueprint and are not complete three dimensional models of the part or of the manufacturing environment. The advent of CAD surface modelers has significantly improved the geometric modeling capability in industry. However, most models which have been established by surface CAD systems contain a mix of surfaces and lines. Unfortunately, they fall short of full 3D models because, typically, only key surfaces are given and the rest of the object is still represented within the "blueprint/wire-frame" modeling paradigm. With respect to automatic planning for robots such incomplete models make the planning of manipulator motion rather difficult, since the required information, such as surface normals adjacent to the end effector path, is frequently not available.The complete 3D representation of the products and environments can be consistently accessed only within geometric modelers which store all geometric details in parametric form. With this capability sites of potential welds can be automatically recognized. Thus converting form ship CAD to solid model space is an essential step to achieving fully automated offline programming.The parametric representation of this automatic planning system allows the user to model characteristics of ship subassemblies. The parametric nature of the representation enables the user to quickly port models from one shop design to another, assuming that certain basic structures can be adapted from on design to another by adjusting key parameters. With this system, it is also possible to store connection related non-geometric information explicitly at the geometrical representation level. However, within the context of the overall task planning system, this would introduce an unnecessary bias towards the geometry as the coordinator of the manufacturing information and would lead to redundancies. What is more viable, is to preserve the role of a sequential script as the manager of all relevant manufacturing information including the geometric descriptions. In such an approach, the geometric descriptions would still be in the formalism of the actual geometric representation scheme but could be processed with the utilities provided within the geometric modeling system to render references to non-geometric information managed by the database. The implementation of this approach involves the combined use of the existing mechanism in the geometric modeling system and the standard database query mechanism.Integration ToolsThe team concluded that a generalized decision support tool could be developed capable of creating a complete manufacturing plan given the geometric information of the target object and sufficient knowledge about the underlying manufacturing process. This project demonstrates the methodology using robotic arc welding as the candidate manufacturing process. However, the team has also determined that several tools developed as part of this work can also be applied to other processes such as work automated cutting, coping, spraying, sealing, and grinding.The architecture of automatic planning system consists of three main modules brought together in a common framework:The database component is used to store non-geometric attributes of the part and functional descriptions of welding processes and sensor and error resolution strategies. The solid modeler which contain the geometric description of the parts in parametric form along with associated weld specification. The motion planning module which contains information regarding the kinematics of the welding cells. It also provides a graphic simulation of the resulting motion plan.The automatic programming framework provides utilities for access and communication between these modules.Once the welding plans have been assigned to the parts joints, the motion needed to execute the plans can be generated and checked for collisions and for hardware limits of the robotic cell. Graphical utilities are provided to simulate the motion. Figure 4 shows an example of a simulation run that has exposed a collision situation. The Console window displays diagnostic messages (in this example relating to collisions). The operator can ask for information regarding individual points in the motion plan. The Attribute List form provides an explanation as to why a path point is part of the motion plan. The point of collision illustrated exists due to the geometry of the joint and the characteristics of the welding plan. Once the welding program has been checked and passes all the simulation tests, the motion plan can be downloaded to the robot cell for actual execution.Figure 4. Robot to Part Collision Detection Through SimulationSUMMARYThis paper describes the needs and problems in building an automatic off-line planning and robot programming system which can economically and efficiently perform in a shipyard environment. The system developed consists of a 3D solid CAD design system, a database, a 6D motion planner, and a 3D motion simulator. An early implementation of the system shows significant promise. To achieve full functionality several key components, some of which only recently emerged fro R&D efforts, will be integrated into a unified environment. The project team plans to complete this unification and demonstrate the system in the 2nd quarter of 1996.REFERENCESNalluri, S., "Script File Interface to Automatic Off-Line Programming - Neutral Ship Panel Design Data Description Format", internal document, Cybo Robots Inc., p 1. Katz, R.H., "Computer-Aided Design Databases", IEEE Design and Test, pp 70-74, February 1985. Date, C.J., An Introduction to Database Systems, Menlo Park CA: Addison-Wesley, 1986. Hartzband, D.J. and F.J. Maryanski, "Enhancing Knowledge Representations in Engineering Databases", IEEE Computer, Vol. 10, pp 39-46, 1985. Hemmerle, J.S., Optimal Path Placement for Kinematically Redundant Manipulators, Ph.D. thesis, Carnegie Mellon University, May 1989. Hemmerle, J.S., and F. Prinz, "Optimal path placement for kinematically redundant manipulators", in 1991 IEEE International Conference on Robotics and Automation (Sacramento), pp 1234-1244, April 1991. Hemmerle, J.S., M. Terk, E.L. Gursoz, F.B. Prinz, and T.E. Doyle, "Next generation manufacturing task planner for Robotic Arc Welding", ISA Transactions, Vol 31, pp 97-113,1992.
正文为印度Rourkela国家技巧商讨所（小编：Alok Kumar Jha）的硕士随想，共213页。
This work reports the problem of intelligent control and path planning of multiple mobile robots. Soft computing methods, based on three main approaches i.e. 1) Bacterial Foraging Optimization Algorithm, 2) Radial Basis Function Network and 3) Bees Algorithm are presented. Initially, Bacterial foraging Optimization Algorithm with constant step size is analyzed for the navigation of mobile robots. Then the step size has been made adaptive to develop an Adaptive Bacterial Foraging Optimization controller. Further, another controller using radial basis function neural network has been developed for the mobile robot navigation. Number of training patterns are intended to train the RBFN controller for different conditions arises during the navigation. Moreover, Bees Algorithm has been used for the path planning of the mobile robots in unknown environments. A new fitness function has been used to perform the essential navigational tasks effectively and efficiently. In addition to the selected standalone approaches, hybrid models are also proposed to improve the ability of independent navigation. Five hybrid models have been presented and analyzed for navigation of one, two and four mobile robots in various scenarios. Comparisons have been made for the distance travelled and time taken by the robots in simulation and real time. Further, all the proposed approaches are found capable of solving the basic issues of path planning for mobile robots while doing navigation. The controllers have been designed, developed and analyzed for various situations analogous to possible applications of the robots in indoor environments. Computer simulations are presented for all cases with single and multiple mobile robots in different environments to show the effectiveness of the proposed controllers. Furthermore, various exercises have been performed, analyzed and compared in physical environments to exhibit the effectiveness of the developed controllers.
All mobile robots share the need to navigate, creating the problem ofmotion planning. In multi-robot domains with agents acting in parallel, highlycomplex and unpredictable dynamics can arise. This leads to the need fornavigation calculations to be carried out within tight time constraints, sothat they can be applied before the dynamics of the environment make thecalculated answer obsolete. At the same time, we want the robots to navigate robustlyand operate safely without collisions. While motion planning has been used for highlevel robot navigation, or limited to semi-static or single-robot domains, ithas often been dismissed for the real-time low-level control of agents due tothe limited computational time and the unpredictable dynamics. Many robots nowrely on local reactive methods for immediate control of the robot, but if thereason for avoiding motion planning is execution speed, the answer is to findplanners that can meet this requirement. Recent advances in traditional pathplanning algorithms may offer hope in resolving this type of scalability, ifthey can be adapted to deal with the specific problems and constraints mobilerobots face. Also, in order to maintain safety, new scalable methods formaintaining collision avoidance among multiple robots are needed in order tofree motion planners from the “curse of dimensionality” when considering thesafety of multiple robots with realistic physical dynamics constraints. Thisthesis contributes the pairing of real-time motion planning which builds onexisting modern path planners, and a novel cooperative dynamics safetyalgorithm for high speed navigation of multiple agents in dynamic domains. Italso explores near real-time kinematically limited motion planning for morecomplex environments. The thesis algorithms have been fully implemented andtested with success on multiple real robot platforms.
Service robots which act in environmentspopulated by humans have become very popular in the last few years. A varietyof systems exists which act for example in hospitals, office buildings,department stores, and museums. Furthermore, several multi-robot systems havebeen developed for tasks which can be accomplished more efficiently by a wholeteam of robots than just by a single robot. These tasks include surfacecleaning, deliveries, and the exploration of unknown terrain. Whenever teams ofmobile robots are operating in the same environment their motions have to becoordinated in order to avoid congestions or collisions. At the same time therobots should perform their navigation tasks in a minimum amount of time. Thus,sophisticated path planning techniques are needed that fulfill theserequirements. Since the joint configuration space of the robots is typicallyhuge and grows exponentially with the number of robots, existing path planningmethods for single robot systems cannot directly be transferred to multirobotsystems. Many existing path planning methods for multi-robot systems aredecoupled, which means that they first plan paths for the individual robotsindependently. Afterward, they check if the robots would get too close to eachother if the paths were executed. In such a case the paths are recomputed toavoid these conflicts. Many decoupled methods assign priorities to theindividual robots. These priorities define an order in which the paths of therobots have to be recomputed. By computing the path of a robot, the paths ofthe robots with higher priority are considered as fixed. This way, the size ofthe search space is extremely reduced. Most of the existing prioritizeddecoupled methods use a fixed priority scheme (order of the robots). However,the order in which the paths of the robots are recomputed has a seriousinfluence on whether a solution can be found at all and on how efficient thesolution is for the overall multi-robot system. In the first part of thisthesis we present an approach which searches in the space of all priorityschemes to find an order of the robots for which a solution to the pathplanning problem can be computed. During the search, we utilize constraintsbetween the priorities of the robots which are automatically derived from thetask specification. After an appropriate priority scheme has been found, ourtechnique tries to improve it by using a hill-climbing strategy. Our searchmethod can be used to find and optimize paths generated by any prioritizedpathplanning technique. In several experiments with a real-robot system as wellas in simulation we show that our approach produces efficient solutions evenfor difficult path planning problems. The second part of this thesis is focusedon robots acting in environments populated by humans. These systems can improvetheir behavior if they react appropriately to the activities of the surroundingpeople and do not interfere with them. In contrast to a multi-robot pathplanning system, the future movements of people are not known. Therefore, therobots have to be able to detect people with their sensors, to identify them,and to learn their intentions in order to be able to make better predictions oftheir future behavior. In this thesis we present an approach to learn typicalmotion patterns of people from sensor data using the EM algorithm. Furthermore,we describe how the learned patterns can be used to predict future movements ofthe people. Afterward, we explain how this knowledge can be integrated into thepath planning process of a mobile robot. Finally, we introduce a method whichautomatically derives Hidden Markov Models from the learned motionmodels. These HMMs can be used by a mobile robot to predict the positions ofmultiple persons even when they are outside its field of view. To update theHMMs based on laser-range data and vision information we apply JointProbabilistic Data Association Filters. In practice, the robot becomesuncertain about the positions of people if it does not observe them for a longperiod of time. We therefore propose a decision-theoretic approach to determineobservation actions that are carried out while the robot is executing its tasks.Practical experiments carried out with our mobile robot demonstrate • that ourmethod is able to learn typical motion patterns of people, • that thenavigation behavior of the robot can be improved by predicting the motions ofpeople based on the learned motion patterns, • that the derived HMMs can beused to reliably maintain a probabilistic belief about the current positions ofmultiple persons even if they are currently not in its field of view, and •that our technique generates effective actions that seriously reduce theuncertainty in the belief about the positions of people. Our approach is usefulfor service robots of various types that are designed to coexist with humans.In many tasks it is helpful to know the current locations of the people in theenvironment. For example, this knowledge enables a robot to more efficientlycarry out personal delivery tasks since the number of detours is reduced. Alsoa cleaning robot that knows which rooms are currently empty can carry out itstasks without disturbing anyone. Furthermore, a home care robot can improve itsbehavior by knowing where the person it is providing service to currently is orwhere it is going to. The robot can then, for instance, generate motion actionsthat avoid interferences with the person. Additionally, this knowledge allowsstrategic positioning of the robot for providing personal assistance. Insummary, we present techniques which facilitate the coexistence of robots andhumans in real world environments as well as the interaction between them.