Last active
February 10, 2018 20:24
-
-
Save ischurov/6a09accf7591bf3a89d8344cd138b765 to your computer and use it in GitHub Desktop.
Constant Velocity-Copy1.ipynb
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"metadata": {}, | |
"cell_type": "markdown", | |
"source": "# Learning motion with constant velocity: teacher forcing\nIn this experiment, we are trying to construct a recurrent model that is able to predict the future positions of particle given first two positions. The ground truth is that particle moves with constant speed.\n\nOur setting is the following. We consider GRU network that is feeded with the sequence of coordinates and is learned to predict next item in a sequence (i.e. coordinates at the next timestep).\n\nThen we validate this network by creating new (test) sequence that is longer then initial ones. After some moment of time, we stop feeding network with actual data and feed it with its own outputs, to test for generalization." | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "import matplotlib.pyplot as plt\n%matplotlib inline\nimport numpy as np", | |
"execution_count": 45, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "def get_data(num_samples, timesteps, vnorm=0.03, x0=None, phi0=None, noise=0):\n \"\"\"\n Returns data that is needed to train the model\n num_samples is number of samples\n timesteps is number of timesteps to generate\n vnorm is a velocity norm\n x0 is a start position\n phi0 is an angle\n \n returns \n trajectories\n \"\"\"\n x0 = (np.random.uniform(0.33, 0.66, size=(num_samples, 2)) \n if x0 is None else x0)\n phi0 = (np.random.uniform(0, 2 * np.pi, size=(num_samples)) \n if phi0 is None else phi0)\n v = np.stack([np.cos(phi0), np.sin(phi0)], axis=1) * vnorm\n t = np.arange(timesteps)\n \n trajectories = x0[:, np.newaxis, :] + np.einsum('t,sc->stc', t, v)\n # motion with constant speed\n \n trajectories += np.random.uniform(low=-noise, high=noise,\n size=trajectories.shape)\n \n return trajectories", | |
"execution_count": 54, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "num_samples = 10000\ntimesteps = 10\ninput_data = get_data(num_samples, timesteps, noise=0.025)", | |
"execution_count": 116, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "from keras.models import Model, Sequential\nfrom keras.layers import Input, SimpleRNNCell, SimpleRNN, GRU, Dense, Flatten\nfrom keras import backend as K", | |
"execution_count": 117, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "sample = np.random.randint(len(input_data))\nplt.xlim(0, 1)\nplt.ylim(0, 1)\nplt.plot(input_data[sample][:, 0], input_data[sample][:, 1], 'o')", | |
"execution_count": 126, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 126, | |
"data": { | |
"text/plain": "[<matplotlib.lines.Line2D at 0x176eb71d0>]" | |
}, | |
"metadata": {} | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": "<matplotlib.figure.Figure at 0x176d7a128>", | |
"image/png": "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\n" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "input_data.shape", | |
"execution_count": 127, | |
"outputs": [ | |
{ | |
"output_type": "execute_result", | |
"execution_count": 127, | |
"data": { | |
"text/plain": "(10000, 10, 2)" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "epochs = 10\nlatent_dim = 16\nbatch_size = 16\n\nprint('Number of samples:', len(input_data))\nprint('Sequence length:', (input_data.shape[1]))\n\n# Define an input sequence and process it.\ninputs = Input(shape=(None, 2))\n# two frames, env.n balls and 2 coordinates per ball\n\nrecurrent = GRU(latent_dim, return_sequences=True, return_state=True)\nrecurrent_dense = Dense(input_data.shape[2])\n\nrecurrent_outputs, _= recurrent(inputs)\nrecurrent_outputs = recurrent_dense(recurrent_outputs)\n\n# Define the model that will turn\nmodel = Model(inputs, recurrent_outputs)\n\n# Run training\nmodel.compile(optimizer='adam', loss='mse')\n\nmodel.fit(input_data[:, :-1,:], input_data[:, 1:, :],\n batch_size=batch_size,\n epochs=epochs, validation_split=0.2)\n# Save model\n# model.save('learning_motion.h5')", | |
"execution_count": 128, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": "Number of samples: 10000\nSequence length: 10\nTrain on 8000 samples, validate on 2000 samples\nEpoch 1/10\n8000/8000 [==============================] - 16s 2ms/step - loss: 0.0201 - val_loss: 0.0038\nEpoch 2/10\n8000/8000 [==============================] - 6s 754us/step - loss: 0.0023 - val_loss: 0.0013\nEpoch 3/10\n8000/8000 [==============================] - 6s 734us/step - loss: 0.0010 - val_loss: 8.9309e-04\nEpoch 4/10\n8000/8000 [==============================] - 7s 849us/step - loss: 8.3494e-04 - val_loss: 8.1289e-04\nEpoch 5/10\n8000/8000 [==============================] - 6s 727us/step - loss: 7.7412e-04 - val_loss: 7.5538e-04\nEpoch 6/10\n8000/8000 [==============================] - 7s 843us/step - loss: 7.4547e-04 - val_loss: 7.2933e-04\nEpoch 7/10\n8000/8000 [==============================] - 7s 824us/step - loss: 7.2485e-04 - val_loss: 7.2999e-04\nEpoch 8/10\n8000/8000 [==============================] - 6s 785us/step - loss: 7.1547e-04 - val_loss: 7.0301e-04\nEpoch 9/10\n8000/8000 [==============================] - 6s 768us/step - loss: 7.1046e-04 - val_loss: 6.9471e-04\nEpoch 10/10\n8000/8000 [==============================] - 7s 888us/step - loss: 6.9808e-04 - val_loss: 6.8332e-04\n", | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "execute_result", | |
"execution_count": 128, | |
"data": { | |
"text/plain": "<keras.callbacks.History at 0x1772e9c50>" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "def plot_traj(traj, mode='-', ax=None, label=None):\n tr = traj.reshape(-1, 1, 2)\n for i in range(1):\n if ax is None:\n plt.plot(tr[:, i, 0], tr[:, i, 1], mode, label=label)\n else:\n ax.plot(tr[:, i, 0], tr[:, i, 1], mode, label=label)", | |
"execution_count": 129, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "def extended_predict(extended_input_data):\n forcing_inputs = extended_input_data[:, :input_data.shape[1] - 1, :]\n recurrent_outputs, state = recurrent(inputs)\n recurrent_outputs = recurrent_dense(recurrent_outputs)\n\n model_with_state = Model(inputs, [recurrent_outputs, state])\n forcing_predictions, current_state = model_with_state.predict(\n forcing_inputs)\n \n timestep_input = Input(shape=(1, 2))\n state_input = Input(shape=(latent_dim,))\n \n recurrent_outputs, recurrent_state = recurrent(timestep_input, \n initial_state=state_input)\n recurrent_outputs = recurrent_dense(recurrent_outputs)\n\n next_timestep_model = Model([timestep_input, state_input],\n [recurrent_outputs, recurrent_state])\n\n \n extended_predictions = np.zeros(shape=(extended_input_data.shape[0],\n extended_input_data.shape[1] - \n input_data.shape[1],\n extended_input_data.shape[2]))\n prediction = extended_input_data[:, \n input_data.shape[1] - 1:\n input_data.shape[1], \n :]\n for i in range(extended_predictions.shape[1]):\n prediction, current_state = next_timestep_model.predict(\n [prediction, current_state])\n extended_predictions[:, i, :] = prediction[:, 0, :]\n return forcing_predictions, extended_predictions", | |
"execution_count": 130, | |
"outputs": [] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "fig = plt.figure(figsize=(12, 12))\nax = fig.add_subplot(111)\ndef draw(theta, ax):\n ax.set_xlim(-1, 2)\n ax.set_ylim(-1, 2)\n test_input_data = get_data(\n 1, timesteps * 2, x0=np.array([[0.5, 0.5]]), phi0 = np.array([theta]))\n prediction, extended_predictions = extended_predict(test_input_data)\n \n plot_traj(test_input_data[0], mode='o-', label=\"Ground truth\", ax=ax)\n plot_traj(prediction[0, :], mode='o-', label='Prediction', ax=ax)\n plot_traj(extended_predictions[0, :], mode='o-', \n label='Extended prediction', ax=ax)\n \n plt.legend()\ndraw(0, ax)", | |
"execution_count": 131, | |
"outputs": [ | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": "<matplotlib.figure.Figure at 0x177fb6a20>", | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAtMAAAKvCAYAAACoFEOLAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmUnnVh9//PNxsJYZNFCVuEimENIYSURVGhLApPQIsgiiynihtLn18PFKoPII9LKD21WlBLkUIfUaOANBasiGgRrIWAEZWwGyQxQEB2A2SS7++PDNMsM1m+M8lkyOt1zpy572v9Tu7cw5sr131dpdYaAABg1Q3q7wEAAMBAJaYBAKCRmAYAgEZiGgAAGolpAABoJKYBAKBRr2O6lLJtKeXHpZR7Sim/KaWc0c0ypZTypVLKg6WUu0sp43u7XwAA6G9D+mAbHUn+qtZ6VyllwyR3llJ+WGu9Z7Fl3plkx86vP03ylc7vAAAwYPX6yHStdU6t9a7Ox88nmZFk66UWOzLJv9ZFfp5kk1LKqN7uGwAA+lNfHJnuUkp5Y5I9k/z3UrO2TvLoYs9ndU6bs9T6pyQ5JUlGjhy510477dSXwwMAgGXceeedT9Zat2hZt89iupSyQZJrkvxlrfW5lm3UWi9NcmmSTJgwoU6bNq2vhgcAAN0qpTzSum6fXM2jlDI0i0L6qlrrtd0sMjvJtos936ZzGgAADFh9cTWPkuRrSWbUWv++h8WmJjmh86oe+yR5ttY6p4dlAQBgQOiL0zz2T/LBJL8qpUzvnPY3SbZLklrrV5PckORdSR5M8sckJ/fBfgEAoF/1OqZrrbcmKStYpib5RG/3BQCwPPPnz8+sWbPy0ksv9fdQWAsNHz4822yzTYYOHdpn2+zTq3kAAPSnWbNmZcMNN8wb3/jGLDoTFRapteapp57KrFmzsv322/fZdt1OHAB4zXjppZey2WabCWmWUUrJZptt1uf/aiGmAYDXFCFNT1bH3w0xDQAAjcQ0AEAfevzxx/P+978/O+ywQ/baa6/su++++e53v7vGx/HGN74xTz755DLTP/e5zzVt77rrrss999zT9fztb3973GBPTAMA67DrfjE7+0++OduffX32n3xzrvtF7+4pV2vNUUcdlQMOOCAPP/xw7rzzznzrW9/KrFmzllm2o6OjV/tq1VNM11qzcOHCHtdbOqZZREwDAOuk634xO+dc+6vMfmZeapLZz8zLOdf+qldBffPNN2fYsGH56Ec/2jVt9OjROe2005IkV1xxRSZNmpQDDzwwBx10UGqtOfPMM7Pbbrtl9913z5QpU5IkP/nJT3LEEUd0bePUU0/NFVdckWTREefzzjsv48ePz+6775577703SfLUU0/lkEMOya677poPfehDWXRl4iWdffbZmTdvXsaNG5cPfOADmTlzZsaMGZMTTjghu+22Wx599NFssMEGXctfffXVOemkk/Kzn/0sU6dOzZlnnplx48bloYceSpJ85zvfycSJE/PmN785P/3pT5v/3AYyl8YDAF6TPv293+Se3z/X4/xf/O6ZvLJgySOx8+YvyFlX351v3v67btfZZauNct7/2rXHbf7mN7/J+PHjlzuuu+66K3fffXc23XTTXHPNNZk+fXp++ctf5sknn8zee++dAw44YLnrJ8nmm2+eu+66K1/+8pfzd3/3d7nsssvy6U9/Om95y1ty7rnn5vrrr8/Xvva1ZdabPHlyLr744kyfvug+ezNnzswDDzyQK6+8Mvvss0+P+9tvv/0yadKkHHHEETn66KO7pnd0dOT222/PDTfckE9/+tO56aabVjj21xpHpgGAddLSIb2i6S0+8YlPZI899sjee+/dNe3ggw/OpptumiS59dZbc9xxx2Xw4MF5wxvekLe97W254447Vrjd97znPUmSvfbaKzNnzkyS3HLLLTn++OOTJIcffnhe97rXrdQYR48evdyQXtVxrGscmQYAXpOWdwQ5SfaffHNmPzNvmelbbzIiUz6yb9M+d91111xzzTVdzy+55JI8+eSTmTBhQte0kSNHrnA7Q4YMWeL85aWvjbzeeuslSQYPHtzrc6+XHs/il49b0TWZ+3IcA5Uj0wDAOunMQ8dkxNDBS0wbMXRwzjx0TPM2DzzwwLz00kv5yle+0jXtj3/8Y4/Lv/Wtb82UKVOyYMGCzJ07N7fccksmTpyY0aNH55577snLL7+cZ555Jj/60Y9WuO8DDjgg3/jGN5Ik3//+9/P00093u9zQoUMzf/78Hrfzhje8ITNmzMjChQuXuArJhhtumOeff36F41jXiGkAYJ101J5b5/Pv2T1bbzIiJYuOSH/+PbvnqD23bt5mKSXXXXdd/vM//zPbb799Jk6cmBNPPDEXXnhht8u/+93vztixY7PHHnvkwAMPzN/+7d9myy23zLbbbptjjjkmu+22W4455pjsueeeK9z3eeedl1tuuSW77rprrr322my33XbdLnfKKadk7Nix+cAHPtDt/MmTJ+eII47Ifvvtl1GjRnVNf9/73peLLrooe+65Z9cHEElKd5/0XBtMmDChunYhALAqZsyYkZ133rm/h8FarLu/I6WUO2utE3pYZbkcmQYAgEZiGgAAGolpAABoJKYBAKCRmAYAgEZiGgAAGolpAIA+NHjw4IwbNy677bZb3vve9y73pi0r8pOf/CRHHHFEkmTq1KmZPHlyj8s+88wz+fKXv9z1/Pe//32OPvro5n2zcsQ0ALDuuvvbyRd2S87fZNH3u7/d602OGDEi06dPz69//esMGzYsX/3qV5eYX2td4lbhK2vSpEk5++yze5y/dExvtdVWufrqq1d5P6waMQ0ArJvu/nbyvdOTZx9NUhd9/97pfRLUr3rrW9+aBx98MDNnzsyYMWNywgknZLfddsujjz6aG2+8Mfvuu2/Gjx+f9773vXnhhReSJP/xH/+RnXbaKePHj8+1117bta0rrrgip556apLk8ccfz7vf/e7sscce2WOPPfKzn/0sZ599dh566KGMGzcuZ555ZmbOnJnddtstSfLSSy/l5JNPzu67754999wzP/7xj7u2+Z73vCeHHXZYdtxxx5x11ll99rOvK4b09wAAAFaL75+dPParnufPuiNZ8PKS0+bPS/7t1OTOK7tfZ8vdk3f2fKrF4jo6OvL9738/hx12WJLkgQceyJVXXpl99tknTz75ZD7zmc/kpptuysiRI3PhhRfm7//+73PWWWflwx/+cG6++ea86U1vyrHHHtvttk8//fS87W1vy3e/+90sWLAgL7zwQiZPnpxf//rXmT59epJk5syZXctfcsklKaXkV7/6Ve69994ccsghuf/++5Mk06dPzy9+8Yust956GTNmTE477bRsu+22K/Uz4sg0ALCuWjqkVzR9Jc2bNy/jxo3LhAkTst122+Uv/uIvkiSjR4/OPvvskyT5+c9/nnvuuSf7779/xo0blyuvvDKPPPJI7r333my//fbZcccdU0rJ8ccf3+0+br755nzsYx9Lsugc7Y033ni5Y7r11lu7trXTTjtl9OjRXTF90EEHZeONN87w4cOzyy675JFHHunVz7+ucWQaAHhtWtER5C/s1nmKx1I23jY5+frm3b56zvTSRo4c2fW41pqDDz443/zmN5dYprv1Vrf11luv6/HgwYPT0dGxxscwkDkyDQCsmw46Nxk6YslpQ0csmr6a7bPPPrntttvy4IMPJklefPHF3H///dlpp50yc+bMPPTQQ0myTGy/6qCDDspXvvKVJMmCBQvy7LPPZsMNN8zzzz/f7fJvfetbc9VVVyVJ7r///vzud7/LmDFj+vrHWieJaQBg3TT2mOR/fWnRkeiURd//15cWTV/Ntthii1xxxRU57rjjMnbs2Oy777659957M3z48Fx66aU5/PDDM378+Lz+9a/vdv0vfvGL+fGPf5zdd989e+21V+65555sttlm2X///bPbbrvlzDPPXGL5j3/841m4cGF23333HHvssbniiiuWOCJNu1Jr7e8xdGvChAl12rRp/T0MAGAAmTFjRnbeeef+HgZrse7+jpRS7qy1TmjZniPTAADQSEwDAEAjMQ0AAI3ENAAANBLTAADQSEwDAEAjMQ0A0IcGDx6ccePGdX1Nnrz8OzF+7nOf69P9b7DBBqu0/Pnnn5+/+7u/69MxrGg/5557bm666aYel50+fXpuuOGGrudTp05d4Z9jf3E7cQBgnXX9w9fni3d9MY+9+Fi2HLllzhh/Rg7f4fBebbOn24n35HOf+1z+5m/+plf77C8dHR0ZMmTVc/KCCy5Y7vzp06dn2rRpede73pUkmTRpUiZNmtQ0xtXNkWkAYJ10/cPX5/yfnZ85L85JTc2cF+fk/J+dn+sfvr7P9/Xss89mzJgxue+++5Ikxx13XP75n/85Z599dubNm5dx48blAx/4QJLk61//eiZOnJhx48blIx/5SBYsWJBk0RHnT37yk9ljjz2yzz775PHHH0+S/Pa3v82+++6b3XffPZ/61KeW2O9FF12UvffeO2PHjs15553XNf2zn/1s3vzmN+ctb3lL15iWdtJJJ+WjH/1oJkyYkDe/+c3593//9yTJFVdckUmTJuXAAw/MQQcd1LSfk046KVdffXWS5I477sh+++2XPfbYIxMnTsyzzz6bc889N1OmTMm4ceMyZcqUXHHFFTn11FOTJDNnzsyBBx6YsWPH5qCDDsrvfve7rm2efvrp2W+//bLDDjt0bX91c2QaAHhNuvD2C3PvH+7tcf7dc+/OKwtfWWLaSwteyrm3nZur7+8+xHbadKf89cS/Xu5+X43jV51zzjk59thjc/HFF+ekk07KGWeckaeffjof/vCHkyQXX3xx15HsGTNmZMqUKbntttsydOjQfPzjH89VV12VE044IS+++GL22WeffPazn81ZZ52Vf/7nf86nPvWpnHHGGfnYxz6WE044IZdccknXfm+88cY88MADuf3221NrzaRJk3LLLbdk5MiR+da3vpXp06eno6Mj48ePz1577dXtzzJz5szcfvvteeihh/KOd7wjDz74YJLkrrvuyt13351NN920V/t55ZVXcuyxx2bKlCnZe++989xzz2X99dfPBRdckGnTpuXiiy9OsijgX3XaaaflxBNPzIknnpjLL788p59+eq677rokyZw5c3Lrrbfm3nvvzaRJk3L00Ucv97XqC2IaAFgnLR3SK5q+sno6zePggw/Od77znXziE5/IL3/5y27X/dGPfpQ777wze++9d5JFYf76178+STJs2LAcccQRSZK99torP/zhD5Mkt912W6655pokyQc/+MH89V8viv0bb7wxN954Y/bcc88kyQsvvJAHHnggzz//fN797ndn/fXXT5Llnj5xzDHHZNCgQdlxxx2zww475N577+36WTbddNNe7+e+++7LqFGjun7ejTbaqMexvOq//uu/cu2113b9vGeddVbXvKOOOiqDBg3KLrvs0nXkfnUT0wDAa9KKjiAfcvUhmfPinGWmjxo5Kv9y2L/0+XgWLlyYGTNmZP3118/TTz+dbbbZZpllaq058cQT8/nPf36ZeUOHDk0pJcmiDzl2dHR0zXt1+tLbOuecc/KRj3xkien/8A//sNJjXnq7rz4fOXJkn+6nr6y33npdj2uta2SfzpkGANZJZ4w/I8MHD19i2vDBw3PG+DNWy/6+8IUvZOedd843vvGNnHzyyZk/f36SRZH86uODDjooV199dZ544okkyR/+8Ic88sgjy93u/vvvn29961tJkquuuqpr+qGHHprLL788L7zwQpJk9uzZeeKJJ3LAAQfkuuuuy7x58/L888/ne9/7Xo/b/s53vpOFCxfmoYceysMPP5wxY8Yss0xv9jNmzJjMmTMnd9xxR5Lk+eefT0dHRzbccMM8//zz3Y5pv/32W+Lnfetb37rcP5/VzZFpAGCd9OpVO/r6ah5LnzN92GGH5eSTT85ll12W22+/PRtuuGEOOOCAfOYzn8mnP/3pnHLKKRk7dmzGjx+fq666Kp/5zGdyyCGHZOHChRk6dGguueSSjB49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\n" | |
}, | |
"metadata": {} | |
} | |
] | |
}, | |
{ | |
"metadata": { | |
"trusted": true | |
}, | |
"cell_type": "code", | |
"source": "import matplotlib.animation as animation\nfrom IPython.display import HTML\n\ndef show_ani():\n \"\"\"\n Shows an animation of trajectories for rotating angle\n \"\"\"\n frames = 30\n \n def ani_frame():\n fig = plt.figure(figsize=(12, 12))\n ax = fig.add_subplot(111)\n draw(0, ax)\n\n def update_img(n):\n print(f\"{n} \", end=\"\")\n ax.clear()\n draw(np.linspace(0, 2 * np.pi, frames)[n], ax=ax)\n return ax\n\n ani = animation.FuncAnimation(fig, update_img, frames,\n interval=100)\n writer = animation.writers['ffmpeg'](fps=30)\n\n return ani\n\n ani = ani_frame()\n return HTML(ani.to_html5_video())\nshow_ani()", | |
"execution_count": 132, | |
"outputs": [ | |
{ | |
"output_type": "stream", | |
"text": "0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ", | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "execute_result", | |
"execution_count": 132, | |
"data": { | |
"text/plain": "<IPython.core.display.HTML object>", | |
"text/html": "<video width=\"864\" height=\"864\" controls autoplay loop>\n <source type=\"video/mp4\" src=\"data:video/mp4;base64,AAAAHGZ0eXBNNFYgAAACAGlzb21pc28yYXZjMQAAAAhmcmVlAABvDW1kYXQAAAKuBgX//6rcRem9\n5tlIt5Ys2CDZI+7veDI2NCAtIGNvcmUgMTQ4IHIyNzk1IGFhYTlhYTggLSBILjI2NC9NUEVHLTQg\nQVZDIGNvZGVjIC0gQ29weWxlZnQgMjAwMy0yMDE3IC0gaHR0cDovL3d3dy52aWRlb2xhbi5vcmcv\neDI2NC5odG1sIC0gb3B0aW9uczogY2FiYWM9MSByZWY9MyBkZWJsb2NrPTE6MDowIGFuYWx5c2U9\nMHgzOjB4MTEzIG1lPWhleCBzdWJtZT03IHBzeT0xIHBzeV9yZD0xLjAwOjAuMDAgbWl4ZWRfcmVm\nPTEgbWVfcmFuZ2U9MTYgY2hyb21hX21lPTEgdHJlbGxpcz0xIDh4OGRjdD0xIGNxbT0wIGRlYWR6\nb25lPTIxLDExIGZhc3RfcHNraXA9MSBjaHJvbWFfcXBfb2Zmc2V0PS0yIHRocmVhZHM9NiBsb29r\nYWhlYWRfdGhyZWFkcz0xIHNsaWNlZF90aHJlYWRzPTAgbnI9MCBkZWNpbWF0ZT0xIGludGVybGFj\nZWQ9MCBibHVyYXlfY29tcGF0PTAgY29uc3RyYWluZWRfaW50cmE9MCBiZnJhbWVzPTMgYl9weXJh\nbWlkPTIgYl9hZGFwdD0xIGJfYmlhcz0wIGRpcmVjdD0xIHdlaWdodGI9MSBvcGVuX2dvcD0wIHdl\naWdodHA9MiBrZXlpbnQ9MjUwIGtleWludF9taW49MTAgc2NlbmVjdXQ9NDAgaW50cmFfcmVmcmVz\naD0wIHJjX2xvb2thaGVhZD00MCByYz1jcmYgbWJ0cmVlPTEgY3JmPTIzLjAgcWNvbXA9MC42MCBx\ncG1pbj0wIHFwbWF4PTY5IHFwc3RlcD00IGlwX3JhdGlvPTEuNDAgYXE9MToxLjAwAIAAABWiZYiE\nABD//veBvzLLXyK6yXH5530srM885DxyXYmuuNAAAAMAAAMAAAMABiMSN/6H8XjN/AAAAwAAtwAY\nUAwgCqgMKisgIzeO/AA2fDIjaDkn215w9jjCp8/Rnqw+uSbip3a2ESjFWztO0B2x81P/qYyW9grw\nZWVYjxqzm2hoEcHBaPjpSvTGaRkjaSJzHP/NJdjhpHjn1Z/4fRLiPqsO4fXKJ73YPszu8DO6KAgV\n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\nYXRhAAAAAQAAAABMYXZmNTcuNzEuMTAw\n\">\n Your browser does not support the video tag.\n</video>" | |
}, | |
"metadata": {} | |
}, | |
{ | |
"output_type": "stream", | |
"text": "0 ", | |
"name": "stdout" | |
}, | |
{ | |
"output_type": "display_data", | |
"data": { | |
"text/plain": "<matplotlib.figure.Figure at 0x176fa0a90>", | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAtMAAAKvCAYAAACoFEOLAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmUnnVh9//PNxsJYZNFCVuEimENIYSURVGhLApPQIsgiiynihtLn18PFKoPII9LKD21WlBLkUIfUaOANBasiGgRrIWAEZWwGyQxQEB2A2SS7++PDNMsM1m+M8lkyOt1zpy572v9Tu7cw5sr131dpdYaAABg1Q3q7wEAAMBAJaYBAKCRmAYAgEZiGgAAGolpAABoJKYBAKBRr2O6lLJtKeXHpZR7Sim/KaWc0c0ypZTypVLKg6WUu0sp43u7XwAA6G9D+mAbHUn+qtZ6VyllwyR3llJ+WGu9Z7Fl3plkx86vP03ylc7vAAAwYPX6yHStdU6t9a7Ox88nmZFk66UWOzLJv9ZFfp5kk1LKqN7uGwAA+lNfHJnuUkp5Y5I9k/z3UrO2TvLoYs9ndU6bs9T6pyQ5JUlGjhy510477dSXwwMAgGXceeedT9Zat2hZt89iupSyQZJrkvxlrfW5lm3UWi9NcmmSTJgwoU6bNq2vhgcAAN0qpTzSum6fXM2jlDI0i0L6qlrrtd0sMjvJtos936ZzGgAADFh9cTWPkuRrSWbUWv++h8WmJjmh86oe+yR5ttY6p4dlAQBgQOiL0zz2T/LBJL8qpUzvnPY3SbZLklrrV5PckORdSR5M8sckJ/fBfgEAoF/1OqZrrbcmKStYpib5RG/3BQCwPPPnz8+sWbPy0ksv9fdQWAsNHz4822yzTYYOHdpn2+zTq3kAAPSnWbNmZcMNN8wb3/jGLDoTFRapteapp57KrFmzsv322/fZdt1OHAB4zXjppZey2WabCWmWUUrJZptt1uf/aiGmAYDXFCFNT1bH3w0xDQAAjcQ0AEAfevzxx/P+978/O+ywQ/baa6/su++++e53v7vGx/HGN74xTz755DLTP/e5zzVt77rrrss999zT9fztb3973GBPTAMA67DrfjE7+0++OduffX32n3xzrvtF7+4pV2vNUUcdlQMOOCAPP/xw7rzzznzrW9/KrFmzllm2o6OjV/tq1VNM11qzcOHCHtdbOqZZREwDAOuk634xO+dc+6vMfmZeapLZz8zLOdf+qldBffPNN2fYsGH56Ec/2jVt9OjROe2005IkV1xxRSZNmpQDDzwwBx10UGqtOfPMM7Pbbrtl9913z5QpU5IkP/nJT3LEEUd0bePUU0/NFVdckWTREefzzjsv48ePz+6775577703SfLUU0/lkEMOya677poPfehDWXRl4iWdffbZmTdvXsaNG5cPfOADmTlzZsaMGZMTTjghu+22Wx599NFssMEGXctfffXVOemkk/Kzn/0sU6dOzZlnnplx48bloYceSpJ85zvfycSJE/PmN785P/3pT5v/3AYyl8YDAF6TPv293+Se3z/X4/xf/O6ZvLJgySOx8+YvyFlX351v3v67btfZZauNct7/2rXHbf7mN7/J+PHjlzuuu+66K3fffXc23XTTXHPNNZk+fXp++ctf5sknn8zee++dAw44YLnrJ8nmm2+eu+66K1/+8pfzd3/3d7nsssvy6U9/Om95y1ty7rnn5vrrr8/Xvva1ZdabPHlyLr744kyfvug+ezNnzswDDzyQK6+8Mvvss0+P+9tvv/0yadKkHHHEETn66KO7pnd0dOT222/PDTfckE9/+tO56aabVjj21xpHpgGAddLSIb2i6S0+8YlPZI899sjee+/dNe3ggw/OpptumiS59dZbc9xxx2Xw4MF5wxvekLe97W254447Vrjd97znPUmSvfbaKzNnzkyS3HLLLTn++OOTJIcffnhe97rXrdQYR48evdyQXtVxrGscmQYAXpOWdwQ5SfaffHNmPzNvmelbbzIiUz6yb9M+d91111xzzTVdzy+55JI8+eSTmTBhQte0kSNHrnA7Q4YMWeL85aWvjbzeeuslSQYPHtzrc6+XHs/il49b0TWZ+3IcA5Uj0wDAOunMQ8dkxNDBS0wbMXRwzjx0TPM2DzzwwLz00kv5yle+0jXtj3/8Y4/Lv/Wtb82UKVOyYMGCzJ07N7fccksmTpyY0aNH55577snLL7+cZ555Jj/60Y9WuO8DDjgg3/jGN5Ik3//+9/P00093u9zQoUMzf/78Hrfzhje8ITNmzMjChQuXuArJhhtumOeff36F41jXiGkAYJ101J5b5/Pv2T1bbzIiJYuOSH/+PbvnqD23bt5mKSXXXXdd/vM//zPbb799Jk6cmBNPPDEXXnhht8u/+93vztixY7PHHnvkwAMPzN/+7d9myy23zLbbbptjjjkmu+22W4455pjsueeeK9z3eeedl1tuuSW77rprrr322my33XbdLnfKKadk7Nix+cAHPtDt/MmTJ+eII47Ifvvtl1GjRnVNf9/73peLLrooe+65Z9cHEElKd5/0XBtMmDChunYhALAqZsyYkZ133rm/h8FarLu/I6WUO2utE3pYZbkcmQYAgEZiGgAAGolpAABoJKYBAKCRmAYAgEZiGgAAGolpAIA+NHjw4IwbNy677bZb3vve9y73pi0r8pOf/CRHHHFEkmTq1KmZPHlyj8s+88wz+fKXv9z1/Pe//32OPvro5n2zcsQ0ALDuuvvbyRd2S87fZNH3u7/d602OGDEi06dPz69//esMGzYsX/3qV5eYX2td4lbhK2vSpEk5++yze5y/dExvtdVWufrqq1d5P6waMQ0ArJvu/nbyvdOTZx9NUhd9/97pfRLUr3rrW9+aBx98MDNnzsyYMWNywgknZLfddsujjz6aG2+8Mfvuu2/Gjx+f9773vXnhhReSJP/xH/+RnXbaKePHj8+1117bta0rrrgip556apLk8ccfz7vf/e7sscce2WOPPfKzn/0sZ599dh566KGMGzcuZ555ZmbOnJnddtstSfLSSy/l5JNPzu67754999wzP/7xj7u2+Z73vCeHHXZYdtxxx5x11ll99rOvK4b09wAAAFaL75+dPParnufPuiNZ8PKS0+bPS/7t1OTOK7tfZ8vdk3f2fKrF4jo6OvL9738/hx12WJLkgQceyJVXXpl99tknTz75ZD7zmc/kpptuysiRI3PhhRfm7//+73PWWWflwx/+cG6++ea86U1vyrHHHtvttk8//fS87W1vy3e/+90sWLAgL7zwQiZPnpxf//rXmT59epJk5syZXctfcsklKaXkV7/6Ve69994ccsghuf/++5Mk06dPzy9+8Yust956GTNmTE477bRsu+22K/Uz4sg0ALCuWjqkVzR9Jc2bNy/jxo3LhAkTst122+Uv/uIvkiSjR4/OPvvskyT5+c9/nnvuuSf7779/xo0blyuvvDKPPPJI7r333my//fbZcccdU0rJ8ccf3+0+br755nzsYx9Lsugc7Y033ni5Y7r11lu7trXTTjtl9OjRXTF90EEHZeONN87w4cOzyy675JFHHunVz7+ucWQaAHhtWtER5C/s1nmKx1I23jY5+frm3b56zvTSRo4c2fW41pqDDz443/zmN5dYprv1Vrf11luv6/HgwYPT0dGxxscwkDkyDQCsmw46Nxk6YslpQ0csmr6a7bPPPrntttvy4IMPJklefPHF3H///dlpp50yc+bMPPTQQ0myTGy/6qCDDspXvvKVJMmCBQvy7LPPZsMNN8zzzz/f7fJvfetbc9VVVyVJ7r///vzud7/LmDFj+vrHWieJaQBg3TT2mOR/fWnRkeiURd//15cWTV/Ntthii1xxxRU57rjjMnbs2Oy777659957M3z48Fx66aU5/PDDM378+Lz+9a/vdv0vfvGL+fGPf5zdd989e+21V+65555sttlm2X///bPbbrvlzDPPXGL5j3/841m4cGF23333HHvssbniiiuWOCJNu1Jr7e8xdGvChAl12rRp/T0MAGAAmTFjRnbeeef+HgZrse7+jpRS7qy1TmjZniPTAADQSEwDAEAjMQ0AAI3ENAAANBLTAADQSEwDAEAjMQ0A0IcGDx6ccePGdX1Nnrz8OzF+7nOf69P9b7DBBqu0/Pnnn5+/+7u/69MxrGg/5557bm666aYel50+fXpuuOGGrudTp05d4Z9jf3E7cQBgnXX9w9fni3d9MY+9+Fi2HLllzhh/Rg7f4fBebbOn24n35HOf+1z+5m/+plf77C8dHR0ZMmTVc/KCCy5Y7vzp06dn2rRpede73pUkmTRpUiZNmtQ0xtXNkWkAYJ10/cPX5/yfnZ85L85JTc2cF+fk/J+dn+sfvr7P9/Xss89mzJgxue+++5Ikxx13XP75n/85Z599dubNm5dx48blAx/4QJLk61//eiZOnJhx48blIx/5SBYsWJBk0RHnT37yk9ljjz2yzz775PHHH0+S/Pa3v82+++6b3XffPZ/61KeW2O9FF12UvffeO2PHjs15553XNf2zn/1s3vzmN+ctb3lL15iWdtJJJ+WjH/1oJkyYkDe/+c3593//9yTJFVdckUmTJuXAAw/MQQcd1LSfk046KVdffXWS5I477sh+++2XPfbYIxMnTsyzzz6bc889N1OmTMm4ceMyZcqUXHHFFTn11FOTJDNnzsyBBx6YsWPH5qCDDsrvfve7rm2efvrp2W+//bLDDjt0bX91c2QaAHhNuvD2C3PvH+7tcf7dc+/OKwtfWWLaSwteyrm3nZur7+8+xHbadKf89cS/Xu5+X43jV51zzjk59thjc/HFF+ekk07KGWeckaeffjof/vCHkyQXX3xx15HsGTNmZMqUKbntttsydOjQfPzjH89VV12VE044IS+++GL22WeffPazn81ZZ52Vf/7nf86nPvWpnHHGGfnYxz6WE044IZdccknXfm+88cY88MADuf3221NrzaRJk3LLLbdk5MiR+da3vpXp06eno6Mj48ePz1577dXtzzJz5szcfvvteeihh/KOd7wjDz74YJLkrrvuyt13351NN920V/t55ZVXcuyxx2bKlCnZe++989xzz2X99dfPBRdckGnTpuXiiy9OsijgX3XaaaflxBNPzIknnpjLL788p59+eq677rokyZw5c3Lrrbfm3nvvzaRJk3L00Ucv97XqC2IaAFgnLR3SK5q+sno6zePggw/Od77znXziE5/IL3/5y27X/dGPfpQ777wze++9d5JFYf76178+STJs2LAcccQRSZK99torP/zhD5Mkt912W6655pokyQc/+MH89V8viv0bb7wxN954Y/bcc88kyQsvvJAHHnggzz//fN797ndn/fXXT5Llnj5xzDHHZNCgQdlxxx2zww475N577+36WTbddNNe7+e+++7LqFGjun7ejTbaqMexvOq//uu/cu2113b9vGeddVbXvKOOOiqDBg3KLrvs0nXkfnUT0wDAa9KKjiAfcvUhmfPinGWmjxo5Kv9y2L/0+XgWLlyYGTNmZP3118/TTz+dbbbZZpllaq058cQT8/nPf36ZeUOHDk0pJcmiDzl2dHR0zXt1+tLbOuecc/KRj3xkien/8A//sNJjXnq7rz4fOXJkn+6nr6y33npdj2uta2SfzpkGANZJZ4w/I8MHD19i2vDBw3PG+DNWy/6+8IUvZOedd843vvGNnHzyyZk/f36SRZH86uODDjooV199dZ544okkyR/+8Ic88sgjy93u/vvvn29961tJkquuuqpr+qGHHprLL788L7zwQpJk9uzZeeKJJ3LAAQfkuuuuy7x58/L888/ne9/7Xo/b/s53vpOFCxfmoYceysMPP5wxY8Yss0xv9jNmzJjMmTMnd9xxR5Lk+eefT0dHRzbccMM8//zz3Y5pv/32W+Lnfetb37rcP5/VzZFpAGCd9OpVO/r6ah5LnzN92GGH5eSTT85ll12W22+/PRtuuGEOOOCAfOYzn8mnP/3pnHLKKRk7dmzGjx+fq666Kp/5zGdyyCGHZOHChRk6dGguueSSjB49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\n" | |
}, | |
"metadata": {} | |
} | |
] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"name": "python3", | |
"display_name": "Python 3", | |
"language": "python" | |
}, | |
"language_info": { | |
"name": "python", | |
"version": "3.6.1", | |
"mimetype": "text/x-python", | |
"codemirror_mode": { | |
"name": "ipython", | |
"version": 3 | |
}, | |
"pygments_lexer": "ipython3", | |
"nbconvert_exporter": "python", | |
"file_extension": ".py" | |
}, | |
"gist": { | |
"id": "6a09accf7591bf3a89d8344cd138b765", | |
"data": { | |
"description": "Constant Velocity-Copy1.ipynb", | |
"public": true | |
} | |
}, | |
"_draft": { | |
"nbviewer_url": "https://gist.github.com/6a09accf7591bf3a89d8344cd138b765" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 2 | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment