<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Towards Trajectory Planning of a Robot Manipulator with Computer Algebra using Bézier Curves for Obstacle Avoidance ⋆</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Ryo</forename><surname>Hatakeyama</surname></persName>
							<affiliation key="aff0">
								<orgName type="department" key="dep1">Master&apos;s Program in Mathematics</orgName>
								<orgName type="department" key="dep2">Graduate School of Science and Technology</orgName>
								<orgName type="institution">University of Tsukuba</orgName>
								<address>
									<postCode>305-8571</postCode>
									<settlement>Tsukuba</settlement>
									<country key="JP">Japan</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Akira</forename><surname>Terui</surname></persName>
							<email>terui@math.tsukuba.ac.jp</email>
							<affiliation key="aff1">
								<orgName type="department">Institute of Pure and Applied Sciences</orgName>
								<orgName type="institution">University of Tsukuba</orgName>
								<address>
									<postCode>305-8571</postCode>
									<settlement>Tsukuba</settlement>
									<country key="JP">Japan</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Masahiko</forename><surname>Mikawa</surname></persName>
							<email>mikawa@slis.tsukuba.ac.jp</email>
							<affiliation key="aff2">
								<orgName type="department">Institute of Library, Information and Media Science</orgName>
								<orgName type="institution">University of Tsukuba</orgName>
								<address>
									<postCode>305-8550</postCode>
									<settlement>Tsukuba</settlement>
									<country key="JP">Japan</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Towards Trajectory Planning of a Robot Manipulator with Computer Algebra using Bézier Curves for Obstacle Avoidance ⋆</title>
					</analytic>
					<monogr>
						<idno type="ISSN">1613-0073</idno>
					</monogr>
					<idno type="MD5">2623CB9E3A133101F4F1253CC463904A</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2025-04-23T18:35+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>Trajectory planning</term>
					<term>Quantifier elimination</term>
					<term>Inverse kinematics</term>
					<term>Bézier curves</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>This paper discusses the trajectory planning of a robot manipulator with computer algebra. In the operation of robot manipulators, it is important to make the trajectory of the end effector so that it does not collide with obstacles. For this purpose, we have proposed a method of generating a method of trajectory planning using cubic spline curves. However, the method has the disadvantage that the trajectory may not be included in the feasible region of the manipulator, thus an extra test for the inclusion of the curve is needed. In this paper, we propose a new method of generating a trajectory using Bézier curves, which is guaranteed to be included in the feasible region.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.">Introduction</head><p>In this paper, we discuss the trajectory planning of a robot manipulator with computer algebra. A manipulator is a robot with links, which correspond to human arms, and joints, which correspond to human joints, connected alternately. The end effector is the component located at the tip of the link that is farthest from the base of the manipulator. The inverse kinematics problem examines whether it is possible to place the end effector at a given point and orientation, and if it is possible, the problem is to find the joint configuration for that placement. The trajectory planning problem is to find a path for the end effector to move from the start point to the endpoint without colliding with obstacles.</p><p>There are numerous methods for solving the inverse kinematics problem of manipulators using computer algebra proposed to date <ref type="bibr" target="#b0">[1,</ref><ref type="bibr" target="#b1">2,</ref><ref type="bibr" target="#b2">3,</ref><ref type="bibr" target="#b3">4,</ref><ref type="bibr" target="#b4">5,</ref><ref type="bibr" target="#b5">6]</ref>. Among them, we have proposed one that enhances computation efficiency with the use of Comprehensive Gröbner Systems (CGS) <ref type="bibr" target="#b6">[7]</ref>, and certifies the existence of solutions to inverse kinematics problems using the Quantifier Elimination (QE) which is based on the CGS, so-called the CGS-QE <ref type="bibr" target="#b7">[8]</ref> method <ref type="bibr" target="#b8">[9]</ref>. Furthermore, we have extended the method to trajectory planning using a straight-line path <ref type="bibr" target="#b9">[10]</ref>.</p><p>By using the straight-line path, the trajectory may interfere with obstacles. Therefore, it is possible to design the trajectory to avoid obstacles using a polyline, but doing so may result in discontinuities in velocity and acceleration of the manipulator at the vertices of the polyline, which could destabilize the operation. To achieve smooth movement of the end effector, we have proposed trajectory planning using a spline curve <ref type="bibr" target="#b10">[11]</ref>. However, the spline curve may not be included in the feasible region of the manipulator, thus an extra test for the inclusion of the curve is needed.</p><p>In this paper, we propose methods for trajectory planning using Bézier curves. The shape of a Bézier curve is determined by the placement of control points, and the curve has the property of always being contained within the convex hull formed by the control points as vertices. Utilizing this property, the goal is to generate trajectories that avoid obstacles without deviating from the feasible region. Although several proposals have been made for the use of Bézier curves in general trajectory planning <ref type="bibr" target="#b11">[12,</ref><ref type="bibr" target="#b12">13,</ref><ref type="bibr" target="#b13">14]</ref>, to the best of the authors' knowledge, the utilization of Bézier curves in trajectory planning using computer algebra is considered to be almost nonexistent.</p><p>This paper is organized as follows. In Section 2, we introduce the feasible region of the manipulator and define the radius of the region. In Section 3, we introduce the Bézier curve and its properties. In Section 4, we propose two methods for trajectory planning using Bézier curves. In Section 5, we conclude and discuss future research direction.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.">Preliminaries</head><p>In this paper, the manipulator to be used is placed on the real space ℝ 3 with the global coordinate system, whose origin is located at the base of the manipulator. Assume that the end effector can be placed anywhere in the feasible region except the origin (see fig. <ref type="figure">1</ref>).</p><p>The feasible region refers to the range that the end-effector of the manipulator can reach. Here, we assume that the feasible region of the manipulator is given as the surface and the interior of a hemisphere with the origin as the center and positive 𝑧 coordinates.</p><p>As for the radius of the region, we define a value different from the radius that the actual manipulator can execute. In this case, we will define the radius by comparing the distances between the origin and the start and the endpoints of the end effector, and the farthest of the passing points, as described below.</p><p>An example is shown in fig. <ref type="figure">2</ref>. Let us consider a trajectory with the start point 𝑆 and the endpoint 𝐺 that passes through two predetermined points 𝐶 1 and 𝐶 2 . Assume that we have verified the end-effector can reach all the points except for the origin 𝑂 by, for example, the method we have previously proposed <ref type="bibr" target="#b9">[10]</ref>. 𝑆, 𝐶 1 , 𝐶 2 , and 𝐺 are located as in fig. <ref type="figure">2</ref> with respect to the origin 𝑂. In this case, the point farthest from 𝑂 among these is 𝐶 2 . Therefore, the distance 𝑟 between 𝑂 and 𝐶 2 is defined as the 𝑟, radius of the feasible region. We see that, by the radius 𝑟 in this way, the end-effector will of course be able to reach a point closer than the point where the end-effector is already determined to be placed.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.">The Bézier Curve</head><p>The Bézier curve <ref type="bibr" target="#b14">[15]</ref> is a parametric curve on which the point is expressed as a polynomial function of the parameter 𝑡, defined as follows. Definition 1. Let 𝑃 0 , 𝑃 1 , … , 𝑃 𝑛 be different points. Then, the 𝑁-degree Bézier Curve 𝑃(𝑡) is defined as</p><formula xml:id="formula_0">𝑃(𝑡) = 𝑛 ∑ 𝑖=0 ( 𝑛 𝑖 )𝑡 𝑖 (1 − 𝑡) 𝑛−𝑖 𝑃 𝑖 , 0 ≤ 𝑡 ≤ 1,</formula><p>where 𝑃 0 , 𝑃 1 , … , 𝑃 𝑛 are the control points. Note that the curve starts at 𝑃 0 and ends at 𝑃 𝑛 .</p><p>The method employs control points for producing the curve. Note that the curve does not pass through the control points except for the start and the endpoint but is attracted by them. It is as if the points exert a pull on the curve.</p><p>An 𝑛-degree Bézier Curve is constructed as follows (for an example of a 3-degree Bézier curve, see Figure <ref type="figure">3</ref>). First, place 𝑛 + 1 control points 𝑃 0 , 𝑃 1 , … , 𝑃 𝑛 , and take points 𝑄</p><formula xml:id="formula_1">(1) 0 , 𝑄 (1) 1 , … , 𝑄 (1) 𝑛−1 that divide the line segment 𝑃 0 𝑃 1 , 𝑃 1 𝑃 2 , … , 𝑃 𝑛−1 𝑃 𝑛 internally into 𝑡 ∶ 1 − 𝑡, respectively. Next, take points 𝑄 (2) 0 , 𝑄 (2) 1 , … , 𝑄<label>(2)</label></formula><p>𝑛−2 that divide the line segments 𝑄</p><formula xml:id="formula_2">(1) 0 𝑄 (1) 1 , 𝑄 (1) 1 𝑄 (1) 2 , … , 𝑄 (1) 𝑛−2 𝑄 (1)</formula><p>𝑛−1 , internally into 𝑡 ∶ 1 − 𝑡, respectively. Repeat the same operation for 𝑛 times to obtain 𝑄 (𝑛) 0 , then the locus of is 𝑄 (𝑛) 0 for 0 ≤ 𝑡 ≤ 1 constructs the Bézier Curve. One of the advantages of using Bézier Curves is the convex hull property of the curves <ref type="bibr" target="#b12">[13]</ref>. For the convex hull 𝐴 = {∑</p><formula xml:id="formula_3">𝑛 𝑖=0 𝑐 𝑖 𝑃 𝑖 | ∑ 𝑛 𝑖=0 𝑐 𝑖 = 1, 0 ≦ 𝑐 𝑖 ≦ 1} of the control points 𝑃 0 , 𝑃 1 , … , 𝑃 𝑛 ,</formula><p>we see that any point on the Bézier Curve 𝑃(𝑡) is included in 𝐴. In other words, if a polyhedron with each control point as a vertex is included in the feasible region, the Bézier Curve obtained from those control points is also included in the region. This idea will be used in our second method proposed below.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.">Path planning using Bézier curves</head><p>We propose two methods for trajectory planning using Bézier curves. In the methods, we settle the following assumptions: In addition to the start and the endpoints, two points that the curve must pass through are given. Those points have the same 𝑦 and 𝑧 coordinates, respectively.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1.">Method 1: path planning with single Bézier curve</head><p>In the first method, we construct a path with a single Bézier curve. We give the 𝑥 coordinates of the control points equally distributed and select the control points using equality and inequality evaluation. Furthermore, we consider only the case where the curve is curved in the positive direction in both 𝑦 and 𝑧 coordinates.</p><p>If an 𝑛-degree Bézier Curve in ℝ 3 is represented as 𝑃(𝑡) = (𝑃 𝑥 (𝑡), 𝑃 𝑦 (𝑡), 𝑃 𝑧 (𝑡)), each component is expressed as</p><formula xml:id="formula_4">𝑃 𝑥 (𝑡) = 𝑛 ∑ 𝑖=0 ( 𝑛 𝑖 )𝑡 𝑖 (1 − 𝑡) 𝑛−𝑖 𝑥 𝑖 , 𝑃 𝑦 (𝑡) = 𝑛 ∑ 𝑖=0 ( 𝑛 𝑖 )𝑡 𝑖 (1 − 𝑡) 𝑛−𝑖 𝑦 𝑖 , 𝑃 𝑧 (𝑡) = 𝑛 ∑ 𝑖=0 ( 𝑛 𝑖 )𝑡 𝑖 (1 − 𝑡) 𝑛−𝑖 𝑧 𝑖 ,<label>(1)</label></formula><p>using the control points 𝑃 𝑖 (𝑥 𝑖 , 𝑦 𝑖 , 𝑧 𝑖 ) (𝑖 = 0, 1, … 𝑛). Here, we define the 𝑥 coordinates of each control point satisfying that 𝑃 𝑥 (𝑡) is a linear polynomial in 𝑡. This approach has the advantage that it not only reduces the amount of calculation required to create the trajectory but also makes the operation of "finding the value of 𝑡 from the 𝑥 coordinate of a point on the curve" easier. To achieve this objective, simply place the 𝑥 coordinates 𝑥 0 , 𝑥 1 , … , 𝑥 𝑛 of each control point in order at equal intervals, i.e., for 𝑖 = 0, 1, … , 𝑛, let</p><formula xml:id="formula_5">𝑥 𝑖 = (𝑛 − 𝑖)𝑥 0 + 𝑖𝑥 𝑛 𝑛 .</formula><p>Substituting 𝑥 𝑖 into 𝑃 𝑥 (𝑡) in eq. ( <ref type="formula" target="#formula_4">1</ref>) gives</p><formula xml:id="formula_6">𝑃 𝑥 (𝑡) = (1 − 𝑡)𝑥 0 + 𝑡𝑥 𝑛 .<label>(2)</label></formula><p>Next, we define the 𝑦 and 𝑧 coordinates of each control point. In eq. ( <ref type="formula" target="#formula_1">2</ref>), denote the 𝑥 coordinate of a point on the curve simply as 𝑃 𝑥 (𝑡) = 𝑥, and solve eq. ( <ref type="formula" target="#formula_1">2</ref>) for 𝑡, then we have</p><formula xml:id="formula_7">𝑡 = 𝑥 − 𝑥 0 𝑥 𝑛 − 𝑥 0 .<label>(3)</label></formula><p>Now, assume that there is an obstacle in the feasible region, and to avoid it, the 𝑦 and 𝑧 coordinates of the path must always exceed a certain value ℎ 𝑦 &gt; 0 and ℎ 𝑧 &gt; 0, respectively, in the interval [𝑎, 𝑏] in the 𝑥 coordinate, where 𝑥 𝑝 &lt; 𝑎 ≤ 𝑥 𝑝+1 ≤ 𝑥 𝑞 ≤ 𝑏 &lt; 𝑥 𝑞+1 for 1 ≤ 𝑝 &lt; 𝑞 + 1 ≤ 𝑛 (see Figure <ref type="figure" target="#fig_2">4</ref>). Substituting 𝑥 = 𝑎 and 𝑏 for eq. ( <ref type="formula" target="#formula_7">3</ref>) and denoting them as 𝑡 𝑎 and 𝑡 𝑏 , respectively, we obtain</p><formula xml:id="formula_8">𝑡 𝑎 = 𝑎 − 𝑥 0 𝑥 𝑛 − 𝑥 0 , 𝑡 𝑏 = 𝑏 − 𝑥 0 𝑥 𝑛 − 𝑥 0 .</formula><p>For the 𝑦 coordinate of the curve, among the tuples of 𝑦 1 , 𝑦 2 , … 𝑦 𝑛−1 that satisfy the following equalities and inequalities:</p><formula xml:id="formula_9">𝑃 𝑦 (𝑡 𝑎 ) = 𝑃 𝑦 (𝑡 𝑏 ) = ℎ 𝑦 , 𝑦 0 ≤ 𝑦 1 , … , 𝑦 𝑝 , ℎ 𝑦 ≤ 𝑦 𝑝+1 , … , 𝑦 𝑞 , 𝑦 𝑛 ≤ 𝑦 𝑞+1 , … , 𝑦 𝑛−1 ,<label>(4)</label></formula><p>select the one with the smallest sum ∑ 𝑞 𝑘=𝑝+1 𝑦 𝑘 . The reason for selecting the tuple with the smallest sum is to minimize the bulge in the positive direction of the 𝑦 coordinate of the curve. Furthermore, to prevent each 𝑦 𝑖 value from becoming too small, a lower limit is set as constraints in eq. ( <ref type="formula" target="#formula_9">4</ref>) so that it does not fall below the coordinate of the starting point before crossing the obstacle, and the coordinate of the endpoint after crossing the obstacle.</p><p>For the 𝑧 coordinate of the curve, 𝑧 1 , 𝑧 2 , … , 𝑧 𝑛−1 can be calculated in the same way as 𝑦 1 , 𝑦 2 , … 𝑦 𝑛−1 are calculated in above, simply by replacing 𝑦 𝑖 with 𝑧 𝑖 . After obtaining 𝑦 1 , 𝑦 2 , … 𝑦 𝑛−1 and 𝑧 1 , 𝑧 2 , … , 𝑧 𝑛−1 , put these values into 𝑃 𝑦 (𝑡) and 𝑃 𝑧 (𝑡) in eq. ( <ref type="formula" target="#formula_4">1</ref>), respectively, which gives the coordinates of all control points, thus the curve becomes the trajectory of the end effector.</p><p>The advantage of this method is that the 𝑥 coordinate of a point on the curve is expressed as a linear polynomial 𝑡, thus the value of 𝑡 can easily obtained from 𝑥 as in eq. ( <ref type="formula" target="#formula_7">3</ref>), and the curve can be flexibly designed according to the position and the size of the obstacles. However, at present, it is not guaranteed that the curve will be included in the feasible region, thus improvements of the method are required, such as not only suppressing the bulge of the curve but also adding new constraints so that the curve will be included in the feasible region.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.2.">Method 2: path planning with multiple Bézier curves</head><p>The second method is to construct a path connecting multiple 3-degree Bézier curves calculated under certain conditions. We use a Bézier curve of degree 3 because it is the curve of the smallest degree whose curvature can be controlled. This method makes effective use of the convex hull property mentioned above since it is guaranteed that the created curves do not go outside the feasible region.</p><p>We consider the connection of three cubic Bézier Curves 𝑃(𝑡), 𝑄(𝑡), and 𝑅(𝑡), where</p><formula xml:id="formula_10">𝑃(𝑡) = 3 ∑ 𝑖=0 ( 3 𝑖 )𝑡 𝑖 (1 − 𝑡) 3−𝑖 𝑃 𝑖 , 𝑄(𝑡) = 3 ∑ 𝑖=0 ( 3 𝑖 )𝑡 𝑖 (1 − 𝑡) 3−𝑖 𝑄 𝑖 , 𝑅(𝑡) = 3 ∑ 𝑖=0 ( 3 𝑖 )𝑡 𝑖 (1 − 𝑡) 3−𝑖 𝑅 𝑖 .<label>(5)</label></formula><p>Assume that, in eq. ( <ref type="formula" target="#formula_10">5</ref>), 𝑃 𝑖 , 𝑄 𝑖 , 𝑅 𝑖 ∈ ℝ 3 and we consider 𝑃(𝑡), 𝑄(𝑡), 𝑅(𝑡) as vector-valued polynomials.</p><p>As with the method in Section 4.1, we aim to draw a curve in which the 𝑦 and the 𝑧 coordinates exceed a certain value in a certain interval in the 𝑥 coordinate, by drawing the first curve 𝑃(𝑡) from the starting point to that interval, the second curve 𝑄(𝑡) avoiding the obstacles, and the third curve to the endpoint. Since the endpoint of 𝑃(𝑡) and the start point of 𝑄(𝑡), and the end point of 𝑄(𝑡) and the start point of 𝑅(𝑡) are identical, respectively, we have 𝑃(1) = 𝑄(0) and 𝑄(1) = 𝑅(0), i.e., 𝑃 3 = 𝑄 0 and 𝑄 3 = 𝑅 0 . In this path planning, we aim to express the other control points using the predefined points 𝑃 0 , 𝑄 0 , 𝑅 0 , 𝑅 3 .</p><p>To make the connection smooth, we settle a constraint that the first and second derivatives at the connection points are equal for two adjacent curves, respectively. The necessary and sufficient conditions for 𝑃 ′ (1) = 𝑄 ′ (0) and 𝑄 ′ (1) = 𝑅 ′ (0) to hold are 2𝑄 0 = 𝑃 2 +𝑄 1 , 2𝑅 0 = 𝑄 2 +𝑅 1 , respectively. Similarly, the necessary and sufficient conditions for 𝑃 ″ (1) = 𝑄 ″ (0) and <ref type="bibr" target="#b15">[16]</ref>. So far, we see that the control points 𝑃 1 , 𝑃 2 , 𝑅 1 , 𝑅 2 depend on 𝑄 1 and 𝑄 2 as</p><formula xml:id="formula_11">𝑄 ″ (1) = 𝑅 ″ (0) to hold are 2(𝑄 1 − 𝑃 2 ) = 𝑄 2 − 𝑃 1 , 2(𝑅 1 − 𝑄 2 ) = 𝑅 2 − 𝑄 1 , respectively</formula><formula xml:id="formula_12">𝑃 1 = 4𝑄 0 − 4𝑄 1 + 𝑄 2 , 𝑃 2 = 2𝑄 0 − 𝑄 1 , 𝑅 1 = 2𝑅 0 − 𝑄 2 , 𝑅 2 = 𝑄 1 − 4𝑄 2 + 4𝑅 0 .<label>(6)</label></formula><p>Now we determine 𝑄 1 and 𝑄 2 . Let the feasible region be a hemisphere with a radius 𝑟 = max{‖𝑃 0 ‖, ‖𝑄 0 ‖, ‖𝑅 0 ‖, ‖𝑅 3 ‖} centered at the origin and with 𝑧 &gt; 0. Here, ‖ ⋅ ‖ represents the norm of the vector. We require all remaining control points to be included in this hemisphere, i.e., ‖𝑃 𝑖 ‖ ≤ 𝑟, ‖𝑄 𝑖 ‖ ≤ 𝑟, ‖𝑅 𝑖 ‖ ≤ 𝑟 (𝑖 = 1, 2), which is reduced to solve the problem to find 𝑄 1 and 𝑄 2 that satisfy the above conditions. This problem is expressed as eliminating quantified variables in a quantified formula</p><formula xml:id="formula_13">∃𝑃 1 ∃𝑃 2 ∃𝑅 1 ∃𝑅 2 ((𝑃 1 = 4𝑄 0 − 4𝑄 1 + 𝑄 2 ) ∧ (𝑃 2 = 2𝑄 0 − 𝑄 1 ) ∧ (𝑅 1 = 2𝑅 0 − 𝑄 2 ) ∧ (𝑅 2 = 𝑄 1 − 4𝑄 2 + 4𝑅 0 ) ∧ (‖𝑃 1 ‖ ≦ 𝑟) ∧ (‖𝑃 2 ‖ ≦ 𝑟) ∧ (‖𝑄 1 ‖ ≦ 𝑟) ∧ (‖𝑄 2 ‖ ≦ 𝑟) ∧ (‖𝑅 1 ‖ ≦ 𝑟) ∧ (‖𝑅 2 ‖ ≦ 𝑟)).<label>(7)</label></formula><p>After solving eq. ( <ref type="formula" target="#formula_13">7</ref>) and conditions on 𝑄 1 and 𝑄 2 are obtained, then choose 𝑄 1 and 𝑄 2 that makes ‖𝑄 1 − 𝑄 0 ‖ 2 + ‖𝑄 2 − 𝑄 1 ‖ 2 + ‖𝑅 0 − 𝑄 2 ‖ 2 as small as possible satisfying eq. ( <ref type="formula" target="#formula_13">7</ref>), Then the rest of the control points 𝑃 0 , 𝑃 1 , 𝑃 2 , 𝑄 0 , 𝑅 0 , 𝑅 1 , 𝑅 2 , 𝑅 3 are determined, and the path of the end effector is obtained. This method is promising since, if eq. ( <ref type="formula" target="#formula_13">7</ref>) is solved, it gives a path that does not go beyond the feasible region and passes two points through for obstacle avoidance. Unfortunately, quantifier elimination for eq. ( <ref type="formula" target="#formula_13">7</ref>) is computationally expensive and, at present, has not yet been successful. Therefore, by relaxing the original problem, we propose an alternative method to define a path in practical time.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.2.1.">Using 2-degree Bézier curves</head><p>In the alternative method, we create a path using three 2-degree Bèzier Curves</p><formula xml:id="formula_14">P (𝑡) = 2 ∑ 𝑖=0 ( 2 𝑖 )𝑡 𝑖 (1 − 𝑡) 2−𝑖 P 𝑖 , Q(𝑡) = 2 ∑ 𝑖=0 ( 2 𝑖 )𝑡 𝑖 (1 − 𝑡) 2−𝑖 Q 𝑖 , R (𝑡) = 2 ∑ 𝑖=0 ( 2 𝑖 )𝑡 𝑖 (1 − 𝑡) 2−𝑖 R 𝑖 ,</formula><p>in place of 𝑃(𝑡), 𝑄(𝑡), 𝑅(𝑡) in eq. ( <ref type="formula" target="#formula_10">5</ref>), respectively, whose first-order differentials are identical at the connection points, together with P 2 = Q 0 , Q 2 = R 0 . Now we determine the other control points using only the predefined P 0 = 𝑃 0 , Q 0 = 𝑄 0 , R 0 = 𝑅 0 , R 2 = 𝑅 3 . Since the first derivatives at the connection points are the same for two adjacent curves, we have 2 Q</p><formula xml:id="formula_15">0 = P 1 + Q 1 , 2 R 0 = Q 1 + R 1 . For 𝑟 ∶= max{‖ P 0 ‖, ‖ Q 0 ‖, ‖ R 0 ‖, ‖ R 3 ‖}</formula><p>, we require all remaining control points to be included in the hemisphere centered at the origin with radius 𝑟, i.e., ‖ P</p><formula xml:id="formula_16">1 ‖ ≤ 𝑟, ‖ Q 1 ‖ ≤ 𝑟, ‖ R 1 ‖ ≤ 𝑟.</formula><p>Then, the problem is reduced to eliminate quantified variables in a quantified formula</p><formula xml:id="formula_17">∃ P 1 ∃ R 1 (( P 1 = 2 Q 0 − Q 1 ) ∧ ( R 1 = 2 R 0 − Q 1 ) ∧ (‖ P 1 ‖ ≤ 𝑟) ∧ (‖ Q 1 ‖ ≤ 𝑟) ∧ (‖ R 1 ‖ ≤ 𝑟)).<label>(8)</label></formula><p>Fortunately, by quantifier elimination, we have obtained the possible region of Q 1 that satisfies eq. ( <ref type="formula" target="#formula_17">8</ref>), then three Bézier Curves were obtained in the same way as described in the cubic Bézier Curves case. (The computation was done using the computer algebra system Wolfram Mathematica 13. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5.">Concluding Remarks</head><p>We have proposed two methods for trajectory planning of manipulators using Bézier curves so that the generated curve does not go outside the feasible region. The first method can avoid obstacles with a minimum curve that matches the position and size of the obstacle, but it does not guarantee that any point on the curve is included in the region. The second method can guarantee that the curve does not go outside the region based on the constraint conditions, but its calculation cost is high and the position of the control point has not yet been obtained. To overcome this, we have proposed an alternative method using 2-degree Bézier curves, which can be calculated in a practical time.</p><p>Our future work includes the establishment of a better method for selecting the control points of a curve that overcomes current issues. We believe that method 2 is promising since the curve generated by the method is guaranteed to be included within the feasible region. The next issue to be solved is to improve computational efficiency by deriving more appropriate constraints, making the algorithm more efficient, and so on.</p><p>Once this method is established, we will move on to the stage of calculating the sequence of joint placements for the completed trajectory, leading to improved trajectory planning as proposed in our previous work <ref type="bibr" target="#b9">[10]</ref>.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 :Figure 2 :</head><label>12</label><figDesc>Figure 1: The feasible region of the manipulator.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>3 Figure 3 :</head><label>33</label><figDesc>Figure 3: Construction of a 3-degree Bézier Curve.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_2"><head>Figure 4 :</head><label>4</label><figDesc>Figure 4: Position of (𝑎, ℎ 𝑦 ) and (𝑏, ℎ 𝑦 ).</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head></head><label></label><figDesc>3.1 in approximately 15.4 [s]. The computing environment is as follows: Intel Core i3-8130U 2.20GHz, 8GB RAM, Windows 11 Home.)</figDesc><table /></figure>
		</body>
		<back>

			<div type="availability">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>M. Mikawa) GLOBE https://researchmap.jp/aterui (A. Terui); https://mikawalab.org/ (M. Mikawa</p></div>
			</div>


			<div type="funding">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>⋆ This work was partially supported by JKA and its promotion funds from KEIRIN RACE.</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Robots, computer algebra and eight connected components</title>
		<author>
			<persName><forename type="first">J</forename><surname>Capco</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><forename type="middle">S E</forename><surname>Din</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Schicho</surname></persName>
		</author>
		<idno type="DOI">10.1145/3373207.3404048</idno>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 45th International Symposium on Symbolic and Algebraic Computation, ISSAC &apos;20</title>
				<meeting>the 45th International Symposium on Symbolic and Algebraic Computation, ISSAC &apos;20</meeting>
		<imprint>
			<publisher>ACM</publisher>
			<date type="published" when="2020">2020</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<author>
			<persName><forename type="first">J.-C</forename><surname>Faugère</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J.-P</forename><surname>Merlet</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Rouillier</surname></persName>
		</author>
		<idno>RR-5923</idno>
		<ptr target="https://hal.inria.fr/inria-00072366" />
		<title level="m">On solving the direct kinematics problem for parallel robots</title>
				<imprint>
			<date type="published" when="2006">2006</date>
		</imprint>
		<respStmt>
			<orgName>INRIA</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">Research Report</note>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">An implementation of Buchbergers&apos; algorithm with applications to robotics</title>
		<author>
			<persName><forename type="first">C</forename><forename type="middle">M</forename><surname>Kalker-Kalkman</surname></persName>
		</author>
		<idno type="DOI">10.1016/0094-114X(93)90033-R</idno>
	</analytic>
	<monogr>
		<title level="j">Mech. Mach. Theory</title>
		<imprint>
			<biblScope unit="volume">28</biblScope>
			<biblScope unit="page" from="523" to="537" />
			<date type="published" when="1993">1993</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">A Solution of the Inverse Kinematics Problem for a 7-Degrees-of-Freedom Serial Redundant Manipulator Using Gröbner Bases Theory</title>
		<author>
			<persName><forename type="first">S</forename></persName>
		</author>
		<author>
			<persName><forename type="first">Ricardo</forename><surname>Xavier Da Silva</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Schnitman</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><forename type="middle">Cesca</forename><surname>Filho</surname></persName>
		</author>
		<idno type="DOI">10.1155/2021/6680687</idno>
	</analytic>
	<monogr>
		<title level="j">Mathematical Problems in Engineering</title>
		<imprint>
			<biblScope unit="volume">2021</biblScope>
			<biblScope unit="page">6680687</biblScope>
			<date type="published" when="2021">2021</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Triangularizing kinematic constraint equations using Gröbner bases for real-time dynamic simulation</title>
		<author>
			<persName><forename type="first">T</forename><surname>Uchida</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mcphee</surname></persName>
		</author>
		<idno type="DOI">10.1007/s11044-010-9241-8</idno>
	</analytic>
	<monogr>
		<title level="j">Multibody System Dynamics</title>
		<imprint>
			<biblScope unit="volume">25</biblScope>
			<biblScope unit="page" from="335" to="356" />
			<date type="published" when="2011">2011</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Using Gröbner bases to generate efficient kinematic solutions for the dynamic simulation of multi-loop mechanisms</title>
		<author>
			<persName><forename type="first">T</forename><surname>Uchida</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Mcphee</surname></persName>
		</author>
		<idno type="DOI">10.1016/j.mechmachtheory.2012.01.015</idno>
	</analytic>
	<monogr>
		<title level="j">Mech. Mach. Theory</title>
		<imprint>
			<biblScope unit="volume">52</biblScope>
			<biblScope unit="page" from="144" to="157" />
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Comprehensive Gröbner Bases</title>
		<author>
			<persName><forename type="first">V</forename><surname>Weispfenning</surname></persName>
		</author>
		<idno type="DOI">10.1016/0747-7171(92)90023-W</idno>
	</analytic>
	<monogr>
		<title level="j">J. Symbolic Comput</title>
		<imprint>
			<biblScope unit="volume">14</biblScope>
			<biblScope unit="page" from="1" to="29" />
			<date type="published" when="1992">1992</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Real Quantifier Elimination by Computation of Comprehensive Gröbner Systems</title>
		<author>
			<persName><forename type="first">R</forename><surname>Fukasaku</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Iwane</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><surname>Sato</surname></persName>
		</author>
		<idno type="DOI">10.1145/2755996.2756646</idno>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 2015 ACM on International Symposium on Symbolic and Algebraic Computation, ISSAC &apos;15</title>
				<meeting>the 2015 ACM on International Symposium on Symbolic and Algebraic Computation, ISSAC &apos;15<address><addrLine>New York, NY, USA</addrLine></address></meeting>
		<imprint>
			<publisher>Association for Computing Machinery</publisher>
			<date type="published" when="2015">2015</date>
			<biblScope unit="page" from="173" to="180" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<monogr>
		<title level="m" type="main">A Design and an Implementation of an Inverse Kinematics Computation in Robotics Using Real Quantifier Elimination based on Comprehensive Gröbner Systems</title>
		<author>
			<persName><forename type="first">S</forename><surname>Otaki</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Terui</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Mikawa</surname></persName>
		</author>
		<idno type="DOI">10.48550/arXiv.2111.00384</idno>
		<idno type="arXiv">arXiv:2111.00384</idno>
		<imprint>
			<date type="published" when="2021">2021</date>
		</imprint>
	</monogr>
	<note type="report_type">Preprint</note>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Inverse Kinematics and Path Planning of Manipulator Using Real Quantifier Elimination Based on Comprehensive Gröbner Systems</title>
		<author>
			<persName><forename type="first">M</forename><surname>Yoshizawa</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Terui</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Mikawa</surname></persName>
		</author>
		<idno type="DOI">10.1007/978-3-031-41724-5_21</idno>
	</analytic>
	<monogr>
		<title level="m">Computer Algebra in Scientific Computing: CASC 2023</title>
		<title level="s">Lecture Notes in Computer Science</title>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2023">2023</date>
			<biblScope unit="volume">14139</biblScope>
			<biblScope unit="page" from="393" to="419" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b10">
	<analytic>
		<title level="a" type="main">An Optimized Path Planning of Manipulator with Spline Curves Using Real Quantifier Elimination Based on Comprehensive Gröbner Systems</title>
		<author>
			<persName><forename type="first">Y</forename><surname>Shirato</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Oka</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Terui</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Mikawa</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">SCSS 2024 Work-in-progress Proceedings</title>
				<imprint>
			<publisher>Open Publishing Association</publisher>
			<date type="published" when="2024">2024</date>
		</imprint>
	</monogr>
	<note>To appear</note>
