文档库 最新最全的文档下载
当前位置:文档库 › Real-Time Randomized Path Planning for Robot Navigation

Real-Time Randomized Path Planning for Robot Navigation

Real-Time Randomized Path Planning for Robot Navigation
Real-Time Randomized Path Planning for Robot Navigation

Real-Time Randomized Path Planning for Robot Navigation?

James Bruce(jbruce@https://www.wendangku.net/doc/219388366.html,)

Manuela Veloso(mmv@https://www.wendangku.net/doc/219388366.html,)

Computer Science Department

Carnegie Mellon University

5000Forbes Avenue

Pittsburgh PA15213,USA

Abstract

Mobile robots often?nd themselves in a situation where they must?nd a trajectory to another po-sition in their environment,subject to constraints posed by obstacles and the capabilities of the robot itself.This is the problem of planning a path through a continuous domain,for which several approaches have been developed.Each has some limitations how-ever,including requiring state discretizations,steep e?ciency vs.accuracy tradeo?s,or the di?culty of adding interleaved execution.Rapidly-Exploring Random Trees(RRTs)are a recently developed rep-resentation on which fast continuous domain path planners can be based.In this work,we build a path planning system based on RRTs that interleaves plan-ning and execution,?rst evaluating it in simulation and then applying it to physical robots.Our planning algorithm,ERRT(execution extended RRT),intro-duces two novel extensions of previous RRT work, the waypoint cache and adaptive cost penalty search, which improve replanning e?ciency and the quality of generated paths.ERRT is successfully applied to a real-time multi-robot system.Results demonstrate that ERRT is signi?cantly more e?cient for replan-ning than a basic RRT planner,performing competi-tively with or better than existing heuristic and reac-tive real-time path planning approaches.ERRT is a signi?cant step forward with the potential for making path planning common on real robots,even in chal-lenging continuous,highly dynamic domains. Introduction

The path-planning problem is as old as mobile robots,but is not one that has found a universal solution.Speci?cally,in complicated,fast evolving ?This research was sponsored by Grants Nos.DABT63-99-1-0013,F30602-98-2-0135and F30602-97-2-0250.The in-formation in this publication does not necessarily re?ect the position of the funding agencies and no o?cial endorsement should be inferred.environments such as RoboCup[3],currently popu-lar approaches to path-planning have their strengths, but still leave much to be desired.In particular,most require a state discretization and are best suited for domains with relaxed time constraints for planning. One of the relatively recently developed tools that may help tackle the problem of real-time path plan-ning are Rapidly-exploring random trees(RRTs)[7]. RRTs employ randomization to explore large state spaces e?ciently,and can form the basis for a prob-abilistically complete though non-optimal kinody-namic path planner[8].Their strengths are that they can e?ciently?nd plans in high dimensional spaces because they avoid the state explosion that discretization faces.Furthermore,due to their incre-mental nature,they can maintain complicated kine-matic constraints if necessary.A basic planning al-gorithm using RRTs is as follows:Start with a trivial tree consisting only of the initial con?guration.Then iterate:With probability p,?nd the nearest point in the current tree and extend it toward the goal g.Ex-tending means adding a new point to the tree that extends from a point in the tree toward g while main-taining whatever kinematic constraints exist.In the other branch,with probability1?p,pick a point x uniformly from the con?guration space,?nd the nearest point in the current tree,and extend it to-ward x.Thus the tree is built up with a combination of random exploration and biased motion towards the goal con?guration.

Most current robot systems that have been devel-oped to date are controlled by heuristic or poten-tial?eld methods at the lowest level,and many ex-tend this upward to the level of path navigation[5]. Since the time to respond must be bounded,reactive methods are used to build constant or bounded time heuristics for making progress toward the goal.One set of reactive methods that have proved quite pop-ular are potential?elds and motor schemas[1].Al-though they meet the need for action under time con-

straints,these methods su?er from the lack of looka-head,which can lead to highly non-optimal paths and problems with oscillation.This is commonly ac-cepted,and dealt with at a higher layer of the sys-tem that detects failure or a local minimum and tries to break out of it.RRTs,as used in our work and presented in this paper,should provide a good com-pliment for very simple control heuristics,and take much of the complexity out of composing them to form a navigation system.Speci?cally,local minima can be reduced substantially through lookahead,and rare cases need not be enumerated since the planner has a nonzero probability of?nding a solution on its own through search.Furthermore,an RRT sys-tem can be fast enough to satisfy the tight timing requirements needed for fast navigation.

While not as popular as heuristic methods,non-reactive planning methods for interleaved planning and execution have been developed,with some promising results.Among these are agent-centered A*search methods[4]and the D*variant of A* search[9].However,using these planners requires discretization or tiling of the world in order to oper-ate in continuous domains.This leads to a tradeo?between a higher resolution,with is higher memory and time requirements,and a low resolution with non-optimality due to discretization.Most of the fea-tures of agent-centered search methods do not rely on A*as a basis,however,so we can achieve many of their bene?ts using an RRT based planner which?ts more naturally into domains with continuous state spaces.The RRT planner we developed is roughly competitive with these other methods in that both can meet tight timing requirements and can reuse information from previous plans,but at this point it does not perform signi?cantly better either.Its strength instead lies mainly as a proof of concept, since the base RRT system is relatively easy to ex-tend to environments with moving obstacles,higher dimensional state spaces,and kinematic constraints. The primary goal of our work was thus to demon-strate the feasibility of an RRT-based algorithm on a real robot planning at real-time rates.This work appears to be the?rst successful application of an RRT planner to a real mobile robot[6].

In order to make online planning e?cient enough to be practical,two novel additions to the plan-ning algorithm are introduced,speci?cally the way-point cache for replanning and adaptive cost penalty search.The second section of this paper de?nes the basic RRT algorithm.The next section intro-duces our ERRT contribution.We then describe the implementations for simulated and real robot do-mains.Speci?cally,ERRT is applied to a multi-robot domain with small,fast moving,remote computer-controlled robots with a single overhead camera pro-viding global sensing.Plans are reconstructed30 times a second,because in a continuous domain, failure is constant due to deviations of the real sys-tem from its model.Finally,the last section o?ers concluding remarks and some lessons learned about working with RRT planners.

RRT Planning

Basic RRT Algorithm

In essence,an RRT planner searches for a path from an initial state to a goal state by expanding a search tree.For its search,it requires the following three domain-speci?c function primitives:

Function Extend(env:environment,current:state,

target:state):state

Function Distance(current:state,target:state):real Function RandomState():state

First,the Extend function calculates a new state that can be reached from the target state by some in-cremental distance(usually a constant distance or time),which in general makes progress toward the goal.If a collision with an obstacle in the environ-ment would occur by moving to that new state,then a default value,EmptyState,of type state is returned to capture the fact that there is no“successor”state due to the obstacle.In general,any heuristic meth-ods suitable for control of the robot can be used here, provided there is a reasonably accurate model of the results of performing its actions.The heuristic does not need to be very complicated,and does not even need to avoid obstacles(just detect when a state would hit them).However,the better the heuristic, the fewer nodes the planner will need to expand on average,since it will not need to rely as much on ran-dom exploration.Next,the function Distance needs to provide an estimate of the time or distance(or any other objective that the algorithm is trying to minimize)that estimates how long repeated applica-tion of Extend would take to reach the goal.Finally, RandomState returns a state drawn uniformly from the state space of the environment.

For a simple example,a holonomic point robot with no acceleration constraints can implement Extend simply as a step along the line from the current state to the target,and Distance as the Euclidean distance between the two states.Table1shows the complete basic RRT planner with its stochastic decision be-tween the search options:

?with probability p,it expands towards the goal minimizing the objective function Distance,

?with probability1?p,it does random explo-ration by generating a RandomState.

function RRTPlan(env:environment,initial:state,

goal:state):rrt-tree

var nearest,extended,target:state;

var tree:rrt-tree;

nearest:=initial;

rrt-tree:=initial;

while(Distance(nearest,goal)

target=ChooseTarget(goal);

nearest=Nearest(tree,target);

extended=Extend(env,nearest,target);

if extended=EmptyState then

AddNode(tree,extended);

return tree;

function ChooseTarget(goal:state):state

var p:real;

p=UniformRandom in[0.0..1.0];

if0

return goal;

else if GoalProb

return RandomState();

function Nearest(tree:rrt-tree,target:state):state var nearest:state;

nearest:=EmptyState;

foreach state s in current-tree

if Distance(s,target)<

Distance(nearest,target)then

nearest:=s;

return nearest;

Table1:The basic RRT planner stochastically ex-pands its search tree to the goal or to a random state. The function Nearest uses the distance function im-plemented for the domain to?nd the nearest point in the tree to some target point outside of it.Choose-Target chooses the goal part of the time as a directed search,and otherwise chooses a target taken uni-formly from the domain as an exploration step.Fi-nally,the main planning procedure uses these func-tions to iteratively pick a stochastic target and grow the nearest part of the tree towards that target.The algorithm terminates when a threshold distance to the goal has been reached,though it is also common to limit the total number of nodes that can be ex-panded to bound execution time.

Extended RRT Algorithm-ERRT

Some optimizations over the basic described in exist-ing work are bidirectional search to speed planning, and encoding the tree’s points in an e?cient spatial data structure[2].In this work,a KD-tree was used to speed nearest neighbor lookup,but bidirectional search was not used because it decreases the gener-ality of the goal state speci?cation(it must then be a speci?c state,and not a region of states).Addi-tional possible optimizations include a more general biased distribution,which was explored in this work in the form of a waypoint cache.If a plan was found in a previous iteration,it is likely to yield insights into how a plan might be found at a later time when planning again;The world has changed but usually not by much,so the history from previous plans can be a guide.The waypoint cache was implemented by keeping a constant size array of states,and when-ever a plan was found,all the states in the plan were placed into the cache with random replacement.This stores the knowledge of where a plan might again be found in the near future.To take advantage of this for planning,Table2shows the modi?cations to the function ChooseTarget.

function ChooseTarget’(goal:state):state

var p:real;

var i:integer;

p=UniformRandom in[0.0..1.0];

i=UniformRandom in[0..NumWayPoints-1];

if0

return goal;

else if GoalProb

return WayPointCache[i];

else if GoalProb+WayPointProb

Table2:The extended RRT planner stochastically expands its search tree to the goal;to a random state; or to a waypoint cache.

With ERRT,there are now three probabilities in the distribution of target states.With probability P[goal],the goal is chosen as the target;With prob-ability P[waypoint],a random waypoint is chosen, and with the remaining probability a uniform state is chosen as before.The way the extended algo-rithm progresses is illustrated in Figure1.Typi-cal values used in this work were P[goal]=0.1and P[waypoint]=0.6.Another extension was adaptive beta search,where the planner adaptively modi?ed a parameter to help it?nd shorted paths.A simple RRT planner is building a greedy approximation to a minimum spanning tree,and does not care about the path lengths from the initial state(the root node in the tree).The distance metric can be modi?ed to include not only the distance from the tree to a tar-get state,but also the distance from the root of the tree,multiplied by some gain value.A higher value of this gain value(beta)results in shorter paths from the root to the leaves,but also decreases the amount of exploration of the state space,biasing it to near

Goal Goal

Goal

Goal Extend towards a random point with probability 1?p?r

with probability r Extend towards a waypoint

with probability p Extend towards the goal cached waypoints Current tree with Figure 1:Extended RRT with a waypoint cache for e?cient replanning.

the initial state in a “bushy”tree.A value of 1for beta will always extend from the root node for any Euclidean metric in a continuous domain,while a value of 0is equivalent to the original algorithm.The best value seems to vary with domain and even problem instance,and appears to be a steep tradeo?between ?nding an shorter plan and not ?nding one at all.However,with biased replanning,an adaptive mechanism can be used instead that seems to work quite well.When the planner starts,beta is set to 0.Then on successive replans,if the previous run found a plan,beta is incremented,and decremented other-wise.In addition the value is clipped to between 0and 0.65.This adaptive bias schedule re?ects the idea that a bad plan is better than no plan initially,and once a plan is in the cache and search is biased toward the waypoints,nudges the system to try to shorten the plan helping to improve it over successive runs.

Domain Implementations and Results

Simulation

Figure 2:

An example from the simulation-based RRT

planner,shown at two times during a run.The tree grows from the initial state.The best plan is shown in bold,and cached waypoints are shown as small black dots.

For previous work,we had developed an RRT simu-lation program.For this work,to test strategies for interleaved execution and learning,it was extended to not only plan but also move the initial state a step

Figure 3:

The e?ect of waypoints.The lines shows the

sorted planning times for 2670plans with and without way-points,sorted by time to show the cumulative performance distribution.The upper (red)line shows performance without waypoints,while the lower (blue)line shows performance with waypoints (Waypoints=50,p[Waypoint]=0.4).

along the plan at each iteration.An example run can be seen in ?gure 2.For a RoboCup like domain with 10other obstacles,we found that expanding a con-stant number of nodes (N=500)and 50waypoints worked fairly well,and would normally run in 20ms or less.The step size of the extensions was 8cm (the world is 320cm by 240cm).The goal was used as a target with P [goal ]=0.1and the waypoints were used with P [waypoint ]=0.4.The adaptive beta parameter was turned o?in the ?nal version,since waypoints appear to achieve most of the bene?ts of beta search without increasing the search time,al-though in future work we’d like to explore the re-lationship between the two.The waypoints qualita-tively seemed to help get the agent out of di?cult situations,since once it found a valid plan to take it out of some local minima or other oscillation point,it would be highly likely to ?nd a similar plan again since the waypoints had such a high probability of

being chosen as targets.This e?ect of waypoints on performance was examined in an experiment,and the results are shown in in Figure 3.Since the curves diverge at moderate di?culty,it appears that way-points help speed planning by o?ering “hints”from previous solutions.When the problem becomes im-possible or nearly impossible,neither performs well.This is what one would expect,because waypoints are only available when a solution was found in a previous iteration.Overall,he simulation appeared successful enough that we set out to adapt the sys-tem for a real robot,and to employ a KD-tree to speed up the nearest neighbor lookup step to further improve e?ciency.

RoboCup F180Robot

Control

Figure 4:

A robot (lower left)navigating through

a ?eld of static obstacles,using an RRT path plan-ner.Color pictures and short movies are available at https://www.wendangku.net/doc/219388366.html,/jbruce/rrt .

For RoboCup F180robot control,the system for must take the input from a vision system,reporting the position of all ?eld objects detected from a ?xed overhead camera,and send the output to a radio server which sends velocity commands to the robots that are being controlled.The path planning prob-lem here is mainly to navigate quickly among other robots,while they also more around executing their own behaviors.As a simpli?cation for data gather-ing,we ?rst examined the more simple problem of running from one end of the ?eld to the other,with static robots acting as obstacles in the ?eld.In ?lling in the domain dependent metrics,we ?rst tried met-rics that maintained continuous positional and angu-lar velocity,continuous positional velocity only,and ?xed curvature only.None of these worked well,sub-stantially increasing planning times to unacceptable levels or failing to ?nd it at all within a reasonable number of node expansions (N=2000).All metrics were written in terms of time and timesteps so the planner would tend to optimize the time length of plans.Although this was a substantial setback,we could still fall back on the obviously physically incor-rect model of no kinematic constraints whatsoever and ?xed time step sizes,which had been shown to

work in simulation.The extension metric then be-came a model of a simple heuristic “goto-point”that had already been implemented for the robot.The motivation for this heuristic approach,and per-haps an important lesson is the following:(1)in real-time domain,executing a bad plan immediately is often better than sitting still looking for a bet-ter one,and (2)no matter how bad the plan,the robot could follow it at some speed as long as there are no positional discontinuities.This worked rea-sonably,but the plans were hard to follow and often contained unnecessary motion.It did work however,and the robot was able to move at around 0.8m/s ,less that the 1.2m/s that could safely be achieved by our pre-existing reactive obstacle avoidance sys-tem.The ?nal optimization we made was the post-process the plan,which helped greatly.After a path had been determined,the post processing iteratively tested replacing the head of the plan with a single straight path,and would keep trying more of the head of the plan until it would hit an obstacle.Not only did this smooth out the resulting plan,but the robot tended to go straight at the ?rst “restricted”point,always trying to aim at the free space.This helped tremendously,allowing the robot to navigate at up to 1.7m/s ,performing better than any previ-ous system we have used on our robots.Videos of the this system are available at the following address:https://www.wendangku.net/doc/219388366.html,/jbruce/rrt

Nodes Expanded

Figure 5:

Planning times vs.number of nodes expanded

with and without a KD-tree for nearest neighbor lookup.The KD-tree improves performance,with the gap increasing with the number of nodes due to its expected complexity advantage (E [O (log (n ))]vs.E [O (n )]for the naive version).

The best combination of parameters that we were able to ?nd,trading o?physical performance and success with execution time was the following:500nodes,200waypoints,P [goal ]=0.1,P [waypoint ]=0.7,and a step size of 1/15sec.To examine the e?-ciency gain from using a KD-tree,we ran the system

with and without a KD-tree.The results are shown in Figure5.Not only does the tree have better scal-ability to higher numbers of nodes due to its algo-rithmic advantage,but it provides an absolute per-formance advantage even with as few as100nodes. Using the tree,and the more e?cient second imple-mentation for the robot rather than the initial pro-totype simulator,planning was able to perform on average in2.1ms,with the time rarely going above 3ms.This makes the system fast enough to use in our production RoboCup team,as it will allow5robots to be controlled from a reasonably powerful machine while leaving some time left over for higher level ac-tion selection and strategy.

Conclusion

In this work a robot control system was developed that used an RRT path planner to turn a simple reactive scheme into a high performance path plan-ning system.The novel mechanisms of the waypoint cache and adaptive beta search were introduced,with the waypoint cache providing much improved perfor-mance on di?cult but possible path planning prob-lems.The real robot was able to perform better than previous fully reactive schemes,traveling40%faster while avoiding obstacles,and drastically reducing os-cillation and local minima problems that the reactive scheme had.This is also the?rst application of which we are aware using an RRT-based path planner on a real mobile robot.

Several important lessons can be drawn from this work in the context of real-time path planning:

?A heuristic approach for the extend operator may perform better than a more correct model when planning time is critical.In other words,

a better model may not improve the entire sys-

tem even if it makes the generated plans better.

Using a heuristic distance metric is not unlike symbolic planners that generate relaxed plans as a heuristic to guide search.Here a heuristic metric is used to guide a local motion control algorithm that actually took steps whose model was an accurate model the actual system.Im-proved heuristics seems to be a fruitful area for further research on RRT planners to explore.?A plan generated from an incorrect model re-quires post-processing for optimal performance.

This is because it will contain motion steps that are unusual or even impossible for the robot to perform.Our real robot system worked with-out post processing,but not nearly as well as when a local post-processing metric could ap-ply its accurate model over the head of the plan

and thus remove most of its kinematic inaccura-

cies for the period about to be executed.Future

work might explore a system that maintains a

kinematic constraint early in the plan,but re-

laxes it later to make the goal easier to achieve.

Another possibility is to integrate some of the

post-processing simpli?cation into the tree gen-

eration itself,although careful attention would

need to be paid to maintaining e?ciency.

?Pre-existing reactive control methods can easily

be adapted to be RRT extension and distance

metrics.It can build on these to help eliminate

oscillation and local minima through its looka-

head mechanism.This system ended up work-

ing the best,and was by far the simplest.Since

most existing robots already have reactive navi-

gation systems,and the RRT core code is highly

generic,We expect this to be a common adap-

tation in the future.

This work could not have been conducted without the many people in our group who support our RoboCup F180small robot team.We would specif-ically like to thank Brett Browning and Mike Bowl-ing,without whom we wouldn’t have a team of robots with which interesting research work could be done.

References

[1]R.C.Arkin.Motor schema-based mobile robot nav-

igation.International Journal of Robotics Research, August1989,8(4):92–112,1989.

[2] A.Atramentov and https://www.wendangku.net/doc/219388366.html,Valle.E?cient nearest

neighbor searching for motion planning.In submitted to2002IEEE International Conference on Robotics and Automation,2002.

[3]H.Kitano,M.Asada,Y.Kuniyoshi,I.Noda,and

E.Osawa.Robocup:The robot world cup initiative.

In Proceedings of the IJCAI-95Workshop on Enter-tainment and AI/ALife,1995.

[4]S.Koenig.Agent-centered search.Arti?cial Intelli-

gence,2002,in print.

[5]https://www.wendangku.net/doc/219388366.html,tombe.Robot Motion Planning.Kluwer,1991.

[6]https://www.wendangku.net/doc/219388366.html,Valle.Rapidly-exploring random trees

(https://www.wendangku.net/doc/219388366.html,/rrt/).

[7]https://www.wendangku.net/doc/219388366.html,Valle.Rapidly-exploring random trees:A new

tool for path planning.In Technical Report No.98-11, October1998.

[8]https://www.wendangku.net/doc/219388366.html,Valle and J.James J.Ku?ner.Randomized

kinodynamic planning.In International Journal of Robotics Research,Vol.20,No.5,pages378–400,May 2001.

[9] A.Stentz.Optimal and e?cient path planning for

unknown and dynamic environments.In International Journal of Robotics and Automation,Vol.10,No.3, 1995.

交易开拓者止损止盈

TB源码: Params Numeric Length1(10); // 短均线周期 Numeric Length2(20); // 长均线周期 Numeric InitialStop(20); // 初始止损比例*1000 Numeric BreakEvenStop(30); // 保本止损比例*1000 Numeric TrailingStop(50); // 追踪止损比例*1000 Numeric Lots(1); // 头寸大小 Vars NumericSeries MA1; NumericSeries MA2; BoolSeries condBuy(false); // 做多条件 BoolSeries condSell(false); // 做空条件 Numeric MinPoint; Numeric MyPrice; NumericSeries LowerAfterEntry; // 空头盈利峰值价 BoolSeries bShortStoped(false); // 当前均线空头趋势下是否有过一次进场Numeric StopLine(0); Begin // 把上一根bar的出场状况传递过来 if (BarStatus > 0) { bShortStoped = bShortStoped[1]; } Commentary("bShortStoped="+IIFString(bShortStoped,"true","false")); // 传递或比较盈利峰值价 If(BarsSinceEntry >= 1) { LowerAfterEntry = Min(LowerAfterEntry[1],Low[1]); } Else { LowerAfterEntry = LowerAfterEntry[1]; } Commentary("LowerAfterEntry="+Text(LowerAfterEntry)); // 过滤集合竞价 If((BarType==1 or BarType==2) && date!=date[1] && high==low) return; If(BarType==0 && CurrentTime<=0.09 && high==low) return; MinPoint = MinMove * PriceScale; MA1 = AverageFC(Close,Length1); MA2 = AverageFC(Close,Length2); PlotNumeric("MA1",MA1); PlotNumeric("MA2",MA2);

风景园林专业英语(第一二课翻译)

The practice and theory of Landscape Architecture 景观规划设计理论 【1】Landscape Architecture involves the five major components:They are natural process,human factors,methodology,technology,and values,whatever the scale or emphasis of operation,these five components are consistently relevant.Social and nature factors clearly permeate every facet of a profession that is concerned with people and land. Problem solving,planning,and design methods apply at all scales.Good judgment is consistently required. 风景园林设计包含五个主要方面:自然进程、社会进程、方法论、技术、价值观,无论规模尺度或运作的重点各不相同,这五个要素一贯是相关的。社会因素和自然因素的因子充斥着这个关系到人与土地的领域的方方面面。解决问题,规划、设计方法都会用到所有的尺度。正确的判断判断是一贯必须的。 【2】Consider how natural factors data are relevant to both planning and design.At the regional scale,the impact of development or change in use on a landscape must be known and evaluated before a policy to allow such action is set.An inventory of the natural factors,including geology,soils,hydrology,topography,climate,vegetation and wildlife,and the ecological relationships between them is fundamental to and understanding of the ecosystem to which change is contemplated.Equally important is an analysis of visual quality .Land use policy can thus be made on the basis of the known vulnerability of resistance of the landscape.In other circumstances the natural processes which add up to a given landscape at a give moment in its evolution may,as at Grand Canyon and other unique places,be considered a resource to be preserved,protected,and managed as a public trust.On a smaller scale,soil and geological conditions may be critical in the determination of the cost and the form of building foundations: where it is most suitable to build and where it is not.Sun,wind,and rain are important factors of design where the development of comfort zones for human activity or the growth of plants is a primary objective.Thus,in many ways natural factors influence land use,site planning,and detailer design. 自然因素的考虑与规划和设计都有关系。在区域尺度上,关于利用方面的开发变化的影响,在政策制定之前,必须了解和评估景观的脆弱性和敏感性。详细的自然因素,包括地质的、土壤的、水文的、地形地貌的、气候的、植被的和野生动物的、以及它们之间的生态关系是理解它将要改变的生态系统的基础。同样重要的是视觉质量的分析。土地利用政策的基础是由于了解到景观的脆弱性和抗损性的基础上建立的。在某些发展进化的过程中,一些在特定的时刻作用到特定的景观的自然进程会产生一些公共资源,比如科罗拉多大峡谷,让我们后人去保护它和管理它。在小尺度上,土壤和地质条件是决定建筑的成本和建筑基础形态的关键要素——哪里适宜建立以及哪里不适宜。设计是为人类发展活动找到适宜的空间或者以植物的生长为主要目标,因此,阳光,风和雨是设计最重要的要素。因此,场地和区域的自然要素在景观规划和设计的许多过程当中相互作用。 【3】The social factors apply equally at various scales.In site planning and landscape design,cultural variation in the use and appreciation of open space and parks and the physical and social needs of the young and old are some of the many variables to be considered in a design process that aims to be responsive to social values and human needs.In decisions relates to appropriation of landscape for recreation and aesthetic value people’s perception of t he environment and the

交易开拓者函数一览表文华对照)

交易开拓者函数一览表(文华对照) 交易开拓者文华 数学函数 绝对值Abs ABS(X)反余弦值Acos ACOS(X)反双曲余弦值Acosh 反正弦值Asin ASIN(X)反双曲正弦值Asinh 反正切值Atan ATAN(X)给定的X及Y坐标值的反正切值Atan2 反双曲正切值Atanh 沿绝对值增大方向按基数舍入Ceiling

从给定数目的对象集合中提取若干对 Combin 象的组合数 余弦值Cos COS(X)双曲余弦值Cosh 余切值Ctan 沿绝对值增大方向取整后最接近的偶 Even 数 e的N次幂Exp EXP(X)数的阶乘Fact 沿绝对值减少的方向去尾舍入Floor 实数舍入后的小数值FracPart 实数舍入后的整数值IntPart 自然对数Ln LN(X)

对数Log LOG(X) 余数Mod MOD(A,B)负绝对值Neq 指定数值舍入后的奇数Odd 返回PI Pi 给定数字的乘幂Power POW(A,B) 随机数Rand 按指定位数舍入Round 靠近零值,舍入数字RoundDown 远离零值,舍入数字RoundUp 数字的符号Sign SGN(X) 正弦值Sin

双曲正弦值Sinh SIN(X) 平方Sqr SQUARE(X)正平方根Sqrt SQRT(X) 正切值Tan TAN(X) 双曲正切值Tanh 取整Trunc INTPART(X)字符串函数 测试是否相同Exact 返回字符串中的字符数Len 大写转小写Lower 数字转化为字符串Text 取出文本两边的空格Trim

小写转大写Upper 文字转化为数字Value 颜色函数 黑色Black COLORBLACK 蓝色Blue COLORBLUE 青色Cyan COLORCYAN 茶色DarkBrown 深青色DarkCyan 深灰色DarkGray 深绿色DarkGreen 深褐色DarkMagenta 深红色DarkRed

交易开拓者(TB)编程初级篇

交易开拓者(TB)期货程序化交易编程 本文仅是写给完全不懂编程的朋友的,仅是最基本的入门资料。 TB里面代码执行 1,代码从第一根K线开始执行,一直到最后一根K线; 2,在每一根K线上,代码都是从第一行开始执行,一直到最后一行; 我们就写个输出每日的收盘价的例子; 打开TB,在左边的TB公式里面,点击新建技术指标, 然后在出来的公式编辑器里面输入 Begin End 注意,除了参数和变量定义外,所有的代码都必须包含在Begin和End之间 我们再在Begin和End之间输入一些代码,完整的就是: Begin FileAppend("c:\\",Text(Year)+"年"+Text(Month)+"月"+Text(Day)+"日的收盘价等于"); FileAppend("C:\\",Text(Close)); End 我们再说说这两行代码是什么意思 File就是文件,Append就是添加,现在明白了吧 FileAppend就是添加一个文件,文件名是什么呢就是你后面写的,这个文件的路径在哪里呢就是c:\\里面的C盘,且在这个文件里面添加一行东西, 这行东西的内容就是你后面所写的Text(Year)+"年"+Text(Month)+"月"+Text(Day)+"日的收盘价等于" 当然,如果这个文件已经存在,他就不会添加文件了,仅仅在这个文件的后面添加一行上面你写的内容 好了,再看看Text,Text的意思就是把那些不是字符串的东西如数字啊,等变成字符串.而Year,Month,Day就代表了正在执行你写的代码的那一根K线的年,月,日,年月日是数字,我们当然要用Text把它搞成字符串 CloseK线的收盘价啊,如果代码执行到最后的那根K线 我们点公式编辑器上面的工具栏的第五个按钮(打勾的那个东西),校验保存公式,稍微等一下,就OK了 我们在回到K线图里面,TB把K线图叫做超级图表 在K线图里面右键,选择商品设置,然后吧里面的样本数由默认的300改成5,意思是让在超级图表里面仅仅显示5条K线,点确定后,你就看到在K线图里面只显示了5跟K线, 当然现在代码还不能被执行,因为我们现在还需要把我们刚刚所写的那个指标加到K线图上面才能被执行的 我们上面说了,我们这个例子仅仅是把每日的收盘价写到文件里面去啊,那么我们找一找文件在什么地方咯FileAppend("c:\\",很明显,文件是在c盘的,文件的名字是 好了,我们到c盘找到文件,双击打开,我们就会看到下面的内容: 2007年9月24日的收盘价等于 67280 2007年9月25日的收盘价等于 67800 2007年9月26日的收盘价等于 67160 2007年9月27日的收盘价等于 67300 2007年9月28日的收盘价等于 68020

园林景观专业英语词汇

园林景观专业英语词汇 园林景观专业英语词汇 规划planning 草图sketch;rough map 平面plan 剖面section 立面elevation 透视perspective 示意图diagram 容积率coverage 城市设计urban design; civic design 区域规划regional planning 步行轴ped axis 总体规划general planning; master planning 分区规划district planning 近期建设规划immediate plan 城市详细规划detailed planning 控制性详细规划control detailed planning 修建性详细规划site plan 居住区规划residential district planning 城市化urbanization

城市生态urban ecology 可持续发展sustainable development 历史文化名城保护规划Plan of Preservation of Historic Cities 旧城改建urban redevelopment 开发区development area 城市化水平urbanization level 城市群agglomeration 城镇体系urban system 卫星城satellite town 城市基础设施urban infrastructure 居民点settlement 市municipality; city 生态基础设施ecological infrastructure 牧场pasture 市域administrative region of a city 商业区commercial district 行政中心administration center 商业街commercial street 科技园technological region 校园规划campus planning 城市中心区urban center district

园林设计英文文献

Forests, Trees and Livelihoods, 2010, V ol. 19, pp. 319–340 ? 2010 A B Academic Publishers—Printed in Great Britain Which role for the non farm-sector in a forested landscape? lessons from Krui, indonesia Koen Kusters* University of Amsterdam and Center for International Forestry Research (CIFOR) abstract this article explores two interrelated premises. the first is that the non-farm sector is of increasing importance to rural household. the second is that non-farm growth reduces the pressure on natural resources. the article reports on an analysis of income trends in three villages in the Krui area, sumatra, Indonesia, by comparing household survey data from 1995 and 2004. Between these two years, neither the farm sector nor the non-farm sector showed sustained growth.Although the contribution of remittances to local incomes remained marginal, migration of unemployed and unmarried youngsters to urban areas has a positive effect on per capita incomes in the Krui area by decreasing the household size. With regard to the second premise the analysis shows that increased engagement in local non-farm activities does not automatically result in smaller landholdings. Increased engagement in ex-situ non-farm activities, however, helps to reduce pressure on local forest resources. introduction the mainstream debate on conservation and development is based on the assumptions that agriculture is both the main threat to conservation and the main engine for rural development. Consequently, a large body of literature exists on the possibilities to reform agriculture in such a way that it better fits conservation goals. two main approaches are promoted. the first is to support environmentally friendly agricultural systems such as agroforests, in addition to protected areas (scherr and Mcneely, 2003; Ashley et al., 2006). the second approach is to encourage agricultural intensification and to decrease pressure on protected areas by increasing the returns on existing agricultural land (Mellor, 2002; Green et al., 2005). Both approaches have practical problems. Agricultural systems with high biodiversity tend to be less productive than intensive agricultural systems (Van noordwijk et al., 1997) and may not be competitive when the opportunity cost of land and labour increases (Belcher et al., 2005). on the other hand, increasing the income per hectare of land through intensification can act as an incentive for agricultural expansion (Angelsen and Kaimowitz, 2001) and may create other environmental damage as well, for example through the overuse of *e-mail address: K.Kusters@uva.nl

景观设计专业英语

专业英语 目录:Cover封面 Content目录 Design Explanation设计说明 Master Plan总平面 Space Sequence Analysis景观空间分析 Function Analysis功能分析 Landscape Theme Analysis景观景点主题分析图 Traffic Analysis交通分析 Vertical Plan竖向平面布置图 Lighting Furniture Layout灯光平面布置示意图 Marker/Background Music/Garbage Bin标识牌/背景音乐/垃圾桶布置图Plan平面图 Hand Drawing手绘效果图 Section剖面图 Detail详图 Central Axis中心公共主轴 Reference Picture参考图片 Planting Reference Picture植物选样材料类: aluminum铝 asphalt沥青 alpine rock轻质岗石 boasted ashlars粗凿 ceramic陶瓷、陶瓷制品 cobble小圆石、小鹅卵石 clay粘土 crushed gravel碎砾石 crushed stone concrete碎石混凝土 crushed stone碎石 cement石灰 enamel陶瓷、瓷釉 frosted glass磨砂玻璃 grit stone/sand stone砂岩 glazed colored glass/colored glazed glass彩釉玻璃 granite花岗石、花岗岩 gravel卵石 galleting碎石片 ground pavement material墙面地砖材料 light-gauge steel section/hollow steel section薄壁型钢 light slates轻质板岩 lime earth灰土 masonry砝石结构 membrane张拉膜、膜结构 membrane waterproofing薄膜防水

园林专业英语词汇

园林学landscape architecture, garden architecture 园林garden and park 绿化greening, planting 城市绿化urban green, urban planting 城市绿地urban green space 公园绿地public park 公园park 儿童公园children park 动物园zoo 植物园botanical garden 墓园cemetery garden 盆景园penjing garden, miniature landscape 盲人公园park for the blind 花园garden 历史名园historical garden and park 风景名胜公园famous scenic park 纪念公园memorial park 街旁绿地roadside green space 带状公园linear park 专类公园theme park 岩石园rock garden 社区公园community park 生产绿地productive plantation area 防护绿地green buffer, green area for environmental protection 附属绿地attached green space 居住绿地green space attachéd to housing estate, residential green space 道路绿地green space attached to urban road and square 屋顶花园roof garden 立体绿化vertical planting 风景林地scenic forest land 城市绿地系统urban green space system 城市绿地系统规划urban green space system planning 绿地覆盖面积green coverage 绿地覆盖率percentage of greenery coverage 绿地率greening rate, ratio of green space 绿带green belt 楔形绿地green wedge 城市绿地boundary line of urban green space 园林史landscape history, garden history 古典园林classical garden 囿hunting park 苑imperial park 皇家园林royal garden 私家园林private garden 寺庙园林monastery garden

风景园林专业英语试题

1 Why Pagodas Don't Fall Down In a land swept by typhoons and shaken by earthquakes, how have Japan's tallest and seemingly flimsiest old buildings - 500 or so wooden pagodas - remained standing for centuries? Records show that only two have collapsed during the past 1400 years. Those that have disappeared were destroyed by fire as a result of lightning or civil war. The disastrous Hanshin earthquake in 1995 killed 6,400 people, toppled elevated highways, flattened office blocks and devastated the port area of Kobe. Yet it left the magnificent five-storey pagoda at the Toji temple in nearby Kyoto unscathed, though it levelled a number of buildings in the neighbourhood. Japanese scholars have been mystified for ages about why these tall, slender buildings are so stable. It was only thirty years ago that the building industry felt confident enough to erect office blocks of steel and reinforced concrete that had more than a dozen floors. With its special shock absorbers to dampen the effect of sudden sideways movements from an earthquake, the thirty-six-storey Kasumigaseki building in central Tokyo - Japan's first skyscraper - was considered a masterpiece of modern engineering when it was built in 1968. Yet in 826, with only pegs and wedges to keep his wooden structure upright, the master builder Kobodaishi had no hesitation in sending his majestic Toji pagoda soaring fifty-five metres into the sky - nearly half as high as the Kasumigaseki skyscraper built some eleven centuries later. Clearly, Japanese carpenters of the day knew a few tricks about allowing a building to sway and settle itself rather than fight nature's forces. But what sort of tricks? The multi-storey pagoda came to Japan from China in the sixth century. As in China, they were first introduced with Buddhism and were attached to important temples. The Chinese built their pagodas in brick or stone, with inner staircases, and used them in later centuries mainly as watchtowers. When the pagoda reached Japan, however, its architecture was freely adapted to local conditions - they were built less high, typically five rather than nine storeys, made mainly of wood and the staircase was dispensed with because the Japanese pagoda did not have any practical use but became more of an art object. Because of the typhoons that batter Japan in the summer, Japanese builders learned to extend the eaves of buildings further beyond the walls. This prevents rainwater gushing down the walls. Pagodas in China and Korea have nothing like the overhang that is found on pagodas in Japan. 为什么宝塔不会倒塌 在这片被台风席卷、地震撼动的土地上,日本最高、看起来最脆弱的老建筑——500多座木制宝塔——是如何屹立了几个世纪的?记录显示,在过去的1400年里,只有两处坍塌。那些失踪的人由于闪电或内战而被大火烧毁。1995年灾难性的阪神大地震造成6400人死亡,高架路倒塌,办公大楼夷为平地,神户港口地区被毁。然而,尽管它夷平了附近的一些建筑,但却毫发未损。 多年来,日本学者一直对这些细长的建筑为何如此稳定感到困惑。直到30年前,建筑行业才有足够的信心,用钢铁和钢筋混凝土建造超过12层的办公大楼。位于东京市中心的36层楼高的霞关大厦(Kasumigaseki)是日本第一座摩天大楼,1968年建成时,人们认为它是 现代工程学的杰作。 然而,在826年,建筑大师Kobodaishi只用木栓和楔子来保持木结构的直立,毫不犹豫地将他宏伟的东寺宝塔高耸入云,高达55米——几乎是1100年后建成的霞关摩天大楼的一半高。显然,当时的日本木匠知道一些让建筑摇摆和稳定的技巧,而不是对抗自然的力量。但是什么样的技巧呢?

从一无所知开始学习交易开拓者(TB)期货程序化交易编程

从一无所知开始学习交易开拓者(TB)期货程序化交易编程 经常会看到很多朋友问:帮我写个公式怎么样啊?帮我把某个公式改成TB的怎么样啊? 我想出现这种情况的原因有两种: 一是真的不会,毕竟做期货的会编程的不多; 二是自己如果多花点时间的话是弄的出来,但是有点懒; 我想无论是哪种原因,都应该好好的学习下TB,因为真正的你的交易思路只有你自己才清楚 而且也只有你自己去把你的交易思路用TB表现出来你才能更清楚的知道你的交易思维中有何缺点 但是编程不是一件很容易的事情,当然,如果您入门了,你会发觉TB编程其实和泡妞一样的简单,就看你敢不敢下手了 所以本文仅是写给完全不懂编程的朋友的,仅是最基本的入门资料,如果您是高手,请忽略此文,以免耽误您的时间. 我先不说那些专业术语,什么变量,函数和语法的,我们先不管他,以免看的头晕. 我想先说说在TB中代码的执行顺序,也就是说在TB的K线图(TB把K线叫做Bar)里面你写的公式或者指标是如何得到执行的; 我想这个东西是最重要而且也是最好理解的. 在其他的期货软件比如文华飞狐一类,我们是无法知道你写的公式是如何执行的,甚至我们不知道我们写出来的公式是不是真的 就体现出了我们的思想,因为你写的公式或者指标是被这些软件在幕后进行处理的,是黑箱操作! 而TB不同,我们能够清楚的看到你写的代码在任意一根K线上是如何得到执行的!!!! 好了,先说说在TB里面代码是如何得到执行的. 1,代码从第一根K线开始执行,一直到最后一根K线; 2,在每一根K线上,代码都是从第一行开始执行,一直到最后一行; 明白了吧,是不是很简单,我们先看一个小例子,如果您还不明白,那只能说我完全没有任何能力写这文章,您就板砖吧 我们就写个输出每日的收盘价的例子; 打开TB,在左边的TB公式里面,点击新建技术指标,新建其他的也没有关系,然后在出来的对话框的简称里面填入名字,记住,这个名字只能是E文哦 在名字里面填入你喜欢的名字,点确定就OK了啊 然后在出来的公式编辑器里面输入 Begin End 注意,除了参数和变量定义外,所有的代码都必须包含在Begin和End之间 意思很简单 就是Begin后,你的代码就开始执行了,End了,你的代码就执行完毕拉 呵呵 我们再在Begin和End之间输入一些代码,完整的就是: Begin FileAppend("c:\\a.log",Text(Year)+"年"+Text(Month)+"月"+Text(Day)+"日的收盘价等于"); FileAppend("C:\\a.log",Text(Close));

风景园林景观设计专业英语

园林学landscape architecture,garden architecture 园林garden and park 绿化greening,planting 城市绿化urban greening,urban planting 城市绿地urban green space 公园绿地public park 公园park 儿童公园children park 动物园zoo 植物园botanical garden 墓园cemetery garden 盆景园penjng garden,miniature landscape 盲人公园park for the blind 花园garden 历史名园historical garden and park

风景名胜公园famous scenic park 纪念公园memorial park 街旁绿地roadside green space 带状公园linear park 专类公园theme park 岩石园rock garden 社区公园community park 生产绿地productive plantation area 防护绿地green buffer,green area for environmental protection 附属绿地attached green space 居住绿地green space attached to housing estate,residential green space 道路绿地green space attached to urban road and square 屋顶花园roof garden 立体绿化vertical planting 风景林地scenic forest land

交易开拓者代码学习各种买卖指令及实例

交易开拓者代码学习各种买卖指令及实例(TB)(转) 2012年07月27日22:35 原文地址:交易开拓者代码学习各种买卖指令及实例(TB)(转)作者:竹本无青 各种买卖指令 Buy 说明产生一个多头建仓操作。 语法Buy(Numeric Share=0,Numeric Price=0,Bool Delay=False) 参数Share 买入数量,为整型值,默认为使用系统设置参数; Price 买入价格,为浮点数,默认=0时为使用现价(非最后Bar为Close); Delay 买入动作是否延迟,默认为当前Bar发送委托,当Delay=True,在下一个Bar执行。备注产生一个多头建仓操作,无返回值,该函数仅支持交易指令。 该函数仅用于多头建仓,其处理规则如下: 如果当前持仓状态为持平,即MarketPosition = 0 时,该函数按照参数进行多头建仓。 如果当前持仓状态为空仓,即MarketPosition = -1 时,该函数首先平掉所有空仓,达到持平的状态,然后再按照参数进行多头建仓。 如果当前持仓状态为多仓,即MarketPosition = 1 时,该函数将继续建仓,但具体是否能够成功建仓要取决于系统中关于连续建仓的设置,以及资金,最大持仓量等限制。 示例在MarketPosition=0的情况下: Buy(50,10.2,1) 表示用10.2的价格买入50张合约,延迟到下一个Bar发送委托。 Buy(10,Close) 表示用当前Bar收盘价买入10张合约,马上发送委托。 Buy(5,0) 表示用现价买入5张合约,马上发送委托。 BuyToCover 说明产生一个空头平仓操作。 语法BuyToCover(Numeric Share=0,Numeric Price=0,Bool Delay=False) 参数Share 买入数量,为整型值,默认为平掉当前所有持仓; Price 买入价格,为浮点数,默认=0时为使用现价(非最后Bar为Close);

景观设计师的英文介绍

What kind of job will become deeply required ten years later? Essay What Job will become deeply required From the Internet I think the landscape architect will become the deeply required job ten years later. December 2, 2004, the landscape architect has been identified as one of China's new career. Landscape design is a new modern service industry. And more and more landscape architects are needed with the development of society. Why the job will become deeply required Nowadays China has a rapidly-development with the urbanization. Many cities are trying to expansion .And many suburbs are trying to become cities. So how to design the cities turn into a problem. We need landscape architect to plan the landscape, to use the outdoor space effective. We have to treat it careful, because a city’s layout related to the development of the city. What more important is that the people who is a landscape architect is a small number so far. What the job need to do The landscape design’s goal is to achieve the harmony of the city, the building, and the people. They need to make the city development harmony. They need to protect the landscape resource. For example, in Beijing we have a lot of old houses and street. They are full of meaning. So we can’t demolition them dogmatic. But we need to build more and more modern buildings. So how we deal the coordination between the old and the modern? Landscape architect need to do this. What a landscape architect need to have A landscape architect need to be carefully. They need to collect and analysis all the data about the landscape. They can’t careless .Because a little deviation can lead to a big mistake. In addition they need have a excellent communicate ability and comprehension. Because they need to understand what the client want to have and discuss with them. They need to make all people satisfied about the landscape plan. What’s more important is that they not only need to design the landscape on the paper but need to probe on the spot. They should work with construction. There are so many unexpected factors during the construct. A landscape architect need to work with the construction until it finished. The problem that the job have Some landscape architects may want to gather all the resources to the design that they made. But at the same time the overall environment where they are is damaged. They put natural resources into a small area of a small interest group. And many of them lack the communication with the public. Some urban designs are not recognized by the public now.

相关文档
相关文档 最新文档