亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? jshop2.java

?? SHOP2 一個(gè)人工智能里面關(guān)于任務(wù)分解和任務(wù)規(guī)劃的系統(tǒng)。JSHOP2是其java版本。
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package JSHOP2;import java.util.ArrayList;import java.util.Iterator;import java.util.LinkedList;import java.util.Vector;/** This class represents all the variables that JSHOP2 needs every time it *  calls itself recursively. The reason all these variables are bundled *  together in one class rather than having them locally defined is to save *  stack space. Right now, the only thing that is stored in the stack is a *  pointer to this class in each recursion, and the actual data is stored in *  heap memory, while if these variables were just locally defined, all of *  them would be stored in the stack, resulting in very fast stack overflow *  errors. * *  @author Okhtay Ilghami *  @author <a href="http://www.cs.umd.edu/~okhtay">http://www.cs.umd.edu/~okhtay</a> *  @version 1.0.3*/class InternalVars{  /** The binding that unifies the head of a method or an operator with the   *  task being achieved.  */  Term[] binding;  /** An array of size 4 to store the atoms and protections that are being   *  deleted or added to the current state of the world as a result of   *  application of an operator, to be used in case of a backtrack over that   *  operator.  */  Vector[] delAdd;  /** The iterator iterating over the <code>LinkedList</code> of the tasks   *  that we have the option to achieve right now.  */  Iterator<TaskList> e;  /** Whether or not at least one satisfier has been found for the current   *  branch of the current method. As soon as it becomes <code>true</code>,   *  further branches of the method will not be considered.  */  boolean found;  /** The index of the method or operator being considered.  */  int j;  /** The index of the branch of the current method being considered.  */  int k;  /** An array of methods that can achieve the compound task being   *  considered.  */  Method[] m;  /** Next binding that satisfies the precondition of the current method or   *  operator.  */  Term[] nextB;  /** An array of operators that can achieve the primitive task being   *  considered.  */  Operator[] o;  /** An iterator over the bindings that can satisfy the precondition of the   *  current method or operator.  */  Precondition p;  /** The task atom chosen to be achieved next.  */  TaskAtom t;  /** A <code>LinkedList</code> of the task atoms we have the option to   *  achieve right now.  */  LinkedList<TaskList> t0;  /** The atomic task list that represents, in the task network, the task   *  atom that has been chosen to be achieved next.  */  TaskList tl;}/** This class is the implementation of the JSHOP2 algorithm. * *  @author Okhtay Ilghami *  @author <a href="http://www.cs.umd.edu/~okhtay">http://www.cs.umd.edu/~okhtay</a> *  @version 1.0.3*/public class JSHOP2{  /** The plan currently being constructed.  */  private static Plan currentPlan;  /** The domain description for the planning problem.  */  private static Domain domain;  /** The maximum number of plans to be returned.  */  private static int planNo;  /** The plans are stored in this variable as a list of type   *  <code>Plan</code>.  */  private static LinkedList<Plan> plans;  /** The current state of the world.  */  private static State state;  /** The task list to be achieved.  */  private static TaskList tasks;  /** An <code>ArrayList</code> that represents the steps taken to find every   *  plan.  */  private static ArrayList<PlanStepInfo> planStepList;  /** Incremented whenever a plan is found. Passed to JSHOP2GUI.  */  private static int numPlans;  /** This function finds plan(s) for a given initial task list.   *   *  @param tasksIn   *          the initial task list to be achieved.   *  @param planNoIn   *          the maximum number of plans to be returned.   *  @return   *          0 or more plans that achieve the given task list.  */  public static LinkedList<Plan> findPlans(TaskList tasksIn, int planNoIn)  {    //-- Initialize the plan list to an empty one.    plans = new LinkedList<Plan>();    //-- Initialize the current plan to an empty one.    currentPlan = new Plan();    //-- Initialize the current task list to be achieved.    tasks = tasksIn;    //-- Initialize the list of steps taken to find all plans    planStepList = new ArrayList<PlanStepInfo>();    //-- Initialize the number of plans found to 0    numPlans = 0;    planNo = planNoIn;    PlanStepInfo newStep = new PlanStepInfo();    newStep.action = "SETGOALTASKS";    newStep.children = tasks.subtasks;    newStep.ordered = tasks.isOrdered();    planStepList.add(newStep);    //-- Call the helper function.    findPlanHelper(tasks);    //-- Initialize planStepList within JSHOP2GUI    JSHOP2GUI.setPlanStepList(planStepList);    //-- Initialize numPlans within JSHOP2GUI    JSHOP2GUI.setNumPlans(numPlans);    //-- Return the found plan(s).    return plans;  }  /** This is the helper function that finds a plan.   *   *  @param chosenTask   *          the task list chosen to look for the next task atom to achieve.   *          This variable is usually set to the whole task network unless   *          there is a method that is chosen to decomopose a task, and the   *          decomposition of that task has not gone all the way down to an   *          operator. In that case, this variable will be set to the task   *          decomposed by that method.   *  @return   *          <code>true</code> if a plan is found, <code>false</code>   *          otherwise.  */  private static boolean findPlanHelper(TaskList chosenTask)  {    //-- The local variables we need every time this function is called.    InternalVars v = new InternalVars();        //-- Find all the tasks that we have the option to achieve right now. This    //-- equals to the first task in the current task list if it is ordered, or    //-- the first task in all the subtasks of the current task list if it is    //-- unordered. In the latter case, if there is an immediate task as the    //-- first task of any of the subtasks, that immediate task and ONLY that    //-- immediate task is returned.    v.t0 = chosenTask.getFirst();    //-- If there are no tasks left,    if (v.t0.size() == 0)    {      //-- If the chosen task is not the whole task network the algorithm is      //-- initially set to achieve, it means we have just achieved that task,      //-- and not the whole task network. Therefore, try to achieve the rest      //-- of the task network.      if (chosenTask != tasks)        return findPlanHelper(tasks);      //-- Otherwise, add the current plan to the list of the plans for the      //-- given task network. Note that in the case where we are looking for      //-- more than one plan, we add a clone of the current plan to the list      //-- rather than the current plan itself since the current plan will be      //-- changed during the look for other plans.      else {        if (planNo != 1) {          plans.addLast((Plan)currentPlan.clone());        } else {          plans.addLast(currentPlan);        }

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一区二区三区久久| 国产精品青草久久| 日日摸夜夜添夜夜添国产精品| 99久久久国产精品| 1000精品久久久久久久久| 成人av电影在线观看| 国产精品久久久久三级| jiyouzz国产精品久久| 伊人色综合久久天天| 欧美精品18+| 国产综合一区二区| 成人免费在线视频观看| 欧美专区日韩专区| 久久精品免费观看| 国产精品美女久久久久aⅴ| 成人一区在线看| 一区二区三区中文在线| 欧美精品久久一区| 国产91精品免费| 亚洲一区二区三区小说| 欧美一区2区视频在线观看| 国产精品一区二区在线观看网站 | 欧洲国产伦久久久久久久| 一区二区三区国产豹纹内裤在线| 欧美人妇做爰xxxⅹ性高电影| 日韩av中文在线观看| 国产日韩欧美一区二区三区乱码| 97精品久久久午夜一区二区三区| 日日夜夜精品免费视频| 国产日韩欧美精品电影三级在线| 色8久久精品久久久久久蜜| 免费成人美女在线观看.| 国产精品久久久久久一区二区三区 | 91精品国产综合久久久蜜臀粉嫩| 韩日精品视频一区| 亚洲精品国产精品乱码不99| 日韩三级在线观看| 95精品视频在线| 久久精品国产免费看久久精品| 久久久不卡网国产精品一区| 欧美影院一区二区三区| 国产精品一区二区三区网站| 亚洲成人免费在线观看| 国产欧美一区二区精品久导航| 欧美男人的天堂一二区| 99久久99久久久精品齐齐| 美女精品自拍一二三四| 亚洲激情校园春色| 国产婷婷一区二区| 日韩欧美一区二区免费| 在线精品观看国产| 91一区二区三区在线播放| 国产主播一区二区| 美女视频网站黄色亚洲| 亚洲综合男人的天堂| 中文字幕一区二区在线观看| 久久久久久久久久久久久夜| 91精品国产综合久久久久久 | 国产精品传媒入口麻豆| 欧美刺激午夜性久久久久久久| 欧美主播一区二区三区| 91在线国产福利| 91在线视频18| 色综合天天综合给合国产| 国产成人三级在线观看| 精品午夜一区二区三区在线观看| 三级亚洲高清视频| 一区二区视频在线| 亚洲日本乱码在线观看| 成人欧美一区二区三区在线播放| 国产日韩精品一区二区三区 | 91.成人天堂一区| 欧美做爰猛烈大尺度电影无法无天| 成人精品一区二区三区四区| 韩国女主播成人在线观看| 精品在线一区二区三区| 黑人巨大精品欧美一区| 国产一区二区三区免费| 国产成人精品1024| 99国产精品国产精品久久| av亚洲精华国产精华精华| 99re在线精品| 色一情一伦一子一伦一区| 91老司机福利 在线| 91福利资源站| 91精品久久久久久久99蜜桃| 69堂亚洲精品首页| 日韩免费一区二区三区在线播放| 日韩欧美一级二级| 久久久国际精品| 国产精品私人自拍| 亚洲女人****多毛耸耸8| 亚洲国产综合色| 久久国产福利国产秒拍| 国产精品456| 91最新地址在线播放| 欧美日韩一区二区三区高清| 91精品婷婷国产综合久久性色| 精品国产a毛片| 中文字幕第一区综合| 亚洲精品你懂的| 麻豆成人久久精品二区三区红 | 欧美天天综合网| 欧美一级夜夜爽| 国产午夜精品一区二区三区视频| 成人免费小视频| 日本美女一区二区三区| 国产一二精品视频| 波多野结衣在线aⅴ中文字幕不卡| 色综合久久综合网欧美综合网 | 日本久久电影网| 欧美喷潮久久久xxxxx| 日韩一区二区视频| 国产精品美女一区二区| 亚洲国产精品视频| 岛国一区二区三区| 欧美三级电影在线观看| 久久久777精品电影网影网| 一区二区三区在线观看欧美| 九色|91porny| 91福利视频久久久久| 精品成人在线观看| 亚洲精品乱码久久久久| 极品尤物av久久免费看| 色女孩综合影院| 久久婷婷国产综合国色天香| 亚洲美腿欧美偷拍| 国产剧情一区二区| 777奇米成人网| 亚洲三级在线免费| 国产麻豆视频精品| 欧美视频中文一区二区三区在线观看 | 一区二区三区国产豹纹内裤在线| 精品亚洲免费视频| 欧美日韩国产精品成人| 国产精品女上位| 国产精品资源在线| 制服丝袜日韩国产| 一区二区三区高清在线| 成人免费视频播放| 精品福利二区三区| 日本亚洲三级在线| 在线观看日韩精品| 亚洲色图在线播放| 国产精品亚洲成人| 日韩免费视频线观看| 亚洲va欧美va人人爽午夜| 91视视频在线观看入口直接观看www| 久久综合色鬼综合色| 日本不卡一二三区黄网| 欧美日韩一区二区电影| 亚洲视频资源在线| 成人精品免费看| 国产午夜精品一区二区三区视频| 精品在线一区二区三区| 日韩午夜精品电影| 日韩精品成人一区二区在线| 欧美日韩色综合| 亚洲电影一区二区| 欧美在线一二三| 亚洲自拍偷拍九九九| 在线一区二区视频| 亚洲精品国产a| 91麻豆免费视频| 亚洲私人黄色宅男| 色婷婷久久久亚洲一区二区三区| 国产精品久久久久久久久免费樱桃| 国产成人免费视频| 欧美激情在线一区二区三区| 风间由美一区二区av101| 国产日韩综合av| 粉嫩av一区二区三区在线播放| 国产三级欧美三级日产三级99| 国产高清在线精品| 日本一二三不卡| 91在线无精精品入口| 亚洲精品自拍动漫在线| 欧美日韩午夜在线视频| 爽好久久久欧美精品| 日韩视频123| 国产成人免费网站| 最新热久久免费视频| 在线观看亚洲精品| 免费看欧美女人艹b| 久久精品亚洲精品国产欧美kt∨| 国产一区二区三区电影在线观看| 国产欧美日韩精品一区| 91首页免费视频| 日韩福利电影在线观看| 久久久不卡网国产精品一区| 91在线视频免费观看| 五月综合激情婷婷六月色窝| 日韩欧美国产成人一区二区| 国产福利一区二区三区视频在线 | 亚洲午夜久久久久久久久电影院| 欧美日韩在线播放三区| 国模无码大尺度一区二区三区 | 午夜影院在线观看欧美| 精品粉嫩超白一线天av| 99视频精品全部免费在线|