Skip to content
Snippets Groups Projects
index.html 4.36 KiB
Newer Older
Peter Wagenhuber's avatar
Peter Wagenhuber committed
<!doctype html>
<html>
	<head>
		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">

		<title>Droplet Sequenz Generator</title>

		<link rel="stylesheet" href="css/reveal.css">
		<link rel="stylesheet" href="css/theme/white.css">

		<!-- Theme used for syntax highlighting of code -->
		<link rel="stylesheet" href="lib/css/zenburn.css">

		<!-- Printing and PDF exports -->
		<script>
			var link = document.createElement( 'link' );
			link.rel = 'stylesheet';
			link.type = 'text/css';
			link.href = window.location.search.match( /print-pdf/gi ) ? 'css/print/pdf.css' : 'css/print/paper.css';
			document.getElementsByTagName( 'head' )[0].appendChild( link );
		</script>
	</head>
	<body>
		<div class="reveal">
			<div class="slides">
				<section>
          <h4> Basic Idea </h4>
          <img src="img/basic-idea.svg" align="center">
        </section>

				<section>
          <h4> Multiple Paths </h4>
          <img src="img/multiple-paths.svg" align="center">
        </section>

				<section>
          <h4> Sequence Tuple</h4>
          <ul>
            <li> Generate multiple possible sequences </li>
            <li> (Droplet, Path, Current Bifurcation, minSteps, maxSteps) </li>
          </ul>
        </section>

				<section>
          <h4> Algorithm to generate all possible sequences </h4>
          <ul>
            <li> Start with Payload Droplet at last Bifurcation in its path </li>
          </ul>
                      <pre><code class="hljs" data-trim contenteditable>
  if headerDroplet needed:
    for all possible header droplet paths:
      add header droplet to list of sequenceTuples
      add list of sequenceTuples to list of possible Sequences
          </pre></code>

        </section>

				<section>
          <h4> Algorithm to generate all possible sequences </h4>
          <ul>
            <li> List of possible Sequences</li>
            <li> { { (Pld, Path, currBif, 0,0),(Hdr-A, H-A-Path, curBif, minOffset-A, maxOffset-A)} <br>{ (Pld, Path, currBif, 0,0),(Hdr-B, H-B-Path, curBif, minOffset-B, maxOffset-B) } }</li>
          </ul>
        </section>

				<section>
          <h4> Algorithm to generate all possible sequences </h4>
          <ul>
Peter Wagenhuber's avatar
Peter Wagenhuber committed
            <li> Ascend the Path recursively for every Droplet and decide at every Bifurcation if another heder droplet is needed</li>
Peter Wagenhuber's avatar
Peter Wagenhuber committed
            <li> This generates a (possibly huge) list of possibleSequences </li>
          </ul>
        </section>

				<section>
          <h4> Derive Droplet Sequence from list of possible sequences </h4>
          <ul>
            <li> Not every entry in the list of possible sequences represents a feasible sequence (e.g. same start time for 2 droplets) </li>
          </ul>
                      <pre><code class="hljs" data-trim contenteditable>
sort list of possible sequences according to their length
take shortest sequence
if sequence is feasible and droplets don't coalesce:
  return found sequence
else:
  move on to next sequence
          </pre></code>
        </section>

Peter Wagenhuber's avatar
Peter Wagenhuber committed
				<section>
          <h4> Possible Improvements</h4>
          <ul>
            <li>Performance ! </li>
            <li>Recursion for finding possible sequences not implemented with good performance</li>
            <ol>
              <li>Check paths for header droplets that are likely to produce a short (with a lower amount of header droplets) sequence </li>
              <li>After all possible sequences for these few paths are found check for feasability and colesceing </li>
              <li>Just in case no sequence was found check the more complicated possible sequences</li>
            </ol>
            <li>No verfication yet (that the sequence really realizes the correct payload path) </li>
          </ul>
        </section>

Peter Wagenhuber's avatar
Peter Wagenhuber committed
			</div>
		</div>

		<script src="lib/js/head.min.js"></script>
		<script src="js/reveal.js"></script>

		<script>
			// More info about config & dependencies:
			// - https://github.com/hakimel/reveal.js#configuration
			// - https://github.com/hakimel/reveal.js#dependencies
			Reveal.initialize({
				dependencies: [
					{ src: 'plugin/markdown/marked.js' },
					{ src: 'plugin/markdown/markdown.js' },
					{ src: 'plugin/notes/notes.js', async: true },
					{ src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } }
				]
			});
		</script>
	</body>
</html>