Changes
Version 4.0
- Added graph layout algorithms.
- Added planar graph algorithms.
- Improved testing code.
- Upgraded to boost 1.36.0.
- Added edge_weight_vector function.
- New option syntax.
- Fixed bugs with graph generation routines.
Version 3.1 (Internal release)
- Fixed bug with predecessor return from floyd_warshall_all_sp.
- Updated documentation for all_shortest_paths for predecessor return.
Version 3.0
- Added grid_graph function.
- Added core_numbers function.
- Added weighted and directed clustering coefficients function.
- Added lengauer_tarjan_dominator_tree function.
- Added core_numbers_example.
- Added matching, edmonds_maximum_cardinality_matching, maximal_matching, and test_matching functions.
- Added kolmogorov_max_flow and edmunds_karp_max_flow functions.
- Added topological_order function.
- Added pred_from_path to convert predecessors into a path.
- Added edge_weight_index function to automatically generate edge_weight indices.
- Added 'target' vertex option to all shortest path and search algorithms to stop the search early if it finds a target vertex.
- Added edge_weight option to all functions that depend on a weighted graph except max_flow. This option allows edge weights to be separate from the graph and allows 0 edge weights.
- Added signifcantly more testing code.
- Added new examples for edge-reweighted graphs.
- Updated to Boost 1.34.0.
- Removed kludge to fix bug in Johnson's all pairs shortest path from Boost 1.33.1.
- max_flow, floyd_warshall, and betweenness_centrality now correctly implement the transpose option.
- Fixed bug with breadth_first_search not stopping.
- Fixed documentation bug with breadth_first_search function.
- Fixed compiler warnings without -ansi on g++-4.0
- Fixed bugs with out of range vertices in all shortest path algorithms.
Version 2.1
- Fixed bug with MST and disconnected graphs.
- Added edge centrality output to betweeneness_centrality.
- Added predecessor matrix to floyd_warshall all pairs shortest paths
- Updated sparse matrix interface to work with Matlab 2006b on 64-bit processors
- Fixed error with erdos_reyni
- Added graph generation functions star_graph, cycle_graph, wheel_graph
Version 2.0
- Added support for visitors.
- Added astar_search.
- Added some trivial functions (num_edges, num_vertices).
- Added erdos_reyni graph creation.
- Fixed symmetrization error with MST and negative edge weights.
- Added support for non-sparse input.
- Added additional examples.
Version 1.01
- Fixed error with mst.m and graphs with negative weights.
- Changed default MST algorithm to kruskal.
- Fixed error with components_mex.c and computing component sizes incorrectly.
- Added debugging code to library.
- Added regression tests.


Experience
-
Technical Content Writer (Contract)
WhoIsHostingThis.com
November 2014 - Present
-
- Write book-length technical guides for web hosting topics
- Write short articles on web development and hosting
- Edit technical content from other writers
-
Chief Operating Officer
Illuminare Publications
May 2014 - July 2015
-
- Outbound institutional sales
- Manage book production and publishing
- Shipping and logistics
- Web applications development
-
Director of Online Development
Episcopal Diocese of Fort Worth
November 2012 - May 2014
-
- Built new diocesan website
- Implemented content management system
- Increased ranking in Google to first place for critical search phrases
- Ongoing development and improvement
-
Project Manager - Web Applications Development
FTI Groups Inc.
July 2010 - April 2014
-
- Manage remote development team
- Design web applications
- E-commerce and affiliate marketing
- Inventory and asset control
- Project Management
- Accounting
- Build marketing-focused websites
- Maintain and improve legacy software systems
-
Creative Director
Moreno Law
June 2009 - May 2010
-
- Rebranded law firm
- Built marketing web site
- Designed seminar curriculum
- Conducted workshop sessions on insurance aspects of estate planning
-
Freelance Webdesign and Consulting
Worked with small businesses and sole proprietors to
-
- Develop content-based marketing strategies
- Implement consistent visual branding
- Launch or enhance social media presence
-
Blogger / Contributer
-
-
Registered Representative
Baystate Financial
October 2008 - June 2009
-
Insurance Agent
Bankers Life and Casualty
December 2006 - August 2008
Skills
- Web Design
-
- HTML
- CSS, LESS
- Javascript, JQuery
- PHP
-
- Github
- Jekyll
- Bootstrap
- Angular.js
- WordPress
- Web Applications Development
-
- UI/UX Planning and Implementation
- Service Oriented Architecture
- Database Design
- Development Team Management
- Content and Data Publishing
-
- Adobe Creative Suite
- Writing, Editing, Proofreading
- Typography and Layout
- Print on Demand Publishing
Education
- Florida State University
-
- BA Music - 2004
- BA Theatre - 2004