</biblStruct>

<biblStruct xml:id="b11">
	<analytic>
		<title level="a" type="main">Improved trajectory planning of an industrial parallel mechanism by a composite polynomial consisting of bëzier curves and cubic polynomials</title>
		<author>
			<persName><forename type="first">U</forename><surname>Dincer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Cevik</surname></persName>
		</author>
		<idno type="DOI">10.1016/j.mechmachtheory.2018.11.009</idno>
	</analytic>
	<monogr>
		<title level="j">Mechanism and Machine Theory</title>
		<imprint>
			<biblScope unit="volume">132</biblScope>
			<biblScope unit="page" from="248" to="263" />
			<date type="published" when="2019">2019</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b12">
	<analytic>
		<title level="a" type="main">Dual-optimization trajectory planning based on parametric curves for a robot manipulator</title>
		<author>
			<persName><forename type="first">Y.-L</forename><surname>Kuo</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C.-C</forename><surname>Lin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Z.-T</forename><surname>Lin</surname></persName>
		</author>
		<idno type="DOI">10.1177/1729881420920046</idno>
	</analytic>
	<monogr>
		<title level="j">International Journal of Advanced Robotic Systems</title>
		<imprint>
			<biblScope unit="volume">17</biblScope>
			<biblScope unit="page">1729881420920046</biblScope>
			<date type="published" when="2020">2020</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b13">
	<analytic>
		<title level="a" type="main">Trajectory planning with bezier curve in cartesian space for industrial gluing robot</title>
		<author>
			<persName><forename type="first">Z</forename><surname>Xu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Wei</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Wang</surname></persName>
		</author>
		<author>
			<persName><forename type="first">X</forename><surname>Zhang</surname></persName>
		</author>
		<idno type="DOI">10.1007/978-3-319-13963-0_15</idno>
	</analytic>
	<monogr>
		<title level="m">Intelligent Robotics and Applications</title>
				<editor>
			<persName><forename type="first">X</forename><surname>Zhang</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">H</forename><surname>Liu</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">Z</forename><surname>Chen</surname></persName>
		</editor>
		<editor>
			<persName><forename type="first">N</forename><surname>Wang</surname></persName>
		</editor>
		<meeting><address><addrLine>Cham</addrLine></address></meeting>
		<imprint>
			<publisher>Springer International Publishing</publisher>
			<date type="published" when="2014">2014</date>
			<biblScope unit="page" from="146" to="154" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b14">
	<monogr>
		<title level="m" type="main">The Mathematical Basis of the UNIURF CAD System</title>
		<author>
			<persName><forename type="first">P</forename><surname>Bézier</surname></persName>
		</author>
		<idno type="DOI">10.1016/C2013-0-01005-5</idno>
		<imprint>
			<date type="published" when="1986">1986</date>
			<publisher>Elsevier</publisher>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b15">
	<analytic>
		<title level="a" type="main">Trajectory Generation and Control for Manipulator Using the Bezier Curve (in Japansese)</title>
		<author>
			<persName><forename type="first">T</forename><surname>Tsuchihashi</surname></persName>
		</author>
		<idno type="DOI">10.1299/kikaic.55.124</idno>
	</analytic>
	<monogr>
		<title level="j">Transactions of the Japan Society of Mechanical Engineers Series C</title>
		<imprint>
			<biblScope unit="volume">55</biblScope>
			<biblScope unit="page" from="124" to="128" />
			<date type="published" when="1989">1989</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
