public static void getPathHeuristics(int[] start,int[] goal,int obj[]){
        //System.out.println("Score goal :"+score[goal[0]][goal[1]][0]+"  "+score[goal[0]][goal[1]][1]);
        if(finiteStateMachine.value==null){
            finiteStateMachine.value = new int[10][10];
            for (int i = 0; i < size; i++) {
                    for (int j = 0; j < size; j++) {
                        finiteStateMachine.value[i][j] = 60;
                    }
                }
        }
        //System.out.println("goal :"+goal[0]+"  "+goal[1]);
        //System.out.println("start :"+start[0]+"  "+start[1]);
        int currentX = goal[0], currentY = goal[1],weight = score[goal[0]][goal[1]][0],yhold =goal[1],xhold =goal[0];
        while(true){
            if(currentX==start[0] && currentY==start[1] || weight>obj[2]/1000){
                break;
            }else{
                //System.out.print("("+currentX+","+currentY+")");
                if(finiteStateMachine.value[currentX][currentY]>weight)
                    finiteStateMachine.value[currentX][currentY] = weight;
                yhold = currentY;
                xhold = currentX;
                currentX = camefrom[xhold][yhold][0];
                currentY = camefrom[xhold][yhold][1];
            }
        }
        //System.out.println("");
    }