{% extends "base.html" %} {% block title %}
A custom written Amazon Echo skill to allow me to check the status of the trains on my commute. Currently working on a skill that will work for all MBTA services.
Name: alexa-mbta
Started: May 2017
Languages: Node.js
Technologies: Amazon Echo
GitHub: alexa-mbtaVideo
A group effort with two others for Music Apps on the iPad, a special topics course at Tufts. I personally created the Pure Data file, which allowed for changing key and synth parameters on the fly, and generating the tone itself. I also worked on connecting UI controls to synth and effect parameters.
Name: Hydralys
Started: January 2015
Languages: Swift, Pure Data
Technologies: iOS, iPad
In-Class Demo
The BlockyTalky project investigates how youth can learn about parallel and distributed computing through designing, building, and programming networked devices that communicate with each other, web services, and mobile devices.
As part of our research, we have developed a prototype software and hardware toolkit (also called BlockyTalky) that makes it easy for users to build physical devices that can sense and act in the physical world as well as communicate over LANs and the Internet with other BlockyTalky devices, web services (e.g., social media), and, eventually, user-built mobile applications. Each BlockyTalky devices is a web server; users can connect using any HTML5-compliant browser and program their devices using a blocks-based language.
Quite a bit of recent research has shown that the opportunity to build computing enhanced physical objects, whether robots, fashion pieces, or public displays, can get youth excited about computing. However, that research has largely ignored the very important role of networked and social media in youths lives. Nearly all American teens use social media; but there are scant tools to create their own socially-connected systems, and none that create bridges between their virtual lives and the physical spaces they inhabit. BlockyTalky makes it possible for youth to create new physical and virtual ways to connect to one-another, and with their homes and communities. For example, the video shows an Internet-connected remote-controlled cat telepresence and feeding system
BlockyTalky continues to grow from my initial development as I prepare to graduate from Tufts. More information on BlockyTalky can be found here.
Name: BlockyTalky
Worked on: July 2013 - August 2014
Languages: Python, PureData, HTML, CSS, JS
Technologies: Raspberry Pi, Flask, jQuery, rabbitMQ, BrickPi LEGO Mindstorms Shield
GitHub: BlockyTalky
Cat Treats!
The remoCondo home automation project was born out of two things. First, I had played with my Raspberry Pi, trying out interesting custom images such as Raspbmc and Retropie, and decided to create something of my own. Second, my condo association charges a lot per extra key to the building, and I wanted a simple, yet secure, way to let other people in (say, to feed my cat). From here, remoCondo was born.
After getting a simple setup combining the Flask microframework with a basic front-end, an optocoupler, and Google OAuth for security, I could whitelist any friends and with a click of a button they could get into the building. It worked great, so I decided to add more features so my Pi was doing more than one simple task.
As the system was located in my living room, I started thinking about what else I could control. Utilizing LIRC I found it was easy to control any device that could receive IR commands. I added controls for my television, stereo, game consoles, and most importantly my in-wall air conditioner. To also keep track of the temperature, I connected a TMP35 analog temperature sensor to the Pi. All of these controls and feedback could be easily hooked to the web front-end thanks to the ease of Flask.
To prevent issues with the system status going out of sync, the Pi also has an IR receiver, that reads the same IR commands that go out from my remote, and updates any changes not made by remoCondo. Since, more additional features have been added. When the features have been finalized, all components will be soldered and the breadboard will gone, along with proper mounting.
Name: remoCondo
Started: April 2014
Languages: Python, Bash, HTML, CSS, JS
Technologies: Raspberry Pi, Flask, Sensors, Motors, Electronics
GitHub: remoCondo
Interface
Current Breadboard Setup
I have worked on and off for years building, designing, and modifying effects pedals. Originally inspired by circuit bending cheap pedals and finding interesting results, I moved on to trying a pedal kit. It worked well, and I have made and modified several pedals since. Some pedals include a ZVez Super Hard On and RAT clone combined into one pedal, a circuit bent Arion chorus that can generate "whale like" tones, and many clones (MXR Phase 90, MXR Blue Box, TS-808).
Name: Guitar Effects Pedals
Started: 2008
SHO Clone
I built this site in a weekend, mostly as a home to document my projects as I work on them. It is built on the Flask microframework, and served up on an nginx server via uWSGI, running in Docker. The CSS framework is (if it isn't obvious) Twitter Bootstrap
Name: Personal Home Page
Started: 2015
Languages: Python, HTML, CSS, JS
Technologies: Flask, nginx, uWSGI, Twitter Bootstrap
GitHub: homepage


{{ head }}
Back
View meeting
Meeting details
Subject:
Description:
Collaborative space:
Created:
Status:
Not started yet.
Start
Attend
Minutes:
Send to Collaborative table


about me -> all
projects -> of
github -> the
blog -> green
linkedin -> words
resume -> are
boredom solution -> links
contact -> ta2553@columbia.edu


ContactForm class.
ContactForm is the data structure for keeping contact form data. It is used by the 'contact' action of 'SiteController'.
Located in /protected/models/ContactForm.php (line 8)
CFormModel | --ContactForm
Documentation generated on Fri, 06 Dec 2013 21:27:46 +0100 by phpDocumentor 1.4.4


| Recorded Crime Offences (Number) by Garda Station, Type of Offence and Year |
|||||||
|---|---|---|---|---|---|---|---|
| 2011 | 2012 | 2013 | 2014 | 2015 | 2016 | ||
| Rathfarnham, D.M.R. Southern Division | 03 ,Attempts/threats to murder, assaults, harassments and related offences | 98 | 78 | 84 | 83 | 113 | 106 |
| 06 ,Robbery, extortion and hijacking offences | 23 | 33 | 35 | 15 | 29 | 19 | |
| 07 ,Burglary and related offences | 350 | 429 | 432 | 432 | 525 | 337 | |
| 08 ,Theft and related offences | 779 | 735 | 809 | 875 | 1104 | 730 | |
| See Background Notes |


{% extends "base/__normal.html" %} {% block title %} {{ title }} {% endblock %} {% block content %}
Check out these templates to get started and make sure to keep the header rows!


Updatable queries allow you to create pages with quite complex business logic. For example, you can insert or update records in multiple tables simultaneously transparently for a user, who just fills an Insert/Edit form and presses Submit. To make a query updatable, it is necessary to provide INSERT, UPDATE, and DELETE statements that are executed when a record inserted, updated, and deleted accordingly. Please refer to the manual to learn how to write such statements.
You can find another example of using an updatable query in our NBA Database Demo. Starting from version 18.3 the same technique can be also used for views.


Challenge Master
Scoreboard
Challenges
Upload
Info
Sign In
Challenge Title
This is where the challenge description goes
This is where you describe the challenge and what the user is looking for
Check
Solved By 0 People:


{% extends "www/bases/base.html" %} {% load compress static %} {% block title %}Articles - Unicorn{% endblock title %} {% block styles %} {% compress css %} {% endcompress %} {% endblock styles %} {% block content %} Unicorn Add Some Magic to Your Django Website How to Escape the Tyranny of Complicated JavaScript Lessons Learned Building a Full-stack Framework for Django Other front-end frameworks Articles detailing how to integrate Django with other full-stack frameworks. Building web apps with Vue and Django - The Ultimate Guide Integrating a Modern JavaScript Pipeline into a Django Application Creating A To-Do List App With Django, Drf, Alpine.Js And Axios Making React and Django play well together Using VueJS alongside Django Using Webpack with Django: no plugins required! Sprinkling some Magic into Django Django + Vue CLI + Webpack demo DjangoCon 2019 - Frontend Development for Backend Developers Django Channels Django Channels, ASGI, and Heroku {% endblock content %}
Articles detailing how to integrate Django with other full-stack frameworks.


We're that "cool" vegan uncle who doesn't have kids and somehow makes a living repairing antique polaroid cameras, while drinking a $38 bottle of artisanal cold-brew.
Let's get started, I guess.“ I never realized how uncool I was before. Hipstrify.io lovingly crafted me into shape, complete with a skin-fade, fresh denim & a moustache — not only were they late, but they were overbudget. Highly recommended! ” — A Happy Client
Squid synth Marfa, fashion axe readymade whatever four loko aesthetic tote bag tilde. Mustache try-hard skateboard blog, umami ugh gentrify chia trust fund whatever. Church-key leggings small batch Etsy, taxidermy VHS meggings deep v slow-carb 8-bit blog.
Squid synth Marfa, fashion axe readymade whatever four loko aesthetic tote bag tilde. Mustache try-hard skateboard blog, umami ugh gentrify chia trust fund whatever. Church-key leggings small batch Etsy, taxidermy VHS meggings deep v slow-carb 8-bit blog.
Squid synth Marfa, fashion axe readymade whatever four loko aesthetic tote bag tilde. Mustache try-hard skateboard blog, umami ugh gentrify chia trust fund whatever. Church-key leggings small batch Etsy, taxidermy VHS meggings deep v slow-carb 8-bit blog.
Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
Seriously, we'll send you real paper in the mail. We don't do email.


20 Users Share Their Worst Fails in the Kitchen
A kitchen is an intimidating place for some people and when preparing a dish, it can end up looking like a scene from a horror movie. Many people have had problems with rice measurements, cooking times, and how to use oil. That’s why a Twitter user started a thread where everyone could share their worst experiences in the kitchen.
Bright Side compiled a list of the best incidents some users have had while cooking.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
How has your experience in the kitchen been so far?  Share your comments below!
Preview photo credit GracieRosmami / Twitter


General-purpose tool for variant evaluation (% in dbSNP, genotype concordance, Ti/Tv ratios, and a lot more)
Given a variant callset, it is common to calculate various quality control metrics. These metrics include the number of raw or filtered SNP counts; ratio of transition mutations to transversions; concordance of a particular sample's calls to a genotyping chip; number of s per sample; etc. Furthermore, it is often useful to stratify these metrics by various criteria like functional class (missense, nonsense, silent), whether the site is CpG site, the amino acid degeneracy of the site, etc. VariantEval facilitates these calculations in two ways: by providing several built-in evaluation and stratification modules, and by providing a framework that permits the easy development of new evaluation and stratification modules.
One or more variant sets to evaluate plus any number of comparison sets.
Evaluation tables detailing the results of the eval modules which were applied. For example:
output.eval.grp: ##:GATKReport.v0.1 CountVariants : Counts different classes of variants in the sample CountVariants CompFeatureInput CpG EvalFeatureInput JexlExpression Novelty nProcessedLoci nCalledLoci nRefLoci nVariantLoci variantRate ... CountVariants dbsnp CpG eval none all 65900028 135770 0 135770 0.00206024 ... CountVariants dbsnp CpG eval none known 65900028 47068 0 47068 0.00071423 ... CountVariants dbsnp CpG eval none novel 65900028 88702 0 88702 0.00134601 ... CountVariants dbsnp all eval none all 65900028 330818 0 330818 0.00502000 ... CountVariants dbsnp all eval none known 65900028 120685 0 120685 0.00183133 ... CountVariants dbsnp all eval none novel 65900028 210133 0 210133 0.00318866 ... CountVariants dbsnp non_CpG eval none all 65900028 195048 0 195048 0.00295976 ... CountVariants dbsnp non_CpG eval none known 65900028 73617 0 73617 0.00111710 ... CountVariants dbsnp non_CpG eval none novel 65900028 121431 0 121431 0.00184265 ... ...
gatk VariantEval \ -R reference.fasta \ -O output.eval.grp \ --eval set1:set1.vcf \ --eval set2:set2.vcf \ [--comp comp.vcf]Count Mendelian violations for each family in a callset with multiple families (and provided pedigree)
gatk VariantEval \ -R reference.fasta \ -O output.MVs.byFamily.table \ --eval multiFamilyCallset.vcf \ -no-ev -noST \ -ST Family \ -EV MendelianViolationEvaluator
Some stratifications and evaluators are incompatible with each other due to their respective memory requirements, such as AlleleCount and VariantSummary, or Sample and VariantSummary. If you specify such a combination, the program will output an error message and ask you to disable one of these options. We do not currently provide an exhaustive list of incompatible combinations, so we recommend trying out combinations that you are interested in on a dummy command line, to rapidly ascertain whether it will work or not.
This table summarizes the command-line arguments that are specific to this tool. For more details on each argument, see the list further down below the table or click on an argument name to jump directly to that entry in the list.
| Argument name(s) | Default value | Summary | |
|---|---|---|---|
| Required Arguments | |||
| --eval |
Input evaluation file(s) | ||
| --output -O |
File to which variants should be written | ||
| --reference -R |
Reference sequence file | ||
| Optional Tool Arguments | |||
| --ancestral-alignments -aa |
Fasta file with ancestral alleles | ||
| --arguments_file |
read one or more arguments files and add them to the command line | ||
| --cloud-index-prefetch-buffer -CIPB |
-1 | Size of the cloud-only prefetch buffer (in MB; 0 to disable). Defaults to cloudPrefetchBuffer if unset. | |
| --cloud-prefetch-buffer -CPB |
40 | Size of the cloud-only prefetch buffer (in MB; 0 to disable). | |
| --comparison -comp |
Input comparison file(s) | ||
| --dbsnp -D |
dbSNP file | ||
| --disable-bam-index-caching -DBIC |
false | If true, don't cache bam indexes, this will reduce memory requirements but may harm performance if many intervals are specified. Caching is automatically disabled if there are no intervals specified. | |
| --disable-sequence-dictionary-validation |
false | If specified, do not check the sequence dictionaries from our inputs for compatibility. Use at your own risk! | |
| --do-not-use-all-standard-modules -no-ev |
false | Do not use the standard modules by default (instead, only those that are specified with the -EV option) | |
| --do-not-use-all-standard-stratifications -no-st |
false | Do not use the standard stratification modules by default (instead, only those that are specified with the -S option) | |
| --eval-module -EV |
One or more specific eval modules to apply to the eval track(s) (in addition to the standard modules, unless -no-ev is specified) | ||
| --gcs-max-retries -gcs-retries |
20 | If the GCS bucket channel errors out, how many times it will attempt to re-initiate the connection | |
| --gcs-project-for-requester-pays |
Project to bill when accessing "requester pays" buckets. If unset, these buckets cannot be accessed. User must have storage.buckets.get permission on the bucket being accessed. | ||
| --gold-standard -gold |
Evaluations that count calls at sites of true variation (e.g., indel calls) will use this argument as their gold standard for comparison | ||
| --help -h |
false | display the help message | |
| --interval-merging-rule -imr |
ALL | Interval merging rule for abutting intervals | |
| --intervals -L |
One or more genomic intervals over which to operate | ||
| --keep-ac0 |
false | If provided, modules that track polymorphic sites will not require that a site have AC > 0 when the input eval has genotypes | |
| --known-cnvs |
File containing tribble-readable features describing a known list of copy number variants | ||
| --knownNames -known-name |
Name of feature bindings containing variant sites that should be treated as known when splitting eval features into known and novel subsets | ||
| --list -ls |
false | List the available eval modules and exit | |
| --mendelian-violation-qual-threshold -mvq |
50.0 | Minimum genotype QUAL score for each trio member required to accept a site as a violation. Default is 50. | |
| --merge-evals |
false | If provided, all -eval tracks will be merged into a single eval track | |
| --min-phase-quality -mpq |
10.0 | Minimum phasing quality | |
| --pedigree -ped |
Pedigree file for determining the population "founders" | ||
| --pedigreeValidationType -pedValidationType |
STRICT | The strictness for validating the pedigree. Can be either STRICT or SILENT. Default is STRICT | |
| --require-strict-allele-match -strict |
false | If provided only comp and eval tracks with exactly matching reference and alternate alleles will be counted as overlapping | |
| --sample -sn |
Derive eval and comp contexts using only these sample genotypes, when genotypes are available in the original context | ||
| --sample-ploidy -ploidy |
2 | Per-sample ploidy (number of chromosomes per sample) | |
| --selectExps -select |
One or more stratifications to use when evaluating the data | ||
| --selectNames -select-name |
Names to use for the list of stratifications (must be a 1-to-1 mapping) | ||
| --sites-only-vcf-output |
false | If true, don't emit genotype fields when writing vcf file output. | |
| --strat-intervals |
File containing tribble-readable features for the IntervalStratificiation | ||
| --stratification-module -ST |
One or more specific stratification modules to apply to the eval track(s) (in addition to the standard stratifications, unless -noS is specified) | ||
| --version |
false | display the version number for this tool | |
| Optional Common Arguments | |||
| --add-output-sam-program-record |
true | If true, adds a PG tag to created SAM/BAM/CRAM files. | |
| --add-output-vcf-command-line |
true | If true, adds a command line header line to created VCF files. | |
| --create-output-bam-index -OBI |
true | If true, create a BAM/CRAM index when writing a coordinate-sorted BAM/CRAM file. | |
| --create-output-bam-md5 -OBM |
false | If true, create a MD5 digest for any BAM/SAM/CRAM file created | |
| --create-output-variant-index -OVI |
true | If true, create a VCF index when writing a coordinate-sorted VCF file. | |
| --create-output-variant-md5 -OVM |
false | If true, create a a MD5 digest any VCF file created. | |
| --exclude-intervals -XL |
One or more genomic intervals to exclude from processing | ||
| --gatk-config-file |
A configuration file to use with the GATK. | ||
| --input -I |
BAM/SAM/CRAM file containing reads | ||
| --interval-exclusion-padding -ixp |
0 | Amount of padding (in bp) to add to each interval you are excluding. | |
| --interval-padding -ip |
0 | Amount of padding (in bp) to add to each interval you are including. | |
| --interval-set-rule -isr |
UNION | Set merging approach to use for combining interval inputs | |
| --lenient -LE |
false | Lenient processing of VCF files | |
| --max-variants-per-shard |
0 | If non-zero, partitions VCF output into shards, each containing up to the given number of records. | |
| --QUIET |
false | Whether to suppress job-summary info on System.err. | |
| --read-index |
Indices to use for the read inputs. If specified, an index must be provided for every read input and in the same order as the read inputs. If this argument is not specified, the path to the index for each input will be inferred automatically. | ||
| --read-validation-stringency -VS |
SILENT | Validation stringency for all SAM/BAM/CRAM/SRA files read by this program. The default stringency value SILENT can improve performance when processing a BAM file in which variable-length data (read, qualities, tags) do not otherwise need to be decoded. | |
| --seconds-between-progress-updates |
10.0 | Output traversal statistics every time this many seconds elapse | |
| --sequence-dictionary |
Use the given sequence dictionary as the master/canonical sequence dictionary. Must be a .dict file. | ||
| --tmp-dir |
Temp directory to use. | ||
| --use-jdk-deflater -jdk-deflater |
false | Whether to use the JdkDeflater (as opposed to IntelDeflater) | |
| --use-jdk-inflater -jdk-inflater |
false | Whether to use the JdkInflater (as opposed to IntelInflater) | |
| --verbosity |
INFO | Control verbosity of logging. | |
| Advanced Arguments | |||
| --combine-variants-distance |
0 | Maximum distance for variants to be grouped together | |
| --ignore-variants-starting-outside-interval |
false | Restrict variant output to sites that start within provided intervals (only applies when an interval is specified) | |
| --max-distance |
2147483647 | Maximum distance for variants to be grouped together | |
| --ref-padding |
1 | Number of bases on either side to expand spanning reference window | |
| --showHidden |
false | display hidden arguments |
Arguments in this list are specific to this tool. Keep in mind that other arguments are available that are shared with other tools (e.g. command-line GATK arguments); see Inherited arguments above.
If true, adds a PG tag to created SAM/BAM/CRAM files.
boolean true
If true, adds a command line header line to created VCF files.
boolean true
Fasta file with ancestral alleles
File null
read one or more arguments files and add them to the command line
List[File] []
Size of the cloud-only prefetch buffer (in MB; 0 to disable). Defaults to cloudPrefetchBuffer if unset.
int -1 [ [ -∞ ∞ ] ]
Size of the cloud-only prefetch buffer (in MB; 0 to disable).
int 40 [ [ -∞ ∞ ] ]
Maximum distance for variants to be grouped together
int 0 [ [ -∞ ∞ ] ]
Input comparison file(s)
The variant file(s) to compare against.
List[FeatureInput[VariantContext]] []
If true, create a BAM/CRAM index when writing a coordinate-sorted BAM/CRAM file.
boolean true
If true, create a MD5 digest for any BAM/SAM/CRAM file created
boolean false
If true, create a VCF index when writing a coordinate-sorted VCF file.
boolean true
If true, create a a MD5 digest any VCF file created.
boolean false
dbSNP file
A dbSNP VCF file.
FeatureInput[VariantContext] null
If true, don't cache bam indexes, this will reduce memory requirements but may harm performance if many intervals are specified. Caching is automatically disabled if there are no intervals specified.
boolean false
If specified, do not check the sequence dictionaries from our inputs for compatibility. Use at your own risk!
boolean false
Do not use the standard modules by default (instead, only those that are specified with the -EV option)
Boolean false
Do not use the standard stratification modules by default (instead, only those that are specified with the -S option)
Boolean false
Input evaluation file(s)
The variant file(s) to evaluate.
R List[FeatureInput[VariantContext]] []
One or more specific eval modules to apply to the eval track(s) (in addition to the standard modules, unless -no-ev is specified)
See the -list argument to view available modules.
List[String] []
One or more genomic intervals to exclude from processing
Use this argument to exclude certain parts of the genome from the analysis (like -L, but the opposite).
This argument can be specified multiple times. You can use samtools-style intervals either explicitly on the
command line (e.g. -XL 1 or -XL 1:100-200) or by loading in a file containing a list of intervals
(e.g. -XL myFile.intervals).
List[String] []
A configuration file to use with the GATK.
String null
If the GCS bucket channel errors out, how many times it will attempt to re-initiate the connection
int 20 [ [ -∞ ∞ ] ]
Project to bill when accessing "requester pays" buckets. If unset, these buckets cannot be accessed. User must have storage.buckets.get permission on the bucket being accessed.
String ""
Evaluations that count calls at sites of true variation (e.g., indel calls) will use this argument as their gold standard for comparison
Some analyses want to count overlap not with dbSNP (which is in general very open) but
actually want to itemize their overlap specifically with a set of gold standard sites
such as HapMap, OMNI, or the gold standard indels. This argument provides a mechanism
for communicating which file to use
FeatureInput[VariantContext] null
display the help message
boolean false
Restrict variant output to sites that start within provided intervals (only applies when an interval is specified)
this option has no effect unless intervals are specified.
This exists to mimic GATK3 interval traversal patterns
boolean false
BAM/SAM/CRAM file containing reads
List[GATKPath] []
Amount of padding (in bp) to add to each interval you are excluding.
Use this to add padding to the intervals specified using -XL. For example, '-XL 1:100' with a
padding value of 20 would turn into '-XL 1:80-120'. This is typically used to add padding around targets when
analyzing exomes.
int 0 [ [ -∞ ∞ ] ]
Interval merging rule for abutting intervals
By default, the program merges abutting intervals (i.e. intervals that are directly side-by-side but do not
actually overlap) into a single continuous interval. However you can change this behavior if you want them to be
treated as separate intervals instead.
The --interval-merging-rule argument is an enumerated type (IntervalMergingRule), which can have one of the following values:
IntervalMergingRule ALL
Amount of padding (in bp) to add to each interval you are including.
Use this to add padding to the intervals specified using -L. For example, '-L 1:100' with a
padding value of 20 would turn into '-L 1:80-120'. This is typically used to add padding around targets when
analyzing exomes.
int 0 [ [ -∞ ∞ ] ]
Set merging approach to use for combining interval inputs
By default, the program will take the UNION of all intervals specified using -L and/or -XL. However, you can
change this setting for -L, for example if you want to take the INTERSECTION of the sets instead. E.g. to
perform the analysis only on chromosome 1 exomes, you could specify -L exomes.intervals -L 1 --interval-set-rule
INTERSECTION. However, it is not possible to modify the merging approach for intervals passed using -XL (they will
always be merged using UNION).
Note that if you specify both -L and -XL, the -XL interval set will be subtracted from the -L interval set.
The --interval-set-rule argument is an enumerated type (IntervalSetRule), which can have one of the following values:
IntervalSetRule UNION
One or more genomic intervals over which to operate
List[String] []
If provided, modules that track polymorphic sites will not require that a site have AC > 0 when the input eval has genotypes
boolean false
File containing tribble-readable features describing a known list of copy number variants
File containing tribble-readable features containing known CNVs. For use with VariantSummary table.
FeatureInput[Feature] null
Name of feature bindings containing variant sites that should be treated as known when splitting eval features into known and novel subsets
List of feature tracks to be used for specifying "known" variants other than dbSNP.
Set[String] []
Lenient processing of VCF files
boolean false
List the available eval modules and exit
Note that the --list argument requires a fully resolved and correct command-line to work.
Boolean false
Maximum distance for variants to be grouped together
int<PHONE_NUMBER> [ [ -∞ ∞ ] ]
If non-zero, partitions VCF output into shards, each containing up to the given number of records.
int 0 [ [ 0 ∞ ] ]
Minimum genotype QUAL score for each trio member required to accept a site as a violation. Default is 50.
double 50.0 [ [ -∞ ∞ ] ]
If provided, all -eval tracks will be merged into a single eval track
If true, VariantEval will treat -eval 1 -eval 2 as separate tracks from the same underlying
variant set, and evaluate the union of the results. Useful when you want to do -eval chr1.vcf -eval chr2.vcf etc.
boolean false
Minimum phasing quality
double 10.0 [ [ -∞ ∞ ] ]
File to which variants should be written
R File null
Pedigree file for determining the population "founders"
GATKPath null
The strictness for validating the pedigree. Can be either STRICT or SILENT. Default is STRICT
The --pedigreeValidationType argument is an enumerated type (PedigreeValidationType), which can have one of the following values:
PedigreeValidationType STRICT
Whether to suppress job-summary info on System.err.
Boolean false
Indices to use for the read inputs. If specified, an index must be provided for every read input and in the same order as the read inputs. If this argument is not specified, the path to the index for each input will be inferred automatically.
List[GATKPath] []
Validation stringency for all SAM/BAM/CRAM/SRA files read by this program. The default stringency value SILENT can improve performance when processing a BAM file in which variable-length data (read, qualities, tags) do not otherwise need to be decoded.
The --read-validation-stringency argument is an enumerated type (ValidationStringency), which can have one of the following values:
ValidationStringency SILENT
Number of bases on either side to expand spanning reference window
int 1 [ [ -∞ ∞ ] ]
Reference sequence file
R GATKPath null
If provided only comp and eval tracks with exactly matching reference and alternate alleles will be counted as overlapping
boolean false
Derive eval and comp contexts using only these sample genotypes, when genotypes are available in the original context
Set[String] []
Per-sample ploidy (number of chromosomes per sample)
int 2 [ [ -∞ ∞ ] ]
Output traversal statistics every time this many seconds elapse
double 10.0 [ [ -∞ ∞ ] ]
One or more stratifications to use when evaluating the data
ArrayList[String] []
Names to use for the list of stratifications (must be a 1-to-1 mapping)
ArrayList[String] []
Use the given sequence dictionary as the master/canonical sequence dictionary. Must be a .dict file.
GATKPath null
display hidden arguments
boolean false
If true, don't emit genotype fields when writing vcf file output.
boolean false
File containing tribble-readable features for the IntervalStratificiation
File containing tribble-readable features for the IntervalStratificiation
FeatureInput[Feature] null
One or more specific stratification modules to apply to the eval track(s) (in addition to the standard stratifications, unless -noS is specified)
List[String] []
Temp directory to use.
GATKPath null
Whether to use the JdkDeflater (as opposed to IntelDeflater)
boolean false
Whether to use the JdkInflater (as opposed to IntelInflater)
boolean false
Control verbosity of logging.
The --verbosity argument is an enumerated type (LogLevel), which can have one of the following values:
LogLevel INFO
display the version number for this tool
boolean false
See also General Documentation | Tool Docs Index Tool Documentation Index | Support Forum
GATK version <IP_ADDRESS> built at Wed, 18 Aug 2021 19:58:25 -0400.


The Hopperator
Home
Search Breweries
New Search
Favorites
Plan Your Beer Crawl
Learn About Beer
Brewery Favorites
Breweries You Can't Get Enough Of


By clicking on the account icon in the top right corner, you can navigate to “Settings” to review or update your personal details. Make sure to click “Save” once changes are made.


Home
Search
Logout
flex-grow,flex-shrink,flex-basis
.flex-basis
property determines the flexibility base used
as the primary initial size for a flexible element, we can indicate width:(px,em,%,auto)
but also content:(content,max-content,min-content..)
who affect the size in terms of
his content.flex-grow
property determines the amount of space the
element should consume in a flexible container. flex-grow:1
indicate that the element
will take 1 fraction of available space.flex-shrink
property defines the possibility for a flex
item to be reduced if necessary when there is not enough space in a row, by default the value is
flex-shrink:1
which mean that all items will be reduced by the same size if we change
this value and give it to one element flex-shrink:2
this element will be reduced twice
more than the others.


Chinese spy seeks Australian asylum
by Colin BrinsdenA Chinese spy is seeking political asylum in Australia after offering intelligence on how China conducts its interference operations abroad.
Nine newspapers reported Wang “William” Liqiang has provided Australia’s counter-espionage agency ASIO of details of how China’s senior military intelligence officers fund and conduct political interference operations in Hong Kong, Taiwan and Australia.
“I have personally been involved and participated in a series of espionage activities,” Mr Wang said in a statement to ASIO in October, Nine said.
Mr Wang is currently at an undisclosed location in Sydney on a tourist visa, telling Nine he is seeking urgent protection from the Australian government, a plea he says he has made in multiple meetings with ASIO.
He would face certain detention and possible execution if he returns to China.
Senior federal government minister Josh Frydenberg said the matter is now in the hands of appropriate law enforcement agencies and declined to comment on individual cases.
“But I would say the government makes no apologies for the strong measures that we have taken to ensure that we have foreign interference laws in place, that we are resourcing our law enforcement intelligence agencies, like never before,” he told reporters in Melbourne on Saturday.
“We will always stand up for our national interests, whether it’s on matters of foreign policy, foreign investment or other related issues.”
Opposition Leader Anthony Albanese said the revelations were a concern and is seeking a briefing with the appropriate agencies next week.
“We need to make sure that Australia’s national sovereignty is protected,” Mr Albanese told reporters in Geelong.
He said the decision to offer asylum will be up to the government but is sympathetic to his request.
“We know that he has outlined a range of activities which clearly put him in a circumstance whereby it’s a legitimate claim for asylum,” he said.
Asked whether this will put further strain on Australia’s relationship with China, Mr Albanese said: “We support human rights. We are a democracy. We support freedom of expression.”
“And these things need to be dealt with on their merits. And Australia has obligations under the principles of the way that we operate as a democracy.”
-AAP


Finite Geometry Notes
|
Home
|
Site Map
|
Author
|
Quaternions in an Affine Galois Plane
Related material:
The Galois Quaternion: A Story
,
Visualizing GL(2,p)
, and
Group Actions: 1984-2009
Update of August 7, 2010 --
Some background from 1950
Page created by Steven H. Cullinane on January 6, 2010
.


A new SimpleReport waitlist request has been submitted with the following details: Name: [[${name}]] Email address: [[${email}]] Phone number: [[${phone}]] State: [[${state}]] Organization: [[${organization}]] Referral: [[${referral}]]


Cor promotes modularity, conventions and code organization, it is built for scalable applications development. The syntax enforces to write mantainable code. You can use any library written in javascript or import from javascript any library written and built with Cor.
Cor can be downloaded in several ways depending on different needs. The Cor compiler can run in any javascript environment however it's priority is the browser and Node.js.
Available releases can be downloaded from here. Once downloaded, decompress the bundle (.zip or .tar). The main script can be found at cor/dis/cor.js
ready to be embedded in HTML pages for production see, In the Browser.
To install it globally:
npm install -g cor-lang
You must use this way for CLI usage.
To install it locally:
npm install cor-lang
You must use this way for programatic usage or for client-side development.
If you prefer Bower as package manager make sure to have Node.js and Bower installed.
To install Bower run:
npm install -g bower
Once installed you can install Cor, from the CLI run:
bower install cor-lang
After that, you are able to include the distribution script located at bower_components/cor/dist/cor.js in any html file through the <script></script>
tag.
<script type="text/javascript" src="bower_components/cor/dist/cor.js"></script>
The CLI tools are available as a Node.js utility. To use Cor from Node.js you must install it using NPM:
npm install -g cor-lang
Leave off the -g
if you don't wish to install globally:
npm install cor-lang
Execute a script:
cor run /path/to/source.cor
Compile a script:
cor compile /path/to/source.cor
Once globally installed using NPM you have access to cor
command which can compile and build sources. For CLI usage run cor help
command. The files containing source code should have .cor
extension.
The build
command will compile and pack source code and its dependences to one file. The compile
command will just compile the provided source code contained in a directory or file.
For commands reference see Commands.
Cor is designed with client-side development in mind, it dynamically load files using XHTTPRequest object, so that, hot-realoading is an amazing feature to keep you away from CLI compile/watch tools for a smooth client-side development. Because the XHTTPRequest object, application source must be behind a web server (Apache HTTP Server, Nginx, or that you like). The Cor CLI tools provides a static HTTP server through http
command which can be used with the same purpose.
After install Cor globally, you may run:
// from the directory to be served
cor http
The server will publish in port 9000
unless you have chosen a different one.
To bootstrap Cor in development mode include Cor library (located at node_modules/cor-lang/dist/cor.js
if NPM was used to install it locally) inside a HTML file using a script
tag, then specify the application entry script using data-entry="path/to/script.cor"
in a separated script tag, for example:
<html>
<script type="text/javascript" src="node_modules/cor-lang/dist/cor.js"></script>
<script data-entry="hello.cor"></script>
</html>
See the documentation for further reading.


Roswell - Common Lisp environment setup Utility
[command [args...]
[--]script [args...]
Roswell is a command line tool for installing and managing Common Lisp implementations, as well as a scripting infrastructure for templating, writing, executing, compiling, distributing, downloading and installing ROSWELL-SCRIPTS written in Common Lisp.
Currently roswell supports sbcl, ccl, clisp and ecl as its supported lisp implementations. For further details see ros-install(1).
Scripts installed by roswell will be system wide if appropriate directory is included in PATH.
In an order of utility/frequency.
Install a given implementation (e.g. sbcl, ccl) or a system (e.g. alexandria) for roswell environment. See ros-install(1).
Create a new ros script. .ros
is optional, and is added automaticaly. See ros-init.
Dump an image of the script for the faster startup or to make an executable. See ros-dump.
Make an executable from the script. See ros-build.
Initiate REPL. See ros-run.
Change the default implementation used by roswell. See ros-use.
List the various informations. See ros-list.
Get and set the options. See ros-config.
Run the initial setup. See ros-setup.
Launch emacs with slime. See ros-emacs.
Wait forever, used for daemonizing the script. See ros-wait.
Delete an installed implementation. See ros-delete.
Show the roswell version information. See ros-version.
Show the subcommand help.
Options are processed in left-to-right order.
Run the script with a shell wrapper CODE, e.g. rlwrap
Continue from Lisp image IMAGE
Run the script with a lisp impl NAME[/VERSION] if present, e.g. sbcl-bin, sbcl/1.2.16. Fails otherwise.
Load a lisp file FILE while building
Override the source registry of asdf systems.
Load the asdf SYSTEM while building.
Same as above (buildapp compatibility)
Change the current package to PACKAGE
Combination of -s SP and -p SP
Evaluate FORM while building
require MODULE while building
quit lisp here
the build image restarts from calling FUNC
the build image restarts from calling (FUNC argv).
evaluate FORM after the restart.
evaluate and princ FORM after the restart
evaluate and write FORM after the restart
evaluate FORM before dumping the IMAGE
try to read /etc/rosrc, ~/.roswell/init.lisp
skip /etc/rosrc, ~/.roswell/init.lisp
load quicklisp (default)
do not load quicklisp
be quite verbose while building
suppress output while building (default)
for test purpose
SBCL specific. The argument is passed to SBCL by --dynamic-space-size
Specifies the home directory of roswell, defaulted to $HOME on Unix platform .
Check out issues list (https://github.com/roswell/roswell/issues)
sbcl(1) ros-dump(1) ros-init(1) ros-install(1) ros-list(1) ros-setup(1)
_


{% extends "base.html" %} {% load static %} {% block content %}
We have created tools to allow you to track what you spend and when, without the added hassle of millions of recipts and notebooks.
Track what you spend and where, keeping within your own limit.
Track your groceries and or todos with managable todo lists.
Quickly view your expenditure from the Dashboard.


Email a copy
Request a paper copy
If you are unable to print or download a copy of your certificate we can send a copy in the post to the address you used when you applied.
It will take around xx days to arrive.
Perscriptions are free because you live in Scotland.
Towards a private sight test, you pay a maximum of:
£x.xx
How to use your certificate for sight testsTowards an optical voucher, you pay:
£x.xx
How to use this certificate for glasses or contact lensesPer course of treatment, you pay a maximum of:
£x.xx
How to use this certificate for dental treatmentTowards travel, in a week you pay:
£x.xx
How to use this certificate for travelPer prescribed item you pay a maximum of:
£x.xx
How to use this certificate for wigs or fabric supportsYou will need to show a copy of this information whenever you want to use it.
These amounts are set by the government to cover day to day living expenses.
| The amount the government says you need to live on | £230.85 |
| Carer premium | £34.60 |
| Council tax | £19.24 |
| Housing costs (rent or mortgage) | £90.00 |
| Total amount needed each week | £374.69 |
These are the income amounts you gave us when you applied.
| Retirement pension | £88.01 |
| Retirement pension | £152.03 |
| Occupational pension | £57.69 |
| Occupational pension | £82.06 |
| Total weekly income | £390.03 |
Tell us if your income is now lower or these amounts are wrong
We subtract the money you need each week from your weekly income
| Total left each week | £5.10 |
| About you | Completed View answers |
| Partner status | Completed View answers |
| Property, savings & money | Completed View answers |
| About where you live | Completed View answers |


Reader Peter Ross, who drew my attention to the above advertisement, has been trawling through the index to The Times newspaper for 1785-90 and has kindly sent these intriguing entries:
Epping stag hunt ends in mangling of goat—14th April 1789
Elopements : Dublin mechanic's daughter elopes with nimble lamp lighter—30th July 1789
Ink : Land-surveyor faints after mistaking red ink for blood—26th December 1789
Irish people not yet refined enough for opera—19th June 1789
Death and Burial : Peruke maker shouts for another drink just before coffin is nailed up—27th June 1789
Poultry : Hen supposed to be descendant of that which laid golden eggs—1st December 1789
Man traps joker who knocks on doors and rings bells by attaching electrical shock to bell—29th June 1789 : Report of trap set for bell ringer contradicted—6th July 1789: Report confirmed and clarified : incident leads to challenge to duel—6th July 1789
Funerals : Clergyman criticised for eating filberts while reading burial service—13th October 1789
Man drops down and expires while waiter collects coat—5th January 1789
Warning given against sending girls to boarding schools which scientifically educate young to vice—20th October 1789
Philosophical fireworks defended—25th June 1789
Captain's attempted adultery with farmer's wife revealed after bear is let into chamber in wife's place.—12th January 1790
Norfolk Island Settlement : Lack of candles forces islanders to go to bed as soon as it is dark—16th January 1790
Shipbuilder digging ground for dock discovers number of large trees and hazelnut hedge 12-14 ft below the surface.—20th March 1790
Careers : Voracious bricklayer of St. Bride's parish undertakes profession of stay maker.—19th February 1790
Over-hurried blind bullock enters artists' colour shop on Holborn Bridge after missing way; does considerable damage before returning to the street through the window; then goads windows at watchmaker's shop, catches string of watches on its horns and disperses them among mob in street.—13th October 1790
Poor man kills himself with drinking in a northern borough; vestry clerk suggests that master of the workhouse should let rest of poor out to kill themselves and ease parish of them.—6th July 1790
Gentleman who offered twopence as reward for saving lady from drowning defends seeming want of generosity by declaring lady is wife.—23rd August 1790


Appendix A - Documentation¶
In this section of the Appendix, we attempt to highlight at a high level, some of the technical decisions that were taken throughout the duration of this capstone project. This section presents some of the technical details behind those decisions.
Data Augmentation¶
The team initially used a web interface provided by the albumentations library, powered by PyTorch for image transformations, that allowed us to see what the different transformations would look like. Based on that, we chose some transformations to test in our pipeline. This experiment can be found here. The final model was chosen based on the transformations yielding the highest accuracy score.
To use the albumentations library:
This guide is extremely helpful for our classification task. You develop your own class that inherits from the torch dataset. To see an example of this implementation for our dataset, please check this notebook.
We also tried a machine learning tool called autoalbument which allows for the selection of optimal transformations.
Loss Functions¶
A loss function, also known as cost function or error function, is a function that maps a set of parameter values for the network onto a scalar value. The scalar value is an indication of how well the parameters are completing their assigned tasks. In optimization problems, we seek to minimize the loss function.
The following functions were considered for the choice of the loss function used in the convolutional neural network model:
BCEWithLogitsLoss
NLLLoss
Sum of Log Loss
Hinge
The mean absolute error
Loss Function Implemeted in CNN Model:
BCEWithLogitsLoss: Cross-Entropy loss (nn.BCEWithLogitsLoss) combines a Sigmoid layer and the BCELoss in one single class. This loss function in often used in classification problems as a measure of reconstruction error. It uses log loss, which for logistic regression is a special case for cross-entropy loss for multi-class classification.
Alternative Loss Functions Considered:
NLLLoss: Negative Log-Likelihood Loss This function expands the binary cross-entropy loss. It requires an additional logSoftMax layer in the last layer of the network. As it outputs probablities, they must sum to 1. The function also has various reduction of output options such as the weighted mean of output or sum.
Sum of Log Loss: This function allows for the gradient to update with more incentive
Hinge: This function, nn.HingeEmbeddingLoss, is used more for measuring similarities. It tries to maximize the margin between decision boundary and data points. The main advantage is that the function penalizes incorrect predictions a lot but also correct ones that aren’t confident (less). That is, confident correct predictions are not penalized at all.
L1 MAE: The mean absolute error
Structure of CNN Model¶
Based on our Liturature Review, the following transfer learning architectures were considered:
DenseNet
Inception
VGG
ResNet
The model variants that were considered are documented below, along with some notes thought to be relevant.
VGG16: It makes the improvement over AlexNet by replacing large kernel-sized filters (11 and 5 in the first and second convolutional layer, respectively) with multiple 3×3 kernel-sized filters one after another.
DenseNet121: DenseNet121 proved to be the best performing model given the Lipohypertrophy data. To see this exploration, click here.
ResNet50
InceptionV3
Batch Normalization¶
We ensured all models have batch normalization implemented. This will standardize the inputs of a network improving the overall efficiency by reducing the number of epochs required to train for a given model.
Dropout Layer¶
In an effort to reduce the generalization error and high confidence in misclassifications, we considered the implementation of dropout layers within the model’s architecture. Dropout layers will randomly drop nodes in the network such that the model learns more robustly and the validation performance is improved. A dropout rate can be specified to indicate the probablity at which nodes are dropped. The dropout layers experiments with varying dropout rates did not show any success for our dataset. Although the dropout layers managed to reduce misclassifications in the models, the overall reduced accuracy was not remarkable enough to implement those layers in our optimal model. To see this exploration, click here.
Ensemble Model¶
Another way to reduce the generalization error is to average the predictions from all four models, called an ensemble. However, an ensemble would not be feasible as it requires lots of resources such as enough CPU to train the models and in our case, since the models performed too similarily, the average accuracy would be lower.
Recall Optimization¶
To reduce the generalization error, we considered varying the pos_weight argument in the loss function. Positive weight (pos_weight) is one argument of the loss function used in our CNN model which, if greater than 1, prioritizes the positive examples more such that there is a heavier penalization (loss) on labelling the positive lipohypertrophy examples incorrectly. Increasing the positive weights to more than 1, we would expect the recall score to improve since there would be heavier penalization (loss) on positive examples, in an attempt to reduce false negatives (a true positive where the model predicts is negative). However, this method was not implemented in our final model as it proved to be unstable. After conducting a few experiments, we found high variance in the results.
Hyperparameter Optimization¶
Bayesian Optimization with Ax¶
The general idea with the Bayesian method is that not every possible parameterization in the defined parameter space is explored. The process tunes parameters in a few iterations by building a surrogate model. A surrogate model is a probablistic model that uses an acquisition function to direct the next sample to make up configurations where an improvement over the current best parameterization is likely. Bayesian Optimization with Ax, a recently developed package for optimization by Facebook, relies on information from previous trials to propose better hyperparameters in the next evaluation. The Gaussian process is as follows:
Build “smooth” surrogate model using Gaussian processes (initially Gaussian with mean 0 and variance equal to the noise in data. The surrogate model updates to a Gaussian model with mean equal to the estimated mean and updated variance based on the previous trial.
use the surrogate model to predict the next parameterization (estimated mean), out of the remaining ones and quantify uncertainty (updated estimated variance)
combine predictions and estimates to derive an acquisition function and then optimize it to find the best configuration.
Observe outcomes
Fit new surrogate model and repeat process.
As a way to guide the surrogate model in the prediction of the next parameter configuration to explore, aquisition functions are utilizied.
Three common examples include:
Probability of Improvement (PI)
Expected Improvement (EI)
Lower Confidence Bound (LCB)
The most common technique used in Bayesian Optimization is the second choice: Expected Improvement. As such, that was used for our experiments found here.
An Ax tutorial can be found here.
The main advantages to Bayesian Optimization are:
its ability to find better parameterizations with fewer iterations than grid search and,
striking a balance between exploration and exploitation where exploration refers to trying out parameterization with high uncertainty in the outcome and exploitation refers to the surrogate model predicting likely parameterizations.
In addition to our Bayesian experiments, we consulted results in the following papers regarding classical transformations applied to small:


The type of the documents being indexed.
const documents = [
{
id: 1,
title: 'Moby Dick',
text: 'Call me Ishmael. Some years ago...',
category: 'fiction'
},
{
id: 2,
title: 'Zen and the Art of Motorcycle Maintenance',
text: 'I can see by my watch...',
category: 'fiction'
},
{
id: 3,
title: 'Neuromancer',
text: 'The sky above the port was...',
category: 'fiction'
},
{
id: 4,
title: 'Zen and the Art of Archery',
text: 'At first sight it must seem...',
category: 'non-fiction'
},
// ...and more
]
// Create a search engine that indexes the 'title' and 'text' fields for
// full-text search. Search results will include 'title' and 'category' (plus the
// id field, that is always stored and returned)
const miniSearch = new MiniSearch({
fields: ['title', 'text'],
storeFields: ['title', 'category']
})
// Add documents to the index
miniSearch.addAll(documents)
// Search for documents:
let results = miniSearch.search('zen art motorcycle')
// => [
// { id: 2, title: 'Zen and the Art of Motorcycle Maintenance', category: 'fiction', score: 2.77258 },
// { id: 4, title: 'Zen and the Art of Archery', category: 'non-fiction', score: 1.38629 }
// ]
Configuration options
// Create a search engine that indexes the 'title' and 'text' fields of your
// documents:
const miniSearch = new MiniSearch({ fields: ['title', 'text'] })
// Your documents are assumed to include a unique 'id' field, but if you want
// to use a different field for document identification, you can set the
// 'idField' option:
const miniSearch = new MiniSearch({ idField: 'key', fields: ['title', 'text'] })
// The full set of options (here with their default value) is:
const miniSearch = new MiniSearch({
// idField: field that uniquely identifies a document
idField: 'id',
// extractField: function used to get the value of a field in a document.
// By default, it assumes the document is a flat object with field names as
// property keys and field values as string property values, but custom logic
// can be implemented by setting this option to a custom extractor function.
extractField: (document, fieldName) => document[fieldName],
// tokenize: function used to split fields into individual terms. By
// default, it is also used to tokenize search queries, unless a specific
// `tokenize` search option is supplied. When tokenizing an indexed field,
// the field name is passed as the second argument.
tokenize: (string, _fieldName) => string.split(SPACE_OR_PUNCTUATION),
// processTerm: function used to process each tokenized term before
// indexing. It can be used for stemming and normalization. Return a falsy
// value in order to discard a term. By default, it is also used to process
// search queries, unless a specific `processTerm` option is supplied as a
// search option. When processing a term from a indexed field, the field
// name is passed as the second argument.
processTerm: (term, _fieldName) => term.toLowerCase(),
// searchOptions: default search options, see the `search` method for
// details
searchOptions: undefined,
// fields: document fields to be indexed. Mandatory, but not set by default
fields: undefined
// storeFields: document fields to be stored and returned as part of the
// search results.
storeFields: []
})
Number of documents in the index
Adds a document to the index
The document to be indexed
Adds all the given documents to the index
An array of documents to be indexed
Adds all the given documents to the index asynchronously.
Returns a promise that resolves (to undefined
) when the indexing is done.
This method is useful when index many documents, to avoid blocking the main
thread. The indexing is performed asynchronously and in chunks.
An array of documents to be indexed
Configuration options
A promise resolving to undefined
when the indexing is done
Provide suggestions for the given search query
The result is a list of suggested modified search queries, derived from the given search query, each with a relevance score, sorted by descending score.
// Get suggestions for 'neuro':
miniSearch.autoSuggest('neuro')
// => [ { suggestion: 'neuromancer', terms: [ 'neuromancer' ], score: 0.46240 } ]
// Get suggestions for 'zen ar':
miniSearch.autoSuggest('zen ar')
// => [
// { suggestion: 'zen archery art', terms: [ 'zen', 'archery', 'art' ], score: 1.73332 },
// { suggestion: 'zen art', terms: [ 'zen', 'art' ], score: 1.21313 }
// ]
// Correct spelling mistakes using fuzzy search:
miniSearch.autoSuggest('neromancer', { fuzzy: 0.2 })
// => [ { suggestion: 'neuromancer', terms: [ 'neuromancer' ], score: 1.03998 } ]
// Get suggestions for 'zen ar', but only within the 'fiction' category
// (assuming that 'category' is a stored field):
miniSearch.autoSuggest('zen ar', {
filter: (result) => result.category === 'fiction'
})
// => [
// { suggestion: 'zen archery art', terms: [ 'zen', 'archery', 'art' ], score: 1.73332 },
// { suggestion: 'zen art', terms: [ 'zen', 'art' ], score: 1.21313 }
// ]
Query string to be expanded into suggestions
Search options. The supported options and default values
are the same as for the search
method, except that by default prefix
search is performed on the last term in the query.
A sorted array of suggestions sorted by relevance score.
Removes the given document from the index.
The document to delete must NOT have changed between indexing and deletion, otherwise the index will be corrupted. Therefore, when reindexing a document after a change, the correct order of operations is:
The document to be removed
Removes all the given documents from the index. If called with no arguments, it removes all documents from the index.
The documents to be removed. If this argument is omitted, all documents are removed. Note that, for removing all documents, it is more efficient to call this method with no arguments than to pass all documents.
Search for documents matching the given search query.
The result is a list of scored document IDs matching the query, sorted by descending score, and each including data about which terms were matched and in which fields.
// Search for "zen art motorcycle" with default options: terms have to match
// exactly, and individual terms are joined with OR
miniSearch.search('zen art motorcycle')
// => [ { id: 2, score: 2.77258, match: { ... } }, { id: 4, score: 1.38629, match: { ... } } ]
// Search only in the 'title' field
miniSearch.search('zen', { fields: ['title'] })
// Boost a field
miniSearch.search('zen', { boost: { title: 2 } })
// Search for "moto" with prefix search (it will match documents
// containing terms that start with "moto" or "neuro")
miniSearch.search('moto neuro', { prefix: true })
// Search for "ismael" with fuzzy search (it will match documents containing
// terms similar to "ismael", with a maximum edit distance of 0.2 term.length
// (rounded to nearest integer)
miniSearch.search('ismael', { fuzzy: 0.2 })
// Mix of exact match, prefix search, and fuzzy search
miniSearch.search('ismael mob', {
prefix: true,
fuzzy: 0.2
})
// Perform fuzzy and prefix search depending on the search term. Here
// performing prefix and fuzzy search only on terms longer than 3 characters
miniSearch.search('ismael mob', {
prefix: term => term.length > 3
fuzzy: term => term.length > 3 ? 0.2 : null
})
// Combine search terms with AND (to match only documents that contain both
// "motorcycle" and "art")
miniSearch.search('motorcycle art', { combineWith: 'AND' })
// Filter only results in the 'fiction' category (assuming that 'category'
// is a stored field)
miniSearch.search('motorcycle art', {
filter: (result) => result.category === 'fiction'
})
It is possible to combine different subqueries with OR and AND, and even with different search options, by passing a query expression tree object as the first argument, instead of a string.
// Search for documents that contain "zen" AND ("motorcycle" OR "archery")
miniSearch.search({
combineWith: 'AND',
queries: [
'zen',
{
combineWith: 'OR',
queries: ['motorcycle', 'archery']
}
]
})
Each node in the expression tree can be either a string, or an object that
supports all SearchOptions
fields, plus a queries
array field for
subqueries.
Note that, while this can become complicated to do by hand for complex or deeply nested queries, it provides a formalized expression tree API for external libraries that implement a parser for custom query languages.
Search query
Allows serialization of the index to JSON, to possibly store it and later
deserialize it with MiniSearch.loadJSON
.
Normally one does not directly call this method, but rather call the
standard JavaScript JSON.stringify()
passing the MiniSearch
instance,
and JavaScript will internally call this method. Upon deserialization, one
must pass to loadJSON
the same options used to create the original
instance that was serialized.
// Serialize the index:
let miniSearch = new MiniSearch({ fields: ['title', 'text'] })
miniSearch.addAll(documents)
const json = JSON.stringify(miniSearch)
// Later, to deserialize it:
miniSearch = MiniSearch.loadJSON(json, { fields: ['title', 'text'] })
A plain-object serializeable representation of the search index.
Returns the default value of an option. It will throw an error if no option with the given name exists.
Name of the option
The default value of the given option
// Get default tokenizer
MiniSearch.getDefault('tokenize')
// Get default term processor
MiniSearch.getDefault('processTerm')
// Unknown options will throw an error
MiniSearch.getDefault('notExisting')
// => throws 'MiniSearch: unknown option "notExisting"'
Deserializes a JSON index (serialized with miniSearch.toJSON()
) and
instantiates a MiniSearch instance. It should be given the same options
originally used when serializing the index.
// If the index was serialized with:
let miniSearch = new MiniSearch({ fields: ['title', 'text'] })
miniSearch.addAll(documents)
const json = JSON.stringify(miniSearch)
// It can later be deserialized like this:
miniSearch = MiniSearch.loadJSON(json, { fields: ['title', 'text'] })
JSON-serialized index
configuration options, same as the constructor
An instance of MiniSearch deserialized from the given JSON.
Generated using TypeDoc
MiniSearch is the main entrypoint class, implementing a full-text search engine in memory.


To get notified about the release, subscribe to my Mailchimp list that I send 3-4 times a year. Any feature requests are welcome.


There are a few standard system properties used to alter the mechanisms and behavior of the various classes of the java.net package. Some are checked only once at startup of the VM, and therefore are best set using the -D option of the java command, while others have a more dynamic nature and can also be changed using the System.setProperty() API. The purpose of this document is to list and detail all of these properties.
If there is no special note, a property value is checked every time it is used.
{@systemProperty java.net.preferIPv4Stack} (default: false)
If IPv6 is available on the operating system the
underlying native socket will be, by default, an IPv6 socket which
lets applications connect to, and accept connections from, both
IPv4 and IPv6 hosts. However, in the case an application would
rather use IPv4 only sockets, then this property can be set to true.
The implication is that it will not be possible for the application
to communicate with IPv6 only hosts.
{@systemProperty java.net.preferIPv6Addresses} (default: false)
When dealing with a host which has both IPv4
and IPv6 addresses, and if IPv6 is available on the operating
system, the default behavior is to prefer using IPv4 addresses over
IPv6 ones. This is to ensure backward compatibility: for example,
for applications that depend on the representation of an IPv4 address
(e.g. <IP_ADDRESS>). This property can be set to true to
change that preference and use IPv6 addresses over IPv4 ones where
possible, or system to preserve the order of the addresses as
returned by the system-wide {@linkplain java.net.spi.InetAddressResolver resolver}.
Both of these properties are checked only once, at startup.
A proxy server allows indirect connection to network services and is used mainly for security (to get through firewalls) and performance reasons (proxies often do provide caching mechanisms). The following properties allow for configuration of the various type of proxies.
HTTP
The following proxy settings are used by the HTTP protocol handler.
{@systemProperty http.proxyHost} (default: <none>)
The hostname, or address, of the proxy server.
{@systemProperty http.proxyPort} (default: {@code 80})
The port number of the proxy server.
{@systemProperty http.nonProxyHosts} (default: {@code localhost|127.*|[::1]})
Indicates the hosts that should be accessed without going
through the proxy. Typically this defines internal hosts.
The value of this property is a list of hosts,
separated by the '|' character. In addition, the wildcard
character '*' can be used for pattern matching. For example,
{@code -Dhttp.nonProxyHosts="*.foo.com|localhost"}
will indicate that every host in the foo.com domain and the
localhost should be accessed directly even if a proxy server is
specified.
The default value excludes all common variations of the loopback address.
HTTPS
This is HTTP over SSL, a secure version of HTTP
mainly used when confidentiality (like on payment sites) is needed.
The following proxy settings are used by the HTTPS protocol handler.
{@systemProperty https.proxyHost} (default: <none>)
The hostname, or address, of the proxy server.
{@systemProperty https.proxyPort} (default: {@code 443})
The port number of the proxy server.
The HTTPS protocol handler will use the same nonProxyHosts property as the HTTP protocol.
FTP
The following proxy settings are used by the FTP protocol handler.
{@systemProperty ftp.proxyHost} (default: <none>)
The hostname, or address, of the proxy server.
{@systemProperty ftp.proxyPort} (default: {@code 80})
The port number of the proxy server.
{@systemProperty ftp.nonProxyHosts} (default: {@code localhost|127.*|[::1]})
Indicates the hosts that should be accessed without going
through the proxy. Typically this defines internal hosts.
The value of this property is a list of hosts, separated by
the '|' character. In addition, the wildcard character
'*' can be used for pattern matching. For example,
{@code -Dhttp.nonProxyHosts="*.foo.com|localhost"}
will indicate that every host in the foo.com domain and the
localhost should be accessed directly even if a proxy server is
specified.
The default value excludes all common variations of the loopback address.
SOCKS
This is another type of proxy. It allows for lower-level
type of tunneling since it works at the TCP level. In effect,
in the Java(tm) platform setting a SOCKS proxy server will result in
all TCP connections to go through that proxy, unless other proxies
are specified. If SOCKS is supported by a Java SE implementation, the
following properties will be used:
{@systemProperty socksProxyHost} (default: <none>)
The hostname, or address, of the proxy server.
{@systemProperty socksProxyPort} (default: {@code 1080})
The port number of the proxy server.
{@systemProperty socksProxyVersion} (default: {@code 5})
The version of the SOCKS protocol supported by the server. The
default is {@code 5} indicating SOCKS V5. Alternatively,
{@code 4} can be specified for SOCKS V4. Setting the property
to values other than these leads to unspecified behavior.
{@systemProperty java.net.socks.username} (default: <none>)
Username to use if the SOCKSv5 server asks for authentication
and no {@link java.net.Authenticator java.net.Authenticator} instance was found.
{@systemProperty java.net.socks.password} (default: <none>)
Password to use if the SOCKSv5 server asks for authentication
and no {@code java.net.Authenticator} instance was found.
Note that if no authentication is provided with either the above properties or an Authenticator, and the proxy requires one, then the user.name property will be used with no password.
{@systemProperty java.net.useSystemProxies} (default: {@code false})
On Windows systems, macOS systems, and Gnome systems it is possible to
tell the java.net stack, setting this property to true, to use
the system proxy settings (all these systems let you set proxies
globally through their user interface). Note that this property is
checked only once at startup.
{@systemProperty http.agent} (default: “Java/<version>”)
Defines the string sent in the User-Agent request header in http
requests. Note that the string “Java/<version>” will
be appended to the one provided in the property (e.g. if
{@code -Dhttp.agent="foobar"} is used, the User-Agent header will
contain “foobar Java/1.5.0” if the version of the VM is
1.5.0). This property is checked only once at startup.
{@systemProperty http.keepAlive} (default: {@code true})
Indicates if persistent connections should be supported. They improve
performance by allowing the underlying socket connection to be reused
for multiple HTTP requests. If this is set to true then persistent
connections will be requested with HTTP 1.1 servers.
{@systemProperty http.maxConnections} (default: {@code 5})
If HTTP keepalive is enabled (see above) this value determines the
maximum number of idle connections that will be simultaneously kept
alive, per destination.
{@systemProperty http.keepAlive.time.server} and {@systemProperty http.keepAlive.time.proxy}
These properties modify the behavior of the HTTP keepalive cache in the case where the server (or proxy) has not specified a keepalive time. If the property is set in this case, then idle connections will be closed after the specified number of seconds. If the property is set, and the server does specify a keepalive time in a "Keep-Alive" response header, then the time specified by the server is used. If the property is not set and also the server does not specify a keepalive time, then connections are kept alive for an implementation defined time, assuming {@code http.keepAlive} is {@code true}.
{@systemProperty http.maxRedirects} (default: {@code 20})
This integer value determines the maximum number, for a given request,
of HTTP redirects that will be automatically followed by the
protocol handler.
{@systemProperty http.auth.digest.validateServer} (default: {@code false})
{@systemProperty http.auth.digest.validateProxy} (default: {@code false})
{@systemProperty http.auth.digest.cnonceRepeat} (default: {@code 5})
These 3 properties modify the behavior of the HTTP digest authentication mechanism. Digest authentication provides a limited ability for the server to authenticate itself to the client (i.e. By proving it knows the user's password). However, not all HTTP servers support this capability and by default it is turned off. The first two properties can be set to true to enforce this check for authentication with either an origin or proxy server, respectively.
It is usually not necessary to change the third property. It determines how many times a cnonce value is re-used. This can be useful when the MD5-sess algorithm is being used. Increasing this value reduces the computational overhead on both client and server by reducing the amount of material that has to be hashed for each HTTP request.
{@systemProperty http.auth.ntlm.domain} (default: <none>)
NTLM is another authentication scheme. It uses the
{@code java.net.Authenticator} class to acquire usernames and passwords when
they are needed. However, NTLM also needs the NT domain name. There are
3 options for specifying that domain:
Do not specify it. In some environments the domain is actually not required and the application does not have to specify it.
The domain name can be encoded within the username by prefixing the domain name, followed by a backslash '\' before the username. With this method existing applications that use the authenticator class do not need to be modified, as long as users are made aware that this notation must be used.
If a domain name is not specified as in method 2) and this property is defined, then its value will be used as the domain name.
{@systemProperty http.auth.digest.reEnabledAlgorithms} (default: <none>)
By default, certain message digest algorithms are disabled for use in HTTP Digest
authentication due to their proven security limitations. This only applies to proxy
authentication and plain-text HTTP server authentication. Disabled algorithms are still
usable for HTTPS server authentication. The default list of disabled algorithms is specified
in the {@code java.security} properties file and currently comprises {@code MD5} and
{@code SHA-1}. If it is still required to use one of these algorithms, then they can be
re-enabled by setting this property to a comma separated list of the algorithm names.
{@systemProperty jdk.https.negotiate.cbt} (default: <never>)
This controls the generation and sending of TLS channel binding tokens (CBT) when Kerberos
or the Negotiate authentication scheme using Kerberos are employed over HTTPS with
{@code HttpsURLConnection}. There are three possible settings:
"never". This is also the default value if the property is not set. In this case, CBTs are never sent.
"always". CBTs are sent for all Kerberos authentication attempts over HTTPS.
"domain:<comma separated domain list>" Each domain in the list specifies destination host or hosts for which a CBT is sent. Domains can be single hosts like foo, or foo.com, or literal IP addresses as specified in RFC 2732, or wildcards like *.foo.com which matches all hosts under foo.com and its sub-domains. CBTs are not sent to any destinations that don't match one of the list entries
The channel binding tokens generated are of the type "tls-server-end-point" as defined in RFC 5929.
All these properties are checked only once at startup.
The java.net package, when doing name resolution, uses an address cache for both security and performance reasons. Any address resolution attempt, be it forward (name to IP address) or reverse (IP address to name), will have its result cached, whether it was successful or not, so that subsequent identical requests will not have to access the naming service. These properties allow for some tuning on how the cache is operating.
{@systemProperty networkaddress.cache.ttl} (default: see below)
Value is an integer corresponding to the number of seconds successful
name lookups will be kept in the cache. A value of -1, or any other
negative value for that matter, indicates a “cache forever”
policy, while a value of 0 (zero) means no caching. The default value
is -1 (forever) if a security manager is installed, and implementation-specific
when no security manager is installed.
{@systemProperty networkaddress.cache.negative.ttl} (default: {@code 10})
Value is an integer corresponding to the number of seconds an
unsuccessful name lookup will be kept in the cache. A value of -1,
or any negative value, means “cache forever”, while a
value of 0 (zero) means no caching.
Since these 2 properties are part of the security policy, they are not set by either the -D option or the {@code System.setProperty()} API, instead they are set as security properties.
Calling {@link java.nio.channels.ServerSocketChannel#bind(SocketAddress,int) ServerSocketChannel.bind} with a {@code null} address parameter will bind to an automatically assigned socket address. For Unix domain sockets, this means a unique path in some predefined system temporary directory. There are a number of system (and networking) properties that affect this behavior.
Unix domain socket addresses are limited in length to approximately 100 bytes (depending on the platform), it is important to ensure that the temporary directory's name together with the filename used for the socket (currently a name similar to {@code socket_1679697142}) does not exceed this limit. The following properties can be used to control the selection of this directory:
{@systemProperty jdk.net.unixdomain.tmpdir} This can be set as a networking property in {@code conf/net.properties} If set, this specifies the directory to use for automatically bound server socket addresses. On some platforms, (eg some Unix systems) this will have a predefined default value. On others, (eg Windows) there is no default value. Either way, it is always possible to override the networking property with a system property of the same name set on the command line. If neither of the networking nor system property are set, then some systems (eg Windows) may check a commonly used environment variable as temporary directory.
{@systemProperty java.io.tmpdir} If the previous step fails to locate a directory to use, then the directory identified by the system property {@code java.io.tmpdir} is used.
Implicit binding of a {@link java.nio.channels.SocketChannel SocketChannel}
If a client socket is connected to a remote destination without calling {@code bind} first, then the socket is implicitly bound. In this case, Unix domain sockets are unnamed (ie. their path is empty). This behavior is not affected by any system or networking properties.
{@systemProperty jdk.includeInExceptions} This is typically set to a comma separated list of keywords that refer to exception types whose messages may be enhanced with more detailed information. If the value includes the string {@code hostInfo} then socket addresses will be included in exception message texts (eg hostnames, Unix domain socket address paths).


ICDC
"; echo "
"; echo "
Stud...
"; ?>
Edit
ICDC Scores
Event
First Oral Presentation Score
Second Oral Presentation Score
Written Test or Report Result
Rank


|
Groovy Documentation | |||||||
| PREV NEXT | FRAMES NO FRAMES |
| Interface Summary | |
|---|---|
| EventBroker | Iterface for defining an event broker - an object to which people subscribe to events and publish events. |
| EventConfiguration | Provides a configuration for event types and consumers. |
| EventConsumer | A class that will handle an event of a particular type. |
| EventDelegate | A delegate is passed into the eventBroker as an event, but defers the creation of the event object until the broker knows that there are people that actually care about the event. |
| Class Summary | |
|---|---|
| EventBrokerHolder | Allows you to access the event broker staticly. |
| EventBrokerImpl | The main service that deals with registering and locating consumers for events. |
| EventType | An event type is a combination of the object class to be passed as the event as well as the name of the event as it was registered. |
| Exception Summary | |
|---|---|
| EventException | An exception thrown when dealing with events. |
Groovy Documentation